@uiw/doc 4.9.11 → 4.10.3

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 (430) hide show
  1. package/package.json +1 -1
  2. package/web/asset-manifest.json +293 -293
  3. package/web/index.html +1 -1
  4. package/web/static/css/{1059.e3a148be.chunk.css → 1059.68d3e67d.chunk.css} +2 -2
  5. package/web/static/css/{1169.e3a148be.chunk.css.map → 1059.68d3e67d.chunk.css.map} +1 -1
  6. package/web/static/css/{1169.e3a148be.chunk.css → 1061.68d3e67d.chunk.css} +2 -2
  7. package/web/static/css/{1059.e3a148be.chunk.css.map → 1061.68d3e67d.chunk.css.map} +1 -1
  8. package/web/static/css/{1061.e3a148be.chunk.css → 1169.68d3e67d.chunk.css} +2 -2
  9. package/web/static/css/{1317.e3a148be.chunk.css.map → 1169.68d3e67d.chunk.css.map} +1 -1
  10. package/web/static/css/{1317.e3a148be.chunk.css → 1317.68d3e67d.chunk.css} +2 -2
  11. package/web/static/css/{1061.e3a148be.chunk.css.map → 1317.68d3e67d.chunk.css.map} +1 -1
  12. package/web/static/css/1584.68d3e67d.chunk.css +2 -0
  13. package/web/static/css/1584.68d3e67d.chunk.css.map +1 -0
  14. package/web/static/css/1619.68d3e67d.chunk.css +2 -0
  15. package/web/static/css/1619.68d3e67d.chunk.css.map +1 -0
  16. package/web/static/css/{163.e3a148be.chunk.css → 163.68d3e67d.chunk.css} +2 -2
  17. package/web/static/css/{163.e3a148be.chunk.css.map → 163.68d3e67d.chunk.css.map} +1 -1
  18. package/web/static/css/1820.68d3e67d.chunk.css +2 -0
  19. package/web/static/css/1820.68d3e67d.chunk.css.map +1 -0
  20. package/web/static/css/2156.68d3e67d.chunk.css +2 -0
  21. package/web/static/css/2156.68d3e67d.chunk.css.map +1 -0
  22. package/web/static/css/2190.68d3e67d.chunk.css +2 -0
  23. package/web/static/css/2190.68d3e67d.chunk.css.map +1 -0
  24. package/web/static/css/{221.e3a148be.chunk.css → 221.68d3e67d.chunk.css} +2 -2
  25. package/web/static/css/{221.e3a148be.chunk.css.map → 221.68d3e67d.chunk.css.map} +1 -1
  26. package/web/static/css/2230.68d3e67d.chunk.css +2 -0
  27. package/web/static/css/2230.68d3e67d.chunk.css.map +1 -0
  28. package/web/static/css/2316.68d3e67d.chunk.css +2 -0
  29. package/web/static/css/2316.68d3e67d.chunk.css.map +1 -0
  30. package/web/static/css/2367.68d3e67d.chunk.css +2 -0
  31. package/web/static/css/2367.68d3e67d.chunk.css.map +1 -0
  32. package/web/static/css/2411.68d3e67d.chunk.css +2 -0
  33. package/web/static/css/2411.68d3e67d.chunk.css.map +1 -0
  34. package/web/static/css/2582.68d3e67d.chunk.css +2 -0
  35. package/web/static/css/2582.68d3e67d.chunk.css.map +1 -0
  36. package/web/static/css/2595.68d3e67d.chunk.css +2 -0
  37. package/web/static/css/2595.68d3e67d.chunk.css.map +1 -0
  38. package/web/static/css/2737.68d3e67d.chunk.css +2 -0
  39. package/web/static/css/2737.68d3e67d.chunk.css.map +1 -0
  40. package/web/static/css/2782.68d3e67d.chunk.css +2 -0
  41. package/web/static/css/2782.68d3e67d.chunk.css.map +1 -0
  42. package/web/static/css/3313.68d3e67d.chunk.css +2 -0
  43. package/web/static/css/3313.68d3e67d.chunk.css.map +1 -0
  44. package/web/static/css/3518.68d3e67d.chunk.css +2 -0
  45. package/web/static/css/3518.68d3e67d.chunk.css.map +1 -0
  46. package/web/static/css/3812.68d3e67d.chunk.css +2 -0
  47. package/web/static/css/3812.68d3e67d.chunk.css.map +1 -0
  48. package/web/static/css/3917.68d3e67d.chunk.css +2 -0
  49. package/web/static/css/3917.68d3e67d.chunk.css.map +1 -0
  50. package/web/static/css/4010.68d3e67d.chunk.css +2 -0
  51. package/web/static/css/4010.68d3e67d.chunk.css.map +1 -0
  52. package/web/static/css/4098.68d3e67d.chunk.css +2 -0
  53. package/web/static/css/4098.68d3e67d.chunk.css.map +1 -0
  54. package/web/static/css/4128.68d3e67d.chunk.css +2 -0
  55. package/web/static/css/4128.68d3e67d.chunk.css.map +1 -0
  56. package/web/static/css/4188.68d3e67d.chunk.css +2 -0
  57. package/web/static/css/4188.68d3e67d.chunk.css.map +1 -0
  58. package/web/static/css/{4396.dff7ced8.chunk.css → 4396.2422fe7f.chunk.css} +2 -2
  59. package/web/static/css/{4396.dff7ced8.chunk.css.map → 4396.2422fe7f.chunk.css.map} +1 -1
  60. package/web/static/css/4405.68d3e67d.chunk.css +2 -0
  61. package/web/static/css/4405.68d3e67d.chunk.css.map +1 -0
  62. package/web/static/css/4503.68d3e67d.chunk.css +2 -0
  63. package/web/static/css/4503.68d3e67d.chunk.css.map +1 -0
  64. package/web/static/css/4648.68d3e67d.chunk.css +2 -0
  65. package/web/static/css/4648.68d3e67d.chunk.css.map +1 -0
  66. package/web/static/css/4948.68d3e67d.chunk.css +2 -0
  67. package/web/static/css/4948.68d3e67d.chunk.css.map +1 -0
  68. package/web/static/css/5244.68d3e67d.chunk.css +2 -0
  69. package/web/static/css/5244.68d3e67d.chunk.css.map +1 -0
  70. package/web/static/css/5308.68d3e67d.chunk.css +2 -0
  71. package/web/static/css/5308.68d3e67d.chunk.css.map +1 -0
  72. package/web/static/css/5393.68d3e67d.chunk.css +2 -0
  73. package/web/static/css/5393.68d3e67d.chunk.css.map +1 -0
  74. package/web/static/css/5408.68d3e67d.chunk.css +2 -0
  75. package/web/static/css/5408.68d3e67d.chunk.css.map +1 -0
  76. package/web/static/css/5595.68d3e67d.chunk.css +2 -0
  77. package/web/static/css/5595.68d3e67d.chunk.css.map +1 -0
  78. package/web/static/css/5865.68d3e67d.chunk.css +2 -0
  79. package/web/static/css/5865.68d3e67d.chunk.css.map +1 -0
  80. package/web/static/css/{643.e3a148be.chunk.css → 643.68d3e67d.chunk.css} +2 -2
  81. package/web/static/css/{694.e3a148be.chunk.css.map → 643.68d3e67d.chunk.css.map} +1 -1
  82. package/web/static/css/6510.68d3e67d.chunk.css +2 -0
  83. package/web/static/css/6510.68d3e67d.chunk.css.map +1 -0
  84. package/web/static/css/6715.68d3e67d.chunk.css +2 -0
  85. package/web/static/css/6715.68d3e67d.chunk.css.map +1 -0
  86. package/web/static/css/6730.68d3e67d.chunk.css +2 -0
  87. package/web/static/css/6730.68d3e67d.chunk.css.map +1 -0
  88. package/web/static/css/{694.e3a148be.chunk.css → 694.68d3e67d.chunk.css} +2 -2
  89. package/web/static/css/{643.e3a148be.chunk.css.map → 694.68d3e67d.chunk.css.map} +1 -1
  90. package/web/static/css/7104.68d3e67d.chunk.css +2 -0
  91. package/web/static/css/7104.68d3e67d.chunk.css.map +1 -0
  92. package/web/static/css/7157.68d3e67d.chunk.css +2 -0
  93. package/web/static/css/7157.68d3e67d.chunk.css.map +1 -0
  94. package/web/static/css/7390.68d3e67d.chunk.css +2 -0
  95. package/web/static/css/7390.68d3e67d.chunk.css.map +1 -0
  96. package/web/static/css/748.68d3e67d.chunk.css +2 -0
  97. package/web/static/css/748.68d3e67d.chunk.css.map +1 -0
  98. package/web/static/css/7541.68d3e67d.chunk.css +2 -0
  99. package/web/static/css/7541.68d3e67d.chunk.css.map +1 -0
  100. package/web/static/css/7761.68d3e67d.chunk.css +2 -0
  101. package/web/static/css/7761.68d3e67d.chunk.css.map +1 -0
  102. package/web/static/css/7834.68d3e67d.chunk.css +2 -0
  103. package/web/static/css/7834.68d3e67d.chunk.css.map +1 -0
  104. package/web/static/css/7875.68d3e67d.chunk.css +2 -0
  105. package/web/static/css/7875.68d3e67d.chunk.css.map +1 -0
  106. package/web/static/css/7884.68d3e67d.chunk.css +2 -0
  107. package/web/static/css/7884.68d3e67d.chunk.css.map +1 -0
  108. package/web/static/css/8023.68d3e67d.chunk.css +2 -0
  109. package/web/static/css/8023.68d3e67d.chunk.css.map +1 -0
  110. package/web/static/css/8073.68d3e67d.chunk.css +2 -0
  111. package/web/static/css/8073.68d3e67d.chunk.css.map +1 -0
  112. package/web/static/css/8566.68d3e67d.chunk.css +2 -0
  113. package/web/static/css/8566.68d3e67d.chunk.css.map +1 -0
  114. package/web/static/css/875.68d3e67d.chunk.css +2 -0
  115. package/web/static/css/875.68d3e67d.chunk.css.map +1 -0
  116. package/web/static/css/9121.68d3e67d.chunk.css +2 -0
  117. package/web/static/css/9121.68d3e67d.chunk.css.map +1 -0
  118. package/web/static/css/9253.68d3e67d.chunk.css +2 -0
  119. package/web/static/css/9253.68d3e67d.chunk.css.map +1 -0
  120. package/web/static/css/9260.68d3e67d.chunk.css +2 -0
  121. package/web/static/css/9260.68d3e67d.chunk.css.map +1 -0
  122. package/web/static/css/9384.68d3e67d.chunk.css +2 -0
  123. package/web/static/css/9384.68d3e67d.chunk.css.map +1 -0
  124. package/web/static/css/9503.68d3e67d.chunk.css +2 -0
  125. package/web/static/css/9503.68d3e67d.chunk.css.map +1 -0
  126. package/web/static/css/9673.68d3e67d.chunk.css +2 -0
  127. package/web/static/css/9673.68d3e67d.chunk.css.map +1 -0
  128. package/web/static/css/9763.68d3e67d.chunk.css +2 -0
  129. package/web/static/css/9763.68d3e67d.chunk.css.map +1 -0
  130. package/web/static/css/9776.68d3e67d.chunk.css +2 -0
  131. package/web/static/css/9776.68d3e67d.chunk.css.map +1 -0
  132. package/web/static/css/9777.68d3e67d.chunk.css +2 -0
  133. package/web/static/css/9777.68d3e67d.chunk.css.map +1 -0
  134. package/web/static/css/9853.68d3e67d.chunk.css +2 -0
  135. package/web/static/css/9853.68d3e67d.chunk.css.map +1 -0
  136. package/web/static/css/main.0c10783e.css +10 -0
  137. package/web/static/css/main.0c10783e.css.map +1 -0
  138. package/web/static/js/1043.4bfec656.chunk.js +3 -0
  139. package/web/static/js/{1043.b6314c0a.chunk.js.LICENSE.txt → 1043.4bfec656.chunk.js.LICENSE.txt} +0 -0
  140. package/web/static/js/1043.4bfec656.chunk.js.map +1 -0
  141. package/web/static/js/{1059.4495b351.chunk.js → 1059.8c41bdb3.chunk.js} +2 -2
  142. package/web/static/js/{1059.4495b351.chunk.js.map → 1059.8c41bdb3.chunk.js.map} +1 -1
  143. package/web/static/js/{1061.cd65b7da.chunk.js → 1061.18e4bac9.chunk.js} +2 -2
  144. package/web/static/js/{1061.cd65b7da.chunk.js.map → 1061.18e4bac9.chunk.js.map} +1 -1
  145. package/web/static/js/{1169.f9837259.chunk.js → 1169.ab4b4258.chunk.js} +2 -2
  146. package/web/static/js/{1169.f9837259.chunk.js.map → 1169.ab4b4258.chunk.js.map} +1 -1
  147. package/web/static/js/{1317.fc9b4b52.chunk.js → 1317.6abd1b43.chunk.js} +2 -2
  148. package/web/static/js/{1317.fc9b4b52.chunk.js.map → 1317.6abd1b43.chunk.js.map} +1 -1
  149. package/web/static/js/{1584.7ded6f67.chunk.js → 1584.cfa20dcb.chunk.js} +2 -2
  150. package/web/static/js/{1584.7ded6f67.chunk.js.map → 1584.cfa20dcb.chunk.js.map} +1 -1
  151. package/web/static/js/{1619.75ec8163.chunk.js → 1619.84d686a6.chunk.js} +2 -2
  152. package/web/static/js/{1619.75ec8163.chunk.js.map → 1619.84d686a6.chunk.js.map} +1 -1
  153. package/web/static/js/{163.0d1787a7.chunk.js → 163.f0f23b4f.chunk.js} +2 -2
  154. package/web/static/js/{163.0d1787a7.chunk.js.map → 163.f0f23b4f.chunk.js.map} +1 -1
  155. package/web/static/js/{1820.cf30d27f.chunk.js → 1820.066aadd9.chunk.js} +2 -2
  156. package/web/static/js/{1820.cf30d27f.chunk.js.map → 1820.066aadd9.chunk.js.map} +1 -1
  157. package/web/static/js/{2156.76e6145a.chunk.js → 2156.dc2d0f2c.chunk.js} +2 -2
  158. package/web/static/js/{2156.76e6145a.chunk.js.map → 2156.dc2d0f2c.chunk.js.map} +1 -1
  159. package/web/static/js/{2190.cfd37673.chunk.js → 2190.4e2428fa.chunk.js} +2 -2
  160. package/web/static/js/{2190.cfd37673.chunk.js.map → 2190.4e2428fa.chunk.js.map} +1 -1
  161. package/web/static/js/{221.120852a7.chunk.js → 221.e3205c94.chunk.js} +2 -2
  162. package/web/static/js/{221.120852a7.chunk.js.map → 221.e3205c94.chunk.js.map} +1 -1
  163. package/web/static/js/{2230.5ab979d5.chunk.js → 2230.7f1f79eb.chunk.js} +2 -2
  164. package/web/static/js/{2230.5ab979d5.chunk.js.map → 2230.7f1f79eb.chunk.js.map} +1 -1
  165. package/web/static/js/{2316.52d6b2ea.chunk.js → 2316.b55dfe76.chunk.js} +2 -2
  166. package/web/static/js/{2316.52d6b2ea.chunk.js.map → 2316.b55dfe76.chunk.js.map} +1 -1
  167. package/web/static/js/{2367.10d88d5c.chunk.js → 2367.ee94ca92.chunk.js} +2 -2
  168. package/web/static/js/{2367.10d88d5c.chunk.js.map → 2367.ee94ca92.chunk.js.map} +1 -1
  169. package/web/static/js/{2411.4f765bfe.chunk.js → 2411.7033ebd6.chunk.js} +2 -2
  170. package/web/static/js/{2411.4f765bfe.chunk.js.map → 2411.7033ebd6.chunk.js.map} +1 -1
  171. package/web/static/js/{2582.0b86d01c.chunk.js → 2582.eacb35a1.chunk.js} +2 -2
  172. package/web/static/js/{2582.0b86d01c.chunk.js.map → 2582.eacb35a1.chunk.js.map} +1 -1
  173. package/web/static/js/{2595.9f2308af.chunk.js → 2595.17abe8f9.chunk.js} +2 -2
  174. package/web/static/js/{2595.9f2308af.chunk.js.map → 2595.17abe8f9.chunk.js.map} +1 -1
  175. package/web/static/js/{2737.1a464445.chunk.js → 2737.6d444c61.chunk.js} +2 -2
  176. package/web/static/js/{2737.1a464445.chunk.js.map → 2737.6d444c61.chunk.js.map} +1 -1
  177. package/web/static/js/{2782.107ae06c.chunk.js → 2782.f098a80b.chunk.js} +2 -2
  178. package/web/static/js/{2782.107ae06c.chunk.js.map → 2782.f098a80b.chunk.js.map} +1 -1
  179. package/web/static/js/{3313.5d382d80.chunk.js → 3313.639b48d1.chunk.js} +2 -2
  180. package/web/static/js/{3313.5d382d80.chunk.js.map → 3313.639b48d1.chunk.js.map} +1 -1
  181. package/web/static/js/{3518.074f3740.chunk.js → 3518.6b4fedcb.chunk.js} +2 -2
  182. package/web/static/js/{3518.074f3740.chunk.js.map → 3518.6b4fedcb.chunk.js.map} +1 -1
  183. package/web/static/js/{3812.b1215e26.chunk.js → 3812.36247fba.chunk.js} +2 -2
  184. package/web/static/js/{3812.b1215e26.chunk.js.map → 3812.36247fba.chunk.js.map} +1 -1
  185. package/web/static/js/{3917.173ac34e.chunk.js → 3917.3338e46c.chunk.js} +2 -2
  186. package/web/static/js/{3917.173ac34e.chunk.js.map → 3917.3338e46c.chunk.js.map} +1 -1
  187. package/web/static/js/{4010.02a20c14.chunk.js → 4010.cfae8a18.chunk.js} +2 -2
  188. package/web/static/js/{4010.02a20c14.chunk.js.map → 4010.cfae8a18.chunk.js.map} +1 -1
  189. package/web/static/js/4036.46baa59c.chunk.js +2 -0
  190. package/web/static/js/4036.46baa59c.chunk.js.map +1 -0
  191. package/web/static/js/{4098.87499a23.chunk.js → 4098.3c546b6a.chunk.js} +2 -2
  192. package/web/static/js/{4098.87499a23.chunk.js.map → 4098.3c546b6a.chunk.js.map} +1 -1
  193. package/web/static/js/{4128.f8b243e5.chunk.js → 4128.4428dd61.chunk.js} +2 -2
  194. package/web/static/js/{4128.f8b243e5.chunk.js.map → 4128.4428dd61.chunk.js.map} +1 -1
  195. package/web/static/js/{4188.80462fd1.chunk.js → 4188.c0384a97.chunk.js} +2 -2
  196. package/web/static/js/{4188.80462fd1.chunk.js.map → 4188.c0384a97.chunk.js.map} +1 -1
  197. package/web/static/js/{4396.44196e74.chunk.js → 4396.753539f0.chunk.js} +2 -2
  198. package/web/static/js/{4396.44196e74.chunk.js.map → 4396.753539f0.chunk.js.map} +1 -1
  199. package/web/static/js/{4405.d2e6457b.chunk.js → 4405.401b7628.chunk.js} +2 -2
  200. package/web/static/js/{4405.d2e6457b.chunk.js.map → 4405.401b7628.chunk.js.map} +1 -1
  201. package/web/static/js/{4503.d2a8a72a.chunk.js → 4503.b98a367f.chunk.js} +2 -2
  202. package/web/static/js/{4503.d2a8a72a.chunk.js.map → 4503.b98a367f.chunk.js.map} +1 -1
  203. package/web/static/js/{4648.ff23105a.chunk.js → 4648.cf45499b.chunk.js} +2 -2
  204. package/web/static/js/{4648.ff23105a.chunk.js.map → 4648.cf45499b.chunk.js.map} +1 -1
  205. package/web/static/js/{4877.2a1eff17.chunk.js → 4877.9aecd74c.chunk.js} +2 -2
  206. package/web/static/js/{4877.2a1eff17.chunk.js.map → 4877.9aecd74c.chunk.js.map} +1 -1
  207. package/web/static/js/{4948.05bf6f0f.chunk.js → 4948.86b48344.chunk.js} +2 -2
  208. package/web/static/js/{4948.05bf6f0f.chunk.js.map → 4948.86b48344.chunk.js.map} +1 -1
  209. package/web/static/js/5183.7b46ce4a.js +3 -0
  210. package/web/static/js/{516.4f77e6c7.js.LICENSE.txt → 5183.7b46ce4a.js.LICENSE.txt} +1 -1
  211. package/web/static/js/5183.7b46ce4a.js.map +1 -0
  212. package/web/static/js/{5244.eefb8abf.chunk.js → 5244.3a8162b4.chunk.js} +2 -2
  213. package/web/static/js/5244.3a8162b4.chunk.js.map +1 -0
  214. package/web/static/js/5253.0a82cabf.chunk.js +2 -0
  215. package/web/static/js/5253.0a82cabf.chunk.js.map +1 -0
  216. package/web/static/js/{5308.1e27c2b0.chunk.js → 5308.4894b1d3.chunk.js} +2 -2
  217. package/web/static/js/{5308.1e27c2b0.chunk.js.map → 5308.4894b1d3.chunk.js.map} +1 -1
  218. package/web/static/js/{5393.a171e4d2.chunk.js → 5393.e88bce25.chunk.js} +2 -2
  219. package/web/static/js/{5393.a171e4d2.chunk.js.map → 5393.e88bce25.chunk.js.map} +1 -1
  220. package/web/static/js/{5408.aa4c22cd.chunk.js → 5408.20ea48f2.chunk.js} +2 -2
  221. package/web/static/js/{5408.aa4c22cd.chunk.js.map → 5408.20ea48f2.chunk.js.map} +1 -1
  222. package/web/static/js/{5595.0e78a492.chunk.js → 5595.1e160465.chunk.js} +2 -2
  223. package/web/static/js/{5595.0e78a492.chunk.js.map → 5595.1e160465.chunk.js.map} +1 -1
  224. package/web/static/js/{5865.fa18da02.chunk.js → 5865.373c81e0.chunk.js} +2 -2
  225. package/web/static/js/5865.373c81e0.chunk.js.map +1 -0
  226. package/web/static/js/{643.a3411691.chunk.js → 643.564fa069.chunk.js} +2 -2
  227. package/web/static/js/{643.a3411691.chunk.js.map → 643.564fa069.chunk.js.map} +1 -1
  228. package/web/static/js/{6510.2dee9f3c.chunk.js → 6510.5f6e687e.chunk.js} +2 -2
  229. package/web/static/js/{6510.2dee9f3c.chunk.js.map → 6510.5f6e687e.chunk.js.map} +1 -1
  230. package/web/static/js/{6566.75acebe9.chunk.js → 6566.f7efbc17.chunk.js} +2 -2
  231. package/web/static/js/{6566.75acebe9.chunk.js.map → 6566.f7efbc17.chunk.js.map} +1 -1
  232. package/web/static/js/{6715.0320a551.chunk.js → 6715.777e97ee.chunk.js} +2 -2
  233. package/web/static/js/{6715.0320a551.chunk.js.map → 6715.777e97ee.chunk.js.map} +1 -1
  234. package/web/static/js/{6730.834c8877.chunk.js → 6730.80807394.chunk.js} +2 -2
  235. package/web/static/js/{6730.834c8877.chunk.js.map → 6730.80807394.chunk.js.map} +1 -1
  236. package/web/static/js/{694.011eb76b.chunk.js → 694.3a3973dc.chunk.js} +2 -2
  237. package/web/static/js/{694.011eb76b.chunk.js.map → 694.3a3973dc.chunk.js.map} +1 -1
  238. package/web/static/js/{7104.e015415e.chunk.js → 7104.f078bd8f.chunk.js} +2 -2
  239. package/web/static/js/{7104.e015415e.chunk.js.map → 7104.f078bd8f.chunk.js.map} +1 -1
  240. package/web/static/js/{7157.a776022e.chunk.js → 7157.674d2cef.chunk.js} +2 -2
  241. package/web/static/js/{7157.a776022e.chunk.js.map → 7157.674d2cef.chunk.js.map} +1 -1
  242. package/web/static/js/7217.6128cabc.chunk.js +2 -0
  243. package/web/static/js/7217.6128cabc.chunk.js.map +1 -0
  244. package/web/static/js/{7390.e257d281.chunk.js → 7390.ef171daa.chunk.js} +2 -2
  245. package/web/static/js/{7390.e257d281.chunk.js.map → 7390.ef171daa.chunk.js.map} +1 -1
  246. package/web/static/js/{748.afafbadc.chunk.js → 748.dd22995f.chunk.js} +2 -2
  247. package/web/static/js/{748.afafbadc.chunk.js.map → 748.dd22995f.chunk.js.map} +1 -1
  248. package/web/static/js/{7541.3b084a97.chunk.js → 7541.6b461e9b.chunk.js} +2 -2
  249. package/web/static/js/{7541.3b084a97.chunk.js.map → 7541.6b461e9b.chunk.js.map} +1 -1
  250. package/web/static/js/{7761.22ae5d00.chunk.js → 7761.349b5f83.chunk.js} +2 -2
  251. package/web/static/js/{7761.22ae5d00.chunk.js.map → 7761.349b5f83.chunk.js.map} +1 -1
  252. package/web/static/js/{7834.9ab99355.chunk.js → 7834.c7d12602.chunk.js} +2 -2
  253. package/web/static/js/{7834.9ab99355.chunk.js.map → 7834.c7d12602.chunk.js.map} +1 -1
  254. package/web/static/js/{7875.5781f669.chunk.js → 7875.37a0d852.chunk.js} +2 -2
  255. package/web/static/js/{7875.5781f669.chunk.js.map → 7875.37a0d852.chunk.js.map} +1 -1
  256. package/web/static/js/{7884.c8c0f094.chunk.js → 7884.34b4a7bd.chunk.js} +2 -2
  257. package/web/static/js/{7884.c8c0f094.chunk.js.map → 7884.34b4a7bd.chunk.js.map} +1 -1
  258. package/web/static/js/{8023.5a24424f.chunk.js → 8023.fcdcd33f.chunk.js} +2 -2
  259. package/web/static/js/{8023.5a24424f.chunk.js.map → 8023.fcdcd33f.chunk.js.map} +1 -1
  260. package/web/static/js/{8073.a1a0b599.chunk.js → 8073.66af28c9.chunk.js} +2 -2
  261. package/web/static/js/{8073.a1a0b599.chunk.js.map → 8073.66af28c9.chunk.js.map} +1 -1
  262. package/web/static/js/{8566.a7789b25.chunk.js → 8566.0c36045c.chunk.js} +2 -2
  263. package/web/static/js/{8566.a7789b25.chunk.js.map → 8566.0c36045c.chunk.js.map} +1 -1
  264. package/web/static/js/{875.10775da4.chunk.js → 875.d60e2f6a.chunk.js} +2 -2
  265. package/web/static/js/{875.10775da4.chunk.js.map → 875.d60e2f6a.chunk.js.map} +1 -1
  266. package/web/static/js/8768.f2c39fb9.chunk.js +2 -0
  267. package/web/static/js/8768.f2c39fb9.chunk.js.map +1 -0
  268. package/web/static/js/{9121.e39f5f2d.chunk.js → 9121.5004f71e.chunk.js} +2 -2
  269. package/web/static/js/{9121.e39f5f2d.chunk.js.map → 9121.5004f71e.chunk.js.map} +1 -1
  270. package/web/static/js/9137.f4e2b7b0.chunk.js +2 -0
  271. package/web/static/js/9137.f4e2b7b0.chunk.js.map +1 -0
  272. package/web/static/js/{9200.2bc62823.chunk.js → 9200.0a1f7353.chunk.js} +2 -2
  273. package/web/static/js/9200.0a1f7353.chunk.js.map +1 -0
  274. package/web/static/js/{9253.ef3297d1.chunk.js → 9253.2d3df27c.chunk.js} +2 -2
  275. package/web/static/js/{9253.ef3297d1.chunk.js.map → 9253.2d3df27c.chunk.js.map} +1 -1
  276. package/web/static/js/{9260.dec07e17.chunk.js → 9260.7c42ffba.chunk.js} +2 -2
  277. package/web/static/js/{9260.dec07e17.chunk.js.map → 9260.7c42ffba.chunk.js.map} +1 -1
  278. package/web/static/js/{9384.468045bf.chunk.js → 9384.a2c1487a.chunk.js} +2 -2
  279. package/web/static/js/{9384.468045bf.chunk.js.map → 9384.a2c1487a.chunk.js.map} +1 -1
  280. package/web/static/js/{9429.b142ace4.chunk.js → 9429.3b8debbf.chunk.js} +2 -2
  281. package/web/static/js/{9429.b142ace4.chunk.js.map → 9429.3b8debbf.chunk.js.map} +1 -1
  282. package/web/static/js/{9503.29c81582.chunk.js → 9503.1c6433de.chunk.js} +2 -2
  283. package/web/static/js/{9503.29c81582.chunk.js.map → 9503.1c6433de.chunk.js.map} +1 -1
  284. package/web/static/js/{9673.4ae8e9cb.chunk.js → 9673.af990b78.chunk.js} +2 -2
  285. package/web/static/js/{9673.4ae8e9cb.chunk.js.map → 9673.af990b78.chunk.js.map} +1 -1
  286. package/web/static/js/{9763.4d317173.chunk.js → 9763.214c1dc8.chunk.js} +2 -2
  287. package/web/static/js/{9763.4d317173.chunk.js.map → 9763.214c1dc8.chunk.js.map} +1 -1
  288. package/web/static/js/{9776.4273f5ab.chunk.js → 9776.ef603a3d.chunk.js} +2 -2
  289. package/web/static/js/{9776.4273f5ab.chunk.js.map → 9776.ef603a3d.chunk.js.map} +1 -1
  290. package/web/static/js/{9777.dcecd064.chunk.js → 9777.699392fa.chunk.js} +2 -2
  291. package/web/static/js/{9777.dcecd064.chunk.js.map → 9777.699392fa.chunk.js.map} +1 -1
  292. package/web/static/js/{9853.4f64c43f.chunk.js → 9853.f8a0acee.chunk.js} +2 -2
  293. package/web/static/js/{9853.4f64c43f.chunk.js.map → 9853.f8a0acee.chunk.js.map} +1 -1
  294. package/web/static/js/main.f218b7cf.js +2 -0
  295. package/web/static/js/main.f218b7cf.js.map +1 -0
  296. package/web/static/css/1584.e3a148be.chunk.css +0 -2
  297. package/web/static/css/1584.e3a148be.chunk.css.map +0 -1
  298. package/web/static/css/1619.e3a148be.chunk.css +0 -2
  299. package/web/static/css/1619.e3a148be.chunk.css.map +0 -1
  300. package/web/static/css/1820.e3a148be.chunk.css +0 -2
  301. package/web/static/css/1820.e3a148be.chunk.css.map +0 -1
  302. package/web/static/css/2156.e3a148be.chunk.css +0 -2
  303. package/web/static/css/2156.e3a148be.chunk.css.map +0 -1
  304. package/web/static/css/2190.e3a148be.chunk.css +0 -2
  305. package/web/static/css/2190.e3a148be.chunk.css.map +0 -1
  306. package/web/static/css/2230.e3a148be.chunk.css +0 -2
  307. package/web/static/css/2230.e3a148be.chunk.css.map +0 -1
  308. package/web/static/css/2316.e3a148be.chunk.css +0 -2
  309. package/web/static/css/2316.e3a148be.chunk.css.map +0 -1
  310. package/web/static/css/2367.e3a148be.chunk.css +0 -2
  311. package/web/static/css/2367.e3a148be.chunk.css.map +0 -1
  312. package/web/static/css/2411.e3a148be.chunk.css +0 -2
  313. package/web/static/css/2411.e3a148be.chunk.css.map +0 -1
  314. package/web/static/css/2582.e3a148be.chunk.css +0 -2
  315. package/web/static/css/2582.e3a148be.chunk.css.map +0 -1
  316. package/web/static/css/2595.e3a148be.chunk.css +0 -2
  317. package/web/static/css/2595.e3a148be.chunk.css.map +0 -1
  318. package/web/static/css/2737.e3a148be.chunk.css +0 -2
  319. package/web/static/css/2737.e3a148be.chunk.css.map +0 -1
  320. package/web/static/css/2782.e3a148be.chunk.css +0 -2
  321. package/web/static/css/2782.e3a148be.chunk.css.map +0 -1
  322. package/web/static/css/3313.e3a148be.chunk.css +0 -2
  323. package/web/static/css/3313.e3a148be.chunk.css.map +0 -1
  324. package/web/static/css/3518.e3a148be.chunk.css +0 -2
  325. package/web/static/css/3518.e3a148be.chunk.css.map +0 -1
  326. package/web/static/css/3812.e3a148be.chunk.css +0 -2
  327. package/web/static/css/3812.e3a148be.chunk.css.map +0 -1
  328. package/web/static/css/3917.e3a148be.chunk.css +0 -2
  329. package/web/static/css/3917.e3a148be.chunk.css.map +0 -1
  330. package/web/static/css/4010.e3a148be.chunk.css +0 -2
  331. package/web/static/css/4010.e3a148be.chunk.css.map +0 -1
  332. package/web/static/css/4098.e3a148be.chunk.css +0 -2
  333. package/web/static/css/4098.e3a148be.chunk.css.map +0 -1
  334. package/web/static/css/4128.e3a148be.chunk.css +0 -2
  335. package/web/static/css/4128.e3a148be.chunk.css.map +0 -1
  336. package/web/static/css/4188.e3a148be.chunk.css +0 -2
  337. package/web/static/css/4188.e3a148be.chunk.css.map +0 -1
  338. package/web/static/css/4405.e3a148be.chunk.css +0 -2
  339. package/web/static/css/4405.e3a148be.chunk.css.map +0 -1
  340. package/web/static/css/4503.e3a148be.chunk.css +0 -2
  341. package/web/static/css/4503.e3a148be.chunk.css.map +0 -1
  342. package/web/static/css/4648.e3a148be.chunk.css +0 -2
  343. package/web/static/css/4648.e3a148be.chunk.css.map +0 -1
  344. package/web/static/css/4948.e3a148be.chunk.css +0 -2
  345. package/web/static/css/4948.e3a148be.chunk.css.map +0 -1
  346. package/web/static/css/5244.e3a148be.chunk.css +0 -2
  347. package/web/static/css/5244.e3a148be.chunk.css.map +0 -1
  348. package/web/static/css/5308.e3a148be.chunk.css +0 -2
  349. package/web/static/css/5308.e3a148be.chunk.css.map +0 -1
  350. package/web/static/css/5393.e3a148be.chunk.css +0 -2
  351. package/web/static/css/5393.e3a148be.chunk.css.map +0 -1
  352. package/web/static/css/5408.e3a148be.chunk.css +0 -2
  353. package/web/static/css/5408.e3a148be.chunk.css.map +0 -1
  354. package/web/static/css/5595.e3a148be.chunk.css +0 -2
  355. package/web/static/css/5595.e3a148be.chunk.css.map +0 -1
  356. package/web/static/css/5865.e3a148be.chunk.css +0 -2
  357. package/web/static/css/5865.e3a148be.chunk.css.map +0 -1
  358. package/web/static/css/6510.e3a148be.chunk.css +0 -2
  359. package/web/static/css/6510.e3a148be.chunk.css.map +0 -1
  360. package/web/static/css/6715.e3a148be.chunk.css +0 -2
  361. package/web/static/css/6715.e3a148be.chunk.css.map +0 -1
  362. package/web/static/css/6730.e3a148be.chunk.css +0 -2
  363. package/web/static/css/6730.e3a148be.chunk.css.map +0 -1
  364. package/web/static/css/7104.e3a148be.chunk.css +0 -2
  365. package/web/static/css/7104.e3a148be.chunk.css.map +0 -1
  366. package/web/static/css/7157.e3a148be.chunk.css +0 -2
  367. package/web/static/css/7157.e3a148be.chunk.css.map +0 -1
  368. package/web/static/css/7390.e3a148be.chunk.css +0 -2
  369. package/web/static/css/7390.e3a148be.chunk.css.map +0 -1
  370. package/web/static/css/748.e3a148be.chunk.css +0 -2
  371. package/web/static/css/748.e3a148be.chunk.css.map +0 -1
  372. package/web/static/css/7541.e3a148be.chunk.css +0 -2
  373. package/web/static/css/7541.e3a148be.chunk.css.map +0 -1
  374. package/web/static/css/7761.e3a148be.chunk.css +0 -2
  375. package/web/static/css/7761.e3a148be.chunk.css.map +0 -1
  376. package/web/static/css/7834.e3a148be.chunk.css +0 -2
  377. package/web/static/css/7834.e3a148be.chunk.css.map +0 -1
  378. package/web/static/css/7875.e3a148be.chunk.css +0 -2
  379. package/web/static/css/7875.e3a148be.chunk.css.map +0 -1
  380. package/web/static/css/7884.e3a148be.chunk.css +0 -2
  381. package/web/static/css/7884.e3a148be.chunk.css.map +0 -1
  382. package/web/static/css/8023.e3a148be.chunk.css +0 -2
  383. package/web/static/css/8023.e3a148be.chunk.css.map +0 -1
  384. package/web/static/css/8073.e3a148be.chunk.css +0 -2
  385. package/web/static/css/8073.e3a148be.chunk.css.map +0 -1
  386. package/web/static/css/8566.e3a148be.chunk.css +0 -2
  387. package/web/static/css/8566.e3a148be.chunk.css.map +0 -1
  388. package/web/static/css/875.e3a148be.chunk.css +0 -2
  389. package/web/static/css/875.e3a148be.chunk.css.map +0 -1
  390. package/web/static/css/9121.e3a148be.chunk.css +0 -2
  391. package/web/static/css/9121.e3a148be.chunk.css.map +0 -1
  392. package/web/static/css/9253.e3a148be.chunk.css +0 -2
  393. package/web/static/css/9253.e3a148be.chunk.css.map +0 -1
  394. package/web/static/css/9260.e3a148be.chunk.css +0 -2
  395. package/web/static/css/9260.e3a148be.chunk.css.map +0 -1
  396. package/web/static/css/9384.e3a148be.chunk.css +0 -2
  397. package/web/static/css/9384.e3a148be.chunk.css.map +0 -1
  398. package/web/static/css/9503.e3a148be.chunk.css +0 -2
  399. package/web/static/css/9503.e3a148be.chunk.css.map +0 -1
  400. package/web/static/css/9673.e3a148be.chunk.css +0 -2
  401. package/web/static/css/9673.e3a148be.chunk.css.map +0 -1
  402. package/web/static/css/9763.e3a148be.chunk.css +0 -2
  403. package/web/static/css/9763.e3a148be.chunk.css.map +0 -1
  404. package/web/static/css/9776.e3a148be.chunk.css +0 -2
  405. package/web/static/css/9776.e3a148be.chunk.css.map +0 -1
  406. package/web/static/css/9777.e3a148be.chunk.css +0 -2
  407. package/web/static/css/9777.e3a148be.chunk.css.map +0 -1
  408. package/web/static/css/9853.e3a148be.chunk.css +0 -2
  409. package/web/static/css/9853.e3a148be.chunk.css.map +0 -1
  410. package/web/static/css/main.ca6ee92b.css +0 -10
  411. package/web/static/css/main.ca6ee92b.css.map +0 -1
  412. package/web/static/js/1043.b6314c0a.chunk.js +0 -3
  413. package/web/static/js/1043.b6314c0a.chunk.js.map +0 -1
  414. package/web/static/js/4036.7e4b2102.chunk.js +0 -2
  415. package/web/static/js/4036.7e4b2102.chunk.js.map +0 -1
  416. package/web/static/js/516.4f77e6c7.js +0 -3
  417. package/web/static/js/516.4f77e6c7.js.map +0 -1
  418. package/web/static/js/5244.eefb8abf.chunk.js.map +0 -1
  419. package/web/static/js/5253.2285ee49.chunk.js +0 -2
  420. package/web/static/js/5253.2285ee49.chunk.js.map +0 -1
  421. package/web/static/js/5865.fa18da02.chunk.js.map +0 -1
  422. package/web/static/js/7217.25bb58ee.chunk.js +0 -2
  423. package/web/static/js/7217.25bb58ee.chunk.js.map +0 -1
  424. package/web/static/js/8768.f2211377.chunk.js +0 -2
  425. package/web/static/js/8768.f2211377.chunk.js.map +0 -1
  426. package/web/static/js/9137.2ff84339.chunk.js +0 -2
  427. package/web/static/js/9137.2ff84339.chunk.js.map +0 -1
  428. package/web/static/js/9200.2bc62823.chunk.js.map +0 -1
  429. package/web/static/js/main.5ef7e121.js +0 -2
  430. package/web/static/js/main.5ef7e121.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/main.f218b7cf.js","mappings":"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AAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,W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","sources":["components/icons/logo.tsx","components/NoMatch/index.tsx","components/Loading/index.tsx","components/VersionSelect/index.module.less","components/VersionSelect/index.tsx","webpack://website/./src/layouts/index.module.less?ec2c","webpack://website/./src/components/SiderMenu/index.module.less?215c","components/icons/nav.tsx","components/SiderMenu/index.tsx","webpack://website/./src/components/Nav/index.module.less?d89d","contexts/index.ts","components/icons/menu.tsx","components/Nav/index.tsx","layouts/BaseLayout.tsx","routers.tsx","index.tsx","../../packages/utils/src/noop.ts","../../packages/utils/src/getScroll.ts","../../packages/react-affix/src/utils.ts","../../packages/react-affix/src/index.tsx","../../packages/react-portal/src/index.tsx","../../packages/react-overlay/src/index.tsx","../../packages/react-icon/src/index.tsx","../../packages/react-button/src/index.tsx","../../packages/react-modal/src/index.tsx","../../packages/react-alert/src/index.tsx","../../packages/react-auto-link/src/index.tsx","../../packages/react-avatar/src/index.tsx","../../packages/react-back-top/src/utils.ts","../../packages/react-back-top/src/index.tsx","../../packages/react-badge/src/index.tsx","../../packages/react-breadcrumb/src/Item.tsx","../../packages/react-breadcrumb/src/Breadcrumb.tsx","../../packages/react-breadcrumb/src/index.ts","../../packages/react-button-group/src/index.tsx","../../packages/react-overlay-trigger/src/utils.ts","../../packages/react-overlay-trigger/src/util/getBordersSize.ts","../../packages/react-overlay-trigger/src/util/isBrowser.ts","../../packages/react-overlay-trigger/src/util/isIE.ts","../../packages/react-overlay-trigger/src/util/getWindowSizes.ts","../../packages/react-overlay-trigger/src/util/getBoundingClientRect.ts","../../packages/react-overlay-trigger/src/util/getClientRect.ts","../../packages/react-overlay-trigger/src/util/getStyleComputedProperty.ts","../../packages/react-overlay-trigger/src/util/getOuterSizes.ts","../../packages/react-overlay-trigger/src/getStyle.ts","../../packages/react-overlay-trigger/src/index.tsx","../../packages/react-popover/src/index.tsx","../../packages/react-input/src/index.tsx","../../packages/react-time-picker/src/Panel.tsx","../../packages/react-time-picker/src/Time.tsx","../../packages/react-time-picker/src/index.tsx","../../packages/react-date-picker/src/DatePickerDay.tsx","../../packages/react-date-picker/src/DatePickerMonth.tsx","../../packages/react-date-picker/src/DatePickerYear.tsx","../../packages/react-date-picker/src/DatePickerCaption.tsx","../../packages/react-date-picker/src/index.tsx","../../packages/react-calendar/src/DayLabel.tsx","../../packages/react-calendar/src/index.tsx","../../packages/react-card/src/index.tsx","../../packages/react-radio/src/RadioAbstract.tsx","../../packages/react-radio/src/Radio.tsx","../../packages/react-radio/src/RadioGroup.tsx","../../packages/react-checkbox/src/Group.tsx","../../packages/react-checkbox/src/Checkbox.tsx","../../packages/react-checkbox/src/index.ts","../../packages/react-collapse/src/Collapse.tsx","../../packages/react-collapse/src/Panel.tsx","../../packages/react-collapse/src/index.ts","../../packages/react-copy-to-clipboard/src/index.tsx","../../packages/react-date-input/src/index.tsx","../../packages/react-descriptions/src/DescriptionsItem.tsx","../../packages/react-descriptions/src/Cell.tsx","../../packages/react-descriptions/src/Row.tsx","../../packages/react-descriptions/src/index.tsx","../../packages/react-divider/src/index.tsx","../../packages/react-drawer/src/index.tsx","../../packages/react-dropdown/src/index.tsx","../../packages/react-file-input/src/Input.tsx","../../packages/react-file-input/src/List.tsx","../../packages/react-file-input/src/Card.tsx","../../packages/react-file-input/src/utils.ts","../../packages/react-file-input/src/FileList.tsx","../../packages/react-file-input/src/index.tsx","../../packages/react-grid/src/Col.tsx","../../packages/react-grid/src/Row.tsx","../../packages/react-form/src/FormItem.tsx","../../packages/react-form/src/Form.tsx","../../packages/react-form/src/index.ts","../../packages/react-list/src/Item.tsx","../../packages/react-list/src/index.tsx","../../packages/react-loader/src/index.tsx","../../packages/react-menu/src/MenuItem.tsx","../../packages/react-menu/src/Divider.tsx","../../packages/react-menu/src/SubMenu.tsx","../../packages/react-menu/src/Menu.tsx","../../packages/react-menu/src/index.ts","../../packages/react-message/src/index.tsx","../../packages/react-month-picker/src/index.tsx","../../packages/react-notify/src/Container.tsx","../../packages/react-notify/src/index.tsx","../../packages/utils/src/randomid.ts","../../packages/react-pagination/src/index.tsx","../../packages/react-pin-code/src/index.tsx","../../packages/react-progress/src/utils.tsx","../../packages/react-progress/src/Circle.tsx","../../packages/react-progress/src/Line.tsx","../../packages/react-progress/src/index.ts","../../packages/react-rate/src/index.tsx","../../packages/react-search-select/src/index.tsx","../../packages/react-select/src/Option.tsx","../../packages/react-select/src/Group.tsx","../../packages/react-select/src/index.tsx","../../packages/react-steps/src/Steps.tsx","../../packages/react-steps/src/Step.tsx","../../packages/react-steps/src/index.ts","../../packages/react-slider/src/Dots.tsx","../../packages/react-slider/src/index.tsx","../../packages/react-switch/src/index.tsx","../../packages/react-table/src/Thead.tsx","../../packages/react-table/src/util.ts","../../packages/react-table/src/index.tsx","../../packages/react-tabs/src/index.tsx","../../packages/react-tabs/src/Pane.tsx","../../packages/react-tag/src/index.tsx","../../packages/react-textarea/src/index.tsx","../../packages/react-tooltip/src/index.tsx","../../packages/react-tree/src/TreeNode.tsx","../../packages/react-tree/src/index.tsx","../../packages/react-tree-checked/src/index.tsx","../webpack/bootstrap","../webpack/runtime/chunk loaded","../webpack/runtime/compat get default export","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/global","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/publicPath","../webpack/runtime/css loading","../webpack/runtime/jsonp chunk loading","../webpack/startup"],"sourcesContent":["import React from 'react';\n\nconst logo = (\n <svg viewBox=\"0 0 20 20\" width=\"23\" height=\"23\" version=\"1.1\">\n <g stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\n <path\n d=\"M5.70480219,0 L10.4096044,3.41834667 L8.61252986,8.94934776 L2.79707453,8.94934776 L1,3.41834667 L5.70480219,0 Z M5.70480219,20 L1,16.5816533 L2.79707453,11.0506522 L8.61252986,11.0506522 L10.4096044,16.5816533 L5.70480219,20 Z M18.8709653,12.9678909 L13.3400514,14.7649021 L9.92167142,10.0599974 L13.3399103,5.35519519 L18.8708781,7.15237223 L18.8709653,12.9678909 Z\"\n fill=\"#FFFFFF\"\n />\n </g>\n </svg>\n);\n\nconst dark = logo;\n\nconst light = (\n <svg viewBox=\"0 0 20 20\" version=\"1.1\">\n <g stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\n <path\n d=\"M5.70480219,0 L10.4096044,3.41834667 L8.61252986,8.94934776 L2.79707453,8.94934776 L1,3.41834667 L5.70480219,0 Z M5.70480219,20 L1,16.5816533 L2.79707453,11.0506522 L8.61252986,11.0506522 L10.4096044,16.5816533 L5.70480219,20 Z M18.8709653,12.9678909 L13.3400514,14.7649021 L9.92167142,10.0599974 L13.3399103,5.35519519 L18.8708781,7.15237223 L18.8709653,12.9678909 Z\"\n fill=\"#FFFFFF\"\n />\n </g>\n </svg>\n);\n\nexport default {\n dark,\n light,\n};\n","import { Link } from 'react-router-dom';\n\nexport default function NoMatch() {\n return (\n <div>\n <h2>It looks like you're lost...</h2>\n <p>\n <Link to=\"/\">Go to the home page</Link>\n </p>\n </div>\n );\n}\n","import { Loader, Icon } from 'uiw';\n\nexport default function De() {\n return (\n <Loader tip=\"Loading...\" indicator={<Icon type=\"loading\" spin={true} style={{ verticalAlign: 'text-top' }} />} />\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {};","import React, { useMemo } from 'react';\nimport { Select } from 'uiw';\nimport pkg from 'uiw/package.json';\nimport styles from './index.module.less';\n\ntype OptionsProps = {\n version?: string;\n};\n\nfunction Options(props = {} as OptionsProps) {\n return useMemo(() => <Select.Option value={props.version}>{props.version}</Select.Option>, [props.version]);\n}\n\nexport type VersionSelectProps = {\n data: string[];\n};\n\nconst VersionSelect = (props = {} as VersionSelectProps) => {\n function onChange(e: React.ChangeEvent<HTMLSelectElement>) {\n const version = e.target.value;\n const isV1 = version.split('.')[0] === '1';\n if (isV1) {\n window.location.href = `https://unpkg.com/uiw@${version}/dist/index.html`;\n } else {\n window.location.href = `https://unpkg.com/@uiw/doc@${version}/web/index.html`;\n }\n }\n // @ts-ignore\n // eslint-disable-next-line no-undef\n const currentVersion = pkg.version;\n const versionList = props.data;\n const firstVersion = versionList[0];\n if (firstVersion !== currentVersion) {\n versionList.unshift(currentVersion);\n }\n return useMemo(\n () => (\n <div className={styles.nav}>\n <Select defaultValue={versionList[0]} onChange={onChange}>\n {versionList.map((version, idx) => {\n return <Options key={idx} version={version} />;\n })}\n </Select>\n </div>\n ),\n [versionList],\n );\n};\n\nexport default VersionSelect;\n","// extracted by mini-css-extract-plugin\nexport default {\"sider\":\"index_sider__vrASx\",\"menuWarpper\":\"index_menuWarpper__asOzy\",\"subMenu\":\"index_subMenu__c4Mvo\",\"layoutWrap\":\"index_layoutWrap__6CE3D\",\"layoutSider\":\"index_layoutSider__1t-SG\"};","// extracted by mini-css-extract-plugin\nexport default {\"title\":\"index_title__O5TzH\",\"menu\":\"index_menu__9HE8I\",\"divider\":\"index_divider__1cINS\"};","import React from 'react';\n\nexport default {\n home: (\n <svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\">\n <path\n fill=\"#555\"\n d=\"M7.95808665,21.4797568 L7.95808665,14.2926972 C7.95808665,13.872855 8.29729322,13.5325056 8.71572573,13.5325056 L14.7768383,13.5325056 C15.1952708,13.5325056 15.5344774,13.872855 15.5344774,14.2926972 L15.5344774,21.4800639 L18.3333605,21.4801773 C18.4412665,21.4760176 18.5251665,21.4671569 18.58271,21.4596448 C18.588514,21.3995182 18.5915777,21.3235793 18.5907536,21.2318213 L18.5909124,14.2893672 C18.590922,13.869525 18.9301364,13.5291834 19.3485689,13.5291931 C19.7670014,13.5292027 20.1062001,13.8695599 20.1061905,14.2894021 L20.1059996,21.2248359 C20.1119888,21.8771673 19.9896563,22.3494462 19.5993559,22.6516032 C19.3010239,22.8825616 18.9057568,22.9796164 18.3624477,23 L4.48346492,22.9997015 C3.86961191,22.9824374 3.38486601,22.8118189 3.07125061,22.4182996 C2.79329968,22.0695315 2.68322544,21.5965073 2.68425496,20.9934992 L2.68424909,14.2893853 C2.68424872,13.8695431 3.02345499,13.5291934 3.4418875,13.5291931 C3.86032001,13.5291927 4.19952687,13.8695418 4.19952724,14.289384 L4.199532,20.9947994 C4.19904359,21.2811808 4.23526541,21.4410529 4.2538782,21.4676906 C4.24030246,21.4480656 4.31738234,21.474056 4.50469304,21.4796169 L7.95808665,21.4797568 Z M9.4733648,21.4798183 L14.0191993,21.4800025 L14.0191993,15.0528888 L9.4733648,15.0528888 L9.4733648,21.4798183 Z M2.28332829,11.4133771 C1.98200714,11.7046849 1.50237937,11.6957445 1.21204968,11.3934082 C0.921719999,11.0910719 0.930630346,10.6098283 1.2319515,10.3185205 L10.4507678,1.41136668 C10.7833916,1.14885042 11.1310579,1 11.4999998,1 C11.9102569,1 12.2738276,1.19453217 12.5845816,1.51087139 L21.7658664,10.3164197 C22.0683439,10.6065186 22.0791684,11.0877227 21.7900436,11.3912192 C21.5009189,11.6947157 21.0213305,11.7055767 20.718853,11.4154779 L11.5218713,2.5944308 C11.4545418,2.52599021 11.4440624,2.52038312 11.4999998,2.52038312 C11.514622,2.52038312 11.4750696,2.53731716 11.4448602,2.55629655 L2.28332829,11.4133771 Z\"\n />\n </svg>\n ),\n component: (\n <svg viewBox=\"0 0 1041 1024\" width=\"20\" height=\"20\">\n <path\n d=\"M133.498105 661.882904h31.175644v195.047619a34.373146 34.373146 0 0 0 34.373146 34.373146h109.514441a34.373146 34.373146 0 1 0 0-68.746292h-75.141295V627.509758a35.172521 35.172521 0 0 0-34.373146-35.172521h-65.54879a63.950039 63.950039 0 0 1 0-127.900079h65.54879a35.172521 35.172521 0 0 0 34.373146-35.172521V233.417642h195.846994a35.172521 35.172521 0 0 0 35.172522-34.373146v-65.54879a63.950039 63.950039 0 0 1 127.900078 0v65.54879a35.172521 35.172521 0 0 0 35.172521 34.373146h195.047619v74.341921a34.373146 34.373146 0 0 0 68.746292 0V199.044496a34.373146 34.373146 0 0 0-34.373146-34.373145H661.885302v-31.175645a133.495706 133.495706 0 0 0-266.991413 0v31.175645H199.046895a34.373146 34.373146 0 0 0-34.373146 34.373145v195.846995h-31.175644A132.696331 132.696331 0 0 0 0.002398 527.587822a133.495706 133.495706 0 0 0 133.495707 134.295082z\"\n fill=\"#6F737E\"\n />\n <path\n d=\"M1004.817386 840.943013a79.937549 79.937549 0 1 1 0-159.875097 34.373146 34.373146 0 0 0 34.373146-32.774395V533.982826a34.373146 34.373146 0 0 0-34.373146-34.373146H879.315435v-10.391881a103.119438 103.119438 0 1 0-206.238876 0v10.391881H549.972734a35.172521 35.172521 0 0 0-35.172522 34.373146v124.702576h-10.391881a103.119438 103.119438 0 1 0 0 206.238876h10.391881v124.702576a35.172521 35.172521 0 0 0 35.172522 34.373146H663.484053a34.373146 34.373146 0 0 0 34.373146-34.373146 79.937549 79.937549 0 0 1 159.875098 0 34.373146 34.373146 0 0 0 34.373146 34.373146h114.310694a34.373146 34.373146 0 0 0 34.373146-34.373146V879.313037a34.373146 34.373146 0 0 0-35.971897-38.370024z\"\n fill=\"#6F737E\"\n />\n </svg>\n ),\n github: (\n <svg viewBox=\"0 0 1049 1024\" width=\"20\" height=\"20\">\n <path\n d=\"M524.979332 0C234.676191 0 0 234.676191 0 524.979332c0 232.068678 150.366597 428.501342 358.967656 498.035028 26.075132 5.215026 35.636014-11.299224 35.636014-25.205961 0-12.168395-0.869171-53.888607-0.869171-97.347161-146.020741 31.290159-176.441729-62.580318-176.441729-62.580318-23.467619-60.841976-58.234462-76.487055-58.234463-76.487055-47.804409-32.15933 3.476684-32.15933 3.476685-32.15933 53.019436 3.476684 80.83291 53.888607 80.83291 53.888607 46.935238 79.963739 122.553122 57.365291 152.97411 43.458554 4.345855-33.897672 18.252593-57.365291 33.028501-70.402857-116.468925-12.168395-239.022047-57.365291-239.022047-259.012982 0-57.365291 20.860106-104.300529 53.888607-140.805715-5.215026-13.037566-23.467619-66.926173 5.215027-139.067372 0 0 44.327725-13.906737 144.282399 53.888607 41.720212-11.299224 86.917108-17.383422 131.244833-17.383422s89.524621 6.084198 131.244833 17.383422C756.178839 203.386032 800.506564 217.29277 800.506564 217.29277c28.682646 72.1412 10.430053 126.029806 5.215026 139.067372 33.897672 36.505185 53.888607 83.440424 53.888607 140.805715 0 201.64769-122.553122 245.975415-239.891218 259.012982 19.121764 16.514251 35.636014 47.804409 35.636015 97.347161 0 70.402857-0.869171 126.898978-0.869172 144.282399 0 13.906737 9.560882 30.420988 35.636015 25.205961 208.601059-69.533686 358.967656-265.96635 358.967655-498.035028C1049.958663 234.676191 814.413301 0 524.979332 0z\"\n fill=\"#191717\"\n />\n <path\n d=\"M199.040177 753.571326c-0.869171 2.607513-5.215026 3.476684-8.691711 1.738342s-6.084198-5.215026-4.345855-7.82254c0.869171-2.607513 5.215026-3.476684 8.691711-1.738342s5.215026 5.215026 4.345855 7.82254z m-6.953369-4.345856M219.900283 777.038945c-2.607513 2.607513-7.82254 0.869171-10.430053-2.607514-3.476684-3.476684-4.345855-8.691711-1.738342-11.299224 2.607513-2.607513 6.953369-0.869171 10.430053 2.607514 3.476684 4.345855 4.345855 9.560882 1.738342 11.299224z m-5.215026-5.215027M240.760389 807.459932c-3.476684 2.607513-8.691711 0-11.299224-4.345855-3.476684-4.345855-3.476684-10.430053 0-12.168395 3.476684-2.607513 8.691711 0 11.299224 4.345855 3.476684 4.345855 3.476684 9.560882 0 12.168395z m0 0M269.443034 837.011749c-2.607513 3.476684-8.691711 2.607513-13.906737-1.738342-4.345855-4.345855-6.084198-10.430053-2.607513-13.037566 2.607513-3.476684 8.691711-2.607513 13.906737 1.738342 4.345855 3.476684 5.215026 9.560882 2.607513 13.037566z m0 0M308.555733 853.526c-0.869171 4.345855-6.953369 6.084198-13.037566 4.345855-6.084198-1.738342-9.560882-6.953369-8.691711-10.430053 0.869171-4.345855 6.953369-6.084198 13.037566-4.345855 6.084198 1.738342 9.560882 6.084198 8.691711 10.430053z m0 0M351.145116 857.002684c0 4.345855-5.215026 7.82254-11.299224 7.82254-6.084198 0-11.299224-3.476684-11.299224-7.82254s5.215026-7.82254 11.299224-7.82254c6.084198 0 11.299224 3.476684 11.299224 7.82254z m0 0M391.126986 850.049315c0.869171 4.345855-3.476684 8.691711-9.560882 9.560882-6.084198 0.869171-11.299224-1.738342-12.168395-6.084197-0.869171-4.345855 3.476684-8.691711 9.560881-9.560882 6.084198-0.869171 11.299224 1.738342 12.168396 6.084197z m0 0\"\n fill=\"#191717\"\n />\n </svg>\n ),\n issue: (\n <svg className=\"issue\" viewBox=\"0 0 1024 1024\" width=\"23\" height=\"23\">\n <path\n d=\"M1022.976 698.368c0-58.88-24.064-113.664-64.512-155.648-44.544 175.616-223.744 307.2-438.784 310.784 51.712 55.296 131.072 90.624 219.648 90.624 21.504 0 41.984-2.048 61.952-6.144 54.784 75.776 121.856 72.192 121.856 72.192-24.064-14.848-27.136-69.632-26.112-108.032 76.288-44.032 125.952-119.296 125.952-203.776z m0 0\"\n fill=\"#558EFF\"\n ></path>\n <path\n d=\"M458.24 13.824C205.312 13.824 0 191.488 0 410.624c0 137.216 80.384 258.048 202.24 329.216 1.536 61.44-3.584 150.016-41.984 174.592 0 0 108.544 5.632 197.12-116.736 32.256 6.144 66.048 9.728 100.352 9.728H465.92c215.04-3.584 394.24-135.168 438.784-310.784 7.168-27.648 10.752-56.32 10.752-86.016 0.512-219.136-204.288-396.8-457.216-396.8zM256 462.848c-33.792 0-60.928-27.136-60.928-60.928 0-33.792 27.136-60.928 60.928-60.928 33.792 0 60.928 27.136 60.928 60.928 0 33.792-27.136 60.928-60.928 60.928z m202.24 0c-33.792 0-60.928-27.136-60.928-60.928 0-33.792 27.136-60.928 60.928-60.928 33.792 0 60.928 27.136 60.928 60.928 0 33.792-27.136 60.928-60.928 60.928z m202.24 0c-33.792 0-60.928-27.136-60.928-60.928 0-33.792 27.136-60.928 60.928-60.928 33.792 0 60.928 27.136 60.928 60.928 0 33.792-27.136 60.928-60.928 60.928z m0 0\"\n fill=\"#549EFF\"\n ></path>\n </svg>\n ),\n gitee: (\n <svg className=\"gitee\" viewBox=\"0 0 1024 1024\" width=\"200\" height=\"200\">\n <path\n d=\"M512 1024C229.222 1024 0 794.778 0 512S229.222 0 512 0s512 229.222 512 512-229.222 512-512 512z m259.149-568.883h-290.74a25.293 25.293 0 0 0-25.292 25.293l-0.026 63.206c0 13.952 11.315 25.293 25.267 25.293h177.024c13.978 0 25.293 11.315 25.293 25.267v12.646a75.853 75.853 0 0 1-75.853 75.853h-240.23a25.293 25.293 0 0 1-25.267-25.293V417.203a75.853 75.853 0 0 1 75.827-75.853h353.946a25.293 25.293 0 0 0 25.267-25.292l0.077-63.207a25.293 25.293 0 0 0-25.268-25.293H417.152a189.62 189.62 0 0 0-189.62 189.645V771.15c0 13.977 11.316 25.293 25.294 25.293h372.94a170.65 170.65 0 0 0 170.65-170.65V480.384a25.293 25.293 0 0 0-25.293-25.267z\"\n fill=\"#C71D23\"\n ></path>\n </svg>\n ),\n plugin: (\n <svg viewBox=\"0 0 1024 1024\" width=\"24\" height=\"24\">\n <path d=\"M937.6 251.3L538 69.7c-11.5-5.1-24.6-5.1-36.1 0L102.4 251.3c-22.4 9.9-32.5 32.2-22.6 54.6 4.5 10.1 12.5 15.1 22.6 19.6L502 506.1c11.5 5.1 24.6 5.1 36.1 0l399.6-180.6c22.4-9.9 32.5-33.2 22.6-55.6-4.6-10.1-12.6-14.1-22.7-18.6zM497.6 723.4l-398.7-165c-18.4-7.6-27.1-28.7-19.5-47 7.6-18.4 28.7-27.1 47-19.5l398.7 165c18.4 7.6 27.1 28.7 19.5 47-7.6 18.3-28.6 27.1-47 19.5z\" />\n <path d=\"M526.4 723.4l398.7-165c18.4-7.6 27.1-28.7 19.5-47-7.6-18.4-28.7-27.1-47-19.5l-398.7 165c-18.4 7.6-27.1 28.7-19.5 47 7.6 18.3 28.6 27.1 47 19.5z\" />\n <path d=\"M497.6 955.4l-398.7-165c-18.4-7.6-27.1-28.7-19.5-47 7.6-18.4 28.7-27.1 47-19.5l398.7 165c18.4 7.6 27.1 28.7 19.5 47-7.6 18.3-28.6 27.1-47 19.5z\" />\n <path d=\"M526.4 955.4l398.7-165c18.4-7.6 27.1-28.7 19.5-47-7.6-18.4-28.7-27.1-47-19.5l-398.7 165c-18.4 7.6-27.1 28.7-19.5 47 7.6 18.3 28.6 27.1 47 19.5z\" />\n </svg>\n ),\n};\n","import { NavLink } from 'react-router-dom';\nimport { useLocation } from 'react-router-dom';\nimport styles from './index.module.less';\nimport menu from '../../menu.json';\nimport nav from '../icons/nav';\n\nexport default function SiderMenu() {\n const location = useLocation();\n const data = menu.find((item) => new RegExp(`^${item.path || ''}`).test(location.pathname));\n\n if (!data?.children) {\n return null;\n }\n return (\n <div className={styles.wapper}>\n <h2 className={styles.title}>\n {(nav as any)[data.icon]}\n <span>{data.name}</span>\n </h2>\n <div className={styles.menu}>\n {data.children &&\n data.children.map((item, idx) => {\n if (item.divider) {\n return (\n <div key={idx} className={styles.divider}>\n {item.name}\n </div>\n );\n }\n if (/^http(?:|s):\\/\\//.test(item.path || '')) {\n return (\n <a key={idx} href={item.path} target=\"__blank\">\n {item.name}\n <svg viewBox=\"0 0 1024 1024\" width={14}>\n <path d=\"M821.1456 276.8384c-235.9296 25.1392-449.1776 226.7136-490.5472 452.352a38.4 38.4 0 1 1-75.5712-13.824c45.568-248.576 269.312-468.48 526.6944-510.6688l-117.8112-69.1712a38.4 38.4 0 0 1 38.912-66.2528l223.3344 131.1744a38.4 38.4 0 0 1 10.1376 57.6l-170.752 206.6432a38.4 38.4 0 1 1-59.1872-48.9472l114.7904-138.9056z\" />\n <path d=\"M832 620.0832a38.4 38.4 0 0 1 76.8 0v158.208c0 85.9648-61.5936 157.8496-140.8 157.8496H204.8c-79.2064 0-140.8-71.8848-140.8-157.9008V300.3904c0-86.016 61.5936-157.8496 140.8-157.8496h220.2112a38.4 38.4 0 1 1 0 76.8H204.8c-33.8944 0-64 35.072-64 81.0496V778.24c0 45.9776 30.1056 81.1008 64 81.1008h563.2c33.8944 0 64-35.1232 64-81.1008v-158.1568z\" />\n </svg>\n </a>\n );\n }\n return (\n <NavLink key={idx} to={item.path || ''} replace>\n {item.name}\n </NavLink>\n );\n })}\n </div>\n </div>\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"logo\":\"index_logo__kUQOi\",\"top\":\"index_top__DLxV-\",\"nav\":\"index_nav__SdXbb\",\"navTop\":\"index_navTop__08yh1\",\"btn\":\"index_btn__YYGUe\",\"btnTop\":\"index_btnTop__PlNw6\"};","import React from 'react';\n\ntype InitialState = {\n layout: 'top' | 'left' | 'mix';\n};\n\nexport const initialState: InitialState = {\n layout: 'top',\n};\n\nexport const reducer = (state: InitialState, action: InitialState) => {\n return {\n ...state,\n ...action,\n };\n};\n\nexport interface Context {\n state: InitialState;\n dispatch: React.Dispatch<InitialState>;\n}\n\nexport const ThemeContext = React.createContext<Context>({\n state: initialState,\n dispatch: () => null,\n});\n","import React from 'react';\n\nexport default {\n menu: (\n <svg width=\"19\" height=\"19\" viewBox=\"0 0 26 26\">\n <g fill=\"none\" fillRule=\"evenodd\">\n <rect width=\"26\" height=\"26\" fill=\"#9E9E9E\" rx=\"4\" />\n <rect width=\"5\" height=\"20\" x=\"3\" y=\"3\" fill=\"#202224\" rx=\"2.5\" />\n <rect width=\"12\" height=\"20\" x=\"11\" y=\"3\" fill=\"#FFF\" fillOpacity=\".657\" rx=\"2\" />\n </g>\n </svg>\n ),\n menutop: (\n <svg width=\"19\" height=\"19\" viewBox=\"0 0 26 26\">\n <g fill=\"none\" fillRule=\"evenodd\">\n <rect width=\"26\" height=\"26\" fill=\"#9E9E9E\" rx=\"4\" />\n <rect width=\"20\" height=\"5\" x=\"3\" y=\"3\" fill=\"#202224\" rx=\"2.5\" />\n <rect width=\"20\" height=\"12\" x=\"3\" y=\"11\" fill=\"#FFF\" fillOpacity=\".66\" rx=\"2\" />\n </g>\n </svg>\n ),\n china: (\n <svg className=\"flag\" width=\"19\" height=\"19\" viewBox=\"0 0 512 512\">\n <defs>\n <path id=\"a\" fill=\"#ffde00\" d=\"M1-.3L-.7.8 0-1 .6.8-1-.3z\" />\n </defs>\n <path fill=\"#de2910\" d=\"M0 0h512v512H0z\" />\n <use width=\"30\" height=\"20\" transform=\"matrix(76.8 0 0 76.8 128 128)\" xlinkHref=\"#a\" />\n <use width=\"30\" height=\"20\" transform=\"rotate(-121 142.6 -47) scale(25.5827)\" xlinkHref=\"#a\" />\n <use width=\"30\" height=\"20\" transform=\"rotate(-98.1 198 -82) scale(25.6)\" xlinkHref=\"#a\" />\n <use width=\"30\" height=\"20\" transform=\"rotate(-74 272.4 -114) scale(25.6137)\" xlinkHref=\"#a\" />\n <use width=\"30\" height=\"20\" transform=\"matrix(16 -19.968 19.968 16 256 230.4)\" xlinkHref=\"#a\" />\n </svg>\n ),\n};\n","import { Fragment, useContext } from 'react';\nimport { Tooltip } from 'uiw';\nimport { NavLink, Link } from 'react-router-dom';\nimport styles from './index.module.less';\nimport data from '../../menu.json';\nimport { ThemeContext } from '../../contexts';\nimport nav from '../icons/nav';\nimport logo from '../icons/logo';\nimport menu from '../icons/menu';\nimport pkg from 'uiw/package.json';\n\nexport default function Nav() {\n const { state, dispatch } = useContext(ThemeContext);\n return (\n <Fragment>\n <div className={[styles.logo, state.layout === 'left' ? null : styles.top].filter(Boolean).join(' ').trim()}>\n <Link to=\"/\">\n {logo.dark}\n {state.layout === 'top' && (\n <span>\n UIW<sup>{pkg.version}</sup>\n </span>\n )}\n </Link>\n </div>\n <div className={[styles.nav, state.layout === 'left' ? null : styles.navTop].filter(Boolean).join(' ').trim()}>\n {data.map(({ path, name, icon }, idx) => {\n if (Object.keys(nav).includes(icon)) {\n icon = (nav as any)[icon];\n }\n if (/^https?:(?:\\/\\/)?/.test(path)) {\n if (state.layout === 'top') {\n return (\n <a key={idx} target=\"__blank\" href={path} className={styles.outerUrl}>\n {icon} <span>{name}</span>\n </a>\n );\n }\n return (\n <Tooltip\n usePortal={false}\n key={idx}\n placement={state.layout === 'left' ? 'right' : 'bottom'}\n content={<span style={{ whiteSpace: 'nowrap' }}>{name}</span>}\n >\n <a target=\"__blank\" href={path} className={styles.outerUrl}>\n {icon}\n </a>\n </Tooltip>\n );\n }\n let activeStyle: React.CSSProperties = {\n color: '#fff',\n };\n if (state.layout === 'top') {\n return (\n <NavLink\n to={path}\n key={idx}\n // @ts-ignore\n style={({ isActive }) => (isActive ? activeStyle : undefined)}\n >\n {icon} <span>{name}</span>\n </NavLink>\n );\n }\n\n return (\n <Tooltip\n usePortal={false}\n key={idx}\n placement={state.layout === 'left' ? 'right' : 'bottom'}\n content={<span style={{ whiteSpace: 'nowrap' }}>{name}</span>}\n >\n <NavLink\n to={path}\n // @ts-ignore\n style={({ isActive }) => (isActive ? activeStyle : undefined)}\n >\n {icon}\n </NavLink>\n </Tooltip>\n );\n })}\n </div>\n <div className={[styles.btn, state.layout === 'left' ? null : styles.btnTop].filter(Boolean).join(' ').trim()}>\n <Tooltip placement={state.layout === 'left' ? 'right' : 'bottom'} content=\"国内镜像站点\">\n <a href=\"http://uiw.gitee.io\" rel=\"noopener noreferrer\" target=\"_blank\">\n {menu.china}\n </a>\n </Tooltip>\n <button onClick={() => dispatch({ layout: state.layout === 'left' ? 'top' : 'left' })}>\n {state.layout === 'left' ? menu.menu : menu.menutop}\n </button>\n </div>\n </Fragment>\n );\n}\n","import { Fragment, useContext } from 'react';\nimport { Outlet } from 'react-router-dom';\nimport { Layout, Affix } from 'uiw';\nimport VersionSelect from '../components/VersionSelect';\nimport styles from './index.module.less';\nimport version from '../version.json';\nimport SiderMenu from '../components/SiderMenu';\nimport Nav from '../components/Nav';\nimport { ThemeContext } from '../contexts';\n\nconst { Header, Sider, Content } = Layout;\nexport interface ComponentsProps {\n siderMenu?: boolean;\n}\n\nexport default function Components(props: ComponentsProps) {\n const { siderMenu = true } = props;\n const { state } = useContext(ThemeContext);\n return (\n <Layout className={styles.layout}>\n {state.layout === 'top' ? (\n <Fragment>\n <Affix offsetTop={0} style={{ zIndex: 999 }}>\n <Header style={{ display: 'flex', alignItems: 'center' }}>\n <Nav />\n </Header>\n </Affix>\n <Layout className={styles.layoutWrap}>\n <Sider width={siderMenu ? 260 : 0} className={styles.layoutSider}>\n <div style={{ width: siderMenu ? 260 : 0, height: 'calc(100vh - 53px)' }}>\n <SiderMenu />\n </div>\n </Sider>\n <Content style={{ padding: 20 }} className={styles.layoutContent}>\n <Outlet />\n </Content>\n </Layout>\n </Fragment>\n ) : (\n <Fragment>\n <Sider width={siderMenu ? 330 : 64}>\n <Layout className={styles.sider}>\n <Sider className={styles.menuWarpper} width={64}>\n <Nav />\n </Sider>\n <Layout\n style={{\n position: 'fixed',\n width: siderMenu ? 330 : 64,\n zIndex: 1,\n left: 0,\n top: 0,\n bottom: 0,\n overflow: 'auto',\n }}\n >\n <Content className={styles.subMenu} style={{ paddingLeft: 64 }}>\n <SiderMenu />\n </Content>\n </Layout>\n </Layout>\n </Sider>\n <Layout style={{ position: 'relative' }}>\n <Header\n style={{\n height: 'inherit',\n lineHeight: '32px',\n position: 'absolute',\n padding: '5px 10px',\n width: '100%',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'flex-end',\n backgroundColor: 'transparent',\n zIndex: 99,\n }}\n >\n <VersionSelect data={version} />\n </Header>\n <Content style={{ padding: 20 }} className={styles.layoutContent}>\n <Outlet />\n </Content>\n </Layout>\n </Fragment>\n )}\n </Layout>\n );\n}\n","import { lazy, Suspense } from 'react';\nimport { RouteObject } from 'react-router-dom';\nimport NoMatch from './components/NoMatch';\nimport Loading from './components/Loading';\nimport BaseLayout from './layouts/BaseLayout';\n\nconst Loadable = (Component: any) => (props: any) =>\n (\n <Suspense fallback={<Loading />}>\n <Component {...props} />\n </Suspense>\n );\n\nconst Home = Loadable(lazy(() => import('./routes/home')));\nconst Extensions = Loadable(lazy(() => import('./routes/extensions')));\n\nconst GuideQuickStart = Loadable(lazy(() => import('./routes/guide/quick-start')));\nconst GuideImport = Loadable(lazy(() => import('./routes/guide/import')));\nconst GuideCreateReactApp = Loadable(lazy(() => import('./routes/guide/create-react-app')));\nconst GuideKKT = Loadable(lazy(() => import('./routes/guide/kkt')));\nconst GuideDocs = Loadable(lazy(() => import('./routes/guide/docs')));\nconst GuideVscode = Loadable(lazy(() => import('./routes/guide/vscode')));\nconst GuideRecommendation = Loadable(lazy(() => import('./routes/guide/recommendation')));\n\nconst Overview = Loadable(lazy(() => import('./routes/overview')));\nconst Colors = Loadable(lazy(() => import('./routes/components/colors')));\nconst Alert = Loadable(lazy(() => import('./routes/components/alert')));\nconst AutoLink = Loadable(lazy(() => import('./routes/components/auto-link')));\nconst ResetCss = Loadable(lazy(() => import('./routes/components/reset-css')));\nconst Avatar = Loadable(lazy(() => import('./routes/components/avatar')));\nconst Affix = Loadable(lazy(() => import('./routes/components/affix')));\nconst Calendar = Loadable(lazy(() => import('./routes/components/calendar')));\nconst Checkbox = Loadable(lazy(() => import('./routes/components/checkbox')));\nconst CopyToClipboard = Loadable(lazy(() => import('./routes/components/copy-to-clipboard')));\nconst Collapse = Loadable(lazy(() => import('./routes/components/collapse')));\nconst Card = Loadable(lazy(() => import('./routes/components/card')));\nconst Descriptions = Loadable(lazy(() => import('./routes/components/descriptions')));\nconst Loader = Loadable(lazy(() => import('./routes/components/loader')));\nconst Icon = Loadable(lazy(() => import('./routes/components/icon')));\nconst Divider = Loadable(lazy(() => import('./routes/components/divider')));\nconst Drawer = Loadable(lazy(() => import('./routes/components/drawer')));\nconst DatePicker = Loadable(lazy(() => import('./routes/components/date-picker')));\nconst DateInput = Loadable(lazy(() => import('./routes/components/date-input')));\nconst Dropdown = Loadable(lazy(() => import('./routes/components/dropdown')));\nconst Badge = Loadable(lazy(() => import('./routes/components/badge')));\nconst Progress = Loadable(lazy(() => import('./routes/components/progress')));\nconst Pagination = Loadable(lazy(() => import('./routes/components/pagination')));\nconst PinCode = Loadable(lazy(() => import('./routes/components/pin-code')));\nconst Input = Loadable(lazy(() => import('./routes/components/input')));\nconst Button = Loadable(lazy(() => import('./routes/components/button')));\nconst Radio = Loadable(lazy(() => import('./routes/components/radio')));\nconst Select = Loadable(lazy(() => import('./routes/components/select')));\nconst SearchSelect = Loadable(lazy(() => import('./routes/components/search-select')));\nconst Split = Loadable(lazy(() => import('./routes/components/split')));\nconst Switch = Loadable(lazy(() => import('./routes/components/switch')));\nconst Slider = Loadable(lazy(() => import('./routes/components/slider')));\nconst Grid = Loadable(lazy(() => import('./routes/components/grid')));\nconst Form = Loadable(lazy(() => import('./routes/components/form')));\nconst FileInput = Loadable(lazy(() => import('./routes/components/file-input')));\nconst Breadcrumb = Loadable(lazy(() => import('./routes/components/breadcrumb')));\nconst List = Loadable(lazy(() => import('./routes/components/list')));\nconst Layout = Loadable(lazy(() => import('./routes/components/layout')));\nconst Notify = Loadable(lazy(() => import('./routes/components/notify')));\nconst Tree = Loadable(lazy(() => import('./routes/components/tree')));\nconst TreeChecked = Loadable(lazy(() => import('./routes/components/tree-checked')));\nconst Tag = Loadable(lazy(() => import('./routes/components/tag')));\nconst Tabs = Loadable(lazy(() => import('./routes/components/tabs')));\nconst Tooltip = Loadable(lazy(() => import('./routes/components/tooltip')));\nconst Table = Loadable(lazy(() => import('./routes/components/table')));\nconst TimePicker = Loadable(lazy(() => import('./routes/components/time-picker')));\nconst Rate = Loadable(lazy(() => import('./routes/components/rate')));\nconst Overlay = Loadable(lazy(() => import('./routes/components/overlay')));\nconst BackTop = Loadable(lazy(() => import('./routes/components/back-top')));\nconst Portal = Loadable(lazy(() => import('./routes/components/portal')));\nconst OverlayTrigger = Loadable(lazy(() => import('./routes/components/overlay-trigger')));\nconst Popover = Loadable(lazy(() => import('./routes/components/popover')));\nconst Message = Loadable(lazy(() => import('./routes/components/message')));\nconst MonthPicker = Loadable(lazy(() => import('./routes/components/month-picker')));\nconst Textarea = Loadable(lazy(() => import('./routes/components/textarea')));\nconst Modal = Loadable(lazy(() => import('./routes/components/modal')));\nconst Formatter = Loadable(lazy(() => import('./routes/components/formatter')));\nconst Steps = Loadable(lazy(() => import('./routes/components/steps')));\nconst Menu = Loadable(lazy(() => import('./routes/components/menu')));\n\nexport const routes: RouteObject[] = [\n {\n path: '/extensions',\n element: <BaseLayout siderMenu={false} />,\n children: [\n { index: true, element: <Extensions /> },\n { path: '*', element: <NoMatch /> },\n ],\n },\n {\n path: '/guide',\n element: <BaseLayout />,\n children: [\n { index: true, element: <GuideQuickStart /> },\n { path: '/guide/quick-start', element: <GuideQuickStart /> },\n { path: '/guide/import', element: <GuideImport /> },\n { path: '/guide/create-react-app', element: <GuideCreateReactApp /> },\n { path: '/guide/kkt', element: <GuideKKT /> },\n { path: '/guide/vscode', element: <GuideVscode /> },\n { path: '/guide/docs', element: <GuideDocs /> },\n { path: '/guide/recommendation', element: <GuideRecommendation /> },\n { path: '*', element: <NoMatch /> },\n ],\n },\n {\n path: '/components',\n element: <BaseLayout />,\n children: [\n { index: true, element: <Overview /> },\n { path: '/components/overview', element: <Overview /> },\n { path: '/components/colors', element: <Colors /> },\n { path: '/components/reset-css', element: <ResetCss /> },\n { path: '/components/alert', element: <Alert /> },\n { path: '/components/auto-link', element: <AutoLink /> },\n { path: '/components/avatar', element: <Avatar /> },\n { path: '/components/affix', element: <Affix /> },\n { path: '/components/calendar', element: <Calendar /> },\n { path: '/components/checkbox', element: <Checkbox /> },\n { path: '/components/copy-to-clipboard', element: <CopyToClipboard /> },\n { path: '/components/collapse', element: <Collapse /> },\n { path: '/components/card', element: <Card /> },\n { path: '/components/descriptions', element: <Descriptions /> },\n { path: '/components/loader', element: <Loader /> },\n { path: '/components/icon', element: <Icon /> },\n { path: '/components/divider', element: <Divider /> },\n { path: '/components/drawer', element: <Drawer /> },\n { path: '/components/date-picker', element: <DatePicker /> },\n { path: '/components/date-input', element: <DateInput /> },\n { path: '/components/dropdown', element: <Dropdown /> },\n { path: '/components/badge', element: <Badge /> },\n { path: '/components/progress', element: <Progress /> },\n { path: '/components/pagination', element: <Pagination /> },\n { path: '/components/pin-code', element: <PinCode /> },\n { path: '/components/input', element: <Input /> },\n { path: '/components/button', element: <Button /> },\n { path: '/components/radio', element: <Radio /> },\n { path: '/components/select', element: <Select /> },\n { path: '/components/search-select', element: <SearchSelect /> },\n { path: '/components/split', element: <Split /> },\n { path: '/components/switch', element: <Switch /> },\n { path: '/components/slider', element: <Slider /> },\n { path: '/components/grid', element: <Grid /> },\n { path: '/components/form', element: <Form /> },\n { path: '/components/file-input', element: <FileInput /> },\n { path: '/components/breadcrumb', element: <Breadcrumb /> },\n { path: '/components/list', element: <List /> },\n { path: '/components/layout', element: <Layout /> },\n { path: '/components/notify', element: <Notify /> },\n { path: '/components/tree', element: <Tree /> },\n { path: '/components/tree-checked', element: <TreeChecked /> },\n { path: '/components/tag', element: <Tag /> },\n { path: '/components/tabs', element: <Tabs /> },\n { path: '/components/tooltip', element: <Tooltip /> },\n { path: '/components/table', element: <Table /> },\n { path: '/components/time-picker', element: <TimePicker /> },\n { path: '/components/rate', element: <Rate /> },\n { path: '/components/overlay', element: <Overlay /> },\n { path: '/components/back-top', element: <BackTop /> },\n { path: '/components/portal', element: <Portal /> },\n { path: '/components/overlay-trigger', element: <OverlayTrigger /> },\n { path: '/components/popover', element: <Popover /> },\n { path: '/components/message', element: <Message /> },\n { path: '/components/month-picker', element: <MonthPicker /> },\n { path: '/components/textarea', element: <Textarea /> },\n { path: '/components/modal', element: <Modal /> },\n { path: '/components/formatter', element: <Formatter /> },\n { path: '/components/steps', element: <Steps /> },\n { path: '/components/menu', element: <Menu /> },\n { path: '*', element: <NoMatch /> },\n ],\n },\n {\n path: '/',\n element: <Home />,\n },\n];\n","import React, { useReducer } from 'react';\nimport ReactDOM from 'react-dom';\nimport { useRoutes, HashRouter } from 'react-router-dom';\nimport '@uiw/reset.css';\nimport { routes } from './routers';\nimport './styles/index.less';\nimport { ThemeContext, reducer, initialState } from './contexts';\n\nconst App = () => useRoutes(routes);\nexport const Provider = ({ children }: { children: React.ReactNode }) => {\n const [state, dispatch] = useReducer(reducer, initialState);\n return <ThemeContext.Provider value={{ state, dispatch }}>{children}</ThemeContext.Provider>;\n};\n\nReactDOM.render(\n <HashRouter>\n <Provider>\n <App />\n </Provider>\n </HashRouter>,\n document.getElementById('root'),\n);\n","export function noop() {}\n","/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} top `true` or `false`\n * @returns {number} amount of scrolled pixels\n */\nexport function getScroll(target: HTMLElement | Window | null, top?: boolean) {\n if (typeof window === 'undefined') {\n return 0;\n }\n\n const prop = top ? 'pageYOffset' : 'pageXOffset';\n const method = top ? 'scrollTop' : 'scrollLeft';\n const isWindow: boolean = target === window;\n\n let ret = isWindow ? (target as Window)[prop] : (target as HTMLElement)[method];\n if (isWindow && typeof ret !== 'number') {\n ret = document.documentElement[method];\n }\n\n return ret;\n}\n","import { getScroll } from '@uiw/utils';\n\nexport const getTargetRect = (target: HTMLElement | Window | null) => {\n return target !== window\n ? (target as HTMLElement).getBoundingClientRect()\n : ({ top: 0, left: 0, bottom: 0 } as ClientRect);\n};\n\nexport const getOffset = (element: HTMLElement, target: HTMLElement | Window | null) => {\n const elemRect = element.getBoundingClientRect();\n const targetRect = getTargetRect(target);\n const scrollTop = getScroll(target, true);\n const scrollLeft = getScroll(target);\n\n const docElem = window.document.body;\n const clientTop = docElem.clientTop || 0;\n const clientLeft = docElem.clientLeft || 0;\n\n return {\n top: elemRect.top - targetRect.top + scrollTop - clientTop,\n left: elemRect.left - targetRect.left + scrollLeft - clientLeft,\n width: elemRect.width,\n height: elemRect.height,\n };\n};\n\nexport const getDefaultTarget = () => (typeof window !== 'undefined' ? window : null);\n","import React from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport { getDefaultTarget, getOffset } from './utils';\n\nexport interface AffixProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n /**\n * 距离窗口顶部达到指定偏移量后触发\n */\n offsetTop?: number;\n /**\n * 距离窗口底部达到指定偏移量后触发\n */\n offsetBottom?: number;\n target?: () => Window | HTMLElement | null;\n /**\n * 固定状态改变时触发的回调函数\n */\n onChange?: (affixed?: boolean) => void;\n}\n\nexport interface AffixState {\n affixStyle?: React.CSSProperties;\n placeholderStyle?: React.CSSProperties;\n}\n\nexport default class Affix extends React.Component<AffixProps, AffixState> {\n public static defaultProps: AffixProps = {\n prefixCls: 'w-affix',\n onChange: noop,\n };\n public state: AffixState = {\n placeholderStyle: undefined,\n affixStyle: undefined,\n };\n private box: any;\n private target!: Window | HTMLElement | null;\n private readonly events = ['resize', 'scroll', 'touchstart', 'touchmove', 'touchend', 'pageshow', 'load'];\n private eventHandlers: Record<string, any> = {};\n private timeout?: number;\n constructor(props: AffixProps & HTMLDivProps) {\n super(props);\n this.updatePosition = this.updatePosition.bind(this);\n }\n componentDidMount() {\n const target = this.props.target || getDefaultTarget;\n // Wait for parent component ref has its value\n this.timeout = window.setTimeout(() => {\n this.target = target();\n this.setTargetEventListeners();\n });\n }\n componentWillUnmount() {\n this.clearEventListeners();\n clearTimeout(this.timeout);\n }\n updatePosition() {\n let { offsetTop } = this.props;\n const { offsetBottom } = this.props;\n if (!this.box || !this.box.offsetParent) {\n return;\n }\n\n const elemSize = {\n width: this.box.clientWidth,\n height: this.box.clientHeight,\n };\n const offsetMode = { top: true, bottom: false };\n if (typeof offsetTop !== 'number' && typeof offsetBottom !== 'number') {\n offsetMode.top = true;\n offsetTop = 0;\n }\n\n if (typeof offsetBottom === 'number') {\n offsetMode.top = false;\n offsetMode.bottom = true;\n }\n\n const elemOffset = getOffset(this.box, this.target);\n const box = this.box.getBoundingClientRect();\n const bottom = document.documentElement.clientHeight - box.y - elemOffset.height;\n\n if (offsetMode.top && box.y < 0) {\n this.setPlaceholderStyle({ ...elemSize });\n this.setAffixStyle({\n position: 'fixed',\n top: offsetTop || 0,\n left: elemOffset.left,\n width: elemOffset.width,\n });\n } else if (offsetMode.bottom && bottom < 0) {\n this.setPlaceholderStyle({ ...elemSize });\n this.setAffixStyle({\n position: 'fixed',\n bottom: offsetBottom || 0,\n left: elemOffset.left,\n width: elemOffset.width,\n });\n } else {\n this.setPlaceholderStyle();\n this.setAffixStyle();\n }\n }\n setAffixStyle(affixStyle?: React.CSSProperties) {\n const { onChange } = this.props;\n const affixed = !!this.state.affixStyle;\n this.setState({ affixStyle }, () => {\n onChange && onChange(affixed);\n });\n }\n setPlaceholderStyle(placeholderStyle?: React.CSSProperties) {\n this.setState({ placeholderStyle });\n }\n // 设置监听事件\n setTargetEventListeners() {\n this.clearEventListeners();\n this.events.forEach((eventName) => {\n this.eventHandlers[eventName] = this.updatePosition;\n this.target && this.target.addEventListener(eventName, this.updatePosition, false);\n });\n }\n clearEventListeners() {\n this.events.forEach((eventName) => {\n const handler = this.eventHandlers[eventName];\n this.target && this.target.removeEventListener(eventName, handler, false);\n });\n }\n getInstance = (node: HTMLDivElement) => {\n if (node) {\n this.box = node;\n }\n };\n public render() {\n const { prefixCls, className, children, offsetTop, offsetBottom, target, onChange, ...resetProps } = this.props;\n const cls = [className, prefixCls].filter(Boolean).join(' ').trim();\n return (\n <div {...resetProps} ref={this.getInstance} style={{ ...this.state.placeholderStyle, ...this.props.style }}>\n <div className={cls} style={this.state.affixStyle}>\n {children}\n </div>\n </div>\n );\n }\n}\n","import React, { useEffect, useRef } from 'react';\nimport ReactDOM from 'react-dom';\n\nexport const canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nexport interface PortalProps {\n children?: React.ReactNode;\n /**\n * The HTML element that children will be mounted to.\n * @default document.body\n */\n container?: HTMLElement;\n /**\n * Callback invoked when the children of this `Portal` have been added to the DOM.\n * @deprecated v4.9.0+\n */\n onChildrenMount?: (portalElement: HTMLElement) => void;\n /** @deprecated v4.9.0+ */\n visible?: boolean;\n}\n\nexport default function Portal(props: PortalProps) {\n const { container } = props;\n const defaultNode = useRef<HTMLDivElement>();\n const containerRef = useRef<HTMLElement | undefined>(container);\n\n useEffect(() => {\n return () => {\n if (defaultNode.current && containerRef.current) {\n containerRef.current.removeChild(defaultNode.current);\n defaultNode.current = undefined;\n }\n };\n }, []);\n\n if (!canUseDOM) {\n return null;\n }\n if (!containerRef.current) {\n containerRef.current = document.body;\n }\n if (!defaultNode.current) {\n defaultNode.current = document.createElement('div');\n containerRef.current.appendChild(defaultNode.current);\n }\n return ReactDOM.createPortal(props.children, defaultNode.current);\n}\n","/**\n * Overlay 组件\n * ---------------\n * 动画库 react-transition-group 文档\n * 老的文档\n * https://facebook.github.io/react/docs/animation.html\n * 新的文档\n * https://reactcommunity.org/react-transition-group/\n * 动画效果\n * https://daneden.github.io/animate.css/\n */\nimport React, { cloneElement, useEffect, useRef, useState } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { TransitionProps } from 'react-transition-group/Transition';\nimport Portal, { PortalProps } from '@uiw/react-portal';\nimport { IProps, noop } from '@uiw/utils';\n\nimport './style/index.less';\n\nexport interface OverlayProps extends IProps, Omit<TransitionProps, 'timeout'> {\n timeout?: TransitionProps['timeout'];\n isOpen?: boolean;\n usePortal?: boolean;\n maskClosable?: boolean;\n dialogProps?: React.HTMLProps<HTMLElement>;\n backdropProps?: React.HTMLProps<HTMLDivElement>;\n portalProps?: PortalProps;\n hasBackdrop?: boolean;\n unmountOnExit?: boolean;\n transitionName?: string;\n onEnter?: (node: HTMLElement, isAppearing: boolean) => void;\n onOpening?: (node: HTMLElement, isAppearing: boolean) => void;\n onOpened?: (node: HTMLElement, isAppearing: boolean) => void;\n onClosing?: (node: HTMLElement) => void;\n onClosed?: (node: HTMLElement | React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;\n onClose?: (evn: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n}\n\nexport default function Overlay(props: OverlayProps) {\n const {\n className,\n style,\n isOpen: _ = false,\n prefixCls = 'w-overlay',\n usePortal = true,\n maskClosable = true,\n backdropProps = {},\n portalProps = {},\n hasBackdrop = true,\n unmountOnExit = true, // 设置 true 销毁根节点\n timeout = 300,\n transitionName = 'w-overlay',\n // onEnter = noop,\n onOpening = noop,\n onOpened = noop,\n onClosing = noop,\n onClosed = noop,\n onClose = noop,\n children,\n dialogProps = {},\n ...otherProps\n } = props;\n\n const [isOpen, setIsOpen] = useState(props.isOpen || false);\n const [visible, setVisible] = useState(false);\n const container = useRef<HTMLDivElement>(null);\n const overlay = useRef<HTMLDivElement>(null);\n useEffect(() => {\n if (isOpen !== props.isOpen && props.isOpen) {\n setVisible(true);\n }\n if (isOpen !== props.isOpen && !props.isOpen) {\n overlayWillClose();\n setIsOpen(false);\n }\n }, [props.isOpen]);\n\n useEffect(() => {\n if (visible) {\n overlayWillOpen();\n setIsOpen(true);\n }\n }, [visible]);\n\n const decoratedChild =\n typeof children === 'object' ? (\n cloneElement(children, {\n ...dialogProps,\n style: { ...children.props.style, ...dialogProps.style },\n className: [children.props.className, `${prefixCls}-content`].filter(Boolean).join(' ').trim(),\n tabIndex: 0,\n })\n ) : (\n <span {...dialogProps} className={`${prefixCls}-content`}>\n {children}\n </span>\n );\n\n function handleClosed(node: HTMLElement | React.MouseEvent<HTMLButtonElement, MouseEvent>) {\n setVisible(false);\n onClosed && onClosed(node);\n }\n\n function handleBackdropMouseDown(e: React.MouseEvent<HTMLDivElement, MouseEvent>) {\n if (e.target !== container.current && usePortal) {\n return;\n }\n if (maskClosable && hasBackdrop) {\n overlayWillClose();\n setIsOpen(false);\n onClose && onClose(e);\n }\n backdropProps && backdropProps.onMouseDown && backdropProps.onMouseDown(e);\n }\n\n function overlayWillOpen() {\n if (hasBackdrop && usePortal) {\n document.body.classList.add(`${prefixCls}-open`);\n }\n }\n\n function overlayWillClose() {\n if (hasBackdrop && usePortal) {\n document.body.classList.remove(`${prefixCls}-open`);\n }\n // if (unmountOnExit) {\n // setVisible(false)\n // }\n }\n\n const TransitionGroupComp = (\n <CSSTransition\n classNames={transitionName}\n unmountOnExit={unmountOnExit}\n timeout={timeout!}\n in={isOpen}\n onEntering={onOpening}\n onEntered={onOpened}\n onExiting={onClosing}\n onExited={handleClosed}\n {...otherProps}\n >\n {(status) => {\n return (\n <div\n style={style}\n ref={overlay}\n className={[\n prefixCls,\n className,\n !usePortal ? `${prefixCls}-inline` : null,\n isOpen ? `${prefixCls}-enter-done` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {hasBackdrop &&\n cloneElement(<div />, {\n ...backdropProps,\n onMouseDown: handleBackdropMouseDown,\n className: [`${prefixCls}-backdrop`, backdropProps.className].filter(Boolean).join(' ').trim(),\n tabIndex: maskClosable ? 0 : null,\n })}\n {usePortal ? (\n <div ref={container} onMouseDown={handleBackdropMouseDown} className={`${prefixCls}-container`}>\n {cloneElement(decoratedChild, { 'data-status': status })}\n </div>\n ) : (\n cloneElement(decoratedChild, { 'data-status': status })\n )}\n </div>\n );\n }}\n </CSSTransition>\n );\n if (visible && usePortal) {\n return <Portal {...{ ...portalProps }}>{TransitionGroupComp}</Portal>;\n } else {\n return TransitionGroupComp;\n }\n}\n","import React from 'react';\nimport svgPaths from '@uiw/icons/fonts/w-icon.json';\nimport './style/index.less';\n\nexport type IconsName = keyof typeof svgPaths;\ntype TagType = React.ComponentType | keyof JSX.IntrinsicElements;\n\nexport interface IconProps<Tag extends TagType = 'span', E = React.ReactElement> extends React.HTMLAttributes<Tag> {\n style?: React.CSSProperties;\n className?: string;\n prefixCls?: string;\n /**\n * HTML tag to use for the rendered element.\n * @default \"span\"\n */\n tagName?: Tag;\n type?: IconsName | null | E;\n spin?: boolean;\n color?: string;\n verticalAlign?: 'middle' | 'baseline';\n}\n\nexport default function Icon<Tag extends TagType = 'span'>(props: IconProps<Tag>) {\n const {\n className,\n prefixCls = 'w-icon',\n verticalAlign = 'middle',\n tagName: TagName = 'span',\n color,\n type,\n spin = false,\n ...others\n } = props;\n\n let svg = null;\n if (typeof type === 'string') {\n svg = (\n <svg fill={color} viewBox=\"0 0 20 20\">\n {(svgPaths[type] || []).map((d, i) => (\n <path key={i} d={d} fillRule=\"evenodd\" />\n ))}\n </svg>\n );\n } else if (React.isValidElement(type)) {\n svg = React.cloneElement(type, {\n fill: color,\n });\n } else {\n return null;\n }\n others.style = { fill: 'currentColor', ...others.style };\n const propps = {\n ...others,\n className: [\n prefixCls,\n className,\n prefixCls && verticalAlign ? `${prefixCls}-${verticalAlign}` : null,\n spin && prefixCls ? `${prefixCls}-spin` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n };\n\n return React.createElement(TagName, { ...propps } as any, svg);\n}\n","import React from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLButtonProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport type ButtonType = 'primary' | 'success' | 'warning' | 'danger' | 'light' | 'dark' | 'link';\nexport type ButtonSize = 'large' | 'default' | 'small';\n\nexport interface ButtonProps extends IProps, Omit<HTMLButtonProps, 'size'> {\n basic?: boolean;\n disabled?: boolean;\n active?: boolean;\n loading?: boolean;\n block?: boolean;\n icon?: IconProps['type'];\n type?: ButtonType;\n size?: ButtonSize;\n htmlType?: 'button' | 'submit' | 'reset';\n onClick?: (e: React.MouseEvent<HTMLButtonElement> & MouseEvent) => void;\n}\n\nexport default React.forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n const {\n prefixCls = 'w-btn',\n disabled = false,\n active = false,\n loading = false,\n block = false,\n basic = false,\n htmlType = 'button',\n type = 'light',\n size = 'default',\n icon,\n className,\n children,\n ...others\n } = props;\n const cls = [\n className,\n prefixCls,\n size ? `${prefixCls}-size-${size}` : null,\n type ? `${prefixCls}-${type}` : null,\n basic ? `${prefixCls}-basic` : null,\n loading ? `${prefixCls}-loading` : null,\n disabled || loading ? 'disabled' : null,\n active ? 'active' : null,\n block ? 'block' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n return (\n <button {...others} ref={ref} type={htmlType} disabled={disabled || loading} className={cls}>\n {icon && <Icon type={icon} />}\n {children &&\n React.Children.map(children, (child: React.ReactNode) => {\n if (!child) return child;\n if (React.isValidElement(child)) return child;\n return <span>{child}</span>;\n })}\n </button>\n );\n});\n","import React, { useState, useEffect } from 'react';\nimport Overlay, { OverlayProps } from '@uiw/react-overlay';\nimport Button, { ButtonType, ButtonProps } from '@uiw/react-button';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps, noop } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface ModalProps extends IProps, OverlayProps {\n type?: ButtonType;\n cancelText?: string;\n confirmButtonProps?: Omit<ButtonProps, 'ref'>;\n cancelButtonProps?: Omit<ButtonProps, 'ref'>;\n content?: React.ReactNode;\n confirmText?: string;\n title?: string;\n icon?: IconProps['type'];\n useButton?: boolean;\n usePortal?: boolean;\n autoFocus?: boolean;\n isCloseButtonShown?: boolean;\n isOpen?: boolean;\n bodyStyle?: React.CSSProperties;\n maxWidth?: number;\n minWidth?: number;\n width?: number;\n onCancel?: (evn: React.MouseEvent<HTMLButtonElement> & MouseEvent) => void;\n onConfirm?: (evn: React.MouseEvent<HTMLButtonElement> & MouseEvent) => void;\n}\n\nexport default React.forwardRef<OverlayProps, ModalProps>((props, ref) => {\n const {\n prefixCls = 'w-modal',\n className,\n children,\n useButton = true,\n usePortal = true,\n autoFocus = false,\n isOpen: _ = false,\n title,\n cancelText,\n cancelButtonProps,\n confirmButtonProps,\n content,\n confirmText = '确认',\n type = 'light',\n icon,\n maxWidth = 500,\n minWidth = 320,\n width,\n isCloseButtonShown = true,\n onCancel = noop,\n onConfirm = noop,\n bodyStyle,\n ...other\n } = props;\n const [isOpen, setIsOpen] = useState(props.isOpen);\n useEffect(() => {\n if (props.isOpen !== isOpen) {\n setIsOpen(props.isOpen);\n }\n }, [props.isOpen]);\n\n const [loading, setLoading] = useState(false);\n const cls = [prefixCls, className, type ? `${type}` : null].filter(Boolean).join(' ').trim();\n function onClose() {\n setIsOpen(false);\n }\n async function handleCancel(e: React.MouseEvent<HTMLButtonElement, MouseEvent> & MouseEvent) {\n setLoading(true);\n try {\n onCancel && (await onCancel(e));\n } catch (e) {}\n setIsOpen(false);\n setLoading(false);\n }\n async function handleConfirm(e: React.MouseEvent<HTMLButtonElement, MouseEvent> & MouseEvent) {\n setLoading(true);\n try {\n onConfirm && (await onConfirm(e));\n } catch (e) {}\n setIsOpen(false);\n setLoading(false);\n }\n return (\n <Overlay usePortal={usePortal} isOpen={isOpen} {...other} onClose={onClose} className={cls}>\n <div className={`${prefixCls}-container`}>\n <div\n className={[\n `${prefixCls}-inner`,\n title ? `${prefixCls}-shown-title` : null,\n icon ? `${prefixCls}-shown-icon` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n style={{ maxWidth, minWidth, width }}\n >\n {(title || icon) && (\n <div className={`${prefixCls}-header`}>\n {icon && <Icon type={icon} />}\n {title && <h4>{title}</h4>}\n {isCloseButtonShown && <Button basic onClick={(e) => handleCancel(e)} icon=\"close\" type=\"light\" />}\n </div>\n )}\n <div className={`${prefixCls}-body`} style={bodyStyle}>\n {children || content}\n </div>\n {useButton && (\n <div className={`${prefixCls}-footer`}>\n <Button\n autoFocus={autoFocus}\n type={type}\n loading={loading}\n disabled={loading}\n {...confirmButtonProps}\n onClick={(e) => handleConfirm(e)}\n >\n {confirmText}\n </Button>\n {cancelText && (\n <Button {...cancelButtonProps} onClick={(e) => handleCancel(e)}>\n {cancelText}\n </Button>\n )}\n </div>\n )}\n </div>\n </div>\n </Overlay>\n );\n});\n","import React from 'react';\nimport Modal, { ModalProps } from '@uiw/react-modal';\nimport { IProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface AlertProps extends IProps, ModalProps {\n width?: number;\n}\n\nexport default (props: AlertProps = {}) => {\n const { prefixCls = 'w-alert', className, width = 400, ...other } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n return (\n <Modal {...other} width={width} className={cls}>\n {props.children}\n </Modal>\n );\n};\n","import React, { Fragment } from 'react';\n\nconst delimiter =\n /((?:https?:\\/\\/)?(?:(?:[a-z0-9]?(?:[a-z0-9\\-]{1,61}[a-z0-9])?\\.[^\\.|\\s])+[a-z\\.]*[a-z]+|(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3})(?::\\d{1,5})*[a-z0-9.,_\\/~#&=;%+?\\-\\\\(\\\\)]*)/gi;\n\nexport type AutoLinkProps = {\n text?: string;\n} & React.AnchorHTMLAttributes<HTMLAnchorElement>;\n\nexport default (props: AutoLinkProps = {}) => {\n const { text = '', ...other } = props;\n return (\n <Fragment>\n {text.split(delimiter).map((word, idx) => {\n const match = word.match(delimiter);\n if (match && match[0]) {\n const url = match[0];\n return (\n <a {...other} key={idx} href={url.startsWith('http') ? url : `http://${url}`}>\n {url}\n </a>\n );\n }\n return <Fragment key={idx}>{word}</Fragment>;\n })}\n </Fragment>\n );\n};\n","import React from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { HTMLSpanProps, noop } from '@uiw/utils';\nimport './style/index.less';\nimport { useState } from 'react';\nimport { useEffect } from 'react';\n\nexport interface AvatarProps extends HTMLSpanProps {\n style?: React.CSSProperties;\n className?: string;\n prefixCls?: string;\n icon?: IconProps['type'];\n alt?: string;\n src?: string;\n size?: 'large' | 'default' | 'small' | 'mini';\n shape?: 'square' | 'circle';\n onError?: (event: React.SyntheticEvent<HTMLImageElement, Event>) => boolean;\n}\n\nexport default React.forwardRef<HTMLSpanElement, AvatarProps>((props, ref) => {\n const {\n prefixCls = 'w-avatar',\n shape = 'circle',\n size = 'default',\n className,\n src,\n alt,\n icon,\n onError = noop,\n ...resetProps\n } = props;\n let children = props.children;\n const [isImgExist, setIsImgExist] = useState(true);\n const cls = [\n prefixCls,\n className,\n size ? `${prefixCls}-${size}` : null,\n shape ? `${prefixCls}-${shape}` : null,\n src ? `${prefixCls}-image` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n useEffect(() => {\n setIsImgExist(true);\n }, [props.src]);\n\n if (isImgExist && src) {\n children = (\n <img\n src={src}\n alt={alt}\n onError={(evn) => {\n const errorFlag = onError ? onError(evn) : undefined;\n if (errorFlag !== false) {\n setIsImgExist(false);\n }\n }}\n />\n );\n } else if (icon && typeof icon === 'string') {\n children = <Icon type={icon} />;\n } else if (icon && React.isValidElement(icon)) {\n children = icon;\n }\n return (\n <span {...resetProps} className={cls} ref={ref}>\n {children}\n </span>\n );\n});\n","/**\n * 获取当前滚动条所在位置\n */\nexport function getScrollTop() {\n let scrollTop = 0;\n if (document && document.documentElement && document.documentElement.scrollTop) {\n scrollTop = document.documentElement.scrollTop;\n } else if (document.body) {\n scrollTop = document.body.scrollTop;\n }\n return scrollTop;\n}\n\n/**\n * TODO\n * @param {*} position 滚动到何处\n * @param {*} step 步长\n * @param {*} current 滚动条当前位置\n */\nexport function scrollToAnimate(position: number = 0, step: number = 100, current: number = 0) {\n let start = 0;\n const timer = setInterval(() => {\n if (current - start >= position) {\n start += step;\n if (current - start >= position) {\n window.scrollTo(0, current - start);\n } else {\n window.scrollTo(0, position);\n }\n } else {\n clearInterval(timer);\n }\n }, 0);\n}\n/**\n * 获取滚动条位置百分比\n */\nexport function getScrollPercent(offsetTop: number = 0) {\n let percent = 0;\n if (offsetTop < getScrollTop()) {\n percent = Math.round(\n ((getScrollTop() - offsetTop) / (document.body.scrollHeight - offsetTop - window.innerHeight)) * 100,\n );\n }\n return percent > 100 ? 100 : percent;\n}\n","import React, { useState, useEffect } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { getScrollPercent, getScrollTop, scrollToAnimate } from './utils';\nimport './style/index.less';\n\nexport interface BackTopProps extends IProps, HTMLDivProps {\n offsetTop?: number;\n clickable?: boolean;\n content?: JSX.Element | string;\n fixed?: boolean;\n /**\n * 滚动距离多少时显示组件\n */\n showBelow?: number;\n speed?: number;\n}\n\nexport interface IBackTopState {\n percent: number;\n current: number;\n}\n\nexport default React.forwardRef<HTMLDivElement, BackTopProps>((props, ref) => {\n const {\n prefixCls = 'w-back-top',\n className,\n content,\n children,\n offsetTop = 0,\n fixed = true,\n speed = 100,\n showBelow = 1,\n clickable = true,\n ...other\n } = props;\n const topShowBelow = !fixed ? 0 : showBelow || 0;\n const [percent, setPercent] = useState(0);\n const [current, setCurrent] = useState(0);\n const visible = percent >= topShowBelow;\n const cls = [\n prefixCls,\n className,\n !fixed ? 'no-fixed' : null,\n visible ? `${prefixCls}-show` : null,\n !visible ? `${prefixCls}-hide` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n useEffect(() => {\n window && window.addEventListener('scroll', onScroll);\n return function () {\n window && window.removeEventListener('scroll', onScroll);\n };\n });\n function onScroll() {\n setPercent(getScrollPercent(offsetTop));\n setCurrent(getScrollTop());\n }\n function scrollToTop() {\n if (typeof offsetTop === 'number' && typeof speed === 'number' && typeof current === 'number') {\n scrollToAnimate(offsetTop, speed, current);\n }\n }\n return (\n <div onClick={() => clickable && scrollToTop()} className={cls} {...other} ref={ref}>\n {content}\n {typeof children !== 'function' ? children : children({ percent, current, scrollToTop: scrollToTop })}\n </div>\n );\n});\n","import React from 'react';\nimport { IProps, HTMLSpanProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface BadgeProps extends IProps, HTMLSpanProps {\n color?: string;\n dot?: boolean;\n processing?: boolean;\n max?: number;\n count?: number;\n}\n\nexport default React.forwardRef<HTMLSpanElement, BadgeProps>((props, ref) => {\n const {\n prefixCls = 'w-badge',\n className,\n style = {},\n color,\n max = 99,\n dot = false,\n processing = false,\n count,\n children,\n ...other\n } = props;\n const supProps = {\n className: [!dot ? `${prefixCls}-count` : null, dot ? 'dot' : null].filter(Boolean).join(' ').trim(),\n style: {},\n };\n const cls = [\n className,\n prefixCls,\n !children ? 'nowrap' : null,\n !children ? `${prefixCls}-status` : null,\n processing ? `${prefixCls}-processing` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n const warpperProps: HTMLSpanProps = {};\n if (count || count === 0) {\n supProps.style = { backgroundColor: color, ...style };\n } else {\n warpperProps.style = style || {};\n }\n return (\n <span className={cls} {...other} {...warpperProps} ref={ref}>\n {color && <span className={`${prefixCls}-dot`} style={{ backgroundColor: color }} />}\n {children}\n {count !== 0 && !color && <sup {...supProps}>{!dot && count && max && count > max ? `${max}+` : count}</sup>}\n </span>\n );\n});\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\nimport './style/item.less';\n\ntype ElementTag<T = any> = T extends HTMLElement ? React.HTMLAttributes<T> : T;\n\nexport interface BreadcrumbItemProps<T = any> extends IProps, ElementTag {\n tagName?: T extends HTMLElement ? keyof JSX.IntrinsicElements : T;\n separator?: JSX.Element | string;\n active?: boolean;\n 'data-separator'?: JSX.Element | string;\n}\n\ntype RefElement<T = HTMLSpanElement> = T extends HTMLElement ? T : never;\n\nconst BreadcrumbItem = React.forwardRef<RefElement, BreadcrumbItemProps>((props, ref) => {\n const { prefixCls = 'w-breadcrumb', className, tagName: TagName = 'span', active, separator, ...other } = props;\n const isElm = React.isValidElement(separator);\n const cls = [\n `${prefixCls}-item`,\n className,\n active ? 'active' : null,\n !separator ? 'no-separator' : null,\n isElm ? 'no-before' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const otherProps = { className: cls, ...other };\n if (!isElm) {\n otherProps['data-separator'] = separator;\n }\n return React.createElement(\n TagName,\n {\n ...otherProps,\n ref,\n },\n <Fragment>\n {isElm && <span className={`${prefixCls}-separator`}>{separator}</span>}\n {props.children}\n </Fragment>,\n );\n});\n\nexport default BreadcrumbItem;\n","import React from 'react';\nimport { HTMLDivProps } from '@uiw/utils';\nimport Item from './Item';\nimport './style/index.less';\n\nexport interface BreadcrumbProps extends HTMLDivProps {\n style?: React.CSSProperties;\n className?: string;\n prefixCls?: string;\n separator?: JSX.Element | string;\n}\n\nconst Breadcrumb = React.forwardRef<HTMLDivElement, BreadcrumbProps>((props, ref) => {\n const { prefixCls = 'w-breadcrumb', className, separator = '/', ...other } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n return (\n <div {...{ className: cls, ...other }} ref={ref}>\n {React.Children.map(props.children, (element: any) => {\n return React.cloneElement(element, Object.assign({ separator }, element.props, {}));\n })}\n </div>\n );\n});\ntype Breadcrumb = typeof Breadcrumb & {\n Item: typeof Item;\n};\n\n(Breadcrumb as Breadcrumb).Item = Item;\n\nexport default Breadcrumb as Breadcrumb;\n","import Breadcrumb from './Breadcrumb';\n\nexport * from './Item';\nexport * from './Breadcrumb';\n\nexport default Breadcrumb;\n","import React from 'react';\nimport { HTMLDivProps, IProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface ButtonGroupProps extends IProps, HTMLDivProps {\n vertical?: boolean;\n}\n\nexport default React.forwardRef<HTMLDivElement, ButtonGroupProps>((props, ref) => {\n const { prefixCls = 'w-btn-group', vertical = false, children, className, ...resetProps } = props;\n\n const cls = [prefixCls, className, vertical && `${prefixCls}-vertical`].filter(Boolean).join(' ').trim();\n\n return (\n <div className={cls} {...resetProps} ref={ref}>\n {children}\n </div>\n );\n});\n","const canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nfunction fallback(context: HTMLElement, node: HTMLElement) {\n if (node) {\n do {\n if (node === context) return true;\n } while ((node = node.parentNode as HTMLElement));\n }\n\n return false;\n}\n\nfunction isDOM(item: Node) {\n return typeof HTMLElement === 'function'\n ? item instanceof HTMLElement\n : item && typeof item === 'object' && item.nodeType === 1 && typeof item.nodeName === 'string';\n}\n\nconst contains = (() => {\n // HTML DOM and SVG DOM may have different support levels,\n // so we need to check on context instead of a document root element.\n return canUseDOM\n ? function (context: HTMLElement, node: HTMLElement) {\n if (context && context.contains && typeof context.contains === 'function' && isDOM(node)) {\n return context.contains(node);\n }\n if (context && context.compareDocumentPosition && isDOM(node)) {\n return context === node || !!(context.compareDocumentPosition(node) && 16);\n }\n return fallback(context, node);\n }\n : fallback;\n})();\n\nexport default contains;\n","export interface BordersSize extends CSSStyleDeclaration {\n [key: string]: any;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nexport default function getBordersSize(styles: BordersSize, axis: 'x' | 'y'): number {\n const sideA: string = axis === 'x' ? 'Left' : 'Top';\n const sideB: string = sideA === 'Left' ? 'Right' : 'Bottom';\n return parseFloat(styles[`border${sideA}Width`]) + parseFloat(styles[`border${sideB}Width`]);\n}\n","export default typeof window !== 'undefined' && typeof document !== 'undefined';\n","import isBrowser from './isBrowser';\n\ninterface Document {\n documentMode?: any;\n}\n\ninterface Window {\n MSInputMethodContext?: any;\n}\n\nconst isIE11 = isBrowser && !!((window as Window).MSInputMethodContext && (document as Document).documentMode);\nconst isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nexport default function isIE(version: number) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n","import isIE from './isIE';\n\ninterface BodyElement extends HTMLBodyElement {\n [key: string]: any;\n}\n\ninterface IHTMLElement extends HTMLElement {\n [key: string]: any;\n}\n\ninterface ComputedStyle extends CSSStyleDeclaration {\n [key: string]: any;\n}\n\nfunction getSize(axis: 'Height' | 'Width', body: BodyElement, html: IHTMLElement, computedStyle: ComputedStyle) {\n return Math.max(\n body[`offset${axis}`],\n body[`scroll${axis}`],\n html[`client${axis}`],\n html[`offset${axis}`],\n html[`scroll${axis}`],\n isIE(10)\n ? parseInt(html[`offset${axis}`], 10) +\n parseInt(computedStyle[`margin${axis === 'Height' ? 'Top' : 'Left'}`], 10) +\n parseInt(computedStyle[`margin${axis === 'Height' ? 'Bottom' : 'Right'}`], 10)\n : 0,\n );\n}\n\nexport type WindowSize = { height?: number; width?: number };\n\nexport default function getWindowSizes(document: HTMLDocument): WindowSize {\n const body = document.body as HTMLBodyElement;\n const html = document.documentElement as HTMLElement;\n const computedStyle = getComputedStyle(html) as CSSStyleDeclaration;\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle),\n };\n}\n","import { getScroll } from '@uiw/utils';\nimport getStyleComputedProperty from './getStyleComputedProperty';\nimport getBordersSize from './getBordersSize';\nimport getWindowSizes, { WindowSize } from './getWindowSizes';\nimport getClientRect from './getClientRect';\nimport isIE from './isIE';\n\nexport interface IBoundingClientRect {\n left: number;\n right: number;\n top: number;\n bottom: number;\n width: number;\n height: number;\n offsetLeft?: number;\n offsetTop?: number;\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nexport default function getBoundingClientRect(element: HTMLElement) {\n let rect = {} as IBoundingClientRect;\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n const scrollTop = getScroll(element, true);\n const scrollLeft = getScroll(element);\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n // eslint-disable-next-line\n } catch (e) {}\n\n const result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top,\n } as IBoundingClientRect;\n\n // subtract scrollbar size from sizes\n const sizes: WindowSize = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument!) : {};\n const width = sizes.width || element.clientWidth || result.right - result.left;\n const height = sizes.height || element.clientHeight || result.bottom - result.top;\n\n let horizScrollbar = element.offsetWidth - width;\n let vertScrollbar = element.offsetHeight - height;\n\n result.offsetLeft = element.offsetLeft || element.scrollLeft || 0;\n result.offsetTop = element.offsetTop || element.offsetTop || 0;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n const styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result) as IBoundingClientRect;\n}\n","/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nexport default function getClientRect(offsets: ClientRect): ClientRect {\n return {\n ...offsets,\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height,\n };\n}\n","/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nexport default function getStyleComputedProperty(\n element: HTMLElement,\n property?: keyof CSSStyleDeclaration,\n): CSSStyleDeclaration | any {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n const window = element.ownerDocument!.defaultView;\n const css: CSSStyleDeclaration = (window as Window).getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n","export type Sizes = {\n width: number;\n height: number;\n};\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nexport default function getOuterSizes(element: HTMLElement): Sizes {\n let rect = element.getBoundingClientRect();\n // const window = element.ownerDocument.defaultView;\n // const styles = window.getComputedStyle(element);\n // const x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n // const y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n const result: Sizes = {\n width: element.offsetWidth || element.scrollWidth || rect.width || 0,\n height: element.offsetHeight || element.scrollHeight || rect.height || 0,\n };\n return result;\n}\n","import { getScroll } from '@uiw/utils';\nimport getBoundingClientRect, { IBoundingClientRect } from './util/getBoundingClientRect';\nimport getOuterSizes from './util/getOuterSizes';\nimport { OverlayStyl, OverlayTriggerProps, Placement } from './';\n\ntype GetStyleOptions = {\n trigger: HTMLElement | IBoundingClientRect;\n popup: HTMLElement | IBoundingClientRect;\n placement: OverlayStyl['placement'];\n usePortal: OverlayTriggerProps['usePortal'];\n autoAdjustOverflow: OverlayTriggerProps['autoAdjustOverflow'];\n};\n\nexport function getStyle(options: GetStyleOptions) {\n let { trigger: triggerDom, popup: popupDom, placement, usePortal, autoAdjustOverflow } = options || {};\n const sty = {\n left: 0,\n top: 0,\n placement,\n } as OverlayStyl;\n\n if (!triggerDom || !popupDom || !document) {\n return sty;\n }\n\n const winSizeHeight = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n const winSizeWidth = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n\n sty.placement = placement;\n const scrollTop = getScroll((triggerDom as HTMLElement).ownerDocument!.documentElement, true);\n const scrollLeft = getScroll((triggerDom as HTMLElement).ownerDocument!.documentElement);\n const trigger = {\n ...getBoundingClientRect(triggerDom as HTMLElement),\n ...getOuterSizes(triggerDom as HTMLElement),\n };\n const popup = {\n ...getBoundingClientRect(popupDom as HTMLElement),\n ...getOuterSizes(popupDom as HTMLElement),\n };\n\n const bottom = winSizeHeight - trigger.bottom;\n const right = winSizeWidth - trigger.left - trigger.width;\n\n sty.top = trigger.top + scrollTop;\n sty.left = trigger.left;\n\n if (!usePortal) {\n sty.top = trigger.offsetTop as number;\n sty.left = trigger.offsetLeft as number;\n }\n\n if (placement && /^(top)/.test(placement)) {\n sty.top -= popup.height;\n }\n if (placement && /^(right)/.test(placement)) {\n sty.left += trigger.width;\n }\n if (placement && /^(bottom)/.test(placement)) {\n sty.top += trigger.height;\n }\n if (placement && /^(left)/.test(placement)) {\n sty.left -= popup.width;\n }\n switch (sty.placement) {\n case 'bottomLeft':\n case 'topLeft':\n break;\n case 'bottom':\n // eslint-disable-next-line\n case 'top':\n sty.left = sty.left - (popup.width - trigger.width) / 2;\n break;\n case 'bottomRight':\n case 'topRight':\n sty.left = sty.left + scrollLeft + trigger.width - popup.width;\n break;\n case 'rightTop':\n case 'leftTop':\n break;\n case 'right':\n // eslint-disable-next-line\n case 'left':\n sty.top = sty.top - (popup.height - trigger.height) / 2;\n break;\n case 'rightBottom':\n case 'leftBottom':\n sty.top = sty.top - popup.height + trigger.height;\n break;\n default:\n break;\n }\n if (autoAdjustOverflow) {\n if (placement && /^(top)/.test(placement) && trigger.top < popup.height && bottom > popup.height) {\n sty.placement = placement.replace(/^top/, 'bottom') as Placement;\n sty.top = sty.top + popup.height + trigger.height;\n }\n if (placement && /^(bottom)/.test(placement) && bottom < popup.height && trigger.top > popup.height) {\n sty.placement = placement.replace(/^bottom/, 'top') as Placement;\n sty.top = sty.top - popup.height - trigger.height;\n }\n if (placement && /^(right)/.test(placement) && right < popup.width) {\n sty.placement = placement.replace(/^right/, 'left') as Placement;\n sty.left = sty.left - trigger.width - popup.width;\n }\n if (placement && /^(left)/.test(placement) && trigger.left < popup.width) {\n sty.placement = placement.replace(/^left/, 'right') as Placement;\n sty.left = sty.left + trigger.width + popup.width;\n }\n\n if (placement && /^(left|right)/.test(placement) && usePortal) {\n // Top\n if (\n (/(Top)$/.test(placement) && trigger.top < 0) ||\n (/(right|left)$/.test(placement) && trigger.top + trigger.height / 2 < popup.height / 2) ||\n (/(Bottom)$/.test(placement) && trigger.top + trigger.height < popup.height)\n ) {\n sty.top = scrollTop;\n }\n } else {\n // Top\n if (placement && /(Top)$/.test(placement) && trigger.top < 0) {\n sty.top -= trigger.top;\n }\n if (placement && /(Bottom)$/.test(placement) && trigger.bottom < popup.height) {\n // eslint-disable-next-line\n sty.top = sty.top + (popup.height - trigger.bottom);\n }\n if (placement && /(right|left)$/.test(placement) && trigger.bottom - trigger.height / 2 < popup.height / 2) {\n sty.top = sty.top + popup.height / 2 - (trigger.bottom - trigger.height / 2);\n }\n }\n // Bottom Public Part\n if (placement && /^(left|right)/.test(placement)) {\n if (/(Top)$/.test(placement) && bottom + trigger.height < popup.height) {\n sty.top = sty.top - (popup.height - bottom - trigger.height); // eslint-disable-line\n }\n if (/(right|left)$/.test(placement) && bottom + trigger.height / 2 < popup.height / 2) {\n sty.top = sty.top - (popup.height / 2 - bottom - trigger.height / 2); // eslint-disable-line\n }\n if (/(Bottom)$/.test(placement) && bottom < 0) {\n sty.top = sty.top + bottom; // eslint-disable-line\n }\n }\n\n if (placement && /^(top|bottom)/.test(placement) && usePortal) {\n // left\n if (\n (/(Left)$/.test(placement) && trigger.left < 0) ||\n (/(top|bottom)$/.test(placement) && trigger.left + trigger.width / 2 < popup.width / 2) ||\n (/(Right)$/.test(placement) && trigger.left + trigger.width < popup.width)\n ) {\n sty.left = scrollLeft;\n }\n // right\n if (/(top|bottom)$/.test(placement) && right + trigger.width / 2 < popup.width / 2) {\n sty.left = trigger.left + trigger.width + right - popup.width;\n }\n } else if (placement && /(top|bottom)$/.test(placement) && right + trigger.width / 2 < popup.width / 2) {\n sty.left = sty.left + (right + trigger.width / 2 - popup.width / 2); // eslint-disable-line\n }\n if (placement && /^(top|bottom)/.test(placement)) {\n if (/(Left)$/.test(placement) && trigger.width + right < popup.width) {\n sty.left = sty.left - (popup.width - trigger.width - right);\n }\n if (/(Right)$/.test(placement) && right < 0) {\n sty.left = sty.left + right; // eslint-disable-line\n }\n }\n }\n return sty;\n}\n","import React, { cloneElement, useEffect, useRef, useState, useImperativeHandle } from 'react';\nimport { IProps, noop } from '@uiw/utils';\nimport Overlay, { OverlayProps } from '@uiw/react-overlay';\nimport contains from './utils';\nimport { IBoundingClientRect } from './util/getBoundingClientRect';\nimport { getStyle } from './getStyle';\nimport './style/index.less';\n\nexport interface OverlayTriggerProps extends IProps, OverlayProps {\n onVisibleChange?: (isVisbale: boolean) => void;\n onEnter?: (node: HTMLElement, isAppearing: boolean) => void;\n overlay?: React.ReactNode | any;\n trigger?: 'click' | 'hover' | 'focus';\n usePortal?: boolean;\n isOpen?: boolean;\n disabled?: boolean;\n isOutside?: boolean;\n isClickOutside?: boolean;\n autoAdjustOverflow?: boolean;\n placement?: Placement;\n delay?: Delay;\n}\n\nexport interface OverlayTriggerState {\n show: boolean;\n trigger: OverlayTriggerProps['trigger'];\n overlayStyl: OverlayStyl;\n transitionName: OverlayProps['transitionName'];\n}\n\nexport type Delay =\n | number\n | {\n show?: number;\n hide?: number;\n };\n\nexport type Placement =\n | 'top'\n | 'topLeft'\n | 'topRight'\n | 'left'\n | 'leftTop'\n | 'leftBottom'\n | 'right'\n | 'rightTop'\n | 'rightBottom'\n | 'bottom'\n | 'bottomLeft'\n | 'bottomRight';\n\nexport type OverlayStyl = {\n placement: Placement;\n top: number;\n bottom: number;\n left: number;\n right: number;\n zIndex: number;\n};\n\ninterface ITriggerProps {\n onClick?: (e: MouseEvent) => void;\n onFocus?: (e: MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n onMouseOut?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n onMouseEnter?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n onMouseLeave?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n}\n\nconst normalizeDelay = (delay?: Delay) => (delay && typeof delay === 'object' ? delay : { show: delay, hide: delay });\n\nexport type OverlayTriggerRef = {\n hide: () => void;\n show: () => void;\n};\n\nexport default React.forwardRef<OverlayTriggerRef, OverlayTriggerProps>((props, ref) => {\n const {\n className,\n\n prefixCls = 'w-overlay-trigger',\n usePortal = true,\n isOutside = false,\n isClickOutside = true,\n disabled = false,\n isOpen: _ = false,\n trigger = 'hover',\n placement = 'top',\n\n autoAdjustOverflow,\n transitionName,\n\n children,\n overlay,\n onVisibleChange = noop,\n onEnter = noop,\n ...other\n } = props;\n\n const zIndex = useRef<number>(999);\n const triggerRef = useRef<HTMLElement>();\n const popupRef = useRef<HTMLElement>();\n const timeoutRef = useRef<number[]>([]);\n const hoverStateRef = useRef<'show' | 'hide' | null>(null);\n const [isOpen, setIsOpen] = useState(!!props.isOpen);\n const [overlayStyl, setOverlayStyl] = useState<OverlayStyl>({\n placement,\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n zIndex: zIndex.current,\n });\n useImperativeHandle(ref, () => ({\n hide: () => hide(),\n show: () => show(),\n }));\n\n const child: any = React.Children.only(children);\n const overlayProps: OverlayProps = {\n ...other,\n placement,\n isOpen,\n dialogProps: {},\n };\n const triggerProps: ITriggerProps = {};\n\n function getChildProps() {\n if (child && React.isValidElement(child)) {\n return child.props;\n }\n return {};\n }\n\n useEffect(() => {\n if (isClickOutside) {\n document && document.addEventListener('mousedown', handleClickOutside);\n window.addEventListener('resize', handleResize);\n }\n return () => {\n document && isClickOutside && document.removeEventListener('mousedown', handleClickOutside);\n window.removeEventListener('resize', handleResize);\n };\n }, []);\n\n useEffect(() => {\n if (props.isOpen !== isOpen) {\n setIsOpen(!!props.isOpen);\n }\n }, [props.isOpen]);\n\n useEffect(() => {\n const styls = getStyle({\n placement: overlayStyl.placement || placement,\n trigger: triggerRef.current as HTMLElement | IBoundingClientRect,\n popup: popupRef.current as HTMLElement | IBoundingClientRect,\n usePortal,\n autoAdjustOverflow,\n });\n setOverlayStyl({ ...styls, zIndex: zIndex.current });\n onVisibleChange(isOpen);\n }, [isOpen]);\n\n const handleResize = () => {\n zIndex.current -= 1;\n setIsOpen(false);\n onVisibleChange && onVisibleChange(false);\n };\n\n const handleClickOutside = (e: MouseEvent) => {\n const popNode = popupRef.current;\n const childNode = triggerRef.current;\n if (\n popNode &&\n childNode &&\n e.target &&\n !contains(popNode, e.target as HTMLElement) &&\n !contains(childNode, e.target as HTMLElement)\n ) {\n zIndex.current -= 1;\n setIsOpen(false);\n onVisibleChange && onVisibleChange(false);\n }\n };\n\n function clearTimeouts() {\n if (timeoutRef.current.length > 0) {\n for (const timeoutId of timeoutRef.current) {\n window.clearTimeout(timeoutId);\n }\n timeoutRef.current = [];\n }\n }\n function handleShow() {\n clearTimeouts();\n hoverStateRef.current = 'show';\n\n const delay = normalizeDelay(props.delay);\n\n if (!delay.show) {\n show();\n return;\n }\n const handle = window.setTimeout(() => {\n if (hoverStateRef.current === 'show') show();\n }, delay.show);\n timeoutRef.current.push(handle);\n }\n\n function handleHide(isOutside: boolean) {\n clearTimeouts();\n if (!isOutside && props.isOutside) return;\n hoverStateRef.current = 'hide';\n\n const delay = normalizeDelay(props.delay);\n\n if (!delay.hide) {\n hide();\n return;\n }\n\n const handle = window.setTimeout(() => {\n if (hoverStateRef.current === 'hide') hide();\n }, delay.hide);\n\n timeoutRef.current.push(handle);\n }\n\n // Simple implementation of mouseEnter and mouseLeave.\n // React's built version is broken: https://github.com/facebook/react/issues/4251\n // for cases when the trigger is disabled and mouseOut/Over can cause flicker\n // moving from one child element to another.\n function handleMouseOverOut(handler: Function, e: React.MouseEvent, relatedNative: 'fromElement' | 'toElement') {\n const target = e.currentTarget as HTMLElement;\n const related = (e.relatedTarget || (e.nativeEvent as any)[relatedNative]) as HTMLElement;\n let isOutside = true;\n if (\n (popupRef.current && contains(popupRef.current, related)) ||\n (triggerRef.current && contains(triggerRef.current, related))\n ) {\n isOutside = false;\n }\n if ((!related || related !== target) && !contains(target, related)) {\n handler(isOutside, e);\n }\n }\n\n function hide() {\n if (!isOpen) return;\n zIndex.current -= 1;\n setIsOpen(false);\n }\n\n function show() {\n if (isOpen) return;\n zIndex.current += 1;\n setIsOpen(true);\n }\n\n function handleEnter(node: HTMLElement, isAppearing: boolean) {\n onEnter && onEnter(node, isAppearing);\n const styls = getStyle({\n placement: overlayStyl.placement || placement,\n trigger: triggerRef.current as HTMLElement | IBoundingClientRect,\n popup: popupRef.current as HTMLElement | IBoundingClientRect,\n usePortal,\n autoAdjustOverflow,\n });\n setOverlayStyl({ ...styls, zIndex: zIndex.current });\n }\n\n if (trigger === 'click' && !disabled) {\n triggerProps.onClick = (e) => {\n const { onClick } = getChildProps() as any;\n isOpen ? hide() : show();\n if (onClick) onClick(e, !isOpen);\n };\n }\n if (trigger === 'focus' && !disabled) {\n triggerProps.onFocus = () => handleShow();\n }\n\n if (trigger === 'hover' && !disabled) {\n triggerProps.onMouseOver = triggerProps.onMouseEnter = (e) => {\n handleMouseOverOut(handleShow, e, 'fromElement');\n };\n triggerProps.onMouseOut = triggerProps.onMouseLeave = (e) => {\n handleMouseOverOut(handleHide, e, 'toElement');\n };\n if (overlayProps.dialogProps) {\n overlayProps.dialogProps!.onMouseLeave = (e) => {\n handleMouseOverOut(handleHide, e, 'toElement');\n };\n }\n }\n overlayProps.style = { ...overlayProps.style, ...overlayStyl };\n return (\n <React.Fragment>\n {cloneElement(\n child,\n Object.assign({}, child.props, {\n ...triggerProps,\n ref: triggerRef,\n className: [child.props.className, disabled ? `${prefixCls}-disabled` : null]\n .filter(Boolean)\n .join(' ')\n .trim(),\n }),\n )}\n <Overlay\n {...overlayProps}\n style={{ ...overlayProps.style, ...overlayStyl }}\n onEnter={handleEnter}\n className={[prefixCls, className, overlayStyl.placement].filter(Boolean).join(' ').trim()}\n usePortal={usePortal}\n transitionName={transitionName}\n isOpen={isOpen}\n hasBackdrop={false}\n >\n {cloneElement(\n overlay,\n Object.assign({\n ...overlay.props,\n ref: popupRef,\n className: [overlay.props && overlay.props.className, placement].filter(Boolean).join(' ').trim(),\n }),\n )}\n </Overlay>\n </React.Fragment>\n );\n});\n","import React from 'react';\nimport OverlayTrigger, { OverlayTriggerProps } from '@uiw/react-overlay-trigger';\nimport './style/index.less';\n\nexport interface PopoverProps extends OverlayTriggerProps {\n content?: React.ReactNode;\n visibleArrow?: boolean;\n}\n\nexport default class Popover extends React.Component<PopoverProps> {\n public static defaultProps: PopoverProps = {\n prefixCls: 'w-popover',\n placement: 'top',\n usePortal: true,\n isOpen: false,\n visibleArrow: true,\n };\n renderArrow = () => {\n const { prefixCls } = this.props;\n return (\n <div className={`${prefixCls}-arrow`}>\n <svg viewBox=\"0 0 30 30\">\n <path\n fillOpacity=\"0.2\"\n d=\"M8.11 6.302c1.015-.936 1.887-2.922 1.887-4.297v26c0-1.378-.868-3.357-1.888-4.297L.925 17.09c-1.237-1.14-1.233-3.034 0-4.17L8.11 6.302z\"\n />\n <path\n fill=\"#fff\"\n d=\"M8.787 7.036c1.22-1.125 2.21-3.376 2.21-5.03V0v30-2.005c0-1.654-.983-3.9-2.21-5.03l-7.183-6.616c-.81-.746-.802-1.96 0-2.7l7.183-6.614z\"\n />\n </svg>\n </div>\n );\n };\n render() {\n const { prefixCls, className, content, visibleArrow, ...other } = this.props;\n const cls = [prefixCls, className, !visibleArrow ? 'no-arrow' : null].filter(Boolean).join(' ').trim();\n return (\n <OverlayTrigger\n {...other}\n overlay={\n <div className={cls}>\n {visibleArrow && this.renderArrow()}\n <div className={`${prefixCls}-inner`}>{this.props.content}</div>\n </div>\n }\n >\n {typeof this.props.children === 'object' ? this.props.children : <span>{this.props.children}</span>}\n </OverlayTrigger>\n );\n }\n}\n","import React, { useEffect, useImperativeHandle } from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLInputProps } from '@uiw/utils';\nimport './style/input.less';\n\nexport interface InputProps extends IProps, Omit<HTMLInputProps, 'size'> {\n preIcon?: IconProps['type'];\n addonAfter?: React.ReactNode;\n size?: 'large' | 'default' | 'small';\n}\n\nexport default React.forwardRef<HTMLInputElement, InputProps>((props, ref) => {\n const {\n prefixCls = 'w-input',\n className,\n style,\n size = 'default',\n type = 'text',\n preIcon = null,\n addonAfter,\n ...otherProps\n } = props;\n const inputRef = React.useRef<HTMLInputElement>(null);\n const addonRef = React.useRef<HTMLSpanElement>(null);\n useImperativeHandle<HTMLInputElement | null, HTMLInputElement | null>(ref, () => inputRef.current);\n const cls = [\n prefixCls,\n className,\n size ? `${prefixCls}-${size}` : null,\n addonAfter ? `${prefixCls}-addon` : null,\n props.disabled ? 'disabled' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n useEffect(() => {\n computedInputPadding();\n });\n\n function computedInputPadding() {\n if (addonRef.current && inputRef.current) {\n const input = window && window.getComputedStyle(addonRef.current, null);\n inputRef.current.style.paddingRight = `${\n addonRef.current.clientWidth + parseInt(input.right as string, 10) * 2\n }px`;\n }\n }\n return (\n <div className={cls} style={style}>\n <Icon type={preIcon} />\n <input ref={inputRef} type={type} autoComplete=\"off\" {...otherProps} className={`${prefixCls}-inner`} />\n {addonAfter && (\n <span className={`${prefixCls}-addon-after`} ref={addonRef}>\n {addonAfter}\n </span>\n )}\n </div>\n );\n});\n","import React, { useMemo, useRef } from 'react';\nimport { IProps, HTMLDivProps, HTMLLiProps } from '@uiw/utils';\nimport './style/time-picker.less';\n\nexport interface TimePickerPanelProps extends IProps, HTMLDivProps {\n onSelected?: (\n type: TimePickerPanelProps['type'],\n num: number,\n disableds: number[],\n date: TimePickerPanelProps['date'],\n ) => void;\n count?: number;\n hideDisabled?: boolean;\n disabledHours?: (\n num: number,\n type: TimePickerPanelProps['type'],\n date: TimePickerPanelProps['date'],\n ) => boolean | undefined;\n disabledMinutes?: (\n num: number,\n type: TimePickerPanelProps['type'],\n date: TimePickerPanelProps['date'],\n ) => boolean | undefined;\n disabledSeconds?: (\n num: number,\n type: TimePickerPanelProps['type'],\n date: TimePickerPanelProps['date'],\n ) => boolean | undefined;\n type?: 'Hours' | 'Minutes' | 'Seconds';\n date?: Date;\n}\n\nexport default function TimePickerPanel(props: TimePickerPanelProps) {\n const {\n prefixCls = 'w-timepicker',\n className,\n count = 24,\n date,\n type = 'Hours',\n disabledHours,\n disabledMinutes,\n disabledSeconds,\n hideDisabled,\n onSelected,\n ...other\n } = props;\n const disableds = useRef<number[]>([]);\n function getMaybeNumber() {\n if (date && type) {\n return new Date(date)[`get${type}` as 'getHours' | 'getMinutes' | 'getSeconds']();\n }\n return 0;\n }\n function handleClick(num: number, e: React.MouseEvent<HTMLLIElement>) {\n if (!date) return;\n const currentDate = new Date(date);\n currentDate[`set${type}` as 'setHours' | 'setMinutes' | 'setSeconds'](num);\n onSelected && onSelected(type, num, disableds.current, currentDate);\n }\n function getDisabledItem(num: number) {\n const disabled = props[`disabled${type}` as 'disabledHours' | 'disabledMinutes' | 'disabledSeconds'];\n if (disabled) {\n return disabled(num, type, new Date(date!));\n }\n return false;\n }\n function getItemInstance(tag: HTMLLIElement) {\n if (tag && tag.parentNode && tag.dataset['index']) {\n const offsetTop = Number(tag.dataset['index']) * tag.clientHeight;\n if (tag.parentNode.parentNode) {\n (tag.parentNode.parentNode as HTMLDivElement).scrollTop = offsetTop;\n }\n }\n }\n const data = useMemo(() => {\n return [...Array(count)]\n .map((_, idx) => {\n const disabled = getDisabledItem(idx);\n if (disabled) disableds.current.push(idx);\n return {\n count: idx,\n disabled: getDisabledItem(idx),\n };\n })\n .filter((item) => (hideDisabled && item.disabled ? false : true));\n }, [hideDisabled]);\n\n return (\n <div className={`${prefixCls}-spinner`} {...other}>\n <ul>\n {data.map((item, idx) => {\n const liProps = {} as HTMLLiProps;\n if (!item.disabled) {\n liProps.onClick = (e) => handleClick(item.count, e);\n }\n const currentCount = getMaybeNumber();\n return (\n <li\n key={idx}\n data-index={currentCount === item.count ? idx : undefined}\n ref={(tag) => tag && getItemInstance(tag)}\n {...liProps}\n className={[\n item.disabled ? 'disabled' : null,\n currentCount === item.count ? 'selected' : null,\n hideDisabled && item.disabled ? 'hide' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {item.count < 10 ? `0${item.count}` : item.count}\n </li>\n );\n })}\n </ul>\n </div>\n );\n}\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\nimport TimePanel, { TimePickerPanelProps } from './Panel';\nimport './style/time-picker.less';\n\nexport interface TimePickerTimeProps extends IProps, TimePickerPanelProps {\n precision?: Precision;\n}\n\nexport type Precision = 'hour' | 'minute' | 'second';\n\nexport function TimePickerTime(props: TimePickerTimeProps) {\n const { prefixCls = 'w-timepicker', className, precision = 'second', ...other } = props;\n return (\n <div className={[prefixCls, className].filter(Boolean).join(' ').trim()}>\n {/^(second|minute|hour)$/.test(precision as Precision) && <TimePanel type=\"Hours\" count={24} {...other} />}\n {/^(second|minute)$/.test(precision as Precision) && <TimePanel type=\"Minutes\" count={60} {...other} />}\n {/^(second)$/.test(precision as Precision) && <TimePanel type=\"Seconds\" count={60} {...other} />}\n </div>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport Popover, { PopoverProps } from '@uiw/react-popover';\nimport Input, { InputProps } from '@uiw/react-input';\nimport Button from '@uiw/react-button';\nimport { IProps } from '@uiw/utils';\nimport formatter from '@uiw/formatter';\nimport { TimePickerTime, TimePickerTimeProps } from './Time';\nimport './style/index.less';\n\nexport * from './Panel';\nexport * from './Time';\n\nexport interface TimePickerProps extends IProps, Omit<InputProps, 'onChange' | 'value'> {\n value?: Date;\n format?: string;\n popoverProps?: PopoverProps;\n disabledHours?: TimePickerTimeProps['disabledHours'];\n precision?: TimePickerTimeProps['precision'];\n disabledMinutes?: TimePickerTimeProps['disabledMinutes'];\n disabledSeconds?: TimePickerTimeProps['disabledSeconds'];\n hideDisabled?: TimePickerTimeProps['hideDisabled'];\n allowClear?: boolean;\n disabled?: boolean;\n onChange?: (\n dataStr?: string,\n date?: Date | '',\n type?: TimePickerTimeProps['type'],\n num?: number,\n disableds?: number[],\n ) => void;\n}\n\nexport default function TimePicker(props: TimePickerProps) {\n const {\n prefixCls = 'w-timepicker',\n className,\n disabled,\n value,\n format = 'HH:mm:ss',\n popoverProps,\n allowClear = true,\n onChange,\n disabledHours,\n disabledMinutes,\n disabledSeconds,\n hideDisabled,\n precision,\n ...inputProps\n } = props;\n const [date, setDate] = useState(props.value);\n useEffect(() => setDate(props.value), [props.value]);\n const timeProps = {\n disabledHours,\n disabledMinutes,\n disabledSeconds,\n hideDisabled,\n precision,\n };\n const inputValue = date ? formatter(format, date) : '';\n const datePickerTime = date || new Date();\n const _props: InputProps = { ...inputProps, value: inputValue };\n if (allowClear && inputValue !== '' && !!inputValue) {\n _props.addonAfter = (\n <Button\n className={`${prefixCls}-close-btn`}\n icon=\"close\"\n disabled={props.disabled}\n onClick={() => {\n setDate(undefined);\n onChange && onChange();\n }}\n size={props.size}\n basic\n type=\"light\"\n />\n );\n }\n return (\n <Popover\n trigger=\"focus\"\n placement=\"bottomLeft\"\n autoAdjustOverflow\n visibleArrow={false}\n {...popoverProps}\n content={\n <TimePickerTime\n className={`${prefixCls}-popover`}\n {...timeProps}\n date={datePickerTime}\n onSelected={(type, num, disableds, currentDate) => {\n setDate(new Date(currentDate!));\n const dataStr = currentDate ? formatter(format, currentDate) : '';\n onChange && onChange(dataStr, currentDate, type, num, disableds);\n }}\n />\n }\n >\n <Input\n placeholder=\"请选择时间\"\n readOnly\n disabled={disabled}\n {..._props}\n className={[`${prefixCls}-input`, className].filter(Boolean).join(' ').trim()}\n />\n </Popover>\n );\n}\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/day.less';\n\nfunction isValidDate(date: Date) {\n return date instanceof Date && !isNaN(date.getTime());\n}\n\nexport interface DatePickerDayDateSource {\n day?: number;\n month?: number;\n year?: number;\n}\n\nfunction classnames(obj: Record<string, boolean>) {\n return Object.keys(obj || {})\n .map((keyName) => (obj[keyName] ? keyName : null))\n .filter(Boolean)\n .join(' ')\n .trim();\n}\n\nexport interface DatePickerDayProps extends IProps, HTMLDivProps {\n weekday?: string[];\n weekTitle?: string[];\n panelDate?: Date;\n date?: Date;\n today?: Date;\n prefixCls?: string;\n onSelectDay?: (selectedDate?: Date, dateSource?: DatePickerDayDateSource) => void;\n renderDay?: (day: number, props: DatePickerDayRenderDay & DatePickerDayRenderDayProps) => React.ReactNode;\n disabledDate?: (cellDate: Date, props: DatePickerDayRenderDay & DatePickerDayRenderDayProps) => boolean;\n}\n\nexport interface PickerDayState {\n selected?: Date;\n panelDate?: Date;\n}\n\nexport type DatePickerDayRenderDay = {\n end: boolean;\n prev: boolean;\n today: boolean;\n selected: boolean;\n next: boolean;\n disabled: boolean;\n date?: Date;\n};\n\nexport type DatePickerDayRenderDayProps = {\n key?: number;\n date?: Date;\n onClick?: (cellDate: Date, event: React.MouseEvent<HTMLDivProps>) => void;\n};\n\nexport type DayRectProps = {\n col: number;\n row: number;\n index: number;\n date?: DatePickerDayProps['date'];\n today?: DatePickerDayProps['today'];\n disabledDate?: DatePickerDayProps['disabledDate'];\n renderDay?: DatePickerDayProps['renderDay'];\n panelDate?: DatePickerDayProps['panelDate'];\n onSelectDay?: DatePickerDayProps['onSelectDay'];\n};\n\nexport function DayRect(props: DayRectProps) {\n const {\n date: selectedDate,\n row,\n col,\n index,\n today,\n panelDate,\n disabledDate,\n renderDay,\n onSelectDay,\n ...other\n } = props;\n const cls: Omit<DatePickerDayRenderDay, 'date'> = {\n end: col === 0 || col === 6,\n prev: false,\n today: false,\n selected: false,\n next: false,\n disabled: false,\n };\n let date = panelDate;\n if (!date || !isValidDate(date)) date = new Date();\n const year = date.getFullYear();\n const month = date.getMonth();\n const week = useMemo(() => new Date(new Date(date!).setDate(1)).getDay(), [date.toDateString()]);\n const lastDay = useMemo(() => new Date(year, month === 0 ? 12 : month + 1, 0).getDate(), [date.toDateString()]);\n let day = index;\n if (date) {\n day = day - week + 1;\n if (day < 1) {\n cls.prev = true;\n }\n if (day > lastDay) {\n cls.next = true;\n }\n }\n let cellDate = useMemo(() => new Date(new Date(date!).setDate(day)), [day]);\n if (today && today.toDateString() === cellDate.toDateString()) {\n cls.today = true;\n }\n if (selectedDate && selectedDate.toDateString() === cellDate.toDateString()) {\n cls.selected = true;\n }\n const divProps: React.HTMLAttributes<HTMLDivElement> = {\n onClick: () => {\n const cellMonth = cellDate.getMonth();\n onSelectDay &&\n onSelectDay!(cellDate, {\n year: cellDate.getFullYear(),\n month: cellMonth === 0 ? 12 : cellMonth + 1,\n day: cellDate.getDate(),\n });\n },\n };\n if (disabledDate && disabledDate(cellDate, { ...props, ...cls })) {\n cls.disabled = true;\n delete divProps.onClick;\n }\n return (\n <div className={classnames(cls)} {...other} {...divProps}>\n {renderDay ? (\n renderDay(cellDate.getDate(), { ...props, ...cls, date: cellDate })\n ) : (\n <div>{cellDate.getDate()}</div>\n )}\n </div>\n );\n}\n\nconst WEEKTITLE = ['星期天', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];\nconst WEEKDAY = ['日', '一', '二', '三', '四', '五', '六'];\n\nexport function DatePickerDay(props: DatePickerDayProps) {\n const {\n prefixCls = 'w-datepicker',\n className,\n weekday = WEEKDAY,\n weekTitle = WEEKTITLE,\n date,\n today,\n panelDate,\n disabledDate,\n renderDay,\n onSelectDay,\n ...other\n } = props;\n\n const weekdayLabel = useMemo(\n () => (\n <div className={`${prefixCls}-weekday`}>\n {(weekday || []).map((week, idx) => (\n <div key={idx} className={classnames({ end: idx === 0 || idx === 6 })} title={weekTitle && weekTitle[idx]}>\n {week}\n </div>\n ))}\n </div>\n ),\n [prefixCls, weekday, weekTitle],\n );\n\n return (\n <div {...other} className={[prefixCls ? `${prefixCls}-body` : null, className].filter(Boolean).join(' ').trim()}>\n {weekdayLabel}\n <div className={[prefixCls ? `${prefixCls}-day-body` : null].filter(Boolean).join(' ').trim()}>\n {[...Array(6)].map((_, idx) => (\n <div key={idx} className={`${prefixCls}-week`}>\n {[...Array(7)].map((_, col) => (\n <DayRect\n date={date}\n today={today}\n disabledDate={disabledDate}\n renderDay={renderDay}\n panelDate={panelDate}\n key={col}\n col={col}\n row={idx}\n onSelectDay={(curDate, data) => {\n onSelectDay && onSelectDay(curDate, data);\n }}\n index={idx * 7 + col}\n />\n ))}\n </div>\n ))}\n </div>\n </div>\n );\n}\n","import React from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport './style/year-month.less';\n\nexport interface DatePickerMonthProps extends IProps, HTMLDivProps {\n panelDate?: Date;\n onSelected?: (month: number, paging?: boolean) => void;\n monthLabel?: React.ReactNode[];\n}\n\nexport function DatePickerMonth(props: DatePickerMonthProps) {\n const {\n prefixCls = 'w-datepicker',\n className,\n panelDate = new Date(),\n monthLabel,\n onSelected = noop,\n ...other\n } = props;\n return (\n <div className={[prefixCls ? `${prefixCls}-month` : null, className].filter(Boolean).join(' ').trim()} {...other}>\n {[...Array(12)].map((_, idx) => {\n const selectedMonth = panelDate!.getMonth();\n return (\n <div key={idx} className={[selectedMonth === idx ? 'selected' : null].filter(Boolean).join(' ').trim()}>\n <span onClick={() => onSelected(idx, false)}>{(monthLabel && monthLabel[idx]) || idx}</span>\n </div>\n );\n })}\n </div>\n );\n}\n","import React, { useState } from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport './style/year-month.less';\n\nexport interface DatePickerYearProps extends IProps, HTMLDivProps {\n panelDate?: Date;\n panelNum?: number[];\n onSelected?: (year: number, paging?: boolean) => void;\n}\n\nexport function DatePickerYear(props: DatePickerYearProps) {\n const {\n prefixCls = 'w-datepicker',\n panelNum = [-7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],\n className,\n panelDate,\n onSelected = noop,\n ...other\n } = props;\n const [activeYear, setActiveYear] = useState(props.panelDate);\n function handleSelected(year: number, idx: number) {\n if (idx === 0 || idx === panelNum!.length - 1) {\n const date = new Date(activeYear!);\n date.setFullYear(year);\n setActiveYear(date);\n onSelected!(year, true);\n } else {\n onSelected!(year);\n }\n }\n return (\n <div className={[prefixCls ? `${prefixCls}-year` : null, className].filter(Boolean).join(' ').trim()} {...other}>\n {panelNum &&\n panelNum.map((_, idx) => {\n const selectedYear = activeYear!.getFullYear();\n const year = selectedYear + panelNum[idx];\n return (\n <div\n key={idx}\n className={[\n selectedYear === year ? 'selected' : null,\n idx === 0 || idx === panelNum.length - 1 ? 'paging' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n <span onClick={() => handleSelected(year, idx)}>{year}</span>\n </div>\n );\n })}\n </div>\n );\n}\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport './style/caption.less';\n\nfunction classnames(...arg: (string | null | undefined)[]) {\n return [...arg].filter(Boolean).join(' ').trim();\n}\n\nexport type DatePickerCaptionType = 'prev' | 'month' | 'year' | 'today' | 'next';\n\nexport interface DatePickerCaptionProps extends IProps, HTMLDivProps {\n panelDate?: Date;\n monthLabel?: React.ReactNode[];\n todayButton?: string;\n onSelected?: (captionType: DatePickerCaptionType) => void;\n}\n\nexport function DatePickerCaption(props: DatePickerCaptionProps) {\n const {\n prefixCls = 'w-datepicker',\n className,\n panelDate = new Date(),\n monthLabel,\n onSelected = noop,\n todayButton,\n ...other\n } = props;\n\n const renderMonth = useMemo(() => {\n const month = panelDate.getMonth();\n return (monthLabel && monthLabel[month]) || month + 1;\n }, [panelDate.toDateString(), monthLabel]);\n return (\n <div className={classnames(prefixCls ? `${prefixCls}-caption` : null, className)} {...other}>\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'prev')}\n onClick={() => onSelected('prev')}\n />\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'month')}\n onClick={() => onSelected('month')}\n >\n {renderMonth}\n </div>\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'year')}\n onClick={() => onSelected('year')}\n >\n {panelDate!.getFullYear()}\n </div>\n {todayButton && (\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-today` : null)}\n onClick={() => onSelected('today')}\n title={todayButton}\n />\n )}\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'next')}\n onClick={() => onSelected('next')}\n />\n </div>\n );\n}\n","import React, { useEffect, useMemo, useState } from 'react';\nimport formatter from '@uiw/formatter';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport { TimePickerTime, TimePickerPanelProps } from '@uiw/react-time-picker';\nimport { DatePickerDay, DatePickerDayProps, DatePickerDayDateSource } from './DatePickerDay';\nimport { DatePickerMonth } from './DatePickerMonth';\nimport { DatePickerYear } from './DatePickerYear';\nimport { DatePickerCaption, DatePickerCaptionType } from './DatePickerCaption';\nimport './style/index.less';\n\nexport * from './DatePickerDay';\nexport * from './DatePickerMonth';\nexport * from './DatePickerYear';\nexport * from './DatePickerCaption';\n\nconst MONTH_LABEL = [\n '一月',\n '二月',\n '三月',\n '四月',\n '五月',\n '六月',\n '七月',\n '八月',\n '九月',\n '十月',\n '十一月',\n '十二月',\n];\n\nexport interface DatePickerShowTimeProps extends TimePickerPanelProps {\n format?: string;\n}\nexport interface DatePickerProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n onChange?: (selectedDate?: Date, dateSource?: DatePickerDayDateSource) => void;\n renderDay?: DatePickerDayProps['renderDay'];\n disabledDate?: DatePickerDayProps['disabledDate'];\n showTime?: DatePickerShowTimeProps | boolean;\n monthLabel?: React.ReactNode[];\n weekday?: string[];\n weekTitle?: string[];\n date?: Date;\n panelDate?: Date;\n today?: Date;\n todayButton?: string;\n onPanelChange?: (date?: Date, mode?: 'next' | 'prev') => void;\n}\nexport interface DatePickerState {\n panelDate?: Date;\n date?: Date;\n type?: 'day' | 'time' | DatePickerCaptionType;\n}\n\nexport default function DatePicker(props: DatePickerProps) {\n const {\n prefixCls = 'w-datepicker',\n className,\n weekday,\n weekTitle,\n monthLabel = MONTH_LABEL,\n date,\n today = new Date(),\n todayButton,\n panelDate = new Date(),\n disabledDate,\n renderDay,\n onChange = noop,\n onPanelChange = noop,\n showTime,\n ...other\n } = props;\n const [type, setType] = useState<DatePickerState['type']>('day');\n const [selectDate, setSelectDate] = useState(date);\n const [selectPanelDate, setSelectPanelDate] = useState(panelDate);\n\n useEffect(() => {\n if (date) {\n setSelectDate(date);\n setSelectPanelDate(date);\n }\n }, [date]);\n\n const format = useMemo(\n () =>\n showTime && (showTime as DatePickerShowTimeProps).format\n ? (showTime as DatePickerShowTimeProps).format\n : 'HH:mm:ss',\n [showTime],\n );\n function handleSelected(curType: DatePickerState['type']) {\n if (curType && /^(year|month|time)$/.test(curType)) {\n if (type === 'time') {\n curType = 'day';\n }\n setType(curType);\n } else {\n let currentDate = new Date(selectDate || selectPanelDate);\n let month = currentDate.getMonth();\n if (curType === 'prev') {\n month -= 1;\n }\n if (curType === 'next') {\n month += 1;\n }\n currentDate.setMonth(month);\n if (curType === 'prev' || curType === 'next') {\n onPanelChange && onPanelChange(new Date(currentDate), curType);\n }\n setSelectPanelDate(curType === 'today' ? today : currentDate);\n setSelectDate(curType === 'today' ? today : currentDate);\n\n setType('day');\n }\n }\n\n function onSelectedTime(type: TimePickerPanelProps['type'], num: number) {\n (selectPanelDate || new Date())[`set${type}` as 'setHours'](num);\n setSelectPanelDate(new Date(selectPanelDate));\n onChange && onChange(new Date(selectPanelDate));\n }\n\n function onSelectedDate(type: 'setMonth' | 'setFullYear', month: number, paging?: boolean) {\n (selectPanelDate || new Date())[type](month);\n setSelectPanelDate(new Date(selectPanelDate));\n setType('day');\n onChange && onChange(new Date(selectPanelDate));\n }\n return (\n <div className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...other}>\n <DatePickerCaption\n todayButton={todayButton}\n panelDate={selectPanelDate}\n monthLabel={monthLabel}\n onSelected={handleSelected}\n />\n {type === 'day' && (\n <DatePickerDay\n prefixCls={prefixCls}\n disabledDate={disabledDate}\n onSelectDay={(selectedDate, dateSource) => {\n setSelectPanelDate(selectedDate!);\n onChange(selectedDate, dateSource);\n }}\n renderDay={renderDay}\n date={selectDate}\n today={today || new Date()}\n panelDate={selectPanelDate}\n weekday={weekday}\n weekTitle={weekTitle}\n />\n )}\n {type === 'month' && (\n <DatePickerMonth\n panelDate={selectPanelDate}\n monthLabel={monthLabel}\n prefixCls={prefixCls}\n onSelected={(num) => onSelectedDate('setMonth', num)}\n />\n )}\n {type === 'year' && (\n <DatePickerYear\n prefixCls={prefixCls}\n panelDate={selectDate || selectPanelDate}\n onSelected={(num) => onSelectedDate('setFullYear', num)}\n />\n )}\n {type === 'time' && (\n <TimePickerTime\n date={selectPanelDate}\n {...showTime}\n className={`${prefixCls}-timepicker`}\n onSelected={onSelectedTime}\n />\n )}\n {showTime && format && (\n <div className={`${prefixCls}-time-btn`} onClick={() => handleSelected('time')}>\n {formatter(format!, selectDate || selectPanelDate)}\n </div>\n )}\n </div>\n );\n}\n","import React, { useMemo } from 'react';\nimport { CalendarProps } from './';\n\nexport type RenderDayProps = {\n prefixCls?: string;\n day?: number;\n data?: CalendarProps['data'];\n currentDate?: Date;\n};\n\nexport default function RenderDay(props: RenderDayProps) {\n const { prefixCls, day, data, currentDate } = props;\n\n const dayData = useMemo(\n () =>\n (data || []).filter((item) => {\n let arr: number[] = ((item.date && item.date.split('/')) || []).map((num) => Number(num));\n if (arr.length === 1) {\n return day === arr[0];\n }\n if (currentDate && arr.length === 2) {\n return currentDate.getMonth() + 1 === arr[0] && day === arr[1];\n }\n if (currentDate && arr.length === 3) {\n return currentDate.getFullYear() === arr[0] && currentDate.getMonth() + 1 === arr[1] && day === arr[2];\n }\n return false;\n }),\n [currentDate, day, data],\n );\n\n return useMemo(\n () => (\n <div className={`${prefixCls}-inner`}>\n <div className={`${prefixCls}-day`}>{day}</div>\n <div className={`${prefixCls}-panel`}>\n {dayData &&\n dayData.length > 0 &&\n dayData.map((item, idx) => {\n const { date, label, ...other } = item;\n return (\n <div key={idx} {...other}>\n {label}\n </div>\n );\n })}\n </div>\n </div>\n ),\n [dayData, day],\n );\n}\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { DatePickerDay, DatePickerDayProps, DatePickerDayDateSource } from '@uiw/react-date-picker';\nimport Icon from '@uiw/react-icon';\nimport formatter from '@uiw/formatter';\nimport { IProps } from '@uiw/utils';\nimport RenderDay from './DayLabel';\nimport './style/index.less';\n\nexport interface CalendarProps extends IProps, DatePickerDayProps {\n /**\n * 设置日历面板上面的日期标题。\n */\n titleFormat?: string;\n /**\n * 点击选择日期回调\n */\n onSelectDay?: (selectDay?: Date, dateSource?: DatePickerDayDateSource) => void;\n /**\n * 日历面板默认展示哪一页\n */\n panelDate?: Date;\n /**\n * 默认高亮当天日期\n */\n today?: Date;\n /**\n * 在日历面板上面添加通知,数组中的对象可以设置 `ElementProps`,如:`style`, `onClick` 等属性。\n */\n data?: ICalendarData[];\n /**\n * 选中的日期\n */\n date?: Date;\n /**\n * `今天` 按钮的文本设置\n */\n todayLabel?: string;\n /**\n * 月份显示文本\n */\n monthLabel?: string[];\n /** 翻页触发事件 */\n onPaging?: (type: 'prev' | 'next' | 'today', month: number, panelDate?: Date) => void;\n}\n\nexport interface ICalendarData {\n label?: React.ReactNode;\n date?: string;\n [key: string]: any;\n}\n\nconst MONTH_LABEL = [\n '一月',\n '二月',\n '三月',\n '四月',\n '五月',\n '六月',\n '七月',\n '八月',\n '九月',\n '十月',\n '十一月',\n '十二月',\n];\n\nexport default function Calendar(props: CalendarProps) {\n const {\n prefixCls = 'w-calendar',\n className,\n style,\n today = new Date(),\n date,\n data,\n monthLabel = MONTH_LABEL,\n titleFormat = 'YYYY/MM',\n todayLabel = '今天',\n panelDate: _,\n onPaging,\n onSelectDay,\n ...otherProps\n } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n const [panelDate, setPanelDate] = useState<Date>(props.panelDate || new Date());\n\n useEffect(() => {\n if (props.panelDate !== panelDate) {\n setPanelDate(panelDate);\n }\n }, [props.panelDate]);\n\n function handlePaging(type: 'prev' | 'next' | 'today') {\n let currentDate = new Date();\n if (type === 'today') {\n currentDate = today || new Date();\n } else {\n const month = panelDate.getMonth();\n if (panelDate && type === 'prev') {\n panelDate.setMonth(month - 1);\n }\n if (panelDate && type === 'next') {\n panelDate.setMonth(month + 1);\n }\n currentDate = panelDate;\n }\n setPanelDate(new Date(currentDate));\n onPaging && onPaging(type, currentDate!.getMonth() + 1, currentDate);\n }\n\n const titleLable = useMemo(\n () => <div className={`${prefixCls}-title`}>{formatter(titleFormat, panelDate)}</div>,\n [prefixCls, titleFormat, panelDate],\n );\n\n const btngroup = useMemo(\n () => (\n <div className={`${prefixCls}-btn-group`}>\n <Icon type=\"down\" onClick={() => handlePaging('prev')} />\n <span className={`${prefixCls}-btn`} onClick={() => handlePaging('today')}>\n {todayLabel}\n </span>\n <Icon type=\"down\" onClick={() => handlePaging('next')} />\n </div>\n ),\n [prefixCls, todayLabel],\n );\n\n return (\n <div className={cls} style={style}>\n <div className={`${prefixCls}-caption`}>\n {titleLable}\n {btngroup}\n </div>\n <DatePickerDay\n onSelectDay={(currentDate, dateSource) => {\n setPanelDate(currentDate!);\n onSelectDay && onSelectDay(currentDate, dateSource);\n }}\n renderDay={(day, propsNext) => (\n <RenderDay prefixCls={prefixCls} day={day} data={data} currentDate={propsNext.date} />\n )}\n date={date}\n today={today}\n panelDate={panelDate || new Date()}\n {...otherProps}\n />\n </div>\n );\n}\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface CardProps extends IProps, Omit<HTMLDivProps, 'title'> {\n active?: boolean;\n bordered?: boolean;\n bodyStyle?: React.CSSProperties;\n bodyClassName?: string;\n title?: React.ReactNode;\n noHover?: boolean;\n extra?: React.ReactNode;\n footer?: React.ReactNode;\n}\n\nexport default React.forwardRef<HTMLDivElement, CardProps>((props, ref) => {\n const {\n prefixCls = 'w-card',\n className,\n title,\n extra,\n footer,\n bordered = true,\n noHover = false,\n active = false,\n bodyStyle,\n bodyClassName,\n children,\n ...resetProps\n } = props;\n const cls = useMemo(\n () =>\n [\n prefixCls,\n className,\n bordered ? `${prefixCls}-bordered` : null,\n noHover ? `${prefixCls}-no-hover` : null,\n active ? 'active' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n [prefixCls, className, bordered, noHover],\n );\n\n return (\n <div {...resetProps} className={cls} ref={ref}>\n {(title || extra) && (\n <div className={`${prefixCls}-head`}>\n {title && <div className={`${prefixCls}-head-title`}>{title}</div>}\n {extra && <div className={`${prefixCls}-extra`}>{extra}</div>}\n </div>\n )}\n {children && (\n <div className={[`${prefixCls}-body`, bodyClassName].filter(Boolean).join(' ').trim()} style={bodyStyle}>\n {children}\n </div>\n )}\n {footer && <div className={`${prefixCls}-footer`}>{footer}</div>}\n </div>\n );\n});\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLInputProps } from '@uiw/utils';\n\n/**\n * Constructs a type by picking all properties from `HTMLInputProps` and then removing `size`.\n * Omit: https://www.typescriptlang.org/docs/handbook/utility-types.html#omittk\n */\nexport interface RadioAbstractProps extends IProps, Omit<HTMLInputProps, 'size'> {\n size?: 'large' | 'default' | 'small';\n checked?: boolean;\n disabled?: boolean;\n onChange?: (even: React.ChangeEvent<HTMLInputElement>) => void;\n}\n\nexport const RadioAbstract = React.forwardRef<HTMLInputElement, RadioAbstractProps>((props, ref) => {\n const {\n prefixCls = 'w-radio',\n type = 'radio',\n disabled = false,\n value = '',\n className,\n style,\n children,\n size,\n checked: prChecked = false,\n onChange,\n ...other\n } = props;\n\n const [checked, setChecked] = useState(prChecked);\n const [prevChecked, setPrevChecked] = useState<boolean>();\n if (prChecked !== prevChecked) {\n setPrevChecked(prChecked);\n }\n useMemo(() => {\n if (prChecked !== prevChecked) {\n setChecked(prChecked);\n }\n }, [prevChecked]);\n\n const cls = [prefixCls, className, disabled ? 'disabled' : null, size ? `${prefixCls}-${size}` : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n useMemo(() => {\n if (checked !== props.checked) {\n setChecked(!!props.checked);\n }\n }, [props.checked]);\n\n function handleChange(e: React.ChangeEvent<HTMLInputElement>) {\n e.persist();\n setChecked(e.target.checked);\n onChange && onChange(e);\n }\n\n const label = children || value;\n return (\n <label {...{ className: cls, style }}>\n <input {...{ ...other, type, disabled, value }} checked={checked} onChange={handleChange} ref={ref} />\n {label && <div className={`${prefixCls}-text`}>{label}</div>}\n </label>\n );\n});\n","import React from 'react';\nimport { RadioAbstract, RadioAbstractProps } from './RadioAbstract';\nimport './style/index.less';\n\nexport interface RadioProps extends RadioAbstractProps {}\n\nexport default React.forwardRef<HTMLInputElement, RadioProps>((props, ref) => {\n return <RadioAbstract ref={ref} {...props} />;\n});\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { RadioProps } from './Radio';\nimport './style/group.less';\n\nexport interface RadioGroupProps extends IProps, HTMLDivProps {\n name?: RadioProps['name'];\n value?: RadioProps['value'];\n onChange?: RadioProps['onChange'];\n}\n\nexport default React.forwardRef<HTMLDivElement, RadioGroupProps>((props, ref) => {\n const { prefixCls = 'w-radio-group', className, name, value, onChange, children, ...other } = props;\n return (\n <div {...other} ref={ref} className={[prefixCls, className].filter(Boolean).join(' ').trim()}>\n {React.Children.toArray(children).map((child) => {\n if (!child) return;\n if (!React.isValidElement(child)) return child;\n return React.cloneElement(child, {\n ...(child.props || {}),\n ...{\n checked: child.props.value === value,\n name,\n onChange,\n },\n });\n })}\n </div>\n );\n});\n","import React, { useMemo, useRef } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/group.less';\n\nexport type Value = string | number;\nexport interface CheckboxGroupPorps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n value?: Value[];\n name?: string;\n onChange?: (e: React.ChangeEvent<HTMLInputElement>, values: Value[]) => void;\n}\n\nexport const CheckboxGroup = React.forwardRef<HTMLDivElement, CheckboxGroupPorps>((props, ref) => {\n const { prefixCls = 'w-checkbox-group', className, name, value, onChange, ...other } = props;\n const valueRef = useRef<Value[]>([]);\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n const childs = React.Children.toArray(props.children);\n useMemo(() => (valueRef.current = value || []), [value]);\n return (\n <div {...other} className={cls} ref={ref}>\n {React.Children.map(childs, (element: React.ReactNode) => {\n if (!React.isValidElement(element)) return;\n if (\n Array.isArray(value) &&\n element &&\n element.props &&\n element.props.value &&\n value.includes(element.props.value)\n ) {\n if (!valueRef.current.includes(element.props.value)) {\n valueRef.current.push(element.props.value);\n }\n }\n return React.cloneElement(\n element,\n Object.assign({}, element.props, {\n name,\n checked: valueRef.current.includes(element.props.value),\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => {\n if (e.target.type && e.target.type !== 'checkbox') return;\n const checked = e.target.checked;\n const include = valueRef.current.includes(element.props.value);\n if (!include && checked) {\n valueRef.current.push(element.props.value);\n } else if (include && !checked) {\n valueRef.current = valueRef.current.filter((val) => val !== element.props.value);\n }\n onChange && onChange(e, valueRef.current);\n },\n }),\n );\n })}\n </div>\n );\n});\n","import React from 'react';\nimport { RadioAbstract, RadioAbstractProps } from '@uiw/react-radio';\nimport { CheckboxGroup } from './Group';\nimport './style/index.less';\n\nexport interface CheckboxProps extends RadioAbstractProps {\n indeterminate?: boolean;\n}\n\nfunction InternalCheckbox(props: CheckboxProps, ref: React.ForwardedRef<HTMLInputElement>) {\n const {\n className,\n prefixCls = 'w-checkbox',\n type = 'checkbox',\n indeterminate = false,\n disabled = false,\n value = '',\n ...other\n } = props;\n\n const cls = [className, indeterminate && 'indeterminate'].filter(Boolean).join(' ').trim();\n return (\n <RadioAbstract\n ref={ref}\n {...other}\n type={type}\n prefixCls={prefixCls}\n disabled={disabled}\n value={value}\n className={cls}\n />\n );\n}\n\nconst Checkbox = React.forwardRef<HTMLInputElement, CheckboxProps>(InternalCheckbox);\ntype Checkbox = typeof Checkbox & {\n Group: typeof CheckboxGroup;\n};\n\n(Checkbox as Checkbox).Group = CheckboxGroup;\n\nexport default Checkbox as Checkbox;\n","import Checkbox from './Checkbox';\n\nexport * from './Checkbox';\nexport * from './Group';\nexport default Checkbox;\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Panel from './Panel';\nimport './style/index.less';\n\nexport interface CollapseProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n accordion?: boolean;\n activeKey?: string | string[];\n bordered?: boolean;\n showArrow?: boolean;\n onChange?: (activeKey: string[]) => void;\n}\n\nexport interface CollapseState {\n activeKey: string[];\n}\n\nfunction toArray(activeKey: CollapseProps['activeKey']) {\n let currentActiveKey = activeKey;\n if (!Array.isArray(currentActiveKey)) {\n currentActiveKey = currentActiveKey ? [currentActiveKey] : [];\n }\n return currentActiveKey;\n}\n\nfunction InternalCollapse(props: CollapseProps, ref: React.ForwardedRef<HTMLDivElement>) {\n const {\n prefixCls = 'w-collapse',\n className,\n children,\n accordion = false,\n bordered,\n showArrow = true,\n activeKey: propsActiveKey,\n onChange,\n ...resetProps\n } = props;\n const [activeKey, setActiveKey] = useState(toArray(propsActiveKey));\n const cls = [prefixCls, className, bordered ? 'w-noborder' : null].filter(Boolean).join(' ').trim();\n function onItemClick(key: string) {\n let keys = activeKey;\n if (accordion) {\n keys = keys[0] === key ? [] : [key];\n } else {\n keys = [...keys];\n const index = keys.indexOf(key);\n const isActive = index > -1;\n if (isActive) {\n keys.splice(index, 1);\n } else {\n keys.push(key);\n }\n }\n setActiveKey(keys);\n }\n useMemo(() => {\n if (propsActiveKey !== activeKey) {\n setActiveKey(toArray(propsActiveKey));\n }\n }, [propsActiveKey]);\n useMemo(() => {\n if (propsActiveKey !== activeKey) {\n onChange && onChange(activeKey);\n }\n }, [activeKey, propsActiveKey]);\n return (\n <div className={cls} {...resetProps} ref={ref}>\n {React.Children.map(children, (child: any, index) => {\n // 如果没有密钥提供,请使用面板顺序作为默认密钥\n const key = child.key || String(index);\n const { disabled } = child.props;\n let isActive = false;\n if (accordion) {\n // 手风琴模式下默认选择第一个\n isActive = activeKey[0] === key;\n } else {\n isActive = activeKey.indexOf(key) > -1;\n }\n const childProps = {\n prefixCls,\n isActive,\n disabled,\n showArrow,\n onItemClick: disabled ? () => {} : () => onItemClick(key),\n ...child.props,\n };\n return React.cloneElement(child, childProps);\n })}\n </div>\n );\n}\n\nconst Collapse = React.forwardRef<HTMLDivElement, CollapseProps>(InternalCollapse);\ntype Collapse = typeof Collapse & {\n Panel: typeof Panel;\n};\n\n(Collapse as Collapse).Panel = Panel;\n\nexport default Collapse as Collapse;\n","import React from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { TransitionStatus } from 'react-transition-group/Transition';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Icon, { IconProps } from '@uiw/react-icon';\n\nexport interface CollapsePanelProps extends IProps, HTMLDivProps {\n disabled?: boolean;\n showArrow?: boolean;\n isActive?: boolean;\n header?: React.ReactNode;\n icon?: IconProps['type'];\n extra?: React.ReactNode;\n onItemClick?: (evn: React.MouseEvent<HTMLDivElement>) => void;\n}\n\nexport default function Panel(props: CollapsePanelProps) {\n const {\n prefixCls = 'w-collapse',\n className,\n icon = 'down',\n children,\n isActive,\n onItemClick,\n disabled = false,\n showArrow,\n header,\n extra,\n ...resetProps\n } = props;\n const cls = [\n prefixCls ? `${prefixCls}-item` : null,\n className,\n isActive ? `${prefixCls}-active` : null,\n disabled ? `${prefixCls}-disabled` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const iconRender = typeof icon === 'string' ? <Icon type={icon} /> : icon;\n\n const childStyle = (child: React.ReactElement) => {\n return Object.assign({}, child && child.props ? child.props.style : {}, {\n transitionDuration: '300ms',\n });\n };\n function getInstance(status: TransitionStatus, instance: any) {\n if (!instance) {\n return;\n }\n if (status === 'exited' || status === 'exiting') {\n instance.style.height = '1px';\n }\n if (status === 'entered' || status === 'entering') {\n instance.style.height = `${instance.scrollHeight}px`;\n }\n }\n return (\n <div className={cls} {...resetProps}>\n <div className={`${prefixCls}-header`} onClick={onItemClick}>\n {showArrow && iconRender}\n <span className={`${prefixCls}-title`}>{header}</span>\n {extra && <div className={`${prefixCls}-extra`}>{extra}</div>}\n </div>\n <CSSTransition in={isActive} unmountOnExit={false} timeout={300} classNames={`${prefixCls}-panel`}>\n {(status: TransitionStatus) =>\n React.cloneElement(<div>{children}</div>, {\n className: `${prefixCls}-panel`,\n style: childStyle(children as React.ReactElement),\n ref: (e: any) => getInstance(status, e),\n })\n }\n </CSSTransition>\n </div>\n );\n}\n","import Collapse from './Collapse';\n\nexport * from './Collapse';\nexport * from './Panel';\n\nexport default Collapse;\n","import React from 'react';\nimport copy from '@uiw/copy-to-clipboard';\nimport { IProps, HTMLSpanProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface CopyToClipboardProps extends IProps, Omit<HTMLSpanProps, 'onClick'> {\n text?: string;\n onClick?: (text: string, isCopy: boolean, event: React.MouseEvent<HTMLElement>) => void;\n}\n\nexport default function CopyToClipboard<T>(props: CopyToClipboardProps & T) {\n const {\n prefixCls = 'w-copy-to-clipboard',\n className,\n text = '',\n children,\n onClick = () => null,\n ...resetProps\n } = props;\n function handleClick(e: React.MouseEvent<HTMLElement>) {\n if (!text) {\n return onClick('', false, e);\n }\n copy(text, (isCopy: boolean) => {\n onClick(text, isCopy, e);\n });\n }\n const otherProps = {\n ...resetProps,\n className: [prefixCls, className].filter(Boolean).join(' ').trim(),\n onClick: handleClick,\n };\n return (\n <span {...otherProps}>\n <span className={`${prefixCls}-select`}>{text}</span>\n {children}\n </span>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport Input, { InputProps } from '@uiw/react-input';\nimport Popover, { PopoverProps } from '@uiw/react-popover';\nimport DatePicker, { DatePickerProps } from '@uiw/react-date-picker';\nimport Icon from '@uiw/react-icon';\nimport { IProps } from '@uiw/utils';\nimport formatter from '@uiw/formatter';\nimport './style/index.less';\n\nexport interface DateInputProps extends IProps, Omit<InputProps, 'onChange' | 'value'> {\n popoverProps?: PopoverProps;\n datePickerProps?: DatePickerProps;\n value?: Date | string;\n format?: string;\n allowClear?: boolean;\n onChange?: (selectedDate?: Date) => void;\n}\n\nexport default function DateInput(props: DateInputProps) {\n const {\n prefixCls = 'w-dateinput',\n className,\n popoverProps,\n datePickerProps,\n allowClear = true,\n format = 'YYYY/MM/DD',\n onChange,\n ...inputProps\n } = props;\n const [date, setDate] = useState(props.value);\n\n const value = date || '';\n inputProps.value = typeof value === 'string' ? value : formatter(format, value);\n\n useEffect(() => {\n if (props.value !== date) {\n setDate(props.value);\n }\n }, [props.value]);\n\n function handleChange(cdate?: Date) {\n setDate(cdate);\n onChange && onChange(cdate);\n }\n if (allowClear && inputProps.value) {\n inputProps.addonAfter = (\n <Icon className={`${prefixCls}-close-btn`} onClick={() => handleChange(undefined)} type=\"close\" />\n );\n }\n return (\n <Popover\n trigger=\"focus\"\n placement=\"bottomLeft\"\n autoAdjustOverflow\n {...popoverProps}\n content={\n <DatePicker\n date={(value && new Date(value)) || undefined}\n className={`${prefixCls}-popover`}\n {...datePickerProps}\n onChange={(selectedDate) => handleChange(selectedDate!)}\n />\n }\n >\n <Input\n placeholder=\"请选择日期\"\n readOnly\n {...(inputProps as InputProps)}\n className={[prefixCls, className].filter(Boolean).join(' ').trim()}\n />\n </Popover>\n );\n}\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\n\nexport interface DescriptionsItemProps extends IProps {\n label?: React.ReactNode;\n children: React.ReactNode;\n span?: number;\n}\n\nconst DescriptionsItem: React.FC<DescriptionsItemProps> = ({ children }) => children as JSX.Element;\n\nexport default DescriptionsItem;\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\nimport { DescriptionsItemProps } from './DescriptionsItem';\nimport { RowProps } from './Row';\n\nexport interface CellProps\n extends Omit<RowProps, 'children'>,\n Omit<DescriptionsItemProps, 'children'>,\n React.HTMLAttributes<HTMLTableCellElement>,\n IProps {\n children?: React.ReactElement<DescriptionsItemProps> | React.ReactNode;\n tagName?: 'td' | 'th';\n /**\n * 是否为一行的最后一个\n */\n isLastCell?: boolean;\n}\n\nfunction Cell(props: CellProps = {}) {\n const {\n prefixCls,\n className,\n tagName: TagName = 'td',\n layout,\n bordered,\n label,\n isLastCell,\n colon,\n span,\n children,\n column,\n ...other\n } = props;\n\n const labelProps: React.HTMLAttributes<HTMLSpanElement> = {\n className: [\n prefixCls ? `${prefixCls}-item-label` : null,\n className,\n colon ? `${prefixCls}-item-colon` : null,\n !label ? `${prefixCls}-item-no-label` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n };\n if (layout === 'horizontal') {\n if (!bordered) {\n return (\n <TagName {...other} colSpan={span}>\n <span {...labelProps}>{label}</span>\n <span className={prefixCls ? `${prefixCls}-item-content` : ''}>{children}</span>\n </TagName>\n );\n }\n return (\n <Fragment>\n <th {...labelProps}>{label}</th>\n <TagName\n {...other}\n colSpan={span ? span * 2 - 1 : span}\n className={prefixCls ? `${prefixCls}-item-content` : ''}\n >\n {children}\n </TagName>\n </Fragment>\n );\n }\n return (\n <TagName colSpan={span} className={`${prefixCls}-item-${TagName === 'td' ? 'content' : 'label'}`}>\n {children}\n </TagName>\n );\n}\n\nexport default Cell;\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\nimport { DescriptionsItemProps } from './DescriptionsItem';\nimport Cell from './Cell';\n\nexport interface RowProps extends IProps {\n children?: React.ReactElement<DescriptionsItemProps>[];\n bordered?: boolean;\n layout?: 'horizontal' | 'vertical';\n colon?: boolean;\n column?: number;\n}\n\nexport default function Row(props: RowProps = {}) {\n const { prefixCls, layout, bordered, column, colon, children = [] } = props;\n function handleCell(isHead?: boolean) {\n return children.map((child, index) => (\n <Cell\n {...child.props}\n prefixCls={prefixCls}\n key={index}\n column={column}\n tagName={isHead ? 'th' : 'td'}\n isLastCell={children.length - 1 === index}\n layout={layout}\n colon={colon}\n bordered={bordered}\n >\n {isHead ? child.props.label : child.props.children}\n </Cell>\n ));\n }\n const cls = prefixCls ? `${prefixCls}-row` : '';\n return (\n <Fragment>\n {layout === 'vertical' && <tr className={cls}>{handleCell(true)}</tr>}\n <tr className={cls}>{handleCell()}</tr>\n </Fragment>\n );\n}\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\nimport DescriptionsItem, { DescriptionsItemProps } from './DescriptionsItem';\nimport Row, { RowProps } from './Row';\nimport './style/index.less';\n\nexport * from './DescriptionsItem';\n\nexport interface DescriptionsProps extends IProps {\n column?: number;\n title?: React.ReactNode;\n children?: React.ReactNode;\n bordered?: boolean;\n colon?: boolean;\n size?: 'large' | 'small' | 'default';\n layout?: RowProps['layout'];\n}\n\nconst generateChildrenRows = (\n children: React.ReactElement<DescriptionsItemProps>[],\n column: number,\n): Array<React.ReactElement<DescriptionsItemProps>[]> => {\n const rows: React.ReactElement<DescriptionsItemProps>[][] = [];\n let columns: React.ReactElement<DescriptionsItemProps>[] | null = null;\n let leftSpans: number;\n\n children.forEach((node: React.ReactElement<DescriptionsItemProps>, index: number) => {\n let itemNode = node;\n\n if (!columns) {\n leftSpans = column;\n columns = [];\n rows.push(columns);\n }\n\n // Always set last span to align the end of Descriptions\n const lastItem = index === children.length - 1;\n if (lastItem) {\n itemNode = React.cloneElement(itemNode, {\n span: leftSpans,\n });\n }\n // Calculate left fill span\n const { span = 1 } = itemNode.props;\n columns.push(itemNode);\n leftSpans -= span;\n\n if (leftSpans <= 0) {\n columns = null;\n }\n });\n\n return rows;\n};\n\nfunction InternalDescriptions(props: DescriptionsProps, ref: React.ForwardedRef<HTMLDivElement>) {\n const {\n prefixCls = 'w-descriptions',\n className,\n title,\n bordered,\n column = 3,\n size,\n colon = true,\n children,\n layout = 'horizontal',\n ...other\n } = props;\n const cls = [\n prefixCls,\n className,\n prefixCls && layout ? `${prefixCls}-${layout}` : null,\n bordered ? `${prefixCls}-bordered` : null,\n size ? `${prefixCls}-${size}` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n const cloneChildren = React.Children.toArray(children) as JSX.Element[];\n const childs: Array<React.ReactElement<DescriptionsItemProps>[]> = generateChildrenRows(cloneChildren, column!);\n\n return (\n <div className={cls} ref={ref}>\n <table {...other}>\n {title && <caption className={`${prefixCls}-title`}>{title}</caption>}\n <tbody>\n {childs.map((child, index) => (\n <Row key={index} prefixCls={prefixCls} bordered={bordered} colon={colon} column={column} layout={layout}>\n {child}\n </Row>\n ))}\n </tbody>\n </table>\n </div>\n );\n}\n\nconst Descriptions = React.forwardRef<HTMLDivElement, DescriptionsProps>(InternalDescriptions);\ntype Descriptions = typeof Descriptions & {\n Item: typeof DescriptionsItem;\n};\n\n(Descriptions as Descriptions).Item = DescriptionsItem;\n\nexport default Descriptions as Descriptions;\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface DividerProps extends IProps, HTMLDivProps {\n dashed?: boolean;\n type?: 'horizontal' | 'vertical';\n align?: 'left' | 'right' | 'center';\n}\n\nexport default React.forwardRef<HTMLDivElement, DividerProps>((props, ref) => {\n const {\n prefixCls = 'w-divider',\n className,\n children,\n dashed = false,\n type = 'horizontal',\n align = 'center',\n ...restProps\n } = props;\n const cls = [\n className,\n prefixCls,\n prefixCls && type ? `${prefixCls}-${type}` : null,\n prefixCls && align ? `${prefixCls}-${align}` : null,\n children ? `${prefixCls}-with-text` : null,\n !!dashed ? `${prefixCls}-dashed` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n return (\n <div className={cls} {...restProps} ref={ref}>\n {children && <span className={`${prefixCls}-inner-text`}>{children}</span>}\n </div>\n );\n});\n","import React, { useMemo } from 'react';\nimport Overlay, { OverlayProps } from '@uiw/react-overlay';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport Button from '@uiw/react-button';\nimport { HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface DrawerProps extends OverlayProps {\n footer?: React.ReactNode;\n icon?: IconProps['type'];\n title?: React.ReactNode;\n bodyProps?: HTMLDivProps;\n placement?: 'top' | 'right' | 'bottom' | 'left';\n size?: number;\n isCloseButtonShown?: boolean;\n onClose?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n}\n\nexport default (props: DrawerProps = {}) => {\n const {\n prefixCls = 'w-drawer',\n className,\n style,\n placement = 'right',\n size = 260,\n title,\n footer,\n icon,\n isCloseButtonShown = true,\n bodyProps,\n timeout = 300,\n isOpen = false,\n maskClosable = true,\n ...overlayProps\n } = props;\n const cls = [className, prefixCls, placement].filter(Boolean).join(' ').trim();\n const bodyCls = [bodyProps ? bodyProps.className : null, prefixCls ? `${prefixCls}-body-inner` : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n const styl = {\n ...style,\n [/^(top|bottom)$/.test(placement!) ? 'height' : 'width']: size,\n };\n const footerView = useMemo(() => (footer ? <div className={`${prefixCls}-footer`}>{footer}</div> : null), [footer]);\n const iconView = useMemo(() => (icon ? <Icon type={icon} /> : null), [icon]);\n const titleView = useMemo(() => (title ? <h4>{title}</h4> : null), [title]);\n return (\n <Overlay className={cls} timeout={timeout} isOpen={isOpen} maskClosable={maskClosable} {...overlayProps}>\n <div className={`${prefixCls}-wrapper`} style={styl}>\n {(title || icon) && (\n <div className={`${prefixCls}-header`}>\n {iconView}\n {titleView}\n {title && isCloseButtonShown && <Button basic onClick={props.onClose} icon=\"close\" type=\"light\" />}\n </div>\n )}\n <div className={`${prefixCls}-body`}>\n <div {...bodyProps} className={bodyCls}>\n {props.children}\n </div>\n </div>\n {footerView}\n </div>\n </Overlay>\n );\n};\n","import React from 'react';\nimport OverlayTrigger, { OverlayTriggerProps } from '@uiw/react-overlay-trigger';\nimport { IProps } from '@uiw/utils';\nimport { useMemo } from 'react';\n\nexport interface DropdownProps extends IProps, OverlayTriggerProps {\n menu?: React.ReactNode;\n}\n\nexport default function Dropdown(props: DropdownProps) {\n const { prefixCls = 'w-dropdown', placement = 'bottomLeft', className, menu, children, disabled, ...other } = props;\n\n const cls = useMemo(() => [prefixCls, className].filter(Boolean).join(' ').trim(), [prefixCls, className]);\n\n return (\n <OverlayTrigger\n isOutside\n autoAdjustOverflow\n className={cls}\n disabled={disabled}\n placement={placement}\n {...other}\n overlay={menu}\n >\n {React.cloneElement(children, Object.assign({}, children.props))}\n </OverlayTrigger>\n );\n}\n","import React from 'react';\nimport Input, { InputProps } from '@uiw/react-input';\nimport { FileInputProps } from './types';\n\nexport interface InputUploadProps extends FileInputProps, InputProps {}\n\nexport default React.forwardRef<HTMLInputElement, InputUploadProps>((props, ref) => {\n const { className, prefixCls = 'w-fileinput', ...other } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n return <Input ref={ref} data-label=\"Browse\" className={cls} {...other} type=\"file\" />;\n});\n","import React from 'react';\nimport Icon from '@uiw/react-icon';\nimport { FileListProps } from './types';\nimport './style/index.less';\n\nconst Picture = (props: FileListProps) => {\n const {\n className,\n prefixCls = 'w-fileinput-list',\n dataList = [],\n uploadType,\n children,\n onPreview,\n onAdd,\n onRemove,\n } = props;\n\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n\n return (\n <div className={cls}>\n {children &&\n React.isValidElement(children) &&\n React.cloneElement(children, {\n onClick: onAdd,\n })}\n <div>\n {dataList.map((item, index) => (\n <div className={`${cls}_${uploadType}`} key={index}>\n {uploadType === 'picture' && (\n <div className={`${cls}_info ${cls}_${uploadType}_info`}>\n <img src={item['dataURL']} alt=\"\" />\n {onPreview && (\n <div className={`${cls}_actions`}>\n <span className={`${cls}_actions_search`} onClick={() => onPreview(item)}>\n <Icon type=\"search\" style={{ color: '#fff', fontSize: 16 }} />\n </span>\n </div>\n )}\n </div>\n )}\n <div className={`${cls}_${uploadType}_text`}>{item.name}</div>\n <div className={`${cls}_${uploadType}_icon`} onClick={() => onRemove(index)}>\n <Icon type=\"delete\" style={{ color: '#999' }} />\n </div>\n </div>\n ))}\n </div>\n </div>\n );\n};\n\nexport default Picture;\n","import React from 'react';\nimport Icon from '@uiw/react-icon';\nimport { FileListProps } from './types';\nimport './style/index.less';\n\nconst Card = (props: FileListProps) => {\n const {\n className,\n prefixCls = 'w-fileinput-card',\n dataList = [],\n maxNumber = 3,\n readonly,\n children,\n onAdd,\n onPreview,\n onRemove,\n } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n\n return (\n <div className={cls}>\n {dataList.map((item, index) => (\n <div className={`${cls}_box`} key={index}>\n <div className={`${cls}_box_info`}>\n <img src={item['dataURL']} alt=\"\" />\n </div>\n <div className={`${cls}_actions`}>\n {onPreview && (\n <span className={`${cls}_actions_remove`} onClick={() => onPreview(item)}>\n <Icon type=\"search\" style={{ color: '#fff', fontSize: 16 }} />\n </span>\n )}\n <span className={`${cls}_actions_remove`} onClick={() => onRemove(index)}>\n <Icon type=\"delete\" style={{ color: '#fff', fontSize: 16 }} />\n </span>\n </div>\n </div>\n ))}\n {maxNumber > dataList.length && !readonly && (\n <div className={`${cls}_box ${cls}_btn`} onClick={onAdd}>\n {children}\n </div>\n )}\n </div>\n );\n};\n\nexport default Card;\n","import { FileType } from './types';\n\nexport const openFileDialog = (inputRef: any): void => {\n if (inputRef.current) inputRef.current.click();\n};\n\nexport const getAcceptTypeString = (accept?: Array<string>) => {\n return accept && accept.length > 0 ? accept.map((item) => `.${item}`).join(', ') : 'image/*';\n};\n\nexport const getBase64 = (file: File): Promise<string> => {\n const reader = new FileReader();\n return new Promise((resolve) => {\n reader.addEventListener('load', () => resolve(String(reader.result)));\n reader.readAsDataURL(file);\n });\n};\n\nexport const getListFiles = (files: FileList, dataURLKey: string): Promise<FileType[]> => {\n const promiseFiles: Array<Promise<string>> = [];\n for (let i = 0; i < files.length; i += 1) {\n promiseFiles.push(getBase64(files[i]));\n }\n return Promise.all(promiseFiles).then((fileListBase64: Array<string>) => {\n const fileList: FileType[] = fileListBase64.map((base64, index) => ({\n [dataURLKey]: base64,\n file: files[index],\n name: files[index].name,\n }));\n return fileList;\n });\n};\n\nexport const isUploadType = (type: string) => {\n return ['picture', 'text', 'card'].includes(type);\n};\n","import React, { useRef, useCallback, useEffect, useState } from 'react';\nimport List from './List';\nimport Card from './Card';\nimport { FileUploadProps, FileType, FileListProps } from './types';\nimport { openFileDialog, getListFiles } from './utils';\n\nexport const FileList = (props: FileUploadProps) => {\n const { uploadType, value = [], multiple = false, maxNumber = 3, onChange } = props;\n const inputRef = useRef<HTMLInputElement>(null);\n const inValue: FileType[] = value || [];\n const [fileList, setFileList] = useState<FileType[]>([]);\n\n useEffect(() => {\n setFileList(inValue);\n }, []);\n\n const handleClickInput = useCallback(() => openFileDialog(inputRef), [inputRef]);\n\n const onFileUpload = useCallback((): void => {\n handleClickInput();\n }, [handleClickInput]);\n\n const onInputChange = async (e: React.ChangeEvent<HTMLInputElement>) => {\n const files = e.target.files;\n if (!files) return;\n const updatedFileList = await getListFiles(files, 'dataURL');\n let updatedList = [...fileList, ...updatedFileList];\n if (maxNumber < updatedList.length) {\n updatedList = updatedList.slice(0, maxNumber);\n }\n setFileList(updatedList);\n onChange?.(updatedList);\n };\n\n const onRemove = (index: number) => {\n const updatedList = [...fileList];\n updatedList.splice(index, 1);\n setFileList(updatedList);\n onChange?.(fileList);\n };\n\n let Comp: ((props: FileListProps) => JSX.Element) | undefined;\n\n if (uploadType === 'card') {\n Comp = Card;\n }\n if (uploadType === 'picture' || uploadType === 'text') {\n Comp = List;\n }\n\n return (\n <React.Fragment>\n <input type=\"file\" ref={inputRef} multiple={multiple} style={{ display: 'none' }} onChange={onInputChange} />\n {Comp && (\n <Comp {...props} maxNumber={maxNumber || 3} dataList={fileList} onAdd={onFileUpload} onRemove={onRemove} />\n )}\n </React.Fragment>\n );\n};\n\nexport default FileList;\n","import React from 'react';\nimport Input from './Input';\nimport FileList from './FileList';\nimport { isUploadType } from './utils';\nimport { UploadType } from './types';\nimport './style/index.less';\n\ninterface Props {\n uploadType?: UploadType;\n [key: string]: any;\n}\n\nfunction Upload(props: Props) {\n const { uploadType = 'input' } = props;\n\n if (uploadType === 'input') {\n return <Input {...props} />;\n }\n\n if (isUploadType(uploadType)) {\n return <FileList {...props} />;\n }\n return null;\n}\n\nexport default Upload;\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/col.less';\n\nexport interface ColProps extends IProps, HTMLDivProps {\n fixed?: boolean;\n span?: number | string;\n grow?: number | string;\n align?: 'top' | 'middle' | 'bottom' | 'baseline';\n}\n\nexport function Col(props: ColProps = {}) {\n const { prefixCls = 'w-col', className, fixed, span, grow, align, ...other } = props;\n const cls = [\n prefixCls,\n className,\n span ? `${prefixCls}-${span}` : null,\n fixed ? `${prefixCls}-fixed` : null,\n align ? `${prefixCls}-align-${align}` : null,\n fixed ? `${prefixCls}-grow-${grow}` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n return (\n <div className={cls} {...other}>\n {props.children}\n </div>\n );\n}\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/row.less';\n\nexport interface RowProps extends IProps, HTMLDivProps {\n fixed?: boolean;\n gutter?: number;\n justify?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';\n align?: 'top' | 'middle' | 'bottom' | 'baseline';\n}\n\nexport function Row(props: RowProps = {}) {\n const { prefixCls = 'w-row', className, gutter = 0, justify, align, ...other } = props;\n const cls = [\n prefixCls,\n className,\n align ? `${prefixCls}-align-${align}` : null,\n justify ? `${prefixCls}-justify-${justify}` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const gutterStyl = !gutter ? {} : { paddingLeft: gutter / 2, paddingRight: gutter / 2 };\n return (\n <div {...other} className={cls}>\n {React.Children.toArray(props.children).map((child) => {\n if (!React.isValidElement(child)) return child;\n return React.cloneElement(\n child,\n Object.assign({}, child.props, {\n style: { ...child.props.style, ...gutterStyl },\n }),\n );\n })}\n </div>\n );\n}\n","import React, { CSSProperties } from 'react';\nimport { Col, Row } from '@uiw/react-grid';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { FormFieldsProps } from './Form';\nimport './style/form-item.less';\n\nexport interface FormItemProps<T> extends IProps, HTMLDivProps {\n inline?: boolean;\n hasError?: boolean;\n label?: React.ReactNode;\n labelFor?: string;\n labelClassName?: string;\n help?: React.ReactNode;\n labelStyle?: CSSProperties;\n initialValue?: string | number | T;\n validator?: FormFieldsProps<T>['validator'];\n}\n\nexport default class FormItem<T> extends React.PureComponent<FormItemProps<T>> {\n public static defaultProps = {\n prefixCls: 'w-form-item',\n };\n render() {\n const {\n prefixCls,\n className,\n style,\n label,\n labelFor,\n labelClassName,\n labelStyle,\n help,\n inline,\n initialValue,\n validator,\n hasError,\n ...otherProps\n } = this.props;\n const cls = [prefixCls, className, hasError ? `${prefixCls}-error` : null].filter(Boolean).join(' ').trim();\n const labelCls = ['w-form-label', labelClassName].filter(Boolean).join(' ').trim();\n if (inline) {\n return (\n <div className={cls} style={style} {...otherProps}>\n <Row>\n <Col fixed className={labelCls}>\n <label style={labelStyle} htmlFor={labelFor}>\n {label}\n </label>\n </Col>\n <Col className=\"w-form-row\">{this.props.children}</Col>\n </Row>\n {help && (\n <Row>\n <Col className=\"w-form-help\">{help}</Col>\n </Row>\n )}\n </div>\n );\n }\n return (\n <div className={cls} style={style} {...otherProps}>\n {label && (\n <label className={labelCls} style={labelStyle} htmlFor={labelFor}>\n {label}\n </label>\n )}\n <Col className=\"w-form-row\">{this.props.children}</Col>\n {help && <div className=\"w-form-help\">{help}</div>}\n </div>\n );\n }\n}\n","import React, { useState } from 'react';\nimport { IProps } from '@uiw/utils';\nimport FormItem, { FormItemProps } from './FormItem';\nimport './style/form.less';\n\nexport interface FormProps<T> extends IProps, Omit<React.FormHTMLAttributes<HTMLFormElement>, 'onChange' | 'onSubmit'> {\n prefixCls?: string;\n fields?: Record<string, FormFieldsProps<T>>;\n onSubmit?: (state: FormSubmitProps) => any;\n afterSubmit?: (result: FormAfterSubmitProps) => any;\n onChange?: (state: FormState) => void;\n onSubmitError?: (evn: any) => any;\n resetOnSubmit?: boolean;\n children?: (handle: FormChildrenProps) => JSX.Element | JSX.Element | undefined;\n}\n\nexport interface FormState {\n submitting: boolean;\n initial: Record<string, any>;\n current: FormState['initial'];\n errors: Record<string, any>;\n}\n\nexport interface FormFieldsProps<T> extends FormItemProps<T> {\n name?: string;\n children?: React.ReactNode;\n help?: React.ReactNode;\n labelFor?: string;\n inline?: boolean;\n checked?: boolean;\n initialValue?: string | number | T;\n validator?: (currentValue: any) => any;\n}\n\nexport interface FormSubmitProps {\n initial: FormState['initial'];\n current: FormState['current'];\n}\n\nexport interface FormAfterSubmitProps {\n state: FormState;\n response: any;\n reset: () => void;\n}\n\nexport interface FormChildrenProps {\n fields: Record<string, React.ReactElement>;\n resetForm: () => void;\n canSubmit: () => boolean;\n state: FormState;\n}\n\nexport type FormElementProps = {\n id?: string;\n name?: string;\n value?: string;\n checked?: boolean;\n onChange?: (env: React.BaseSyntheticEvent<HTMLInputElement>, list?: string[]) => void;\n};\n\nfunction newFormState<T>(\n fields: FormProps<T>['fields'],\n cb: (porps: FormFieldsProps<T>) => {\n initialValue: FormFieldsProps<T>['initialValue'];\n currentValue: FormFieldsProps<T>['initialValue'];\n },\n): FormState {\n const state: FormState = {\n initial: {},\n current: {},\n submitting: false,\n errors: {},\n };\n for (const name in fields) {\n const props = fields[name];\n if (!props) continue;\n const { initialValue, currentValue } = cb({ ...props, name });\n state.initial[name] = initialValue;\n state.current[name] = currentValue;\n }\n return state;\n}\n\nfunction newInitialValue<T>(value: FormFieldsProps<T>['initialValue']) {\n return value === null || value === undefined ? '' : value;\n}\n\nconst isPromise = (promise: Promise<any>) => promise && typeof promise.then === 'function';\n\nfunction Form<T>(\n {\n prefixCls = 'w-form',\n className,\n fields,\n children,\n resetOnSubmit,\n onSubmitError,\n onChange,\n onSubmit,\n afterSubmit,\n ...others\n }: FormProps<T>,\n ref: ((instance: HTMLInputElement) => void) | React.RefObject<HTMLInputElement | null> | null,\n) {\n const initData = newFormState(fields, ({ initialValue }) => {\n initialValue = newInitialValue(initialValue);\n return { initialValue, currentValue: initialValue };\n });\n\n const [data, setData] = useState<FormState>(initData);\n\n const formUnits: FormChildrenProps['fields'] = {};\n for (const name in fields) {\n const props = fields[name];\n if (!props) continue;\n const error = data.errors[name];\n if (typeof props.initialValue === 'boolean') {\n props.checked = props.initialValue;\n }\n const childField: FormFieldsProps<T> = controlField({\n ...props,\n name,\n });\n const help = error || props.help;\n const labelFor = props.labelFor;\n formUnits[name] = (\n <FormItem\n {...{\n ...props,\n key: name,\n children: childField,\n help,\n labelFor,\n state: data,\n name,\n hasError: !!error,\n }}\n />\n );\n }\n\n function handleChange(\n name: string,\n validator: FormFieldsProps<T>['validator'],\n element?: React.ReactElement,\n cb?: (env: React.BaseSyntheticEvent<HTMLInputElement>) => void,\n ) {\n return (env: React.BaseSyntheticEvent<HTMLInputElement>, list?: string[]) => {\n let value = env && env.target && 'value' in env.target ? env.target.value : env;\n // 控件 Checkbox.Group 多选值的处理\n value = list || value;\n // 控件 Checkbox 值的处理\n if (!list && element && env && env.target && /(radio)/.test(env.target.type)) {\n // 控件 Switch/Radio/Checkbox 值的处理\n value = env.target.value ? env.target.value : env.target.checked;\n }\n if (!list && element && env && env.target && /(checkbox)/.test(env.target.type)) {\n // 控件 Switch/Radio/Checkbox 值的处理\n value = env.target.checked;\n }\n const nextState = {\n current: { ...data.current, [name]: value },\n } as FormState;\n const error = validator && validator(value);\n if (!error) {\n nextState.errors = { ...data.errors };\n delete nextState.errors[name];\n }\n if (env && env.persist && typeof env.persist === 'function') env.persist();\n setData({ ...data, ...nextState });\n if (cb) {\n cb(env);\n }\n onChange && onChange({ ...data, ...nextState });\n };\n }\n\n function handleSubmit(e: React.FormEvent) {\n e && e.preventDefault();\n const { initial, current } = data;\n setData({ ...data, submitting: true });\n const nextState = { submitting: false } as FormState;\n const onError = (evn: unknown) =>\n setData({\n ...data,\n ...nextState,\n errors: (onSubmitError && onSubmitError(evn)) || {},\n });\n const onSuccess = (response: any) => {\n if (resetOnSubmit) {\n nextState.current = initial;\n }\n setData({ ...data, ...nextState, errors: {} });\n return () => afterSubmit!({ state: data, response, reset: handleReset });\n };\n try {\n const afterSubmitPromise = onSubmit!({ initial, current });\n if (isPromise(afterSubmitPromise)) {\n return afterSubmitPromise.then(onSuccess).catch(onError);\n } else {\n return onSuccess(afterSubmitPromise);\n }\n } catch (evn) {\n onError(evn);\n }\n }\n\n function canSubmit() {\n const { submitting, current = {} } = data;\n let passesValidators = true;\n for (const name in fields) {\n if (Object.prototype.hasOwnProperty.call(fields, name)) {\n const props: FormFieldsProps<T> = fields[name];\n if (!props) continue;\n if (props.validator && props.validator(current[name])) {\n passesValidators = false;\n break;\n }\n }\n }\n return !submitting && passesValidators;\n }\n\n function handleReset() {\n const { initial } = data;\n setData({ ...data, current: initial, errors: {} });\n }\n\n function controlField({\n children,\n validator,\n name,\n help,\n label,\n labelFor,\n labelClassName,\n labelStyle,\n inline,\n initialValue,\n ...other\n }: FormFieldsProps<T>) {\n const element =\n typeof children !== 'function'\n ? children\n : children({\n onChange: handleChange(name!, validator),\n onSubmit: handleSubmit,\n canSubmit: canSubmit,\n });\n if (!element || React.Children.count(element) !== 1 || !name) return element;\n const props = {\n name: element.props.name || name,\n ...other,\n } as FormElementProps;\n const hasCurrentValue = Object.prototype.hasOwnProperty.call(data.current, name);\n props.id = element.props.id;\n props.value = hasCurrentValue ? data.current && data.current[name] : props.value;\n // : element.props.value;\n\n const type = element.props.type;\n if (type === 'checkbox' || type === 'switch') {\n props.checked = !!props.checked;\n delete props.value;\n }\n props.onChange = handleChange(name, validator, element, element.props.onChange) as FormElementProps['onChange'];\n return React.cloneElement(element, props as FormElementProps);\n }\n return (\n <form\n {...{\n ...others,\n className: [prefixCls, className].filter(Boolean).join(' ').trim(),\n onSubmit: handleSubmit,\n }}\n >\n <fieldset {...{ disabled: data.submitting }}>\n {typeof children === 'function'\n ? children({\n fields: formUnits,\n state: data,\n resetForm: handleReset,\n canSubmit: canSubmit,\n })\n : children}\n </fieldset>\n </form>\n );\n}\n\nexport default React.forwardRef<HTMLInputElement, FormProps<{}>>(Form);\n","import Form from './Form';\n\nexport * from './Form';\nexport * from './FormItem';\nexport { default as FormItem } from './FormItem';\n\nexport default Form;\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\n\nexport type TagType = React.ComponentType | keyof JSX.IntrinsicElements;\n\nexport interface ListItemProps<Tag extends TagType> extends IProps, React.HTMLProps<Tag> {\n disabled?: boolean;\n active?: boolean;\n extra?: React.ReactNode;\n href?: string;\n tagName?: Tag;\n}\n\nexport const ListItem = React.forwardRef(\n <Tag extends TagType = 'div'>(props: ListItemProps<Tag>, ref: React.Ref<React.HTMLProps<Tag>>) => {\n const {\n prefixCls = 'w-list-item',\n className,\n children,\n extra,\n tagName = 'div',\n active = false,\n ...resetProps\n } = props;\n const cls = [prefixCls, className, props.disabled ? 'w-disabled' : null, active ? 'w-active' : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n const TagName = props.href && typeof tagName === 'string' ? 'a' : tagName;\n return React.createElement(\n TagName,\n {\n ...resetProps,\n className: cls,\n ref,\n } as any,\n !extra || resetProps.href ? (\n children\n ) : (\n <Fragment>\n <div className={`${prefixCls}-main`}>{children}</div>\n <div className={`${prefixCls}-extra`}>{extra}</div>\n </Fragment>\n ),\n );\n },\n);\n\nListItem.displayName = 'List.Item';\n","import React from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport { ListItem } from './Item';\nimport './style/index.less';\n\nexport * from './Item';\n\nexport interface ListProps<T> extends IProps, HTMLDivProps {\n bordered?: boolean;\n striped?: boolean;\n noHover?: boolean;\n active?: boolean;\n header?: React.ReactNode;\n footer?: React.ReactNode;\n size?: 'small' | 'default' | 'large';\n renderItem?: (item: any, idx: number) => React.ReactNode;\n dataSource?: T[];\n}\n\nfunction InternalList<T>(props: ListProps<T>, ref: React.ForwardedRef<HTMLDivElement>) {\n const {\n prefixCls = 'w-list',\n bordered = true,\n striped = false,\n noHover = false,\n active = false,\n size = 'default',\n renderItem = noop,\n className,\n children,\n header,\n footer,\n dataSource = [],\n ...resetProps\n } = props;\n let items: React.ReactNode;\n if (dataSource && dataSource.length > 0) {\n items = dataSource.map((item: any, index: number) => renderItem!(item, index));\n } else {\n items = children;\n }\n let childrenList = React.Children.map(\n items,\n (child: React.ReactNode, index) =>\n React.isValidElement(child) &&\n React.cloneElement(child, {\n key: index,\n }),\n );\n const classString = [\n prefixCls,\n className,\n striped ? `${prefixCls}-striped` : null,\n noHover ? `${prefixCls}-no-hover` : null,\n active ? `${prefixCls}-active` : null,\n bordered ? `${prefixCls}-bordered` : null,\n size && size !== 'default' ? `${prefixCls}-size-${size}` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n return (\n <div className={classString} {...resetProps} ref={ref}>\n {header && <div className={`${prefixCls}-header`}>{header}</div>}\n {childrenList}\n {footer && <div className={`${prefixCls}-footer`}>{footer}</div>}\n </div>\n );\n}\n\nconst List = React.forwardRef<HTMLDivElement, ListProps<any>>(InternalList);\ntype List = typeof List & {\n Item: typeof ListItem;\n};\n\n(List as List).Item = ListItem;\n\nexport default List as List;\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface LoaderProps extends IProps, HTMLDivProps {\n size?: 'small' | 'default' | 'large';\n loading?: boolean;\n fullscreen?: boolean;\n color?: string;\n bgColor?: string;\n vertical?: boolean;\n tip?: React.ReactNode;\n indicator?: React.ReactNode;\n children?: any | React.ReactNode;\n}\n\nexport default (props: LoaderProps = {}) => {\n const {\n prefixCls = 'w-loader',\n className,\n size = 'default',\n loading = true,\n tip,\n vertical,\n color,\n bgColor,\n children,\n indicator,\n fullscreen = false,\n ...otherProps\n } = props;\n const cls = [prefixCls, className, size ? `${prefixCls}-${size}` : null].filter(Boolean).join(' ').trim();\n\n const indicatorView = useMemo(\n () => (\n <svg viewBox=\"25 25 50 50\">\n <circle cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" strokeWidth=\"5\" strokeMiterlimit=\"10\" />\n </svg>\n ),\n [],\n );\n\n const tipsView = useMemo(\n () => (\n <div\n className={[`${prefixCls}-tips`, fullscreen ? `${prefixCls}-fullscreen` : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n style={{ color, backgroundColor: bgColor }}\n >\n <div className={`${prefixCls}-tips-nested`}>\n {indicator || indicatorView}\n {tip && (\n <div\n className={[`${prefixCls}-text`, vertical ? `${prefixCls}-vertical` : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {tip}\n </div>\n )}\n </div>\n </div>\n ),\n [fullscreen, bgColor, prefixCls, vertical, tip],\n );\n\n return (\n <div className={cls} {...otherProps}>\n {(loading || fullscreen) && tipsView}\n {children &&\n React.cloneElement(\n children,\n Object.assign({}, children.props, {\n className: [`${prefixCls}-warp`, loading ? `${prefixCls}-blur` : null].filter(Boolean).join(' ').trim(),\n }),\n )}\n </div>\n );\n};\n","import React, { Fragment } from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps } from '@uiw/utils';\nimport './style/item.less';\n\nconst disabledProps = {\n href: undefined,\n onClick: undefined,\n onMouseDown: undefined,\n onMouseEnter: undefined,\n onMouseLeave: undefined,\n tabIndex: -1,\n};\n\nexport type TagType = React.ComponentType | keyof JSX.IntrinsicElements;\n\nexport interface MenuItemProps<Tag extends TagType> extends IProps, React.HTMLProps<Tag> {\n text?: React.ReactNode;\n addonAfter?: React.ReactNode;\n tagName?: Tag;\n multiline?: boolean;\n isSubMenuItem?: boolean;\n disabled?: boolean;\n active?: boolean;\n icon?: IconProps['type'];\n children?: React.ReactNode;\n}\n\nfunction Internal<Tag extends TagType = 'a'>(props: MenuItemProps<Tag>, ref: React.Ref<React.HTMLProps<Tag>>) {\n const {\n prefixCls = 'w-menu-item',\n className,\n tagName: TagName = 'a',\n children,\n disabled = false,\n multiline = false,\n icon,\n text,\n active = false,\n addonAfter,\n isSubMenuItem,\n ...htmlProps\n } = props;\n const anchorCls = [prefixCls, active ? 'active' : null, disabled ? 'w-disabled' : null, className]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n const tagComp = React.createElement(\n TagName,\n {\n ...htmlProps,\n ...(disabled ? disabledProps : {}),\n className: anchorCls,\n ref,\n } as any,\n <Fragment>\n <Icon className={`${prefixCls}-icon`} type={icon} />\n <div\n className={[prefixCls && `${prefixCls}-text`, !multiline && `${prefixCls}-multiline`]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {text}\n </div>\n {addonAfter}\n </Fragment>,\n );\n if (isSubMenuItem) {\n return tagComp;\n }\n return <li> {tagComp} </li>;\n}\n\nexport const MenuItem = React.forwardRef(Internal);\n\nMenuItem.displayName = 'uiw.MenuItem';\n","import React from 'react';\nimport { IProps, HTMLLiProps } from '@uiw/utils';\n\nexport interface MenuDividerProps extends IProps, Omit<HTMLLiProps, 'title'> {\n title?: React.ReactNode;\n}\n\nexport const MenuDivider = React.forwardRef<HTMLLIElement, MenuDividerProps>((props, ref) => {\n const { prefixCls = 'w-menu-divider', className, title, ...htmlProps } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n if (!title) {\n return <li {...htmlProps} ref={ref} className={cls} />;\n }\n return (\n <li {...htmlProps} ref={ref} className={cls} data-menu=\"divider\">\n <strong>{title}</strong>\n </li>\n );\n});\n\nMenuDivider.displayName = 'uiw.MenuDivider';\n","import React, { useMemo, useState } from 'react';\nimport { CSSTransitionProps } from 'react-transition-group/CSSTransition';\nimport OverlayTrigger, { OverlayTriggerProps, OverlayTriggerRef } from '@uiw/react-overlay-trigger';\nimport Icon from '@uiw/react-icon';\nimport { IProps } from '@uiw/utils';\nimport { MenuItem, MenuItemProps, TagType } from './MenuItem';\nimport Menu, { MenuProps } from './Menu';\nimport './style/submenu.less';\n\nexport interface SubMenuProps<T extends TagType> extends IProps, MenuItemProps<T> {\n overlayProps?: OverlayTriggerProps;\n collapse?: boolean;\n disabled?: boolean;\n inlineCollapsed?: boolean;\n inlineIndent?: number;\n}\n\nfunction checkedMenuItem(node?: HTMLElement) {\n let isCheck = false;\n if (node) {\n // eslint-disable-next-line\n do {\n if (!node.dataset.menu) {\n isCheck = true;\n }\n if (node.dataset.menu && /^(subitem|divider)$/.test(node.dataset.menu)) {\n isCheck = false;\n }\n } while (!node.dataset.menu && (node = node.parentNode as HTMLElement));\n }\n return isCheck;\n}\n\nfunction IconView({ prefixCls, collapse, isOpen }: { prefixCls?: string; collapse?: boolean; isOpen: boolean }) {\n return useMemo(\n () => (\n <Icon\n type=\"caret-right\"\n className={[\n prefixCls ? `${prefixCls}-collapse-icon` : null,\n !collapse && isOpen ? 'w-open' : null,\n !collapse && !isOpen ? 'w-close' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n />\n ),\n [prefixCls, collapse, isOpen],\n );\n}\nexport const SubMenu = React.forwardRef(function <Tag extends TagType = 'a'>(\n props: SubMenuProps<Tag>,\n ref: React.Ref<HTMLLIElement>,\n) {\n const {\n prefixCls = 'w-menu-subitem',\n className,\n disabled,\n overlayProps = {},\n children,\n collapse = false,\n inlineIndent,\n inlineCollapsed,\n ...other\n } = props;\n const overlayTriggerProps = {} as OverlayTriggerProps & CSSTransitionProps;\n const menuProps: MenuProps = {\n bordered: true,\n children,\n inlineIndent,\n className: [prefixCls ? `${prefixCls}-overlay` : null].filter(Boolean).join(' ').trim(),\n };\n const popupRef = React.useRef<OverlayTriggerRef>(null);\n const [isOpen, setIsOpen] = useState(false);\n useMemo(() => {\n setIsOpen(false);\n }, [collapse]);\n\n function onClick(e: React.MouseEvent<HTMLUListElement, MouseEvent>) {\n const target = e.currentTarget;\n const related = (e.relatedTarget || e.nativeEvent.target) as HTMLElement;\n if (target.children.length < 1) return;\n if (checkedMenuItem(related)) {\n if (popupRef.current) {\n popupRef.current!.hide();\n }\n }\n }\n function onExit(node: HTMLElement) {\n node.style.height = `${node.scrollHeight}px`;\n setIsOpen(false);\n }\n function onExiting(node: HTMLElement) {\n node.style.height = '0px';\n }\n function onEnter(node: HTMLElement) {\n node.style.height = '1px';\n setIsOpen(true);\n }\n function onEntering(node: HTMLElement) {\n node.style.height = `${node.scrollHeight}px`;\n }\n function onEntered(node: HTMLElement) {\n node.style.height = 'initial';\n }\n\n if (!collapse) {\n delete menuProps.onClick;\n menuProps.bordered = false;\n overlayTriggerProps.className = `${prefixCls}-collapse`;\n overlayTriggerProps.appear = false;\n overlayTriggerProps.isOutside = true;\n overlayTriggerProps.isClickOutside = false;\n overlayTriggerProps.unmountOnExit = false;\n overlayTriggerProps.trigger = 'click';\n overlayTriggerProps.transitionName = `${prefixCls}`;\n overlayTriggerProps.onExit = onExit;\n overlayTriggerProps.onExiting = onExiting;\n overlayTriggerProps.onEnter = onEnter;\n overlayTriggerProps.onEntered = onEntered;\n overlayTriggerProps.onEntering = onEntering;\n } else {\n overlayTriggerProps.className = `${prefixCls}-popup`;\n overlayTriggerProps.trigger = 'hover';\n overlayTriggerProps.usePortal = true;\n menuProps.onClick = onClick;\n }\n return (\n <li data-menu=\"subitem\" ref={ref}>\n <OverlayTrigger\n placement=\"rightTop\"\n autoAdjustOverflow\n disabled={disabled}\n isOpen={isOpen}\n usePortal={false}\n isOutside\n {...overlayTriggerProps}\n {...overlayProps}\n ref={popupRef}\n overlay={<Menu {...menuProps} style={!collapse ? { paddingLeft: inlineIndent } : {}} />}\n >\n <MenuItem\n {...other}\n ref={null}\n disabled={disabled}\n isSubMenuItem\n addonAfter={<IconView collapse={collapse} prefixCls={prefixCls} isOpen={isOpen} />}\n className={[\n prefixCls ? `${prefixCls}-title` : null,\n !collapse ? `${prefixCls}-collapse-title` : null,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n />\n </OverlayTrigger>\n </li>\n );\n});\n\nSubMenu.displayName = 'uiw.SubMenu';\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLUlProps } from '@uiw/utils';\nimport { MenuItem } from './MenuItem';\nimport { MenuDivider } from './Divider';\nimport { SubMenu } from './SubMenu';\nimport './style/menu.less';\n\nexport interface MenuProps extends IProps, HTMLUlProps {\n /** 主题颜色 */\n theme?: 'light' | 'dark';\n /**\n * 垂直是否收起菜单\n * Default: `false`\n */\n inlineCollapsed?: boolean;\n /**\n * 菜单缩进宽度 Default: `10`\n */\n inlineIndent?: number;\n bordered?: boolean;\n}\n\nconst Menu = React.forwardRef<HTMLUListElement, MenuProps>((props, ref) => {\n const {\n prefixCls = 'w-menu',\n className,\n children,\n bordered,\n theme = 'light',\n inlineIndent = 10,\n inlineCollapsed,\n ...htmlProps\n } = props;\n const cls = useMemo(\n () =>\n [\n prefixCls,\n bordered ? 'w-bordered' : null,\n inlineCollapsed ? `${prefixCls}-inline-collapsed` : null,\n theme ? `${prefixCls}-${theme}` : null,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n [prefixCls, bordered, inlineCollapsed, theme, className],\n );\n\n return (\n <ul {...htmlProps} ref={ref} className={cls} data-menu=\"menu\">\n {React.Children.map(children, (child: React.ReactNode, key) => {\n if (!React.isValidElement(child)) return child;\n const props: { inlineIndent?: number; inlineCollapsed?: boolean } = {};\n // Sub Menu\n if (child.props.children && child.type === (SubMenu as any)) {\n props.inlineIndent = inlineIndent;\n }\n return React.cloneElement(child, Object.assign({ ...props }, child.props, { key: `${key}` }));\n })}\n </ul>\n );\n});\n\nMenu.displayName = 'uiw.Menu';\n\ntype Menu = typeof Menu & {\n Item: typeof MenuItem;\n SubMenu: typeof SubMenu;\n Divider: typeof MenuDivider;\n};\n\n(Menu as Menu).Item = MenuItem;\n(Menu as Menu).SubMenu = SubMenu;\n(Menu as Menu).Divider = MenuDivider;\n\nexport default Menu as Menu;\n","import Menu from './Menu';\n\nexport * from './Menu';\nexport * from './MenuItem';\nexport * from './SubMenu';\nexport * from './Divider';\n\nexport default Menu;\n","import React from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport Button from '@uiw/react-button';\nimport './style/index.less';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\n\nexport interface MessageProps extends IProps, Omit<HTMLDivProps, 'title'> {\n title?: React.ReactNode;\n icon?: IconProps['type'];\n type?: 'success' | 'warning' | 'info' | 'error';\n description?: React.ReactNode;\n showIcon?: boolean;\n isCloseButtonShown?: boolean;\n rounded?: boolean;\n onClose?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n}\n\nexport interface IMessageState {\n isOpen: boolean;\n}\n\nexport default class Message extends React.Component<MessageProps, IMessageState> {\n public static defaultProps: MessageProps = {\n prefixCls: 'w-message',\n rounded: true,\n isCloseButtonShown: false,\n };\n constructor(props: MessageProps) {\n super(props);\n this.state = {\n isOpen: true,\n };\n }\n handleClosed = (e: React.MouseEvent<HTMLButtonElement>) => {\n const { onClose } = this.props;\n this.setState({ isOpen: false });\n onClose && onClose(e);\n };\n renderIcon = () => {\n const { type, showIcon } = this.props;\n let icon = this.props.icon;\n if (!icon && showIcon) {\n switch (type) {\n case 'success':\n icon = 'circle-check';\n break;\n case 'warning':\n icon = 'warning';\n break;\n case 'info':\n icon = 'information';\n break;\n case 'error':\n icon = 'circle-close';\n break;\n default:\n break;\n }\n }\n return icon;\n };\n render() {\n const {\n prefixCls,\n className,\n type,\n title,\n description,\n showIcon,\n icon,\n rounded,\n isCloseButtonShown,\n ...elementProps\n } = this.props;\n const children = description || this.props.children;\n const cls = [\n prefixCls,\n className,\n `${prefixCls}-${type}`,\n rounded ? `${prefixCls}-rounded` : null,\n showIcon ? `${prefixCls}-icon` : null,\n showIcon ? `${prefixCls}${title ? '-title' : ''}${children ? '-description' : ''}` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const Child = (\n <div className={cls} {...elementProps}>\n {isCloseButtonShown && <Button basic onClick={this.handleClosed} icon=\"close\" type=\"light\" />}\n {showIcon && <Icon type={this.renderIcon()} />}\n <span className={`${prefixCls}-title`}>{title}</span>\n <span className={`${prefixCls}-description`}>{children}</span>\n </div>\n );\n if (!isCloseButtonShown) {\n return Child;\n }\n return (\n <CSSTransition in={this.state.isOpen} unmountOnExit timeout={300} classNames={prefixCls}>\n {Child}\n </CSSTransition>\n );\n }\n}\n","import React, { useEffect, useMemo, useState } from 'react';\nimport Input, { InputProps } from '@uiw/react-input';\nimport Popover, { PopoverProps } from '@uiw/react-popover';\nimport { IProps } from '@uiw/utils';\nimport Button from '@uiw/react-button';\nimport formatter from '@uiw/formatter';\nimport { DatePickerMonth, DatePickerYear, DatePickerCaption, DatePickerCaptionProps } from '@uiw/react-date-picker';\nimport './style/index.less';\n\nexport interface MonthPickerProps extends IProps, Omit<InputProps, 'value' | 'onChange'> {\n popoverProps?: PopoverProps;\n pickerCaptionProps?: DatePickerCaptionProps;\n value?: Date | string;\n format?: string;\n monthLabel?: string[];\n allowClear?: boolean;\n onChange?: (date?: Date, formatDate?: string) => void;\n}\n\nconst MONTH_LABEL = [\n '一月',\n '二月',\n '三月',\n '四月',\n '五月',\n '六月',\n '七月',\n '八月',\n '九月',\n '十月',\n '十一月',\n '十二月',\n];\n\nexport default function MonthPicker(props: MonthPickerProps) {\n const {\n prefixCls = 'w-monthpicker',\n format = 'YYYY/MM',\n onChange = () => {},\n className,\n popoverProps,\n pickerCaptionProps = {},\n allowClear = true,\n monthLabel = MONTH_LABEL,\n ...inputProps\n } = props;\n\n const [isOpen, setIsOpen] = useState(false);\n const [panelDate, setPanelDate] = useState(new Date());\n const [type, setType] = useState('month');\n const [date, setDate] = useState(props.value);\n\n useEffect(() => setDate(props.value), [props.value]);\n\n inputProps.value = useMemo(\n () => (typeof date === 'string' ? date : date ? formatter(format, date) : ''),\n [format, date],\n );\n\n if (allowClear && inputProps.value) {\n inputProps.addonAfter = (\n <Button\n className={`${prefixCls}-close-btn`}\n icon=\"close\"\n onClick={() => {\n setDate('');\n onChange && onChange();\n }}\n size={inputProps.size}\n basic\n type=\"light\"\n />\n );\n }\n\n function handleSelectedDate(type: 'setMonth' | 'setFullYear', num: number, paging?: boolean) {\n const curPanelDate = new Date(new Date(panelDate)[type](num));\n if (!paging) {\n setType('month');\n }\n const curDate = formatter(format, new Date(curPanelDate));\n setDate(curDate);\n setPanelDate(curPanelDate);\n onChange && onChange(curPanelDate, curDate);\n if (type === 'setMonth') {\n setIsOpen(false);\n }\n }\n\n return (\n <Popover\n trigger=\"focus\"\n placement=\"bottomLeft\"\n autoAdjustOverflow\n isOpen={isOpen}\n {...popoverProps}\n onVisibleChange={(open) => setIsOpen(open)}\n content={\n <div className={`${prefixCls}-popover`}>\n <DatePickerCaption\n panelDate={panelDate}\n monthLabel={monthLabel}\n {...pickerCaptionProps}\n onSelected={(captionType) => {\n if (/^(month|year)$/.test(captionType as string)) {\n setType(captionType);\n } else {\n const year = new Date(panelDate).getFullYear();\n const curPanelDate = new Date(new Date(panelDate).setFullYear(type === 'next' ? year + 1 : year - 1));\n setPanelDate(curPanelDate);\n }\n }}\n />\n {type === 'month' && (\n <DatePickerMonth\n panelDate={panelDate}\n monthLabel={monthLabel}\n onSelected={(month, paging) => handleSelectedDate('setMonth', month, paging)}\n />\n )}\n {type === 'year' && (\n <DatePickerYear\n panelDate={panelDate}\n onSelected={(year, paging) => handleSelectedDate('setFullYear', year, paging)}\n />\n )}\n </div>\n }\n >\n <Input\n placeholder=\"请输入日期\"\n readOnly\n {...(inputProps as any)}\n className={[prefixCls, className].filter(Boolean).join(' ').trim()}\n />\n </Popover>\n );\n}\n","import React from 'react';\nimport Alert, { AlertProps } from '@uiw/react-alert';\nimport { IProps } from '@uiw/utils';\nimport { NotificationCreateProps } from './index';\n\nexport type Placement = 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';\n\nexport interface ContainerProps extends IProps {\n placement?: Placement;\n}\nexport interface ContainerState {\n placement?: Placement;\n notifys: ContainerNotifys;\n}\n\nexport type ContainerNotifys = {\n [placement: string]: {\n [key: string]: NotificationCreateProps;\n };\n};\n\nconst notifys: ContainerNotifys = {};\nconst timer: { [key: string]: any } = {};\n\nexport default class Container extends React.Component<ContainerProps, ContainerState> {\n public static defaultProps: ContainerProps = {\n prefixCls: 'w-notify',\n placement: 'topRight',\n };\n public state: ContainerState = {\n notifys: {},\n };\n public create(props: NotificationCreateProps) {\n const { placement, key } = props;\n if (!notifys[placement as Placement]) {\n notifys[placement as Placement] = {};\n }\n props.isOpen = false;\n notifys[placement as Placement][key as string] = props;\n if (props.duration) {\n timer[key as string] = setTimeout(() => {\n this.closed(key as string, placement);\n }, props.duration);\n }\n this.setState(\n {\n notifys,\n placement,\n },\n () => {\n notifys[placement as Placement][key as string].isOpen = true;\n this.setState({ notifys });\n },\n );\n }\n public closed(key: string, placement?: Placement) {\n if (!key || !placement || !notifys[placement][key]) {\n return;\n }\n notifys[placement][key].isOpen = false;\n const props: NotificationCreateProps = notifys[placement][key];\n this.setState({ notifys }, () => {\n clearTimeout(timer[key]);\n delete timer[key];\n delete notifys[placement][key];\n if (props && props.willUnmount) {\n props.willUnmount(props, notifys);\n }\n });\n }\n render() {\n const { prefixCls } = this.props;\n const { placement } = this.state;\n return (\n <React.Fragment>\n {placement &&\n Object.keys(this.state.notifys[placement]).map((key) => {\n const { description, isOpen, ...alertProps } = this.state.notifys[placement][key];\n if (alertProps.type === 'open') {\n delete alertProps.type;\n }\n return (\n <Alert\n className={prefixCls}\n key={key}\n useButton={false}\n width={320}\n {...(alertProps as AlertProps)}\n usePortal={false}\n hasBackdrop={false}\n isOpen={isOpen}\n content={description}\n />\n );\n })}\n </React.Fragment>\n );\n }\n}\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { AlertProps } from '@uiw/react-alert';\nimport { randomid } from '@uiw/utils';\nimport Container, { Placement, ContainerNotifys } from './Container';\nimport './style/index.less';\n\nexport interface NotificationCreateProps extends Omit<AlertProps, 'type'> {\n placement?: Placement;\n description?: React.ReactNode;\n type?: 'primary' | 'danger' | 'open' | 'success' | 'warning' | 'info' | 'error';\n duration?: number;\n key?: string;\n willUnmount?: (props: NotificationCreateProps, notifys: ContainerNotifys) => void;\n}\n\nexport type Notifys = { [key: string]: any };\nexport type NotifysDom = { [key: string]: HTMLDivElement };\n\nconst notifys: Notifys = {};\nconst notifysDom: NotifysDom = {};\n\nexport interface NotificationProps {\n (props: NotificationCreateProps, type: NotificationCreateProps['type']): void;\n [key: string]: () => void;\n}\n\nfunction NotificationCreate(props: NotificationCreateProps, type: NotificationCreateProps['type'] = 'open') {\n if (!props.placement) {\n props.placement = 'topRight';\n }\n props.type = type as NotificationCreateProps['type'];\n if (!props.icon && props.icon !== null) {\n switch (props.type) {\n case 'success':\n props.icon = 'circle-check';\n break;\n case 'warning':\n props.icon = 'warning';\n break;\n case 'info':\n props.icon = 'information';\n break;\n case 'error':\n props.icon = 'circle-close';\n break;\n default:\n break;\n }\n }\n switch (props.type) {\n case 'info':\n props.type = 'primary';\n break;\n case 'error':\n props.type = 'danger';\n break;\n default:\n break;\n }\n\n if (props.placement && !notifys[props.placement]) {\n const div = document.createElement('div');\n document.body.appendChild(div);\n div.className = ['w-notify-warpper', props.placement].filter(Boolean).join(' ').trim();\n notifysDom[props.placement] = div;\n notifys[props.placement] = ReactDOM.render(<Container />, div);\n }\n\n if (props.duration !== null) {\n props.duration = (props.duration || 4.5) * 1000;\n }\n\n if (notifys[props.placement]) {\n notifys[props.placement].create({\n ...props,\n duration: props.duration,\n key: randomid(),\n willUnmount(nprops: any, notifysChild: ContainerNotifys) {\n if (!nprops) return;\n nprops.onClose && nprops.onClose();\n const keys = Object.keys(notifysChild[props.placement as Placement]);\n if (keys.length === 0 && notifys[props.placement as Placement]) {\n delete notifys[props.placement as Placement];\n if (notifysDom[props.placement as Placement]) {\n document.body.removeChild(notifysDom[props.placement as Placement]);\n }\n }\n },\n });\n }\n}\n\n['open', 'success', 'warning', 'info', 'error'].forEach((type) => {\n (NotificationCreate as NotificationProps)[type] = (options: NotificationCreateProps = {}) => {\n return NotificationCreate(options, type as NotificationCreateProps['type']);\n };\n});\n\nexport interface NotificationApi {\n open(option: NotificationCreateProps): void;\n success(option: NotificationCreateProps): void;\n warning(option: NotificationCreateProps): void;\n info(option: NotificationCreateProps): void;\n error(option: NotificationCreateProps): void;\n}\n\nexport default NotificationCreate as unknown as NotificationApi;\n","/**\n * Returns a random text\n */\nexport function randomid(): string {\n return parseInt(String(Math.random() * 1e15), 10).toString(36);\n}\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { IProps, HTMLUlProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface PaginationProps extends IProps, Omit<HTMLUlProps, 'onChange'> {\n prefixCls?: string;\n alignment?: 'left' | 'center' | 'right';\n size?: 'default' | 'small';\n total?: number;\n pageSize?: number;\n divider?: boolean;\n current?: number;\n onChange?: (current: number, total: number, pageSize: number) => void;\n}\n\nexport interface PaginationState {\n current: number;\n}\n\nexport interface PaginationItemSourceData {\n type?: string;\n disabled?: boolean;\n active?: boolean;\n label?: number | string;\n goto?: number;\n}\n\nexport default function Pagination(props: PaginationProps) {\n const {\n className,\n style,\n prefixCls = 'w-pagination',\n alignment = 'left',\n size = 'default',\n total = 0,\n pageSize = 10, // The number of pages displayed.\n current: currentNumber = 1,\n onChange = () => null,\n divider,\n ...other\n } = props;\n\n const [current, setCurrent] = useState(currentNumber);\n useEffect(() => setCurrent(currentNumber), [currentNumber]);\n\n const cls = [prefixCls, className, divider ? 'divider' : null, size].filter(Boolean).join(' ').trim();\n\n const initPageSoure = useMemo(() => {\n const data: PaginationItemSourceData[] = [{ type: 'prev', disabled: current === 1 }];\n const count = Math.ceil(total / pageSize);\n const itemCount = count <= 5 ? count : 5;\n let num = 0;\n let basic = 0;\n if (current > 3 && count > 5) {\n data.push({ label: 1 });\n }\n if (current > 4 && count > 6) {\n data.push({ type: 'jumpPrev', label: '•••', goto: 5 });\n }\n while (num < itemCount) {\n num += 1;\n if (current > 3 && count > 5) {\n basic = current - 3;\n }\n let label = num + basic;\n if (count - current === 0 && count > 5) {\n label -= 2;\n }\n if (count - current === 1 && count > 5) {\n label -= 1;\n }\n if (label <= count) {\n data.push({ label, active: current === label });\n }\n }\n if (current + 3 < count && count > 6) {\n data.push({ type: 'jumpNext', label: '•••', goto: 5 });\n }\n if (current + 2 < count && count > 5) {\n data.push({ label: count });\n }\n data.push({ type: 'next', disabled: current === count });\n return data;\n // return [\n // { type: 'prev', disabled: true },\n // { type: 'jumpPrev', label: '•••', goto: 5 },\n // { label: 1 },\n // { label: 2, active: true },\n // { label: 3 },\n // { label: 4 },\n // { type: 'jumpPrev', label: '•••', goto: 5 },\n // { type: 'next' },\n // ];\n }, [current, total, pageSize]);\n\n function handleClick(item: PaginationItemSourceData) {\n if (item.active || item.disabled) {\n return;\n }\n const count = Math.ceil(total / pageSize);\n const state = {} as PaginationState;\n if (item.label) {\n state.current = item.label as number;\n }\n if (item.type === 'prev') {\n state.current = current - 1 > 0 ? current - 1 : 1;\n }\n if (item.type === 'next') {\n state.current = current + 1 <= count ? current + 1 : count;\n }\n if (/^(jumpPrev|jumpNext)/.test(item.type as string) && item.goto) {\n state.current = item.type === 'jumpPrev' ? current - item.goto : current + item.goto;\n if (state.current > count) {\n state.current = count;\n }\n if (state.current < 1) {\n state.current = 1;\n }\n }\n\n setCurrent(state.current);\n onChange && onChange(state.current, total as number, pageSize as number);\n }\n\n return (\n <ul className={cls} style={{ ...style, textAlign: alignment }} {...other}>\n {initPageSoure.map((item: PaginationItemSourceData, idx) => {\n // eslint-disable-next-line jsx-a11y/anchor-is-valid\n let label = <a>{item.label}</a>;\n if (/^(prev|next)$/.test(item.type as string)) {\n // eslint-disable-next-line jsx-a11y/anchor-is-valid\n label = <a className={`arrow ${item.type}`} />;\n }\n return (\n <li\n className={[item.active ? 'active' : null, item.disabled ? 'disabled' : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n onClick={() => handleClick(item)}\n key={idx}\n >\n {label}\n </li>\n );\n })}\n </ul>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport { IProps, noop } from '@uiw/utils';\nimport Input, { InputProps } from '@uiw/react-input';\nimport './style/input.less';\n\nexport interface PinCodeProps extends IProps {\n value?: string[];\n disabled?: boolean;\n onChange?: (value: string[]) => void;\n onBlur?: InputProps['onBlur'];\n onFocus?: InputProps['onFocus'];\n autoFocus?: boolean;\n size?: InputProps['size'];\n placeholder?: string;\n}\n\nfunction InternalPinCode(props: PinCodeProps = {}, ref: React.ForwardedRef<HTMLDivElement>) {\n const {\n prefixCls = 'w-pin-code',\n placeholder = '○',\n value = [],\n autoFocus,\n className,\n size = 'default',\n style,\n disabled,\n onChange = noop,\n onBlur = noop,\n onFocus = noop,\n ...otherProps\n } = props;\n const [input] = useState<{\n [key: string]: HTMLInputElement;\n }>({});\n const [placehold, setPlacehold] = useState(placeholder);\n const [values, setValues] = useState(value);\n const cls = [prefixCls, className, size ? `${prefixCls}-${size}` : null, disabled ? 'disabled' : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n function handleChange(e: React.ChangeEvent<HTMLInputElement>, idx: number) {\n let val = e.target.value;\n val = val.charAt(val.length - 1);\n const arr = [...values];\n if (Number(val) > -1 && val) {\n e.currentTarget.value = val;\n arr[idx] = val;\n if (input[idx + 1]) {\n input[idx + 1].focus();\n }\n setValues(arr);\n } else if (!val) {\n arr[idx] = '';\n setValues(arr);\n }\n }\n function handleKeyDown(e: React.KeyboardEvent<HTMLInputElement>, idx: number) {\n let val = e.currentTarget.value;\n const key = e.key.toLocaleLowerCase();\n if (!val && input[idx - 1] && /(backspace|delete)/.test(key)) {\n input[idx - 1].focus();\n }\n }\n useEffect(() => {\n if (values !== value) {\n onChange(values);\n }\n }, [values]);\n\n function handleBlur(event: React.FocusEvent<HTMLInputElement>) {\n setPlacehold(placeholder);\n onBlur(event);\n }\n function handleFocus(event: React.FocusEvent<HTMLInputElement>) {\n setPlacehold('');\n onFocus(event);\n }\n\n return (\n <div className={cls} style={style} {...otherProps} ref={ref}>\n {[...values].map((val, key) => {\n const inpProps: InputProps = {\n min: 0,\n type: 'text',\n inputMode: 'numeric',\n autoComplete: 'off',\n value: val,\n onChange: (e) => handleChange(e, key),\n onKeyDown: (e) => handleKeyDown(e, key),\n onBlur: (e) => handleBlur(e),\n onFocus: (e) => handleFocus(e),\n className: `${prefixCls}-inner`,\n placeholder: placehold,\n disabled,\n size,\n };\n if (autoFocus && key === 0) {\n inpProps.autoFocus = true;\n }\n const child = (\n <Input\n ref={(instance) => {\n if (instance) {\n input[key] = instance;\n }\n }}\n {...inpProps}\n key={key}\n />\n );\n return child;\n })}\n </div>\n );\n}\n\nexport default React.forwardRef<HTMLDivElement, PinCodeProps>(InternalPinCode);\n","import React from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\n\nexport function IconProgress<T>(props: { type: IconProps<T>['type'] }): JSX.Element {\n return <Icon type={props.type} />;\n}\n","import React from 'react';\nimport { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { IconProgress } from './utils';\nimport './style/index.less';\nimport './style/circle.less';\n\nexport type Status = 'success' | 'active' | 'exception';\nexport interface ProgressCircleProps<T> extends IProps, HTMLDivProps {\n type?: IconProps<T>['type'];\n status?: Status;\n showText?: boolean; // 是否显示进度条文字内容\n percent?: number; // 百分比(必填)\n width?: number; // 圆圈进度条画布宽度\n strokeWidth?: number; // 进度条大小设置\n format?: (percent: number) => React.ReactNode;\n}\n\nexport default class Circle<T> extends React.Component<ProgressCircleProps<T>> {\n public static defaultProps: ProgressCircleProps<{}> = {\n prefixCls: 'w-progress',\n showText: true,\n percent: 0, // 百分比(必填)\n width: 126, // 圆圈进度条画布宽度\n strokeWidth: 6, // 进度条大小设置\n };\n relativeStrokeWidth(type: 'track' | 'bg' | undefined, elm: SVGPathElement) {\n const { strokeWidth, percent } = this.props;\n if (elm && elm.parentNode) {\n const { width } = (elm.parentNode as SVGAElement).getBoundingClientRect();\n const _strokeWidth: string = (((strokeWidth as number) / width) * 100).toFixed(1);\n const radius = parseInt((50 - parseFloat(_strokeWidth) / 2).toString(), 10);\n elm.setAttribute('stroke-width', _strokeWidth);\n elm.setAttribute(\n 'd',\n `M 50 50 m 0 -${radius} a ${radius} ${radius} 0 1 1 0 ${radius * 2} a ${radius} ${radius} 0 1 1 0 -${\n radius * 2\n }`,\n );\n if (type === 'track') {\n // 计算周长\n const perimeter = 2 * Math.PI * radius;\n elm.setAttribute(\n 'style',\n `stroke-dasharray:${perimeter}px,${perimeter}px;stroke-dashoffset:${\n (1 - (percent as number) / 100) * perimeter\n }px;transition: stroke-dashoffset 0.6s ease 0s, stroke 0.6s ease;`,\n );\n }\n }\n }\n render() {\n const { prefixCls, style, type, className, showText, percent, format, strokeWidth, width, status, ...resetProps } =\n this.props;\n const cls = [\n prefixCls,\n className,\n `${prefixCls}-circle`,\n showText ? `${prefixCls}-show-text` : null,\n status ? `${prefixCls}-status-${status}` : null,\n parseInt((percent as number).toString(), 10) >= 100 ? `${prefixCls}-status-success` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n let progressInfo;\n const progressStatus =\n parseInt((percent as number).toString(), 10) >= 100 && !('status' in this.props) ? 'success' : status;\n if (showText) {\n let percentView: React.ReactNode = `${percent}%`;\n if (progressStatus === 'exception') {\n percentView = <IconProgress type=\"close\" />;\n } else if (progressStatus === 'success') {\n percentView = <IconProgress type=\"check\" />;\n }\n progressInfo = (\n <span className={`${prefixCls}-text`} style={{ fontSize: (width as number) * 0.16 + 6 }}>\n {format ? format(percent as number) : percentView}\n </span>\n );\n }\n return (\n <div className={cls} style={style} {...resetProps}>\n <svg viewBox=\"0 0 100 100\" width={`${width}`}>\n <path ref={this.relativeStrokeWidth.bind(this, 'bg')} className={`${prefixCls}-trail`} fill=\"none\" />\n <path\n ref={this.relativeStrokeWidth.bind(this, 'track')}\n strokeLinecap=\"round\"\n className={`${prefixCls}-stroke`}\n fill=\"none\"\n />\n </svg>\n {progressInfo}\n </div>\n );\n }\n}\n","import React from 'react';\nimport { IconProgress } from './utils';\nimport { ProgressCircleProps } from './Circle';\nimport './style/index.less';\nimport './style/line.less';\n\nexport interface ProgressLineProp<T> extends ProgressCircleProps<T> {}\n\nexport default class Line<T> extends React.Component<ProgressLineProp<T>> {\n public static defaultProps: ProgressLineProp<{}> = {\n prefixCls: 'w-progress',\n showText: true, // 是否显示进度条文字内容\n percent: 0, // 百分比(必填)\n width: 126, // 圆圈进度条画布宽度\n strokeWidth: 6, // 进度条大小设置\n };\n render() {\n const { prefixCls, style, className, showText, percent, format, strokeWidth, width, status, ...resetProps } =\n this.props;\n const cls = [\n prefixCls,\n className,\n `${prefixCls}-line`,\n showText ? `${prefixCls}-show-text` : null,\n status ? `${prefixCls}-status-${status}` : null,\n parseInt((percent as number).toString(), 10) >= 100 ? `${prefixCls}-status-success` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n let progressInfo;\n if (showText) {\n const progressStatus =\n parseInt((percent as number).toString(), 10) >= 100 && !('status' in this.props) ? 'success' : status;\n let percentView: React.ReactNode = `${percent}%`;\n if (progressStatus === 'exception') {\n percentView = <IconProgress type=\"circle-close\" />;\n } else if (progressStatus === 'success') {\n percentView = <IconProgress type=\"circle-check\" />;\n }\n progressInfo = <span className={`${prefixCls}-text`}>{format ? format(percent as number) : percentView}</span>;\n }\n const percentStyle = {\n width: `${percent}%`,\n height: strokeWidth,\n };\n return (\n <div className={cls} style={style} {...resetProps}>\n <div className={`${prefixCls}-bar`}>\n <div className={`${prefixCls}-inner`}>\n <div className={`${prefixCls}-bg`} style={percentStyle} />\n </div>\n </div>\n {progressInfo}\n </div>\n );\n }\n}\n","import Circle from './Circle';\nimport Line from './Line';\n\nexport * from './Circle';\nexport * from './Line';\n\nexport default {\n Line,\n Circle,\n};\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLDivProps, HTMLSpanProps, noop } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface RateProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n value?: number;\n readOnly?: boolean;\n allowHalf?: boolean;\n count?: number;\n color?: string;\n disabled?: boolean;\n character?: React.ReactNode;\n onChange?: (key: number) => void;\n onHoverChange?: (key: number) => void;\n}\n\nexport default function Rate(props: RateProps = {}) {\n const {\n prefixCls = 'w-rate',\n count = 5,\n value: defValue = 0,\n className,\n allowHalf,\n character = '★',\n readOnly = false,\n disabled,\n onChange = noop,\n onHoverChange = noop,\n color,\n ...other\n } = props;\n const [value, setValue] = useState(defValue);\n const [hoverCount, setHoverCount] = useState(-1);\n const cls = [prefixCls, className, disabled ? 'disabled' : null].filter(Boolean).join(' ').trim();\n const [prevValue, setPrevValue] = useState<number>();\n if (defValue !== prevValue) {\n setPrevValue(defValue);\n }\n\n useMemo(() => {\n if (value !== prevValue) {\n setValue(defValue);\n }\n }, [prevValue]);\n\n function onMouseLeave() {\n setHoverCount(-1);\n }\n\n function getValue(e: React.MouseEvent<HTMLElement>, key: number) {\n e.persist();\n let currentValue = key;\n const isLeft =\n e.clientX - e.currentTarget.getBoundingClientRect().left <= e.currentTarget.getBoundingClientRect().width / 2;\n if (allowHalf) {\n e.persist();\n currentValue = isLeft ? key + 0.5 : key + 1;\n } else {\n currentValue = key + 1;\n }\n return currentValue;\n }\n\n function onMouseMove(e: React.MouseEvent<HTMLElement>, key: number) {\n const currentValue = getValue(e, key);\n if (hoverCount !== currentValue) {\n setHoverCount(currentValue);\n onHoverChange(currentValue);\n }\n }\n function onClick(e: React.MouseEvent<HTMLElement>, key: number) {\n if (readOnly) return;\n const currentValue = getValue(e, key);\n setValue(currentValue);\n onChange(currentValue);\n }\n return (\n <div {...other} className={cls} onMouseLeave={() => onMouseLeave()}>\n {[...Array(count)].map((_, idx) => {\n const halfon =\n (value <= idx + 0.5 && Math.ceil(value) - 1 === idx && hoverCount === -1) || hoverCount === idx + 0.5;\n const activeCls = [\n `${prefixCls}-hight`,\n idx + 1 <= value && hoverCount === -1 ? 'star-on' : null,\n idx + 1 <= hoverCount ? 'hover-on' : null,\n halfon ? 'half-on' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const props: HTMLSpanProps = {};\n if (!readOnly) {\n props.onClick = (e) => onClick(e, idx);\n props.onMouseMove = (e) => onMouseMove(e, idx);\n }\n return (\n <span key={idx} {...props}>\n <span style={{ color }} className={activeCls}>\n {character}\n </span>\n <span className={`${prefixCls}-bg`}>{character}</span>\n </span>\n );\n })}\n </div>\n );\n}\n","import React from 'react';\nimport Dropdown, { DropdownProps } from '@uiw/react-dropdown';\nimport Icon from '@uiw/react-icon';\nimport Menu from '@uiw/react-menu';\nimport Input from '@uiw/react-input';\nimport { IProps } from '@uiw/utils';\nimport { useState } from 'react';\nimport { useRef } from 'react';\nimport { useEffect } from 'react';\n\nexport interface SearchSelectProps extends IProps, DropdownProps {\n size?: 'large' | 'default' | 'small';\n loading: boolean;\n showSearch?: boolean;\n allowClear: boolean;\n defaultValue?: string | number;\n value?: string | number;\n option: {\n label: string;\n value: string | number;\n key: any;\n [propName: string]: any;\n }[];\n onSelect?: (value: string | number) => void;\n onSearch?: (value: string) => void;\n onChange?: (value: string) => void;\n}\n\nexport interface MenuItemData {\n label: string;\n value: string | number;\n [keyName: string]: any;\n}\n\nexport default function SearchSelect(props: SearchSelectProps) {\n const {\n allowClear = false,\n disabled = false,\n size = 'default',\n option = [],\n loading = false,\n prefixCls,\n className,\n style,\n isOpen,\n value,\n defaultValue,\n showSearch,\n placeholder,\n onSearch,\n onChange,\n onSelect,\n ...others\n } = props;\n\n const [innerIsOpen, setInnerIsOpen] = useState(false);\n const [selectedValue, setSelectedValue] = useState(value);\n const [selectedLabel, setSelectedLabel] = useState('');\n const [selectIconType, setSelectIconType] = useState('');\n const divRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (defaultValue) {\n const defaultMenuItem = option.find((menuItem: MenuItemData) => defaultValue === menuItem.value);\n setSelectedValue(defaultValue);\n setSelectedLabel(defaultMenuItem ? defaultMenuItem.label : '');\n }\n }, []);\n\n useEffect(() => {\n if (value !== selectedValue) {\n setSelectedValue(value);\n }\n }, [value]);\n\n function handleItemClick(item: MenuItemData) {\n setInnerIsOpen(false);\n setSelectedValue(item.value);\n setSelectedLabel(item.label);\n onSelect && onSelect(item.value);\n // 支持form组件\n handleSelectChange(item.value);\n }\n\n // 渲染icon\n function renderSelectIcon(type: string) {\n let selectIconType;\n if (type === 'enter' && allowClear && selectedValue) {\n selectIconType = 'close';\n } else {\n selectIconType = '';\n }\n setSelectIconType(selectIconType);\n }\n // handle change\n function handleInputChange(e: React.ChangeEvent<HTMLInputElement>) {\n const value = e.target.value;\n setInnerIsOpen(!!value);\n setSelectedLabel(value);\n setSelectIconType(showSearch && value ? 'loading' : '');\n showSearch && onSearch && onSearch(value);\n handleSelectChange(value);\n }\n // 清除选中的值\n function resetSelectedValue() {\n setInnerIsOpen(false);\n setSelectedValue('');\n setSelectedLabel('');\n setSelectIconType('');\n handleSelectChange('');\n }\n function handleSelectChange(value: any) {\n onChange && onChange(value);\n }\n\n return (\n <Dropdown\n trigger=\"focus\"\n style={{ marginTop: 5 }}\n disabled={option && option.length > 0 ? false : true}\n {...others}\n onVisibleChange={(open) => setInnerIsOpen(open)}\n isOpen={innerIsOpen}\n menu={\n <Menu\n bordered\n style={{\n minHeight: 25,\n maxHeight: 280,\n overflowY: 'scroll',\n width: divRef.current ? divRef.current.offsetWidth : 'auto',\n }}\n >\n {!option || option.length === 0 ? (\n <div style={{ color: '#c7c7c7', fontSize: 12 }}>{loading ? '正在加载数据...' : '没有数据'}</div>\n ) : (\n option.map((item, idx) => {\n const active = selectedValue === item.value;\n return <Menu.Item active={active} key={idx} text={item.label} onClick={() => handleItemClick(item)} />;\n })\n )}\n </Menu>\n }\n >\n <div\n ref={divRef}\n onMouseOver={() => renderSelectIcon('enter')}\n onMouseLeave={() => renderSelectIcon('leave')}\n style={style}\n >\n <Input\n readOnly={!showSearch}\n size={size}\n disabled={disabled}\n onChange={handleInputChange}\n value={selectedLabel}\n placeholder={placeholder}\n addonAfter={\n (selectIconType === 'close' || (selectIconType === 'loading' && loading)) && (\n <Icon type={selectIconType} spin={loading && selectIconType === 'loading'} onClick={resetSelectedValue} />\n )\n }\n />\n </div>\n </Dropdown>\n );\n}\n","import React from 'react';\n\nexport default React.forwardRef<HTMLOptionElement, React.InputHTMLAttributes<HTMLOptionElement>>((props, ref) => (\n <option {...props} ref={ref} />\n));\n","import React from 'react';\n\nexport default React.forwardRef<HTMLOptGroupElement, React.InputHTMLAttributes<HTMLOptGroupElement>>((props, ref) => (\n <optgroup {...props} ref={ref} />\n));\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\nimport Option from './Option';\nimport Group from './Group';\nimport './style/index.less';\n\nexport interface SelectProps extends IProps, Omit<React.SelectHTMLAttributes<HTMLSelectElement>, 'size'> {\n size?: 'large' | 'default' | 'small';\n}\n\nconst Select = React.forwardRef<HTMLSelectElement, SelectProps>((props, ref) => {\n const { prefixCls = 'w-select', className, size = 'default', ...other } = props;\n return (\n <select\n {...other}\n ref={ref}\n className={[prefixCls, className, size ? `${prefixCls}-${size}` : null].filter(Boolean).join(' ').trim()}\n />\n );\n});\n\ntype Select = typeof Select & {\n Option: typeof Option;\n Group: typeof Group;\n};\n\n(Select as Select).Option = Option;\n(Select as Select).Group = Group;\n\nexport default Select as Select;\n","import React, { useEffect, useRef, useState } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Step, { StepProps } from './Step';\n\nexport interface StepsProps<T> extends IProps, HTMLDivProps {\n status?: StepProps<T>['status'];\n progressDot?: StepProps<T>['progressDot'];\n direction?: 'horizontal' | 'vertical';\n /**\n * 指定当前步骤,从 `0` 开始记数。\n */\n current?: number;\n}\n\nfunction InternalSteps<T>(props: StepsProps<T>) {\n const {\n prefixCls = 'w-steps',\n style = {},\n className,\n children,\n current,\n status = 'process',\n progressDot = false,\n direction = 'horizontal',\n ...resetProps\n } = props;\n\n const warpRef = useRef<HTMLDivElement>(null);\n const [lastStepOffsetWidth, setLastStepOffsetWidth] = useState(0);\n const filteredChildren = React.Children.toArray(children).filter((c) => !!c);\n const lastIndex = filteredChildren.length - 1; // 最后一个节点的索引数字\n const classString = [prefixCls, `${prefixCls}-${direction}`, !!progressDot ? `${prefixCls}-dot` : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n useEffect(() => calcStepOffsetWidth());\n\n // 计算每一步的宽度\n function calcStepOffsetWidth() {\n const domNode = warpRef.current;\n if (domNode && domNode.lastChild) {\n const width = ((domNode.lastChild as HTMLElement).offsetWidth || 0) + 1;\n if (width === lastStepOffsetWidth || Math.abs(width - lastStepOffsetWidth) <= 3) {\n return;\n }\n setLastStepOffsetWidth(width);\n }\n }\n\n return (\n <div className={classString} style={style} {...resetProps} ref={warpRef}>\n {React.Children.map(children, (child: any, index) => {\n const childProps = {\n stepNumber: `${index + 1}`,\n prefixCls,\n progressDot,\n ...child.props,\n };\n if (index !== lastIndex && direction !== 'vertical') {\n childProps.itemWidth = `${100 / lastIndex}%`;\n childProps.adjustMarginRight = -Math.round(lastStepOffsetWidth / lastIndex + 1);\n }\n\n if (progressDot && direction !== 'vertical') {\n childProps.itemWidth = `${100 / filteredChildren.length}%`;\n childProps.adjustMarginRight = 0;\n }\n // 错误前面\n if (status === 'error' && index === (current as number) - 1) {\n childProps.className = `${prefixCls}-next-error`;\n }\n if (!child.props.status) {\n if (index === current) {\n childProps.status = status;\n } else if (index < (current as number)) {\n childProps.status = 'finish';\n } else {\n childProps.status = 'wait';\n }\n }\n return React.cloneElement(child, childProps);\n })}\n </div>\n );\n}\n\ntype Steps = typeof InternalSteps & {\n Step: typeof Step;\n};\n\n(InternalSteps as Steps).Step = Step;\n\nexport default InternalSteps as Steps;\n","import React, { CSSProperties } from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface StepProps extends IProps, Omit<HTMLDivProps, 'title'> {\n title?: React.ReactNode;\n description?: React.ReactNode;\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n progressDot?: boolean;\n itemWidth?: number;\n stepNumber?: string;\n adjustMarginRight?: number;\n icon?: IconProps['type'];\n}\n\nexport default function Step(props: StepProps) {\n const {\n prefixCls = 'w-steps',\n className,\n style,\n status,\n itemWidth,\n icon,\n adjustMarginRight,\n stepNumber,\n title,\n description,\n progressDot,\n ...restProps\n } = props;\n const classString = [\n `${prefixCls}-item`,\n `${prefixCls}-item-${status}`,\n className,\n icon ? `${prefixCls}-custom` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const stepItemStyle: CSSProperties = { ...style };\n const stepItemDotStyle: CSSProperties = {};\n if (itemWidth) {\n stepItemStyle.width = itemWidth;\n }\n if (adjustMarginRight) {\n stepItemStyle.marginRight = adjustMarginRight;\n if (progressDot) {\n stepItemDotStyle.paddingRight = Math.abs(adjustMarginRight);\n }\n }\n let iconNode = null;\n if (progressDot) {\n iconNode = <span className={`${prefixCls}-dot`} />;\n } else if (icon && typeof icon !== 'string') {\n iconNode = <span className={`${prefixCls}-icon`}>{icon}</span>;\n } else if ((icon && typeof icon === 'string') || status === 'finish' || status === 'error') {\n iconNode = (\n <Icon\n type={[\n icon && typeof icon === 'string' ? `${icon}` : null,\n !icon && status === 'finish' ? 'check' : null,\n !icon && status === 'error' ? 'close' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n />\n );\n } else {\n iconNode = <span className={`${prefixCls}-icon`}>{stepNumber}</span>;\n }\n return (\n <div {...restProps} className={classString} style={stepItemStyle}>\n <div className={`${prefixCls}-item-tail`} style={stepItemDotStyle}>\n <i />\n </div>\n <div className={`${prefixCls}-item-head`}>\n <div className={[`${prefixCls}-item-inner`, !!icon && 'is-icon'].filter(Boolean).join(' ').trim()}>\n {iconNode}\n </div>\n </div>\n <div className={`${prefixCls}-item-main`}>\n <div className={`${prefixCls}-item-title`}>{title}</div>\n {description && <div className={`${prefixCls}-item-description`}>{description}</div>}\n </div>\n </div>\n );\n}\n","import Steps from './Steps';\n\nexport * from './Steps';\nexport * from './Step';\n\nexport default Steps;\n","import React from 'react';\nimport { HTMLDivProps } from '@uiw/utils';\nimport { SliderProps, SliderMarks } from './index';\n\ninterface TooltipProps extends HTMLDivProps {\n prefixCls: string;\n data: number[];\n step: number;\n min: number;\n vertical: boolean;\n marks: SliderProps['marks'];\n markRender: (stepValue: number, mark?: SliderMarks) => React.ReactNode;\n}\n\nexport default function Dots(props: TooltipProps) {\n const { prefixCls, data, step, min, vertical, marks, markRender } = props;\n return (\n <div className={`${prefixCls}-dots`}>\n {data.map((val, idx) => {\n const stepValue = idx * step + min;\n return (\n <div\n key={idx}\n style={{\n [vertical ? 'top' : 'left']: `${val}%`,\n }}\n className={[`${prefixCls}-mark`, marks && marks !== true && !marks[stepValue] ? 'no-marks' : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {marks === true && markRender && markRender(stepValue)}\n {marks !== true && marks && marks[stepValue] && markRender && markRender(stepValue, marks[stepValue])}\n </div>\n );\n })}\n </div>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Dots from './Dots';\nimport './style/index.less';\n\nexport type SliderMarks = {\n style?: React.CSSProperties;\n label?: React.ReactNode;\n};\n\nexport interface SliderProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n value?: number | number[];\n min?: number;\n max?: number;\n marks?: boolean | Record<number, SliderMarks>;\n dots?: boolean;\n range?: boolean;\n vertical?: boolean;\n step?: number;\n disabled?: boolean;\n tooltip?: boolean;\n progress?: boolean | string;\n renderMarks?: (value: number) => JSX.Element;\n onChange?: (value: number | number[]) => void;\n onClick?: (e: React.MouseEvent<HTMLElement>) => void;\n}\n\nexport default function Slider(props: SliderProps) {\n const {\n prefixCls = 'w-slider',\n value = 0,\n min = 0,\n max = 100,\n dots = false,\n step = 1,\n disabled = false,\n progress = true,\n tooltip = false,\n className,\n marks,\n renderMarks,\n vertical,\n onChange,\n ...other\n } = props;\n\n const bar = React.useRef<HTMLDivElement>(null);\n const slider = React.useRef<HTMLDivElement>(null);\n const indexBar = React.useRef<number>();\n const startX = React.useRef<number>();\n const curValue = React.useRef<number | number[]>();\n const barWidth = React.useRef<number>();\n const barOffsetLeft = React.useRef<number>();\n const move = React.useRef<boolean>();\n const [arrValue, setArrValue] = useState(Array.isArray(value) ? value : [value]);\n\n useEffect(() => setArrValue(Array.isArray(value) ? value : [value]), [value]);\n\n other.onClick = (evn: React.MouseEvent<HTMLElement>) => {\n if (move.current !== undefined) {\n return;\n }\n const markOffset = slider.current!.getBoundingClientRect();\n const vals = getWidthToValue(evn[vertical ? 'clientY' : 'clientX'] - markOffset[vertical ? 'y' : 'x']);\n const curr = getRangeValue(vals);\n handleChange(curr);\n };\n\n function getRangeValue(val: number | number[]) {\n if (!Array.isArray(value)) {\n return Array.isArray(val) ? val : [val];\n }\n const newData = [...arrValue];\n const val1 = newData[0];\n const val2 = newData[1];\n if ((val1 < val2 && val1 > val) || (val1 > val2 && val1 < val)) {\n newData[0] = val as number;\n }\n if ((val1 < val2 && val2 < val) || (val1 > val2 && val2 > val)) {\n newData[1] = val as number;\n }\n\n if (val1 > val && val2 < val) {\n const half = val2 + (val1 - val2) / 2;\n if (half >= val) {\n newData[1] = val as number;\n }\n if (half < val) {\n newData[0] = val as number;\n }\n }\n if (val2 > val && val1 < val) {\n const half = val1 + (val2 - val1) / 2;\n if (half >= val) {\n newData[0] = val as number;\n }\n if (half < val) {\n newData[1] = val as number;\n }\n }\n return newData;\n }\n\n function handleChange(val: number[]) {\n setArrValue([...val]);\n onChange && onChange(arrValue.length === 1 ? val[0] : val);\n }\n\n function getWidthToValue(width: number) {\n const equal = (max - min) / step;\n let percent = 0;\n if (slider.current) {\n percent = (width / slider.current[vertical ? 'clientHeight' : 'clientWidth']) * 100;\n }\n\n if (percent <= 0) {\n percent = 0;\n }\n if (percent >= 100) {\n percent = 100;\n }\n\n const num = equal * (percent / 100) + 0.5;\n const numFloor = Math.floor(num);\n const vals = numFloor * step + min;\n return vals;\n }\n\n function onHandleBtnDown(idx: number, env: React.MouseEvent<HTMLElement>) {\n if (disabled) {\n return;\n }\n indexBar.current = idx;\n move.current = true;\n startX.current = env[vertical ? 'clientY' : 'clientX'];\n if (bar.current) {\n barWidth.current = bar.current[vertical ? 'clientHeight' : 'clientWidth'];\n barOffsetLeft.current = bar.current[vertical ? 'offsetTop' : 'offsetLeft'];\n }\n const vals = [...arrValue];\n if (Array.isArray(value)) {\n barWidth.current =\n (indexBar.current === 1 && vals[1] > vals[0]) || (indexBar.current !== 1 && vals[0] > vals[1])\n ? barWidth.current! + barOffsetLeft.current!\n : barOffsetLeft.current;\n }\n window.addEventListener('mousemove', onDragging);\n window.addEventListener('mouseup', onDragEnd);\n }\n function onDragging(env: MouseEvent | React.MouseEvent<HTMLButtonElement, MouseEvent>) {\n if (!move.current) {\n return;\n }\n const vals = [...arrValue];\n const valueToWidth = getWidthToValue(env[vertical ? 'clientY' : 'clientX'] - startX.current! + barWidth.current!);\n if (valueToWidth !== curValue.current) {\n vals[indexBar.current!] = valueToWidth;\n const barStyl = getStyle(vals);\n if (bar.current) {\n bar.current.style[vertical ? 'top' : 'left'] = barStyl.left;\n bar.current.style[vertical ? 'bottom' : 'right'] = barStyl.right;\n }\n handleChange(vals);\n curValue.current = valueToWidth;\n }\n }\n function onDragEnd() {\n move.current = undefined;\n window.removeEventListener('mousemove', onDragging, false);\n window.removeEventListener('mouseup', onDragEnd, false);\n }\n\n const stepArray = () => {\n const equal = (max - min) / step;\n const stepWidth = (100 * step) / (max - min);\n const result = [0];\n for (let i = 1; i < equal; i += 1) {\n result.push(i * stepWidth);\n }\n result.push(100);\n return result;\n };\n function getValueToPercent(vals: number) {\n return ((vals - min) * 100) / (max - min);\n }\n\n function getStyle(val?: number[]) {\n val = val || arrValue;\n const barStyl = { left: '0%', right: '100%' };\n if (!Array.isArray(value)) {\n barStyl.right = `${100 - getValueToPercent(val[0])}%`;\n } else {\n const leftValue = val[0] > val[1] ? val[1] : val[0];\n const rightValue = val[0] > val[1] ? val[0] : val[1];\n barStyl.left = `${getValueToPercent(leftValue)}%`;\n barStyl.right = `${100 - getValueToPercent(rightValue)}%`;\n }\n return barStyl;\n }\n\n function getLabelValue(val: number) {\n if (marks && marks !== true && marks[val] && marks[val].label) {\n return marks[val].label;\n } else if (marks && marks !== true && marks[val] && typeof marks[val] === 'string') {\n return marks[val];\n } else if (renderMarks && typeof renderMarks === 'function' && renderMarks(val)) {\n return renderMarks(val);\n }\n return val;\n }\n\n const barStyl = getStyle();\n if (disabled) {\n delete other.onClick;\n }\n return (\n <div\n ref={slider}\n className={[\n prefixCls,\n className,\n disabled ? 'disabled' : null,\n marks ? `${prefixCls}-with-marks` : null,\n vertical ? `${prefixCls}-vertical` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n {...other}\n >\n <div\n ref={bar}\n className={`${prefixCls}-bar`}\n style={{\n [vertical ? 'top' : 'left']: barStyl.left,\n [vertical ? 'bottom' : 'right']: barStyl.right,\n ...(progress !== true ? { backgroundColor: progress || 'initial' } : {}),\n }}\n />\n {[...arrValue].map((item, idx) => {\n const lleftPostion = getValueToPercent(item);\n return (\n <div\n key={idx}\n className={`${prefixCls}-handle`}\n onMouseDown={(evn) => onHandleBtnDown(idx, evn)}\n style={{ [vertical ? 'top' : 'left']: `${lleftPostion}%` }}\n >\n {(tooltip || tooltip === false) && (\n <div className={[`${prefixCls}-tooltip`, tooltip ? 'open' : null].filter(Boolean).join(' ').trim()}>\n {getLabelValue(item)}\n </div>\n )}\n </div>\n );\n })}\n {dots && (\n <Dots\n prefixCls={prefixCls}\n min={min}\n step={step}\n marks={marks}\n vertical={!!vertical}\n data={stepArray()}\n markRender={(stepValue, mark = {}) => {\n if (!mark) {\n return <div> {getLabelValue(stepValue)} </div>;\n }\n const other = typeof mark === 'object' ? mark : {};\n delete other.label;\n return <div {...other}> {getLabelValue(stepValue)} </div>;\n }}\n />\n )}\n </div>\n );\n}\n","import React from 'react';\nimport { RadioAbstract, RadioAbstractProps } from '@uiw/react-radio';\nimport './style/index.less';\n\nexport interface SwitchProps extends RadioAbstractProps {}\n\nexport default React.forwardRef<HTMLInputElement, SwitchProps>((props, ref) => {\n const { prefixCls = 'w-switch', ...other } = props;\n return <RadioAbstract prefixCls={prefixCls} {...{ ...other, type: 'checkbox' }} ref={ref} />;\n});\n","import React from 'react';\nimport { IProps, noop } from '@uiw/utils';\nimport { TableProps, TableColumns } from './';\nimport './style/index.less';\n\nexport interface TheadProps extends IProps {\n data?: TableProps['data'][];\n onCellHead?: TableProps['onCellHead'];\n}\n\nexport default (props: TheadProps & React.HTMLAttributes<HTMLTableSectionElement> = {}) => {\n const { prefixCls = 'w-table', className, data = [], onCellHead = noop, ...other } = props;\n return (\n <thead className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...other}>\n {data &&\n data.length > 0 &&\n data.map((tds?: TableColumns[], rowNum?: number) => (\n <tr key={rowNum}>\n {(tds || []).map((item, colNum) => {\n const { title, key, render, children, ellipsis, ...thProps } = item;\n const titleNode: TableColumns['title'] =\n typeof title === 'function' ? title(item, colNum, rowNum!) : title;\n if (thProps.colSpan === 0) {\n return null;\n }\n if (ellipsis) {\n thProps.className = `${thProps.className || ''} ${prefixCls}-ellipsis`;\n }\n return (\n <th key={colNum} onClick={(evn) => onCellHead(item, colNum, rowNum!, evn)} {...thProps}>\n {titleNode}\n </th>\n );\n })}\n </tr>\n ))}\n </thead>\n );\n};\n","import { TableColumns } from './';\n\n/**\n * Get colspan number\n * @param {Array} date\n */\nfunction getColspanNum(data: TableColumns[] = [], num = 1) {\n let childs: TableColumns[] = [];\n for (let i = 0; i < data.length; i += 1) {\n if (data[i].children) {\n childs = childs.concat(data[i].children || []);\n }\n }\n if (childs && childs.length > 0) {\n num = getColspanNum(childs, num + 1);\n }\n return num;\n}\n\n/**\n * Get rowspan number\n * @param {Array} date\n */\nfunction getRowspanNum(data: TableColumns[] = [], child = []) {\n let childs: TableColumns[] = [];\n for (let i = 0; i < data.length; i += 1) {\n if (!data[i].children) {\n childs.push(data[i]);\n } else if (data[i].children && data[i].children!.length > 0) {\n childs = childs.concat(getRowspanNum(data[i].children, child));\n }\n }\n return childs;\n}\n\nexport interface ILevelItems {\n header: TableColumns[][];\n ellipsis?: Record<string, boolean>;\n render: {\n [key: string]: any;\n };\n}\n\n/**\n * JSON Array => Array\n * @param {Array} date\n */\nexport const getLevelItems = (data: TableColumns[], result?: ILevelItems): ILevelItems => {\n if (!result) {\n result = { header: [], render: {} };\n }\n if (result && !result.header) {\n result.header = [];\n }\n if (result && !result.render) {\n result.render = {};\n }\n let child: TableColumns[] = [];\n const levelTop: TableColumns[] = [];\n for (let i = 0; i < data.length; i += 1) {\n if (data[i].render && data[i].key) {\n result.render[data[i].key as string] = data[i].render;\n }\n if (data[i].ellipsis && data[i].key) {\n if (!result.ellipsis) result.ellipsis = {};\n result.ellipsis[data[i].key!] = true;\n }\n if (result.header.length === 0) {\n // Calculation rowspan\n if (data[i].children && data[i].children && data[i].children!.length > 0) {\n data[i].colSpan = getRowspanNum(data[i].children as TableColumns[]).length;\n }\n levelTop.push(data[i]);\n }\n if (data[i] && data[i].children) {\n child = child.concat(\n data[i].children!.map((item: TableColumns) => {\n // Calculation rowspan\n if (item.children && item.children.length > 0) {\n item.colSpan = getRowspanNum(item.children).length;\n }\n return item;\n }),\n );\n }\n }\n // level 1\n if (result.header.length === 0) {\n const num = getColspanNum(levelTop);\n result.header.push(\n levelTop.map((item) => {\n if (num === 1) return item;\n if (!item.children || (item.children && item.children.length === 0)) {\n item.rowSpan = num;\n }\n return item;\n }),\n );\n }\n if (child && child.length > 0) {\n const num = getColspanNum(child);\n result.header.push(\n child.map((item: TableColumns) => {\n if (num === 1) return item;\n if (!item.children || (item.children && item.children.length === 0)) {\n item.rowSpan = num;\n }\n return item;\n }),\n );\n result = getLevelItems(child, result);\n }\n return result;\n};\n\n/**\n * Get all columns keys\n * @param {Array} data\n */\nexport const getAllColumnsKeys = (data: TableColumns[], keys: any[] = []): string[] => {\n for (let i = 0; i < data.length; i += 1) {\n if (data[i].children) {\n keys = keys.concat(getAllColumnsKeys(data[i].children || []));\n } else if (data[i].key) {\n keys.push(data[i].key);\n }\n }\n return keys;\n};\n","import React from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport Thead from './Thead';\nimport { getLevelItems, getAllColumnsKeys } from './util';\nimport './style/index.less';\n\nexport type TableColumns = {\n title?: string | ((data: TableColumns, rowNum: number, colNum: number) => JSX.Element) | JSX.Element;\n key?: string;\n width?: number;\n colSpan?: number;\n children?: TableColumns[];\n ellipsis?: boolean;\n render?: (\n text: string,\n keyName: string,\n rowData: { [key: string]: any },\n rowNumber: number,\n columnNumber: number,\n ) => void;\n style?: React.CSSProperties;\n [key: string]: any;\n};\n\nexport interface TableProps extends IProps, Omit<HTMLDivProps, 'title'> {\n prefixCls?: string;\n columns?: TableColumns[];\n data?: Record<string, string | number | JSX.Element>[];\n title?: React.ReactNode;\n footer?: React.ReactNode;\n bordered?: boolean;\n onCell?: (\n data: { [key: string]: any },\n options: ICellOptions,\n evn: React.MouseEvent<HTMLTableCellElement>,\n ) => void | React.ReactNode;\n onCellHead?: (\n data: TableColumns,\n rowNum: number,\n colNum: number,\n evn: React.MouseEvent<HTMLTableCellElement>,\n ) => void;\n}\n\nexport interface ICellOptions {\n rowNum: number;\n colNum: number;\n keyName: string;\n}\n\nexport default (props: TableProps = {}) => {\n const {\n prefixCls = 'w-table',\n className,\n columns = [],\n data = [],\n title,\n footer,\n bordered,\n onCell = noop,\n onCellHead = noop,\n ...other\n } = props;\n const cls = [prefixCls, className, bordered ? `${prefixCls}-bordered` : null].filter(Boolean).join(' ').trim();\n const { header, render, ellipsis } = getLevelItems(columns);\n const keys = getAllColumnsKeys(columns);\n return (\n <div className={cls} {...other}>\n <table style={ellipsis ? { tableLayout: 'fixed' } : {}}>\n {title && <caption>{title}</caption>}\n {columns && columns.length > 0 && <Thead onCellHead={onCellHead} data={header} />}\n {data && data.length > 0 && (\n <tbody>\n {data.map((trData, rowNum) => (\n <tr key={rowNum}>\n {keys.map((keyName, colNum) => {\n let objs: React.TdHTMLAttributes<HTMLTableDataCellElement> = {\n children: trData[keyName],\n };\n if (render[keyName]) {\n const child = render[keyName](trData[keyName], keyName, trData, rowNum, colNum);\n if (React.isValidElement(child)) {\n objs.children = child;\n } else {\n if (child.props) {\n objs = { ...child.props, children: objs.children };\n if (child.props.rowSpan === 0 || child.props.colSpan === 0) return null;\n }\n if (child.children) {\n objs.children = child.children;\n }\n }\n }\n if (ellipsis && ellipsis[keyName]) {\n objs.className = `${prefixCls}-ellipsis`;\n }\n return (\n <td {...objs} key={colNum} onClick={(evn) => onCell(trData, { rowNum, colNum, keyName }, evn)} />\n );\n })}\n </tr>\n ))}\n </tbody>\n )}\n {props.children}\n </table>\n {footer && <div className={`${prefixCls}-footer`}>{footer}</div>}\n </div>\n );\n};\n","import React, { useEffect, useState, useRef } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Pane from './Pane';\nimport './style/index.less';\n\nexport * from './Pane';\n\nTabs.Pane = Pane;\n\nexport interface TabsProps extends IProps, HTMLDivProps {\n prefixCls?: string;\n activeKey?: string;\n type?: 'default' | 'line' | 'card';\n children?: React.ReactNode;\n onTabClick?: (key: string, item: React.ReactElement, e: React.MouseEvent) => void;\n}\n\nexport default function Tabs(props: TabsProps) {\n const {\n prefixCls = 'w-tabs',\n className,\n children,\n type = 'default',\n activeKey: _,\n onTabClick,\n ...elementProps\n } = props;\n const [activeKey, setActiveKey] = useState(props.activeKey);\n const [slideStyle, setSlideStyle] = useState({ width: 0, left: 0 });\n const activeItem = useRef<HTMLDivElement | undefined>();\n const cls = [prefixCls, className, type ? `${prefixCls}-${type}` : null].filter(Boolean).join(' ').trim();\n\n useEffect(() => setActiveKey(props.activeKey), [props.activeKey]);\n useEffect(() => calcSlideStyle(), [activeKey]);\n\n function calcSlideStyle() {\n if (activeItem.current && type === 'line') {\n setSlideStyle({\n width: activeItem.current.clientWidth,\n left: activeItem.current.offsetLeft,\n });\n }\n }\n\n return (\n <div className={cls} {...elementProps}>\n <div className={`${prefixCls}-bar`}>\n <div className={`${prefixCls}-nav`}>\n {React.Children.map(children as React.ReactElement[], (item: React.ReactElement, key: number) => {\n if (!item) {\n return null;\n }\n const divProps: HTMLDivProps = {\n className: [\n `${prefixCls}-item`,\n item.key === activeKey ? 'active' : null,\n item.props.disabled ? 'disabled' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n children: item.props.label,\n };\n if (!item.props.disabled) {\n divProps.onClick = (e: React.MouseEvent) => {\n setActiveKey(item.key as string);\n onTabClick && onTabClick(item.key as string, item, e);\n calcSlideStyle();\n };\n }\n return (\n <div\n key={key}\n ref={(node) => {\n if (node && item.key === activeKey) {\n activeItem.current = node;\n }\n }}\n {...divProps}\n />\n );\n })}\n </div>\n <div style={slideStyle} className={`${prefixCls}-slide`} />\n </div>\n {React.Children.map(children, (item: any) => {\n if (!item || activeKey !== item.key) {\n return null;\n }\n return React.cloneElement(item, Object.assign({}, item.props, {}));\n })}\n </div>\n );\n}\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\n\nexport interface TabsPaneProps extends IProps, HTMLDivProps {\n label?: React.ReactNode;\n disabled?: boolean;\n}\n\nexport default (props: TabsPaneProps = {}) => {\n const { prefixCls = 'w-tabs-pane', className, label: _, ...resetProps } = props;\n return <div className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...resetProps} />;\n};\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLSpanProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface TagProps extends IProps, Omit<HTMLSpanProps, 'title'> {\n color?: string;\n disabled?: boolean;\n visible?: boolean;\n bordered?: boolean;\n light?: boolean;\n closable?: boolean;\n title?: React.ReactNode;\n onClose?: (e: React.MouseEvent<SVGSVGElement, MouseEvent>) => void;\n}\n\nexport default (props: TagProps = {}) => {\n const {\n prefixCls = 'w-tag',\n className,\n style,\n title = '',\n children,\n visible = true,\n color = '#6E6E6E',\n disabled = false,\n bordered = true,\n closable,\n light = false,\n onClose,\n ...other\n } = props;\n const cls = [prefixCls, className, light ? `${prefixCls}-light` : null, disabled ? 'disabled' : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n const styl: React.CSSProperties = { ...style };\n if (!light) {\n styl.color = '#fff';\n styl.backgroundColor = color;\n } else {\n styl.color = color;\n styl.borderColor = color;\n if (bordered && light) {\n styl.boxShadow = `inset 0 0 0 1px ${color}`;\n }\n }\n if (!visible) {\n return null;\n }\n const closeBtn = useMemo(\n () =>\n closable ? (\n <svg onClick={onClose} className={`${prefixCls}-close`} width=\"15\" height=\"15\" viewBox=\"0 0 16 16\">\n <path d=\"M9.41 8l2.29-2.29c.19-.18.3-.43.3-.71a1.003 1.003 0 0 0-1.71-.71L8 6.59l-2.29-2.3a1.003 1.003 0 0 0-1.42 1.42L6.59 8 4.3 10.29c-.19.18-.3.43-.3.71a1.003 1.003 0 0 0 1.71.71L8 9.41l2.29 2.29c.18.19.43.3.71.3a1.003 1.003 0 0 0 .71-1.71L9.41 8z\" />\n </svg>\n ) : null,\n [closable],\n );\n return (\n <span className={cls} style={styl} {...other}>\n {title || children}\n {closeBtn}\n </span>\n );\n};\n","import React from 'react';\nimport { IProps, HTMLTextProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface TextareaProps extends IProps, HTMLTextProps {}\n\nexport default React.forwardRef<HTMLTextAreaElement, TextareaProps>((props, ref) => {\n const { prefixCls = 'w-textarea', className, ...restProps } = props;\n return (\n <textarea className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...restProps} ref={ref}>\n {props.children}\n </textarea>\n );\n});\n","import React from 'react';\nimport OverlayTrigger, { OverlayTriggerProps } from '@uiw/react-overlay-trigger';\nimport { IProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface TooltipProps extends IProps, OverlayTriggerProps {\n visibleArrow?: boolean;\n content?: React.ReactNode;\n}\n\nexport default (props: TooltipProps = {}) => {\n const {\n prefixCls = 'w-tooltip',\n className,\n placement = 'top',\n isOpen = false,\n trigger,\n delay,\n usePortal = true,\n visibleArrow = true,\n onVisibleChange,\n ...other\n } = props;\n const cls = [prefixCls, className, !visibleArrow ? 'no-arrow' : null].filter(Boolean).join(' ').trim();\n return (\n <OverlayTrigger\n usePortal={usePortal}\n isOpen={isOpen}\n trigger={trigger}\n delay={delay}\n onVisibleChange={onVisibleChange}\n placement={placement}\n {...other}\n overlay={\n <div className={cls}>\n {visibleArrow && <div className={`${prefixCls}-arrow`} />}\n <div className={`${prefixCls}-inner`}>{props.content}</div>\n </div>\n }\n >\n {typeof props.children === 'object' ? props.children : <span>{props.children}</span>}\n </OverlayTrigger>\n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps, noop } from '@uiw/utils';\nimport { TreeData, TreeProps, getChildKeys } from './';\n\ninterface TreeNodeIconProps {\n isOpen: boolean;\n noChild: boolean;\n openKeys: TreeNodeProps['openKeys'];\n selectedKeys: TreeNodeProps['selectedKeys'];\n}\n\ninterface TreeNodeProps<T = (data: TreeData, props: TreeNodeIconProps) => IconProps['type']> extends IProps {\n data: TreeData[];\n level: number;\n parent?: TreeData;\n icon?: T;\n iconAnimation?: boolean;\n isSelected?: boolean;\n renderTitle?: TreeProps['renderTitle'];\n\n openKeys?: TreeData['key'][];\n selectedKeys?: TreeData['key'][];\n\n onItemClick?: (item: TreeData, evn: React.MouseEvent<HTMLElement>) => void;\n onItemSelected?: (item: TreeData, evn: React.MouseEvent<HTMLElement>) => void;\n}\n\nconst Label = ({ label }: { label: React.ReactNode }) => useMemo(() => <span>{label}</span>, [label]);\n\nexport default function TreeNode<T>(props: TreeNodeProps<T>) {\n const {\n prefixCls,\n renderTitle,\n icon,\n iconAnimation,\n isSelected,\n openKeys,\n selectedKeys,\n\n data,\n level,\n parent,\n\n onItemClick = noop,\n onItemSelected = noop,\n ...other\n } = props;\n let isOpen = false;\n\n if (parent && parent.key) {\n isOpen = !!(openKeys && openKeys.indexOf(parent.key) > -1);\n }\n const onExit = useCallback((node: HTMLElement) => {\n node.style.height = `${node.scrollHeight}px`;\n }, []);\n const onExiting = useCallback((node: HTMLElement) => {\n node.style.height = '1px';\n }, []);\n const onEnter = useCallback((node: HTMLElement, isAppearing: boolean) => {\n node.style.height = '1px';\n }, []);\n const onEntering = useCallback((node: HTMLElement, isAppearing: boolean) => {\n node.style.height = `${node.scrollHeight}px`;\n }, []);\n const onEntered = useCallback((node: HTMLElement, isAppearing: boolean) => {\n node.style.height = 'initial';\n }, []);\n return (\n <CSSTransition\n classNames={prefixCls}\n in={isOpen}\n timeout={200}\n onExit={onExit}\n onExiting={onExiting}\n onEnter={onEnter}\n onEntered={onEntered}\n onEntering={onEntering}\n >\n <ul\n className={[\n level !== 1 && isOpen ? [`${prefixCls}-open`] : null,\n level !== 1 && !isOpen ? [`${prefixCls}-close`] : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {data.map((item, idx: number) => {\n item.parent = parent;\n const selected = !!(selectedKeys && selectedKeys.indexOf(item.key) > -1);\n const noChild = !item.children;\n const itemIsOpen = openKeys && openKeys.indexOf(item.key) > -1 && !!item.children;\n const iconItem =\n typeof icon === 'function'\n ? icon(item, {\n isOpen: !!itemIsOpen,\n noChild,\n openKeys,\n selectedKeys,\n })\n : icon;\n const childKeys = noChild ? [] : getChildKeys(item.children);\n const checkedKeys = selectedKeys ? selectedKeys.filter((key) => childKeys.indexOf(key) > -1) : [];\n const isHalfChecked = checkedKeys.length > 0 && childKeys.length !== checkedKeys.length;\n return (\n <li key={idx}>\n <div className={`${prefixCls}-label`}>\n <span className={`${prefixCls}-switcher`} onClick={(evn) => onItemClick(item, evn)}>\n <Icon\n type={iconItem || 'caret-right'}\n className={[\n typeof icon === 'function' ? `${prefixCls}-switcher-noop` : null,\n noChild ? 'no-child' : null,\n !iconAnimation ? 'no-animation' : null,\n itemIsOpen ? 'open' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n />\n </span>\n <div\n onClick={(evn) => onItemSelected(item, evn)}\n className={[\n `${prefixCls}-title`,\n selected && isSelected ? 'selected' : null,\n item.disabled ? 'disabled' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {renderTitle ? (\n renderTitle(item, {\n selected,\n noChild,\n openKeys,\n isHalfChecked,\n selectedKeys,\n })\n ) : (\n <Label label={item.label} />\n )}\n </div>\n </div>\n {item.children && (\n <TreeNode\n {...other}\n {...{\n prefixCls,\n icon,\n iconAnimation,\n isSelected,\n openKeys,\n selectedKeys,\n onItemClick,\n onItemSelected,\n renderTitle,\n }}\n prefixCls={prefixCls}\n data={item.children}\n level={level + 1}\n parent={item}\n />\n )}\n </li>\n );\n })}\n </ul>\n </CSSTransition>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport TreeNode from './TreeNode';\nimport './style/index.less';\n\nexport type TreeRenderTitleNode = {\n selected?: boolean;\n noChild?: boolean;\n isHalfChecked?: boolean;\n openKeys?: TreeProps['openKeys'];\n selectedKeys?: TreeProps['selectedKeys'];\n};\n\nexport interface TreeProps extends IProps, HTMLDivProps {\n icon?: IconProps['type'];\n data?: TreeData[];\n openKeys?: TreeData['key'][];\n selectedKeys?: TreeData['key'][];\n defaultExpandAll?: boolean;\n /**\n * 是否自动展开父节点\n */\n autoExpandParent?: boolean;\n /**\n * 是否展示连接线\n */\n showLine?: boolean;\n iconAnimation?: boolean;\n isSelected?: boolean;\n /**\n * 子节点受父节点控制设置 `true`,需要配合 `multiple` 参数使用。\n */\n checkStrictly?: boolean;\n /**\n * 支持点选多个节点\n */\n multiple?: boolean;\n renderTitle?: (item: TreeData, node: TreeRenderTitleNode) => React.ReactElement;\n onExpand?: (key: TreeData['key'], expanded: boolean, item: TreeData, evn: React.MouseEvent<HTMLElement>) => void;\n onSelected?: (\n keys: TreeData['key'][],\n key: TreeData['key'],\n selected: boolean,\n item: TreeData,\n evn: React.MouseEvent<HTMLElement>,\n ) => void;\n}\n\nexport interface TreeData {\n label?: React.ReactNode;\n children?: TreeData[];\n key?: string | number;\n [keyName: string]: any;\n}\n\n/**\n * a contains b\n * @param {Array} a\n * @param {Array} b\n */\nconst isContained = (a: any[], b: any[]) => {\n if (!(a instanceof Array) || !(b instanceof Array)) return false;\n if (a.length < b.length) return false;\n const aStr = a.toString();\n for (let i = 0, len = b.length; i < len; i += 1) {\n if (aStr.indexOf(b[i]) === -1) return false;\n }\n return true;\n};\n\nexport const getChildKeys = (childs: TreeData[] = [], result: TreeData['key'][] = []): TreeData['key'][] => {\n childs.forEach((item) => {\n result.push(item.key as string | number);\n if (item.children && item.children.length > 0) {\n result = result.concat(getChildKeys(item.children));\n }\n });\n return result;\n};\n\nconst getParentKeys = (childs: TreeData = {}, result: TreeData['key'][] = []) => {\n if (childs.key) {\n result.push(childs.key);\n }\n if (childs.parent) {\n result = getParentKeys(childs.parent, result);\n }\n return result;\n};\n\nconst getParentSelectKeys = (\n childs: TreeData = {},\n selectedKeys: TreeData['key'][] = [],\n result: TreeData['key'][] = [],\n) => {\n if (childs.key && childs.children && isContained(selectedKeys, getChildKeys(childs.children))) {\n result.push(childs.key);\n if (childs.parent && !childs.parent.parent) {\n if (isContained(selectedKeys, getChildKeys(childs.children))) {\n selectedKeys = selectedKeys.concat(result);\n }\n if (isContained(selectedKeys, getChildKeys(childs.parent.children))) {\n result.push(childs.parent.key);\n }\n }\n }\n if (childs.parent) {\n result = getParentSelectKeys(childs.parent, selectedKeys, result);\n }\n return result;\n};\n\nexport default function Tree(props: TreeProps) {\n const {\n prefixCls = 'w-tree',\n icon = 'caret-right',\n data = [],\n openKeys = [],\n selectedKeys = [],\n defaultExpandAll = false,\n showLine = false,\n iconAnimation = true,\n isSelected = true,\n checkStrictly = false,\n multiple = false,\n onExpand = noop,\n onSelected = noop,\n\n className,\n autoExpandParent,\n renderTitle,\n ...elementProps\n } = props;\n\n const [curOpenKeys, setCurOpenKeys] = useState(openKeys);\n const [curSelectedKeys, setCurSelectedKeys] = useState(selectedKeys);\n\n // useEffect(() => setCurOpenKeys(openKeys), [openKeys]);\n // useEffect(() => setCurSelectedKeys(selectedKeys), [selectedKeys]);\n\n useEffect(() => {\n const arrOpenKeys = getChildKeys(data);\n if (defaultExpandAll) {\n setCurOpenKeys(arrOpenKeys);\n }\n }, []);\n\n const cls = [className, prefixCls, showLine ? `${prefixCls}-line` : null].filter(Boolean).join(' ').trim();\n\n function onItemClick(item: TreeData, evn: React.MouseEvent<HTMLElement>) {\n if (!item.children) {\n return;\n }\n // const { onExpand } = this.props;\n // const { openKeys } = this.state;\n let currentKeys = [...(curOpenKeys as TreeData['key'][])];\n const key = currentKeys.find((v) => v === item.key);\n const cls = evn.currentTarget.className.replace(/(\\s)open/g, '');\n let expanded = false;\n if (!key && item.key) {\n currentKeys.push(item.key);\n evn.currentTarget.className = [cls, 'open'].filter(Boolean).join(' ').trim();\n expanded = true;\n } else {\n currentKeys = currentKeys.filter((v) => v !== item.key);\n evn.currentTarget.className = cls;\n }\n setCurOpenKeys(currentKeys);\n onExpand && onExpand(item.key, expanded, item, evn);\n }\n function onItemSelected(item: TreeData, evn: React.MouseEvent<HTMLElement>) {\n // const { onSelected, multiple, checkStrictly } = this.props;\n let selKeys = [...(curSelectedKeys as TreeData['key'][])];\n const findKey = selKeys.find((v) => v === item.key);\n let selected = false;\n if (!findKey) {\n selected = true;\n selKeys.push(item.key);\n } else {\n selKeys = selKeys.filter((v) => v !== item.key);\n }\n if (checkStrictly) {\n if (!findKey) {\n selKeys = selKeys.concat(getChildKeys(item.children).filter((val) => selKeys.indexOf(val) === -1));\n selKeys = selKeys.concat(getParentSelectKeys(item, selKeys));\n selKeys = Array.from(new Set(selKeys)); // Remove duplicates.\n } else {\n selKeys = selKeys.filter((val) => getChildKeys(item.children).indexOf(val) === -1);\n selKeys = selKeys.filter((val) => getParentKeys(item.parent).indexOf(val) === -1);\n }\n }\n if (!multiple) {\n selKeys = !findKey ? [item.key] : [];\n }\n setCurSelectedKeys(selKeys);\n onSelected && onSelected(selKeys, item.key, selected, item, evn);\n }\n return (\n <div className={cls} {...elementProps}>\n <TreeNode\n {...{\n icon,\n iconAnimation,\n isSelected,\n openKeys: curOpenKeys,\n selectedKeys: curSelectedKeys,\n prefixCls,\n renderTitle,\n }}\n onItemClick={onItemClick}\n onItemSelected={onItemSelected}\n data={data}\n level={1}\n />\n </div>\n );\n}\n","import React, { Fragment } from 'react';\nimport Tree, { TreeProps, TreeRenderTitleNode, TreeData } from '@uiw/react-tree';\nimport Checkbox, { CheckboxProps } from '@uiw/react-checkbox';\nimport './style/index.less';\n\nexport interface TreeCheckedProps extends TreeProps {}\n\nexport default function TreeChecked({ prefixCls = 'w-treechecked', ...props }: TreeCheckedProps): JSX.Element {\n props.className = [prefixCls, props.className].filter(Boolean).join(' ').trim();\n props.checkStrictly = true;\n props.isSelected = false;\n props.multiple = true;\n return (\n <Tree\n renderTitle={(item: TreeData, node: TreeRenderTitleNode) => {\n const checkedProps: CheckboxProps = {};\n if (node.isHalfChecked) {\n checkedProps.indeterminate = true;\n }\n if (node.selected) {\n checkedProps.checked = true;\n } else {\n checkedProps.checked = false;\n }\n return (\n <Fragment>\n <Checkbox className={`${prefixCls}-checked`} {...checkedProps} />\n {item.label && <span>{item.label}</span>}\n </Fragment>\n );\n }}\n {...props}\n />\n );\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"static/js/\" + ({\"889\":\"vendors-prismjs\",\"6982\":\"vendors-standalone\"}[chunkId] || chunkId) + \".\" + {\"163\":\"f0f23b4f\",\"207\":\"32dfc25c\",\"221\":\"e3205c94\",\"486\":\"06f7cd25\",\"643\":\"564fa069\",\"694\":\"3a3973dc\",\"745\":\"e92abd14\",\"747\":\"31d81e47\",\"748\":\"dd22995f\",\"875\":\"d60e2f6a\",\"889\":\"7634bcac\",\"922\":\"b1f148e3\",\"1016\":\"0ab3d95f\",\"1043\":\"4bfec656\",\"1059\":\"8c41bdb3\",\"1061\":\"18e4bac9\",\"1127\":\"d65f8357\",\"1151\":\"a61edfb2\",\"1169\":\"ab4b4258\",\"1317\":\"6abd1b43\",\"1358\":\"e579baca\",\"1584\":\"cfa20dcb\",\"1619\":\"84d686a6\",\"1756\":\"7336ff8d\",\"1820\":\"066aadd9\",\"1892\":\"13ea195f\",\"1971\":\"043ba73e\",\"2078\":\"b790ef29\",\"2156\":\"dc2d0f2c\",\"2190\":\"4e2428fa\",\"2230\":\"7f1f79eb\",\"2316\":\"b55dfe76\",\"2367\":\"ee94ca92\",\"2411\":\"7033ebd6\",\"2448\":\"dc510246\",\"2456\":\"013e4bdc\",\"2582\":\"eacb35a1\",\"2595\":\"17abe8f9\",\"2679\":\"4d07c747\",\"2692\":\"c93feb86\",\"2737\":\"6d444c61\",\"2782\":\"f098a80b\",\"2795\":\"85c20470\",\"2926\":\"f11fdc77\",\"3151\":\"59d27efa\",\"3257\":\"f8706edc\",\"3259\":\"80ff41ab\",\"3261\":\"8fb28323\",\"3313\":\"639b48d1\",\"3450\":\"d09525f0\",\"3518\":\"6b4fedcb\",\"3769\":\"c50e5321\",\"3811\":\"84b766f9\",\"3812\":\"36247fba\",\"3917\":\"3338e46c\",\"3931\":\"710a8e71\",\"4010\":\"cfae8a18\",\"4036\":\"46baa59c\",\"4098\":\"3c546b6a\",\"4128\":\"4428dd61\",\"4188\":\"c0384a97\",\"4396\":\"753539f0\",\"4405\":\"401b7628\",\"4503\":\"b98a367f\",\"4648\":\"cf45499b\",\"4781\":\"eb1374c6\",\"4877\":\"9aecd74c\",\"4948\":\"86b48344\",\"5146\":\"6d483514\",\"5244\":\"3a8162b4\",\"5253\":\"0a82cabf\",\"5308\":\"4894b1d3\",\"5364\":\"125e27d2\",\"5393\":\"e88bce25\",\"5408\":\"20ea48f2\",\"5468\":\"9fec2b39\",\"5595\":\"1e160465\",\"5821\":\"c5b30ecc\",\"5865\":\"373c81e0\",\"5930\":\"ce74b909\",\"6019\":\"3ddd5b5f\",\"6036\":\"97de923f\",\"6510\":\"5f6e687e\",\"6536\":\"75066313\",\"6566\":\"f7efbc17\",\"6659\":\"dc6ea406\",\"6715\":\"777e97ee\",\"6730\":\"80807394\",\"6869\":\"3a61102b\",\"6878\":\"c21d4848\",\"6982\":\"da956558\",\"7104\":\"f078bd8f\",\"7157\":\"674d2cef\",\"7217\":\"6128cabc\",\"7266\":\"3c7fc342\",\"7313\":\"9d68d48b\",\"7390\":\"ef171daa\",\"7541\":\"6b461e9b\",\"7664\":\"e8d14553\",\"7761\":\"349b5f83\",\"7763\":\"444dce16\",\"7834\":\"c7d12602\",\"7861\":\"f0341e75\",\"7875\":\"37a0d852\",\"7884\":\"34b4a7bd\",\"8023\":\"fcdcd33f\",\"8073\":\"66af28c9\",\"8312\":\"6c0a85dd\",\"8398\":\"29808175\",\"8488\":\"73077e9f\",\"8566\":\"0c36045c\",\"8586\":\"922fe070\",\"8709\":\"935c2f52\",\"8747\":\"04252521\",\"8768\":\"f2c39fb9\",\"8849\":\"4c89f87b\",\"8915\":\"ff4b2001\",\"9057\":\"a47ec4de\",\"9121\":\"5004f71e\",\"9137\":\"f4e2b7b0\",\"9147\":\"53ea3fbb\",\"9188\":\"7354157e\",\"9200\":\"0a1f7353\",\"9253\":\"2d3df27c\",\"9260\":\"7c42ffba\",\"9384\":\"a2c1487a\",\"9429\":\"3b8debbf\",\"9503\":\"1c6433de\",\"9673\":\"af990b78\",\"9763\":\"214c1dc8\",\"9776\":\"ef603a3d\",\"9777\":\"699392fa\",\"9820\":\"da3bde55\",\"9836\":\"26769e83\",\"9853\":\"f8a0acee\",\"9900\":\"7ad9abbf\",\"9961\":\"867fe956\"}[chunkId] + \".chunk.js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"static/css/\" + chunkId + \".\" + {\"163\":\"68d3e67d\",\"221\":\"68d3e67d\",\"643\":\"68d3e67d\",\"694\":\"68d3e67d\",\"748\":\"68d3e67d\",\"875\":\"68d3e67d\",\"1059\":\"68d3e67d\",\"1061\":\"68d3e67d\",\"1169\":\"68d3e67d\",\"1317\":\"68d3e67d\",\"1584\":\"68d3e67d\",\"1619\":\"68d3e67d\",\"1820\":\"68d3e67d\",\"2156\":\"68d3e67d\",\"2190\":\"68d3e67d\",\"2230\":\"68d3e67d\",\"2316\":\"68d3e67d\",\"2367\":\"68d3e67d\",\"2411\":\"68d3e67d\",\"2582\":\"68d3e67d\",\"2595\":\"68d3e67d\",\"2737\":\"68d3e67d\",\"2782\":\"68d3e67d\",\"3313\":\"68d3e67d\",\"3518\":\"68d3e67d\",\"3812\":\"68d3e67d\",\"3917\":\"68d3e67d\",\"4010\":\"68d3e67d\",\"4098\":\"68d3e67d\",\"4128\":\"68d3e67d\",\"4188\":\"68d3e67d\",\"4396\":\"2422fe7f\",\"4405\":\"68d3e67d\",\"4503\":\"68d3e67d\",\"4648\":\"68d3e67d\",\"4877\":\"6e864cd4\",\"4948\":\"68d3e67d\",\"5244\":\"68d3e67d\",\"5308\":\"68d3e67d\",\"5393\":\"68d3e67d\",\"5408\":\"68d3e67d\",\"5595\":\"68d3e67d\",\"5865\":\"68d3e67d\",\"6510\":\"68d3e67d\",\"6715\":\"68d3e67d\",\"6730\":\"68d3e67d\",\"7104\":\"68d3e67d\",\"7157\":\"68d3e67d\",\"7390\":\"68d3e67d\",\"7541\":\"68d3e67d\",\"7761\":\"68d3e67d\",\"7834\":\"68d3e67d\",\"7875\":\"68d3e67d\",\"7884\":\"68d3e67d\",\"8023\":\"68d3e67d\",\"8073\":\"68d3e67d\",\"8566\":\"68d3e67d\",\"9121\":\"68d3e67d\",\"9200\":\"14abaeb3\",\"9253\":\"68d3e67d\",\"9260\":\"68d3e67d\",\"9384\":\"68d3e67d\",\"9503\":\"68d3e67d\",\"9673\":\"68d3e67d\",\"9763\":\"68d3e67d\",\"9776\":\"68d3e67d\",\"9777\":\"68d3e67d\",\"9853\":\"68d3e67d\"}[chunkId] + \".chunk.css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"website:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\t;\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"./\";","var createStylesheet = function(chunkId, fullhref, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tlinkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tdocument.head.appendChild(linkTag);\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t179: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"163\":1,\"221\":1,\"643\":1,\"694\":1,\"748\":1,\"875\":1,\"1059\":1,\"1061\":1,\"1169\":1,\"1317\":1,\"1584\":1,\"1619\":1,\"1820\":1,\"2156\":1,\"2190\":1,\"2230\":1,\"2316\":1,\"2367\":1,\"2411\":1,\"2582\":1,\"2595\":1,\"2737\":1,\"2782\":1,\"3313\":1,\"3518\":1,\"3812\":1,\"3917\":1,\"4010\":1,\"4098\":1,\"4128\":1,\"4188\":1,\"4396\":1,\"4405\":1,\"4503\":1,\"4648\":1,\"4877\":1,\"4948\":1,\"5244\":1,\"5308\":1,\"5393\":1,\"5408\":1,\"5595\":1,\"5865\":1,\"6510\":1,\"6715\":1,\"6730\":1,\"7104\":1,\"7157\":1,\"7390\":1,\"7541\":1,\"7761\":1,\"7834\":1,\"7875\":1,\"7884\":1,\"8023\":1,\"8073\":1,\"8566\":1,\"9121\":1,\"9200\":1,\"9253\":1,\"9260\":1,\"9384\":1,\"9503\":1,\"9673\":1,\"9763\":1,\"9776\":1,\"9777\":1,\"9853\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\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__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkwebsite\"] = self[\"webpackChunkwebsite\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [9896,5183], function() { return __webpack_require__(52744); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["dark","viewBox","width","height","version","stroke","strokeWidth","fill","fillRule","d","light","NoMatch","to","De","tip","indicator","type","spin","style","verticalAlign","Options","props","useMemo","value","onChange","e","target","isV1","split","window","location","href","currentVersion","pkg","versionList","data","firstVersion","unshift","className","styles","defaultValue","map","idx","home","component","github","issue","gitee","plugin","SiderMenu","useLocation","menu","find","item","RegExp","path","test","pathname","children","nav","icon","name","divider","replace","initialState","layout","reducer","state","action","ThemeContext","React","dispatch","rx","x","y","fillOpacity","menutop","china","id","transform","xlinkHref","Nav","useContext","Fragment","filter","Boolean","join","trim","logo","Object","keys","includes","usePortal","placement","content","whiteSpace","activeStyle","color","isActive","undefined","rel","onClick","Header","Layout","Sider","Content","Components","siderMenu","offsetTop","zIndex","display","alignItems","padding","position","left","top","bottom","overflow","paddingLeft","lineHeight","flexDirection","justifyContent","backgroundColor","Loadable","Component","Suspense","fallback","Home","lazy","Extensions","GuideQuickStart","GuideImport","GuideCreateReactApp","GuideKKT","GuideDocs","GuideVscode","GuideRecommendation","Overview","Colors","Alert","AutoLink","ResetCss","Avatar","Affix","Calendar","Checkbox","CopyToClipboard","Collapse","Card","Descriptions","Loader","Icon","Divider","Drawer","DatePicker","DateInput","Dropdown","Badge","Progress","Pagination","PinCode","Input","Button","Radio","Select","SearchSelect","Split","Switch","Slider","Grid","Form","FileInput","Breadcrumb","List","Notify","Tree","TreeChecked","Tag","Tabs","Tooltip","Table","TimePicker","Rate","Overlay","BackTop","Portal","OverlayTrigger","Popover","Message","MonthPicker","Textarea","Modal","Formatter","Steps","Menu","routes","element","index","App","useRoutes","Provider","useReducer","ReactDOM","document","getElementById","noop","getScroll","method","isWindow","ret","getOffset","elemRect","targetRect","getTargetRect","scrollTop","scrollLeft","docElem","clientTop","clientLeft","getDefaultTarget","constructor","placeholderStyle","affixStyle","box","events","eventHandlers","timeout","node","componentDidMount","this","componentWillUnmount","clearTimeout","updatePosition","offsetBottom","elemSize","clientHeight","offsetMode","elemOffset","setAffixStyle","affixed","setPlaceholderStyle","setTargetEventListeners","eventName","clearEventListeners","handler","render","cls","prefixCls","ref","defaultProps","canUseDOM","container","defaultNode","useRef","containerRef","useEffect","isOpen","maskClosable","backdropProps","portalProps","hasBackdrop","unmountOnExit","transitionName","onOpening","onOpened","onClosing","onClosed","onClose","dialogProps","useState","overlay","setVisible","overlayWillClose","setIsOpen","decoratedChild","cloneElement","tabIndex","TransitionGroupComp","classNames","in","onEntering","onEntered","onExiting","onExited","status","onMouseDown","visible","tagName","TagName","svg","svgPaths","others","propps","disabled","active","loading","block","basic","htmlType","size","child","useButton","autoFocus","confirmText","maxWidth","minWidth","isCloseButtonShown","onCancel","onConfirm","bodyStyle","setLoading","title","handleCancel","handleConfirm","cancelText","delimiter","text","match","word","url","key","shape","onError","src","setIsImgExist","isImgExist","alt","evn","getScrollTop","fixed","speed","showBelow","clickable","topShowBelow","percent","setPercent","Math","getScrollPercent","setCurrent","current","step","start","timer","setInterval","clearInterval","scrollToAnimate","scrollToTop","max","dot","processing","supProps","warpperProps","count","separator","isElm","otherProps","vertical","context","isDOM","HTMLElement","getBordersSize","sideA","axis","sideB","parseFloat","isIE11","isBrowser","isIE10","navigator","isIE","getSize","body","html","parseInt","computedStyle","getBoundingClientRect","rect","offsets","result","sizes","getComputedStyle","getWindowSizes","horizScrollbar","vertScrollbar","css","property","getStyleComputedProperty","right","getOuterSizes","getStyle","options","trigger","popup","autoAdjustOverflow","sty","triggerDom","winSizeHeight","winSizeWidth","normalizeDelay","delay","show","hide","isOutside","isClickOutside","onVisibleChange","onEnter","triggerRef","popupRef","timeoutRef","hoverStateRef","useImperativeHandle","overlayProps","triggerProps","styls","overlayStyl","setOverlayStyl","handleResize","handleClickOutside","popNode","childNode","contains","clearTimeouts","handle","related","handleShow","handleMouseOverOut","handleHide","visibleArrow","preIcon","addonAfter","inputRef","addonRef","input","computedInputPadding","autoComplete","TimePickerPanel","onSelected","disableds","num","Date","Array","getDisabledItem","hideDisabled","liProps","currentDate","handleClick","currentCount","date","tag","Number","getItemInstance","TimePickerTime","precision","format","allowClear","setDate","timeProps","disabledHours","disabledMinutes","disabledSeconds","inputValue","formatter","datePickerTime","_props","dataStr","placeholder","readOnly","classnames","obj","keyName","DayRect","onSelectDay","end","col","prev","today","selected","next","isNaN","isValidDate","year","month","week","lastDay","day","cellDate","selectedDate","divProps","cellMonth","disabledDate","renderDay","WEEKTITLE","WEEKDAY","DatePickerDay","weekday","weekTitle","weekdayLabel","panelDate","row","curDate","DatePickerMonth","selectedMonth","monthLabel","DatePickerYear","panelNum","selectedYear","activeYear","setActiveYear","handleSelected","arg","DatePickerCaption","todayButton","renderMonth","MONTH_LABEL","onPanelChange","showTime","setSelectDate","setSelectPanelDate","curType","setType","selectDate","selectPanelDate","onSelectedDate","RenderDay","dayData","arr","label","titleFormat","todayLabel","setPanelDate","onPaging","titleLable","btngroup","handlePaging","propsNext","bordered","noHover","extra","footer","RadioAbstract","checked","prChecked","setPrevChecked","setChecked","CheckboxGroup","valueRef","childs","include","val","InternalCheckbox","indeterminate","toArray","activeKey","currentActiveKey","InternalCollapse","accordion","showArrow","propsActiveKey","setActiveKey","String","childProps","onItemClick","iconRender","header","transitionDuration","instance","getInstance","copy","isCopy","inputProps","handleChange","labelProps","colon","colSpan","span","Row","column","isHead","isLastCell","handleCell","InternalDescriptions","rows","columns","itemNode","leftSpans","generateChildrenRows","dashed","align","bodyCls","bodyProps","styl","footerView","iconView","titleView","dataList","onRemove","onAdd","uploadType","onPreview","fontSize","maxNumber","getBase64","file","reader","Promise","resolve","getListFiles","files","promiseFiles","i","fileListBase64","multiple","inValue","setFileList","handleClickInput","useCallback","openFileDialog","onFileUpload","onInputChange","updatedFileList","updatedList","Comp","Col","gutter","justify","gutterStyl","paddingRight","hasError","labelCls","labelClassName","htmlFor","help","FormItem","afterSubmit","initData","initial","submitting","errors","fields","cb","currentValue","newFormState","initialValue","formUnits","error","childField","controlField","labelFor","env","list","nextState","validator","setData","promise","onSubmitError","onSuccess","response","reset","handleReset","afterSubmitPromise","onSubmit","passesValidators","other","canSubmit","hasCurrentValue","handleSubmit","resetForm","ListItem","resetProps","InternalList","striped","renderItem","dataSource","items","childrenList","classString","fullscreen","indicatorView","cx","cy","r","strokeMiterlimit","tipsView","bgColor","disabledProps","onMouseEnter","onMouseLeave","Internal","multiline","isSubMenuItem","anchorCls","tagComp","MenuItem","MenuDivider","IconView","collapse","SubMenu","inlineIndent","overlayTriggerProps","menuProps","isCheck","checkedMenuItem","theme","inlineCollapsed","showIcon","description","rounded","Child","renderIcon","pickerCaptionProps","curPanelDate","open","captionType","setFullYear","handleSelectedDate","paging","notifys","create","setTimeout","closed","alertProps","Container","notifysDom","NotificationCreate","div","duration","willUnmount","nprops","notifysChild","forEach","alignment","total","pageSize","currentNumber","initPageSoure","itemCount","goto","textAlign","InternalPinCode","onBlur","onFocus","setPlacehold","values","inpProps","min","inputMode","setValues","onKeyDown","handleKeyDown","handleBlur","handleFocus","IconProgress","relativeStrokeWidth","elm","_strokeWidth","radius","perimeter","showText","progressStatus","percentView","progressInfo","bind","strokeLinecap","Circle","percentStyle","Line","defValue","character","onHoverChange","isLeft","setPrevValue","setValue","setHoverCount","halfon","hoverCount","activeCls","getValue","onMouseMove","option","onSelect","divRef","setSelectIconType","selectIconType","defaultMenuItem","menuItem","setSelectedValue","setSelectedLabel","marginTop","setInnerIsOpen","minHeight","maxHeight","overflowY","selectedValue","handleSelectChange","handleItemClick","onMouseOver","renderSelectIcon","showSearch","onSearch","InternalSteps","progressDot","direction","warpRef","filteredChildren","c","lastIndex","domNode","setLastStepOffsetWidth","calcStepOffsetWidth","stepNumber","lastStepOffsetWidth","stepItemStyle","stepItemDotStyle","iconNode","Dots","markRender","stepValue","marks","dots","progress","tooltip","bar","slider","indexBar","startX","curValue","barWidth","barOffsetLeft","move","setArrValue","arrValue","equal","numFloor","vals","valueToWidth","getWidthToValue","barStyl","markOffset","newData","val1","val2","half","getRangeValue","leftValue","rightValue","getValueToPercent","renderMarks","lleftPostion","onHandleBtnDown","getLabelValue","stepWidth","stepArray","mark","onCellHead","tds","ellipsis","titleNode","colNum","thProps","rowNum","getColspanNum","getRowspanNum","getLevelItems","levelTop","getAllColumnsKeys","onCell","tableLayout","objs","trData","onTabClick","activeItem","setSlideStyle","offsetLeft","calcSlideStyle","closeBtn","closable","Label","TreeNode","onItemSelected","parent","openKeys","onExit","level","selectedKeys","noChild","itemIsOpen","iconItem","childKeys","getChildKeys","checkedKeys","isHalfChecked","iconAnimation","renderTitle","isSelected","isContained","a","b","aStr","len","getParentKeys","getParentSelectKeys","defaultExpandAll","showLine","checkStrictly","onExpand","arrOpenKeys","setCurOpenKeys","currentKeys","v","expanded","selKeys","findKey","Set","setCurSelectedKeys","checkedProps","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","call","m","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","length","fulfilled","j","every","splice","n","getter","__esModule","definition","o","defineProperty","enumerable","get","f","chunkId","all","reduce","promises","u","miniCssF","g","globalThis","Function","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","push","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","event","onerror","onload","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","p","loadStylesheet","reject","fullhref","existingLinkTags","dataHref","existingStyleTags","findStylesheet","linkTag","errorType","realHref","err","Error","code","request","createStylesheet","installedCssChunks","miniCss","then","installedChunks","installedChunkData","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}