@uiw/doc 5.0.0-bate.2.0 → 5.0.0-bate.2.1
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.
- package/package.json +1 -1
- package/web/asset-manifest.json +152 -152
- package/web/index.html +1 -1
- package/web/static/css/8324.945ea0ef.chunk.css +2 -0
- package/web/static/css/8324.945ea0ef.chunk.css.map +1 -0
- package/web/static/js/{1515.2ee6027c.chunk.js → 1067.bc1ce0bc.chunk.js} +2 -2
- package/web/static/js/1067.bc1ce0bc.chunk.js.map +1 -0
- package/web/static/js/{1079.7e1718e2.chunk.js → 1079.cee8bf4b.chunk.js} +2 -2
- package/web/static/js/{6835.8df4972a.chunk.js.map → 1079.cee8bf4b.chunk.js.map} +1 -1
- package/web/static/js/{1175.2cf5938c.chunk.js → 1175.025154f6.chunk.js} +2 -2
- package/web/static/js/1175.025154f6.chunk.js.map +1 -0
- package/web/static/js/1451.9290ff6e.chunk.js +2 -0
- package/web/static/js/1451.9290ff6e.chunk.js.map +1 -0
- package/web/static/js/1515.e49eeede.chunk.js +2 -0
- package/web/static/js/{5860.fdc661e3.chunk.js.map → 1515.e49eeede.chunk.js.map} +1 -1
- package/web/static/js/{1548.27ecb715.chunk.js → 1548.c06cd1aa.chunk.js} +2 -2
- package/web/static/js/1548.c06cd1aa.chunk.js.map +1 -0
- package/web/static/js/1574.eed57e7b.chunk.js +2 -0
- package/web/static/js/1574.eed57e7b.chunk.js.map +1 -0
- package/web/static/js/1643.592a2aed.chunk.js +2 -0
- package/web/static/js/1643.592a2aed.chunk.js.map +1 -0
- package/web/static/js/1750.f7d9882a.chunk.js +2 -0
- package/web/static/js/1750.f7d9882a.chunk.js.map +1 -0
- package/web/static/js/2076.641fe002.chunk.js +2 -0
- package/web/static/js/{1643.65a6a029.chunk.js.map → 2076.641fe002.chunk.js.map} +1 -1
- package/web/static/js/2081.f1e1e13a.chunk.js +2 -0
- package/web/static/js/{3720.bedba81e.chunk.js.map → 2081.f1e1e13a.chunk.js.map} +1 -1
- package/web/static/js/2144.5bdc71b9.chunk.js +2 -0
- package/web/static/js/2144.5bdc71b9.chunk.js.map +1 -0
- package/web/static/js/2191.d420ff93.chunk.js +2 -0
- package/web/static/js/{4725.759d8a27.chunk.js.map → 2191.d420ff93.chunk.js.map} +1 -1
- package/web/static/js/2302.4ce71755.chunk.js +2 -0
- package/web/static/js/2302.4ce71755.chunk.js.map +1 -0
- package/web/static/js/{3508.43d1d7b5.chunk.js → 2326.f5cea921.chunk.js} +2 -2
- package/web/static/js/2326.f5cea921.chunk.js.map +1 -0
- package/web/static/js/2633.1c9d64fa.chunk.js +2 -0
- package/web/static/js/{3508.43d1d7b5.chunk.js.map → 2633.1c9d64fa.chunk.js.map} +1 -1
- package/web/static/js/2810.f01eb139.chunk.js +2 -0
- package/web/static/js/2810.f01eb139.chunk.js.map +1 -0
- package/web/static/js/{8133.ac548cf1.chunk.js → 2860.28b0717b.chunk.js} +2 -2
- package/web/static/js/{7741.1d082c1e.chunk.js.map → 2860.28b0717b.chunk.js.map} +1 -1
- package/web/static/js/2869.a6f070b7.chunk.js +2 -0
- package/web/static/js/{8322.e2aa4bc3.chunk.js.map → 2869.a6f070b7.chunk.js.map} +1 -1
- package/web/static/js/3061.478dcdde.chunk.js +2 -0
- package/web/static/js/3061.478dcdde.chunk.js.map +1 -0
- package/web/static/js/{3161.7ae98c7e.chunk.js → 3109.42c5dde3.chunk.js} +2 -2
- package/web/static/js/{4861.95afad19.chunk.js.map → 3109.42c5dde3.chunk.js.map} +1 -1
- package/web/static/js/3161.ca91fdfb.chunk.js +2 -0
- package/web/static/js/{2869.19a25def.chunk.js.map → 3161.ca91fdfb.chunk.js.map} +1 -1
- package/web/static/js/3177.b835abad.chunk.js +2 -0
- package/web/static/js/3177.b835abad.chunk.js.map +1 -0
- package/web/static/js/{4107.522b28bd.chunk.js → 3479.0f443246.chunk.js} +2 -2
- package/web/static/js/3479.0f443246.chunk.js.map +1 -0
- package/web/static/js/{3720.bedba81e.chunk.js → 3508.bc6175a6.chunk.js} +2 -2
- package/web/static/js/{1515.2ee6027c.chunk.js.map → 3508.bc6175a6.chunk.js.map} +1 -1
- package/web/static/js/3612.3426d2cc.chunk.js +2 -0
- package/web/static/js/{1067.929ba8ec.chunk.js.map → 3612.3426d2cc.chunk.js.map} +1 -1
- package/web/static/js/3720.4372a55c.chunk.js +2 -0
- package/web/static/js/3720.4372a55c.chunk.js.map +1 -0
- package/web/static/js/3896.59aac735.chunk.js +2 -0
- package/web/static/js/{2076.2a2f2e73.chunk.js.map → 3896.59aac735.chunk.js.map} +1 -1
- package/web/static/js/{4861.95afad19.chunk.js → 3906.3499450e.chunk.js} +2 -2
- package/web/static/js/3906.3499450e.chunk.js.map +1 -0
- package/web/static/js/3984.2b5211f2.chunk.js +2 -0
- package/web/static/js/{8133.ac548cf1.chunk.js.map → 3984.2b5211f2.chunk.js.map} +1 -1
- package/web/static/js/4061.abadc2d8.chunk.js +2 -0
- package/web/static/js/4061.abadc2d8.chunk.js.map +1 -0
- package/web/static/js/4093.86c8a6e7.chunk.js +2 -0
- package/web/static/js/{2302.67c3dc9d.chunk.js.map → 4093.86c8a6e7.chunk.js.map} +1 -1
- package/web/static/js/4107.ee0389f7.chunk.js +2 -0
- package/web/static/js/4107.ee0389f7.chunk.js.map +1 -0
- package/web/static/js/{530.941bb02b.chunk.js → 432.b5f3e84c.chunk.js} +2 -2
- package/web/static/js/432.b5f3e84c.chunk.js.map +1 -0
- package/web/static/js/4477.45d7332f.chunk.js +2 -0
- package/web/static/js/4477.45d7332f.chunk.js.map +1 -0
- package/web/static/js/4529.165b0e23.chunk.js +2 -0
- package/web/static/js/4529.165b0e23.chunk.js.map +1 -0
- package/web/static/js/{5388.d65e3afc.chunk.js → 4575.c61502db.chunk.js} +2 -2
- package/web/static/js/4575.c61502db.chunk.js.map +1 -0
- package/web/static/js/462.0113f0aa.chunk.js +2 -0
- package/web/static/js/462.0113f0aa.chunk.js.map +1 -0
- package/web/static/js/4725.f87f6a9a.chunk.js +2 -0
- package/web/static/js/4725.f87f6a9a.chunk.js.map +1 -0
- package/web/static/js/{8322.e2aa4bc3.chunk.js → 4861.59856c40.chunk.js} +2 -2
- package/web/static/js/{9808.012175de.chunk.js.map → 4861.59856c40.chunk.js.map} +1 -1
- package/web/static/js/530.961eb8dc.chunk.js +2 -0
- package/web/static/js/530.961eb8dc.chunk.js.map +1 -0
- package/web/static/js/5388.71f53c81.chunk.js +2 -0
- package/web/static/js/{2860.549461c8.chunk.js.map → 5388.71f53c81.chunk.js.map} +1 -1
- package/web/static/js/5447.b7e183c2.js +3 -0
- package/web/static/js/5447.b7e183c2.js.map +1 -0
- package/web/static/js/5672.e71b1893.chunk.js +3 -0
- package/web/static/js/5672.e71b1893.chunk.js.map +1 -0
- package/web/static/js/5804.c9e77448.chunk.js +2 -0
- package/web/static/js/5804.c9e77448.chunk.js.map +1 -0
- package/web/static/js/{5900.78ec478b.chunk.js → 5860.72e2ff6c.chunk.js} +2 -2
- package/web/static/js/{4575.1d093633.chunk.js.map → 5860.72e2ff6c.chunk.js.map} +1 -1
- package/web/static/js/5900.a738d024.chunk.js +2 -0
- package/web/static/js/{2191.fc8156c5.chunk.js.map → 5900.a738d024.chunk.js.map} +1 -1
- package/web/static/js/6307.e01808f2.chunk.js +2 -0
- package/web/static/js/{1574.e7e8ca0b.chunk.js.map → 6307.e01808f2.chunk.js.map} +1 -1
- package/web/static/js/636.29b28ea8.chunk.js +2 -0
- package/web/static/js/636.29b28ea8.chunk.js.map +1 -0
- package/web/static/js/649.a043bbc2.chunk.js +2 -0
- package/web/static/js/649.a043bbc2.chunk.js.map +1 -0
- package/web/static/js/6512.aaa3679d.chunk.js +2 -0
- package/web/static/js/6512.aaa3679d.chunk.js.map +1 -0
- package/web/static/js/6835.1f0ac5fd.chunk.js +2 -0
- package/web/static/js/6835.1f0ac5fd.chunk.js.map +1 -0
- package/web/static/js/7103.16a841cc.chunk.js +2 -0
- package/web/static/js/{5388.d65e3afc.chunk.js.map → 7103.16a841cc.chunk.js.map} +1 -1
- package/web/static/js/{713.3e83e480.chunk.js → 713.cba2a0c6.chunk.js} +2 -2
- package/web/static/js/713.cba2a0c6.chunk.js.map +1 -0
- package/web/static/js/7191.96165102.chunk.js +2 -0
- package/web/static/js/{8310.f89aa49b.chunk.js.map → 7191.96165102.chunk.js.map} +1 -1
- package/web/static/js/7237.6da91e31.chunk.js +2 -0
- package/web/static/js/7237.6da91e31.chunk.js.map +1 -0
- package/web/static/js/{3984.34d17ea2.chunk.js → 7499.f999fbb7.chunk.js} +2 -2
- package/web/static/js/7499.f999fbb7.chunk.js.map +1 -0
- package/web/static/js/7741.e35c5529.chunk.js +2 -0
- package/web/static/js/7741.e35c5529.chunk.js.map +1 -0
- package/web/static/js/8133.cd48aabf.chunk.js +2 -0
- package/web/static/js/8133.cd48aabf.chunk.js.map +1 -0
- package/web/static/js/8240.6cae5eae.chunk.js +2 -0
- package/web/static/js/{4093.80bd3f93.chunk.js.map → 8240.6cae5eae.chunk.js.map} +1 -1
- package/web/static/js/8310.c57a7251.chunk.js +2 -0
- package/web/static/js/8310.c57a7251.chunk.js.map +1 -0
- package/web/static/js/8322.0fcc9fc3.chunk.js +2 -0
- package/web/static/js/8322.0fcc9fc3.chunk.js.map +1 -0
- package/web/static/js/8400.8a187fa5.chunk.js +2 -0
- package/web/static/js/8400.8a187fa5.chunk.js.map +1 -0
- package/web/static/js/8467.dbaedbf3.chunk.js +2 -0
- package/web/static/js/8467.dbaedbf3.chunk.js.map +1 -0
- package/web/static/js/8543.c3cc627c.chunk.js +2 -0
- package/web/static/js/{7191.a1c96056.chunk.js.map → 8543.c3cc627c.chunk.js.map} +1 -1
- package/web/static/js/{9773.65938ab5.chunk.js → 9041.1111b32e.chunk.js} +2 -2
- package/web/static/js/{2081.a5c6c0b2.chunk.js.map → 9041.1111b32e.chunk.js.map} +1 -1
- package/web/static/js/9375.bce50c7b.chunk.js +2 -0
- package/web/static/js/9375.bce50c7b.chunk.js.map +1 -0
- package/web/static/js/9666.230f6577.chunk.js +2 -0
- package/web/static/js/9666.230f6577.chunk.js.map +1 -0
- package/web/static/js/9773.b2890535.chunk.js +2 -0
- package/web/static/js/{1079.7e1718e2.chunk.js.map → 9773.b2890535.chunk.js.map} +1 -1
- package/web/static/js/{9666.0ff70cca.chunk.js → 9808.47f7ec34.chunk.js} +2 -2
- package/web/static/js/9808.47f7ec34.chunk.js.map +1 -0
- package/web/static/js/{9915.f4005b98.chunk.js → 9915.6a330f02.chunk.js} +2 -2
- package/web/static/js/{2633.bb70d96d.chunk.js.map → 9915.6a330f02.chunk.js.map} +1 -1
- package/web/static/js/9985.c9a4d2cc.chunk.js +2 -0
- package/web/static/js/{2144.f1ee5d55.chunk.js.map → 9985.c9a4d2cc.chunk.js.map} +1 -1
- package/web/static/js/{9986.06bbe010.chunk.js → 9986.3f57f22b.chunk.js} +2 -2
- package/web/static/js/9986.3f57f22b.chunk.js.map +1 -0
- package/web/static/js/{main.2fad8643.js → main.7b185d9a.js} +2 -2
- package/web/static/js/main.7b185d9a.js.map +1 -0
- package/web/static/css/8324.d4ef4381.chunk.css +0 -2
- package/web/static/css/8324.d4ef4381.chunk.css.map +0 -1
- package/web/static/js/1067.929ba8ec.chunk.js +0 -2
- package/web/static/js/1175.2cf5938c.chunk.js.map +0 -1
- package/web/static/js/1451.71d00f70.chunk.js +0 -2
- package/web/static/js/1451.71d00f70.chunk.js.map +0 -1
- package/web/static/js/1548.27ecb715.chunk.js.map +0 -1
- package/web/static/js/1574.e7e8ca0b.chunk.js +0 -2
- package/web/static/js/1643.65a6a029.chunk.js +0 -2
- package/web/static/js/1750.5227bb5e.chunk.js +0 -2
- package/web/static/js/1750.5227bb5e.chunk.js.map +0 -1
- package/web/static/js/2076.2a2f2e73.chunk.js +0 -2
- package/web/static/js/2081.a5c6c0b2.chunk.js +0 -2
- package/web/static/js/2144.f1ee5d55.chunk.js +0 -2
- package/web/static/js/2191.fc8156c5.chunk.js +0 -2
- package/web/static/js/2302.67c3dc9d.chunk.js +0 -2
- package/web/static/js/2326.7de8ad72.chunk.js +0 -2
- package/web/static/js/2326.7de8ad72.chunk.js.map +0 -1
- package/web/static/js/2633.bb70d96d.chunk.js +0 -2
- package/web/static/js/2810.c0c4b751.chunk.js +0 -2
- package/web/static/js/2810.c0c4b751.chunk.js.map +0 -1
- package/web/static/js/2860.549461c8.chunk.js +0 -2
- package/web/static/js/2869.19a25def.chunk.js +0 -2
- package/web/static/js/3061.c6cb9624.chunk.js +0 -2
- package/web/static/js/3061.c6cb9624.chunk.js.map +0 -1
- package/web/static/js/3109.4af44a9a.chunk.js +0 -2
- package/web/static/js/3109.4af44a9a.chunk.js.map +0 -1
- package/web/static/js/3161.7ae98c7e.chunk.js.map +0 -1
- package/web/static/js/3177.08de3d50.chunk.js +0 -2
- package/web/static/js/3177.08de3d50.chunk.js.map +0 -1
- package/web/static/js/3479.81aeb044.chunk.js +0 -2
- package/web/static/js/3479.81aeb044.chunk.js.map +0 -1
- package/web/static/js/3612.b01520f8.chunk.js +0 -2
- package/web/static/js/3612.b01520f8.chunk.js.map +0 -1
- package/web/static/js/3896.bc8dd991.chunk.js +0 -2
- package/web/static/js/3896.bc8dd991.chunk.js.map +0 -1
- package/web/static/js/3906.4b3d3d6f.chunk.js +0 -2
- package/web/static/js/3906.4b3d3d6f.chunk.js.map +0 -1
- package/web/static/js/3984.34d17ea2.chunk.js.map +0 -1
- package/web/static/js/4061.7e66b830.chunk.js +0 -2
- package/web/static/js/4061.7e66b830.chunk.js.map +0 -1
- package/web/static/js/4093.80bd3f93.chunk.js +0 -2
- package/web/static/js/4107.522b28bd.chunk.js.map +0 -1
- package/web/static/js/432.842962e5.chunk.js +0 -2
- package/web/static/js/432.842962e5.chunk.js.map +0 -1
- package/web/static/js/4477.fd1c653c.chunk.js +0 -2
- package/web/static/js/4477.fd1c653c.chunk.js.map +0 -1
- package/web/static/js/4529.96f6ee1c.chunk.js +0 -2
- package/web/static/js/4529.96f6ee1c.chunk.js.map +0 -1
- package/web/static/js/4575.1d093633.chunk.js +0 -2
- package/web/static/js/462.39e1bec8.chunk.js +0 -2
- package/web/static/js/462.39e1bec8.chunk.js.map +0 -1
- package/web/static/js/4725.759d8a27.chunk.js +0 -2
- package/web/static/js/530.941bb02b.chunk.js.map +0 -1
- package/web/static/js/5447.8925440e.js +0 -3
- package/web/static/js/5447.8925440e.js.map +0 -1
- package/web/static/js/5497.0569d44a.chunk.js +0 -3
- package/web/static/js/5497.0569d44a.chunk.js.map +0 -1
- package/web/static/js/5804.8631bd61.chunk.js +0 -2
- package/web/static/js/5804.8631bd61.chunk.js.map +0 -1
- package/web/static/js/5860.fdc661e3.chunk.js +0 -2
- package/web/static/js/5900.78ec478b.chunk.js.map +0 -1
- package/web/static/js/6307.0d830328.chunk.js +0 -2
- package/web/static/js/6307.0d830328.chunk.js.map +0 -1
- package/web/static/js/636.19ac1d51.chunk.js +0 -2
- package/web/static/js/636.19ac1d51.chunk.js.map +0 -1
- package/web/static/js/649.2a00838f.chunk.js +0 -2
- package/web/static/js/649.2a00838f.chunk.js.map +0 -1
- package/web/static/js/6512.b2e824e1.chunk.js +0 -2
- package/web/static/js/6512.b2e824e1.chunk.js.map +0 -1
- package/web/static/js/6835.8df4972a.chunk.js +0 -2
- package/web/static/js/7103.c3000863.chunk.js +0 -2
- package/web/static/js/7103.c3000863.chunk.js.map +0 -1
- package/web/static/js/713.3e83e480.chunk.js.map +0 -1
- package/web/static/js/7191.a1c96056.chunk.js +0 -2
- package/web/static/js/7237.3442e232.chunk.js +0 -2
- package/web/static/js/7237.3442e232.chunk.js.map +0 -1
- package/web/static/js/7499.6b3a5f0e.chunk.js +0 -2
- package/web/static/js/7499.6b3a5f0e.chunk.js.map +0 -1
- package/web/static/js/7741.1d082c1e.chunk.js +0 -2
- package/web/static/js/8240.8dee1b76.chunk.js +0 -2
- package/web/static/js/8240.8dee1b76.chunk.js.map +0 -1
- package/web/static/js/8310.f89aa49b.chunk.js +0 -2
- package/web/static/js/8400.3867a875.chunk.js +0 -2
- package/web/static/js/8400.3867a875.chunk.js.map +0 -1
- package/web/static/js/8467.0c2d6f23.chunk.js +0 -2
- package/web/static/js/8467.0c2d6f23.chunk.js.map +0 -1
- package/web/static/js/8543.1a2df9ac.chunk.js +0 -2
- package/web/static/js/8543.1a2df9ac.chunk.js.map +0 -1
- package/web/static/js/9041.bfa25850.chunk.js +0 -2
- package/web/static/js/9041.bfa25850.chunk.js.map +0 -1
- package/web/static/js/9375.5c8f3196.chunk.js +0 -2
- package/web/static/js/9375.5c8f3196.chunk.js.map +0 -1
- package/web/static/js/9666.0ff70cca.chunk.js.map +0 -1
- package/web/static/js/9773.65938ab5.chunk.js.map +0 -1
- package/web/static/js/9808.012175de.chunk.js +0 -2
- package/web/static/js/9915.f4005b98.chunk.js.map +0 -1
- package/web/static/js/9985.80b2102a.chunk.js +0 -2
- package/web/static/js/9985.80b2102a.chunk.js.map +0 -1
- package/web/static/js/9986.06bbe010.chunk.js.map +0 -1
- package/web/static/js/main.2fad8643.js.map +0 -1
- /package/web/static/js/{5447.8925440e.js.LICENSE.txt → 5447.b7e183c2.js.LICENSE.txt} +0 -0
- /package/web/static/js/{5497.0569d44a.chunk.js.LICENSE.txt → 5672.e71b1893.chunk.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/main.2fad8643.js","mappings":"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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?2ec2","webpack://website/./src/components/SiderMenu/index.module.less?ef2e","components/icons/nav.tsx","components/SiderMenu/index.tsx","webpack://website/./src/components/Nav/index.module.less?500e","contexts/index.ts","components/icons/menu.tsx","components/Nav/index.tsx","layouts/BaseLayout.tsx","routers.tsx","index.tsx","react-i18next-config.ts","../../packages/utils/src/getScroll.ts","../../packages/utils/src/noop.ts","../../packages/utils/src/theme.ts","../../packages/react-affix/src/utils.ts","../../packages/react-affix/src/index.tsx","../../packages/react-portal/src/index.tsx","../../packages/react-overlay/src/style/index.ts","../../packages/react-overlay/src/index.tsx","../../packages/react-icon/src/style/index.ts","../../packages/react-icon/src/index.tsx","../../packages/react-button/src/style/theme.ts","../../packages/react-button/src/style/Variant.ts","../../packages/react-button/src/style/base.ts","../../packages/react-button/src/style/index.ts","../../packages/react-button/src/index.tsx","../../packages/react-modal/src/style/index.ts","../../packages/react-modal/src/index.tsx","../../packages/react-modal/src/CallShow.tsx","../../packages/react-alert/src/style/index.ts","../../packages/react-alert/src/index.tsx","../../packages/react-auto-link/src/index.tsx","../../packages/react-avatar/src/style/index.ts","../../packages/react-avatar/src/index.tsx","../../packages/react-back-top/src/utils.ts","../../packages/react-back-top/src/style/index.ts","../../packages/react-back-top/src/index.tsx","../../packages/react-badge/src/style/index.ts","../../packages/react-badge/src/index.tsx","../../packages/react-breadcrumb/src/style/index.ts","../../packages/react-breadcrumb/src/Item.tsx","../../packages/react-breadcrumb/src/Breadcrumb.tsx","../../packages/react-breadcrumb/src/index.ts","../../packages/react-button-group/src/style/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/style/index.ts","../../packages/react-overlay-trigger/src/index.tsx","../../packages/react-popover/src/style/index.ts","../../packages/react-popover/src/index.tsx","../../packages/react-popover/src/Confirm.tsx","../../packages/react-input/src/style/input.ts","../../packages/react-input/src/InputNumber.tsx","../../packages/react-input/src/index.tsx","../../packages/react-time-picker/src/style/index.ts","../../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/style/theme.ts","../../packages/react-date-picker/src/style/day.ts","../../packages/react-date-picker/src/DatePickerDay.tsx","../../packages/react-date-picker/src/style/year-month.ts","../../packages/react-date-picker/src/DatePickerMonth.tsx","../../packages/react-date-picker/src/DatePickerYear.tsx","../../packages/react-date-picker/src/style/caption.ts","../../packages/react-date-picker/src/DatePickerCaption.tsx","../../packages/react-date-picker/src/style/index.ts","../../packages/react-date-picker/src/index.tsx","../../packages/react-calendar/src/style/index.ts","../../packages/react-calendar/src/DayLabel.tsx","../../packages/react-calendar/src/index.tsx","../../packages/react-card/src/style/theme.ts","../../packages/react-card/src/style/utils.ts","../../packages/react-card/src/style/index.ts","../../packages/react-card/src/index.tsx","../../packages/react-carousel/src/style/index.ts","../../packages/react-carousel/src/index.tsx","../../packages/react-dropdown/src/index.tsx","../../packages/react-menu/src/style/index.ts","../../packages/react-menu/src/MenuItem.tsx","../../packages/react-menu/src/Divider.tsx","../../packages/react-menu/src/hooks.ts","../../packages/react-menu/src/SubMenu.tsx","../../packages/react-menu/src/Menu.tsx","../../packages/react-menu/src/index.ts","../../packages/react-cascader/src/style/index.ts","../../packages/react-cascader/src/index.tsx","../../packages/react-radio/src/style/index.ts","../../packages/react-radio/src/RadioAbstract.tsx","../../packages/react-radio/src/Radio.tsx","../../packages/react-radio/src/RadioGroup.tsx","../../packages/react-radio/src/RadioButton.tsx","../../packages/react-checkbox/src/style/index.ts","../../packages/react-checkbox/src/Group.tsx","../../packages/react-checkbox/src/Checkbox.tsx","../../packages/react-checkbox/src/index.ts","../../packages/react-collapse/src/style/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/style/index.ts","../../packages/react-date-input/src/DateInputRange.tsx","../../packages/react-date-input/src/index.tsx","../../packages/react-descriptions/src/DescriptionsItem.tsx","../../packages/react-descriptions/src/style/index.ts","../../packages/react-descriptions/src/Cell.tsx","../../packages/react-descriptions/src/Row.tsx","../../packages/react-descriptions/src/index.tsx","../../packages/react-divider/src/style/index.ts","../../packages/react-divider/src/index.tsx","../../packages/react-drawer/src/style/index.ts","../../packages/react-drawer/src/index.tsx","../../packages/react-empty/src/style/index.ts","../../packages/react-empty/src/index.tsx","../../packages/react-file-input/src/style/index.ts","../../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/style/col.ts","../../packages/react-grid/src/Col.tsx","../../packages/react-grid/src/style/row.ts","../../packages/react-grid/src/Row.tsx","../../packages/react-select/src/Option.tsx","../../packages/react-select/src/Group.tsx","../../packages/react-select/src/style/index.ts","../../packages/react-select/src/index.tsx","../../packages/react-textarea/src/style/index.ts","../../packages/react-textarea/src/index.tsx","../../packages/react-form/src/style/item.ts","../../packages/react-form/src/FormItem.tsx","../../packages/react-form/src/style/index.ts","../../packages/react-form/src/Form.tsx","../../packages/react-form/src/index.ts","../../packages/react-list/src/style/index.ts","../../packages/react-list/src/Item.tsx","../../packages/react-list/src/index.tsx","../../packages/react-loader/src/style/index.ts","../../packages/react-loader/src/index.tsx","../../packages/react-message/src/style/index.ts","../../packages/react-message/src/index.tsx","../../packages/react-month-picker/src/style/index.ts","../../packages/react-month-picker/src/index.tsx","../../packages/react-notify/src/style/index.ts","../../packages/react-notify/src/Container.tsx","../../packages/react-notify/src/index.tsx","../../packages/utils/src/randomid.ts","../../packages/react-pagination/src/style/index.ts","../../packages/react-pagination/src/index.tsx","../../packages/react-pin-code/src/style/index.ts","../../packages/react-pin-code/src/index.tsx","../../packages/react-progress/src/utils.tsx","../../packages/react-progress/src/style/index.ts","../../packages/react-progress/src/Circle.tsx","../../packages/react-progress/src/Line.tsx","../../packages/react-progress/src/index.ts","../../packages/react-rate/src/style/index.ts","../../packages/react-rate/src/index.tsx","../../packages/react-tag/src/style/index.ts","../../packages/react-tag/src/index.tsx","../../packages/react-search-select/src/style/index.ts","../../packages/react-search-select/src/index.tsx","../../packages/react-steps/src/style/index.ts","../../packages/react-steps/src/Steps.tsx","../../packages/react-steps/src/Step.tsx","../../packages/react-steps/src/index.ts","../../packages/react-slider/src/style/index.ts","../../packages/react-slider/src/Dots.tsx","../../packages/react-slider/src/index.tsx","../../packages/react-switch/src/style/index.ts","../../packages/react-switch/src/index.tsx","../../packages/react-table/src/style/index.ts","../../packages/react-table/src/util.ts","../../packages/react-table/src/ThComponent.tsx","../../packages/react-table/src/Thead.tsx","../../packages/react-table/src/Expandable.tsx","../../packages/react-table/src/TableTr.tsx","../../packages/react-table/src/index.tsx","../../packages/react-tabs/src/style/index.ts","../../packages/react-tabs/src/index.tsx","../../packages/react-tabs/src/Pane.tsx","../../packages/react-tooltip/src/style/index.ts","../../packages/react-tooltip/src/index.tsx","../../packages/react-tree/src/style/index.ts","../../packages/react-tree/src/TreeNode.tsx","../../packages/react-tree/src/index.tsx","../../packages/react-tree-checked/src/style/index.ts","../../packages/react-tree-checked/src/index.tsx","../../packages/react-search-tree/src/style/index.ts","../../packages/react-search-tree/src/SearchTagInput.tsx","../../packages/react-search-tree/src/index.tsx","../../packages/react-transfer/src/index.tsx","../../packages/react-transfer/src/style/index.ts","../webpack/bootstrap","../webpack/runtime/chunk loaded","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../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/runtime/nonce","../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 nav from '../icons/nav';\nimport { useTranslation } from 'react-i18next';\nimport menu from '../../menu.json';\n\nexport default function SiderMenu() {\n const location = useLocation();\n const { t: trans } = useTranslation();\n // const menu = JSON.parse(trans('menu'));\n const data = menu.find((item) => new RegExp(`^${item.path || ''}`).test(location.pathname));\n\n if (!data?.children) {\n return null;\n }\n\n const pre = `menu.${data.path}Children.`;\n const preDivider = `menu.divider.`;\n\n const title = trans(`menu.${data.path}`);\n\n return (\n <div className={styles.wapper}>\n <h2 className={styles.title}>\n {(nav as any)[data.icon]}\n <span>{title}</span>\n </h2>\n <div className={styles.menu}>\n {data.children &&\n data.children.map((item, idx) => {\n let newName = item.name;\n let newPre = item.divider ? preDivider : pre;\n if (item.path || item.translation) {\n newName = item.translation ? trans(`${newPre}${item.translation}`) : trans(`${newPre}${item.path}`);\n }\n if (item.divider) {\n return (\n <div key={idx} className={styles.divider}>\n {newName}\n </div>\n );\n }\n if (/^http(?:|s):\\/\\//.test(item.path || '')) {\n return (\n <a key={idx} href={item.path} target=\"__blank\">\n {newName}\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 {newName}\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';\nimport i18n from 'react-i18next-config';\nimport { i18n as i18nType } from 'i18next';\n\ntype InitialState = {\n layout: 'top' | 'left' | 'mix';\n i18n: i18nType;\n};\n\nexport const initialState: InitialState = {\n layout: 'top',\n i18n,\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, ChangeEvent, useMemo, useState } from 'react';\nimport { SearchSelect, Tooltip } from 'uiw';\nimport { NavLink, Link } from 'react-router-dom';\nimport styles from './index.module.less';\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';\nimport { useTranslation } from 'react-i18next';\nimport data from '../../menu.json';\nimport '@wcj/dark-mode';\n\nexport default function Nav() {\n const { state } = useContext(ThemeContext);\n const { t: trans, i18n } = useTranslation();\n const [searchText, setSearchText] = useState('');\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n // const data = useMemo(() => JSON.parse(trans('menu')), [i18n.language]);\n const menuSearchOption = useMemo(() => {\n const pre = `menu./componentsChildren.`;\n const preDivider = `menu.divider.`;\n const components = data.find((m) => m.path === '/components')?.children || [];\n const option = [];\n for (let i = 0; i < components.length; i++) {\n const com = components[i];\n const label = com.name;\n if (com.path && label.toLocaleLowerCase().includes(searchText.toLocaleLowerCase())) {\n let newName = com.name;\n let newPre = com.divider ? preDivider : pre;\n if (com.path || com.translation) {\n newName = com.translation ? trans(`${newPre}${com.translation}`) : trans(`${newPre}${com.path}`);\n }\n const item = { label: newName, value: com.path || '' };\n option.push(item);\n }\n }\n return option;\n }, [searchText, trans]);\n\n const changeLanguage = (e: ChangeEvent<HTMLSelectElement>) => {\n i18n.changeLanguage(e.target.value);\n };\n\n const onSearchMenu = (searchText: string) => {\n setSearchText(searchText);\n };\n\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 <div style={{ display: 'flex' }}>\n {data.map(({ path, name, icon, translation }, idx: number) => {\n if (Object.keys(nav).includes(icon)) {\n icon = (nav as any)[icon];\n }\n let newName = translation ? trans(`menu.${translation}`) : trans(`menu.${path}`);\n if (/^\\//.test(path)) {\n newName = trans(`menu.${path}`);\n }\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>{newName}</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' }}>{newName}</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>{newName}</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' }}>{newName}</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 <SearchSelect\n size=\"large\"\n style={{ maxWidth: 400, top: 30, display: 'flex', alignItems: 'center', marginLeft: 5 }}\n placeholder={trans('menu.searchInPlaceholder')}\n showSearch={true}\n onSearch={onSearchMenu}\n value={searchText}\n option={menuSearchOption}\n onSelect={(value) => {\n const isHttp = new RegExp(`^http`).test(value as string);\n if (isHttp) window.open(value as string);\n else window.location.href = `/#/components/${value}`;\n }}\n />\n </div>\n <div className={[styles.btn, state.layout === 'left' ? null : styles.btnTop].filter(Boolean).join(' ').trim()}>\n <dark-mode light=\"Light\" dark=\"Dart\"></dark-mode>\n <select value={i18n.language} onChange={(e) => changeLanguage(e)}>\n <option value=\"zh-CN\">简体中文</option>\n <option value=\"en-US\">English</option>\n </select>\n\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({ ...state, 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, width: '100%' }}>\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 Cascader = Loadable(lazy(() => import('./routes/components/cascader')));\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 Carousel = Loadable(lazy(() => import('./routes/components/carousel')));\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 SearchTree = Loadable(lazy(() => import('./routes/components/search-tree')));\nconst Transfer = Loadable(lazy(() => import('./routes/components/transfer')));\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')));\nconst Empty = Loadable(lazy(() => import('./routes/components/empty')));\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/carousel', element: <Carousel /> },\n { path: '/components/cascader', element: <Cascader /> },\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/search-tree', element: <SearchTree /> },\n { path: '/components/transfer', element: <Transfer /> },\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: '/components/empty', element: <Empty /> },\n { path: '*', element: <NoMatch /> },\n ],\n },\n // {\n // path: '/components',\n // element: <BaseLayout />,\n // children: [\n // { index: true, element: <Overview /> },\n // { path: '/components/en-us/button', element: <Button language=\"en-US\" /> },\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/client';\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);\n\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.createRoot(document.getElementById('root')!).render(\n <HashRouter>\n <Provider>\n <App />\n </Provider>\n </HashRouter>,\n);\n","import i18n from 'i18next';\nimport { initReactI18next } from 'react-i18next';\n// i18next语言检测插件,用于检测浏览器中的用户语言\nimport LanguageDetector from 'i18next-browser-languagedetector';\nimport Backend from 'i18next-http-backend';\n\ni18n\n .use(Backend)\n .use(LanguageDetector) //嗅探当前浏览器语言 zh-CN\n .use(initReactI18next) // 将 i18n 向下传递给 react-i18next\n .init({\n //初始化\n // resources, //本地多语言数据\n fallbackLng: 'zh-CN', //默认当前环境的语言\n load: 'currentOnly', // 定义要查找的语言代码策略\n detection: {\n caches: ['localStorage', 'sessionStorage', 'cookie'],\n },\n backend: {\n // @ts-ignore\n loadPath: `${LOADPATH}/locales/{{lng}}/{{ns}}.json`,\n },\n });\n\nconst DefLan = 'zh-CN';\n\nexport { DefLan };\n\nexport default i18n;\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","export function noop() {}\n","import React from 'react';\n\nexport type CssVariableType = Record<string, string | number>;\n\n/**\n * @description: 转换驼峰命名\n * @param {string} value 变量值\n * @param {string} ident 前缀标识\n */\nexport const transformationHump = (value: string, ident: string) => {\n const Reg = new RegExp(`^${ident}`);\n return value.replace(Reg, '').replace(/\\-(\\w)/g, function (all, letter) {\n return letter.toUpperCase();\n });\n};\n\n/**\n * `css 变量`转换成`主题变量`规则 :css变量去除标识(`--w-`)之后,进行转换 驼峰命名\n * @description: css 变量转换主题变量\n * @param {CssVariableType} cssVariable css变量集合\n * @param {string} ident 前缀标识\n */\nexport const transformationVariable = (cssVariable: CssVariableType, ident: string) => {\n const Variable: Record<string, string> = {};\n Object.keys(cssVariable || {}).forEach((key) => {\n const Reg = new RegExp(`^${ident}`);\n const name = transformationHump(key, ident);\n if (Reg.test(ident)) {\n // 这种是变量的方式\n Variable[name] = `var(${key})`;\n } else {\n // 这种是直接值的方式\n Variable[name] = `${cssVariable[key]}`;\n }\n });\n return Variable;\n};\n\nexport type DefaultThemeType = Record<string, string | number>;\n\nexport type ThemeVariantValueOptions<T = DefaultThemeType, M = DefaultThemeType> = {\n defaultTheme?: Partial<T>;\n theme?: Partial<M>;\n};\n\n/**\n * @description: 获取主题变量值\n * @param {options} options\n * @param {string} field 字段\n */\nexport const getThemeVariantValue = <T extends DefaultThemeType, M extends DefaultThemeType>(\n options: ThemeVariantValueOptions<T, M>,\n field?: string,\n) => {\n const { defaultTheme, theme } = options;\n if (field) {\n const defaultValue = ((defaultTheme || {}) as T)[field];\n const value = ((theme || {}) as M)[field];\n if (value || typeof value === 'number') {\n return value;\n }\n return defaultValue;\n }\n return '';\n};\n\nexport type GetStyledCloneComponentProps<T = any, M = Record<string, any>> = {\n children?: React.ReactNode;\n /** 处理的子集传递的参数 **/\n oProps?: T & { className?: string };\n /** 是否拼接原始的className */\n isChildClassName?: boolean;\n className?: string;\n} & M;\n\n/**\n * styled-components 当遇到 clone 子集的时候,利用 as 功能进行转换\n *\n * 原来:React.cloneElement(child,child.props)\n *\n * 新的:\n * const Demo = styled.div``\n * <Demo as={GetStyledCloneComponent} >${child}</Demo>\n *\n *\n * **/\nexport const GetStyledCloneComponent = <T = any, M = Record<string, any>>(\n props: GetStyledCloneComponentProps<T, M>,\n) => {\n const { children, oProps, isChildClassName = true, className: styleClassName } = props;\n if (React.isValidElement(children)) {\n const { className: oClassName = '', ...rest } = oProps || {};\n const childProps = children?.props || {};\n const className = childProps?.className || '';\n const oldCls = isChildClassName ? className : '';\n const cls = [oldCls]\n .concat([oClassName])\n .concat([styleClassName])\n .filter((ite) => ite && ite.trim())\n .join(' ');\n return React.cloneElement(children, { ...(childProps || {}), ...rest, className: cls });\n }\n return React.createElement(React.Fragment, { children });\n};\n\n/**\n * 通过 className 获取 react-transition-group 状态\n * **/\nexport const getTransitionGroupStatusType = (pix: string, className: string) => {\n const reg = new RegExp(`^${pix}`);\n // 字符串进行分割数组\n const classArr = className\n .split(' ')\n .filter((name) => reg.test(name))\n .map((name) => name.replace(reg, ''))\n .filter(Boolean);\n return classArr;\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","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\nimport { transProps, OverlayProps } from 'src';\nimport { TransitionStatus } from 'react-transition-group';\n\nexport const OverlayStyleTheme = {\n backgroundColorOverlayBackdrop: 'rgba(16, 22, 26, 0.7)',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof OverlayStyleTheme>;\n\nexport interface OverlayStyleWrapDivProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVar {}\nexport interface OverlayStyleWrapSpanProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement | ThemeVar>, HTMLDivElement> {}\n\nexport interface OverlayWrapProps extends ThemeVariantValueOptions, Pick<OverlayProps, 'usePortal' | 'isOpen'> {\n status?: TransitionStatus;\n trans?: transProps;\n openClass?: boolean;\n}\n\nexport const ContentWrap = styled.span<OverlayStyleWrapSpanProps>`\n position: relative;\n outline: 0;\n display: inline-block;\n vertical-align: middle;\n text-align: left;\n margin: 20px 0;\n z-index: 20;\n`;\n\nexport const ContainerWrap = styled.div<OverlayStyleWrapDivProps>`\n position: absolute;\n overflow: auto;\n z-index: 99999;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n &:before {\n content: ' ';\n display: inline-block;\n height: 100%;\n width: 1px;\n vertical-align: middle;\n }\n`;\n\nexport const BackdropWrap = styled.div<OverlayStyleWrapDivProps>`\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n opacity: 1;\n z-index: 20;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: OverlayStyleTheme }, 'backgroundColorOverlayBackdrop')};\n overflow: auto;\n user-select: none;\n`;\n\nexport const OverlayWrap = styled.div<OverlayWrapProps>`\n ${(props) => css`\n position: fixed;\n overflow: auto;\n top: 0;\n right: 0;\n left: 0;\n outline: 0;\n bottom: 0;\n z-index: 999;\n -webkit-overflow-scrolling: touch;\n text-align: center;\n height: 100%;\n width: 100%;\n display: none;\n &.open {\n z-index: 9999;\n }\n\n ${props.openClass &&\n css`\n overflow: hidden;\n `}\n\n ${!props.usePortal &&\n css`\n position: absolute;\n overflow: initial;\n ${ContainerWrap} {\n position: relative;\n }\n ${BackdropWrap} {\n position: absolute;\n }\n `}\n\n ${props.isOpen &&\n css`\n display: inherit;\n `}\n\n &.w-overlay-enter ${BackdropWrap} {\n opacity: 0;\n }\n &.w-overlay-enter-active ${BackdropWrap} {\n opacity: 1;\n transition: opacity 300ms ease-in;\n }\n &.w-overlay-exit ${BackdropWrap} {\n opacity: 1;\n }\n &.w-overlay-exit-active ${BackdropWrap} {\n opacity: 0;\n transition: opacity 300ms ease-in;\n }\n &.w-overlay-enter ${ContentWrap} {\n transform: scale(0.5);\n opacity: 0;\n }\n &.w-overlay-enter-active ${ContentWrap} {\n opacity: 1;\n transform: translate(0);\n transition: transform 300ms ease, opacity 300ms ease;\n }\n &.w-overlay-exit ${ContentWrap} {\n opacity: 1;\n transform: translate(0);\n transition: transform 300ms ease, opacity 300ms ease;\n }\n &.w-overlay-exit-active ${ContentWrap} {\n transform: scale(0.5);\n opacity: 0;\n }\n &.w-overlay-enter,\n &.w-overlay-enter-done,\n &.w-overlay-exit {\n display: inherit;\n }\n `}\n`;\n\n// BackdropWrap.defaultProps = {\n// defaultTheme: OverlayStyleTheme,\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, TransitionStatus } from 'react-transition-group/Transition';\nimport Portal, { PortalProps } from '@uiw/react-portal';\nimport { GetStyledCloneComponent, IProps, noop } from '@uiw/utils';\n\nimport { ContainerWrap, ContentWrap, OverlayWrap, BackdropWrap } from './style';\nexport * from './style';\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 type transProps = 'enterActive' | 'exitActive' | 'done' | undefined;\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 onEnter = noop,\n onExiting = noop,\n onEntering = noop,\n onEntered = noop,\n onExit = noop,\n children,\n dialogProps = {},\n ...otherProps\n } = props;\n\n const [isOpen, setIsOpen] = useState<boolean>();\n // const [isOpen, setIsOpen] = useState(props.isOpen || false);\n const [visible, setVisible] = useState(false);\n const container = useRef<HTMLDivElement>(null);\n const overlay = useRef(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(<ContentWrap as={GetStyledCloneComponent}>{children}</ContentWrap>, {\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 <ContentWrap {...dialogProps} className={`${prefixCls}-content`}>\n {children}\n </ContentWrap>\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 const [trans, transSet] = useState<transProps>(undefined);\n\n const TransitionGroupComp = (\n <CSSTransition\n // as={CSSTransition}\n classNames={transitionName}\n unmountOnExit={unmountOnExit}\n timeout={timeout!}\n in={isOpen}\n onEnter={(isAppearing: boolean) => {\n onEnter(overlay.current!, isAppearing);\n }}\n onEntering={(isAppearing: boolean) => {\n transSet('enterActive');\n onOpening(overlay.current!, isAppearing);\n onEntering(overlay.current!);\n }}\n onEntered={(isAppearing: boolean) => {\n onOpened(overlay.current!, isAppearing);\n onEntered(overlay.current!);\n }}\n onExiting={() => {\n transSet('exitActive');\n onClosing(overlay.current!);\n onExiting(overlay.current!);\n }}\n onExited={() => {\n transSet('done');\n handleClosed(overlay.current!);\n onExit(overlay.current!);\n }}\n nodeRef={overlay}\n {...otherProps}\n >\n {(status: TransitionStatus) => {\n return (\n <OverlayWrap\n style={style}\n ref={overlay}\n usePortal={usePortal}\n status={status}\n isOpen={isOpen}\n trans={trans}\n openClass={visible && hasBackdrop && usePortal}\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(<BackdropWrap />, {\n ...backdropProps,\n trans,\n onMouseDown: handleBackdropMouseDown,\n className: [`${prefixCls}-backdrop`, backdropProps.className].filter(Boolean).join(' ').trim(),\n tabIndex: maskClosable ? 0 : null,\n })}\n {usePortal ? (\n <ContainerWrap ref={container} onMouseDown={handleBackdropMouseDown} className={`${prefixCls}-container`}>\n {cloneElement(decoratedChild, { 'data-status': status })}\n </ContainerWrap>\n ) : (\n cloneElement(decoratedChild, { 'data-status': status })\n )}\n </OverlayWrap>\n );\n }}\n </CSSTransition>\n );\n if (visible && usePortal) {\n return <Portal {...{ ...portalProps }}>{TransitionGroupComp}</Portal>;\n } else {\n return TransitionGroupComp;\n }\n}\n\nexport { ContainerWrap, ContentWrap, OverlayWrap, BackdropWrap };\n","import React from 'react';\nimport styled, { keyframes, css } from 'styled-components';\n\nconst loadingCircle = keyframes`\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n`;\n\nexport interface IconStyleBaseProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement> {\n spin?: boolean;\n verticalAlign?: 'middle' | 'baseline';\n params?: {\n spin?: boolean;\n verticalAlign?: 'middle' | 'baseline';\n };\n}\n\nexport const IconStyleBase = styled.span<IconStyleBaseProps>`\n height: 1em;\n width: 1em;\n fill: currentColor;\n & svg {\n height: 1em;\n width: 1em;\n fill: currentColor;\n }\n display: inline-flex;\n align-self: center;\n position: relative;\n transition: color 0.3s;\n box-sizing: inherit;\n ${(props) =>\n (props.verticalAlign === 'baseline' || props.params?.verticalAlign === 'baseline') &&\n css`\n top: 0.125em;\n `}\n ${(props) =>\n (props.spin || props.params?.spin) &&\n css`\n & svg {\n animation: ${loadingCircle} 1s infinite linear;\n }\n `}\n`;\n","import React from 'react';\nimport svgPaths from '@uiw/icons/fonts/w-icon.json';\nimport { IconStyleBase } from './style';\nexport * from './style';\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 return React.createElement(IconStyleBase, { ...propps, verticalAlign, spin, as: TagName } as any, svg);\n}\n","export const ButtonStyleTheme = {\n colorButtonStyleBase: '#fff',\n // 大小设置\n fontSizeSmall: '12px',\n fontSizeDefault: '14px',\n fontSizeLarge: '16px',\n // 最小高度\n minHeightButtonSmall: '24px',\n minHeightButtonDefault: '30px',\n minHeightButtonLarge: '36px',\n // 按钮中图标大小\n fontSizeButtonIconSmall: '14px',\n fontSizeButtonIcontDefault: '16px',\n fontSizeButtonIconLarge: '20px',\n // 边框颜色 + 组件 + 组件属性 + 伪类\n borderColorLinghtLoadingBefore: '#666f81',\n colorButtonLoadingBefore: '#fff',\n\n // 颜色设置\n // Primary\n colorPrimary: '#fff',\n backgroundColorPrimary: '#008ef0',\n backgroundColorPrimaryHover: '#0070bd',\n boxShadowColorPrimaryFocus: 'rgba(0, 142, 240, 0.26)',\n backgroundColorPrimaryActive: '#00528a',\n backgroundColorPrimaryDisabled: '#57baff',\n boxShadowColorPrimaryBasic: '#000',\n backgroundColorPrimaryBasicHover: '#c7e8ff',\n colorPrimaryBasicDisabled: '#24a6ff',\n backgroundColorPrimaryBasicActive: '#94d3ff',\n\n // Success\n colorSuccess: '#fff',\n backgroundColorSuccess: '#28a745',\n backgroundColorSuccessHover: '#1e7e34',\n boxShadowColorSuccessFocus: 'rgba(40, 167, 69, 0.26)',\n backgroundColorSuccessActive: '#145523',\n backgroundColorSuccessDisabled: '#5dd879',\n boxShadowColorSuccessBasic: '#000',\n backgroundColorSuccessBasicHover: '#b7eec4',\n colorSuccessBasicDisabled: '#34ce57',\n backgroundColorSuccessBasicActive: '#8ee4a2',\n\n // Warning\n colorWarning: '#fff',\n backgroundColorWarning: '#ffc107',\n backgroundColorWarningHover: '#d39e00',\n boxShadowColorWarningFocus: 'rgba(255, 193, 7, 0.26)',\n backgroundColorWarningActive: '#a07800',\n backgroundColorWarningDisabled: '#ffdb6d',\n boxShadowColorWarningBasic: '#000',\n backgroundColorWarningBasicHover: '#fff7dd',\n colorWarningBasicDisabled: '#ffce3a',\n backgroundColorWarningBasicActive: '#ffeaaa',\n\n // Error\n colorError: '#fff',\n backgroundColorError: '#dc3545',\n backgroundColorErrorHover: '#bd2130',\n boxShadowColorErrorFocus: 'rgba(220, 53, 69, 0.26)',\n backgroundColorErrorActive: '#921925',\n backgroundColorErrorDisabled: '#eb8c95',\n boxShadowColorErrorBasic: '#000',\n backgroundColorErrorBasicHover: '#fceced',\n colorErrorBasicDisabled: '#e4606d',\n backgroundColorErrorBasicActive: '#f4c0c5',\n\n // Light\n colorLight: '#393e48',\n backgroundColorLight: '#f8f9fa',\n backgroundColorLightHover: '#dae0e5',\n boxShadowColorLightFocus: 'rgba(248, 249, 250, 0.26)',\n backgroundColorLightActive: '#bcc6cf',\n backgroundColorLightDisabled: '#ffffff',\n boxShadowColorLightBasic: '#000',\n backgroundColorLightBasicHover: '#ecedf0',\n colorLightBasicDisabled: '#adb3be',\n colorLightBasic: '#9199a7',\n backgroundColorLightBasicActive: '#d5d8dd',\n\n boxShadowColorLightDefault: 'rgba(0, 0, 0, 0.17)',\n boxShadowColorLight4: 'rgba(0, 0, 0, 0.1)',\n\n // Dark\n colorDark: '#fff',\n backgroundColorDark: '#393e48',\n backgroundColorDarkHover: '#22252c',\n boxShadowColorDarkFocus: 'rgba(57, 62, 72, 0.26)',\n backgroundColorDarkActive: '#0c0d0f',\n backgroundColorDarkDisabled: '#666f81',\n boxShadowColorDarkBasic: '#000',\n backgroundColorDarkBasicHover: '#a2a8b5',\n colorDarkBasicDisabled: '#505764',\n backgroundColorDarkBasicActive: '#858e9f',\n\n // Link\n colorLink: '#008ef0',\n colorLinkHover: '#008ef0',\n backgroundColorLink: 'transparent',\n backgroundColorLinkHover: 'rgba(0, 0, 0, 0)',\n boxShadowColorLinkFocus: 'rgba(0, 0, 0, 0)',\n backgroundColorLinkActive: 'rgba(0, 0, 0, 0)',\n backgroundColorLinkDisabled: 'rgba(51, 51, 51, 0)',\n boxShadowColorLinkBasic: '#000',\n backgroundColorLinkBasicHover: 'rgba(107, 107, 107, 0)',\n colorLinkBasicDisabled: 'rgba(26, 26, 26, 0)',\n backgroundColorLinkBasicActive: 'rgba(82, 82, 82, 0)',\n colorLinkNotDisabled: '#006ab3',\n colorLinkNotDisabledActive: '#002d4d',\n};\n","import { getThemeVariantValue } from '@uiw/utils';\nimport { css } from 'styled-components';\nimport { ButtonStyleBaseProps } from '.';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { ButtonStyleTheme } from './theme';\nconst propsTheme = {\n defaultTheme: { ...ButtonStyleTheme },\n};\ntype Options = {\n type: string;\n} & Omit<ButtonStyleBaseProps, 'type'>;\n\n/**\n * @description: 生成公共css\n * @param {string} style 样式\n * @param {string} attrName 属性名\n * @param {boolean} fig 直接生成\n * @param {string} lastName 生成对象\n */\nexport const getCommonCss = (style: string, attrName: string, fig?: boolean, lastName?: string) => {\n const com = css`\n ${attrName && `${attrName}{${style}}`}\n ${fig && lastName && `${lastName}{${style}}`}\n ${fig && !lastName && style}\n `;\n return com;\n};\n\nexport const buttonVariant = (options: Options) => {\n const { type, param } = options;\n const { basic, focus, active, disabled } = param || {};\n\n const color = getThemeVariantValue({ ...options, ...propsTheme }, `color${type}`);\n const backgroundColor = getThemeVariantValue({ ...options, ...propsTheme }, `backgroundColor${type}`);\n const backgroundColorHover = getThemeVariantValue({ ...options, ...propsTheme }, `backgroundColor${type}Hover`);\n const boxShadowColorFocus = getThemeVariantValue({ ...options, ...propsTheme }, `boxShadowColor${type}Focus`);\n const backgroundColorActive = getThemeVariantValue({ ...options, ...propsTheme }, `backgroundColor${type}Active`);\n const backgroundColorDisabled = getThemeVariantValue({ ...options, ...propsTheme }, `backgroundColor${type}Disabled`);\n const boxShadowColorBasic = getThemeVariantValue({ ...options, ...propsTheme }, `boxShadowColor${type}Basic`);\n const backgroundColorBasicHover = getThemeVariantValue(\n { ...options, ...propsTheme },\n `backgroundColor${type}BasicHover`,\n );\n const colorBasicDisabled = getThemeVariantValue({ ...options, ...propsTheme }, `color${type}BasicDisabled`);\n const backgroundColorBasicActive = getThemeVariantValue(\n { ...options, ...propsTheme },\n `backgroundColor${type}BasicActive`,\n );\n\n return css`\n color: ${color};\n background-color: ${backgroundColor};\n z-index: 1;\n &:hover {\n background-color: ${backgroundColorHover};\n z-index: 2;\n }\n ${getCommonCss(\n `\n outline: 0;\n box-shadow: 0 0 0 2px ${boxShadowColorFocus};\n `,\n '&:focus',\n focus,\n )}\n ${getCommonCss(\n `\n color: ${color};\n background-color: ${backgroundColorActive};\n background-image: none;\n `,\n ' &:active',\n active,\n )}\n &.disabled,\n &[disabled] {\n background-color: ${backgroundColorDisabled};\n z-index: 0;\n }\n ${getCommonCss(\n `\n background-color: ${backgroundColorDisabled};\n z-index: 0;\n `,\n ' &[disabled]',\n disabled,\n )}\n ${basic &&\n css`\n & {\n background-color: transparent !important;\n box-shadow: inset 0 0 0 ${boxShadowColorBasic};\n color: ${backgroundColor};\n &:hover {\n background-color: ${backgroundColorBasicHover} !important;\n }\n ${getCommonCss(\n `\n color: ${backgroundColor};\n background-color: ${backgroundColorBasicActive} !important;\n background-image: none;\n `,\n ' &:active',\n active,\n )}\n ${getCommonCss(\n `\n background-color: transparent !important;\n color: ${colorBasicDisabled};\n `,\n '&[disabled]',\n disabled,\n )}\n }\n `}\n `;\n};\n\nexport const buttonTypes = (props: ButtonStyleBaseProps) => {\n const { type, focus, basic, active, disabled } = props.param || {};\n switch (type) {\n case 'primary':\n return buttonVariant({ ...props, type: 'Primary' });\n case 'success':\n return buttonVariant({ ...props, type: 'Success' });\n case 'danger':\n return buttonVariant({ ...props, type: 'Error' });\n case 'dark':\n return buttonVariant({ ...props, type: 'Dark' });\n case 'light':\n return css`\n box-shadow: inset 0 1px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset 1px -1px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset -1px 0px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')};\n ${buttonVariant({ ...props, type: 'Light' })}\n ${getCommonCss(\n `\n outline: 0;\n box-shadow: inset 0 1px 0 0 ${getThemeVariantValue(\n { ...props, ...propsTheme },\n 'boxShadowColorLightDefault',\n )},\n inset 1px -1px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset -1px 0px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n 0 0 0 2px ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLight4')};\n `,\n '&:focus',\n focus,\n )}\n ${basic &&\n css`\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLightBasic')} !important;\n &:focus {\n box-shadow: inset 0 0 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')};\n }\n ${focus &&\n css`\n box-shadow: inset 0 0 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')};\n `}\n &:hover {\n background-color: ${getThemeVariantValue(\n { ...props, ...propsTheme },\n 'backgroundColorLightBasicHover',\n )} !important;\n }\n ${getCommonCss(\n `\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLightBasic')};\n background-color: ${getThemeVariantValue(\n { ...props, ...propsTheme },\n 'backgroundColorLightBasicActive',\n )} !important;\n background-image: none;\n `,\n '&:active',\n active,\n )}\n ${getCommonCss(\n `\n background-color: transparent !important;\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLightBasicDisabled')};\n `,\n '&[disabled]',\n disabled,\n )}\n `}\n ${getCommonCss(\n `\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLightBasicDisabled')};\n z-index: 0;\n `,\n '&[disabled]',\n disabled,\n )}\n `;\n case 'link':\n return css`\n ${buttonVariant({ ...props, type: 'Link' })};\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLink')} !important;\n &:hover:not([disabled]) {\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLinkNotDisabled')};\n text-decoration: underline;\n }\n ${getCommonCss(\n `\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLinkNotDisabledActive')};\n box-shadow: none;\n text-decoration: underline;\n `,\n '&:not([disabled]):active',\n disabled,\n '&:not([disabled]) ',\n )}\n &[disabled] {\n z-index: 0;\n }\n ${disabled &&\n css`\n z-index: 0;\n `}\n `;\n case 'warning':\n return buttonVariant({ ...props, type: 'Warning' });\n default:\n return css``;\n }\n};\n\nexport const getloadingCss = (props: ButtonStyleBaseProps) => {\n return css`\n ${() =>\n props.param?.loading &&\n props.param.type === 'light' &&\n css`\n &::before {\n border: 1.2px solid\n ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorLinghtLoadingBefore')};\n }\n `}\n ${() =>\n props.param?.loading &&\n css`\n &::before {\n content: '';\n display: inline-block;\n width: 1em;\n height: 1em;\n border-radius: 50%;\n border: 1.2px solid ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'colorButtonLoadingBefore')};\n color: ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'colorButtonLoadingBefore')};\n margin: 0 3px 0 0;\n clip-path: polygon(0% 0%, 100% 0, 100% 30%, 0% 30%);\n animation: rotate 0.5s linear infinite;\n @keyframes rotate {\n from {\n transform: rotateZ(0deg);\n }\n to {\n transform: rotateZ(360deg);\n }\n }\n }\n `}\n `;\n};\n\nexport const buttonSize = (fontSize: string, iconSize: string, lineHeight: string | number, minHeight: string) => {\n return css`\n font-size: ${fontSize};\n line-height: ${lineHeight};\n min-height: ${minHeight};\n ${IconStyleBase} {\n font-size: ${iconSize};\n }\n `;\n};\nconst getSize = (props: ButtonStyleBaseProps, type: string) => {\n const fontSize = getThemeVariantValue({ ...props, ...propsTheme }, `fontSize${type}`);\n const minHeight = getThemeVariantValue({ ...props, ...propsTheme }, `minHeightButton${type}`);\n const fontSizeIcon = getThemeVariantValue({ ...props, ...propsTheme }, `fontSizeButtonIcon${type}`);\n return buttonSize(`${fontSize}`, `${fontSizeIcon}`, fontSize, `${minHeight}`);\n};\n\nexport const buttonSizeCss = (props: ButtonStyleBaseProps) => {\n const { size } = props.param || {};\n switch (size) {\n case 'large':\n return getSize(props, 'Large');\n case 'small':\n return css`\n padding: 0 6px;\n min-width: ${getThemeVariantValue({ ...props, ...propsTheme }, 'minHeightButtonSmall')};\n ${getSize(props, 'Small')}\n `;\n default:\n return css``;\n }\n};\n\nexport const getIconAndSizeCss = (props: ButtonStyleBaseProps) => {\n return css`\n ${IconStyleBase} {\n font-size: ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeButtonIcontDefault')};\n }\n ${() => buttonSizeCss(props)}\n ${IconStyleBase}:not(:last-child) {\n margin-right: 5px;\n }\n `;\n};\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { buttonVariant, getCommonCss, getloadingCss, getIconAndSizeCss } from './Variant';\nimport { ButtonType, ButtonSize } from '../';\nimport { ButtonStyleTheme } from './theme';\nexport * from './theme';\n\nconst propsTheme = {\n defaultTheme: { ...ButtonStyleTheme },\n};\n\nexport interface ButtonStyleBaseProps\n extends React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>,\n ThemeVariantValueOptions<typeof ButtonStyleTheme> {\n param?: {\n size: ButtonSize;\n type: ButtonType;\n basic: boolean;\n loading: boolean;\n disabled: boolean;\n active: boolean;\n block: boolean;\n focus: boolean;\n };\n}\nconst ButtonStyleBase = styled.button<ButtonStyleBaseProps>`\n user-select: none;\n display: inline-flex;\n flex-direction: row;\n align-items: center;\n -webkit-box-pack: center;\n justify-content: center;\n border: none;\n border-radius: 3px;\n cursor: pointer;\n padding: 5px 7px;\n position: relative;\n vertical-align: middle;\n text-align: left;\n line-height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n min-width: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'minHeightButtonDefault')};\n min-height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'minHeightButtonDefault')};\n text-align: center;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorButtonStyleBase')};\n transition: background-color 0.5s, opacity 1s;\n & > *:not(:last-child) {\n margin-right: 5px;\n }\n & + & {\n margin-left: 5px;\n }\n ${(props) =>\n props.param?.block &&\n css`\n & {\n display: block;\n width: 100%;\n }\n & + && {\n margin-left: 0;\n }\n `}\n ${(props) =>\n props.param?.disabled &&\n css`\n cursor: not-allowed;\n `}\n &[disabled] {\n cursor: not-allowed;\n }\n`;\nconst ButtonStyleBasePrimary = styled(ButtonStyleBase)<ButtonStyleBaseProps>`\n ${(props) => buttonVariant({ ...props, type: 'Primary' })}\n`;\nconst ButtonStyleBaseSuccess = styled(ButtonStyleBase)<ButtonStyleBaseProps>`\n ${(props) => buttonVariant({ ...props, type: 'Success' })}\n`;\nconst ButtonStyleBaseDangers = styled(ButtonStyleBase)<ButtonStyleBaseProps>`\n ${(props) => buttonVariant({ ...props, type: 'Error' })}\n`;\nconst ButtonStyleBaseDark = styled(ButtonStyleBase)<ButtonStyleBaseProps>`\n ${(props) => buttonVariant({ ...props, type: 'Dark' })}\n`;\nconst ButtonStyleBaseLight = styled(ButtonStyleBase)<ButtonStyleBaseProps>`\n ${(props) => {\n const { focus, basic, active, disabled } = props.param || {};\n return css`\n box-shadow: inset 0 1px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset 1px -1px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset -1px 0px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')};\n ${buttonVariant({ ...props, type: 'Light' })}\n ${getCommonCss(\n `\n outline: 0;\n box-shadow: inset 0 1px 0 0 ${getThemeVariantValue(\n { ...props, ...propsTheme },\n 'boxShadowColorLightDefault',\n )},\n inset 1px -1px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset -1px 0px 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n 0 0 0 2px ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLight4')};\n `,\n '&:focus',\n focus,\n )}\n ${basic &&\n css`\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLightBasic')} !important;\n &:focus {\n box-shadow: inset 0 0 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')};\n }\n ${focus &&\n css`\n box-shadow: inset 0 0 0 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')};\n `}\n &:hover {\n background-color: ${getThemeVariantValue(\n { ...props, ...propsTheme },\n 'backgroundColorLightBasicHover',\n )} !important;\n }\n ${getCommonCss(\n `\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLightBasic')};\n background-color: ${getThemeVariantValue(\n { ...props, ...propsTheme },\n 'backgroundColorLightBasicActive',\n )} !important;\n background-image: none;\n `,\n '&:active',\n active,\n )}\n ${getCommonCss(\n `\n background-color: transparent !important;\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLightBasicDisabled')};\n `,\n '&[disabled]',\n disabled,\n )}\n `}\n ${getCommonCss(\n `\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLightBasicDisabled')};\n z-index: 0;\n `,\n '&[disabled]',\n disabled,\n )}\n ${() => getIconAndSizeCss(props)}\n ${() => getloadingCss(props)}\n `;\n }}\n`;\nconst ButtonStyleBaseLink = styled(ButtonStyleBase)<ButtonStyleBaseProps>`\n ${(props) => {\n const { disabled } = props.param || {};\n return css`\n ${buttonVariant({ ...props, type: 'Link' })};\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLink')} !important;\n &:hover:not([disabled]) {\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLinkNotDisabled')};\n text-decoration: underline;\n }\n ${getCommonCss(\n `\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorLinkNotDisabledActive')};\n box-shadow: none;\n text-decoration: underline;\n `,\n '&:not([disabled]):active',\n disabled,\n '&:not([disabled]) ',\n )}\n &[disabled] {\n z-index: 0;\n }\n ${disabled &&\n css`\n z-index: 0;\n `}\n `;\n }}\n`;\nconst ButtonStyleBaseWarning = styled(ButtonStyleBase)<ButtonStyleBaseProps>`\n ${(props) => buttonVariant({ ...props, type: 'Warning' })}\n`;\n\nexport {\n ButtonStyleBase,\n ButtonStyleBasePrimary,\n ButtonStyleBaseSuccess,\n ButtonStyleBaseDangers,\n ButtonStyleBaseDark,\n ButtonStyleBaseLight,\n ButtonStyleBaseLink,\n ButtonStyleBaseWarning,\n};\n","import styled from 'styled-components';\nimport { buttonTypes, getloadingCss, getIconAndSizeCss } from './Variant';\nimport { ButtonStyleBaseProps, ButtonStyleBase } from './base';\nexport * from './base';\n\nexport const ButtonStyleWarp = styled(ButtonStyleBase)<ButtonStyleBaseProps>`\n ${buttonTypes}\n ${(props) => getIconAndSizeCss(props)}\n ${(props) => getloadingCss(props)}\n`;\n","import React from 'react';\nimport { IProps, HTMLButtonProps } from '@uiw/utils';\nimport { ButtonStyleWarp, ButtonStyleBaseLight } from './style';\nimport { IconStyleBase } from '@uiw/react-icon';\nexport * from './style';\nexport type ButtonType = 'primary' | 'success' | 'warning' | 'danger' | 'light' | 'dark' | 'link';\nexport type ButtonSize = 'large' | 'default' | 'small';\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?: React.ReactNode;\n focus?: boolean;\n /**\n * 按钮类型\n * @mytag {@link link }\n * @beta\n */\n type?: ButtonType;\n /**\n * 按钮尺寸\n * @defaultValue 'large' | 'default' | 'small'\n */\n size?: ButtonSize;\n htmlType?: 'button' | 'submit' | 'reset';\n onClick?: (e: React.MouseEvent<HTMLButtonElement> & MouseEvent) => void;\n}\n\n/**@internal */\nconst Button = 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\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 <ButtonStyleWarp\n {...others}\n as={type === 'light' ? ButtonStyleBaseLight : 'button'}\n ref={ref}\n type={htmlType}\n disabled={disabled || loading}\n className={cls}\n param={{\n focus: !!props.focus,\n type,\n size,\n basic,\n loading,\n disabled: disabled || loading,\n active,\n block,\n }}\n >\n {icon ? <IconStyleBase>{icon}</IconStyleBase> : <React.Fragment />}\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 </ButtonStyleWarp>\n );\n});\n\nexport default Button;\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\nimport { IconStyleBase } from '@uiw/react-icon';\n\nexport const ModalStyleTheme = {\n fontSizeLarge: '16px',\n fontSizeDefault: '14px',\n minHeightModalStyleHeader: '40px',\n backgroundColorModalStyleHeaderBase: '#fff',\n boxShadowColorModalStyleHeaderBase: 'rgba(16, 22, 26, 0.15)',\n minHeightModalStyleHeaderH4: '22px',\n\n backgroundColorModalStyleInnerBase: '#f9f9f9',\n minWidthModalStyleInner: '320px',\n boxShadowModalStyleInnerH: 'rgba(16, 22, 26, 0.1)',\n boxShadowModalStyleInnerV: 'rgba(16, 22, 26, 0.2)',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof ModalStyleTheme>;\n\nexport interface ModalStyleWrapProps\n extends React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>,\n ThemeVar {}\n\nexport const ModalStyleHeader = styled.div<ModalStyleWrapProps>`\n ${(props) => css`\n display: flex;\n align-items: center;\n min-height: ${getThemeVariantValue({ ...props, defaultTheme: ModalStyleTheme }, 'minHeightModalStyleHeader')};\n padding-left: 13px;\n padding-right: 5px;\n background-color: ${getThemeVariantValue(\n { ...props, defaultTheme: ModalStyleTheme },\n 'backgroundColorModalStyleHeaderBase',\n )};\n border-radius: 5px 5px 0 0;\n box-shadow: 0 1px 0\n ${getThemeVariantValue({ ...props, defaultTheme: ModalStyleTheme }, 'boxShadowColorModalStyleHeaderBase')};\n font-size: ${getThemeVariantValue({ ...props, defaultTheme: ModalStyleTheme }, 'fontSizeLarge')};\n > ${IconStyleBase} {\n margin-right: 10px;\n color: #393e48;\n }\n h4 {\n margin: 0;\n padding: 0;\n flex: 1 1 auto;\n font-weight: bold;\n min-height: ${getThemeVariantValue({ ...props, defaultTheme: ModalStyleTheme }, 'minHeightModalStyleHeaderH4')};\n }\n `}\n`;\n\n// ModalStyleHeader.defaultProps = {\n// defaultTheme: ModalStyleTheme,\n// };\n\nexport const ModalStyleBody = styled.div<ModalStyleWrapProps>`\n ${(props) => css`\n padding-top: 20px;\n font-size: ${getThemeVariantValue({ ...props, defaultTheme: ModalStyleTheme }, 'fontSizeDefault')};\n `}\n`;\n\n// ModalStyleBody.defaultProps = {\n// defaultTheme: ModalStyleTheme,\n// };\n\nexport const ModalStyleFooter = styled.div<ModalStyleWrapProps>`\n display: flex;\n margin-top: 15px;\n flex-direction: row-reverse;\n .w-btn + .w-btn {\n margin-right: 10px;\n }\n`;\n\nexport const ModalStyleContainer = styled.div<ModalStyleWrapProps>``;\n\nexport const ModalStyleInner = styled.div<ModalStyleWrapProps>`\n ${(props) => css`\n padding-bottom: 20px;\n background: ${getThemeVariantValue(\n { ...props, defaultTheme: ModalStyleTheme },\n 'backgroundColorModalStyleInnerBase',\n )};\n min-width: ${getThemeVariantValue({ ...props, defaultTheme: ModalStyleTheme }, 'minWidthModalStyleInner')};\n border-radius: 5px;\n box-shadow: 0 0 0 1px\n ${getThemeVariantValue({ ...props, defaultTheme: ModalStyleTheme }, 'boxShadowModalStyleInnerH')},\n 0 4px 8px ${getThemeVariantValue({ ...props, defaultTheme: ModalStyleTheme }, 'boxShadowModalStyleInnerV')},\n 0 18px 46px 6px ${getThemeVariantValue({ ...props, defaultTheme: ModalStyleTheme }, 'boxShadowModalStyleInnerV')};\n `}\n`;\n// ModalStyleInner.defaultProps = {\n// defaultTheme: ModalStyleTheme,\n// };\n\nexport const ModalStyleWrap = styled.div<ModalStyleWrapProps>`\n z-index: 1001;\n\n ${ModalStyleBody},\n ${ModalStyleFooter} {\n margin: 0 20px;\n }\n`;\n\n// ModalStyleWrap.defaultProps = {\n// defaultTheme: ModalStyleTheme,\n// };\n\nexport default ModalStyleWrap;\n","import React, { useState, useEffect } from 'react';\nimport Overlay, { OverlayProps } from '@uiw/react-overlay';\nimport Button, { ButtonType, ButtonProps } from '@uiw/react-button';\nimport { Close } from '@uiw/icons/lib/Close';\nimport { IProps, noop } from '@uiw/utils';\nimport CallShow from './CallShow';\nimport ModalStyleWrap, {\n ModalStyleBody,\n ModalStyleContainer,\n ModalStyleFooter,\n ModalStyleHeader,\n ModalStyleInner,\n} from './style';\nexport * from './style';\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?: React.ReactNode;\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\ntype ShowModalProps = {\n show?: (props: Omit<ModalProps, 'onClosed' | 'isOpen'> & { children: React.ReactNode }) => void;\n};\n\nconst Modal: React.ForwardRefExoticComponent<ModalProps & React.RefAttributes<OverlayProps>> & ShowModalProps =\n 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 <ModalStyleWrap as={Overlay} usePortal={usePortal} isOpen={isOpen} {...other} onClose={onClose} className={cls}>\n <ModalStyleContainer className={`${prefixCls}-container`}>\n <ModalStyleInner\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 <ModalStyleHeader className={`${prefixCls}-header`}>\n {icon && icon}\n {title && <h4>{title}</h4>}\n {isCloseButtonShown && <Button basic onClick={(e) => handleCancel(e)} icon={<Close />} type=\"light\" />}\n </ModalStyleHeader>\n )}\n <ModalStyleBody className={`${prefixCls}-body`} style={bodyStyle}>\n {children || content}\n </ModalStyleBody>\n {useButton && (\n <ModalStyleFooter 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 </ModalStyleFooter>\n )}\n </ModalStyleInner>\n </ModalStyleContainer>\n </ModalStyleWrap>\n );\n });\n\nModal.show = CallShow;\nexport default Modal;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport Modal, { ModalProps } from './';\n\nexport default function CallShow(props: Omit<ModalProps, 'onClosed' | 'isOpen'> & { children: React.ReactNode }) {\n const { title = '提示框', children, ...other } = props;\n const dv = document.createElement('div');\n dv.id = 'uiw-modal-call-show-element';\n document.body.appendChild(dv);\n ReactDOM.render(\n <Modal\n {...other}\n title={title}\n isOpen={true}\n onClosed={() => {\n dv.remove();\n }}\n >\n {children}\n </Modal>,\n dv,\n );\n}\n","import styled, { css } from 'styled-components';\nimport { ModalStyleHeader, ModalStyleBody, ModalStyleInner } from '@uiw/react-modal';\nimport { ButtonType } from '@uiw/react-button';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const AlertStyleTheme = {\n colorAlertPrimary: '#008ef0',\n colorAlertSuccess: '#28a745',\n colorAlertWarning: '#ffc107',\n colorAlertDanger: '#dc3545',\n colorAlertDefault: '#393e48',\n};\nconst propsTheme = {\n defaultTheme: { ...AlertStyleTheme },\n};\n\nexport interface AlertStyleWarpProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions<typeof AlertStyleTheme> {\n type?: ButtonType;\n icon?: React.ReactNode;\n}\n\nconst typeVariant = (type: ButtonType, color: string | number) => {\n return css`\n ${ModalStyleHeader} > ${IconStyleBase} {\n color: ${color};\n fill: ${color};\n }\n `;\n};\n\nconst typeCss = (props: AlertStyleWarpProps) => {\n const { type } = props;\n if (type === 'primary') {\n return typeVariant(type, getThemeVariantValue({ ...props, ...propsTheme }, 'colorAlertPrimary'));\n } else if (type === 'success') {\n return typeVariant(type, getThemeVariantValue({ ...props, ...propsTheme }, 'colorAlertSuccess'));\n } else if (type === 'warning') {\n return typeVariant(type, getThemeVariantValue({ ...props, ...propsTheme }, 'colorAlertWarning'));\n } else if (type === 'danger') {\n return typeVariant(type, getThemeVariantValue({ ...props, ...propsTheme }, 'colorAlertDanger'));\n }\n return typeVariant('link', getThemeVariantValue({ ...props, ...propsTheme }, 'colorAlertDefault'));\n};\n\nexport const AlertStyleWarp = styled.div<AlertStyleWarpProps>`\n ${ModalStyleHeader} {\n display: table-cell;\n background-color: transparent;\n padding: 20px 0 0 20px;\n box-shadow: 0 0 0 0;\n padding-right: 0;\n ${IconStyleBase} {\n font-size: 40px;\n margin-right: 0;\n }\n > button > ${IconStyleBase} {\n font-size: 14px;\n }\n }\n ${ModalStyleBody} {\n display: table-cell;\n padding-right: 20px;\n padding-left: 20px;\n vertical-align: top;\n }\n ${typeCss}\n ${ModalStyleInner} ${ModalStyleHeader} {\n > button {\n min-width: 18px;\n min-height: 18px;\n padding: 5px 5px;\n position: absolute;\n right: 10px;\n top: 10px;\n }\n }\n ${(props) =>\n props.title &&\n css`\n ${ModalStyleInner} {\n ${ModalStyleHeader} {\n word-break: break-word;\n display: flex;\n padding-top: 15px;\n padding-right: 10px;\n > ${IconStyleBase} {\n font-size: 40px;\n position: absolute;\n top: 18px;\n }\n\n > button > ${IconStyleBase} {\n font-size: 14px;\n }\n }\n ${ModalStyleBody} {\n word-break: break-word;\n padding-top: 5px;\n }\n }\n `}\n ${(props) =>\n props.icon &&\n css`\n ${ModalStyleHeader} > h4 {\n padding-left: 60px;\n }\n `}\n ${(props) =>\n props.title &&\n props.icon &&\n css`\n ${ModalStyleBody} {\n padding-left: 80px;\n }\n `}\n`;\n","import React from 'react';\nimport Modal, { ModalProps } from '@uiw/react-modal';\nimport { IProps } from '@uiw/utils';\nimport { AlertStyleWarp } from './style';\nexport * from './style';\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 <AlertStyleWarp as={Modal} {...other} width={width} className={cls}>\n {props.children}\n </AlertStyleWarp>\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 styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const AvatarStyleTheme = {\n backgroundColorAvatar: '#ccc',\n colorAvatar: '#fff',\n\n fontSizeAvatarMini: '12px',\n fontSizeAvatarSmall: '12px',\n fontSizeAvatarDefault: '18px',\n fontSizeAvatarLarge: '24px',\n\n widthAvatarMini: '18px',\n widthAvatarSmall: '24px',\n widthAvatarDefault: '30px',\n widthAvatarLarge: '40px',\n borderRadiusDefault: '3px',\n};\nconst propsTheme = {\n defaultTheme: { ...AvatarStyleTheme },\n};\n\nexport interface AvatarStyleWarpProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>,\n ThemeVariantValueOptions<typeof AvatarStyleTheme> {\n size?: 'large' | 'default' | 'small' | 'mini';\n shape?: 'square' | 'circle';\n}\n\nexport const AvatarStyleImg = styled.img``;\n\nexport const AvatarStyleWarp = styled.span<AvatarStyleWarpProps>`\n display: inline-block;\n text-align: center;\n background: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorAvatar')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorAvatar')};\n vertical-align: middle;\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeAvatarDefault')};\n width: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'widthAvatarDefault')};\n height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'widthAvatarDefault')};\n border-radius: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderRadiusDefault')};\n display: inline-flex;\n justify-content: center;\n align-items: center;\n & + & {\n margin-left: 5px;\n }\n ${(props) => {\n const { size } = props;\n switch (size) {\n case 'mini':\n return css`\n height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'widthAvatarMini')};\n width: ${getThemeVariantValue({ ...props, ...propsTheme }, 'widthAvatarMini')};\n font-size: ${getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeAvatarMini')};\n `;\n case 'small':\n return css`\n height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'widthAvatarSmall')};\n width: ${getThemeVariantValue({ ...props, ...propsTheme }, 'widthAvatarSmall')};\n font-size: ${getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeAvatarSmall')};\n `;\n case 'large':\n return css`\n height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'widthAvatarLarge')};\n width: ${getThemeVariantValue({ ...props, ...propsTheme }, 'widthAvatarLarge')};\n font-size: ${getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeAvatarLarge')};\n `;\n default:\n return css``;\n }\n }}\n\n ${(props) =>\n props.shape === 'circle' &&\n css`\n border-radius: 50%;\n `} \n &.w-avatar-circle {\n }\n & > ${AvatarStyleImg} {\n width: 100%;\n height: 100%;\n display: block;\n }\n`;\n","import React from 'react';\nimport { HTMLSpanProps, noop } from '@uiw/utils';\nimport { useState, useEffect } from 'react';\nimport { AvatarStyleWarp, AvatarStyleImg } from './style';\nimport { IconStyleBase } from '@uiw/react-icon';\nexport * from './style';\nexport interface AvatarProps extends HTMLSpanProps {\n style?: React.CSSProperties;\n className?: string;\n prefixCls?: string;\n icon?: React.ReactNode;\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 <AvatarStyleImg\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) {\n children = <IconStyleBase>{icon}</IconStyleBase>;\n }\n return (\n <AvatarStyleWarp {...resetProps} size={size} shape={shape} className={cls} ref={ref}>\n {children}\n </AvatarStyleWarp>\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 styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions } from '@uiw/utils';\nimport BackToUp, { BackToUpProps } from '@uiw/react-back-to-top';\n\nexport const BackTopStyleTheme = {\n bottomBackTop: '50px',\n rightBackTop: '50px',\n};\n\nexport interface BackTopStyleWarpProps\n extends BackToUpProps,\n React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions<typeof BackTopStyleTheme> {\n visible?: string;\n fixed?: string;\n offsetTop?: number;\n}\n\nexport const BackTopStyleWarp = styled(BackToUp)<BackTopStyleWarpProps>`\n width: inherit !important;\n height: inherit !important;\n\n ${(props) => {\n return (\n props.fixed !== 'true' &&\n css`\n svg {\n width: 0;\n height: 0;\n opacity: 0;\n }\n div {\n display: inline-flex !important;\n position: static !important;\n width: auto !important;\n }\n `\n );\n }}\n ${(props) => {\n return (\n props.visible !== 'true' &&\n css`\n opacity: 0 !important;\n `\n );\n }}\n`;\n","import React, { useState, useEffect } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { getScrollPercent, getScrollTop, scrollToAnimate } from './utils';\nimport { BackTopStyleWarp } from './style';\nexport * from './style';\n\ninterface ChildrenFunction {\n scrollToTop: () => void;\n percent: number;\n current: number;\n}\n\nexport interface BackTopStyleProps extends IProps, Omit<HTMLDivProps, 'children'> {\n offsetTop?: number;\n clickable?: boolean;\n content?: JSX.Element | string;\n fixed?: boolean;\n /**\n * 滚动距离多少时显示组件\n */\n showBelow?: number;\n speed?: number;\n children?: React.ReactNode | ((props: ChildrenFunction) => React.ReactNode);\n element?: HTMLElement;\n}\n\nexport interface IBackTopState {\n percent: number;\n current: number;\n}\n\nconst BackTopStyleBase = React.forwardRef<HTMLDivElement, BackTopStyleProps>((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 ? showBelow : 0;\n const [percent, setPercent] = useState(0);\n const [current, setCurrent] = useState(0);\n\n const visible = percent >= topShowBelow;\n\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\n const styles: React.CSSProperties = {\n width: 'inherit !important',\n height: 'inherit !important',\n position: fixed ? 'fixed' : 'sticky',\n opacity: offsetTop === 0 ? 1 : 0,\n };\n\n useEffect(() => {\n window.addEventListener('scroll', onScroll);\n return function () {\n window && window.removeEventListener('scroll', onScroll);\n };\n }, []);\n\n const onScroll = () => {\n setPercent(getScrollPercent(offsetTop));\n setCurrent(getScrollTop());\n };\n\n const scrollToTop = () => {\n if (typeof offsetTop === 'number' && typeof speed === 'number' && typeof current === 'number') {\n scrollToAnimate(offsetTop, speed, current);\n }\n };\n\n return (\n <BackTopStyleWarp\n className={cls}\n top={offsetTop}\n as={BackTopStyleWarp}\n onClick={() => clickable && scrollToTop()}\n size={undefined}\n visible={visible.toString()}\n fixed={`${fixed}`}\n {...other}\n style={styles}\n >\n {content}\n {typeof children !== 'function' ? children : children({ percent, current, scrollToTop: scrollToTop })}\n </BackTopStyleWarp>\n );\n});\n\nexport default BackTopStyleBase;\n","import styled, { keyframes, css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const BadgeStyleTheme = {\n marginVerticalBadgeStyleColorDot: '0px',\n marginHorizontalBadgeStyleColorDot: '4px',\n topBadgeStyleColorDot: '-1px',\n widthBadgeStyleColorDot: '6px',\n backgroundColorBadgepPocessing: '#007bff',\n fontSizeDefault: '14px',\n backgroundBadgeCountDot: '#f04134',\n colorBadge: '#fff',\n fontSizeSmall: '12px',\n boxShadowBadgeCountDot: '0 0 0 1px #fff',\n topBadgeCountDot: '-4px',\n topBadgeCount: '-10px',\n heightBadgeCount: '16px',\n borderRadiusBadgeCount: '10px',\n};\n\nconst propsTheme = {\n defaultTheme: { ...BadgeStyleTheme },\n};\n\nexport interface BadgeStyleWarpProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>,\n ThemeVariantValueOptions<typeof BadgeStyleTheme> {}\n\nconst keyframesStatusProcessing = keyframes`\n from {\n transform: rotateZ(0deg);\n }\n to {\n transform: rotateZ(360deg);\n }\n`;\nexport interface BadgeStyleColorDotProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>,\n ThemeVariantValueOptions<typeof BadgeStyleTheme> {\n processing?: boolean;\n}\n/** 展示 color **/\nexport const BadgeStyleColorDot = styled.span<BadgeStyleColorDotProps>`\n line-height: inherit;\n vertical-align: baseline;\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n margin: ${(props) =>\n css`\n ${getThemeVariantValue({ ...props, ...propsTheme }, 'marginVerticalBadgeStyleColorDot')} ${getThemeVariantValue(\n props,\n 'marginHorizontalBadgeStyleColorDot',\n )}\n `};\n width: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'widthBadgeStyleColorDot')};\n height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'widthBadgeStyleColorDot')};\n display: inline-block;\n border-radius: 50%;\n vertical-align: middle;\n position: relative;\n top: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'topBadgeStyleColorDot')};\n ${(props) => {\n if (props.processing) {\n return css`\n position: relative;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorBadgepPocessing')};\n &:after {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background-color: inherit;\n content: '';\n -webkit-animation: ${keyframesStatusProcessing} 1.2s infinite ease-in-out;\n animation: ${keyframesStatusProcessing} 1.2s infinite ease-in-out;\n }\n `;\n }\n return css``;\n }}\n`;\n\nexport interface BadgeStyleSupCountDotBaseProps extends ThemeVariantValueOptions<typeof BadgeStyleTheme> {\n dot?: boolean;\n nowrap?: boolean;\n}\n/** 展示 count **/\nexport const BadgeStyleSupCountDotBase = styled.sup<BadgeStyleSupCountDotBaseProps>`\n ${(props) =>\n !props.dot &&\n css`\n position: absolute;\n -webkit-transform: translateX(-50%);\n transform: translateX(-50%);\n top: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'topBadgeCount')};\n height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'heightBadgeCount')};\n border-radius: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderRadiusBadgeCount')};\n min-width: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'heightBadgeCount')};\n background: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundBadgeCountDot')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorBadge')};\n line-height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'heightBadgeCount')};\n text-align: center;\n padding: 0 5px;\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeSmall')};\n white-space: nowrap;\n -webkit-transform-origin: -10% center;\n transform-origin: -10% center;\n font-family: tahoma;\n box-shadow: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowBadgeCountDot')};\n `}\n\n ${(props) =>\n props.nowrap &&\n !props.dot &&\n css`\n top: auto;\n display: block;\n position: relative;\n -webkit-transform: none !important;\n transform: none !important;\n overflow: hidden;\n `}\n ${(props) =>\n props.dot &&\n css`\n position: absolute;\n -webkit-transform: translateX(-50%);\n transform: translateX(-50%);\n -webkit-transform-origin: 0 center;\n transform-origin: 0 center;\n overflow: hidden;\n color: transparent;\n top: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'topBadgeCountDot')};\n height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'widthBadgeStyleColorDot')};\n width: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'widthBadgeStyleColorDot')};\n padding: 0;\n border-radius: 100%;\n background: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundBadgeCountDot')};\n z-index: 10;\n box-shadow: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowBadgeCountDot')};\n `}\n`;\n\n/** 最外层包裹 **/\nexport const BadgeStyleWarp = styled.span<BadgeStyleWarpProps>`\n position: relative;\n display: inline-block;\n line-height: 1;\n vertical-align: middle;\n`;\n","import React from 'react';\nimport { IProps, HTMLSpanProps } from '@uiw/utils';\nimport { BadgeStyleWarp, BadgeStyleColorDot, BadgeStyleSupCountDotBase } from './style';\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 <BadgeStyleWarp className={cls} {...other} {...warpperProps} ref={ref}>\n {color && (\n <BadgeStyleColorDot className={`${prefixCls}-dot`} processing={processing} style={{ backgroundColor: color }} />\n )}\n {children}\n {count !== 0 && !color && (\n <BadgeStyleSupCountDotBase {...supProps} dot={dot} nowrap={!children}>\n {!dot && count && max && count > max ? `${max}+` : count}\n </BadgeStyleSupCountDotBase>\n )}\n </BadgeStyleWarp>\n );\n});\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions, HTMLDivProps, HTMLSpanProps } from '@uiw/utils';\n\nexport const BreadcrumbStyleTheme = {\n colorBreadcrumbActive: '#6e6e6e',\n paddingLeftBreadcrumItemBefore: '8px',\n paddingRightBreadcrumItemBefore: '8px',\n fontSizeDefault: '14px',\n marginLeftBreadcrumItemInterval: '6px',\n};\n\nconst propsTheme = {\n defaultTheme: { ...BreadcrumbStyleTheme },\n};\n\nexport interface BreadcrumbStyleWarpProps extends ThemeVariantValueOptions<typeof BreadcrumbStyleTheme>, HTMLDivProps {}\n\nexport const BreadcrumbStyleWarp = styled.div<BreadcrumbStyleWarpProps>`\n display: inline-flex;\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n`;\n\nexport interface BreadcrumbStyleWarpItemProps\n extends ThemeVariantValueOptions<typeof BreadcrumbStyleTheme>,\n HTMLSpanProps {\n active?: boolean;\n noSeparator?: Boolean;\n noBefore?: boolean;\n}\n\nexport const BreadcrumbStyleWarpItem = styled.span<BreadcrumbStyleWarpItemProps>`\n display: inline-flex;\n &::before {\n padding-right: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'paddingRightBreadcrumItemBefore')};\n padding-left: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'paddingLeftBreadcrumItemBefore')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorBreadcrumb')};\n }\n\n &:first-child::before {\n display: none;\n }\n\n ${(props) =>\n !props.noBefore &&\n !props.noSeparator &&\n css`\n &::before {\n display: inline-block;\n content: attr(data-separator);\n }\n `}\n\n ${(props) =>\n props.noSeparator &&\n css`\n & {\n margin-left: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'marginLeftBreadcrumItemInterval')};\n }\n `}\n ${(props) =>\n props.active &&\n css`\n & {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorBreadcrumbActive')};\n }\n `}\n`;\n\nexport const BreadcrumbStyleSeparator = styled.span`\n padding-right: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'paddingRightBreadcrumItemBefore')};\n padding-left: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'paddingLeftBreadcrumItemBefore')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorBreadcrumb')};\n`;\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\nimport { BreadcrumbStyleWarpItem, BreadcrumbStyleSeparator } from './style';\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, as: TagName };\n if (!isElm) {\n otherProps['data-separator'] = separator;\n }\n return React.createElement(\n BreadcrumbStyleWarpItem,\n {\n ...otherProps,\n noSeparator: !separator,\n noBefore: isElm,\n active,\n ref,\n },\n <Fragment>\n {isElm && <BreadcrumbStyleSeparator className={`${prefixCls}-separator`}>{separator}</BreadcrumbStyleSeparator>}\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 { BreadcrumbStyleWarp } from './style';\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 <BreadcrumbStyleWarp {...{ 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 </BreadcrumbStyleWarp>\n );\n});\ntype Breadcrumb = typeof Breadcrumb & {\n Item: typeof Item;\n};\n\n(Breadcrumb as Breadcrumb).Item = Item;\n\nexport default Breadcrumb as Breadcrumb;\nexport { Breadcrumb };\n","import Breadcrumb from './Breadcrumb';\nexport * from './style';\nexport * from './Item';\nexport * from './Breadcrumb';\n\nexport default Breadcrumb;\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions, HTMLDivProps } from '@uiw/utils';\nimport { ButtonStyleWarp, ButtonStyleBaseLight } from '@uiw/react-button';\n\nexport const ButtonGroupStyleTheme = {\n boxShadowColorLightDefault: 'rgba(0, 0, 0, 0.17)',\n};\nconst propsTheme = {\n defaultTheme: { ...ButtonGroupStyleTheme },\n};\nexport interface ButtonGroupWarpProps extends ThemeVariantValueOptions<typeof ButtonGroupStyleTheme>, HTMLDivProps {\n vertical?: boolean;\n}\nexport const ButtonGroupWarp = styled.div<ButtonGroupWarpProps>`\n ${ButtonStyleWarp} {\n border-radius: 0;\n box-shadow: inset 1px 0 0 0\n ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset -1px 0 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset -1px 0px 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')};\n }\n ${ButtonStyleWarp}:last-child {\n border-radius: 0 3px 3px 0;\n }\n ${ButtonStyleWarp}:first-child {\n border-radius: 3px 0 0 3px;\n }\n ${ButtonStyleWarp}:first-child:last-child {\n border-radius: 3px !important;\n }\n ${ButtonStyleWarp}:focus {\n z-index: 2;\n }\n ${ButtonStyleWarp} + ${ButtonStyleWarp} {\n margin-left: -1px !important;\n }\n ${ButtonStyleWarp}:not(${ButtonStyleBaseLight}):first-child {\n box-shadow: inset -1px 0px 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')} !important;\n }\n ${ButtonStyleWarp}:not(${ButtonStyleBaseLight}):last-child {\n box-shadow: inset 1px 0 0 0\n ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset 0px 0 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')};\n }\n ${ButtonStyleBaseLight} {\n box-shadow: inset 0 1px 0 0\n ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset 1px -1px 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset -1px 0px 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')} !important;\n }\n ${(props) =>\n props.vertical &&\n css`\n ${ButtonStyleWarp}:not(${ButtonStyleBaseLight}) {\n box-shadow: inset 0 -1px 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset 0 1px 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')} !important;\n }\n ${ButtonStyleWarp}:not(${ButtonStyleBaseLight}):first-child {\n box-shadow: inset 0 -1px 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')},\n inset 0 0 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorLightDefault')} !important;\n }\n ${ButtonStyleWarp} {\n width: 100%;\n display: block;\n & + ${ButtonStyleWarp} {\n margin-left: 0 !important;\n margin-top: -1px !important;\n }\n &:last-child {\n border-radius: 0 0 3px 3px;\n }\n &:first-child {\n border-radius: 3px 3px 0 0;\n }\n }\n `}\n`;\n","import React from 'react';\nimport { HTMLDivProps, IProps } from '@uiw/utils';\nimport { ButtonGroupWarp } from './style';\nexport * from './style';\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 const cls = [prefixCls, className, vertical && `${prefixCls}-vertical`].filter(Boolean).join(' ').trim();\n return (\n <ButtonGroupWarp className={cls} {...resetProps} vertical={vertical} ref={ref}>\n {children}\n </ButtonGroupWarp>\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 styled, { css } from 'styled-components';\nimport Overlay, { ContainerWrap, ContentWrap } from '@uiw/react-overlay';\nimport { ThemeVariantValueOptions } from '@uiw/utils';\nimport { OverlayTriggerProps } from 'src';\n\ninterface OverlayTriggerWrapProps extends ThemeVariantValueOptions, OverlayTriggerProps {}\n\nexport const OverlayTriggerWrap = styled(Overlay)<OverlayTriggerWrapProps>`\n ${(props) => css`\n position: absolute !important;\n top: auto;\n left: auto;\n right: auto;\n bottom: auto;\n overflow: inherit;\n width: initial;\n height: initial;\n ${ContainerWrap} {\n position: relative;\n overflow: inherit;\n &::before {\n display: none;\n }\n }\n ${ContentWrap} {\n margin: 0;\n\n ${props.placement === 'rightTop' &&\n css`\n transform-origin: left top;\n `}\n\n ${props.placement === 'right' &&\n css`\n transform-origin: left center;\n `}\n\n ${props.placement === 'rightBottom' &&\n css`\n transform-origin: left bottom;\n `}\n\n ${props.placement === 'topLeft' &&\n css`\n transform-origin: bottom left;\n `}\n\n ${props.placement === 'top' &&\n css`\n transform-origin: bottom center;\n `}\n\n ${props.placement === 'topRight' &&\n css`\n transform-origin: bottom right;\n `}\n\n ${props.placement === 'left' &&\n css`\n transform-origin: right center;\n `}\n\n ${props.placement === 'leftBottom' &&\n css`\n transform-origin: right bottom;\n `}\n\n ${props.placement === 'bottomLeft' &&\n css`\n transform-origin: top left;\n `}\n\n ${props.placement === 'bottom' &&\n css`\n transform-origin: top center;\n `}\n\n ${props.placement === 'bottomRight' &&\n css`\n transform-origin: top right;\n `}\n }\n `}\n`;\n\nexport const TriggerWrap = styled.div<{ disabled?: boolean }>`\n ${(props) => css`\n ${props.disabled &&\n css`\n cursor: not-allowed;\n `}\n `}\n`;\n","import React, { cloneElement, useEffect, useRef, useState, useImperativeHandle } from 'react';\nimport { GetStyledCloneComponent, 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 { OverlayTriggerWrap, TriggerWrap } from './style';\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 overlayDom: React.MutableRefObject<HTMLElement | undefined>;\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 overlayDom: popupRef,\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 && isOpen) {\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 }, [isOpen]);\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 if (isOpen) {\n zIndex.current -= 1;\n setIsOpen(false);\n onVisibleChange && onVisibleChange(false);\n }\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 if (!delay.show && !(props.children as JSX.Element)?.props.disabled) {\n show();\n return;\n }\n const handle = window.setTimeout(() => {\n if (hoverStateRef.current === 'show') show();\n }, delay.show);\n clearTimeout(handle);\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\n return (\n <React.Fragment>\n {cloneElement(\n child,\n Object.assign({ disabled }, 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 <OverlayTriggerWrap\n {...overlayProps}\n // as={Overlay}\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 </OverlayTriggerWrap>\n </React.Fragment>\n );\n});\n","import styled, { css } from 'styled-components';\nimport OverlayTrigger, { OverlayTriggerProps } from '@uiw/react-overlay-trigger';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const PopoverStyleTheme = {\n fontSizePopoverDefault: '12px',\n boxShadowPopoverPrimary:\n 'rgba(16, 22, 26, 0.1) 0px 0px 0px 1px, rgba(16, 22, 26, 0.2) 0px 2px 4px, rgba(16, 22, 26, 0.2) 0px 8px 24px',\n};\n\nexport interface PopoverWarpProps extends OverlayTriggerProps, ThemeVariantValueOptions<typeof PopoverStyleTheme> {\n // defaultTheme?: Record<string, string | number>;\n}\n\nexport const PopoverStyleOverlayTriggerArrow = styled.div<PopoverWarpProps>`\n position: absolute;\n width: 30px;\n height: 30px;\n border-color: transparent;\n z-index: 21;\n`;\n\nexport interface PopoverStyleOverlayTriggerProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement> {\n params?: {\n placement?: OverlayTriggerProps['placement'];\n };\n}\n\nexport const PopoverStyleOverlayTriggerDiv = styled.div<PopoverStyleOverlayTriggerProps>`\n ${(props) =>\n ['top', 'topLeft', 'topRight'].includes(props.params?.placement || '') &&\n css`\n padding-bottom: 13px;\n `}\n ${(props) =>\n ['bottom', 'bottomLeft', 'bottomRight'].includes(props.params?.placement || '') &&\n css`\n padding-top: 13px;\n `}\n ${(props) =>\n ['right', 'rightTop', 'rightBottom'].includes(props.params?.placement || '') &&\n css`\n padding-left: 13px;\n `}\n\n ${(props) =>\n ['left', 'leftTop', 'leftBottom'].includes(props.params?.placement || '') &&\n css`\n padding-right: 13px;\n `}\n`;\n\nexport const PopoverStyleOverlayTrigger = styled(OverlayTrigger)<PopoverWarpProps>`\n position: relative;\n display: inline-block;\n outline: 0;\n ${(props) =>\n ['right', 'rightTop', 'rightBottom'].includes(props.placement || '') &&\n css`\n & ${PopoverStyleOverlayTriggerArrow} {\n left: 2px;\n margin-top: -15px;\n top: 50%;\n }\n `}\n\n ${(props) =>\n ['left', 'leftTop', 'leftBottom'].includes(props.placement || '') &&\n css`\n & ${PopoverStyleOverlayTriggerArrow} {\n transform: rotate(180deg);\n margin-top: -15px;\n right: 2px;\n top: 50%;\n }\n `}\n\n ${(props) =>\n ['leftTop', 'rightTop'].includes(props.placement || '') &&\n css`\n & ${PopoverStyleOverlayTriggerArrow} {\n top: 15px;\n }\n `}\n\n ${(props) =>\n ['leftBottom', 'rightBottom'].includes(props.placement || '') &&\n css`\n & ${PopoverStyleOverlayTriggerArrow} {\n bottom: 0;\n top: auto;\n }\n `}\n\n ${(props) =>\n ['top', 'topLeft', 'topRight'].includes(props.placement || '') &&\n css`\n & ${PopoverStyleOverlayTriggerArrow} {\n transform: rotate(-90deg);\n bottom: 2px;\n left: 50%;\n margin-left: -15px;\n }\n `}\n\n ${(props) =>\n ['bottom', 'bottomLeft', 'bottomRight'].includes(props.placement || '') &&\n css`\n & ${PopoverStyleOverlayTriggerArrow} {\n transform: rotate(90deg);\n left: 50%;\n margin-left: -15px;\n top: 2px;\n }\n `}\n\n ${(props) =>\n ['bottomLeft', 'topLeft'].includes(props.placement || '') &&\n css`\n & ${PopoverStyleOverlayTriggerArrow} {\n left: 15px;\n }\n `}\n\n ${(props) =>\n ['bottomRight', 'topRight'].includes(props.placement || '') &&\n css`\n & ${PopoverStyleOverlayTriggerArrow} {\n right: 0;\n left: auto;\n }\n `}\n`;\n\nexport const PopoverStyleOverlayTriggerContent = styled.div<PopoverWarpProps>`\n font-size: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: PopoverStyleTheme }, 'fontSizePopoverDefault')};\n display: block;\n text-align: left;\n text-decoration: none;\n background-color: #fff;\n border-radius: 4px;\n min-height: 23px;\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: PopoverStyleTheme }, 'boxShadowPopoverPrimary')};\n`;\n\n// PopoverStyleOverlayTriggerContent.defaultProps = {\n// defaultTheme: PopoverStyleTheme,\n// };\n","import React from 'react';\nimport { OverlayTriggerProps } from '@uiw/react-overlay-trigger';\nimport Confirm from './Confirm';\nimport {\n PopoverStyleOverlayTrigger,\n PopoverStyleOverlayTriggerContent,\n PopoverStyleOverlayTriggerArrow,\n PopoverStyleOverlayTriggerDiv,\n} from './style/index';\nexport * from './style';\n\nexport interface PopoverProps extends OverlayTriggerProps {\n content?: React.ReactNode;\n visibleArrow?: boolean;\n}\n\nexport default class Popover extends React.Component<PopoverProps> {\n static Confirm = Confirm;\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 <PopoverStyleOverlayTriggerArrow 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 </PopoverStyleOverlayTriggerArrow>\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 <PopoverStyleOverlayTrigger\n {...other}\n overlay={\n <PopoverStyleOverlayTriggerDiv params={{ placement: this.props.placement }} className={cls}>\n {visibleArrow && this.renderArrow()}\n <PopoverStyleOverlayTriggerContent className={`${prefixCls}-inner`}>\n {this.props.content}\n </PopoverStyleOverlayTriggerContent>\n </PopoverStyleOverlayTriggerDiv>\n }\n >\n {typeof this.props.children === 'object' && (this.props.children as JSX.Element).type.name !== 'Icon' ? (\n this.props.children\n ) : (\n <span style={{ display: 'block', writingMode: 'vertical-rl' }}>{this.props.children}</span>\n )}\n </PopoverStyleOverlayTrigger>\n );\n }\n}\n","import React, { useState } from 'react';\nimport Popover, { PopoverProps } from './';\nimport Button from '@uiw/react-button';\nimport Icon from '@uiw/react-icon';\n\ninterface Confirm {\n trigger?: PopoverProps['trigger'];\n placement?: PopoverProps['placement'];\n children?: React.ReactNode;\n visibleArrow?: PopoverProps['visibleArrow'];\n onConfirm?: () => void;\n confirmText?: string;\n title?: React.ReactNode;\n cancelText?: string;\n}\n\nexport default function Confirm(props: Confirm) {\n const {\n trigger = 'click',\n placement = 'top',\n confirmText = 'Yes',\n title,\n cancelText = 'No',\n visibleArrow,\n children,\n onConfirm,\n } = props;\n const [isOpen, setIsOpen] = useState(false);\n return (\n <Popover\n isOpen={isOpen}\n visibleArrow={visibleArrow}\n content={\n <div style={{ padding: '12px 16px', position: 'relative' }}>\n <Icon\n type=\"information\"\n style={{ position: 'absolute', top: 13.5, fontSize: 14, transform: 'rotate(180deg)', color: '#faad14' }}\n />\n <div style={{ paddingLeft: 20 }}>\n <div style={{ fontSize: 14 }}>{title}</div>\n <div style={{ position: 'relative', bottom: 0, marginTop: 12, display: 'flex', justifyContent: 'end' }}>\n <Button size=\"small\" onClick={() => setIsOpen(false)}>\n {cancelText}\n </Button>\n <Button\n size=\"small\"\n type=\"primary\"\n style={{ marginLeft: 10 }}\n onClick={() => {\n onConfirm?.();\n setIsOpen(false);\n }}\n >\n {confirmText}\n </Button>\n </div>\n </div>\n </div>\n }\n trigger={trigger}\n placement={placement}\n >\n <div onClick={() => setIsOpen(true)}>{children}</div>\n </Popover>\n );\n}\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue, HTMLSpanProps } from '@uiw/utils';\nimport { InputProps } from 'src';\nimport { IconStyleBase } from '@uiw/react-icon';\nexport const InputStyleTheme = {\n colorInputStyleBase: '#393e48',\n boxShadowColorInputHBase: 'rgba(19, 124, 189, 0)',\n boxShadowColorInputInsHBase: 'rgba(16, 22, 26, 0.15)',\n boxShadowColorInputInsVBase: 'rgba(16, 22, 26, 0.2)',\n backgroundColorInputStyleBase: '#fff',\n heightInputDefault: '30px',\n fontSizeInputDefault: 'inherit',\n boxShadowColorInputHFocus: '#393e48',\n boxShadowColorInputVFocus: 'rgba(57, 62, 72, 0.17)',\n boxShadowColorInputHHover: '#6e6e6e',\n boxShadowColorInputVHover: 'rgba(57, 62, 72, 0)',\n backgrounColorInputDisabled: '#dddddd',\n colorInputDisabled: '#a5a5a5',\n\n topInputStyleAddonAfter: '3px',\n\n fontSizeDefault: '14px',\n fontSizeLarge: '16px',\n lineHeightInputsDefault: '14px',\n widthInputsDefault: '100%',\n lineHeightInputLarge: '36px',\n lineHeightInputSmall: '24px',\n lineHeightInputStyleAddonAfter: '16px',\n};\n\nconst propsTheme = {\n defaultTheme: { ...InputStyleTheme },\n};\nexport interface InputStyleBaseProps\n extends ThemeVariantValueOptions<typeof InputStyleTheme>,\n Pick<InputProps, 'size' | 'addonAfter' | 'disabled'> {}\n\nexport interface InputStyleAddonAfterProps extends ThemeVariantValueOptions<typeof InputStyleTheme>, HTMLSpanProps {}\n\nexport const InputStyleBase = styled.input<InputStyleBaseProps>`\n ${(props) => {\n const boxShadowColorInputStyleBase = getThemeVariantValue(\n { ...props, ...propsTheme },\n `boxShadowColorInputStyleBase`,\n );\n const boxShadowColorInputInsHBase = getThemeVariantValue(\n { ...props, ...propsTheme },\n `boxShadowColorInputInsHBase`,\n );\n const boxShadowColorInputInsVBase = getThemeVariantValue(\n { ...props, ...propsTheme },\n `boxShadowColorInputInsVBase`,\n );\n const boxShadowColorInputVFocus = getThemeVariantValue({ ...props, ...propsTheme }, `boxShadowColorInputVFocus`);\n const boxShadowColorInputHHover = getThemeVariantValue({ ...props, ...propsTheme }, `boxShadowColorInputHHover`);\n\n return css`\n outline: none;\n border: none;\n border-radius: 3px;\n box-shadow: 0 0 0 0 ${boxShadowColorInputStyleBase}, 0 0 0 0 ${boxShadowColorInputStyleBase},\n inset 0 0 0 1px ${boxShadowColorInputInsHBase}, inset 0 1px 1px ${boxShadowColorInputInsVBase};\n box-sizing: border-box;\n background: ${getThemeVariantValue({ ...props, ...propsTheme }, `backgroundColorInputStyleBase`)};\n height: ${getThemeVariantValue({ ...props, ...propsTheme }, `heightInputDefault`)};\n margin: 0 !important;\n padding: 0 10px;\n vertical-align: middle;\n line-height: ${getThemeVariantValue({ ...props, ...propsTheme }, `heightInputDefault`)};\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, `colorInputStyleBase`)};\n font-weight: 400;\n font-size: ${getThemeVariantValue({ ...props, ...propsTheme }, `fontSizeInputDefault`)};\n transition: box-shadow 0.3s cubic-bezier(0.4, 1, 0.75, 0.9);\n appearance: none;\n &:not(:first-child) {\n padding-left: 26px;\n }\n &:focus {\n box-shadow: 0 0 0 1px ${getThemeVariantValue({ ...props, ...propsTheme }, `boxShadowColorInputHFocus`)},\n 0 0 0 3px ${boxShadowColorInputVFocus}, inset 0 1px 1px ${boxShadowColorInputInsVBase};\n }\n &:hover {\n box-shadow: 0 0 0 1px ${boxShadowColorInputHHover},\n 0 0 0 3px ${getThemeVariantValue({ ...props, ...propsTheme }, `boxShadowColorInputVHover`)},\n inset 0 1px 1px ${boxShadowColorInputInsVBase};\n }\n &:focus&:hover {\n box-shadow: 0 0 0 1px ${boxShadowColorInputHHover}, 0 0 0 3px ${boxShadowColorInputVFocus},\n inset 0 1px 1px ${boxShadowColorInputInsVBase};\n }\n &:disabled {\n box-shadow: none;\n background: ${getThemeVariantValue({ ...props, ...propsTheme }, `backgrounColorInputDisabled`)};\n opacity: 0.75;\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, `colorInputDisabled`)};\n cursor: not-allowed;\n resize: none;\n }\n `;\n }}\n`;\n\nexport const InputStyleAddonAfter = styled.span<InputStyleAddonAfterProps>`\n ${(props) => {\n return css`\n position: absolute;\n top: ${getThemeVariantValue({ ...props, ...propsTheme }, `topInputStyleAddonAfter`)};\n right: ${getThemeVariantValue({ ...props, ...propsTheme }, `topInputStyleAddonAfter`)};\n display: flex;\n bottom: ${getThemeVariantValue({ ...props, ...propsTheme }, `topInputStyleAddonAfter`)};\n > * {\n display: flex !important;\n align-items: center;\n }\n `;\n }}\n`;\n\nexport const InputStyleWarp = styled.div<InputStyleBaseProps>`\n position: relative;\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n line-height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightInputsDefault')};\n width: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'widthInputsDefault')};\n\n & ${InputStyleBase} {\n width: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'widthInputsDefault')};\n }\n\n > ${IconStyleBase} {\n position: absolute;\n margin: 0 7px 0 7px;\n transform: translateY(-50%);\n top: 50%;\n }\n\n ${(props) => {\n if (props.size === 'large') {\n return css`\n font-size: ${getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeLarge')};\n ${InputStyleBase} {\n line-height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightInputLarge')};\n height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightInputLarge')};\n }\n `;\n }\n }}\n\n ${(props) => {\n if (props.size === 'small') {\n return css`\n min-width: 20px;\n ${InputStyleBase} {\n line-height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightInputSmall')};\n height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightInputSmall')};\n padding: 0 6px;\n &:not(:first-child) {\n padding-left: 26px;\n }\n }\n ${InputStyleAddonAfter} {\n > * {\n line-height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightInputStyleAddonAfter')};\n min-height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightInputStyleAddonAfter')};\n }\n }\n `;\n }\n }}\n`;\n\nexport default InputStyleWarp;\n","import React, { useState, useMemo } from 'react';\nimport Input, { InputProps } from './';\n\ninterface InputNumberProps extends InputProps {\n min?: number;\n max?: number;\n step?: number;\n overLimitColor?: string;\n formatter?: (value: number) => string;\n parser?: (value: number) => number;\n keyboard?: boolean;\n}\n\nexport default React.forwardRef<HTMLInputElement, InputNumberProps>((props, ref) => {\n const {\n className,\n min,\n max,\n step,\n overLimitColor,\n keyboard = false,\n formatter,\n prefixCls = 'w-input-number',\n ...otherProps\n } = props;\n\n const value = useMemo(() => Number.parseFloat((props.value || 0)?.toString()), [props.value]);\n const [isOverLimit, isOverLimitSet] = useState(overLimitComp(value));\n\n function overLimitComp(value: number) {\n if (typeof min === 'number' && value < min) return true;\n if (typeof max === 'number' && value > max) return true;\n return false;\n }\n\n const onChange = (v: React.ChangeEvent<HTMLInputElement>) => {\n const isOverLimit = overLimitComp(Number.parseFloat(v.target.value));\n isOverLimitSet(isOverLimit);\n\n props.onChange?.(v);\n };\n\n const overLimitProps = useMemo(() => {\n if (!overLimitColor) return { min, max };\n }, []);\n\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n const inputStyle = useMemo(() => (isOverLimit ? { color: overLimitColor?.toString() } : undefined), [isOverLimit]);\n\n return (\n <Input\n {...otherProps}\n className={cls}\n type=\"number\"\n inputStyle={inputStyle}\n onChange={onChange}\n step={step}\n {...overLimitProps}\n />\n );\n});\n","import React, { useEffect, useImperativeHandle } from 'react';\nimport { IProps, HTMLInputProps } from '@uiw/utils';\nimport InputStyleWarp, { InputStyleBase, InputStyleAddonAfter } from './style/input';\n\nexport * from './style/input';\nexport * from './InputNumber';\nexport { default as InputNumber } from './InputNumber';\nexport * from './style/input';\n\nexport interface InputProps extends IProps, Omit<HTMLInputProps, 'size'> {\n preIcon?: React.ReactNode;\n addonAfter?: React.ReactNode;\n size?: 'large' | 'default' | 'small';\n inputStyle?: React.CSSProperties;\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 inputStyle,\n disabled,\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 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 <InputStyleWarp className={cls} style={style} size={size} addonAfter={addonAfter} disabled={disabled}>\n {preIcon}\n <InputStyleBase\n ref={inputRef}\n type={type}\n autoComplete=\"off\"\n disabled={disabled}\n {...otherProps}\n style={inputStyle}\n className={`${prefixCls}-inner`}\n />\n {addonAfter && (\n <InputStyleAddonAfter className={`${prefixCls}-addon-after`} ref={addonRef}>\n {addonAfter}\n </InputStyleAddonAfter>\n )}\n </InputStyleWarp>\n );\n});\n\nexport { InputStyleBase };\n","import styled, { css } from 'styled-components';\nimport {\n ThemeVariantValueOptions,\n HTMLDivProps,\n HTMLInputProps,\n HTMLButtonProps,\n HTMLLiProps,\n getThemeVariantValue,\n} from '@uiw/utils';\nimport Button, { ButtonProps } from '@uiw/react-button';\n\nexport const DateTimePickerStyleTheme = {\n borderLeftColorDateTimeStylePanelUl: '#e9e9e9',\n\n colorDateTimeLi: '#393e48',\n colorDateTimeLiDisabled: '#d4d4d4',\n colorDateTimeLiSelected: '#000',\n backgroundColorDateTimeLiSelect: '#f1f1f1',\n backgroundColorDateTimeLiHover: '#f6f8fa',\n backgroundColorDateTimeLiActive: '#e1e5e8',\n\n colorDateTimeStyleCloseButton: '#a5a5a5',\n colorDateTimeStyleCloseButtonHover: '#393e48',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof DateTimePickerStyleTheme>;\n\nexport interface DateTimeInputProps extends HTMLInputProps, ThemeVar {}\nexport const DateTimeInput = styled.input``;\nexport interface DateTimeStyleCloseButtonProps extends ButtonProps, ThemeVar {\n disabled?: boolean;\n}\n/** dateTime 清空按钮 **/\nexport const DateTimeStyleCloseButton = styled(Button)<DateTimeStyleCloseButtonProps>`\n ${DateTimeInput}.disabled & {\n display: none !important;\n }\n ${DateTimeInput} & {\n display: none;\n min-height: initial;\n color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: DateTimePickerStyleTheme },\n 'colorDateTimeStyleCloseButton',\n )} !important;\n &:hover {\n color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: DateTimePickerStyleTheme },\n 'colorDateTimeStyleCloseButtonHover',\n )} !important;\n background-color: transparent !important;\n }\n }\n`;\n\nexport const DateTimeStylePanelUl = styled.ul`\n list-style: none;\n min-width: 56px;\n margin: 0 !important;\n padding-left: 0 !important;\n padding-right: 0 !important;\n padding-bottom: 162px !important;\n`;\nexport interface DateTimeStylePanelLiProps extends HTMLLiProps, ThemeVariantValueOptions {\n disabled?: boolean;\n selected?: boolean;\n}\nexport const DateTimeStylePanelLi = styled.li<DateTimeStylePanelLiProps>`\n & + & {\n margin-top: 0 !important;\n }\n & {\n cursor: pointer;\n text-align: center;\n height: 28px;\n line-height: 28px;\n transition: all 0.3s;\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: DateTimePickerStyleTheme }, 'colorDateTimeLi')};\n ${(props) =>\n !props.disabled &&\n css`\n &:hover {\n background-color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: DateTimePickerStyleTheme },\n 'backgroundColorDateTimeLiHover',\n )};\n }\n &:active {\n background-color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: DateTimePickerStyleTheme },\n 'backgroundColorDateTimeLiActive',\n )};\n }\n `}\n ${(props) =>\n props.selected &&\n css`\n & {\n background-color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: DateTimePickerStyleTheme },\n 'backgroundColorDateTimeLiSelect',\n )};\n font-weight: bold;\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: DateTimePickerStyleTheme }, 'colorDateTimeLiSelected')};\n }\n `}\n ${(props) =>\n props.disabled &&\n css`\n & {\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: DateTimePickerStyleTheme }, 'colorDateTimeLiDisabled')};\n cursor: not-allowed;\n &.hide {\n display: none;\n }\n }\n `}\n }\n`;\n\n// DateTimeStylePanelLi.defaultProps = {\n// defaultTheme: DateTimePickerStyleTheme,\n// };\n\nexport interface DateTimeStylePanelProps extends HTMLDivProps, ThemeVariantValueOptions {}\n\nexport const DateTimeStylePanel = styled.div<DateTimeStylePanelProps>`\n max-height: 189px;\n flex: 1;\n overflow: auto;\n font-size: 14px;\n &:hover {\n overflow: auto;\n }\n & + & {\n ul {\n border-left: 1px solid\n ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: DateTimePickerStyleTheme },\n 'borderLeftColorDateTimeStylePanelUl',\n )};\n }\n }\n`;\n\n// DateTimeStylePanel.defaultProps = {\n// defaultTheme: DateTimePickerStyleTheme,\n// };\n\nexport interface DateTimeStyleBaseProps extends HTMLDivProps, ThemeVariantValueOptions {}\nexport const DateTimeStyleBase = styled.div`\n overflow: hidden;\n border-radius: 4px;\n display: flex;\n &::after {\n content: '';\n display: block;\n clear: both;\n }\n`;\n","import React, { useMemo, useRef } from 'react';\nimport { IProps, HTMLDivProps, HTMLLiProps } from '@uiw/utils';\nimport { DateTimeStylePanel, DateTimeStylePanelUl, DateTimeStylePanelLi } from './style';\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 <DateTimeStylePanel className={`${prefixCls}-spinner`} {...other}>\n <DateTimeStylePanelUl>\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 <DateTimeStylePanelLi\n key={idx}\n data-index={currentCount === item.count ? idx : undefined}\n ref={(tag: HTMLLIElement) => tag && getItemInstance(tag)}\n {...liProps}\n disabled={item.disabled}\n selected={currentCount === item.count}\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 </DateTimeStylePanelLi>\n );\n })}\n </DateTimeStylePanelUl>\n </DateTimeStylePanel>\n );\n}\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\nimport TimePanel, { TimePickerPanelProps } from './Panel';\nimport { DateTimeStyleBase } from './style';\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 <DateTimeStyleBase 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 </DateTimeStyleBase>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport Popover, { PopoverProps } from '@uiw/react-popover';\nimport Input, { InputProps } from '@uiw/react-input';\nimport { IProps } from '@uiw/utils';\nimport formatter from '@uiw/formatter';\nimport { TimePickerTime, TimePickerTimeProps } from './Time';\nimport { DateTimeStyleCloseButton, DateTimeInput } from './style';\n\nexport * from './Panel';\nexport * from './Time';\nexport * from './style';\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 icon?: React.ReactNode;\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 icon,\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, new Date(date)) : '';\n const datePickerTime = date || new Date();\n const _props: InputProps = { ...inputProps, value: inputValue };\n if (allowClear && inputValue !== '' && !!inputValue) {\n _props.addonAfter = (\n <DateTimeStyleCloseButton\n className={`${prefixCls}-close-btn`}\n icon={icon}\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 <DateTimeInput\n as={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","export const DatePickerStyleTheme = {\n backgroundColorDatePickerBaseHover: '#eaeaea',\n backgroundColorDatePickerStyleCaptionPanePrevBefore: '#333',\n backgroundColorDatePickerActive: '#d2d2d2',\n backgroundColorPrimaryHover: '#0070bd',\n\n backgroundColorPrimaryActive: '#00528a',\n backgroundColorDatePickerStyleCaptionToday: '#dedede',\n backgroundColorDatePickerStyleCaptionTodayBefore: '#a0a0a0',\n backgroundColorBase: '#fff',\n\n // 公共\n backgroundColorPrimary: '#008ef0',\n colorPrimary: '#fff',\n backgroundColorPrimaryDisabled: '#57baff',\n backgroundColorDatePickerTodayDisabled: 'rgba(189, 189, 189, 0.47)',\n // 组件内部\n colorDatePickerDayTodayBase: '#d3d3d3',\n backgroundColorDatePickerDayDisabled: '#f5f5f5',\n colorDatePickerDayHover: '#393e48',\n\n colorDatePickerDayEnd: '#6f6f6f',\n\n fontSizeDefault: '14px',\n // 组件内部\n // 组件\n borderColorDatepickerBase: '#e9e9e9',\n colorDatepickerTimeBase: '#393e48',\n boxShadowDatepickerTime1: 'rgba(16, 22, 26, 0.1)',\n boxShadowDatepickerTime2: 'rgba(16, 22, 26, 0)',\n boxShadowDatepickerTime3: 'rgba(16, 22, 26, 0.2)',\n\n backgroundColorPrimaryBasicHover: '#c7e8ff',\n colorDatePickerPaging: 'rgba(0, 0, 0, 0.25)',\n\n borderBottomColorDatepickerCaption: '#ececec',\n};\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions, HTMLDivProps } from '@uiw/utils';\nimport { DatePickerDayRenderDay } from './../index';\nimport { DatePickerStyleTheme } from './theme';\nconst propsTheme = {\n defaultTheme: { ...DatePickerStyleTheme },\n};\nexport interface DatePickerStyleBodyWarpProps\n extends ThemeVariantValueOptions<typeof DatePickerStyleTheme>,\n HTMLDivProps {}\nexport const DatePickerStyleBodyWarp = styled.div<DatePickerStyleBodyWarpProps>`\n padding-top: 5px;\n`;\n\nexport interface DatePickerStyleWeekProps extends ThemeVariantValueOptions<typeof DatePickerStyleTheme>, HTMLDivProps {\n cls?: DatePickerDayRenderDay;\n}\nexport interface DatePickerStyleWeekBaseProps\n extends ThemeVariantValueOptions<typeof DatePickerStyleTheme>,\n HTMLDivProps {}\n\nexport const DatePickerStyleWeekBase = styled.div<DatePickerStyleWeekBaseProps>`\n display: flex;\n width: 100%;\n & > div,\n & > div {\n display: table-cell;\n flex: 1;\n min-width: 26px;\n min-height: 26px;\n vertical-align: middle;\n text-align: center;\n }\n & > div.end {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDatePickerDayEnd')};\n }\n`;\nexport const DatePickerStyleWeekDay = styled(DatePickerStyleWeekBase)`\n & > div {\n font-weight: bold;\n }\n`;\n\nexport const DatePickerStyleWeek = styled(DatePickerStyleWeekBase)<DatePickerStyleWeekProps>`\n & {\n border-radius: 3px;\n cursor: pointer;\n ${(props) =>\n (props.cls?.prev || props.cls?.next) &&\n css`\n & {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDatePickerDayTodayBase')};\n }\n `}\n & > div {\n transition: background-color 0.3s, color 0.3s;\n margin: 0 2px;\n border-radius: 3px;\n line-height: 22px;\n }\n ${(props) =>\n props.cls?.today &&\n css`\n & > div {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerBaseHover')};\n }\n `}\n ${(props) =>\n props.cls?.selected &&\n css`\n &,\n &&:hover {\n > div {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorPrimary')};\n background-color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorPrimary')};\n }\n }\n `}\n \n &:hover > div {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerBaseHover')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDatePickerDayHover')};\n }\n &:active > div {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerActive')};\n }\n ${(props) =>\n props.cls?.disabled &&\n css`\n &,\n &&:hover {\n & > div {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDatePickerDayTodayBase')};\n cursor: not-allowed;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerDayDisabled')};\n }\n ${() =>\n props.cls?.today &&\n css`\n & > div {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerTodayDisabled')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorPrimary')};\n }\n `}\n ${() =>\n props.cls?.selected &&\n css`\n & > div {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorPrimaryDisabled')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorPrimary')};\n }\n `}\n }\n `}\n }\n`;\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport {\n DatePickerStyleWeek,\n DatePickerStyleBodyWarp,\n DatePickerStyleWeekDay,\n DatePickerStyleWeekBase,\n} from './style/day';\nexport * from './style/day';\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 = new Date(new Date(date!).setDate(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 <DatePickerStyleWeek className={classnames(cls)} {...other} {...divProps} cls={cls}>\n {renderDay ? (\n renderDay(cellDate.getDate(), { ...props, ...cls, date: cellDate })\n ) : (\n <div>{cellDate.getDate()}</div>\n )}\n </DatePickerStyleWeek>\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 <DatePickerStyleWeekDay 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 </DatePickerStyleWeekDay>\n ),\n [prefixCls, weekday, weekTitle],\n );\n\n return (\n <DatePickerStyleBodyWarp\n {...other}\n className={[prefixCls ? `${prefixCls}-body` : null, className].filter(Boolean).join(' ').trim()}\n >\n {weekdayLabel}\n <div className={[prefixCls ? `${prefixCls}-day-body` : null].filter(Boolean).join(' ').trim()}>\n {[...Array(6)].map((_, idx) => (\n <DatePickerStyleWeekBase 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 </DatePickerStyleWeekBase>\n ))}\n </div>\n </DatePickerStyleBodyWarp>\n );\n}\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions, HTMLDivProps } from '@uiw/utils';\nimport { DatePickerStyleTheme } from './theme';\nconst propsTheme = {\n defaultTheme: { ...DatePickerStyleTheme },\n};\nexport interface DatePickerStyleYearMonthWarpProps\n extends ThemeVariantValueOptions<typeof DatePickerStyleTheme>,\n HTMLDivProps {\n isYear?: boolean;\n}\nexport const DatePickerStyleYearMonthWarp = styled.div<DatePickerStyleYearMonthWarpProps>`\n & {\n text-align: center;\n max-width: 100%;\n padding: 10px 0 9px 0;\n }\n ${(props) =>\n props.isYear &&\n css`\n & > div {\n width: 33.333%;\n }\n `}\n`;\nexport interface DatePickerStyleYearMonthSelectProps\n extends ThemeVariantValueOptions<typeof DatePickerStyleTheme>,\n HTMLDivProps {\n selected?: boolean;\n paging?: boolean;\n}\nexport const DatePickerStyleYearMonthSelect = styled.div<DatePickerStyleYearMonthSelectProps>`\n display: inline-block;\n width: 50%;\n line-height: 20px;\n margin: 3px 0;\n > span {\n display: inline-block;\n padding: 1px 6px;\n border-radius: 3px;\n cursor: pointer;\n }\n ${(props) =>\n props.selected &&\n css`\n & > span {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorPrimary')};\n background-color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorPrimary')};\n }\n `}\n > span:hover {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorPrimaryBasicHover')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorPrimary')};\n }\n ${(props) =>\n props.paging &&\n css`\n & {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDatePickerPaging')};\n }\n `}\n`;\nexport default DatePickerStyleYearMonthWarp;\n","import React from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport { DatePickerStyleYearMonthWarp, DatePickerStyleYearMonthSelect } from './style/year-month';\nexport * from './style/year-month';\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 <DatePickerStyleYearMonthWarp\n className={[prefixCls ? `${prefixCls}-month` : null, className].filter(Boolean).join(' ').trim()}\n {...other}\n isYear={false}\n >\n {[...Array(12)].map((_, idx) => {\n const selectedMonth = panelDate!.getMonth();\n return (\n <DatePickerStyleYearMonthSelect\n selected={selectedMonth === idx}\n paging={false}\n key={idx}\n className={[selectedMonth === idx ? 'selected' : null].filter(Boolean).join(' ').trim()}\n >\n <span onClick={() => onSelected(idx, false)}>{(monthLabel && monthLabel[idx]) || idx}</span>\n </DatePickerStyleYearMonthSelect>\n );\n })}\n </DatePickerStyleYearMonthWarp>\n );\n}\n","import React, { useState } from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport { DatePickerStyleYearMonthWarp, DatePickerStyleYearMonthSelect } from './style/year-month';\nexport * from './style/year-month';\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 <DatePickerStyleYearMonthWarp\n className={[prefixCls ? `${prefixCls}-year` : null, className].filter(Boolean).join(' ').trim()}\n {...other}\n isYear\n >\n {panelNum &&\n panelNum.map((_, idx) => {\n const selectedYear = activeYear!.getFullYear();\n const year = selectedYear + panelNum[idx];\n return (\n <DatePickerStyleYearMonthSelect\n key={idx}\n selected={selectedYear === year}\n paging={idx === 0 || idx === panelNum.length - 1}\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 </DatePickerStyleYearMonthSelect>\n );\n })}\n </DatePickerStyleYearMonthWarp>\n );\n}\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { DatePickerStyleTheme } from './theme';\nconst propsTheme = {\n defaultTheme: { ...DatePickerStyleTheme },\n};\nexport interface DatePickerStyleCaptionPaneBaseProps\n extends ThemeVariantValueOptions<typeof DatePickerStyleTheme>,\n React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement> {\n prev?: boolean;\n next?: boolean;\n}\n/** 基础的**/\nexport const DatePickerStyleCaptionPaneBase = styled.div<DatePickerStyleCaptionPaneBaseProps>`\n transition: background-color 0.3s;\n display: inline-block;\n border-radius: 3px;\n padding: 1px 5px;\n font-weight: bold;\n cursor: pointer;\n &:hover {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerBaseHover')};\n }\n &:active {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerActive')};\n }\n ${(props) =>\n (props.prev || props.next) &&\n css`\n & {\n z-index: 30;\n position: relative;\n padding: 1px 8px 6px 8px;\n &::after,\n &::before {\n content: '';\n display: block;\n height: 8px;\n width: 2px;\n border-radius: 2px;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerStyleCaptionPanePrevBefore')};\n }\n &::after {\n margin-top: -4px;\n }\n &::before {\n margin-top: 4px;\n }\n }\n `}\n ${(props) =>\n props.prev &&\n css`\n & {\n float: left;\n }\n &::after {\n transform: rotate(-45deg);\n }\n &::before {\n transform: rotate(45deg);\n }\n `}\n ${(props) =>\n props.next &&\n css`\n & {\n float: right;\n }\n &::before {\n transform: rotate(-45deg);\n }\n &::after {\n transform: rotate(45deg);\n }\n `}\n`;\n/** 年 **/\nexport const DatePickerStyleCaptionPaneYear = styled(\n DatePickerStyleCaptionPaneBase,\n)<DatePickerStyleCaptionPaneBaseProps>``;\n/** 月 **/\nexport const DatePickerStyleCaptionPaneMonth = styled(\n DatePickerStyleCaptionPaneBase,\n)<DatePickerStyleCaptionPaneBaseProps>``;\n/** pane **/\nexport const DatePickerStyleCaptionPane = styled(DatePickerStyleCaptionPaneBase)<DatePickerStyleCaptionPaneBaseProps>``;\n\n/** tody 按钮 **/\nexport interface DatePickerStyleCaptionTodayProps\n extends ThemeVariantValueOptions<typeof DatePickerStyleTheme>,\n React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement> {}\nexport const DatePickerStyleCaptionToday = styled.div<DatePickerStyleCaptionTodayProps>`\n cursor: pointer;\n background: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerStyleCaptionToday')};\n border-radius: 3px;\n display: inline-block;\n height: 10px;\n width: 10px;\n overflow: hidden;\n margin: 0 0 0 2px;\n transition: background-color 0.3s;\n &::before {\n content: '';\n display: block;\n height: 4px;\n width: 4px;\n border-radius: 3px;\n margin: 3px 0 0 3px;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerStyleCaptionTodayBefore')};\n }\n &:hover {\n background-color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorPrimaryHover')};\n &::before {\n background-color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorBase')};\n }\n }\n &:active {\n background-color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorPrimaryActive')};\n &::before {\n background-color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorBase')};\n }\n }\n`;\n\nexport interface DatePickerStyleCaptionBaseProps\n extends ThemeVariantValueOptions<typeof DatePickerStyleTheme>,\n React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement> {}\n\nexport const DatePickerStyleCaptionBase = styled.div<DatePickerStyleCaptionBaseProps>`\n user-select: none;\n text-align: center;\n padding: 0 0 3px 0;\n border-bottom: 1px solid\n ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderBottomColorDatepickerCaption')};\n & ${DatePickerStyleCaptionPaneYear}+${DatePickerStyleCaptionPaneMonth} {\n margin-left: 5px;\n }\n`;\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport {\n DatePickerStyleCaptionPane,\n DatePickerStyleCaptionToday,\n DatePickerStyleCaptionBase,\n DatePickerStyleCaptionPaneYear,\n DatePickerStyleCaptionPaneMonth,\n} from './style/caption';\nexport * from './style/caption';\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 <DatePickerStyleCaptionBase className={classnames(prefixCls ? `${prefixCls}-caption` : null, className)} {...other}>\n <DatePickerStyleCaptionPane\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'prev')}\n onClick={() => onSelected('prev')}\n prev\n />\n <DatePickerStyleCaptionPaneMonth\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'month')}\n onClick={() => onSelected('month')}\n >\n {renderMonth}\n </DatePickerStyleCaptionPaneMonth>\n <DatePickerStyleCaptionPaneYear\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'year')}\n onClick={() => onSelected('year')}\n >\n {panelDate!.getFullYear()}\n </DatePickerStyleCaptionPaneYear>\n {todayButton && (\n <DatePickerStyleCaptionToday\n className={classnames(prefixCls ? `${prefixCls}-caption-today` : null)}\n onClick={() => onSelected('today')}\n title={todayButton}\n />\n )}\n <DatePickerStyleCaptionPane\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'next')}\n onClick={() => onSelected('next')}\n next\n />\n </DatePickerStyleCaptionBase>\n );\n}\n","import styled from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { DatePickerStyleTheme } from './theme';\nconst propsTheme = {\n defaultTheme: { ...DatePickerStyleTheme },\n};\nexport interface DatePickerStyleWarpProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions<typeof DatePickerStyleTheme> {}\n\nexport const DatePickerStyleWarp = styled.div<DatePickerStyleWarpProps>`\n vertical-align: top;\n display: inline-block;\n position: relative;\n border-radius: 3px;\n background: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorBase')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDatepickerTimeBase')};\n user-select: none;\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n line-height: 21px;\n padding: 5px;\n min-width: 192px;\n max-width: 192px;\n box-shadow: 0 0 0 1px ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowDatepickerTime1')},\n 0 0 0 ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowDatepickerTime2')},\n 0 1px 1px ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowDatepickerTime3')};\n &.w-datepicker-timepicker {\n border: 1px solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorDatepickerTimeBase')};\n border-top: 0;\n border-radius: 0 0 4px 4px !important;\n > div {\n max-height: 186px;\n }\n }\n &.w-datepicker-time-btn {\n cursor: pointer;\n margin-top: 2px;\n transition: background-color 0.3s;\n display: inline-block;\n border-radius: 3px;\n padding: 1px 5px;\n &:hover {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerBaseHover')};\n }\n &:active {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDatePickerActive')};\n }\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 { DatePickerStyleWarp } from './style';\nexport * from './DatePickerDay';\nexport * from './DatePickerMonth';\nexport * from './DatePickerYear';\nexport * from './DatePickerCaption';\nexport * from './style/theme';\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 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(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 curType === 'today' && setSelectDate(today);\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 <DatePickerStyleWarp 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 {...(typeof showTime === 'boolean' ? {} : 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 </DatePickerStyleWarp>\n );\n}\n","import { IconStyleBase } from '@uiw/react-icon';\nimport { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\nimport styled, { css } from 'styled-components';\nimport { DatePickerStyleBodyWarp, DatePickerStyleWeekDay, DatePickerStyleWeekBase } from '@uiw/react-date-picker';\n\nexport const CalendarStyleTheme = {\n fontSizeCalendarCaptionDefualt: '26px',\n fontSizeLarge: '16px',\n backgroundColorCalendarHover: '#ececec',\n backgroundColorCalendarActive: '#ececec',\n lineHeightCalendarPanel: '16px',\n backgroundCalendarDefault: 'white',\n borderColorCalendarChildDiv: '#ececec',\n};\nconst propsTheme = {\n defaultTheme: { ...CalendarStyleTheme },\n};\n\ntype HTMLDivElements = React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;\n\ntype ThemeVar = ThemeVariantValueOptions<typeof CalendarStyleTheme>;\n\nexport interface CalendarCaptionStyleWrapProps extends HTMLDivElements, ThemeVar {}\nexport interface CalendarBtnGroupStyleWrapProps extends HTMLDivElements, ThemeVar {}\nexport interface CalendarPanelStyleWrapProps extends HTMLDivElements, ThemeVar {}\nexport interface CalendarStyleWrapProps extends HTMLDivElements, ThemeVar {}\nexport interface CalendarBtnStyleWrapProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement> {}\n\nexport const CalendarCaptionStyleWrap = styled.div<CalendarCaptionStyleWrapProps>`\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeCalendarCaptionDefualt')};\n font-weight: 200;\n width: 100%;\n display: inline-block;\n`;\n\nexport const CalendarBtnStyleWrap = styled.span<CalendarBtnStyleWrapProps>``;\n\nexport const CalendarBtnGroupStyleWrap = styled.div<CalendarBtnGroupStyleWrapProps>`\n ${(props) => css`\n display: inline-block;\n user-select: none;\n float: right;\n\n & > ${CalendarBtnStyleWrap} {\n font-size: ${getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeLarge')};\n padding: 2px 3px;\n position: relative;\n top: -3px;\n }\n & > ${IconStyleBase}, & > ${CalendarBtnStyleWrap} {\n cursor: pointer;\n border-radius: 3px;\n transition: all 0.3s;\n &:hover {\n background-color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorCalendarHover')};\n }\n &:active {\n background-color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorCalendarActive')};\n }\n }\n & > ${IconStyleBase}, & > ${CalendarBtnStyleWrap} {\n vertical-align: middle;\n margin-top: -6px;\n > svg {\n width: 18px;\n height: 18px;\n margin: 4px 0px 0px 4px;\n }\n &:last-child {\n transform: rotate(-90deg);\n }\n &:first-child {\n transform: rotate(90deg);\n }\n }\n `}\n`;\n\nexport const CalendarTitleWrap = styled.div`\n display: inline-block;\n user-select: none;\n`;\n\nexport const CalendarDayWrap = styled.div`\n padding-right: 5px;\n text-align: right;\n`;\n\nexport const CalendarInnerWrap = styled.div`\n text-align: right;\n padding: 5px;\n`;\n\nexport const CalendarPanelStyleWrap = styled.div<CalendarPanelStyleWrapProps>`\n ${(props) => css`\n width: 100%;\n height: 90px;\n line-height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightCalendarPanel')};\n overflow-y: auto;\n text-align: left;\n > * {\n overflow: hidden;\n white-space: nowrap;\n width: 100%;\n text-overflow: ellipsis;\n font-size: ${getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeSmall')};\n }\n `}\n`;\n\nexport const CalendarStyleWrap = styled.div<CalendarStyleWrapProps>`\n ${(props) => css`\n background: ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundCalendarDefault')};\n\n ${DatePickerStyleBodyWarp} {\n padding: 0 0 0 0;\n }\n ${DatePickerStyleWeekBase}:last-child > div {\n border-bottom: 0;\n }\n ${DatePickerStyleWeekBase} > div {\n display: inline-flex;\n border-radius: 0;\n border-right: 1px solid ${getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCalendarChildDiv')};\n border-bottom: 1px solid ${getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCalendarChildDiv')};\n &:last-child {\n border-right: 0;\n }\n > div {\n margin: 0;\n border-radius: 0;\n }\n }\n ${DatePickerStyleWeekDay} {\n > div {\n background-color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCalendarChildDiv')};\n height: 32px;\n line-height: 32px;\n }\n }\n `}\n`;\n","import React, { useMemo } from 'react';\nimport { CalendarProps } from './';\nimport { CalendarDayWrap, CalendarInnerWrap, CalendarPanelStyleWrap } from './style';\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 <CalendarInnerWrap className={`${prefixCls}-inner`}>\n <CalendarDayWrap className={`${prefixCls}-day`}>{day}</CalendarDayWrap>\n <CalendarPanelStyleWrap 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 </CalendarPanelStyleWrap>\n </CalendarInnerWrap>\n ),\n [dayData, day],\n );\n}\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { DatePickerDay, DatePickerDayProps, DatePickerDayDateSource } from '@uiw/react-date-picker';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { Down } from '@uiw/icons/lib/Down';\nimport formatter from '@uiw/formatter';\nimport { IProps } from '@uiw/utils';\nimport RenderDay from './DayLabel';\nimport {\n CalendarBtnGroupStyleWrap,\n CalendarBtnStyleWrap,\n CalendarStyleWrap,\n CalendarCaptionStyleWrap,\n CalendarTitleWrap,\n} from './style';\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 () => <CalendarTitleWrap className={`${prefixCls}-title`}>{formatter(titleFormat, panelDate)}</CalendarTitleWrap>,\n [prefixCls, titleFormat, panelDate],\n );\n\n const btngroup = useMemo(\n () => (\n <CalendarBtnGroupStyleWrap className={`${prefixCls}-btn-group`}>\n <IconStyleBase as={Down} onClick={() => handlePaging('prev')} style={{ width: 18 }} />\n <CalendarBtnStyleWrap className={`${prefixCls}-btn`} onClick={() => handlePaging('today')}>\n {todayLabel}\n </CalendarBtnStyleWrap>\n <IconStyleBase as={Down} onClick={() => handlePaging('next')} style={{ width: 18 }} />\n </CalendarBtnGroupStyleWrap>\n ),\n [prefixCls, todayLabel],\n );\n\n return (\n <CalendarStyleWrap className={cls} style={style}>\n <CalendarCaptionStyleWrap className={`${prefixCls}-caption`}>\n {titleLable}\n {btngroup}\n </CalendarCaptionStyleWrap>\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 </CalendarStyleWrap>\n );\n}\n","export const CardStyleTheme = {\n borderRadiusLarge: '5px',\n fontSizeDefault: '14px',\n lineHeightDefault: 1.5,\n borderColorBaseActive: 'rgba(0, 0, 0, 0.2)',\n borderColorBase: '#e9e9e9',\n backgroundColorBase: '#fff',\n\n heightCardStyleHead: '40px',\n paddingVerticalCardStyleHead: 0,\n paddingHorizontalCardStyleHead: '14px',\n borderRadius1CardStyleHead: '2px',\n borderRadius2CardStyleHead: '2px',\n borderRadius3CardStyleHead: 0,\n borderRadius4CardStyleHead: 0,\n\n colorBase: '#393e48',\n\n rightCardStyleHeadExtra: '16px',\n topCardStyleHeadExtra: 0,\n\n paddingCardBody: '14px',\n borderTopCardBody: '1px solid #e9e9e9',\n\n paddingVerticalCardStyleFooter: '8px',\n paddingHorizontalCardStyleFooter: '10px',\n borderTopCardStyleFooter: '1px solid #F2F2F2',\n colorCardStyleFooter: '#999999',\n};\n","import { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\nimport { CardStyleTheme } from './theme';\n\ntype ThemeVar = ThemeVariantValueOptions<typeof CardStyleTheme>;\nconst propsTheme = {\n defaultTheme: { ...CardStyleTheme },\n};\nexport interface CardStyleWarpProps extends ThemeVar {\n bordered?: boolean;\n noHover?: boolean;\n active?: boolean;\n}\nconst getHoverOrActive = (props: CardStyleWarpProps) => css`\n box-shadow: 0 1px 6px ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorBaseActive')};\n border-color: ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorBaseActive')};\n`;\n\nexport const getNoHover = (props: CardStyleWarpProps) => {\n if (!props.noHover) {\n return css`\n &:hover {\n ${() => getHoverOrActive(props)}\n }\n `;\n }\n return css``;\n};\n\nexport const getActive = (props: CardStyleWarpProps) => {\n if (props.active) {\n return css`\n ${getHoverOrActive(props)}\n `;\n }\n return ``;\n};\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { CardStyleWarpProps, getActive, getNoHover } from './utils';\nimport { CardStyleTheme } from './theme';\nexport { CardStyleTheme };\nconst propsTheme = {\n defaultTheme: { ...CardStyleTheme },\n};\ntype HTMLDivElements = React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;\ntype ThemeVar = ThemeVariantValueOptions<typeof CardStyleTheme>;\n\nexport type { CardStyleWarpProps };\nexport interface CardStyleHeadProps extends HTMLDivElements, ThemeVar {}\n\nexport const CardStyleHead = styled.div<CardStyleHeadProps>`\n height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'heightCardStyleHead')};\n line-height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'heightCardStyleHead')};\n padding: ${(props) => `\n ${getThemeVariantValue({ ...props, ...propsTheme }, 'paddingVerticalCardStyleHead')} ${getThemeVariantValue(\n { ...props, ...propsTheme },\n 'paddingHorizontalCardStyleHead',\n )}\n `};\n border-radius: ${(props) => `\n ${getThemeVariantValue({ ...props, ...propsTheme }, 'borderRadius1CardStyleHead')} ${getThemeVariantValue(\n props,\n 'borderRadius2CardStyleHead',\n )} ${getThemeVariantValue({ ...props, ...propsTheme }, 'borderRadius3CardStyleHead')} ${getThemeVariantValue(\n { ...props, ...propsTheme },\n 'borderRadius4CardStyleHead',\n )}\n `};\n zoom: 1;\n`;\nexport interface CardStyleHeadTitleProps extends HTMLDivElements, ThemeVar {}\nexport const CardStyleHeadTitle = styled.div<CardStyleHeadTitleProps>`\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n text-overflow: ellipsis;\n max-width: 100%;\n overflow: hidden;\n white-space: nowrap;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorBase')};\n font-weight: 500;\n display: inline-block;\n`;\nexport interface CardStyleHeadExtraProps extends HTMLDivElements, ThemeVar {}\nexport const CardStyleHeadExtra = styled.div<CardStyleHeadExtraProps>`\n position: absolute;\n right: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'rightCardStyleHeadExtra')};\n top: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'topCardStyleHeadExtra')};\n`;\nexport interface CardBodyProps extends HTMLDivElements, ThemeVar {}\nexport const CardBody = styled.div<CardBodyProps>`\n padding: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'paddingCardBody')};\n ${CardStyleHead} + & {\n border-top: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderTopCardBody')};\n }\n`;\nexport interface CardStyleFooterProps extends HTMLDivElements, ThemeVar {}\n\nexport const CardStyleFooter = styled.div<CardStyleFooterProps>`\n padding: ${(props) => `\n ${getThemeVariantValue({ ...props, ...propsTheme }, 'paddingVerticalCardStyleFooter')} ${getThemeVariantValue(\n props,\n 'paddingHorizontalCardStyleFooter',\n )} \n `};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorCardStyleFooter')};\n a {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorCardStyleFooter')};\n }\n ${CardBody} + & {\n border-top: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderTopCardStyleFooter')};\n }\n`;\n\nexport const CardStyleWarp = styled.div<CardStyleWarpProps>`\n background: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorBase')};\n border-radius: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderRadiusLarge')};\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n line-height: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightDefault')};\n position: relative;\n transition: all 0.3s;\n ${(props) =>\n props.bordered &&\n css`\n border: 1px solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorBase')};\n `}\n ${(props) => getNoHover(props)}\n ${(props) => getActive(props)}\n`;\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport {\n CardStyleWarp,\n CardStyleFooter,\n CardBody,\n CardStyleHead,\n CardStyleHeadTitle,\n CardStyleHeadExtra,\n} from './style';\nexport * from './style';\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 <CardStyleWarp\n {...resetProps}\n bordered={bordered}\n active={active}\n noHover={noHover}\n prefix={prefixCls}\n className={cls}\n ref={ref}\n >\n {(title || extra) && (\n <CardStyleHead className={`${prefixCls}-head`}>\n {title && <CardStyleHeadTitle className={`${prefixCls}-head-title`}>{title}</CardStyleHeadTitle>}\n {extra && <CardStyleHeadExtra className={`${prefixCls}-extra`}>{extra}</CardStyleHeadExtra>}\n </CardStyleHead>\n )}\n {children && (\n <CardBody className={[`${prefixCls}-body`, bodyClassName].filter(Boolean).join(' ').trim()} style={bodyStyle}>\n {children}\n </CardBody>\n )}\n {footer && <CardStyleFooter className={`${prefixCls}-footer`}>{footer}</CardStyleFooter>}\n </CardStyleWarp>\n );\n});\n","import styled from 'styled-components';\n\ntype HTMLDivElements = React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;\n\nexport interface CarouselStyleProps extends HTMLDivElements {}\nexport interface CarouselStyleWarpContentProps extends HTMLDivElements {}\n\nexport const CarouselStyleWarp = styled.div<CarouselStyleProps>`\n overflow: hidden;\n`;\n\nexport const CarouselStyleWarpContent = styled.div<CarouselStyleWarpContentProps>`\n min-height: 200px;\n transition: 0.6s ease-in-out;\n`;\n","import React, { useEffect, useMemo, useRef, useState } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { CarouselStyleWarp, CarouselStyleWarpContent } from './style';\nexport * from './style';\n\nexport interface CarouselProps extends IProps, HTMLDivProps {\n width?: number;\n height?: number;\n position?: number;\n palyTime?: number;\n scrollTime?: number;\n autoPlay?: boolean;\n direction?: 'horizontal' | 'vertical';\n afterChange?: (current: number) => void;\n beforeChange?: (current: number) => void;\n}\n\nexport interface CarouselRef {\n gotoSlide: (slide: number, dontAnimate?: boolean) => void;\n prevSlide: () => void;\n nextSlide: () => void;\n stopPlay: () => void;\n}\n\nfunction Carousel(props: CarouselProps, ref: React.ForwardedRef<CarouselRef>) {\n const {\n position = 0,\n direction = 'horizontal',\n width = 400,\n height = 200,\n palyTime = 2000,\n scrollTime = 200,\n autoPlay = true,\n afterChange,\n beforeChange,\n\n prefixCls = 'w-carousel',\n className,\n style,\n } = props;\n\n const cls = useMemo(() => [prefixCls, className].filter(Boolean).join(' ').trim(), [prefixCls, className]);\n\n const [currentPosition, currentPositionSet] = useState(position);\n const [transitionInner, transitionInnerSet] = useState(`${scrollTime * 0.001}s ease-in-out`);\n const positionRef = useRef(currentPosition);\n const childCount = React.Children.count(props.children) + 1;\n const stopPlay = useRef({ stop: () => {}, after: afterChange, before: beforeChange });\n\n React.useImperativeHandle(\n ref,\n () => ({\n gotoSlide,\n prevSlide: () => gotoSlide(positionRef.current - 1),\n nextSlide: () => gotoSlide(positionRef.current + 1),\n stopPlay: () => stopPlay.current.stop(),\n }),\n [ref],\n );\n\n const gotoSlide = (slidNumber: number) => {\n stopPlay.current.stop();\n const maxSlid = childCount - 1;\n let slidNumberTemp = slidNumber > maxSlid ? maxSlid : slidNumber;\n slidNumberTemp = slidNumber < 0 ? 0 : slidNumberTemp;\n positionRef.current = slidNumberTemp;\n currentPositionSet(slidNumberTemp);\n play();\n };\n\n const play = (ms: number = palyTime) => {\n if (autoPlay) {\n const time = setInterval(() => {\n stopPlay.current.after?.(positionRef.current);\n positionRef.current++;\n if (positionRef.current >= childCount) {\n positionRef.current = 0;\n }\n currentPositionSet(positionRef.current);\n stopPlay.current.before?.(positionRef.current);\n }, ms);\n stopPlay.current.stop = () => {\n clearInterval(time);\n };\n }\n };\n\n useEffect(() => {\n play();\n return () => {\n stopPlay.current.stop();\n };\n }, [autoPlay]);\n\n useEffect(() => {\n let time: NodeJS.Timeout;\n if (childCount === currentPosition + 1) {\n time = setTimeout(() => {\n stopPlay.current.before = () => {\n transitionInnerSet(`${scrollTime * 0.001}s ease-in-out`);\n stopPlay.current.before = props.beforeChange;\n };\n transitionInnerSet('none');\n gotoSlide(0);\n }, scrollTime);\n }\n return () => {\n clearTimeout(time);\n };\n }, [currentPosition]);\n\n const childrens = React.Children.map(props.children, (child) => {\n return <div style={{ width, height, ...style }}>{child}</div>;\n });\n\n const innerStyle = useMemo(() => {\n const style = { transform: '', display: '' };\n switch (direction) {\n case 'horizontal':\n style.transform = `translate3d(${-(currentPosition * width)}px, 0px, 0px)`;\n style.display = 'flex';\n break;\n case 'vertical':\n style.transform = `translate3d(0px, ${-(currentPosition * height)}px, 0px)`;\n style.display = 'block';\n break;\n default:\n break;\n }\n return style;\n }, [direction, currentPosition, width, height]);\n\n return (\n <CarouselStyleWarp className={cls} style={{ width, height }}>\n <CarouselStyleWarpContent\n className={`${cls}-content`}\n style={{ width: width * childCount, transition: transitionInner, ...innerStyle }}\n >\n {childrens}\n <div style={{ width, height, ...style }}>{childrens?.[0]}</div>\n </CarouselStyleWarpContent>\n </CarouselStyleWarp>\n );\n}\n\nexport default React.forwardRef<CarouselRef, CarouselProps>(Carousel);\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 styled, { css } from 'styled-components';\nimport { IconProps, IconStyleBase } from '@uiw/react-icon';\nimport OverlayTrigger, { OverlayTriggerProps } from '@uiw/react-overlay-trigger';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const MenuStyleTheme = {\n backgroundColorMenuBase: 'rgba(167, 182, 194, 0.3)',\n backgroundColorMenuActive: 'rgba(115, 134, 148, 0.3)',\n colorMenuStyleItemIconDisabled: 'rgba(92, 112, 128, 0.5)',\n colorMenuStyleItemIconDark: 'rgba(142, 142, 142, 0.79)',\n colorMenuStyleItemIconDarkActive: '#fff',\n\n colorMenuStyleBaseLight: '#182026',\n backgroundMenuStyleBaseLight: '#fff',\n boxShadowMenuStyleBaseBordered:\n ' 0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);',\n colorMenuStyleItemBaseLightHover: '#008ef0',\n colorMenuStyleItemBaseHover: '#fff',\n borderTopColorMenuDividerBase: 'rgba(16, 22, 26, 0.15)',\n colorMenuStyleBaseDark: 'rgba(255, 255, 255, 0.65)',\n backgroundColorMenuStyleBaseDark: '#343a40',\n borderTopColorMenuDividerBaseDark: 'rgba(255, 255, 255, 0.2)',\n};\n\ntype ThemeVar = ThemeVariantValueOptions<typeof MenuStyleTheme>;\n\nexport interface MenuDividerBaseProps\n extends React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement | ThemeVar>, HTMLLIElement> {}\n\nexport const MenuDividerBase = styled.li<MenuDividerBaseProps>``;\n\n// export interface MenuStyleItemBaseProps extends Omit<MenuItemProps<'a'>, 'theme'>, ThemeVar {\nexport interface MenuStyleItemBaseProps\n extends React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>,\n ThemeVar {\n params?: {\n theme?: 'dark' | 'light';\n active?: boolean;\n disabled?: boolean;\n };\n}\nexport const MenuStyleItemIcon = styled(IconStyleBase)<IconProps>``;\n\nexport interface MenuItemStyleTextBaseProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement | ThemeVar>, HTMLDivElement> {\n params?: {\n multiline?: boolean;\n isText?: boolean;\n };\n}\n\nexport const MenuItemStyleTextBase = styled.div<MenuItemStyleTextBaseProps>`\n ${(props) =>\n props.params?.isText &&\n css`\n flex-grow: 1;\n `}\n ${(props) =>\n !props.params?.multiline &&\n css`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n word-wrap: normal;\n `}\n`;\n\nexport const MenuStyleItemBase = styled.a<MenuStyleItemBaseProps>`\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n border-radius: 2px;\n padding: 5px 7px;\n text-decoration: none;\n line-height: 20px;\n color: inherit;\n user-select: none;\n transition: initial;\n transition: background-color 0.3s;\n ${(props) => {\n return (\n props.params?.active &&\n css`\n && {\n color: inherit;\n cursor: pointer;\n text-decoration: none;\n background-color: ${getThemeVariantValue(\n { ...props, defaultTheme: MenuStyleTheme },\n 'backgroundColorMenuBase',\n )};\n }\n `\n );\n }}\n &:hover {\n color: inherit;\n cursor: pointer;\n text-decoration: none;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: MenuStyleTheme }, 'backgroundColorMenuBase')};\n }\n &:active {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: MenuStyleTheme }, 'backgroundColorMenuActive')};\n }\n\n ${(props) =>\n props.params?.disabled &&\n css`\n & {\n outline: none !important;\n background-color: inherit !important;\n cursor: not-allowed !important;\n }\n &,\n & ${MenuStyleItemIcon} {\n color: ${getThemeVariantValue(\n { ...props, defaultTheme: MenuStyleTheme },\n 'colorMenuStyleItemIconDisabled',\n )} !important;\n }\n `}\n & > * {\n margin-right: 7px;\n }\n & > :last-child {\n margin-right: 0;\n }\n ${(props) =>\n props.params?.theme === 'dark' &&\n css`\n ${props.params?.active &&\n css`\n color: ${getThemeVariantValue(\n { ...props, defaultTheme: MenuStyleTheme },\n 'colorMenuStyleItemIconDarkActive',\n )} !important;\n `}\n ${props.params?.disabled &&\n css`\n &,\n & ${MenuStyleItemIcon} {\n color: ${getThemeVariantValue(\n { ...props, defaultTheme: MenuStyleTheme },\n 'colorMenuStyleItemIconDark',\n )} !important;\n }\n `}\n `}\n`;\n\nexport interface SubItemCollapseIconProps extends IconProps {\n params?: {\n prefixCls?: string;\n collapse?: boolean;\n isOpen?: boolean;\n };\n}\n\nexport const SubItemCollapseIcon = styled(IconStyleBase)<SubItemCollapseIconProps>`\n ${(props) =>\n props.params?.prefixCls &&\n css`\n transform: scale(0.79);\n `}\n ${(props) =>\n props.params?.prefixCls &&\n !props.params.collapse &&\n css`\n ${props.params.isOpen\n ? css`\n transition: rotate 0.3s all;\n transform: scale(0.79) rotate(-90deg);\n `\n : css`\n transition: rotate 0.3s all;\n transform: scale(0.79) rotate(90deg);\n `}\n `}\n`;\n\nexport interface MenuStyleSubOverlayTriggerBaseProps extends OverlayTriggerProps {\n params?: {\n collapse?: boolean;\n };\n}\n\nexport const MenuStyleSubOverlayTriggerBase = styled(OverlayTrigger)<MenuStyleSubOverlayTriggerBaseProps>`\n ${(props) =>\n (!props.params?.collapse &&\n css`\n & {\n transition: height 300ms;\n position: relative !important;\n top: initial !important;\n left: initial !important;\n right: initial !important;\n bottom: initial !important;\n width: auto !important;\n overflow: hidden !important;\n ul {\n min-width: 100%;\n padding-right: 0px !important;\n }\n }\n `) ||\n css`\n min-width: 180px;\n `}\n\n &.w-menu-subitem-enter,\n &.w-menu-subitem-enter-done,\n &.w-menu-subitem-exit {\n display: inherit;\n }\n`;\n\nexport interface MenuStyleBaseProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLUListElement>, HTMLUListElement>,\n ThemeVar {\n params?: {\n /** 主题颜色 */\n theme?: 'light' | 'dark';\n /**\n * 垂直是否收起菜单\n * Default: `false`\n */\n inlineCollapsed?: boolean;\n bordered?: boolean;\n };\n}\n\nexport const MenuStyleBase = styled.ul<MenuStyleBaseProps>`\n margin: 0 !important;\n padding: 5px;\n box-sizing: border-box;\n border-radius: 3px;\n min-width: 100%;\n width: 100%;\n text-align: left;\n font-size: 14px;\n transition: width 0.2s, min-width 0.2s, max-width 0.2s, height 0.2s, min-height 0.2s, max-height 0.2s;\n ${(props) => {\n const { params } = props;\n if (params?.theme) {\n return css`\n && {\n padding-left: 5px;\n }\n ${params.theme !== 'dark' &&\n css`\n & {\n color: ${getThemeVariantValue({ ...props, defaultTheme: MenuStyleTheme }, 'colorMenuStyleBaseLight')};\n background: ${getThemeVariantValue(\n { ...props, defaultTheme: MenuStyleTheme },\n 'backgroundMenuStyleBaseLight',\n )};\n }\n `}\n `;\n }\n return '';\n }}\n li {\n margin: 0 !important;\n list-style: none !important;\n position: relative;\n &:first-of-type {\n border-top: none;\n }\n a:not([href]) {\n color: inherit;\n }\n }\n ${(props) =>\n props.params?.bordered &&\n css`\n box-shadow: ${getThemeVariantValue({ ...props, defaultTheme: MenuStyleTheme }, 'boxShadowMenuStyleBaseBordered')};\n `} {\n }\n\n ${(props) =>\n props.params?.theme === 'light' &&\n css`\n & > li > ${MenuStyleItemBase}:hover {\n color: ${getThemeVariantValue({ ...props, defaultTheme: MenuStyleTheme }, 'colorMenuStyleItemBaseLightHover')};\n }\n `}\n\n ${(props) =>\n props.params?.inlineCollapsed &&\n css`\n & {\n width: 80px;\n min-width: 80px;\n > li > ${MenuStyleItemBase} {\n justify-content: center;\n padding-top: 10px;\n padding-bottom: 10px;\n font-size: 18px;\n &:hover {\n background-color: transparent;\n color: ${getThemeVariantValue({ ...props, defaultTheme: MenuStyleTheme }, 'colorMenuStyleItemBaseHover')};\n }\n > * {\n margin-right: 0;\n }\n }\n > li > ${MenuStyleItemBase} ${MenuItemStyleTextBase} {\n width: 0;\n flex-grow: 0;\n }\n > li > ${MenuStyleItemBase} ${SubItemCollapseIcon} {\n display: none;\n }\n }\n `}\n ${MenuDividerBase} {\n display: block;\n margin: 5px !important;\n border-top: 1px solid\n ${(props) => getThemeVariantValue({ ...props, defaultTheme: MenuStyleTheme }, 'borderTopColorMenuDividerBase')};\n > strong {\n display: block;\n line-height: 17px;\n }\n &:not(:first-of-type) {\n > strong {\n margin-top: 10px;\n }\n }\n }\n ${(props) =>\n props.params?.theme === 'dark' &&\n css`\n & {\n background: ${getThemeVariantValue(\n { ...props, defaultTheme: MenuStyleTheme },\n 'backgroundColorMenuStyleBaseDark',\n )};\n color: ${getThemeVariantValue({ ...props, defaultTheme: MenuStyleTheme }, 'colorMenuStyleBaseDark')};\n }\n ${props.params.bordered &&\n css`\n box-shadow: initial;\n `}\n ${MenuDividerBase} {\n border-top: 1px solid\n ${getThemeVariantValue({ ...props, defaultTheme: MenuStyleTheme }, 'borderTopColorMenuDividerBaseDark')};\n }\n `}\n`;\n","import React, { Fragment } from 'react';\nimport { IconProps } from '@uiw/react-icon';\nimport { IProps } from '@uiw/utils';\nimport { MenuStyleItemBase, MenuItemStyleTextBase, MenuStyleItemIcon } from './style';\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?: React.ReactNode;\n children?: React.ReactNode;\n theme?: 'light' | 'dark';\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 theme,\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 MenuStyleItemBase,\n {\n ...htmlProps,\n ...(disabled ? disabledProps : {}),\n className: anchorCls,\n ref,\n as: TagName,\n params: {\n theme,\n active,\n disabled,\n },\n } as any,\n <Fragment>\n {icon && <MenuStyleItemIcon className={`${prefixCls}-icon`}>{icon}</MenuStyleItemIcon>}\n <MenuItemStyleTextBase\n params={{ multiline, isText: !!prefixCls }}\n className={[prefixCls && `${prefixCls}-text`, !multiline && `${prefixCls}-multiline`]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {text}\n </MenuItemStyleTextBase>\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';\nimport { MenuDividerBase } from './style';\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 <MenuDividerBase {...htmlProps} ref={ref} className={cls} />;\n }\n return (\n <MenuDividerBase {...htmlProps} ref={ref} className={cls} data-menu=\"divider\">\n <strong>{title}</strong>\n </MenuDividerBase>\n );\n});\n\nMenuDivider.displayName = 'uiw.MenuDivider';\n","import { createContext, useContext } from 'react';\nimport { OverlayTriggerRef } from '@uiw/react-overlay-trigger';\n\nexport const MenuContext = createContext<{\n nodeDoms: OverlayTriggerRef[];\n onUpdateNode: Function;\n onUpdateSize: Function;\n}>({\n nodeDoms: [],\n onUpdateNode: () => {},\n onUpdateSize: () => {},\n});\n\nexport const useMenuContext = () => {\n const { nodeDoms } = useContext(MenuContext);\n\n const onUpdateNode = (node: OverlayTriggerRef) => {\n nodeDoms.push(node);\n };\n const onUpdateSize = () => {\n nodeDoms.forEach((node) => {\n if (node.overlayDom.current?.parentElement) {\n const height = node.overlayDom.current!.getBoundingClientRect().height + 'px';\n node.overlayDom.current.parentElement.style.height = height;\n }\n });\n };\n return { onUpdateNode, onUpdateSize, nodeDoms };\n};\n","import React, { useMemo, useState } from 'react';\nimport { CSSTransitionProps } from 'react-transition-group/CSSTransition';\nimport { OverlayTriggerProps, OverlayTriggerRef } from '@uiw/react-overlay-trigger';\nimport { IProps } from '@uiw/utils';\nimport { MenuItem, MenuItemProps, TagType } from './MenuItem';\nimport Menu, { MenuProps } from './Menu';\nimport { SubItemCollapseIcon, MenuStyleSubOverlayTriggerBase } from './style';\nimport { useMenuContext } from './hooks';\nimport { CaretRight } from '@uiw/icons/lib/CaretRight';\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 theme?: 'light' | 'dark';\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 <SubItemCollapseIcon\n params={{\n prefixCls,\n collapse,\n isOpen,\n }}\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 <CaretRight style={{ fill: 'currentColor' }} />\n </SubItemCollapseIcon>\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 theme,\n ...other\n } = props;\n const overlayTriggerProps = {} as OverlayTriggerProps & CSSTransitionProps;\n const menuProps: MenuProps = {\n bordered: true,\n children,\n inlineIndent,\n theme,\n className: [prefixCls ? `${prefixCls}-overlay` : null].filter(Boolean).join(' ').trim(),\n };\n const store = useMenuContext();\n const popupRef = React.useRef<OverlayTriggerRef>(null);\n const [isOpen, setIsOpen] = useState(!!overlayProps.isOpen);\n useMemo(() => {\n if (collapse) setIsOpen(false);\n }, [collapse]);\n\n React.useEffect(() => {\n if (store && store.onUpdateNode && popupRef.current) {\n store.onUpdateNode(popupRef.current);\n }\n }, []);\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 store.onUpdateSize();\n setIsOpen(false);\n }\n function onExiting(node: HTMLElement) {\n node.style.height = '0px';\n // store.onUpdateSize();\n }\n function onEnter(node: HTMLElement) {\n node.style.height = '1px';\n store.onUpdateSize();\n setIsOpen(true);\n }\n function onEntering(node: HTMLElement) {\n node.style.height = `${node.scrollHeight}px`;\n store.onUpdateSize();\n }\n function onEntered(node: HTMLElement) {\n store.onUpdateSize();\n // node.style.height = 'initial';\n // if (popupRef.current && popupRef.current.overlayDom) {\n // node.style.height = popupRef.current.overlayDom.current!.getBoundingClientRect().height + 'px';\n // }\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 <MenuStyleSubOverlayTriggerBase\n placement=\"rightTop\"\n autoAdjustOverflow\n disabled={disabled}\n isOpen={isOpen}\n usePortal={false}\n isOutside\n {...overlayTriggerProps}\n {...overlayProps}\n ref={popupRef}\n params={{\n collapse,\n }}\n overlay={<Menu {...menuProps} style={!collapse ? { paddingLeft: inlineIndent } : {}} />}\n >\n <MenuItem\n {...other}\n theme={theme}\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 </MenuStyleSubOverlayTriggerBase>\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 { MenuStyleBase } from './style';\nimport { useMenuContext, MenuContext } from './hooks';\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 = (props: MenuProps, ref?: React.ForwardedRef<HTMLUListElement>) => {\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 store = useMenuContext();\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 <MenuContext.Provider value={store}>\n <MenuStyleBase\n {...htmlProps}\n params={{\n bordered,\n inlineCollapsed,\n theme,\n }}\n ref={ref}\n className={cls}\n data-menu=\"menu\"\n >\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, theme }, child.props, { key: `${key}` }));\n })}\n </MenuStyleBase>\n </MenuContext.Provider>\n );\n};\n\nMenu.displayName = 'uiw.Menu';\nconst ContextMenu: ContextMenuComponent = React.forwardRef<HTMLUListElement>(Menu) as unknown as ContextMenuComponent;\n\ntype ContextMenuComponent = React.FC<React.PropsWithRef<MenuProps>> & {\n Item: typeof MenuItem;\n SubMenu: typeof SubMenu;\n Divider: typeof MenuDivider;\n};\n\nContextMenu.Item = MenuItem;\nContextMenu.SubMenu = SubMenu;\nContextMenu.Divider = MenuDivider;\n\nexport default ContextMenu;\n","import Menu from './Menu';\nexport * from './style';\nexport * from './Menu';\nexport * from './MenuItem';\nexport * from './SubMenu';\nexport * from './Divider';\n\nexport default Menu;\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { IconStyleBase, IconStyleBaseProps } from '@uiw/react-icon';\n\nexport const CascaderStyleTheme = {\n colorCascaderClose: '#393e48',\n};\nconst propsTheme = {\n defaultTheme: { ...CascaderStyleTheme },\n};\nexport interface CascaderStyleIconWarpProps\n extends IconStyleBaseProps,\n ThemeVariantValueOptions<typeof CascaderStyleTheme> {\n closebtn?: boolean;\n}\n\nexport const CascaderStyleIconWarp = styled(IconStyleBase)<CascaderStyleIconWarpProps>`\n ${(props) =>\n props.closebtn &&\n css`\n & {\n font-size: 15px;\n margin-right: 1px;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorCascaderClose')};\n }\n `}\n`;\n","import React, { useState, useEffect, useMemo } from 'react';\nimport Input from '@uiw/react-input';\nimport { HTMLInputProps, IProps } from '@uiw/utils';\nimport Dropdown, { DropdownProps } from '@uiw/react-dropdown';\nimport Menu from '@uiw/react-menu';\nimport Icon from '@uiw/react-icon';\nimport { CascaderStyleIconWarp } from './style';\nimport { Close } from '@uiw/icons/lib/Close';\nexport * from './style';\n\ntype ValueType = Array<string | number>;\ntype OptionType = { value: string | number; label: React.ReactNode; children?: Array<OptionType> };\ntype SearchOptionType = { label: string; options: Array<OptionType> };\n\nexport interface CascaderProps extends IProps, DropdownProps {\n size?: 'large' | 'default' | 'small';\n option?: Array<OptionType>;\n value?: ValueType;\n onChange?: (isSeleted: boolean, value: ValueType, selectedOptions: Array<OptionType>) => void;\n onSearch?: boolean | ((searchText: string) => void);\n allowClear?: boolean;\n placeholder?: string;\n disabled?: boolean;\n inputProps?: HTMLInputProps;\n expandTrigger: 'click' | 'hover';\n}\n\nfunction Cascader(props: CascaderProps) {\n const {\n value,\n onChange,\n onSearch,\n expandTrigger = 'click',\n size,\n disabled,\n allowClear,\n placeholder,\n prefixCls = 'w-cascader',\n className,\n style = { width: 200 },\n option = [],\n others,\n inputProps,\n } = props;\n\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n const [innerIsOpen, setInnerIsOpen] = useState(false);\n const [selectedValue, setSelectedValue] = useState<Array<OptionType>>([]);\n const [selectIconType, setSelectIconType] = useState('');\n const [searchText, setSearchText] = useState<string>('');\n const [searchOn, setSearchOn] = useState(false);\n const [inputValue, setInputValue] = useState('');\n const [searchOption, setSearchOption] = useState<Array<SearchOptionType>>();\n\n useEffect(() => {\n if (onSearch) {\n const tempOptions: Array<SearchOptionType> = [];\n iteratorOption(option, (opt) => {\n const label = opt.map((m) => m.label).join(' / ');\n tempOptions.push({ label, options: opt });\n });\n setSearchOption(tempOptions);\n }\n }, [onSearch]);\n\n const iteratorOption = (\n options: Array<OptionType>,\n cb: (opt: Array<OptionType>) => void,\n opts: Array<OptionType> = [],\n ) => {\n options.map((opt) => {\n const optsTemp = [...opts, opt];\n if (opt.children) {\n iteratorOption(opt.children, cb, optsTemp);\n } else {\n cb?.(optsTemp);\n }\n });\n };\n\n useEffect(() => {\n if (value) {\n const valueTemp: Array<OptionType> = [];\n let optChildren = option;\n value?.map((item) => {\n const findOpt = optChildren.find((opt) => opt.value === item);\n optChildren = findOpt?.children || [];\n valueTemp.push({ label: item, value: item, ...findOpt });\n });\n setSelectedValue(valueTemp);\n }\n }, [value]);\n\n function onVisibleChange(isOpen: boolean) {\n setInnerIsOpen(isOpen);\n }\n\n function renderSelectIcon(type: string) {\n let selectIconType;\n if (type === 'enter' && allowClear && selectedValue.length > 0) {\n selectIconType = 'close';\n } else {\n selectIconType = '';\n }\n setSelectIconType(selectIconType);\n }\n\n const searchItemClick = (options: Array<OptionType>) => {\n setSearchText('');\n setInnerIsOpen(false);\n handelChange(false, options);\n };\n\n const handleItemClick = (optionsItem: OptionType, level: number) => {\n selectedValue.splice(level, selectedValue.length - level, optionsItem);\n if (!optionsItem.children) setInnerIsOpen(false);\n\n handelChange(true, selectedValue);\n };\n\n const handelChange = (isSeleted: boolean, selectedValue: Array<OptionType>) => {\n setSelectedValue([...selectedValue]);\n const value = selectedValue.map((item) => item.value);\n onChange?.(isSeleted, value, selectedValue);\n };\n\n const onClear = (e: React.MouseEvent<any, MouseEvent>) => {\n e.stopPropagation();\n handelChange(false, []);\n };\n\n const handelSearch = (searchText: string) => {\n setSearchText(searchText);\n };\n\n const inputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (!innerIsOpen) {\n setInnerIsOpen(!innerIsOpen);\n }\n const value = e.target.value;\n onSearch && handelSearch(value);\n };\n\n const widths = (style?.width as number) * 0.7 || undefined;\n\n const trigger = useMemo(() => {\n return (cb: Function, click?: boolean) => {\n const triggers: Record<'onClick' | 'onMouseOver', () => void> = { onClick: () => {}, onMouseOver: () => {} };\n const callback = () => {\n cb();\n };\n if (expandTrigger === 'click' || click) {\n triggers.onClick = callback;\n } else if (expandTrigger === 'hover') {\n triggers.onMouseOver = callback;\n }\n return triggers;\n };\n }, []);\n\n const OptionIter = (option: Array<OptionType>, level: number = 0) => {\n if (!option) return;\n\n return (\n <Menu\n key={level}\n bordered\n style={{\n minHeight: 25,\n minWidth: widths,\n overflowY: 'scroll',\n width: widths,\n }}\n >\n {!option || option.length === 0 ? (\n <div style={{ color: '#c7c7c7', fontSize: 12 }}>{'没有数据'}</div>\n ) : (\n option.map((opt, index) => {\n const active = selectedValue[level]?.value === opt.value;\n return (\n <Menu.Item\n active={active}\n key={index}\n text={opt.label}\n addonAfter={opt.children ? <Icon type=\"right\" /> : undefined}\n {...trigger(() => {\n handleItemClick(opt, level);\n }, !opt.children?.length)}\n />\n );\n })\n )}\n </Menu>\n ) as JSX.Element;\n };\n\n useEffect(() => {\n const inputValue = selectedValue.map((opt) => opt.label).join(' / ');\n setInputValue(inputValue);\n }, [selectedValue]);\n\n return (\n <Dropdown\n className={cls}\n trigger=\"click\"\n style={{ marginTop: 5 }}\n overlayStyl={{ width: 100 }}\n disabled={disabled}\n {...others}\n onVisibleChange={onVisibleChange}\n isOpen={innerIsOpen}\n menu={\n !searchText ? (\n <div style={{ display: 'flex' }}>\n {new Array(selectedValue.length + 1)\n .fill(0)\n .map((_, index) => {\n const options = index ? selectedValue[index - 1]?.children! : option;\n return OptionIter(options, index);\n })\n .filter((m) => !!m)}\n </div>\n ) : (\n <Menu\n bordered\n style={{\n minHeight: 25,\n minWidth: style?.width,\n overflowY: 'scroll',\n width: style?.width,\n }}\n >\n {!searchOption || searchOption.length === 0 ? (\n <div style={{ color: '#c7c7c7', fontSize: 12 }}>{'没有数据'}</div>\n ) : (\n searchOption\n .filter((opt) => opt.label.includes(searchText.trim()))\n .map((opt, index) => {\n return <Menu.Item key={index} text={opt.label} onClick={() => searchItemClick(opt.options)} />;\n })\n )}\n </Menu>\n )\n }\n >\n <span onMouseLeave={() => renderSelectIcon('leave')} onMouseOver={() => renderSelectIcon('enter')}>\n <Input\n {...inputProps}\n value={searchOn ? searchText : inputValue}\n onChange={inputChange}\n size={size}\n disabled={disabled}\n placeholder={searchOn ? inputValue : placeholder}\n style={style}\n onFocus={() => onSearch && setSearchOn(true)}\n onBlur={() => onSearch && setSearchOn(false)}\n readOnly={!onSearch}\n addonAfter={\n <span style={{ width: 'auto' }}>\n {!disabled && selectIconType === 'close' && (\n <CascaderStyleIconWarp closebtn className={`${prefixCls}-close`} onClick={onClear}>\n <Close />\n </CascaderStyleIconWarp>\n )}\n </span>\n }\n />\n </span>\n </Dropdown>\n );\n}\n\nexport default Cascader;\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue, IProps, HTMLInputProps, HTMLDivProps } from '@uiw/utils';\n\nexport const RadioStyleTheme = {\n backgroundColorBase: '#fff',\n fontSizeSamll: '12px',\n colorRadioDefault: '#c7c7c7',\n colorNotCheckedNotDisabledDefault: '#cecece',\n widthRadioDefault: '16px',\n heightRadioDefault: '16px',\n borderRadioDefault: '1.2px solid #d7d7d7',\n borderRadioCheckedDefault: '5px solid #008ef0',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof RadioStyleTheme>;\n\nexport interface RadioBaseProps extends ThemeVar, IProps, Omit<HTMLInputProps, 'size'> {\n size?: 'large' | 'default' | 'small';\n checked: boolean;\n disabled: boolean;\n}\n\nexport const RadioInputStyleBase = styled.input``;\n\nconst RadioText = styled.div<HTMLDivProps>`\n vertical-align: middle;\n display: inline-block;\n margin-left: 4px;\n margin-right: 5px;\n font-size: 14px;\n`;\n\nconst RadioBase = styled.label<RadioBaseProps>`\n ${(props) => {\n const disabled = props?.disabled;\n return css`\n color: ${disabled && getThemeVariantValue({ ...props, defaultTheme: RadioStyleTheme }, 'colorRadioDefault')};\n cursor: ${disabled && 'not-allowed'};\n vertical-align: middle;\n display: inline-block;\n font-size: ${getThemeVariantValue({ ...props, defaultTheme: RadioStyleTheme }, 'fontSizeSamll')};\n input[type='radio'] {\n outline: none;\n position: relative;\n width: ${getThemeVariantValue({ ...props, defaultTheme: RadioStyleTheme }, 'widthRadioDefault')};\n height: ${getThemeVariantValue({ ...props, defaultTheme: RadioStyleTheme }, 'heightRadioDefault')};\n background-clip: border-box;\n appearance: none;\n margin-top: -1.5px;\n margin-right: 1px;\n border-radius: 50%;\n background-color: ${getThemeVariantValue({ ...props, defaultTheme: RadioStyleTheme }, 'backgroundColorBase')};\n border: ${getThemeVariantValue({ ...props, defaultTheme: RadioStyleTheme }, 'borderRadioDefault')};\n transition: border 0.25s, box-shadow 0.25s;\n vertical-align: middle;\n cursor: ${disabled && 'not-allowed'};\n &:not(:checked):not(:disabled):not(.disabled) {\n background-color: ${disabled &&\n getThemeVariantValue({ ...props, defaultTheme: RadioStyleTheme }, 'colorNotCheckedNotDisabledDefault')};\n &:hover,\n &:focus {\n box-shadow: 0 0 0 2px rgba(0, 142, 240, 0.25);\n }\n }\n &:checked {\n border: ${getThemeVariantValue({ ...props, defaultTheme: RadioStyleTheme }, 'borderRadioCheckedDefault')};\n &:focus {\n box-shadow: 0 0 0 2px rgba(0, 142, 240, 0.25);\n }\n border-color: ${disabled &&\n getThemeVariantValue({ ...props, defaultTheme: RadioStyleTheme }, 'colorNotCheckedNotDisabledDefault')};\n }\n }\n `;\n }}\n`;\nconst RadioGroupBase = styled.div`\n font-size: 0;\n`;\n\nexport { RadioText, RadioBase, RadioGroupBase };\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLInputProps } from '@uiw/utils';\nimport { RadioText, RadioBase, RadioInputStyleBase } from './style';\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\n return (\n <RadioBase {...{ className: cls, style, disabled, size, checked, label }}>\n <RadioInputStyleBase {...{ ...other, type, disabled, value, checked }} onChange={handleChange} ref={ref} />\n {label && <RadioText>{label}</RadioText>}\n </RadioBase>\n );\n});\n","import React from 'react';\nimport { RadioAbstract, RadioAbstractProps } from './RadioAbstract';\n\nexport interface RadioProps extends RadioAbstractProps {}\n\nexport const Radio = React.forwardRef<HTMLInputElement, RadioProps>((props, ref) => {\n return <RadioAbstract ref={ref} {...props} />;\n});\nexport default Radio;\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { RadioProps } from './Radio';\nimport ButtonGroup from '@uiw/react-button-group';\nimport { RadioGroupBase } from './style';\n\nexport interface RadioGroupProps extends IProps, HTMLDivProps {\n name?: RadioProps['name'];\n value?: RadioProps['value'];\n onChange?: RadioProps['onChange'];\n}\n\nexport const RadioGroup = React.forwardRef<HTMLDivElement, RadioGroupProps>((props, ref) => {\n const { prefixCls = 'w-radio-group', className, name, value, onChange, children, ...other } = props;\n return (\n <RadioGroupBase {...other} ref={ref} className={[prefixCls, className].filter(Boolean).join(' ').trim()}>\n <ButtonGroup>\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 </ButtonGroup>\n </RadioGroupBase>\n );\n});\nexport default RadioGroup;\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLButtonProps } from '@uiw/utils';\nimport Button from '@uiw/react-button';\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 RadioButtonProps extends IProps, Omit<HTMLButtonProps, 'size'> {\n size?: 'large' | 'default' | 'small';\n checked?: boolean;\n disabled?: boolean;\n onChange?: (even: any) => void;\n}\n\nexport const RadioButton = React.forwardRef<any, RadioButtonProps>((props, ref) => {\n const {\n prefixCls = 'w-radio',\n type = 'button',\n disabled = false,\n value = '',\n className,\n style,\n children,\n size = 'small',\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.MouseEvent<HTMLButtonElement, MouseEvent> & MouseEvent) {\n e.persist();\n if (!checked) {\n setChecked(!checked);\n onChange && onChange(value);\n }\n }\n\n const label = children || value;\n\n return (\n <Button\n {...{ ...other, className: cls, style, disabled, value }}\n type={checked ? 'primary' : 'light'}\n ref={ref}\n onClick={handleChange}\n >\n {label}\n </Button>\n );\n});\n\nexport default RadioButton;\n","import styled, { css } from 'styled-components';\nimport { RadioAbstractProps, RadioText } from '@uiw/react-radio';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const CheckboxStyleTheme = {\n boxShadowCheckboxChecked: 'inset 0 0 0 1px rgb(0, 142, 240)',\n backgroundColorCheckboxChecked: '#008df8',\n backgroundColorCheckboxBase: '#d7d7d7',\n colorCheckboxDisabled: '#6e6e6e',\n borderColorCheckboxChecked: '#fff',\n boxShadowCheckboxHover: 'inset 0 1px 2px rgba(16, 22, 26, 0.35)',\n};\nconst propsTheme = {\n defaultTheme: { ...CheckboxStyleTheme },\n};\nexport interface CheckboxStyleBaseProps\n extends RadioAbstractProps,\n ThemeVariantValueOptions<typeof CheckboxStyleTheme> {\n disabled?: boolean;\n indeterminate?: boolean;\n}\n\nconst disabledCss = ({ disabled, ...rest }: CheckboxStyleBaseProps) => {\n return (\n disabled &&\n css`\n input[type='checkbox'] {\n cursor: not-allowed;\n opacity: 0.5;\n }\n ${RadioText} {\n color: ${() => getThemeVariantValue({ ...rest }, 'colorCheckboxDisabled')};\n }\n `\n );\n};\n\nconst indeterminateCss = ({ indeterminate, ...rest }: CheckboxStyleBaseProps) => {\n return (\n indeterminate &&\n css`\n input[type='checkbox']:checked {\n background-color: transparent;\n box-shadow: ${() => getThemeVariantValue({ ...rest }, 'boxShadowCheckboxChecked')};\n &:after {\n display: inline-block;\n background-color: ${() => getThemeVariantValue({ ...rest }, 'backgroundColorCheckboxChecked')};\n box-sizing: inherit;\n transform: rotate(0);\n position: relative;\n top: -1px;\n right: -3px;\n border-width: 0;\n border-radius: 2px;\n height: 8px;\n width: 8px;\n }\n }\n `\n );\n};\n\nconst CheckGroupStyleBase = styled.div<CheckboxStyleBaseProps>`\n vertical-align: middle;\n font-size: 0;\n cursor: pointer;\n white-space: nowrap;\n`;\n\nconst CheckboxStyleBase = styled.div<CheckboxStyleBaseProps>`\n display: inline-block;\n input[type='checkbox'] {\n vertical-align: middle;\n outline: none;\n width: 14px;\n height: 14px;\n font-size: 14px;\n line-height: 14px;\n border-radius: 2px;\n background-clip: border-box;\n appearance: none;\n margin: 0 !important;\n background-color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorCheckboxBase')};\n transition: background-color 0.3s, box-shadow 0.3s;\n &:after {\n content: '';\n box-sizing: inherit;\n }\n &:not(:checked):not(:disabled):not(.disabled) {\n &:focus,\n &:hover {\n box-shadow: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowCheckboxHover')};\n }\n }\n }\n ${disabledCss}\n ${indeterminateCss}\n input[type='checkbox']:checked {\n background-color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorCheckboxChecked')};\n &:after {\n transition: background-color 0.2s ease-in;\n display: inline-block;\n border: solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCheckboxChecked')};\n border-width: 0 2px 2px 0;\n transform: rotate(33deg);\n position: relative;\n top: -1px;\n right: -4px;\n height: 10px;\n width: 6px;\n }\n }\n ${RadioText} {\n display: inline-block;\n padding-left: 4px;\n margin-right: 5px;\n font-size: 14px;\n }\n`;\n\nexport { CheckGroupStyleBase, CheckboxStyleBase };\n","import React, { useMemo, useRef } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { CheckGroupStyleBase } from './style';\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 <CheckGroupStyleBase {...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 </CheckGroupStyleBase>\n );\n});\n","import React from 'react';\nimport { RadioAbstract, RadioAbstractProps } from '@uiw/react-radio';\nimport { CheckboxGroup } from './Group';\nimport { CheckboxStyleBase } from './style';\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 <CheckboxStyleBase\n as={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 * from './style';\n\nexport default Checkbox;\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { IconStyleBase } from '@uiw/react-icon';\n\nexport const CollapseStyleTheme = {\n fontSizeDefault: '14px',\n backgroundColorBase: '#fff',\n borderColorCollapseBase: '#d9d9d9',\n colorCollapsePanelBase: 'rgba(0, 0, 0, 0.65)',\n\n colorCollapseStyleHeaderBase: 'rgba(0, 0, 0, 0.85)',\n backgroundColorCollapseStyleHeaderBase: '#fafafa',\n colorCollapseStyleHeaderDisabled: 'rgba(0, 0, 0, 0.25)',\n backgroundColorCollapseStyleHeaderDisabled: '#f7f7f7',\n};\nconst propsTheme = {\n defaultTheme: { ...CollapseStyleTheme },\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof CollapseStyleTheme>;\ntype HTMLDivElements = React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;\n\ninterface CollapseStyleWarpProps extends ThemeVar, HTMLDivElements {\n bordered?: boolean;\n}\n\ninterface CollapseStyleItemWarpProps extends ThemeVar, HTMLDivElements {\n isActive?: boolean;\n}\n\ninterface CollapseStyleItemPanelProps extends ThemeVar, HTMLDivElements {\n in?: boolean;\n prefixCls?: string;\n bordered?: boolean;\n}\n\ninterface CollapseStyleHeaderProps extends ThemeVar, HTMLDivElements {\n isActive?: boolean;\n disabled?: boolean;\n}\n\ninterface CollapseStyleHeaderTitleProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement> {}\n\nexport const CollapseStyleWarp = styled.div<CollapseStyleWarpProps>`\n border-radius: 4px;\n line-height: 16px;\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n background-color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorBase')};\n border: 1px solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCollapseBase')};\n overflow: hidden;\n\n ${(props) =>\n props.bordered &&\n css`\n border: 0;\n background-color: transparent;\n &:after,\n &:before {\n border: 0;\n }\n `}\n`;\n\nexport const CollapseStyleItem = styled.div<CollapseStyleItemWarpProps>`\n &:last-child {\n border-radius: 0 0 5px 5px;\n border-bottom: 0 solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCollapseBase')};\n ${(props) =>\n !props.isActive &&\n css`\n border-top: 0 solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCollapseBase')};\n `}\n }\n`;\n\nexport const CollapseStyleHeader = styled.div<CollapseStyleHeaderProps>`\n border-radius: 0 0 5px 5px;\n padding: 8px 10px;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorCollapseStyleHeaderBase')};\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorCollapseStyleHeaderBase')};\n cursor: pointer;\n position: relative;\n transition: all 0.3s;\n z-index: 1;\n display: flex;\n & > ${IconStyleBase}:first-child {\n margin-top: -2px;\n margin-right: 5px;\n transform: scale(0.85) rotate(-90deg);\n transition: transform 0.24s;\n svg {\n display: block;\n }\n }\n & > * {\n vertical-align: middle;\n display: inline-block;\n }\n\n ${(props) =>\n props.isActive &&\n css`\n & > ${IconStyleBase}:first-child {\n transform: scale(0.85) rotate(0);\n }\n `}\n\n ${(props) =>\n props.disabled &&\n css`\n cursor: not-allowed;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorCollapseStyleHeaderDisabled')};\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorCollapseStyleHeaderDisabled')};\n `}\n`;\n\nexport const CollapseStyleItemPanel = styled.div<CollapseStyleItemPanelProps>`\n overflow: hidden;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorCollapsePanelBase')};\n padding: 0 10px;\n &:before,\n &:after {\n content: '';\n height: 10px;\n display: block;\n overflow: hidden;\n border: 0;\n }\n &:before {\n border-top: 1px solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCollapseBase')};\n margin: 0 -10px;\n z-index: 1;\n position: relative;\n\n &:last-child {\n border-top: 0 solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCollapseBase')};\n }\n }\n\n &:after {\n border-bottom: 1px solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorCollapseBase')};\n margin: 0 -10px;\n z-index: 1;\n position: relative;\n }\n\n ${(props) =>\n props.bordered &&\n css`\n border: 0;\n &:after,\n &:before {\n border: 0;\n }\n `}\n &:last-child {\n border: 0;\n }\n`;\n\nexport const CollapseStyleHeaderTitle = styled.span<CollapseStyleHeaderTitleProps>`\n flex: 1;\n`;\n\nexport const CollapseStyleHeaderExtra = styled.div``;\n\nexport default CollapseStyleWarp;\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Panel from './Panel';\nimport CollapseStyleWarp from './style';\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 <CollapseStyleWarp className={cls} {...resetProps} ref={ref} bordered={bordered}>\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 bordered,\n showArrow,\n onItemClick: disabled ? () => {} : () => onItemClick(key),\n ...child.props,\n };\n return React.cloneElement(child, childProps);\n })}\n </CollapseStyleWarp>\n );\n}\n\nconst Collapse: CollapseComponent = React.forwardRef<HTMLDivElement>(InternalCollapse) as unknown as CollapseComponent;\ntype CollapseComponent = React.FC<React.PropsWithRef<CollapseProps>> & {\n Panel: typeof Panel;\n};\n\nCollapse.displayName = 'Collapse';\nCollapse.Panel = Panel;\n\nexport default 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';\nimport {\n CollapseStyleHeader,\n CollapseStyleHeaderExtra,\n CollapseStyleHeaderTitle,\n CollapseStyleItem,\n CollapseStyleItemPanel,\n} from './style';\n\nexport interface CollapsePanelProps extends IProps, HTMLDivProps {\n disabled?: boolean;\n bordered?: 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 bordered,\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\n return (\n <CollapseStyleItem {...resetProps} className={cls}>\n <CollapseStyleHeader\n className={`${prefixCls}-header`}\n isActive={isActive}\n disabled={disabled}\n onClick={onItemClick}\n >\n {showArrow && iconRender}\n <CollapseStyleHeaderTitle className={`${prefixCls}-title`}>{header}</CollapseStyleHeaderTitle>\n {extra && <CollapseStyleHeaderExtra className={`${prefixCls}-extra`}>{extra}</CollapseStyleHeaderExtra>}\n </CollapseStyleHeader>\n <CollapseStyleItemPanel\n as={CSSTransition}\n bordered={bordered}\n in={isActive}\n unmountOnExit={false}\n timeout={300}\n classNames={`${prefixCls}-panel`}\n >\n {(status: TransitionStatus) =>\n React.cloneElement(\n <CollapseStyleItemPanel in={isActive} bordered={bordered}>\n {children}\n </CollapseStyleItemPanel>,\n {\n className: `${prefixCls}-panel`,\n style: childStyle(children as React.ReactElement),\n ref: (e: any) => getInstance(status, e),\n },\n )\n }\n </CollapseStyleItemPanel>\n </CollapseStyleItem>\n );\n}\n","import Collapse from './Collapse';\nexport * from './style';\nexport * from './Collapse';\nexport * from './Panel';\nexport * from './style';\nexport default Collapse;\n","import React from 'react';\nimport copy from '@uiw/copy-to-clipboard';\nimport { IProps, HTMLSpanProps } from '@uiw/utils';\nimport styled from 'styled-components';\n\nexport const CopyToClipbordSelect = styled.span`\n user-select: text;\n display: none;\n`;\n\nexport const CopyToClipbordWarp = styled.span`\n cursor: pointer;\n`;\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 <CopyToClipbordWarp {...otherProps}>\n <CopyToClipbordSelect className={`${prefixCls}-select`}>{text}</CopyToClipbordSelect>\n {children}\n </CopyToClipbordWarp>\n );\n}\n","import { getThemeVariantValue, HTMLDivProps, ThemeVariantValueOptions } from '@uiw/utils';\nimport styled, { css } from 'styled-components';\nimport { DatePickerProps } from '@uiw/react-date-picker';\nimport { InputProps, InputStyleBase } from '@uiw/react-input';\nimport { IconStyleBase, IconStyleBaseProps } from '@uiw/react-icon';\n\nexport const DateInputStyleTheme = {\n fillDateInputCloseBase: '#a5a5a5',\n fillDateInputCloseHover: '#393e48',\n\n borderRadiusDefault: '3px',\n colorDateInputStyleBase: '#393e48',\n backgroundColorBase: '#fff',\n backgroundColorDateInputDisabled: '#dddddd',\n colorDateInputDisabled: '#a5a5a5',\n boxShadowDateInputBase:\n '0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15),inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n boxShadowDateInputFocus: '0 0 0 1px #393e48, 0 0 0 3px rgba(57, 62, 72, 0.17), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n boxShadowDateInputHover: '0 0 0 1px #6e6e6e, 0 0 0 3px rgba(57, 62, 72, 0), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n boxShadowDateInputFocusHover:\n ' 0 0 0 1px #6e6e6e, 0 0 0 3px rgba(57, 62, 72, 0.17), inset 0 1px 1px rgba(16, 22, 26, 0.2);',\n};\n\nconst propsTheme = {\n defaultTheme: { ...DateInputStyleTheme },\n};\n\nexport interface DateInputDatePickerPopoverProps extends DatePickerProps {}\nexport const DateInputStyleDatePickerPopover = styled.div<DateInputDatePickerPopoverProps>`\n box-shadow: 0 0 0 0;\n`;\n\nexport interface DateInputStyleBaseProps extends InputProps {}\nexport const DateInputStyleBase = styled.input<DateInputStyleBaseProps>`\n display: inline-block;\n ${(props) =>\n props.disabled &&\n css`\n &::before {\n cursor: not-allowed;\n content: ' ';\n display: block;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1;\n }\n `}\n`;\n\nexport interface DateInputIconStyleWarpProps\n extends IconStyleBaseProps,\n ThemeVariantValueOptions<typeof DateInputStyleTheme> {\n closebtn?: boolean;\n}\n\nexport const DateInputIconStyleWarp = styled(IconStyleBase)<DateInputIconStyleWarpProps>`\n ${(props) =>\n props.closebtn &&\n css`\n & {\n display: flex;\n margin: 0 3px;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fillDateInputCloseBase')};\n cursor: pointer;\n &:hover {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fillDateInputCloseHover')};\n }\n }\n `}\n`;\n\nexport interface DateTimeInputProps extends HTMLDivProps, ThemeVariantValueOptions<typeof DateInputStyleTheme> {}\n\nexport const DateInputRangeStyleWarp = styled.div<DateTimeInputProps>`\n display: flex;\n justify-content: space-between;\n\n input {\n box-shadow: none;\n padding: 0px;\n height: 20px;\n }\n\n ${InputStyleBase} {\n &:hover {\n box-shadow: none !important;\n }\n\n &:focus {\n box-shadow: none !important;\n }\n }\n\n outline: none;\n border: none;\n align-items: center;\n border-radius: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderRadiusDefault')};\n box-shadow: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowDateInputBase')};\n box-sizing: border-box;\n background: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorBase')};\n min-height: 30px;\n margin: 0 !important;\n padding: 3px 10px 3px 10px;\n vertical-align: middle;\n line-height: 30px;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDateInputStyleBase')};\n font-weight: 400;\n font-size: inherit;\n transition: box-shadow 0.3s cubic-bezier(0.4, 1, 0.75, 0.9);\n appearance: none;\n\n &:focus {\n box-shadow: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowDateInputFocus')};\n }\n\n &:hover {\n box-shadow: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowDateInputHover')};\n }\n\n &:focus&:hover {\n box-shadow: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowDateInputFocusHover')};\n }\n\n &:disabled {\n box-shadow: none;\n background: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDateInputDisabled')};\n opacity: 0.75;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDateInputDisabled')};\n cursor: not-allowed;\n resize: none;\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 { IProps } from '@uiw/utils';\nimport formatter from '@uiw/formatter';\nimport { DateInputIconStyleWarp, DateInputRangeStyleWarp, DateInputStyleDatePickerPopover } from './style/index';\nimport { SwapRight } from '@uiw/icons/lib/SwapRight';\nimport { Close } from '@uiw/icons/lib/Close';\n\nexport interface DateInputRangeProps<V> extends IProps, Omit<InputProps, 'onChange' | 'value'> {\n popoverProps?: PopoverProps;\n datePickerProps?: DatePickerProps;\n value?: Array<V>;\n format?: string;\n allowClear?: boolean;\n bodyStyle?: object;\n onChange?: (selectedDate?: Date, dateRange?: Array<Date | undefined>) => void;\n}\n\nexport function DateInputRange<V extends string | Date>(props: DateInputRangeProps<V>) {\n const {\n prefixCls = 'w-dateinputrange',\n bodyStyle = undefined,\n className,\n popoverProps,\n datePickerProps,\n allowClear = true,\n format = 'YYYY/MM/DD',\n onChange,\n value,\n ...inputProps\n } = props;\n\n const [dateRange, setDateRange] = useState<Array<Date | undefined>>([]);\n useEffect(() => {\n let valueTemp: Array<Date> = [];\n const propsValue = value;\n if (Array.isArray(propsValue) && !!propsValue?.length) {\n propsValue.forEach((date, index) => {\n valueTemp[index] = typeof propsValue[index] === 'string' ? new Date(date) : (date as Date);\n });\n }\n setDateRange(valueTemp);\n }, [JSON.stringify(value)]);\n\n function handleChange(cdate: Date | undefined, idx?: number) {\n const changeValue = [...dateRange];\n changeValue[idx!] = cdate;\n setDateRange(changeValue);\n onChange && onChange(cdate, changeValue);\n }\n\n return (\n <DateInputRangeStyleWarp\n className={[`${prefixCls}-contents`, `${prefixCls}-inner`].filter(Boolean).join(' ').trim()}\n style={{ width: 300, ...bodyStyle }}\n >\n <Popover\n trigger=\"focus\"\n placement=\"bottomLeft\"\n autoAdjustOverflow\n {...popoverProps}\n content={\n <DateInputStyleDatePickerPopover\n as={DatePicker}\n date={dateRange[0]}\n className={`${prefixCls}-popover`}\n {...datePickerProps}\n onChange={(selectedDate: Date | undefined) => handleChange(selectedDate, 0)}\n />\n }\n >\n <Input\n placeholder=\"请选择日期\"\n readOnly\n {...(inputProps as InputProps)}\n // onChange={(v) => console.log('v', v)}\n value={dateRange[0] ? formatter(format, dateRange[0]) : ''}\n className={[prefixCls, className].filter(Boolean).join(' ').trim()}\n />\n </Popover>\n <DateInputIconStyleWarp verticalAlign=\"baseline\" style={{ fontSize: 21, top: -1, margin: '0px 8px 0px 5px' }}>\n <SwapRight />\n </DateInputIconStyleWarp>\n <Popover\n trigger=\"focus\"\n placement=\"bottomLeft\"\n autoAdjustOverflow\n {...popoverProps}\n content={\n <DateInputStyleDatePickerPopover\n as={DatePicker}\n date={dateRange[1]}\n className={`${prefixCls}-popover`}\n {...datePickerProps}\n onChange={(selectedDate: Date | undefined) => handleChange(selectedDate, 1)}\n />\n }\n >\n <Input\n placeholder=\"请选择日期\"\n readOnly\n {...(inputProps as InputProps)}\n value={dateRange[1] ? formatter(format, dateRange[1]) : ''}\n // onChange={(v) => console.log('v2', v)}\n className={[prefixCls, className].filter(Boolean).join(' ').trim()}\n />\n </Popover>\n\n {allowClear && dateRange.length > 0 && (\n <DateInputIconStyleWarp closebtn onClick={() => setDateRange([])} className={`${prefixCls}-close-btn`}>\n <Close />\n </DateInputIconStyleWarp>\n )}\n </DateInputRangeStyleWarp>\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 { Close } from '@uiw/icons/lib/Close';\nimport { IProps } from '@uiw/utils';\nimport formatter from '@uiw/formatter';\nimport { DateInputIconStyleWarp, DateInputStyleDatePickerPopover, DateInputStyleBase } from './style/index';\nexport * from './style';\nexport * from './DateInputRange';\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 autoClose?: boolean;\n}\n\nexport default function DateInput(props: DateInputProps) {\n const {\n prefixCls = 'w-dateinput',\n className,\n popoverProps,\n datePickerProps,\n allowClear = true,\n autoClose = false,\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 autoClose && setIsOpen(false);\n setDate(cdate);\n onChange && onChange(cdate);\n }\n if (allowClear && inputProps.value) {\n inputProps.addonAfter = (\n <DateInputIconStyleWarp closebtn className={`${prefixCls}-close-btn`} onClick={() => handleChange(undefined)}>\n <Close />\n </DateInputIconStyleWarp>\n );\n }\n\n const [isOpen, setIsOpen] = useState(false);\n\n return (\n <Popover\n trigger=\"focus\"\n placement=\"bottomLeft\"\n autoAdjustOverflow\n isOpen={isOpen}\n onVisibleChange={(open) => setIsOpen(open)}\n {...popoverProps}\n content={\n <DateInputStyleDatePickerPopover\n as={DatePicker}\n date={(value && new Date(value)) || undefined}\n className={`${prefixCls}-popover`}\n {...datePickerProps}\n onChange={(selectedDate: Date | undefined) => handleChange(selectedDate!)}\n />\n }\n >\n <DateInputStyleBase\n as={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","/**\n * 最外层 bordered large small\n *\n * **/\nimport styled, { css } from 'styled-components';\nimport { getThemeVariantValue, HTMLDivProps, ThemeVariantValueOptions } from '@uiw/utils';\nimport React from 'react';\nimport { DescriptionsProps } from '..';\n\n/** Descriptions 主题变量**/\nexport const DescriptionsStyleTheme = {\n borderColorDescriptions: '#dfe2e5',\n fontSizeSmall: '12px',\n fontSizeDefault: '14px',\n fontSizeLarge: '16px',\n backgroundColorBase: '#fff',\n\n borderColorDescriptionsTh: '#fafafa',\n colorDescriptionsHead: 'rgba(0, 0, 0, 0.85)',\n\n colorDescriptionsConent: 'rgba(0, 0, 0, 0.65)',\n colorDescriptionsColon: 'rgba(0, 0, 0, 0.95)',\n};\nconst propsTheme = {\n defaultTheme: { ...DescriptionsStyleTheme },\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof DescriptionsStyleTheme>;\n\nexport interface DescriptionsStyleWarpProps extends HTMLDivProps, ThemeVar {\n bordered?: boolean;\n}\nexport const DescriptionsStyleWarp = styled.div<DescriptionsStyleWarpProps>`\n background: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorBase')};\n ${(props) =>\n props.bordered &&\n css`\n & {\n overflow: hidden;\n border-radius: 3px;\n border: 1px solid ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorDescriptions')};\n }\n `}\n`;\nexport interface DescriptionsStyleItemProps\n extends React.DetailedHTMLProps<React.ThHTMLAttributes<HTMLTableHeaderCellElement>, HTMLTableHeaderCellElement>,\n React.DetailedHTMLProps<React.TdHTMLAttributes<HTMLTableDataCellElement>, HTMLTableDataCellElement>,\n ThemeVar {\n bordered?: boolean;\n isLabel?: Boolean;\n isColon?: Boolean;\n isContent?: Boolean;\n}\nexport const DescriptionsStyleItem = styled.th<DescriptionsStyleItemProps>`\n ${(props) =>\n props.isLabel &&\n css`\n & {\n font-size: 14px;\n font-weight: normal;\n &::after {\n position: relative;\n top: -0.5px;\n margin: 0 8px 0 2px;\n content: ' ';\n }\n }\n `}\n\n ${(props) =>\n props.isColon &&\n css`\n &::after {\n content: ':';\n }\n & {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDescriptionsColon')};\n }\n `}\n ${(props) =>\n props.isContent &&\n css`\n & {\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDescriptionsConent')};\n }\n `}\n ${(props) =>\n props.bordered &&\n (props.isContent || props.isLabel) &&\n css`\n &&:last-child {\n border-right: none;\n }\n `}\n`;\nexport interface DescriptionsStyleTableProps\n extends React.DetailedHTMLProps<React.TableHTMLAttributes<HTMLTableElement>, HTMLTableElement>,\n ThemeVar {}\nexport const DescriptionsStyleTable = styled.table<DescriptionsStyleTableProps>`\n display: table !important;\n margin-bottom: 0 !important;\n margin: 0;\n border-spacing: 0;\n border-collapse: collapse;\n table-layout: fixed;\n width: 100%;\n`;\n\nexport interface DescriptionsStyleTableCaptionProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>,\n ThemeVar {\n bordered?: boolean;\n}\nexport const DescriptionsStyleTableCaption = styled.caption<DescriptionsStyleTableCaptionProps>`\n font-weight: bold;\n text-align: left;\n margin-bottom: 8px;\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorDescriptionsHead')};\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeLarge')};\n line-height: 1.5;\n ${(props) =>\n props.bordered &&\n css`\n & {\n margin-bottom: 0;\n padding: 7px 12px;\n }\n `}\n`;\n\nexport interface DescriptionsStyleTableRowProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>,\n ThemeVar {\n bordered?: boolean;\n}\nexport const DescriptionsStyleTableRow = styled.tr<DescriptionsStyleTableRowProps>`\n &&:nth-child(2n) {\n background-color: transparent;\n }\n ${(props) =>\n props.bordered &&\n css`\n & td {\n padding: 8px 12px;\n }\n `}\n ${(props) =>\n !props.bordered &&\n css`\n & td {\n padding-bottom: 8px;\n }\n `}\n`;\n\nexport interface DescriptionsStyleTableTbodyProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>,\n ThemeVar {\n bordered?: boolean;\n size?: DescriptionsProps['size'];\n}\n\nexport const DescriptionsStyleTableTbody = styled.tbody<DescriptionsStyleTableTbodyProps>`\n word-wrap: break-word;\n ${(props) =>\n props.bordered &&\n css`\n & {\n tr th {\n padding: 8px 12px;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorDescriptionsTh')};\n font-weight: normal;\n }\n tr th,\n tr td {\n border-top: 1px solid\n ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorDescriptions')};\n border-right: 1px solid\n ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorDescriptions')};\n }\n &:first-child tr:first-child th,\n &:first-child tr:first-child td {\n border-top: 0;\n }\n }\n `}\n ${(props) =>\n props.size === 'small' &&\n props.bordered &&\n css`\n & ${DescriptionsStyleTableRow} td,\n & ${DescriptionsStyleTableRow} th {\n padding: 4px 8px;\n }\n `}\n ${(props) =>\n props.size === 'large' &&\n props.bordered &&\n css`\n & ${DescriptionsStyleTableRow} ${DescriptionsStyleItem} {\n padding: 14px 16px;\n }\n `}\n`;\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\nimport { DescriptionsItemProps } from './DescriptionsItem';\nimport { RowProps } from './Row';\nimport { DescriptionsStyleItem } from './style';\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 <DescriptionsStyleItem as={TagName} {...other} colSpan={span}>\n <DescriptionsStyleItem as=\"span\" {...labelProps} isColon={colon} isLabel={!!label}>\n {label}\n </DescriptionsStyleItem>\n <DescriptionsStyleItem\n as=\"span\"\n isContent={!!prefixCls}\n className={prefixCls ? `${prefixCls}-item-content` : ''}\n >\n {children}\n </DescriptionsStyleItem>\n </DescriptionsStyleItem>\n );\n }\n return (\n <Fragment>\n <DescriptionsStyleItem as=\"th\" {...labelProps} bordered={bordered} isColon={colon} isLabel={!!label}>\n {label}\n </DescriptionsStyleItem>\n <DescriptionsStyleItem\n {...other}\n as={TagName}\n isContent={!!prefixCls}\n bordered={bordered}\n colSpan={span ? span * 2 - 1 : span}\n className={prefixCls ? `${prefixCls}-item-content` : ''}\n >\n {children}\n </DescriptionsStyleItem>\n </Fragment>\n );\n }\n return (\n <DescriptionsStyleItem\n bordered={bordered}\n isLabel={TagName === 'th'}\n isContent={TagName === 'td'}\n as={TagName}\n colSpan={span}\n className={`${prefixCls}-item-${TagName === 'td' ? 'content' : 'label'}`}\n >\n {children}\n </DescriptionsStyleItem>\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';\nimport { DescriptionsStyleTableRow } from './style';\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 <DescriptionsStyleTableRow bordered={bordered} className={cls}>\n {handleCell()}\n </DescriptionsStyleTableRow>\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 {\n DescriptionsStyleTable,\n DescriptionsStyleWarp,\n DescriptionsStyleTableCaption,\n DescriptionsStyleTableTbody,\n} from './style';\nexport * from './DescriptionsItem';\nexport * from './style';\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 <DescriptionsStyleWarp bordered={bordered} className={cls} ref={ref}>\n <DescriptionsStyleTable {...other}>\n {title && (\n <DescriptionsStyleTableCaption bordered={bordered} className={`${prefixCls}-title`}>\n {title}\n </DescriptionsStyleTableCaption>\n )}\n <DescriptionsStyleTableTbody size={size} bordered={bordered} className={`${prefixCls}-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 </DescriptionsStyleTableTbody>\n </DescriptionsStyleTable>\n </DescriptionsStyleWarp>\n );\n}\n\n// const Descriptions = React.forwardRef<HTMLDivElement, DescriptionsProps>(InternalDescriptions);\n// type Descriptions = typeof Descriptions & {\n// Item: typeof DescriptionsItem;\n// };\n\n// (Descriptions as Descriptions).Item = DescriptionsItem;\n\ntype DescriptionsComponent = React.FC<React.PropsWithRef<DescriptionsProps>> & {\n Item: typeof DescriptionsItem;\n};\n\nconst Descriptions: DescriptionsComponent = React.forwardRef<HTMLDivElement>(\n InternalDescriptions,\n) as unknown as DescriptionsComponent;\n\nDescriptions.Item = DescriptionsItem;\n\nexport default Descriptions;\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { DividerProps } from 'src';\n\nexport const DividerStyleTheme = {\n fontSizeLarge: '16px',\n backgroundColorDividerBase: '#e8e8e8',\n borderTopColorDividerWithText: '#e8e8e8',\n};\nconst propsTheme = {\n defaultTheme: { ...DividerStyleTheme },\n};\ninterface DividerStyleBaseProps\n extends ThemeVariantValueOptions<typeof DividerStyleTheme>,\n Pick<DividerProps, 'dashed' | 'type' | 'align' | 'prefixCls'> {}\n\nexport const DividerStyleBase = styled.div<DividerStyleBaseProps>`\n font-size: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeLarge')};\n line-height: 16px;\n box-sizing: border-box;\n padding: 0;\n list-style: none;\n background: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDividerBase')};\n\n ${(props) => {\n if (props.prefixCls) {\n if (props.type === 'vertical') {\n return css`\n margin: 0 8px;\n display: inline-block;\n height: 0.9em;\n width: 1px;\n vertical-align: middle;\n position: relative;\n top: -0.06em;\n `;\n } else if (props.type === 'horizontal') {\n return css`\n height: 1px;\n width: 100%;\n margin: 16px 0;\n ${props.children &&\n css`\n display: flex;\n white-space: nowrap;\n text-align: center;\n background: transparent;\n font-weight: 500;\n color: #353535;\n height: inherit;\n margin: 16px 0;\n &:before,\n &:after {\n content: '';\n display: table-cell;\n position: relative;\n top: 50%;\n width: 50%;\n border-top: 1px solid\n ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderTopColorDividerWithText')};\n transform: translateY(50%);\n }\n `}\n `;\n }\n }\n }}\n\n ${(props) => {\n if (props.prefixCls && props.children) {\n if (props.align === 'left') {\n return css`\n ::before {\n width: 5%;\n }\n ::after {\n width: 95%;\n }\n `;\n } else if (props.align === 'right') {\n return css`\n ::after {\n width: 5%;\n }\n ::before {\n width: 95%;\n }\n `;\n }\n }\n }}\n\n ${(props) => {\n if (props.dashed) {\n if (props.children) {\n return css`\n &::before,\n &::after {\n border-top-style: dashed;\n }\n `;\n } else {\n return css`\n background: none;\n border-top: 1px dashed\n ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderTopColorDividerWithText')};\n `;\n }\n }\n }}\n`;\n\nexport const DividerStyleInnerText = styled.div`\n display: inline-block;\n padding: 0 10px;\n`;\n\nexport default DividerStyleBase;\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport DividerWarp, { DividerStyleInnerText } from './style';\nexport * from './style';\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 <DividerWarp\n className={cls}\n {...restProps}\n ref={ref}\n prefixCls={prefixCls}\n type={type}\n align={align}\n dashed={dashed}\n >\n {children && <DividerStyleInnerText className={`${prefixCls}-inner-text`}>{children}</DividerStyleInnerText>}\n </DividerWarp>\n );\n});\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue, HTMLDivProps } from '@uiw/utils';\nimport Overlay, { ContentWrap } from '@uiw/react-overlay';\nimport { DrawerProps } from 'src';\nimport { IconStyleBase } from '@uiw/react-icon';\n\nexport const DrawerStyleTheme = {\n boxShadowColorInDrawerWrapper: 'rgba(16, 22, 26, 0.1)',\n boxShadowColorHvDrawerWrapper: 'rgba(16, 22, 26, 0.2)',\n backgroundColorDrawerWrapper: '#fff',\n backgroundColorDrawerHeader: '#fff',\n boxShadowColorInDrawerHeader: 'rgba(16, 22, 26, 0.15)',\n colorHvDrawerHeader: '#393e48',\n boxShadowColorInDrawerFooter: 'rgba(16, 22, 26, 0.15)',\n};\nconst propsTheme = {\n defaultTheme: { ...DrawerStyleTheme },\n};\nexport interface DrawerWrapperWrapProps extends ThemeVariantValueOptions<typeof DrawerStyleTheme>, HTMLDivProps {}\nexport interface DrawerHeaderWrapProps extends ThemeVariantValueOptions<typeof DrawerStyleTheme>, HTMLDivProps {}\nexport interface DrawerHeaderWrapProps extends ThemeVariantValueOptions<typeof DrawerStyleTheme>, HTMLDivProps {}\nexport interface DrawerWrapProps extends Pick<DrawerProps, 'placement'> {}\n\nexport const DrawerStyleWrapperWrap = styled.div<DrawerWrapperWrapProps>`\n ${(props) => css`\n box-shadow: 0 0 0 1px ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorInDrawerWrapper')},\n 0 0 46px 6px ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorHvDrawerWrapper')};\n background-color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDrawerWrapper')};\n position: fixed;\n margin: 0 !important;\n display: flex;\n flex-direction: column;\n `}\n`;\n\nexport const DrawerStyleHeaderWrap = styled.div<DrawerHeaderWrapProps>`\n ${(props) => css`\n display: flex;\n align-items: center;\n min-height: 40px;\n padding-left: 13px;\n padding-right: 5px;\n background-color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorDrawerHeader')};\n border-radius: 5px 5px 0 0;\n box-shadow: 0 1px 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorInDrawerHeader')};\n font-size: 16px;\n > ${IconStyleBase} {\n margin-right: 10px;\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorHvDrawerHeader')};\n }\n h4 {\n margin: 0;\n padding: 0;\n flex: 1 1 auto;\n }\n `}\n`;\n\nexport const DrawerStyleBodyWrap = styled.div`\n ${(props) => css`\n flex: 1 1 auto;\n overflow: auto;\n line-height: 18px;\n `}\n`;\n\nexport const DrawerStyleFooterWrap = styled.div<DrawerHeaderWrapProps>`\n ${(props) => css`\n box-shadow: 0 -1px 0 ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowColorInDrawerFooter')};\n min-height: 40px;\n padding-left: 13px;\n padding-right: 5px;\n display: flex;\n align-items: center;\n `}\n`;\n\nexport const DrawerStyleBodyClsWrap = styled.div`\n ${(props) => css`\n padding: 15px;\n `}\n`;\n\nexport const DrawerStyleWrap = styled(Overlay)<DrawerWrapProps>`\n ${(props) => css`\n ${(props.placement === 'top' || props.placement === 'bottom') &&\n css`\n ${DrawerStyleWrapperWrap} {\n left: 0;\n right: 0;\n }\n `}\n\n ${props.placement === 'top' &&\n css`\n ${DrawerStyleWrapperWrap} {\n top: 0;\n }\n `}\n\n ${props.placement === 'bottom' &&\n css`\n ${DrawerStyleWrapperWrap} {\n bottom: 0;\n }\n `}\n\n ${(props.placement === 'right' || props.placement === 'left') &&\n css`\n ${DrawerStyleWrapperWrap} {\n bottom: 0;\n top: 0;\n }\n `}\n\n ${props.placement === 'right' &&\n css`\n ${DrawerStyleWrapperWrap} {\n right: 0;\n }\n `}\n\n ${props.placement === 'left' &&\n css`\n ${DrawerStyleWrapperWrap} {\n left: 0;\n }\n `}\n\n\n &.w-overlay-enter ${ContentWrap} {\n opacity: 1;\n }\n &.w-overlay-enter-active ${ContentWrap} {\n transition: all 0.2s cubic-bezier(0.4, 1, 0.75, 0.9);\n }\n &.w-overlay-exit ${ContentWrap} {\n opacity: 1;\n }\n &.w-overlay-exit-active ${ContentWrap} {\n transition: all 0.2s cubic-bezier(0.4, 1, 0.75, 0.9);\n }\n\n ${props.placement === 'right' &&\n css`\n &.w-overlay-enter ${ContentWrap} {\n transform: translateX(100%);\n }\n &.w-overlay-enter-active ${ContentWrap} {\n transform: translateX(0);\n }\n &.w-overlay-exit ${ContentWrap} {\n transform: translateX(0);\n }\n &.w-overlay-exit-active ${ContentWrap} {\n transform: translateX(100%);\n }\n `}\n\n ${props.placement === 'left' &&\n css`\n &.w-overlay-enter ${ContentWrap} {\n transform: translateX(-100%);\n }\n &.w-overlay-enter-active ${ContentWrap} {\n transform: translateX(0);\n }\n &.w-overlay-exit ${ContentWrap} {\n transform: translateX(0);\n }\n &.w-overlay-exit-active ${ContentWrap} {\n transform: translateX(-100%);\n }\n `}\n\n ${props.placement === 'top' &&\n css`\n &.w-overlay-enter ${ContentWrap} {\n transform: translateY(-100%);\n }\n &.w-overlay-enter-active ${ContentWrap} {\n transform: translateY(0);\n }\n &.w-overlay-exit ${ContentWrap} {\n transform: translateY(0);\n }\n &.w-overlay-exit-active ${ContentWrap} {\n transform: translateY(-100%);\n }\n `}\n\n ${props.placement === 'bottom' &&\n css`\n &.w-overlay-enter ${ContentWrap} {\n transform: translateY(100%);\n }\n &.w-overlay-enter-active ${ContentWrap} {\n transform: translateY(0);\n }\n &.w-overlay-exit ${ContentWrap} {\n transform: translateY(0);\n }\n &.w-overlay-exit-active ${ContentWrap} {\n transform: translateY(100%);\n }\n `}\n `}\n`;\n","import React, { useMemo } from 'react';\nimport { OverlayProps } from '@uiw/react-overlay';\nimport { Close } from '@uiw/icons/lib/Close';\nimport Button from '@uiw/react-button';\nimport { HTMLDivProps } from '@uiw/utils';\nimport {\n DrawerStyleWrap,\n DrawerStyleWrapperWrap,\n DrawerStyleHeaderWrap,\n DrawerStyleBodyWrap,\n DrawerStyleFooterWrap,\n DrawerStyleBodyClsWrap,\n} from './style';\nexport * from './style';\n\nexport interface DrawerProps extends OverlayProps {\n footer?: React.ReactNode;\n icon?: React.ReactNode;\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(\n () => (footer ? <DrawerStyleFooterWrap className={`${prefixCls}-footer`}>{footer}</DrawerStyleFooterWrap> : null),\n [footer],\n );\n const iconView = icon; // useMemo(() => (icon ? <Icon type={icon} /> : null), [icon]);\n const titleView = useMemo(() => (title ? <h4>{title}</h4> : null), [title]);\n\n return (\n <DrawerStyleWrap\n placement={placement}\n className={cls}\n timeout={timeout}\n isOpen={isOpen}\n maskClosable={maskClosable}\n {...overlayProps}\n >\n <DrawerStyleWrapperWrap className={`${prefixCls}-wrapper`} style={styl}>\n {(title || icon) && (\n <DrawerStyleHeaderWrap className={`${prefixCls}-header`}>\n {iconView}\n {titleView}\n {title && isCloseButtonShown && <Button basic onClick={props.onClose} icon={<Close />} type=\"light\" />}\n </DrawerStyleHeaderWrap>\n )}\n <DrawerStyleBodyWrap className={`${prefixCls}-body`}>\n <DrawerStyleBodyClsWrap {...bodyProps} className={bodyCls}>\n {props.children}\n </DrawerStyleBodyClsWrap>\n </DrawerStyleBodyWrap>\n {footerView}\n </DrawerStyleWrapperWrap>\n </DrawerStyleWrap>\n );\n};\n","import styled from 'styled-components';\nimport { getThemeVariantValue } from '@uiw/utils';\n\nexport const EmptyStyleTheme = {\n colorEmptyBase: '#c7c7c7',\n};\nconst propsTheme = {\n defaultTheme: { ...EmptyStyleTheme },\n};\ninterface DividerProps {\n defaultTheme?: Record<string, string | number>;\n}\n\nexport const EmptyStyleBase = styled.div<DividerProps>`\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorEmptyBase')};\n text-align: center;\n`;\n\nexport const EmptyStyleIcon = styled.div``;\n\nexport const EmptyStyleDescription = styled.div`\n margin-top: 10px;\n`;\n\nexport const EmptyStyleFooter = styled.div`\n margin-top: 16px;\n`;\n\nexport default EmptyStyleBase;\n","import React from 'react';\nimport EmptyWrap, { EmptyStyleDescription, EmptyStyleFooter, EmptyStyleIcon } from './style';\nexport * from './style';\nexport interface EmptyProps extends React.HTMLAttributes<HTMLDivElement> {\n prefixCls?: string;\n icon?: React.ReactNode;\n size?: number | string;\n iconProps?: React.SVGProps<SVGSVGElement>;\n /** 自定义描述内容 */\n description?: React.ReactNode;\n}\n\nconst Empty = (props: EmptyProps) => {\n const {\n prefixCls = 'w-empty',\n className,\n icon,\n iconProps,\n size = 64,\n description = '暂无数据',\n children,\n ...other\n } = props;\n\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n return (\n <EmptyWrap className={cls} {...other}>\n <EmptyStyleIcon className={`${prefixCls}-icon`}>\n {icon ? (\n icon\n ) : (\n <svg viewBox=\"0 0 1024 1024\" width={size} height={size} {...iconProps}>\n <path d=\"M20.48 860.16a491.52 102.4 0 1 0 983.04 0 491.52 102.4 0 1 0-983.04 0Z\" fill=\"#F5F5F5\" />\n <path d=\"M225.28 409.6l573.44-8.06912 112.78336 183.296H102.4z\" fill=\"#C4C5C7\" />\n <path\n d=\"M266.24 61.44h491.52a40.96 40.96 0 0 1 40.96 40.96v532.48a40.96 40.96 0 0 1-40.96 40.96H266.24a40.96 40.96 0 0 1-40.96-40.96V102.4a40.96 40.96 0 0 1 40.96-40.96z\"\n fill=\"#F5F5F7\"\n />\n <path\n d=\"M348.16 143.36h327.68a40.96 40.96 0 0 1 40.96 40.96v122.88a40.96 40.96 0 0 1-40.96 40.96H348.16a40.96 40.96 0 0 1-40.96-40.96V184.32a40.96 40.96 0 0 1 40.96-40.96zM327.68 409.6h368.64a20.48 20.48 0 0 1 0 40.96H327.68a20.48 20.48 0 0 1 0-40.96zM327.68 491.52h368.64a20.48 20.48 0 0 1 0 40.96H327.68a20.48 20.48 0 0 1 0-40.96z\"\n fill=\"#EBECEC\"\n />\n <path\n d=\"M673.44384 607.58016v13.43488c0 25.14944-20.0704 45.52704-44.8512 45.52704H382.95552l-2.2528-0.06144c-23.7568-1.16736-42.63936-21.07392-42.63936-45.4656v-13.45536c0-12.55424-10.0352-22.7328-22.44608-22.7328H102.4v250.30656C102.4 860.2624 122.49088 880.64 147.29216 880.64h719.31904c24.7808 0 44.89216-20.3776 44.89216-45.50656V584.82688H695.88992c-12.3904 0-22.44608 10.17856-22.44608 22.7328z\"\n fill=\"#E0E0E0\"\n />\n </svg>\n )}\n </EmptyStyleIcon>\n {description && (\n <EmptyStyleDescription className={`${prefixCls}-description`}>{description}</EmptyStyleDescription>\n )}\n {children && <EmptyStyleFooter className={`${prefixCls}-footer`}>{children}</EmptyStyleFooter>}\n </EmptyWrap>\n );\n};\n\nexport default Empty;\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, HTMLDivProps, getThemeVariantValue } from '@uiw/utils';\nimport { FileInputListProps } from '../';\nimport Input, { InputProps } from '@uiw/react-input';\n\nexport const FileInputTheme = {\n boxShadowFileInputStyleWarpAfterBase: 'inset 0 0 0 1px rgb(16 22 26 / 8%);',\n backgroundImageFileInputStyleWarpAfterBase: ' linear-gradient(180deg, hsla(0, 0%, 100%, 0.8), hsla(0, 0%, 100%, 0))',\n backgroundColorFileInputStyleWarpAfterBase: '#f5f8fa',\n colorFileInputStyleWarpAfterBase: '#182026',\n\n backgroundColorFileInputStyleWarpHoverAfterBase: '#ebf1f5',\n boxShadowFileInputStyleWarpHoverAfterBase: 'inset 0 0 0 1px rgb(16 22 26 / 20%), inset 0 -1px 0 rgb(16 22 26 / 10%)',\n\n colorFileInputStyleWarpBeforeBase: '#757575',\n\n backgroundFileInputStyleCardActionsWarpBase: 'rgba(0, 0, 0, 0.6)',\n\n backgroundColorFileInputStyleCardBoxWarpBase: '#fafafa',\n borderColorFileInputStyleCardBoxWarpBase: '#d9d9d9',\n backgroundFileInputStyleListActionsWarpBase: ' rgba(0, 0, 0, 0.6)',\n\n borderColorFileInputStyleListUploadTypeWarpBase: '#d9d9d9',\n backgroundFileInputStyleListUploadTypeWarpHover: '#f5f5f5',\n};\n\nconst propsTheme = {\n defaultTheme: FileInputTheme,\n};\n\ntype ThemeVar = ThemeVariantValueOptions<typeof FileInputTheme>;\n\nexport interface FileInputStyleWarpProps extends Omit<InputProps, 'defaultTheme'>, ThemeVar {}\n\n// Input\nexport const FileInputStyleWarp = styled(Input)<FileInputStyleWarpProps>`\n input {\n &::-webkit-file-upload-button {\n background: transparent;\n border: 0;\n color: #0000;\n position: absolute;\n left: -300px;\n }\n &:hover:after {\n background-clip: padding-box;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorFileInputStyleWarpHoverAfterBase')};\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowFileInputStyleWarpHoverAfterBase')};\n }\n &:after {\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowFileInputStyleWarpAfterBase')};\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorFileInputStyleWarpAfterBase')};\n background-image: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundImageFileInputStyleWarpAfterBase')};\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorFileInputStyleWarpAfterBase')};\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n word-wrap: normal;\n border-radius: 3px;\n content: 'Browse';\n content: attr(data-label);\n padding: 0 10px;\n margin: 3px;\n text-align: center;\n right: 0;\n display: flex;\n align-items: center;\n }\n &::before,\n &::after {\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorFileInputStyleWarpBeforeBase')};\n position: absolute;\n top: 0;\n bottom: 0;\n }\n }\n`;\n\n//Card\ninterface FileInputCardActionsProps extends ThemeVar, HTMLDivProps {\n isAction: boolean;\n}\nexport const FileInputStyleCardActionsWarp = styled.div<FileInputCardActionsProps>`\n ${(props) =>\n props.isAction &&\n css`\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.5s;\n opacity: 0;\n background: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundFileInputStyleCardActionsWarpBase')};\n border-radius: 2px;\n `}\n`;\n\nexport interface FileInputStyleCardBoxWarpProps extends ThemeVar, HTMLDivProps {\n btn?: boolean;\n}\nexport const FileInputStyleCardBoxWarp = styled.div<FileInputStyleCardBoxWarpProps>`\n margin-right: 8px;\n margin-bottom: 8px;\n text-align: center;\n vertical-align: top;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorFileInputStyleCardBoxWarpBase')};\n border: 1px dashed\n ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorFileInputStyleCardBoxWarpBase')};\n overflow: hidden;\n border-radius: 2px;\n cursor: pointer;\n transition: border-color 0.3s;\n display: inline-flex;\n position: relative;\n ${(props) =>\n props.btn &&\n css`\n align-items: center;\n justify-content: center;\n `}\n :hover ${FileInputStyleCardActionsWarp} {\n opacity: 1;\n }\n`;\n\nexport const FileInputStyleCardBoxInfoWarp = styled.div`\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n img {\n width: 100%;\n height: 100%;\n }\n`;\nexport const FileInputStyleCardActionsRemoveWarp = styled.span`\n width: 24px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n`;\nexport const FileInputStyleCardWarp = styled.div<{\n size: FileInputListProps['size'];\n shape: FileInputListProps['shape'];\n}>`\n margin-right: -8px;\n ${(props) => {\n if (props.size === 'large') {\n return css`\n ${FileInputStyleCardBoxWarp} {\n width: 110px;\n height: 110px;\n }\n `;\n }\n if (props.size === 'middle') {\n return css`\n ${FileInputStyleCardBoxWarp} {\n width: 80px;\n height: 80px;\n }\n `;\n }\n if (props.size === 'small') {\n return css`\n ${FileInputStyleCardBoxWarp} {\n width: 50px;\n height: 50px;\n }\n `;\n }\n return css``;\n }}\n ${(props) => {\n if (props.shape === 'circle') {\n return css`\n ${FileInputStyleCardBoxWarp} {\n border-radius: 50%;\n }\n `;\n }\n if (props.shape === 'round') {\n return css`\n ${FileInputStyleCardBoxWarp} {\n border-radius: 2px;\n }\n `;\n }\n return css``;\n }}\n`;\n\nexport interface FileInputStyleListActionsWarpProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVar {}\n// list\nexport const FileInputStyleListActionsWarp = styled.div<FileInputStyleListActionsWarpProps>`\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.5s;\n opacity: 0;\n background: ${(props) =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundFileInputStyleListActionsWarpBase')};\n border-radius: 2px;\n`;\n\nexport const FileInputStyleListActionsSearchWarp = styled.span`\n width: 24px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n`;\nexport const FileInputStyleListUploadInfoTypeWarp = styled.div`\n :hover ${FileInputStyleListActionsWarp} {\n opacity: 1;\n }\n`;\nexport const FileInputStyleListUploadTextTypeWarp = styled.div``;\nexport const FileInputStyleListUploadIconTypeWarp = styled.div``;\n\nexport interface FileInputStyleListUploadTypeWarpProps extends ThemeVar {\n uploadType: FileInputListProps['uploadType'];\n}\n\nexport const FileInputStyleListUploadTypeWarp = styled.div<FileInputStyleListUploadTypeWarpProps>`\n ${(props) => {\n if (props.uploadType === 'picture') {\n return css`\n border: 1px solid\n ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorFileInputStyleListUploadTypeWarpBase')};\n display: flex;\n align-items: center;\n padding: 5px;\n margin-top: 8px;\n ${FileInputStyleListUploadInfoTypeWarp} {\n margin-right: 10px;\n position: relative;\n overflow: hidden;\n img {\n width: 48px;\n height: 48px;\n display: block;\n }\n }\n ${FileInputStyleListUploadTextTypeWarp} {\n flex: 1;\n }\n ${FileInputStyleListUploadIconTypeWarp} {\n padding: 5px;\n cursor: pointer;\n }\n `;\n }\n }}\n ${(props) => {\n if (props.uploadType === 'text') {\n return css`\n border: 1px solid transparent;\n display: flex;\n align-items: center;\n padding: 5px;\n transition: all 0.5s;\n :hover {\n background: ${() =>\n getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundFileInputStyleListUploadTypeWarpHover')};\n }\n :first-child {\n margin-top: 8px;\n }\n ${FileInputStyleListUploadTextTypeWarp} {\n flex: 1;\n }\n ${FileInputStyleListUploadIconTypeWarp} {\n padding: 0 5px;\n cursor: pointer;\n }\n `;\n }\n return css``;\n }}\n`;\n\nexport interface FileInputStyleListWarpProps extends HTMLDivProps {\n size: FileInputListProps['size'];\n shape: FileInputListProps['shape'];\n uploadType: FileInputListProps['uploadType'];\n}\nexport const FileInputStyleListWarp = styled.div<FileInputStyleListWarpProps>`\n padding-bottom: 8px;\n width: 100%;\n ${(props) => {\n if (props.uploadType !== 'picture') {\n return css``;\n }\n if (props.size === 'large') {\n return css`\n ${FileInputStyleListUploadTypeWarp} {\n ${FileInputStyleListUploadInfoTypeWarp} img {\n width: 70px;\n height: 70px;\n }\n }\n `;\n }\n if (props.size === 'middle') {\n return css`\n ${FileInputStyleListUploadTypeWarp} {\n ${FileInputStyleListUploadInfoTypeWarp} img {\n width: 50px;\n height: 50px;\n }\n }\n `;\n }\n if (props.size === 'small') {\n return css`\n ${FileInputStyleListUploadTypeWarp} {\n ${FileInputStyleListUploadInfoTypeWarp} img {\n width: 50px;\n height: 50px;\n }\n }\n `;\n }\n return css``;\n }}\n ${(props) => {\n if (props.shape === 'round' && props.uploadType === 'picture') {\n return css`\n ${FileInputStyleListUploadTypeWarp} {\n ${FileInputStyleListUploadInfoTypeWarp} {\n border-radius: 2px;\n }\n }\n `;\n }\n if (props.shape === 'circle') {\n return css``;\n }\n }}\n`;\n","import React from 'react';\nimport { FileInputDefaultProps } from './types';\nimport { FileInputStyleWarp } from './style';\n\nexport default React.forwardRef<HTMLInputElement, FileInputDefaultProps>((props, ref) => {\n const { className, dataLabel = 'Browse', prefixCls = 'w-fileinput', ...other } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n return <FileInputStyleWarp ref={ref} data-label={dataLabel} className={cls} {...other} type=\"file\" />;\n});\n","import React from 'react';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { Delete, Search } from '@uiw/icons';\nimport { FileInputListProps } from './';\nimport {\n FileInputStyleListWarp,\n FileInputStyleListActionsWarp,\n FileInputStyleListActionsSearchWarp,\n FileInputStyleListUploadTypeWarp,\n FileInputStyleListUploadInfoTypeWarp,\n FileInputStyleListUploadTextTypeWarp,\n FileInputStyleListUploadIconTypeWarp,\n} from './style';\n\nconst Picture = (props: FileInputListProps) => {\n const {\n className,\n prefixCls = 'w-fileinput-list',\n dataList = [],\n uploadType, // 'input' | 'picture' | 'text' | 'card';\n size = 'middle',\n shape = 'round',\n readonly,\n children,\n showFileIcon = {\n showPreviewIcon: true,\n showRemoveIcon: true,\n },\n onPreview,\n onAdd,\n onRemove,\n } = props;\n\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n\n return (\n <FileInputStyleListWarp uploadType={uploadType} size={size} shape={shape} className={cls}>\n {children &&\n !readonly &&\n React.isValidElement(children) &&\n React.cloneElement(children, {\n onClick: onAdd,\n })}\n <div>\n {dataList.map((item, index) => (\n <FileInputStyleListUploadTypeWarp\n className={`${prefixCls}-${uploadType}`}\n uploadType={uploadType}\n key={index}\n >\n {uploadType === 'picture' && (\n <FileInputStyleListUploadInfoTypeWarp className={`${prefixCls}-info ${prefixCls}-${uploadType}-info`}>\n <img src={item['dataURL']} alt=\"\" />\n {showFileIcon?.showPreviewIcon && (\n <FileInputStyleListActionsWarp className={`${prefixCls}-actions`}>\n <FileInputStyleListActionsSearchWarp\n className={`${prefixCls}-actions-search`}\n onClick={() => onPreview?.(item)}\n >\n <IconStyleBase style={{ color: '#fff', fontSize: 16 }}>\n <Search />\n </IconStyleBase>\n </FileInputStyleListActionsSearchWarp>\n </FileInputStyleListActionsWarp>\n )}\n </FileInputStyleListUploadInfoTypeWarp>\n )}\n <FileInputStyleListUploadTextTypeWarp className={`${prefixCls}-${uploadType}-text`}>\n {item.name}\n </FileInputStyleListUploadTextTypeWarp>\n {showFileIcon?.showRemoveIcon && (\n <FileInputStyleListUploadIconTypeWarp\n className={`${prefixCls}-${uploadType}-icon`}\n onClick={() => onRemove?.(index)}\n >\n <IconStyleBase style={{ color: '#999' }}>\n <Delete />\n </IconStyleBase>\n </FileInputStyleListUploadIconTypeWarp>\n )}\n </FileInputStyleListUploadTypeWarp>\n ))}\n </div>\n </FileInputStyleListWarp>\n );\n};\n\nexport default Picture;\n","import React from 'react';\nimport {\n FileInputStyleCardWarp,\n FileInputStyleCardBoxWarp,\n FileInputStyleCardActionsWarp,\n FileInputStyleCardBoxInfoWarp,\n FileInputStyleCardActionsRemoveWarp,\n} from './style';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { Delete, Search } from '@uiw/icons';\nimport { FileInputListProps } from './';\n\nconst Card = (props: FileInputListProps) => {\n const {\n className,\n prefixCls = 'w-fileinput-card',\n dataList = [],\n maxNumber = 3,\n shape = 'round',\n size = 'middle',\n readonly,\n children,\n showFileIcon = {\n showPreviewIcon: true,\n showRemoveIcon: true,\n },\n onAdd,\n onPreview,\n onRemove,\n } = props;\n const isAction = showFileIcon.showPreviewIcon || showFileIcon.showRemoveIcon ? true : false;\n\n return (\n <FileInputStyleCardWarp shape={shape} size={size} className={`${prefixCls} ${className}`}>\n {dataList.map((item, index) => (\n <FileInputStyleCardBoxWarp className={`${prefixCls}-box`} key={index}>\n <FileInputStyleCardBoxInfoWarp className={`${prefixCls}-box-info`}>\n <img src={item['dataURL']} alt=\"\" />\n </FileInputStyleCardBoxInfoWarp>\n\n <FileInputStyleCardActionsWarp className={isAction ? `${prefixCls}-actions` : ''} isAction={isAction}>\n {showFileIcon?.showPreviewIcon && (\n <FileInputStyleCardActionsRemoveWarp\n className={`${prefixCls}-actions-remove`}\n onClick={() => onPreview?.(item)}\n >\n <IconStyleBase style={{ color: '#fff', fontSize: 16 }}>\n <Search />\n </IconStyleBase>\n </FileInputStyleCardActionsRemoveWarp>\n )}\n {showFileIcon?.showRemoveIcon && (\n <FileInputStyleCardActionsRemoveWarp\n className={`${prefixCls}-actions-remove`}\n onClick={() => onRemove?.(index)}\n >\n <IconStyleBase style={{ color: '#fff', fontSize: 16 }}>\n <Delete />\n </IconStyleBase>\n </FileInputStyleCardActionsRemoveWarp>\n )}\n </FileInputStyleCardActionsWarp>\n </FileInputStyleCardBoxWarp>\n ))}\n {maxNumber > dataList.length && !readonly && (\n <FileInputStyleCardBoxWarp className={`${prefixCls}-box ${prefixCls}-btn`} btn onClick={onAdd}>\n {children}\n </FileInputStyleCardBoxWarp>\n )}\n </FileInputStyleCardWarp>\n );\n};\n\nexport default Card;\n","import { FileInputValue } 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<FileInputValue[]> => {\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: FileInputValue[] = 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 { FileInputValue, FileInputListProps } from './types';\nimport { openFileDialog, getListFiles } from './utils';\n\nexport const FileList = (props: FileInputListProps) => {\n const { uploadType, value = [], multiple = false, maxNumber = 3, onChange } = props;\n const inputRef = useRef<HTMLInputElement>(null);\n const inValue: FileInputValue[] = value || [];\n const [fileList, setFileList] = useState<FileInputValue[]>([]);\n\n useEffect(() => {\n setFileList(inValue);\n }, [value]);\n\n const handleClickInput = useCallback(() => openFileDialog(inputRef), [inputRef]);\n\n const onFileUpload = useCallback((): void => {\n if (inputRef.current) inputRef.current.value = '';\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?.(updatedList);\n };\n\n let Comp: ((props: FileInputListProps) => 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 { FileInputProps, FileInputDefaultProps, FileInputListProps } from './types';\nexport * from './style';\nexport type { FileInputProps, FileInputDefaultProps, FileInputListProps };\n\nfunction Upload(props: FileInputProps) {\n const { uploadType = 'input', ...other } = props;\n\n if (isUploadType(uploadType)) {\n const prop = props as FileInputListProps;\n return <FileList {...prop} />;\n }\n const otherProp = other as FileInputDefaultProps;\n return <Input {...otherProp} />;\n}\n\nexport default Upload;\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions } from '@uiw/utils';\nimport { ColProps } from 'src/Col';\n\ninterface ColStyleWrapProps extends ThemeVariantValueOptions, Pick<ColProps, 'fixed' | 'span' | 'grow' | 'align'> {}\n\nconst alignType = { top: 'flex-start', middle: 'center', bottom: 'flex-end', baseline: 'baseline' };\n\nexport const ColStyleWrap = styled.div<ColStyleWrapProps>`\n min-width: 0;\n box-sizing: border-box;\n flex: 0 0 auto;\n flex-grow: 1;\n flex-basis: 0;\n max-width: 100%;\n\n ${(props) => {\n if (props.fixed) {\n return css`\n flex: 0 1 auto;\n `;\n }\n }}\n\n ${(props) => {\n if (props.align) {\n return css`\n align-self: ${alignType[props.align]};\n `;\n }\n }}\n\n ${(props) =>\n props.fixed &&\n props.grow &&\n css`\n flex-grow: ${Number.parseInt(props.grow.toString())}%;\n `}\n\n ${(props) =>\n props.span &&\n css`\n flex-basis: ${(100 / 24) * Number.parseInt(props.span.toString())}%;\n max-width: ${(100 / 24) * Number.parseInt(props.span.toString())}%;\n `}\n`;\n\nexport default ColStyleWrap;\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport ColStyleWrap from './style/col';\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\n return (\n <ColStyleWrap className={cls} {...other} fixed={fixed} span={span} grow={grow} align={align}>\n {props.children}\n </ColStyleWrap>\n );\n}\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions } from '@uiw/utils';\nimport { RowProps } from 'src/Row';\n\n// @justifyContentProps: flex-start flex-end center space-between space-around space-evenly;\n\ninterface RowStyleWrapProps extends ThemeVariantValueOptions, Pick<RowProps, 'align' | 'justify'> {}\n\nconst alignType = { top: 'flex-start', middle: 'center', bottom: 'flex-end', baseline: 'baseline' };\n\nconst RowStyleWrap = styled.div<RowStyleWrapProps>`\n box-sizing: border-box;\n display: flex;\n flex: 0 1 auto;\n flex-direction: row;\n flex-wrap: wrap;\n\n ${(props) =>\n props.align &&\n css`\n align-items: ${alignType[props.align]};\n `}\n\n ${(props) =>\n props.justify &&\n css`\n justify-content: ${props.justify};\n `}\n`;\n\nexport default RowStyleWrap;\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport RowStyleWrap from './style/row';\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 <RowStyleWrap {...other} className={cls} align={align} justify={justify}>\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 </RowStyleWrap>\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 styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\nimport { SelectProps } from 'src';\n\nconst selectArrow =\n 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDEyIDE2Ij4gIDxwYXRoIGZpbGw9IiMzOTNFNDgiIGQ9Ik0wLjIyMiw1LjYxMyBMNS40NTEsMC4yMjMgQzUuNzU2MjEyMDksLTAuMDc0MzYzMjMzMyA2LjI0Mjc4NzkxLC0wLjA3NDM2MzIzMzMgNi41NDgsMC4yMjMgTDExLjc3OCw1LjYxMyBDMTIuMTgsNi4wMjcgMTIuMDI1LDYuNjY3IDExLjQwNyw2LjY2NyBMMC41OTIsNi42NjcgQy0wLjAyNCw2LjY2NyAtMC4xOCw2LjAyNyAwLjIyMiw1LjYxMyBaIE0wLjU5Miw5LjMzMyBMMTEuNDA3LDkuMzMzIEMxMi4wMjUsOS4zMzMgMTIuMTgsOS45NzMgMTEuNzc3LDEwLjM4NyBMNi41NDcsMTUuNzc3IEM2LjI0MTkxMjU4LDE2LjA3MzcxNDMgNS43NTYwODc0MiwxNi4wNzM3MTQzIDUuNDUxLDE1Ljc3NyBMMC4yMjIsMTAuMzg3IEMtMC4xOCw5Ljk3MyAtMC4wMjQsOS4zMzMgMC41OTIsOS4zMzMgWiIvPjwvc3ZnPg==';\n\nexport const SelectStyleTheme = {\n // 大小内边距设置\n paddingSelectSmall: '3px 25px 3px 7px',\n paddingSelectDefault: '6px 25px 6px 10px',\n paddingSelectLarge: '9px 25px 9px 12px',\n // 大小字体设置\n fontSizeSelectSmall: '12px',\n fontSizeSelectDefault: '14px',\n fontSizeSelectLarge: '16px',\n // 字体颜色\n colorSelectBase: '#182026',\n colorSelectDisabled: '#a5a5a5',\n // 背景颜色\n backgroundColorSelectBase: '#f5f8fa',\n backgroundColorSelectHover: '#ebf1f5',\n backgroundColorSelectDisabled: '#dddddd',\n // 阴影\n boxShadowSelectBase: 'inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);',\n boxShadowSelectDisabled: 'none',\n\n borderRadiusDefault: '3px',\n\n backgroundImageSelectUrl: `url(${selectArrow})`,\n};\n\nexport interface SelectWarpProps extends ThemeVariantValueOptions<typeof SelectStyleTheme>, Omit<SelectProps, 'size'> {\n params: {\n size: 'large' | 'default' | 'small';\n };\n}\n\nexport const SelectStyleWarp = styled.select<SelectWarpProps>`\n display: inline-flex;\n appearance: none;\n cursor: pointer;\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'colorSelectBase')};\n padding: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'paddingSelectDefault')};\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'fontSizeSelectDefault')};\n width: 100%;\n max-width: 100%;\n margin: 0;\n line-height: 18px;\n vertical-align: middle;\n box-sizing: border-box;\n border: none;\n box-shadow: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'boxShadowSelectBase')};\n border-radius: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'borderRadiusDefault')};\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'backgroundColorSelectBase')};\n background-image: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'backgroundImageSelectUrl')},\n linear-gradient(180deg, hsla(0, 0%, 100%, 0.8), hsla(0, 0%, 100%, 0));\n background-repeat: no-repeat, repeat;\n background-position: right 0.7em top 50%, 0 0;\n background-size: 0.62em auto, 100%;\n &:focus {\n outline: none !important;\n }\n &:hover {\n box-shadow: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'boxShadowSelectBase')};\n background-clip: padding-box;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'backgroundColorSelectHover')};\n }\n &:disabled {\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'boxShadowSelectDisabled')};\n background-image: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'backgroundImageSelectUrl')};\n background-size: 0.52em auto, 100%;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'backgroundColorSelectDisabled')};\n opacity: 0.75;\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'colorSelectDisabled')};\n cursor: not-allowed;\n resize: none;\n }\n ${(props) =>\n props.params.size === 'large' &&\n css`\n padding: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'paddingSelectLarge')};\n font-size: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'fontSizeSelectLarge')};\n `}\n ${(props) =>\n props.params.size === 'small' &&\n css`\n padding: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'paddingSelectSmall')};\n font-size: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SelectStyleTheme }, 'fontSizeSelectSmall')};\n `}\n`;\n\n// SelectStyleWarp.defaultProps = {\n// defaultTheme: SelectStyleTheme,\n// };\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\nimport Option from './Option';\nimport Group from './Group';\n\nimport { SelectStyleWarp } from './style';\nexport * from './style';\nexport interface SelectProps extends IProps, Omit<React.SelectHTMLAttributes<HTMLSelectElement>, 'size'> {\n size?: 'large' | 'default' | 'small';\n}\n\nconst InternalSelect = (props: SelectProps, ref?: React.ForwardedRef<HTMLSelectElement>) => {\n const { prefixCls = 'w-select', className, size = 'default', ...other } = props;\n const cls = [prefixCls, className, size ? `${prefixCls}-${size}` : null].filter(Boolean).join(' ').trim();\n return <SelectStyleWarp {...other} ref={ref} className={cls} params={{ size }} />;\n};\n\nconst Select: SelectComponent = React.forwardRef<HTMLSelectElement>(InternalSelect) as unknown as SelectComponent;\ntype SelectComponent = React.FC<React.PropsWithRef<SelectProps>> & {\n Option: typeof Option;\n Group: typeof Group;\n};\n\nSelect.Option = Option;\nSelect.Group = Group;\n\nexport default Select;\n","import { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport styled from 'styled-components';\nimport { TextareaProps } from '../index';\n\nexport const TextareaStyleTheme = {\n // 圆角\n borderRadiusDefault: '3px',\n // 大小设置\n fontSizeSmall: '12px',\n fontSizeDefault: '14px',\n fontSizeLarge: '16px',\n //字体颜色\n colorTextareaDefault: '#393e48',\n colorTextareaDark: '#fff',\n //背景色\n backgroundColorTextareaStyleWarpBase: '#f8f9fa',\n // 阴影\n boxShadowTextarea:\n '0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n boxShadowTextareaFocus: '0 0 0 1px #393e48, 0 0 0 3px rgba(57, 62, 72, 0.17), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n boxShadowTextareaHover: '0 0 0 1px #6e6e6e, 0 0 0 3px rgba(57, 62, 72, 0), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n boxShadowTextareaFocusHover:\n '0 0 0 1px #6e6e6e, 0 0 0 3px rgba(57, 62, 72, 0.17), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n //禁用\n colorTextareaDisabled: '#a5a5a5',\n backgroundTextareaDisabled: '#dddddd',\n};\n\ninterface TextareaStyleWarpProps extends TextareaProps, ThemeVariantValueOptions<typeof TextareaStyleTheme> {}\n\nexport const TextareaStyleWarp = styled.textarea<TextareaStyleWarpProps>`\n position: relative;\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, 'fontSizeDefault')};\n outline: none;\n border: none;\n border-radius: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, 'borderRadiusDefault')};\n box-shadow: ${(props) => getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, 'boxShadowTextarea')};\n padding: 5px 10px;\n vertical-align: middle;\n height: auto;\n min-height: 30px;\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, 'colorTextareaDefault')};\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, 'backgroundColorTextareaStyleWarpBase')};\n font-weight: 400;\n max-width: 100%;\n min-width: 100%;\n width: 100%;\n transition: box-shadow 0.1s cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-box-shadow 0.1s cubic-bezier(0.4, 1, 0.75, 0.9);\n appearance: none;\n &:not(:first-child) {\n padding-left: 30px;\n }\n &:focus {\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, `boxShadowTextareaFocus`)};\n }\n &:hover {\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, `boxShadowTextareaFocus`)};\n }\n &:focus&:hover {\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, `boxShadowTextareaFocusHover`)};\n }\n &:disabled {\n box-shadow: none;\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, `backgroundTextareaDisabled`)};\n opacity: 0.75;\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: TextareaStyleTheme }, `colorTextareaDisabled`)};\n cursor: not-allowed;\n resize: none;\n }\n`;\n\n// TextareaStyleWarp.defaultProps = {\n// defaultTheme: TextareaStyleTheme,\n// };\n","import React from 'react';\nimport { IProps, HTMLTextProps } from '@uiw/utils';\nimport { TextareaStyleWarp } from './style/index';\nexport * from './style';\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 <TextareaStyleWarp className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...restProps} ref={ref}>\n {props.children}\n </TextareaStyleWarp>\n );\n});\n","import styled, { css } from 'styled-components';\nimport { HTMLInputProps, ThemeVariantValueOptions, HTMLDivProps, getThemeVariantValue } from '@uiw/utils';\nimport { InputStyleBase } from '@uiw/react-input';\nimport { SelectStyleWarp } from '@uiw/react-select';\nimport { TextareaStyleWarp } from '@uiw/react-textarea';\n\nexport const FormStyleTheme = {\n colorFormStyleHelpStyleBase: '#c2c2c2',\n colorFormStyleItemErrorBase: '#dc3545',\n boxShadowFormStyleItemErrorBase:\n '0 0 0 1px #dc3545, 0 0 0 3px rgba(220, 53, 69, 0.17), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n};\n\nconst propsTheme = {\n defaultTheme: { ...FormStyleTheme },\n};\n\ninterface FormStyleItemProps extends HTMLInputProps, ThemeVariantValueOptions<typeof FormStyleTheme> {\n hasError?: boolean;\n}\n\nexport const LabelStyle = styled.label`\n line-height: 32px;\n min-height: 32px;\n font-weight: 600;\n font-size: 14px;\n padding-right: 5px;\n label {\n display: inline-block;\n }\n`;\n\nexport interface FormStyleHelpStyleProps extends HTMLDivProps, ThemeVariantValueOptions<typeof FormStyleTheme> {}\n\nexport const FormStyleHelpStyle = styled.div`\n color: ${(props) => getThemeVariantValue({ ...props, ...propsTheme }, 'colorFormStyleHelpStyleBase')};\n font-size: 12px;\n padding-top: 3px;\n`;\nexport const FormStyleRowStyle = styled.div`\n align-items: center;\n display: flex;\n`;\n\nexport const FormStyleItem = styled.div<FormStyleItemProps>`\n margin-bottom: 10px;\n ${(props) =>\n props.hasError &&\n css`\n ${InputStyleBase},${SelectStyleWarp},${TextareaStyleWarp} {\n box-shadow: ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowFormStyleItemErrorBase')};\n &:hover {\n box-shadow: ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowFormStyleItemErrorBase')};\n }\n &:focus,\n &:hover {\n box-shadow: ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowFormStyleItemErrorBase')};\n }\n }\n ${LabelStyle}, ${FormStyleHelpStyle} {\n color: ${() => getThemeVariantValue({ ...props, ...propsTheme }, 'colorFormStyleItemErrorBase')};\n }\n `}\n`;\n","import React from 'react';\nimport { Col, Row } from '@uiw/react-grid';\nimport { IProps, HTMLInputProps } from '@uiw/utils';\nimport { FormFieldsProps } from './Form';\nimport { FormStyleItem, LabelStyle, FormStyleHelpStyle, FormStyleRowStyle } from './style/item';\n\nexport interface FormItemProps<T> extends IProps, HTMLInputProps {\n inline?: boolean;\n hasError?: boolean;\n label?: React.ReactNode;\n required?: boolean;\n labelFor?: string;\n labelClassName?: string;\n help?: React.ReactNode;\n labelStyle?: React.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 required,\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\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 <FormStyleItem hasError={hasError} className={cls} style={style} {...otherProps}>\n <FormStyleRowStyle as={Row}>\n <LabelStyle as={Col} fixed className={labelCls}>\n {required && <label style={{ color: 'red' }}>*</label>}\n <LabelStyle style={labelStyle} htmlFor={labelFor}>\n {label}\n </LabelStyle>\n </LabelStyle>\n <Col className=\"w-form-row\">{this.props.children}</Col>\n </FormStyleRowStyle>\n {help && (\n <FormStyleRowStyle as={Row}>\n <FormStyleHelpStyle as={Col} className=\"w-form-help\">\n {help}\n </FormStyleHelpStyle>\n </FormStyleRowStyle>\n )}\n </FormStyleItem>\n );\n }\n return (\n <FormStyleItem hasError={hasError} className={cls} style={style} {...otherProps}>\n {label && (\n <React.Fragment>\n {required && <label style={{ color: 'red' }}>*</label>}\n <LabelStyle className={labelCls} style={labelStyle} htmlFor={labelFor}>\n {label}\n </LabelStyle>\n </React.Fragment>\n )}\n <Col className=\"w-form-row\">{this.props.children}</Col>\n {help && <FormStyleHelpStyle className=\"w-form-help\">{help}</FormStyleHelpStyle>}\n </FormStyleItem>\n );\n }\n}\n","import styled from 'styled-components';\nimport { ThemeVariantValueOptions } from '@uiw/utils';\n\nexport interface FormStyleProps extends ThemeVariantValueOptions {}\n\nexport const FormStyleWarp = styled.form<FormStyleProps>``;\n\nexport const FormStyleFieldset = styled.fieldset`\n margin: 0;\n padding: 0;\n border-width: 0;\n`;\n","import React, { useState, useImperativeHandle, useMemo } from 'react';\nimport { IProps } from '@uiw/utils';\nimport FormItem, { FormItemProps } from './FormItem';\nimport { FormStyleWarp, FormStyleFieldset } from './style';\nexport * from './style/item';\nexport * from './style';\n\nexport interface FormProps<T>\n extends IProps,\n Omit<React.FormHTMLAttributes<HTMLFormElement>, 'onChange' | 'onSubmit' | 'children'> {\n prefixCls?: string;\n fields?: Record<string, FormFieldsProps<T>>;\n onSubmit?: (state: FormSubmitProps, event: React.FormEvent) => any;\n afterSubmit?: (result: FormAfterSubmitProps) => any;\n onChange?: (state: FormState) => void;\n onSubmitError?: (evn: any) => any;\n resetOnSubmit?: boolean;\n children?: JSX.Element | ((handle: FormChildrenProps) => JSX.Element);\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 Omit<FormItemProps<T>, 'children'> {\n name?: string;\n children?: JSX.Element | ((handle: FormChildrenProps) => JSX.Element);\n help?: React.ReactNode;\n labelFor?: string;\n inline?: boolean;\n checked?: boolean;\n initialValue?: string | number | T;\n required?: boolean;\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 onChange?: (env: React.BaseSyntheticEvent<HTMLInputElement>, list?: string[]) => void;\n onSubmit?: (env: React.FormEvent) => void;\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 | boolean;\n checked?: boolean;\n onChange?: (env: React.BaseSyntheticEvent<HTMLInputElement>, list?: string[]) => void;\n};\n\nexport type FormRefType = Record<\n 'onSubmit' | 'resetForm' | 'getFieldValues' | 'setFields' | 'getError' | 'setFieldValue',\n Function\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] = Array.isArray(initialValue) ? [...initialValue] : 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>(props: FormProps<T>, ref: React.ForwardedRef<FormRefType | undefined>) {\n const {\n prefixCls = 'w-form',\n className,\n fields,\n children,\n resetOnSubmit,\n onSubmitError,\n onChange,\n onSubmit,\n afterSubmit,\n ...others\n } = props;\n const initData = useMemo(\n () =>\n newFormState(fields, ({ initialValue }) => {\n initialValue = newInitialValue(initialValue);\n return { initialValue, currentValue: initialValue };\n }),\n [],\n );\n const [data, setData] = useState<FormState>(initData);\n\n useImperativeHandle(\n ref,\n () => ({\n onSubmit: handleSubmit,\n resetForm: handleReset,\n getFieldValues: () => data.current,\n getError: () => data.errors,\n setFields: setFields,\n setFieldValue: setFieldValue,\n }),\n [data],\n );\n\n const formUnits: FormChildrenProps['fields'] = {};\n for (const name in fields) {\n const itemProps = fields[name];\n if (!itemProps) continue;\n const error = data.errors[name];\n if (typeof itemProps.initialValue === 'boolean') {\n itemProps.checked = itemProps.initialValue;\n }\n const childField: any = controlField({ ...itemProps, name });\n const help = error || itemProps.help;\n const labelFor = itemProps.labelFor;\n formUnits[name] = (\n <FormItem\n {...itemProps}\n key={name}\n children={childField}\n help={help}\n labelFor={labelFor}\n name={name}\n hasError={!!error}\n />\n );\n }\n\n function setFields(fields: FormState['current']) {\n const tempData = { ...data, current: fields };\n setData(tempData);\n }\n\n function setFieldValue<V>(fieldName: string, value: V) {\n const tempData = { ...data, current: { ...data.current, [fieldName]: value } };\n setData(tempData);\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 afterSubmit && afterSubmit({ state: data, response, reset: handleReset });\n };\n try {\n const afterSubmitPromise = onSubmit ? onSubmit({ initial, current }, e) : undefined;\n if (afterSubmitPromise && 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 let { initial } = data;\n const initials = { ...initial };\n Object.entries(initials).map(([key, value]) => {\n if (Array.isArray(value)) {\n initials[key] = [...value];\n }\n });\n setData({ ...data, initial, current: initials, 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 // console.log('type', element)\n if (type === 'checkbox' || type === 'switch' || typeof props.value === 'boolean') {\n props.checked = !!props.value;\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\n return (\n <FormStyleWarp\n {...others}\n className={[prefixCls, className].filter(Boolean).join(' ').trim()}\n onSubmit={handleSubmit}\n >\n <FormStyleFieldset {...{ 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 </FormStyleFieldset>\n </FormStyleWarp>\n );\n}\n\nexport default React.forwardRef<FormRefType | undefined, FormProps<{}>>(Form);\n","import Form from './Form';\nexport * from './Form';\nexport * from './FormItem';\nexport { default as FormItem } from './FormItem';\nexport * from './style';\nexport default Form;\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\nimport { ListItemProps, ListProps } from 'src';\n\nexport const ListStyleTheme = {\n fontSizeSmall: '12px',\n fontSizeDefault: '14px',\n fontSizeLarge: '16px',\n lineHeightDefault: 1.5,\n\n colorListBase: '#52575c',\n backgroundColorListBase: '#fff',\n boxShadowListActive: 'rgba(0, 0, 0, 0.2)',\n borderColorListActive: 'rgba(0, 0, 0, 0.2)',\n colorListBorder: '#e9e9e9',\n backgroundColorListStriped: '#f8f8f9',\n backgroundColorListBordered: '#e8e8e8',\n\n colorListItemDisabled: '#a3a6a9',\n backgroundListItemActive: '#f8f8f9',\n colorListItemActive: '#007bff',\n backgroundListItemNotDisabledHover: '#f8f8f9',\n};\nconst propsTheme = {\n defaultTheme: { ...ListStyleTheme },\n};\nexport interface ListStyleWarp\n extends ThemeVariantValueOptions<typeof ListStyleTheme>,\n Pick<ListProps<any>, 'striped' | 'noHover' | 'active' | 'bordered' | 'size'> {}\n\nexport interface ListStyleItemWarpProps\n extends ThemeVariantValueOptions<typeof ListStyleTheme>,\n Pick<ListItemProps<any>, 'disabled' | 'active'> {}\n\nexport const ListStyleItemMain = styled.div`\n display: block;\n flex: 1;\n`;\nexport const ListStyleItemExtra = styled.div`\n margin-left: 40px;\n`;\n\nexport const ListStyleItemWarp = styled.div<ListStyleItemWarpProps>`\n ${(props) => css`\n display: flex;\n align-items: center;\n\n ${props.disabled &&\n css`\n cursor: not-allowed;\n text-decoration: none;\n pointer-events: none;\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorListItemDisabled')};\n `}\n\n ${props.active &&\n css`\n background: ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundListItemActive')};\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorListItemActive')};\n `}\n\n ${props.disabled &&\n css`\n display: block;\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorListItemDisabled')} !important; //#;\n `}\n\n :hover {\n ${!props.disabled &&\n css`\n background: ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundListItemNotDisabledHover')};\n `}\n }\n `}\n`;\n\nconst active = css`\n ${(props) => css`\n box-shadow: 0 1px 6px ${getThemeVariantValue({ ...props, ...propsTheme }, 'boxShadowListActive')};\n border-color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'borderColorListActive')};\n `}\n`;\n\nexport const ListStyleHeader = styled.div``;\nexport const ListStyleFooter = styled.div``;\n\nexport const ListStyleWarp = styled.div<ListStyleWarp>`\n ${(props) => css`\n font-size: ${getThemeVariantValue({ ...props, ...propsTheme }, 'fontSizeDefault')};\n line-height: ${getThemeVariantValue({ ...props, ...propsTheme }, 'lineHeightDefault')};\n color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorListBase')};\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n list-style: none;\n position: relative;\n background-color: ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorListBase')};\n transition: all 0.3s;\n &:hover {\n ${!props.noHover && active}\n }\n ${props.active && active}\n\n ${props.bordered &&\n css`\n border: 1px solid ${getThemeVariantValue({ ...props, ...propsTheme }, 'colorListBorder')};\n border-radius: 4px;\n `}\n\n ${ListStyleItemWarp} {\n :last-child {\n ${props.bordered &&\n css`\n border-bottom: 0;\n border-radius: 0 0 14px 4px;\n `}\n }\n\n :nth-of-type(2n) {\n ${props.striped &&\n css`\n background: ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorListStriped')};\n `}\n }\n }\n\n ${ListStyleItemWarp},${ListStyleHeader} {\n ${props.bordered &&\n css`\n border-bottom: 1px solid ${getThemeVariantValue({ ...props, ...propsTheme }, 'backgroundColorListBordered')};\n `}\n }\n\n ${ListStyleItemWarp},${ListStyleHeader},${ListStyleFooter} {\n padding: 12px 18px;\n ${props.size === 'small' &&\n css`\n padding: 18px 16px;\n `}\n ${props.size === 'large' &&\n css`\n padding: 16px 24px;\n `}\n }\n `}\n`;\nexport default ListStyleWarp;\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\nimport { ListStyleItemExtra, ListStyleItemMain, ListStyleItemWarp } from './style';\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\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 ListStyleItemWarp,\n {\n ...resetProps,\n className: cls,\n as: TagName,\n ref,\n disabled: props.disabled,\n active,\n } as any,\n !extra || resetProps.href ? (\n children\n ) : (\n <Fragment>\n <ListStyleItemMain className={`${prefixCls}-main`}>{children}</ListStyleItemMain>\n <ListStyleItemExtra className={`${prefixCls}-extra`}>{extra}</ListStyleItemExtra>\n </Fragment>\n ),\n );\n },\n);\n\nListItem.displayName = 'List.Item';\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { ListItem } from './Item';\nimport ListWarp, { ListStyleFooter, ListStyleHeader } from './style';\nexport * from './Item';\nexport * from './style';\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,\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 && 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 <ListWarp\n className={classString}\n {...resetProps}\n ref={ref}\n striped={striped}\n noHover={noHover}\n active={active}\n bordered={bordered}\n size={size}\n >\n {header && <ListStyleHeader className={`${prefixCls}-header`}>{header}</ListStyleHeader>}\n {childrenList}\n {footer && <ListStyleFooter className={`${prefixCls}-footer`}>{footer}</ListStyleFooter>}\n </ListWarp>\n );\n}\n\ntype ListComponent = React.FC<React.PropsWithRef<ListProps<any>>> & { Item: typeof ListItem };\nconst List: ListComponent = React.forwardRef<HTMLDivElement>(InternalList) as unknown as ListComponent;\nList.Item = ListItem;\n\nexport default List;\n","import styled, { css, keyframes } from 'styled-components';\nimport { ThemeVariantValueOptions } from '@uiw/utils';\nimport React from 'react';\n\nconst loaderRotate = keyframes`\nto {\n transform: rotate(1turn);\n }\n`;\n\nconst loaderDash = keyframes`\n 0% {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: 0;\n }\n\n 50% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -35;\n }\n\n to {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -124;\n }\n`;\n\nconst loaderColor = keyframes`\n 0%,\n to {\n stroke: currentColor;\n }\n 80%,\n 90% {\n stroke: currentColor;\n }\n`;\n\nexport interface LoaderStyleSvgProps extends React.SVGProps<SVGSVGElement>, ThemeVariantValueOptions {\n size?: 'small' | 'default' | 'large';\n}\nexport const LoaderStyleSvg = styled.svg<LoaderStyleSvgProps>`\n height: 100%;\n width: 100%;\n animation: ${loaderRotate} 2s linear infinite;\n transform-origin: center center;\n fill: currentcolor;\n vertical-align: middle;\n circle {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: 0;\n animation: ${loaderDash} 1.5s ease-in-out infinite, ${loaderColor} 6s ease-in-out infinite;\n stroke-linecap: round;\n }\n ${(props) =>\n props.size === 'large' &&\n css`\n & {\n width: 30px;\n height: 30px;\n circle {\n stroke-width: 3px;\n }\n }\n `}\n ${(props) =>\n props.size === 'default' &&\n css`\n & {\n width: 20px;\n height: 20px;\n }\n `}\n ${(props) =>\n props.size === 'small' &&\n css`\n & {\n width: 14px;\n height: 14px;\n }\n `}\n`;\n\nexport interface LoaderStyleTipsProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions {\n fullscreen?: boolean;\n}\n\nexport const LoaderStyleTips = styled.div<LoaderStyleTipsProps>`\n color: #2d8cf0;\n text-align: center;\n position: relative;\n height: 100%;\n width: 100%;\n z-index: 4;\n font-weight: 400;\n &:before {\n content: ' ';\n display: inline-block;\n height: 100%;\n width: 0.1px;\n vertical-align: middle;\n }\n &:not(:last-child) {\n position: absolute;\n }\n ${(props) =>\n props.fullscreen &&\n css`\n & {\n position: fixed;\n top: 0px;\n right: 0px;\n bottom: 0px;\n left: 0px;\n z-index: 99999;\n }\n `}\n`;\n\nexport interface LoaderStyleTipsNestedProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions {}\n\nexport const LoaderStyleTipsNested = styled.div<LoaderStyleTipsNestedProps>`\n vertical-align: middle;\n display: inline-block;\n`;\n\nexport interface LoaderStyleTipsNestedTextProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions {\n vertical?: boolean;\n}\n\nexport const LoaderStyleTipsNestedText = styled.div<LoaderStyleTipsNestedTextProps>`\n display: inline-block;\n margin-left: 5px;\n vertical-align: middle;\n ${(props) =>\n props.vertical &&\n css`\n & {\n display: block;\n margin-left: 0;\n margin-top: 5px;\n }\n `}\n`;\n\nexport interface LoaderStyleWarpProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions {}\nexport const LoaderStyleWarp = styled.div<LoaderStyleWarpProps>`\n position: relative;\n display: inline-block;\n`;\n\nexport interface LoaderStyleChildProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions {\n load?: boolean;\n}\n\nexport const LoaderStyleChild = styled.div<LoaderStyleChildProps>`\n transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);\n ${(props) =>\n props.load &&\n css`\n & {\n opacity: 0.5;\n filter: blur(0.5px);\n overflow: hidden;\n }\n `}\n`;\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport {\n LoaderStyleSvg,\n LoaderStyleTips,\n LoaderStyleTipsNested,\n LoaderStyleTipsNestedText,\n LoaderStyleWarp,\n LoaderStyleChild,\n} from './style';\nexport * from './style';\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 <LoaderStyleSvg size={size} viewBox=\"25 25 50 50\">\n <circle cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" strokeWidth=\"5\" strokeMiterlimit=\"10\" />\n </LoaderStyleSvg>\n ),\n [],\n );\n\n const tipsView = useMemo(\n () => (\n <LoaderStyleTips\n fullscreen={fullscreen}\n className={[`${prefixCls}-tips`, fullscreen ? `${prefixCls}-fullscreen` : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n style={{ color, backgroundColor: bgColor }}\n >\n <LoaderStyleTipsNested className={`${prefixCls}-tips-nested`}>\n {indicator || indicatorView}\n {tip && (\n <LoaderStyleTipsNestedText\n vertical={vertical}\n className={[`${prefixCls}-text`, vertical ? `${prefixCls}-vertical` : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {tip}\n </LoaderStyleTipsNestedText>\n )}\n </LoaderStyleTipsNested>\n </LoaderStyleTips>\n ),\n [fullscreen, bgColor, prefixCls, vertical, tip],\n );\n return (\n <LoaderStyleWarp className={cls} {...otherProps}>\n {(loading || fullscreen) && tipsView}\n {children &&\n React.cloneElement(\n <LoaderStyleChild load={loading}>{children}</LoaderStyleChild>,\n Object.assign({}, children.props, {\n className: [`${prefixCls}-warp`, loading ? `${prefixCls}-blur` : null].filter(Boolean).join(' ').trim(),\n }),\n )}\n </LoaderStyleWarp>\n );\n};\n","import styled, { css } from 'styled-components';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport Button, { ButtonProps } from '@uiw/react-button';\n\nexport const MessageStyleTheme = {\n colorMessageChildren: 'rgba(0, 0, 0, 0.65)',\n colorMessageTitle: 'rgba(0, 0, 0, 0.85)',\n backgroundMessageSuccess: '#afecbd',\n colorMessageSuccess: '#28a745',\n backgroundMessageWarning: '#fff4d3',\n colorMessageWarning: '#ffc107',\n backgroundMessageInfo: '#bde4ff',\n colorMessageInfo: '#008ef0',\n backgroundMessageError: '#fae3e5',\n colorMessageError: '#dc3545',\n\n colorMessageDescriptionSpanBase: 'rgba(0, 0, 0, 0.65)',\n colorMessageTitleSpanBase: 'rgba(0, 0, 0, 0.85)',\n backgroundColorMessageButtonWarpHover: 'rgba(255, 255, 255, 0.21) !important',\n colorMessageButtonWarpBase: 'rgba(0, 0, 0, 0.38)',\n backgroundColorMessageButtonWarpActive: 'rgba(0, 0, 0, 0.1) !important',\n};\n\ntype ThemeVar = ThemeVariantValueOptions<typeof MessageStyleTheme>;\n\ninterface DivWrapProps extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, ThemeVar {\n params: {\n rounded: boolean | undefined;\n type: 'success' | 'warning' | 'info' | 'error' | undefined;\n children: any;\n showIcon: boolean | undefined;\n title: React.ReactNode;\n };\n}\n\nconst MessageStyleWrap = styled.div<DivWrapProps>`\n padding: 10px 15px;\n position: relative;\n font-size: 14px;\n`;\n// 最外层div\nexport const MessageStyleDivWrap = styled(MessageStyleWrap)<DivWrapProps>`\n margin-top: 10px;\n ${(props) => {\n if (props.params?.showIcon) {\n if (props.params?.children && props.params?.title) {\n return css`\n > ${IconStyleBase} {\n font-size: 24px;\n }\n `;\n }\n if (props.params?.children) {\n return css`\n display: block;\n color: ${getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'colorMessageChildren')};\n `;\n }\n if (props.params?.title) {\n return css`\n display: block;\n color: ${getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'colorMessageTitle')};\n `;\n }\n }\n }}\n ${(props) =>\n props.params?.rounded &&\n css`\n border-radius: 5px;\n `}\n\n ${(props) =>\n props.params?.showIcon &&\n css`\n padding-left: 34px;\n `}\n\n ${(props) => {\n //\n switch (props.params.type) {\n case 'success':\n return css`\n background: ${getThemeVariantValue(\n { ...props, defaultTheme: MessageStyleTheme },\n 'backgroundMessageSuccess',\n )};\n color: ${getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'colorMessageSuccess')};\n `;\n case 'warning':\n return css`\n background: ${getThemeVariantValue(\n { ...props, defaultTheme: MessageStyleTheme },\n 'backgroundMessageWarning',\n )};\n color: ${getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'colorMessageWarning')};\n `;\n case 'info':\n return css`\n background: ${getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'backgroundMessageInfo')};\n color: ${getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'colorMessageInfo')};\n `;\n case 'error':\n return css`\n background: ${getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'backgroundMessageError')};\n color: ${getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'colorMessageError')};\n `;\n default:\n return css``;\n }\n }}\n > ${IconStyleBase} {\n top: 14px;\n left: 14px;\n position: absolute;\n }\n /* CSSTransition */\n &.w-message-enter {\n transform: scaleY(0.5);\n opacity: 0;\n }\n &.w-message-enter-active {\n opacity: 1;\n transform: scaleY(1);\n transition: transform 300ms ease, opacity 300ms ease;\n }\n &.w-message-exit {\n opacity: 1;\n transform: scaleY(1);\n transition: transform 300ms ease, opacity 300ms ease;\n }\n &.w-message-exit-active {\n transform: scaleY(0.5);\n opacity: 0;\n }\n`;\n\ninterface spanPeops extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, ThemeVar {\n params: {\n children: React.ReactNode;\n showIcon: boolean | undefined;\n title: React.ReactNode;\n };\n}\n// 原始span\nconst MessageStyleSpanWrap = styled.span<spanPeops>`\n display: block;\n`;\n// 详情description\nexport const MessageStyleDescriptionSpan = styled(MessageStyleSpanWrap)<spanPeops>`\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'colorMessageDescriptionSpanBase')};\n ${(props) =>\n props.params.showIcon &&\n props.params.title &&\n props.params.children &&\n css`\n padding-left: 16px;\n `}\n`;\n// 标题title\nexport const MessageStyleTitleSpan = styled(MessageStyleDescriptionSpan)<spanPeops>`\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'colorMessageTitleSpanBase')};\n ${(props) =>\n props.params.showIcon &&\n props.params.title &&\n props.params.children &&\n css`\n font-size: 16px;\n `}\n`;\n\ninterface messageButtonProps extends ButtonProps, ThemeVar {}\n\nexport const MessageStyleButtonWarp = styled(Button)<messageButtonProps>`\n position: absolute;\n right: 10px;\n top: 10px;\n padding: 2px;\n min-width: 16px;\n min-height: 16px;\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'colorMessageButtonWarpBase')};\n &:hover {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'backgroundColorMessageButtonWarpHover')};\n }\n &:active {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: MessageStyleTheme }, 'backgroundColorMessageButtonWarpActive')};\n }\n`;\n\n// MessageStyleDivWrap.defaultProps = {\n// defaultTheme: MessageStyleTheme,\n// };\n\n// MessageStyleButtonWarp.defaultProps = {\n// defaultTheme: MessageStyleTheme,\n// };\n\n// MessageStyleDescriptionSpan.defaultProps = {\n// defaultTheme: MessageStyleTheme,\n// };\n","import React from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { CircleCheck } from '@uiw/icons/lib/CircleCheck';\nimport { Close } from '@uiw/icons/lib/Close';\nimport { Warning } from '@uiw/icons/lib/Warning';\nimport { Information } from '@uiw/icons/lib/Information';\nimport { CircleClose } from '@uiw/icons/lib/CircleClose';\nimport {\n MessageStyleDivWrap,\n MessageStyleTitleSpan,\n MessageStyleDescriptionSpan,\n MessageStyleButtonWarp,\n} from './style';\nexport * from './style';\nexport interface MessageProps extends IProps, Omit<HTMLDivProps, 'title'> {\n title?: React.ReactNode;\n icon?: React.ReactNode;\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 base: any = this.props.icon;\n if (!base && showIcon) {\n let fill;\n switch (type) {\n case 'success':\n fill = '#28a745';\n base = <CircleCheck />;\n break;\n case 'warning':\n fill = '#ffc107';\n base = <Warning />;\n break;\n case 'info':\n fill = '#008ef0';\n base = <Information />;\n break;\n case 'error':\n fill = '#dc3545';\n base = <CircleClose />;\n break;\n default:\n break;\n }\n return <IconStyleBase style={{ color: fill }}>{base}</IconStyleBase>;\n }\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\n const Child = (\n <MessageStyleDivWrap params={{ rounded, type, title, children, showIcon }} className={cls} {...elementProps}>\n {isCloseButtonShown && (\n <MessageStyleButtonWarp\n basic\n onClick={this.handleClosed}\n icon={<Close style={{ fill: 'rgba(0, 0, 0, 0.38)' }} />}\n type=\"light\"\n />\n )}\n {showIcon && (icon ? icon : this.renderIcon())}\n <MessageStyleTitleSpan params={{ showIcon, title, children }} className={`${prefixCls}-title`}>\n {title}\n </MessageStyleTitleSpan>\n <MessageStyleDescriptionSpan params={{ showIcon, title, children }} className={`${prefixCls}-description`}>\n {children}\n </MessageStyleDescriptionSpan>\n </MessageStyleDivWrap>\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 styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport Input, { InputProps } from '@uiw/react-input';\nimport Button, { ButtonProps } from '@uiw/react-button';\n\nexport const MonthPickerTheme = {\n fillMonthPickerStyleCloseButtonBase: '#a5a5a5',\n fillMonthPickerStyleCloseButtonHover: '#393e48',\n};\n\nexport interface MonthPickerStyleCloseButtonProps extends ButtonProps {}\n\nexport const MonthPickerStyleCloseButton = styled(Button)``;\n\nexport interface MonthPickerStylePopoverBaseProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions<Partial<typeof MonthPickerTheme>> {}\n\nexport const MonthPickerStylePopoverBase = styled.div<MonthPickerStylePopoverBaseProps>`\n padding: 5px;\n min-width: 192px;\n max-width: 192px;\n font-size: 14px;\n line-height: 21px;\n`;\n\nexport interface MonthPickerStyleInputStyleBaseProps\n extends InputProps,\n ThemeVariantValueOptions<Partial<typeof MonthPickerTheme>> {}\n\nexport const MonthPickerStyleInputStyleBase = styled(Input)<MonthPickerStyleInputStyleBaseProps>`\n display: inline-block;\n & ${MonthPickerStyleCloseButton} {\n min-height: initial;\n color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: MonthPickerTheme },\n 'fillMonthPickerStyleCloseButtonBase',\n )} !important;\n cursor: pointer;\n &:hover {\n color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: MonthPickerTheme },\n 'fillMonthPickerStyleCloseButtonHover',\n )} !important;\n }\n &:active,\n &:hover {\n background-color: transparent !important;\n }\n }\n ${(props) =>\n props.disabled &&\n css`\n & ${MonthPickerStyleCloseButton} {\n display: none !important;\n }\n `}\n`;\n// MonthPickerStyleInputStyleBase.defaultProps = {\n// defaultTheme: MonthPickerTheme,\n// };\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { InputProps } from '@uiw/react-input';\nimport Popover, { PopoverProps } from '@uiw/react-popover';\nimport { IProps } from '@uiw/utils';\nimport formatter from '@uiw/formatter';\nimport { DatePickerMonth, DatePickerYear, DatePickerCaption, DatePickerCaptionProps } from '@uiw/react-date-picker';\nimport { MonthPickerStylePopoverBase, MonthPickerStyleInputStyleBase, MonthPickerStyleCloseButton } from './style';\nexport * from './style';\nimport { Close } from '@uiw/icons/lib/Close';\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 <MonthPickerStyleCloseButton\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 <MonthPickerStylePopoverBase 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 </MonthPickerStylePopoverBase>\n }\n >\n <MonthPickerStyleInputStyleBase\n placeholder=\"请输入日期\"\n readOnly\n {...(inputProps as any)}\n className={[prefixCls, className].filter(Boolean).join(' ').trim()}\n />\n </Popover>\n );\n}\n","import styled, { createGlobalStyle, css } from 'styled-components';\nimport Alert, { AlertProps } from '@uiw/react-alert';\nimport { ModalStyleInner, ModalStyleHeader, ModalStyleBody } from '@uiw/react-modal';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { ButtonStyleBase } from '@uiw/react-button';\nimport { ContentWrap } from '@uiw/react-overlay';\nexport const NotifyStyleBase = styled.div``;\nexport const NotifyGlobalStyle = createGlobalStyle`\n .w-notify-warpper {\n position: fixed;\n padding: 5px;\n z-index: 999;\n &.topLeft {\n top: 0;\n left: 0;\n }\n &.topRight {\n top: 0;\n right: 0;\n }\n &.bottomLeft {\n bottom: 0;\n left: 0;\n }\n &.bottomRight {\n bottom: 0;\n right: 0;\n }\n }\n `;\n\nexport interface NotifyStyleAlertBaseProps extends AlertProps {}\n\nexport const NotifyStyleAlertBase = styled(Alert)`\n position: relative !important;\n z-index: 9999;\n ${ModalStyleInner} {\n ${ModalStyleHeader} {\n > ${IconStyleBase} {\n font-size: 28px !important;\n }\n > ${ButtonStyleBase} {\n min-width: 18px;\n min-height: 18px;\n padding: 5px 5px;\n }\n }\n ${(props) =>\n props.icon &&\n !props.title &&\n css`\n ${ModalStyleHeader} {\n > button {\n top: 12px;\n right: 10px;\n position: absolute;\n }\n }\n ${ModalStyleBody} {\n padding-right: 36px;\n }\n `}\n ${(props) =>\n props.title &&\n css`\n ${ModalStyleHeader} {\n padding-top: 20px;\n > button {\n top: 5px;\n right: 5px;\n position: absolute;\n }\n }\n ${ModalStyleHeader} > h4 {\n padding-left: 40px;\n padding-right: 20px;\n }\n ${ModalStyleBody} {\n padding-left: 60px;\n opacity: 0.75;\n }\n ${!props.icon &&\n css`\n ${ModalStyleHeader} > h4 {\n padding-left: 5px;\n }\n ${ModalStyleBody} {\n padding-left: 25px;\n }\n `}\n `}\n \n ${(props) =>\n !props.title &&\n !props.icon &&\n css`\n & {\n ${ModalStyleBody} {\n padding: 16px;\n }\n }\n `}\n ${(props) =>\n !props.title &&\n css`\n &.${ModalStyleInner} {\n padding-bottom: 0;\n ${ModalStyleHeader} {\n padding-top: 16px;\n > ${IconStyleBase} {\n font-size: 20px !important;\n }\n }\n }\n ${ModalStyleBody} {\n padding: 16px 12px;\n }\n `}\n }\n ${ContentWrap} {\n margin: 5px;\n }\n`;\n","import React from 'react';\nimport { AlertProps } from '@uiw/react-alert';\nimport { IProps } from '@uiw/utils';\nimport { NotificationCreateProps } from './index';\nimport { NotifyStyleAlertBase, NotifyGlobalStyle } from './style';\nexport type Placement = 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';\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 <NotifyGlobalStyle />\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 <NotifyStyleAlertBase\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 { CircleCheck } from '@uiw/icons/lib/CircleCheck';\nimport { Warning } from '@uiw/icons/lib/Warning';\nimport { Information } from '@uiw/icons/lib/Information';\nimport { CircleClose } from '@uiw/icons/lib/CircleClose';\nimport { IconStyleBase } from '@uiw/react-icon';\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 = (\n <IconStyleBase>\n <CircleCheck />\n </IconStyleBase>\n );\n break;\n case 'warning':\n props.icon = (\n <IconStyleBase>\n <Warning />\n </IconStyleBase>\n );\n break;\n case 'info':\n props.icon = (\n <IconStyleBase>\n <Information />\n </IconStyleBase>\n );\n break;\n case 'error':\n props.icon = (\n <IconStyleBase>\n <CircleClose />\n </IconStyleBase>\n );\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 styled, { css } from 'styled-components';\nimport { SelectStyleWarp } from '@uiw/react-select';\nimport { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\n\nexport const PaginationStyleTheme = {\n borderColorPaginationBase: '#d4d4d4',\n backgroundColorPaginationActive: '#ececec',\n backgroundColorPaginationHover: '#f6f6f6',\n backgroundColorPaginationTextBase: '#565656',\n backgroundPaginationTextDisabled: '#d4d4d4',\n backgroundPaginationTextHover: '#2ea3f4',\n boxShadowdisabledPaginationDisabled: 'inset 0 8px 42px -12px rgba(0, 0, 0, 0.2)',\n boxShadowdisabledPaginationActive: 'inset 0 0 0 rgba(0, 0, 0, 0)',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof PaginationStyleTheme>;\n\nexport interface PaginationStyleBaseLIAProps\n extends React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>,\n ThemeVar {\n params?: {\n type?: string;\n isArrow?: boolean;\n size?: 'default' | 'small';\n disabled?: boolean;\n };\n}\n\nexport const PaginationStyleBaseLIA = styled.a<PaginationStyleBaseLIAProps>`\n text-decoration: none;\n color: rgba(0, 0, 0, 0.5);\n transition: none;\n margin: 0 10px;\n display: block;\n ${(props) =>\n props.params?.isArrow &&\n css`\n padding: 0 3px;\n &::after,\n &::before {\n content: '';\n display: block;\n height: 8px;\n width: 2px;\n border-radius: 2px;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: PaginationStyleTheme }, 'backgroundColorPaginationTextBase')};\n transition: all 0.3s;\n }\n &::after {\n margin-top: -4px;\n }\n `}\n\n ${(props) => {\n const { params } = props;\n if (params?.type === 'next' && params.isArrow) {\n return css`\n &::before {\n transform: rotate(-45deg);\n }\n &::after {\n transform: rotate(45deg);\n }\n `;\n }\n if (params?.type === 'prev' && params.isArrow) {\n return css`\n &::after {\n transform: rotate(-45deg);\n }\n &::before {\n transform: rotate(45deg);\n }\n `;\n }\n return css``;\n }}\n\n ${(props) =>\n props.params?.size === 'small' &&\n css`\n &::after,\n &::before {\n margin-left: 6px;\n }\n `}\n\n\n ${(props) =>\n props.params?.disabled &&\n css`\n &::after,\n &::before {\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: PaginationStyleTheme }, 'backgroundPaginationTextDisabled')};\n }\n `}\n`;\n// PaginationStyleBaseLIA.defaultProps = {\n// defaultTheme: PaginationStyleTheme,\n// };\nexport interface PaginationStyleBaseLIProps\n extends React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>,\n ThemeVar {\n params?: {\n disabled?: boolean;\n isOptions?: boolean;\n size?: 'default' | 'small';\n isDivider?: boolean;\n active?: boolean;\n };\n}\n\nexport const PaginationStyleBaseLI = styled.li<PaginationStyleBaseLIProps>`\n height: 28px;\n line-height: 28px;\n vertical-align: middle;\n text-align: center;\n position: relative;\n cursor: pointer;\n display: inline-flex !important;\n transition: background-color 0.2s ease-in, box-shadow 0.2s ease-in;\n margin: 0 !important;\n display: inline-flex;\n align-items: center;\n ${(props) =>\n props.params?.disabled &&\n css`\n & {\n cursor: not-allowed;\n }\n `}\n\n ${(props) =>\n props.params?.size === 'small' &&\n css`\n height: 21px;\n line-height: 21px;\n border-radius: 4px;\n > ${PaginationStyleBaseLIA} {\n margin: 0 3px;\n min-width: 15px;\n }\n ${props.params.active &&\n css`\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: PaginationStyleTheme }, 'backgroundColorPaginationActive')};\n `}\n ${!props.params.active &&\n css`\n &:hover ${PaginationStyleBaseLIA} {\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: PaginationStyleTheme }, 'backgroundPaginationTextHover')};\n }\n `}\n `}\n ${(props) =>\n props.params?.size === 'default' &&\n css`\n border: 1px solid\n ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: PaginationStyleTheme }, 'borderColorPaginationBase')};\n border-left: 0;\n ${!props.params.disabled &&\n !props.params.active &&\n css`\n &:hover {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: PaginationStyleTheme }, 'backgroundColorPaginationHover')};\n }\n `}\n ${!props.params.disabled &&\n css`\n &:active {\n box-shadow: ${() =>\n getThemeVariantValue(\n { ...props, defaultTheme: PaginationStyleTheme },\n 'boxShadowdisabledPaginationDisabled',\n )};\n }\n `}\n &:first-child {\n border-left: 1px solid\n ${() => getThemeVariantValue({ ...props, defaultTheme: PaginationStyleTheme }, 'borderColorPaginationBase')};\n border-radius: 3px 0 0 3px;\n }\n &:last-child {\n border-radius: 0 3px 3px 0;\n }\n ${props.params.active &&\n css`\n background-color: ${() =>\n getThemeVariantValue({ ...props, defaultTheme: PaginationStyleTheme }, 'backgroundColorPaginationActive')};\n &:active {\n box-shadow: ${() =>\n getThemeVariantValue(\n { ...props, defaultTheme: PaginationStyleTheme },\n 'boxshadowdisabledpaginationactive',\n )};\n }\n `}\n `}\n\n ${(props) =>\n props.params?.isOptions &&\n css`\n ${SelectStyleWarp} {\n border: none !important;\n padding-top: 0;\n padding-bottom: 0;\n box-shadow: none !important;\n height: 100%;\n }\n `}\n`;\n\n// PaginationStyleBaseLI.defaultProps = {\n// defaultTheme: PaginationStyleTheme,\n// };\nexport interface PaginationStyleBaseULProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLUListElement>, HTMLUListElement>,\n ThemeVar {\n params?: {\n size?: 'default' | 'small';\n isDivider?: boolean;\n };\n}\n\nexport const PaginationStyleBaseUL = styled.ul<PaginationStyleBaseULProps>`\n padding: 0 !important;\n margin: 0 !important;\n position: relative;\n user-select: none;\n font-size: 12px;\n ${(props) =>\n props.params?.size === 'default' &&\n props.params.isDivider &&\n css`\n ${PaginationStyleBaseLI} + ${PaginationStyleBaseLI} {\n margin-left: 8px !important;\n border: 1px solid\n ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: PaginationStyleTheme }, 'borderColorPaginationBase')};\n }\n ${PaginationStyleBaseLI} {\n border-radius: 4px;\n }\n `}\n`;\n\n// PaginationStyleBaseUL.defaultProps = {\n// defaultTheme: PaginationStyleTheme,\n// };\n","import React, { useEffect, useMemo, useState } from 'react';\nimport Select from '@uiw/react-select';\nimport { IProps, HTMLUlProps } from '@uiw/utils';\nimport { PaginationStyleBaseUL, PaginationStyleBaseLI, PaginationStyleBaseLIA } from './style';\nexport * from './style';\n\nexport interface PaginationProps extends IProps, Omit<HTMLUlProps, 'onChange'> {\n prefixCls?: string;\n alignment?: 'left' | 'center' | 'right';\n size?: 'default' | 'small';\n pageSizeOptions?: number[];\n total?: number;\n pageSize?: number;\n divider?: boolean;\n current?: number;\n onChange?: (current: number, total: number, pageSize: number) => void;\n onShowSizeChange?: (current: 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 pageSizeOptions = [],\n current: currentNumber = 1,\n onChange = () => null,\n onShowSizeChange,\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 const onSizeChange: React.ChangeEventHandler<HTMLSelectElement> = (e) => {\n const sizeCount: number = Number(e.target.value);\n const count = Math.ceil(total / sizeCount);\n const newCurrent: number = current > count ? count : current;\n onShowSizeChange && onShowSizeChange(newCurrent, sizeCount);\n };\n\n return (\n <PaginationStyleBaseUL\n className={cls}\n style={{ ...style, textAlign: alignment }}\n {...other}\n params={{\n isDivider: divider,\n size,\n }}\n >\n {initPageSoure.map((item: PaginationItemSourceData, idx) => {\n // eslint-disable-next-line jsx-a11y/anchor-is-valid\n let label = <PaginationStyleBaseLIA params={{ size }}>{item.label}</PaginationStyleBaseLIA>;\n if (/^(prev|next)$/.test(item.type as string)) {\n // eslint-disable-next-line jsx-a11y/anchor-is-valid\n label = (\n <PaginationStyleBaseLIA\n params={{ type: item.type, isArrow: true, size, disabled: item.disabled }}\n className={`arrow ${item.type}`}\n />\n );\n }\n return (\n <PaginationStyleBaseLI\n params={{\n disabled: item.disabled,\n active: item.active,\n size,\n isDivider: divider,\n }}\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 </PaginationStyleBaseLI>\n );\n })}\n {pageSizeOptions.length > 0 && (\n <PaginationStyleBaseLI params={{ isOptions: true, size }} className={`${prefixCls}-options`}>\n <Select size={size} defaultValue={pageSize} onChange={onSizeChange}>\n {pageSizeOptions.map((item: number, index: number) => (\n <Select.Option value={item} key={index}>\n {item}条/页\n </Select.Option>\n ))}\n </Select>\n </PaginationStyleBaseLI>\n )}\n </PaginationStyleBaseUL>\n );\n}\n","import styled, { css } from 'styled-components';\nimport Input, { InputProps, InputStyleBase } from '@uiw/react-input';\n\n// React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>\nexport const PinCodeStyleDivWrap = styled.div`\n display: flex;\n`;\n\nexport const PinCodeStyleInputWrap = styled(Input)<InputProps>`\n width: 30px;\n & + & {\n margin-left: 8px;\n }\n > ${InputStyleBase} {\n text-align: center;\n padding: 0 !important;\n font-size: 14px;\n font-weight: bold;\n }\n\n ${(props) =>\n props?.size === 'large' &&\n css`\n width: 36px;\n ${InputStyleBase} {\n font-size: 16px;\n }\n `}\n\n ${(props) =>\n props?.size === 'small' &&\n css`\n width: 24px;\n ${InputStyleBase} {\n font-size: 12px;\n }\n `}\n`;\n","import React, { useEffect, useState } from 'react';\nimport { IProps, noop } from '@uiw/utils';\nimport Input, { InputProps } from '@uiw/react-input';\nimport { PinCodeStyleDivWrap, PinCodeStyleInputWrap } from './style';\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 <PinCodeStyleDivWrap 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 <PinCodeStyleInputWrap\n ref={(instance) => {\n if (instance) {\n input[key] = instance;\n }\n }}\n {...inpProps}\n key={key}\n />\n );\n return child;\n })}\n </PinCodeStyleDivWrap>\n );\n}\n\nexport default React.forwardRef<HTMLDivElement, PinCodeProps>(InternalPinCode);\n","import React from 'react';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { Close } from '@uiw/icons/lib/Close';\nimport { Check } from '@uiw/icons/lib/Check';\nimport { CircleClose } from '@uiw/icons/lib/CircleClose';\nimport { CircleCheck } from '@uiw/icons/lib/CircleCheck';\n\nconst Icons = {\n close: <Close />,\n check: <Check />,\n 'circle-close': <CircleClose />,\n 'circle-check': <CircleCheck />,\n};\n\nexport type IconsType = keyof typeof Icons;\n\nexport function IconProgress<T>(props: { type: IconsType }): JSX.Element {\n const Icon = Icons[props.type];\n return <IconStyleBase>{Icon}</IconStyleBase>;\n}\n","import styled, { css, keyframes } from 'styled-components';\nimport { getThemeVariantValue, HTMLSpanProps, HTMLDivProps, ThemeVariantValueOptions } from '@uiw/utils';\nimport { Status } from '..';\nimport React from 'react';\n\nexport const ProgressStyleTheme = {\n fontSizeSmall: '12px',\n fontSizeDefault: '14px',\n fontSizeLarge: '16px',\n\n strokeProgressStylePathSuccess: '#28a745',\n strokeProgressStylePathException: '#dc3545',\n strokeProgressStylePath: '#20a0ff',\n strokeProgressStylePathTrail: '#e5e9f2',\n\n colorProgresTextSuccess: '#28a745',\n colorProgresTextException: '#dc3545',\n colorProgresText: '#48576a',\n\n backgroundColorProgressStyleBgSuccess: '#28a745',\n backgroundColorProgressStyleBgException: '#dc3545',\n backgroundColorProgressStyleBg: '#108ee9',\n\n backgroundColorProgressStyleInner: '#e5e9f2',\n\n backgroundProgressStyleBgActiveBefore: '#fff',\n backgroundImageProgressStyleBgActive:\n 'linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%,transparent 25%,transparent 50%,rgba(255, 255, 255, 0.15) 50%,rgba(255, 255, 255, 0.15) 75%,transparent 75%,transparent)',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof ProgressStyleTheme>;\n\nconst ProgressStyleBarStripes = keyframes`\n from {\n background-position: 0 0;\n }\n to {\n background-position: 24px 0;\n }\n`;\n\nconst progressActive = keyframes`\n 0% {\n opacity: 0.1;\n width: 0;\n }\n 20% {\n opacity: 0.5;\n width: 0;\n }\n 100% {\n opacity: 0;\n width: 100%;\n }\n`;\n\nexport interface ProgressStyleWarpProps extends HTMLDivProps, ThemeVar {\n isLine?: Boolean;\n}\n\nexport const ProgressStyleWarp = styled.div<ProgressStyleWarpProps>`\n position: relative;\n line-height: 1;\n display: inline-block;\n ${(props) =>\n props.isLine &&\n css`\n & {\n width: 100%;\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'fontSizeSmall')};\n }\n `}\n`;\n// ProgressStyleWarp.defaultProps = { defaultTheme: ProgressStyleTheme };\n\nexport interface ProgressStyleTextProps extends HTMLSpanProps, ThemeVar {\n status?: Status;\n isCircle?: boolean;\n}\n\nexport const ProgressStyleText = styled.span<ProgressStyleTextProps>`\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'colorProgresText')};\n display: inline-block;\n vertical-align: middle;\n margin-left: 10px;\n line-height: 1;\n box-sizing: border-box;\n ${(props) =>\n props.status === 'exception' &&\n css`\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'colorProgresTextException')};\n `}\n ${(props) =>\n props.status === 'success' &&\n css`\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'colorProgresTextSuccess')};\n `}\n ${(props) =>\n props.isCircle &&\n css`\n & {\n position: absolute;\n top: 50%;\n left: 0;\n width: 100%;\n text-align: center;\n margin: 0;\n transform: translate(0, -50%);\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'fontSizeLarge')};\n }\n `}\n`;\n\n// ProgressStyleText.defaultProps = { defaultTheme: ProgressStyleTheme };\n\nexport interface ProgressStyleBarProps extends HTMLDivProps, ThemeVar {\n showText?: boolean;\n style?: React.CSSProperties;\n}\n\nexport const ProgressStyleBar = styled.div<ProgressStyleBarProps>`\n box-sizing: border-box;\n display: inline-block;\n width: 100%;\n vertical-align: middle;\n ${(props) =>\n props.showText &&\n css`\n & {\n margin-right: -50px;\n padding-right: 50px;\n }\n `}\n`;\nexport interface ProgressStyleInnerProps extends HTMLDivProps, ThemeVar {}\n\nexport const ProgressStyleInner = styled.div<ProgressStyleInnerProps>`\n height: 100%;\n width: 100%;\n border-radius: 100px;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'backgroundColorProgressStyleInner')};\n overflow: hidden;\n`;\n// ProgressStyleInner.defaultProps = { defaultTheme: ProgressStyleTheme };\n\nexport interface ProgressStyleBgProps extends HTMLDivProps, ThemeVar {\n status?: Status;\n}\n\nexport const ProgressStyleBg = styled.div<ProgressStyleBgProps>`\n height: 100%;\n border-radius: 100px;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'backgroundColorProgressStyleBg')};\n transition: all 0.4s cubic-bezier(0.08, 0.82, 0.17, 1) 0s;\n position: relative;\n ${(props) =>\n props.status === 'active' &&\n css`\n & {\n background-image: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'backgroundImageProgressStyleBgActive')};\n background-size: 12px 12px;\n animation: ${ProgressStyleBarStripes} 1s linear infinite;\n &:before {\n content: ' ';\n opacity: 0;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: ProgressStyleTheme },\n 'backgroundProgressStyleBgActiveBefore',\n )};\n border-radius: 10px;\n animation: ${progressActive} 2.4s cubic-bezier(0.23, 1, 0.32, 1) infinite;\n }\n }\n `}\n ${(props) =>\n props.status === 'exception' &&\n css`\n & {\n background-color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: ProgressStyleTheme },\n 'backgroundColorProgressStyleBgException',\n )};\n }\n `}\n ${(props) =>\n props.status === 'success' &&\n css`\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'backgroundColorProgressStyleBgSuccess')};\n `}\n`;\n// ProgressStyleBg.defaultProps = { defaultTheme: ProgressStyleTheme };\n\nexport interface ProgressStyleSvgProps extends React.SVGProps<SVGSVGElement>, ThemeVar {}\nexport const ProgressStyleSvg = styled.svg<ProgressStyleSvgProps>``;\n\nexport interface ProgressStylePathProps extends React.SVGProps<SVGPathElement>, ThemeVar {\n isTrail?: boolean;\n isStroke?: boolean;\n status?: Status;\n}\nexport const ProgressStylePath = styled.path<ProgressStylePathProps>`\n ${(props) =>\n props.isTrail &&\n css`\n & {\n stroke: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'strokeProgressStylePathtrail')};\n }\n `}\n ${(props) => {\n if (props.isStroke) {\n switch (props.status) {\n case 'success':\n return css`\n & {\n stroke: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'strokeProgressStylePathSuccess')};\n }\n `;\n case 'exception':\n return css`\n & {\n stroke: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: ProgressStyleTheme },\n 'strokeProgressStylePathException',\n )};\n }\n `;\n default:\n return css`\n & {\n stroke: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: ProgressStyleTheme }, 'strokeProgressStylePath')};\n }\n `;\n }\n }\n return css``;\n }}\n`;\n// ProgressStylePath.defaultProps = { defaultTheme: ProgressStyleTheme };\n","import React from 'react';\nimport { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { IconProgress } from './utils';\nimport { ProgressStyleText, ProgressStyleWarp, ProgressStylePath } from './style';\nexport type Status = 'success' | 'active' | 'exception';\n\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 <ProgressStyleText\n isCircle={true}\n status={status}\n className={`${prefixCls}-text`}\n style={{ fontSize: (width as number) * 0.16 + 6 }}\n >\n {format ? format(percent as number) : percentView}\n </ProgressStyleText>\n );\n }\n return (\n <ProgressStyleWarp className={cls} style={style} {...resetProps}>\n <svg viewBox=\"0 0 100 100\" width={`${width}`}>\n <ProgressStylePath\n status={status}\n isTrail\n ref={this.relativeStrokeWidth.bind(this, 'bg')}\n className={`${prefixCls}-trail`}\n fill=\"none\"\n />\n <ProgressStylePath\n ref={this.relativeStrokeWidth.bind(this, 'track')}\n strokeLinecap=\"round\"\n className={`${prefixCls}-stroke`}\n isStroke\n status={status}\n fill=\"none\"\n />\n </svg>\n {progressInfo}\n </ProgressStyleWarp>\n );\n }\n}\nexport { Circle };\n","import React from 'react';\nimport { IconProgress } from './utils';\nimport { ProgressCircleProps } from './Circle';\nimport { ProgressStyleWarp, ProgressStyleText, ProgressStyleBar, ProgressStyleInner, ProgressStyleBg } from './style';\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 = (\n <ProgressStyleText status={status} className={`${prefixCls}-text`}>\n {format ? format(percent as number) : percentView}\n </ProgressStyleText>\n );\n }\n const percentStyle = {\n width: `${percent}%`,\n height: strokeWidth,\n };\n return (\n <ProgressStyleWarp className={cls} style={style} {...resetProps} isLine={true}>\n <ProgressStyleBar showText={showText} className={`${prefixCls}-bar`}>\n <ProgressStyleInner className={`${prefixCls}-inner`}>\n <ProgressStyleBg status={status} className={`${prefixCls}-bg`} style={percentStyle} />\n </ProgressStyleInner>\n </ProgressStyleBar>\n {progressInfo}\n </ProgressStyleWarp>\n );\n }\n}\nexport { Line };\n","import Circle from './Circle';\nimport Line from './Line';\n\nexport * from './Circle';\nexport * from './Line';\nexport * from './style';\n\nexport default {\n Line,\n Circle,\n};\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\nimport { RateProps } from 'src';\n\nexport const RateBgStyleTheme = {\n colorRateBgBase: '#e9e9e9',\n colorRateActiveBase: '#e9e9e9',\n lineHeightRateActiveDefault: '12px',\n colorRateActiveOn: '#f5a623',\n lineHeightRateDefault: '12px',\n fontSizeRateDefault: '20px',\n};\n\ntype ThemeVar = ThemeVariantValueOptions<typeof RateBgStyleTheme>;\n\nexport interface RateWarpProps extends ThemeVar, Pick<RateProps, 'disabled'> {}\nexport interface RateActiveProps extends ThemeVar, Pick<RateProps, 'disabled'> {\n starOn: boolean;\n hoverOn: boolean;\n halfon: boolean;\n}\nexport interface RateBgProps extends ThemeVar, Pick<RateProps, 'disabled'> {}\n\nexport const RateBg = styled.div<RateBgProps>`\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: RateBgStyleTheme }, 'colorRateBgBase')};\n`;\nexport const RateActive = styled.div<RateActiveProps>`\n z-index: 3;\n line-height: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: RateBgStyleTheme }, 'lineHeightRateActiveDefault')};\n position: absolute;\n transition: color 0.3s, width 0.3s;\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: RateBgStyleTheme }, 'colorRateActiveBase')};\n display: none;\n\n ${(props) =>\n props.hoverOn &&\n css`\n cursor: pointer;\n `}\n ${(props) =>\n (props.starOn || props.hoverOn || props.halfon) &&\n css`\n display: inline-block;\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: RateBgStyleTheme }, 'colorRateActiveOn')};\n `}\n ${(props) =>\n props.halfon &&\n !props.hoverOn &&\n css`\n overflow: hidden;\n width: 50%;\n `}\n`;\n\nexport const RateWarp = styled.div<RateWarpProps>`\n position: relative;\n line-height: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: RateBgStyleTheme }, 'lineHeightRateDefault')};\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: RateBgStyleTheme }, 'fontSizeRateDefault')};\n font-family: auto;\n display: inline-block;\n vertical-align: middle;\n > span + span {\n margin-left: 3px;\n }\n\n > span,\n ${RateBg} {\n cursor: pointer;\n position: relative;\n display: inline-block;\n }\n`;\n\n// RateBg.defaultProps = {\n// defaultTheme: RateBgStyleTheme,\n// };\n\n// RateActive.defaultProps = {\n// defaultTheme: RateBgStyleTheme,\n// };\n\n// RateWarp.defaultProps = {\n// defaultTheme: RateBgStyleTheme,\n// };\n\nexport default RateWarp;\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLDivProps, HTMLSpanProps, noop } from '@uiw/utils';\nimport RateWarp, { RateActive, RateBg } from './style';\nexport * from './style';\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 <RateWarp {...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 starOn = idx + 1 <= value && hoverCount === -1;\n const hoverOn = idx + 1 <= hoverCount;\n const activeCls = [\n `${prefixCls}-hight`,\n starOn ? 'star-on' : null,\n hoverOn ? '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 <RateActive style={{ color }} className={activeCls} starOn={starOn} hoverOn={hoverOn} halfon={halfon}>\n {character}\n </RateActive>\n <RateBg className={`${prefixCls}-bg`}>{character}</RateBg>\n </span>\n );\n })}\n </RateWarp>\n );\n}\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, HTMLSpanProps, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const TagDefaultTheme = {\n fontSizeSmall: '12px',\n backgroundColorTagStyleSvgHover: 'rgba(0, 0, 0, 0.22)',\n backgroundColorTagStyleSvgActive: 'rgba(0, 0, 0, 0.32)',\n backgroundColorTagStyleSvgLightActive: 'rgba(0, 0, 0, 0.15)',\n fillTagStyleSvgLightHover: '#fff',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof TagDefaultTheme>;\n\nexport interface TagStyleSvgProps extends React.SVGProps<SVGSVGElement>, ThemeVar {\n isLight?: boolean;\n}\nexport const TagStyleSvg = styled.svg<TagStyleSvgProps>`\n vertical-align: bottom;\n margin: 0px -3px 0 2px;\n border-radius: 2px;\n position: relative;\n top: -1px;\n fill: currentcolor;\n transition: all 0.3s;\n cursor: pointer;\n &:hover {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TagDefaultTheme }, 'backgroundColorTagStyleSvgHover')};\n }\n &:active {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TagDefaultTheme }, 'backgroundColorTagStyleSvgActive')};\n }\n ${(props) =>\n props.isLight &&\n css`\n & {\n &:hover {\n background-color: currentcolor;\n path {\n fill: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TagDefaultTheme }, 'fillTagStyleSvgLightHover')};\n }\n }\n &:active {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TagDefaultTheme }, 'backgroundColorTagStyleSvgLightActive')};\n }\n }\n `}\n`;\n// TagStyleSvg.defaultProps = { defaultTheme: TagDefaultTheme };\nexport interface TagStyleWarpProps extends HTMLSpanProps, ThemeVar {\n disabled?: boolean;\n}\nexport const TagStyleWarp = styled.span<TagStyleWarpProps>`\n border-radius: 2px;\n display: inline-block;\n user-select: none;\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: TagDefaultTheme }, 'fontSizeSmall')};\n padding: 1px 5px;\n position: relative;\n white-space: nowrap;\n vertical-align: middle;\n & + & {\n margin-left: 5px;\n }\n ${(props) =>\n props.disabled &&\n css`\n & {\n opacity: 0.75;\n cursor: not-allowed;\n }\n `}\n`;\n// TagStyleWarp.defaultProps = { defaultTheme: TagDefaultTheme };\n","import React from 'react';\nimport { IProps, HTMLSpanProps } from '@uiw/utils';\nimport { TagStyleWarp, TagStyleSvg } from './style';\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\n return (\n <TagStyleWarp disabled={disabled} className={cls} style={styl} {...other}>\n {title || children}\n {!disabled && closable ? (\n <TagStyleSvg\n isLight={light}\n onClick={onClose}\n className={`${prefixCls}-close`}\n width=\"15\"\n height=\"15\"\n viewBox=\"0 0 16 16\"\n >\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 </TagStyleSvg>\n ) : null}\n </TagStyleWarp>\n );\n};\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport Input, { InputProps, InputStyleBase } from '@uiw/react-input';\nimport { IconStyleBase, IconStyleBaseProps } from '@uiw/react-icon';\n\nexport const SearchSelectStyleTheme = {\n backgroundSearchSelectDisabled: '#dddddd',\n backgroundSearchSelectBase: '#fff',\n colorSearchSelectDisabled: '#a5a5a5',\n colorSearchSelectBase: '#393e48',\n boxShadowSearchSelectBase:\n ' 0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15),inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n boxShadowSearchSelectFocus:\n '0 0 0 1px #393e48, 0 0 0 3px rgba(57, 62, 72, 0.17), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n boxShadowSearchSelectHover:\n ' 0 0 0 1px #6e6e6e, 0 0 0 3px rgba(57, 62, 72, 0), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n boxShadowSearchSelectFocusHover:\n ' 0 0 0 1px #6e6e6e, 0 0 0 3px rgba(57, 62, 72, 0.17), inset 0 1px 1px rgba(16, 22, 26, 0.2)',\n};\n\nexport interface SearchSelectInputContentsBaseProps\n extends InputProps,\n ThemeVariantValueOptions<typeof SearchSelectStyleTheme> {}\n\nexport const SearchSelectInputContentsBase = styled(Input)<SearchSelectInputContentsBaseProps>`\n ${InputStyleBase} {\n box-shadow: none;\n padding: 0px;\n // min-width: 50px;\n height: 20px;\n &:hover {\n box-shadow: none !important;\n }\n\n &:focus {\n box-shadow: none !important;\n }\n ${(props) =>\n props.disabled &&\n css`\n box-shadow: none;\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SearchSelectStyleTheme }, 'backgroundSearchSelectDisabled')};\n opacity: 0.75;\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SearchSelectStyleTheme }, 'colorSearchSelectDisabled')};\n cursor: not-allowed;\n resize: none;\n `}\n }\n ${(props) =>\n props.size === 'small' &&\n css`\n ${InputStyleBase} {\n height: 20px;\n font-size: 10px;\n padding: 0px;\n }\n `}\n ${(props) =>\n props.size === 'large' &&\n css`\n ${InputStyleBase} {\n height: 26px;\n }\n `}\n`;\n// SearchSelectInputContentsBase.defaultProps = {\n// defaultTheme: SearchSelectStyleTheme,\n// };\n\nexport interface SearchSelectTagContentsBaseProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement | ThemeVariantValueOptions>, HTMLDivElement> {}\nexport const SearchSelectTagContentsBase = styled.div`\n display: flex;\n align-items: center;\n flex-flow: wrap;\n width: 100%;\n box-sizing: border-box;\n`;\n\nexport interface SearchSelectInputStyleBaseProps extends InputProps, ThemeVariantValueOptions {\n params?: {\n showSearch?: boolean;\n };\n}\n\nexport const SearchSelectInputStyleBase = styled(Input)<SearchSelectInputStyleBaseProps>`\n ${(props) =>\n props.params?.showSearch === false &&\n css`\n cursor: pointer;\n `}\n`;\n\nexport interface SearchSelectIconStyleBaseProps extends IconStyleBaseProps {\n params?: {\n singe?: boolean;\n multiple?: boolean;\n spin?: boolean;\n };\n}\nexport const SearchSelectIconStyleBase = styled(IconStyleBase)<SearchSelectIconStyleBaseProps>`\n ${(props) =>\n props.params?.multiple &&\n css`\n left: 3px;\n font-size: 14px;\n cursor: pointer;\n `}\n\n ${(props) =>\n props.params?.singe &&\n css`\n font-size: 14px;\n cursor: pointer;\n left: -3px;\n `}\n`;\n\nexport interface SearchSelectInnerProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVariantValueOptions<typeof SearchSelectStyleTheme> {\n params?: {\n showSearch: boolean;\n size: string;\n len: number;\n };\n}\nexport const SearchSelectInner = styled.div<SearchSelectInnerProps>`\n display: flex;\n justify-content: space-between;\n outline: none;\n border: none;\n align-items: center;\n border-radius: 3px;\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SearchSelectStyleTheme }, 'boxShadowSearchSelectBase')};\n box-sizing: border-box;\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SearchSelectStyleTheme }, 'backgroundSearchSelectBase')};\n margin: 0 !important;\n padding: 5px 10px;\n vertical-align: middle;\n line-height: 30px;\n align-items: center;\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SearchSelectStyleTheme }, 'colorSearchSelectBase')};\n font-weight: 400;\n font-size: inherit;\n transition: box-shadow 0.3s cubic-bezier(0.4, 1, 0.75, 0.9);\n appearance: none;\n\n &:focus {\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SearchSelectStyleTheme }, 'boxShadowSearchSelectFocus')};\n }\n\n &:hover {\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SearchSelectStyleTheme }, 'boxShadowSearchSelectHover')};\n }\n\n &:focus&:hover {\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SearchSelectStyleTheme }, 'boxShadowSearchSelectFocusHover')};\n }\n ${(props) => {\n const { showSearch, size = 'default', len = 0 } = props?.params || {};\n return css`\n cursor: ${showSearch === false && 'pointer'};\n padding: ${size === 'small' && '2px 5px'};\n padding-left: ${len > 0 && returnPaddingLeft(size)};\n `;\n }}\n`;\n\nfunction returnPaddingLeft(size: string) {\n if (size !== 'small') {\n return '6px';\n }\n return null;\n}\n","import React, { useMemo } from 'react';\nimport Dropdown, { DropdownProps } from '@uiw/react-dropdown';\nimport Menu from '@uiw/react-menu';\nimport Tag, { TagProps } from '@uiw/react-tag';\nimport { IProps } from '@uiw/utils';\nimport { useState } from 'react';\nimport { useRef } from 'react';\nimport { useEffect } from 'react';\nimport {\n SearchSelectInputContentsBase,\n SearchSelectTagContentsBase,\n SearchSelectIconStyleBase,\n SearchSelectInputStyleBase,\n SearchSelectInner,\n} from './style';\nimport { Close } from '@uiw/icons/lib/Close';\nimport { Loading } from '@uiw/icons/lib/Loading';\nexport * from './style';\n\nconst ICONTYPE = {\n close: Close,\n loading: Loading,\n};\n\ntype ValueType = string | number;\n\nconst TagSize = { large: 24, default: 18, small: 18 };\n\nexport interface SearchSelectProps extends IProps, DropdownProps {\n mode?: 'single' | 'multiple';\n size?: 'large' | 'default' | 'small';\n maxTagCount?: number;\n valueAmount?: number;\n labelInValue?: boolean;\n loading?: boolean;\n showSearch?: boolean;\n allowClear?: boolean;\n defaultValue?: ValueType | Array<ValueType>;\n tagProps?: TagProps;\n value?: ValueType | Array<ValueType>;\n option: SearchSelectOptionData[];\n onSelect?: (value: ValueType | Array<ValueType> | Array<SearchSelectOptionData>) => void;\n onSearch?: (value: string) => void;\n onChange?: (value: ValueType | Array<ValueType> | Array<SearchSelectOptionData>) => void;\n}\n\nexport interface SearchSelectOptionData {\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 valueAmount,\n size = 'default',\n option = [],\n maxTagCount,\n loading = false,\n labelInValue = false,\n prefixCls = 'w-search-select',\n className,\n mode = 'single',\n style,\n isOpen,\n value,\n defaultValue,\n showSearch = false,\n tagProps = {},\n placeholder,\n onSearch,\n onChange,\n onSelect,\n ...others\n } = props;\n\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n const isMultiple = useMemo(() => mode === 'multiple', [mode]);\n const [innerIsOpen, setInnerIsOpen] = useState(false);\n const [selectedValue, setSelectedValue] = useState<Array<SearchSelectOptionData>>([]);\n const [selectedLabel, setSelectedLabel] = useState<string>('');\n const [selectIconType, setSelectIconType] = useState('');\n const inputRef = useRef<HTMLInputElement>(null);\n const omitTagCount = useMemo(\n () => (maxTagCount && selectedValue.length > maxTagCount ? selectedValue.length - maxTagCount : 0),\n [selectedValue.length],\n );\n const divRef = useRef<HTMLDivElement>(null);\n\n const valueVerify = (value: ValueType | Array<ValueType> | undefined) => {\n return value !== undefined && value !== '';\n };\n\n const valueRef = useRef<Array<SearchSelectOptionData>>();\n valueRef.current = useMemo(() => selectedValue, [selectedValue]);\n\n useEffect(() => {\n if (!valueVerify(value) && valueVerify(defaultValue)) {\n selectedValueChange(defaultValue!);\n }\n }, []);\n\n useEffect(() => {\n if (disabled) {\n setInnerIsOpen(false);\n }\n }, [disabled]);\n\n useEffect(() => {\n if (valueVerify(value)) {\n selectedValueChange(value!);\n } else {\n setSelectedValue([]);\n setSelectedLabel('');\n }\n }, [JSON.stringify(value)]);\n\n const getSelectOption = (option: Array<SearchSelectOptionData>, value: ValueType) => {\n const findResult = option.find((item) => item.value === value);\n return findResult;\n };\n\n function selectedValueChange(\n changeValue: ValueType | Array<ValueType> | SearchSelectOptionData | Array<SearchSelectOptionData>,\n ) {\n let opts: Array<SearchSelectOptionData> = [];\n if (labelInValue) {\n if (Array.isArray(changeValue)) {\n opts = changeValue as Array<SearchSelectOptionData>;\n } else {\n opts.push(changeValue as SearchSelectOptionData);\n }\n } else {\n if (Array.isArray(changeValue)) {\n opts = changeValue.map((v) => getSelectOption(option, v as ValueType)!).filter((m) => !!m);\n } else {\n const findResult = getSelectOption(option, changeValue as ValueType);\n if (findResult) {\n setSelectedLabel(findResult.label);\n opts.push(findResult);\n }\n }\n }\n\n if (!isMultiple && opts.length > 0) setSelectedLabel(opts[0].label || '');\n setSelectedValue(opts.slice(0, valueAmount));\n }\n\n function removeSelectItem(index: number) {\n const selectedValue = valueRef.current as SearchSelectOptionData[];\n selectedValue.splice(index, 1);\n const values = [...selectedValue];\n return values;\n }\n\n const selectedLabelChange = (value: string) => {\n setSelectedLabel(value);\n showSearch && onSearch?.(value);\n };\n\n function handleItemClick(item: SearchSelectOptionData) {\n setInnerIsOpen(false);\n const values = [item];\n setSelectedLabel(item.label);\n const resultValue = item.value;\n handleChange(resultValue, values);\n }\n\n function handleItemsClick(index: number, item?: SearchSelectOptionData) {\n let values: SearchSelectOptionData[] =\n index !== -1\n ? removeSelectItem(index)\n : [...selectedValue.slice(0, valueAmount ? valueAmount - 1 : undefined), item!];\n const resultValue = values.map((item) => item.value);\n handleChange(resultValue, values);\n }\n\n function handleChange(resultValue: ValueType | Array<ValueType>, values: SearchSelectOptionData[]) {\n setSelectedLabel('');\n onSelect && onSelect(resultValue);\n handleSelectChange(resultValue, values); // 支持form组件\n\n value === undefined && setSelectedValue(values); // 如果受控于父组件则不需要内部维护状态\n }\n\n // 渲染icon\n function renderSelectIcon(type: string) {\n let selectIconType;\n if (type === 'enter' && allowClear && (selectedValue.length > 0 || selectedLabel)) {\n selectIconType = 'close';\n } else {\n selectIconType = '';\n }\n setSelectIconType(selectIconType);\n }\n // handle change\n function handleInputChange(value: string) {\n setInnerIsOpen(true);\n setSelectIconType(showSearch && value ? 'loading' : '');\n // setSelectedLabel(value);\n // showSearch && onSearch && onSearch(value);\n selectedLabelChange(value);\n }\n // 清除选中的值\n function resetSelectedValue(e: React.MouseEvent<any, MouseEvent>) {\n e.stopPropagation();\n inputRef.current?.focus();\n setSelectedValue([]);\n handleInputChange('');\n setInnerIsOpen(false);\n handleSelectChange('', []);\n }\n function handleSelectChange(value: ValueType | Array<ValueType>, options: Array<SearchSelectOptionData>) {\n if (!onChange) return;\n\n onChange(labelInValue ? options : value);\n }\n\n function inputKeyDown(e: any) {\n if (isMultiple && selectedValue.length > 0 && !selectedLabel && e.keyCode === 8) {\n handleItemsClick(selectedValue.length - 1);\n }\n }\n\n function onVisibleChange(isOpen: boolean) {\n const selectedValue = valueRef.current as SearchSelectOptionData[];\n setInnerIsOpen(isOpen);\n if (!isOpen) selectedLabelChange('');\n if (!isMultiple && selectedValue.length > 0) {\n setSelectedLabel(selectedValue[0].label);\n }\n }\n\n return (\n <Dropdown\n className={cls}\n trigger=\"click\"\n style={{ marginTop: 5 }}\n overlayStyl={{ width: 100 }}\n disabled={disabled}\n {...others}\n onVisibleChange={onVisibleChange}\n isOpen={innerIsOpen}\n menu={\n <Menu\n bordered\n style={{\n minHeight: 25,\n maxHeight: 280,\n minWidth: style?.width ?? 200,\n overflowY: 'scroll',\n width: style?.width,\n }}\n >\n {!option || option.length === 0 ? (\n <div style={{ color: '#c7c7c7', fontSize: 12 }}>{loading ? '正在加载数据...' : '没有数据'}</div>\n ) : (\n option.map((item) => {\n const index = selectedValue.findIndex((finds) => finds.value === item.value);\n return (\n <Menu.Item\n active={index !== -1}\n key={index}\n text={item.label}\n onClick={() => (isMultiple ? handleItemsClick(index, item) : handleItemClick(item))}\n />\n );\n })\n )}\n </Menu>\n }\n >\n <div\n ref={divRef}\n onMouseOver={() => renderSelectIcon('enter')}\n onMouseLeave={() => renderSelectIcon('leave')}\n onClick={() => inputRef.current?.focus()}\n style={{ width: '100%', maxWidth: 'none', ...style }}\n >\n {isMultiple ? (\n <SearchSelectInner\n params={{ showSearch, size, len: selectedValue ? selectedValue.length : 0 }}\n className={[`${prefixCls}-inner`, `${prefixCls}-search-${showSearch}`, `${prefixCls}-${size}`]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n <SearchSelectTagContentsBase className={`${prefixCls}-tag-content`} style={{}}>\n {isMultiple &&\n selectedValue.slice(0, maxTagCount).map((item, index) => {\n return (\n <Tag\n style={{\n height: TagSize[size],\n margin: 1,\n display: 'flex',\n alignItems: 'center',\n ...tagProps.style,\n }}\n key={index}\n color=\"#393E48\"\n {...tagProps}\n closable\n disabled={disabled}\n onClose={(e) => {\n e.stopPropagation();\n handleItemsClick(index, item);\n }}\n >\n {item.label}\n </Tag>\n );\n })}\n {!!omitTagCount && (\n <Tag\n style={{ height: TagSize[size], margin: 1, display: 'flex', alignItems: 'center' }}\n disabled={true}\n >\n +{omitTagCount} …{' '}\n </Tag>\n )}\n <SearchSelectInputContentsBase\n style={{ flex: 1, width: showSearch ? 0 : 50 }}\n className={`${prefixCls}-input-contents`}\n readOnly={!showSearch}\n size={size}\n ref={inputRef}\n disabled={disabled}\n onKeyDown={inputKeyDown}\n onChange={(e) => handleInputChange(e.target.value)}\n value={selectedLabel}\n placeholder={selectedValue.length ? '' : placeholder}\n />\n </SearchSelectTagContentsBase>\n {!disabled && (selectIconType === 'close' || (selectIconType === 'loading' && loading)) && (\n <SearchSelectIconStyleBase\n className={`${prefixCls}-multiple-colse`}\n as={ICONTYPE[selectIconType]}\n params={{ multiple: true, spin: loading && selectIconType === 'loading' }}\n // spin={loading && selectIconType === 'loading'}\n onClick={resetSelectedValue}\n />\n )}\n </SearchSelectInner>\n ) : (\n <SearchSelectInputStyleBase\n className={`${prefixCls}-search-${showSearch}`}\n readOnly={!showSearch}\n params={{ showSearch }}\n size={size}\n ref={inputRef}\n disabled={disabled}\n onChange={(e) => handleInputChange(e.target.value)}\n value={selectedLabel}\n placeholder={placeholder}\n addonAfter={\n !disabled &&\n (selectIconType === 'close' || (selectIconType === 'loading' && loading)) && (\n <SearchSelectIconStyleBase\n as={ICONTYPE[selectIconType]}\n params={{ singe: true, spin: loading && selectIconType === 'loading' }}\n className={`${prefixCls}-singe-colse`}\n style={{ fill: '#393e48' }}\n // spin={loading && selectIconType === 'loading'}\n onClick={resetSelectedValue}\n />\n )\n }\n />\n )}\n </div>\n </Dropdown>\n );\n}\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, HTMLSpanProps, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const StepsStyleTheme = {\n // 行高默认\n lineHeightDefault: 1.5,\n colorStepsError: ' #f04134',\n backgroundColorStepsError: ' #f04134',\n borderColorStepsError: ' #f04134',\n backgroundColorStepsProcess: ' #2d8cf0',\n borderColorStepsProcess: ' #2d8cf0',\n backgroundStepsStyleItemTail: '#e9e9e9',\n backgroundColorBase: '#fff',\n fontSizeDefault: '14px',\n fontSizeSmall: '12px',\n\n colorStepsStyleItemHeadInner: 'rgba(0, 0, 0, 0.25)',\n borderColorStepsStyleItemHeadInner: 'rgba(0, 0, 0, 0.25)',\n backgroundColorStepsStyleItemHeadInner: 'rgba(0, 0, 0, 0.25)',\n\n colorStepsStyleItemHeadInnerIcon: '#108ee9',\n\n colorStepsStyleItemMainTitle: '#999',\n colorStepsStyleItemMainProcess: ' rgba(0, 0, 0, 0.65)',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof StepsStyleTheme>;\n\nexport interface StepsBaseProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVar {}\nexport interface StepsBaseSpanProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanProps>, HTMLSpanProps>,\n ThemeVar {}\nexport interface StepsBaseIProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>,\n ThemeVar {}\nexport interface StepsStyleWarpProps extends StepsBaseProps {}\n\nexport const StepsStyleWarp = styled.div<StepsStyleWarpProps>`\n font-size: 0;\n width: 100%;\n line-height: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'lineHeightDefault')};\n`;\n// StepsStyleWarp.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport interface StepsStyleItemProps extends StepsBaseProps {\n params?: {\n direction?: 'horizontal' | 'vertical';\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n };\n}\n\nexport const StepsStyleItem = styled.div<StepsStyleItemProps>`\n position: relative;\n vertical-align: top;\n\n ${(props) =>\n (props.params?.direction === 'vertical' &&\n css`\n & {\n display: block;\n }\n `) ||\n css`\n display: inline-block;\n `}\n ${(props) =>\n ['process', 'finish'].includes(props.params?.status || '') &&\n css`\n & {\n [class^='w-icon-'],\n [class*=' w-icon-'] {\n vertical-align: middle;\n position: relative;\n top: -1px;\n }\n }\n `}\n ${(props) =>\n props.params?.status === 'error' &&\n css`\n & i[class^='w-icon-'] {\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsIError')};\n }\n `}\n`;\n// StepsStyleItem.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport interface StepsStyleItemTailProps extends StepsBaseProps {\n params?: {\n dot?: boolean;\n direction?: 'horizontal' | 'vertical';\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n };\n}\n\nexport const StepsStyleItemTail = styled.div<StepsStyleItemTailProps>`\n ${StepsStyleItem}:last-child & {\n display: none;\n text-align: center;\n }\n position: absolute;\n left: 0;\n width: 100%;\n top: 13px;\n padding: 0 10px;\n height: 1px;\n ${(props) =>\n props.params?.direction === 'vertical' &&\n !props.params.dot &&\n css`\n ${StepsStyleWarp} > ${StepsStyleItem} > && {\n height: 100%;\n width: 1px;\n padding: 18px 0;\n left: 13px;\n }\n `}\n ${(props) =>\n props.params?.dot &&\n props.params.direction !== 'vertical' &&\n css`\n & {\n padding: 0;\n width: 100%;\n position: initial;\n height: 2px;\n }\n ${['error', 'process'].includes(props.params.status || '') &&\n css`\n & {\n padding-right: 50%;\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundStepsStyleItemTail')};\n }\n `}\n ${StepsStyleItem}:first-child && {\n padding-left: 50%;\n }\n ${StepsStyleItem}:last-child && {\n display: block;\n padding-right: 50%;\n }\n `}\n ${(props) =>\n props.params?.dot &&\n props.params.direction === 'vertical' &&\n css`\n ${StepsStyleItem}:last-child & {\n display: none;\n }\n & {\n position: absolute;\n height: 100%;\n width: 1px;\n left: 3px;\n padding: 0 0 21px;\n }\n ${props.params.status === 'error' &&\n css`\n & {\n background-color: transparent;\n }\n `}\n `}\n`;\n// StepsStyleItemTail.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport interface StepsStyleItemTailIProps extends StepsBaseIProps {\n params?: {\n dot?: boolean;\n direction?: 'horizontal' | 'vertical';\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n nextError?: boolean;\n };\n}\n\nexport const StepsStyleItemTailI = styled.i<StepsStyleItemTailIProps>`\n display: block;\n width: 100%;\n height: 100%;\n position: relative;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundStepsStyleItemTail')};\n &:after {\n position: absolute;\n content: ' ';\n top: 0;\n width: 0;\n height: 100%;\n transition: all 0.6s;\n }\n ${(props) =>\n props.params?.nextError &&\n css`\n &:after {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorStepsError')};\n width: 100%;\n transition: all 0.6s;\n }\n `}\n ${(props) =>\n props.params?.nextError &&\n props.params.dot &&\n props.params.direction === 'vertical' &&\n css`\n &:after {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorStepsError')};\n }\n `}\n ${(props) => {\n const { params } = props;\n switch (params?.status) {\n case 'error':\n return css`\n ${params.dot &&\n css`\n &:after {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorStepsError')};\n width: 100%;\n }\n ${params.direction === 'vertical' &&\n css`\n &:after {\n background-color: transparent;\n }\n `}\n `}\n `;\n case 'finish':\n return css`\n ${!params.nextError &&\n css`\n &:after {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorStepsProcess')};\n width: 100%;\n }\n `}\n ${params.nextError &&\n params.direction !== 'vertical' &&\n params.dot &&\n css`\n &:after {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorStepsProcess')};\n }\n `}\n `;\n case 'process':\n return css`\n ${params.dot &&\n css`\n &:after {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorStepsProcess')};\n width: 100%;\n }\n `}\n `;\n case 'success':\n return css``;\n case 'wait':\n return css``;\n default:\n return css``;\n }\n }}\n`;\n// StepsStyleItemTailI.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport interface StepsStyleItemHeadProps extends StepsBaseProps {\n params?: {\n dot?: boolean;\n };\n}\n\nexport const StepsStyleItemHead = styled.div<StepsStyleItemHeadProps>`\n position: relative;\n display: inline-block;\n vertical-align: top;\n padding-left: 10px;\n background: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorBase')};\n &:not(:first-child) {\n margin-left: -10px;\n }\n ${(props) =>\n props.params?.dot &&\n css`\n &:not(:first-child) {\n margin-left: 0;\n padding-left: 0;\n text-align: center;\n display: block;\n }\n & {\n background: transparent;\n margin-top: -4px;\n }\n `}\n`;\n// StepsStyleItemHead.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport interface StepsStyleItemHeadInnerProps extends StepsBaseProps {\n params?: {\n dot?: boolean;\n direction?: 'horizontal' | 'vertical';\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n icon?: boolean;\n };\n}\n\nexport const StepsStyleItemHeadInner = styled.div<StepsStyleItemHeadInnerProps>`\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid\n ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'borderColorStepsStyleItemHeadInner')};\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsStyleItemHeadInner')};\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorBase')};\n width: 26px;\n height: 26px;\n line-height: 26px;\n text-align: center;\n border-radius: 26px;\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'fontSizeDefault')};\n margin-right: 8px;\n transition: background-color 0.3s ease, border-color 0.3s ease;\n ${(props) =>\n ['process', 'finish'].includes(props.params?.status || '') &&\n css`\n & {\n border-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'borderColorStepsProcess')};\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorStepsProcess')};\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorBase')};\n }\n `}\n ${(props) =>\n props.params?.status === 'error' &&\n css`\n & {\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsError')};\n border-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'borderColorStepsError')};\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorBase')};\n }\n `}\n\n ${(props) =>\n props.params?.icon &&\n css`\n && {\n background: none;\n border: 0;\n width: 26px;\n height: 26px;\n font-size: 26px;\n }\n `}\n ${(props) =>\n props.params?.dot &&\n css`\n & {\n margin: 0 auto;\n width: 7px;\n height: 7px;\n line-height: 5px;\n border: 0;\n }\n ${props.params.status === 'error' &&\n css`\n & {\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorStepsError')};\n }\n `}\n ${props.params.status === 'wait' &&\n css`\n & {\n border-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'borderColorStepsStyleItemHeadInner')};\n background-color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: StepsStyleTheme },\n 'backgroundColorStepsStyleItemHeadInner',\n )};\n }\n `}\n ${props.params.direction === 'vertical' &&\n css`\n & {\n margin: 0;\n }\n `}\n `}\n`;\n// StepsStyleItemHeadInner.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport interface StepsStyleItemHeadInnerDotProps extends StepsBaseSpanProps {\n params?: {\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n };\n}\n\nexport const StepsStyleItemHeadInnerDot = styled.span<StepsStyleItemHeadInnerDotProps>`\n ${(props) =>\n props.params?.status === 'wait' &&\n css`\n & {\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'borderColorStepsStyleItemHeadInner')};\n }\n `}\n`;\n// StepsStyleItemHeadInnerDot.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport interface StepsStyleItemHeadInnerIconProps extends StepsBaseSpanProps {\n params?: {\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n icon?: boolean;\n };\n}\n\nexport const StepsStyleItemHeadInnerIcon = styled.span<StepsStyleItemHeadInnerIconProps>`\n ${(props) =>\n ['process', 'finish'].includes(props.params?.status || '') &&\n props.params?.icon &&\n css`\n & {\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsStyleItemHeadInnerIcon')};\n }\n `}\n ${(props) =>\n props.params?.status === 'error' &&\n css`\n & {\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsError')};\n }\n `}\n`;\n// StepsStyleItemHeadInnerIcon.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport const StepsStyleItemHeadInnerSvg = styled.svg`\n fill: currentcolor;\n height: 1em;\n width: 1em;\n display: inline-flex;\n align-self: center;\n position: relative;\n transition: color 0.3s;\n box-sizing: inherit;\n`;\n\nexport interface StepsStyleItemMainProps extends StepsBaseProps {\n params?: {\n dot?: boolean;\n direction?: 'horizontal' | 'vertical';\n };\n}\n\nexport const StepsStyleItemMain = styled.div<StepsStyleItemMainProps>`\n position: relative;\n display: inline-block;\n vertical-align: top;\n ${(props) =>\n props.params?.dot &&\n css`\n & {\n display: block;\n text-align: center;\n }\n ${props.params.direction === 'vertical' &&\n css`\n & {\n text-align: left;\n padding-left: 20px;\n padding-bottom: 24px;\n margin-top: -21px;\n }\n `}\n `}\n ${(props) =>\n props.params?.direction === 'vertical' &&\n css`\n padding-bottom: 12px;\n overflow: hidden;\n `}\n`;\n// StepsStyleItemMain.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport interface StepsStyleItemMainTitleProps extends StepsBaseProps {\n params?: {\n dot?: boolean;\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n };\n}\n\nexport const StepsStyleItemMainTitle = styled.div<StepsStyleItemMainTitleProps>`\n padding-right: 10px;\n line-height: 26px;\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'fontSizeDefault')};\n font-weight: 700;\n background: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'backgroundColorBase')};\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsStyleItemMainTitle')};\n display: inline-block;\n ${(props) =>\n props.params?.status === 'process' &&\n css`\n & {\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsStyleItemMainProcess')};\n }\n `}\n ${(props) =>\n props.params?.status === 'error' &&\n css`\n & {\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsError')};\n }\n `}\n ${(props) =>\n props.params?.dot &&\n css`\n & {\n padding-top: 5px;\n }\n `}\n`;\n// StepsStyleItemMainTitle.defaultProps = { defaultTheme: StepsStyleTheme };\n\nexport interface StepsStyleItemMainDescriptionProps extends StepsBaseProps {\n params?: {\n dot?: boolean;\n direction?: 'horizontal' | 'vertical';\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n };\n}\n\nexport const StepsStyleItemMainDescription = styled.div<StepsStyleItemMainDescriptionProps>`\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'fontSizeSmall')};\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsStyleItemMainTitle')};\n max-width: 130px;\n ${(props) =>\n props.params?.status === 'process' &&\n css`\n & {\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsStyleItemMainProcess')};\n }\n `}\n ${(props) =>\n props.params?.status === 'error' &&\n css`\n & {\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: StepsStyleTheme }, 'colorStepsError')};\n }\n `}\n ${(props) =>\n (props.params?.direction === 'vertical' || props.params?.dot) &&\n css`\n & {\n max-width: inherit;\n }\n `}\n`;\n\n// StepsStyleItemMainDescription.defaultProps = { defaultTheme: StepsStyleTheme };\n","import React, { useEffect, useRef, useState } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Step, { StepProps } from './Step';\nimport { StepsStyleWarp } from './style';\nexport interface StepsProps<T> extends IProps, HTMLDivProps {\n status?: StepProps['status'];\n progressDot?: StepProps['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 <StepsStyleWarp 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 direction,\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 childProps.nextError = true;\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 </StepsStyleWarp>\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 { IProps, HTMLDivProps } from '@uiw/utils';\nimport { Check } from '@uiw/icons/lib/Check';\nimport { Close } from '@uiw/icons/lib/Close';\n\nimport {\n StepsStyleItem,\n StepsStyleItemTail,\n StepsStyleItemTailI,\n StepsStyleItemHead,\n StepsStyleItemHeadInner,\n StepsStyleItemMain,\n StepsStyleItemMainTitle,\n StepsStyleItemMainDescription,\n StepsStyleItemHeadInnerDot,\n StepsStyleItemHeadInnerIcon,\n StepsStyleItemHeadInnerSvg,\n} from './style';\nexport interface StepProps extends IProps, Omit<HTMLDivProps, 'title'> {\n nextError?: boolean | undefined;\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?: React.ReactNode;\n direction?: 'horizontal' | 'vertical';\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 direction,\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 = <StepsStyleItemHeadInnerDot params={{ status }} className={`${prefixCls}-dot`} />;\n } else if (icon && typeof icon !== 'string') {\n iconNode = (\n <StepsStyleItemHeadInnerIcon params={{ status, icon: !!icon }} className={`${prefixCls}-icon`}>\n {icon}\n </StepsStyleItemHeadInnerIcon>\n );\n } else if (status === 'finish' || status === 'error') {\n iconNode = <StepsStyleItemHeadInnerSvg as={status === 'finish' ? Check : Close} />;\n } else {\n iconNode = (\n <StepsStyleItemHeadInnerIcon params={{ status, icon: !!icon }} className={`${prefixCls}-icon`}>\n {stepNumber}\n </StepsStyleItemHeadInnerIcon>\n );\n }\n return (\n <StepsStyleItem\n {...restProps}\n params={{\n status,\n direction,\n }}\n className={classString}\n style={stepItemStyle}\n >\n <StepsStyleItemTail\n className={`${prefixCls}-item-tail`}\n params={{ direction, dot: !!progressDot, status: status }}\n style={stepItemDotStyle}\n >\n <StepsStyleItemTailI\n params={{\n direction,\n dot: !!progressDot,\n status: status,\n nextError: props.nextError,\n }}\n style={{ paddingRight: '100%' }}\n />\n </StepsStyleItemTail>\n <StepsStyleItemHead params={{ dot: !!progressDot }} className={`${prefixCls}-item-head`}>\n <StepsStyleItemHeadInner\n params={{\n direction,\n dot: !!progressDot,\n status: status,\n icon: !!icon,\n }}\n className={[`${prefixCls}-item-inner`, !!icon && 'is-icon'].filter(Boolean).join(' ').trim()}\n >\n {iconNode}\n </StepsStyleItemHeadInner>\n </StepsStyleItemHead>\n <StepsStyleItemMain\n params={{\n direction,\n dot: !!progressDot,\n }}\n className={`${prefixCls}-item-main`}\n >\n <StepsStyleItemMainTitle\n params={{\n dot: !!progressDot,\n status: status,\n }}\n className={`${prefixCls}-item-title`}\n >\n {title}\n </StepsStyleItemMainTitle>\n {description && (\n <StepsStyleItemMainDescription\n params={{\n direction,\n dot: !!progressDot,\n status: status,\n }}\n className={`${prefixCls}-item-description`}\n >\n {description}\n </StepsStyleItemMainDescription>\n )}\n </StepsStyleItemMain>\n </StepsStyleItem>\n );\n}\n","import Steps from './Steps';\nexport * from './style';\nexport * from './Steps';\nexport * from './Step';\nexport * from './style';\n\nexport default Steps;\n","import styled, { css } from 'styled-components';\nimport { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\nimport React from 'react';\n\nexport const SliderStyleTheme = {\n fontSizeSmall: '12px',\n backgroundColorSlider: '#e4e8f1',\n backgroundColorSliderStyleBar: '#008ef0',\n backgroundColorSliderStyleHandleDisabled: '#e6e6e6',\n boxShadowSliderStyleHandleDisabled: '0 0 0 1px rgba(16, 22, 26, 0.2), 0 0px 0px rgba(16, 22, 26, 0.2)',\n boxShadowSliderStyleHandleDisabledActive:\n '0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.2), 0px 0px 0px 2px rgba(0, 0, 0, 0.1)',\n backgroundColorSliderStyleHandleDisabledActive: '#d8e1e8',\n boxShadowSliderStyleHandle: '0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.2)',\n backgroundColorSliderStyleHandle: '#f5f8fa',\n backgroundImageSliderStyleHandle: 'linear-gradient(180deg, hsla(0, 0%, 100%, 0.8), hsla(0, 0%, 100%, 0))',\n backgroundColorSliderStyleTooltip: 'rgba(0, 0, 0, 0.75)',\n colorSliderStyleTooltip: '#fff',\n colorSliderStyleMark: 'rgba(0, 0, 0, 0.43)',\n boxShadowSliderStyleDot: '0 0 0 1.6px rgba(16, 22, 26, 0.16)',\n backgroundColorSliderStyleDot: '#fff',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof SliderStyleTheme>;\n\nexport interface SliderBaseProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVar {}\n\nexport interface SliderStyleWarpProps extends SliderBaseProps {\n params?: {\n disabled?: boolean;\n marks?: boolean;\n vertical?: boolean;\n };\n}\n\nexport const SliderStyleWarp = styled.div<SliderStyleWarpProps>`\n width: stretch;\n height: 4px;\n margin: 13px 7px;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'backgroundColorSlider')};\n border-radius: 3px;\n position: relative;\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'fontSizeSmall')};\n cursor: pointer;\n user-select: none;\n vertical-align: middle;\n ${(props) =>\n props.params?.disabled &&\n css`\n {\n & {\n cursor: not-allowed;\n }\n }\n `}\n ${(props) =>\n props.params?.marks &&\n css`\n & {\n margin-bottom: 24px;\n }\n `}\n ${(props) =>\n props.params?.vertical &&\n css`\n height: 100%;\n height: stretch;\n width: 4px;\n margin: 7px 13px;\n `}\n`;\n\n// SliderStyleWarp.defaultProps = { defaultTheme: SliderStyleTheme };\n\nexport interface SliderStyleBarProps extends SliderBaseProps {\n params?: {\n disabled?: boolean;\n vertical?: boolean;\n };\n}\n\nexport const SliderStyleBar = styled.div<SliderStyleBarProps>`\n height: 4px;\n border-radius: 3px;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'backgroundColorSliderStyleBar')};\n position: absolute;\n ${(props) =>\n props.params?.disabled &&\n css`\n & {\n background-color: #bdc2cc;\n }\n `}\n\n ${(props) =>\n props.params?.vertical &&\n css`\n & {\n width: 4px;\n height: initial;\n }\n `}\n`;\n\n// SliderStyleBar.defaultProps = { defaultTheme: SliderStyleTheme };\n\nexport interface SliderStyleHandleProps extends SliderBaseProps {\n params?: {\n disabled?: boolean;\n vertical?: boolean;\n };\n}\nexport const SliderStyleHandle = styled.div<SliderStyleHandleProps>`\n ${(props) =>\n props.params?.disabled &&\n css`\n & {\n background-color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: SliderStyleTheme },\n 'backgroundColorSliderStyleHandleDisabled',\n )};\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'boxShadowSliderStyleHandleDisabled')};\n }\n `}\n left: 0%;\n width: 14px;\n height: 14px;\n position: absolute;\n z-index: 1;\n margin-top: -5px;\n transform: translateX(-50%);\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'boxShadowSliderStyleHandle')};\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'backgroundColorSliderStyleHandle')};\n background-image: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'backgroundImageSliderStyleHandle')};\n border-radius: 50%;\n transition: all 0.3;\n ${(props) =>\n props.params?.disabled &&\n css`\n &:active {\n background-color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: SliderStyleTheme },\n 'backgroundColorSliderStyleHandleDisabledActive',\n )};\n transition: all 0.3;\n box-shadow: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: SliderStyleTheme },\n 'boxShadowSliderStyleHandleDisabledActive',\n )};\n }\n `}\n ${(props) =>\n props.params?.vertical &&\n css`\n & {\n margin-left: 2px;\n }\n `}\n`;\n\n// SliderStyleHandle.defaultProps = { defaultTheme: SliderStyleTheme };\n\nexport interface SliderStyleTooltipProps extends SliderBaseProps {\n params?: {\n disabled?: boolean;\n open?: boolean;\n };\n}\nexport const SliderStyleTooltip = styled.div<SliderStyleTooltipProps>`\n ${(props) =>\n props.params?.disabled &&\n css`\n ${SliderStyleHandle}:hover &,\n ${SliderStyleHandle}:focus &,\n ${SliderStyleHandle}:active & {\n display: inline-block;\n }\n `}\n display: none;\n font-size: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'fontSizeSmall')};\n position: absolute;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'backgroundColorSliderStyleTooltip')};\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'colorSliderStyleTooltip')};\n padding: 0px 4px;\n margin-top: -3px;\n border-radius: 3px;\n transform: translate(-50%, -100%);\n margin-left: 6px;\n ${(props) =>\n props.params?.open &&\n css`\n && {\n display: inline-block;\n }\n `}\n`;\n\n// SliderStyleTooltip.defaultProps = { defaultTheme: SliderStyleTheme };\n\nexport interface SliderStyleDotProps extends SliderBaseProps {\n params?: {\n vertical?: boolean;\n };\n}\nexport const SliderStyleDot = styled.div<SliderStyleDotProps>`\n & > div {\n position: absolute;\n width: 4px;\n height: 4px;\n border-radius: 100%;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'backgroundColorSliderStyleDot')};\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'boxShadowSliderStyleDot')};\n top: 0px;\n transform: translateX(-50%);\n }\n ${(props) =>\n props.params?.vertical &&\n css`\n & > div {\n left: 2px;\n }\n `}\n`;\n\n// SliderStyleDot.defaultProps = { defaultTheme: SliderStyleTheme };\n\nexport interface SliderStyleMarkProps extends SliderBaseProps {\n params?: {\n vertical?: boolean;\n noMarks?: boolean;\n disabled?: boolean;\n };\n}\nexport const SliderStyleMark = styled.div<SliderStyleMarkProps>`\n & > div {\n margin-bottom: -50%;\n margin-left: 3px;\n padding: 0 3px;\n position: absolute;\n display: inline-block;\n vertical-align: middle;\n text-align: center;\n cursor: pointer;\n transform: translate(-50%, 50%);\n color: ${(props) => getThemeVariantValue({ ...props, defaultTheme: SliderStyleTheme }, 'colorSliderStyleMark')};\n }\n ${(props) =>\n props.params?.vertical &&\n css`\n & > div {\n transform: translate(0, -50%);\n padding: 0;\n margin-left: 12px;\n margin-top: 2px;\n }\n `}\n ${(props) =>\n props.params?.noMarks &&\n css`\n & {\n display: none;\n }\n `}\n\n ${(props) =>\n props.params?.disabled &&\n css`\n & > div {\n cursor: not-allowed;\n }\n `}\n`;\n\n// SliderStyleMark.defaultProps = { defaultTheme: SliderStyleTheme };\n","import React from 'react';\nimport { HTMLDivProps } from '@uiw/utils';\nimport { SliderProps, SliderStyleMarks } from './index';\nimport { SliderStyleMark, SliderStyleDot } from './style';\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?: SliderStyleMarks) => React.ReactNode;\n disabled?: boolean;\n}\n\nexport default function Dots(props: TooltipProps) {\n const { prefixCls, data, step, min, vertical, marks, markRender, disabled } = props;\n return (\n <SliderStyleDot params={{ vertical }} className={`${prefixCls}-dots`}>\n {data.map((val, idx) => {\n const stepValue = idx * step + min;\n return (\n <SliderStyleMark\n key={idx}\n style={{\n [vertical ? 'top' : 'left']: `${val}%`,\n }}\n params={{ vertical, noMarks: marks && marks !== true && !marks[stepValue], disabled }}\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 </SliderStyleMark>\n );\n })}\n </SliderStyleDot>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Dots from './Dots';\nimport { SliderStyleWarp, SliderStyleBar, SliderStyleHandle, SliderStyleTooltip } from './style';\nexport * from './style';\n\nexport type SliderStyleMarks = {\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, SliderStyleMarks>;\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] as React.ReactNode;\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 <SliderStyleWarp\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 params={{\n disabled,\n marks: !!marks,\n vertical,\n }}\n >\n <SliderStyleBar\n params={{ disabled, vertical }}\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 <SliderStyleHandle\n params={{ disabled, vertical }}\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 <SliderStyleTooltip\n params={{ disabled, open: tooltip }}\n className={[`${prefixCls}-tooltip`, tooltip ? 'open' : null].filter(Boolean).join(' ').trim()}\n >\n {getLabelValue(item)}\n </SliderStyleTooltip>\n )}\n </SliderStyleHandle>\n );\n })}\n {dots && (\n <Dots\n disabled={disabled}\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 </SliderStyleWarp>\n );\n}\n","import { ThemeVariantValueOptions, getThemeVariantValue } from '@uiw/utils';\nimport { SwitchProps } from 'src';\nimport styled, { css } from 'styled-components';\n\nexport const SwitchStyleTheme = {\n fontSizeSmall: '12px',\n fontSizeLarge: '16px',\n minWidthSwitchCheckbox: '35px',\n heightSwitchCheckbox: '20px',\n backgroundColorSwitchCheckbox: '#dfdfdf',\n borderRadiusSwitchCheckbox: '16px',\n boxShadowColorSwitchCheckbox: 'rgba(16, 22, 26, 0.2)',\n colorSwitchCheckboxBefore: '#fff',\n lineHeightSwitchCheckboxBefore: '20px',\n backgroundColorSwitchCheckboxChecked: '#008ef0',\n colorSwitchCheckboxNotCheckedBefore: '#393e48',\n heightSwitchCheckboxAfter: '16px',\n widthSwitchCheckboxAfter: '16px',\n borderRadiusSwitchCheckboxAfter: '50%',\n backgroundColorSwitchCheckboxAfter: '#fff',\n boxShadowColorSwitchCheckboxAfter: 'rgba(0, 35, 11, 0.2)',\n boxShadowColorSwitchCheckboxFocus: 'rgba(0, 142, 240, 0.25)',\n boxShadowColorInSwitchCheckboxFocus: 'rgba(16, 22, 26, 0.2)',\n minWidthSwitchLargeCheckbox: '38px',\n heightSwitchLargeCheckbox: '24px',\n heightSwitchLargeCheckboxAfter: '20px',\n widthSwitchLargeCheckboxAfter: '20px',\n lineHeightSwitchLargeCheckboxBefore: '24px',\n minWidthSwitchSmallCheckbox: '15px',\n heightSwitchSmallCheckbox: '16px',\n heightSwitchSmallCheckboxAfter: '12px',\n widthSwitchSmallCheckboxAfter: '12px',\n lineHeightSwitchSmallCheckboxBefore: '16px',\n};\n\ntype ThemeVar = ThemeVariantValueOptions<typeof SwitchStyleTheme>;\n\ninterface SwitchStyleWrapProps extends ThemeVar, SwitchProps {\n size?: 'large' | 'default' | 'small';\n disabled?: boolean;\n}\n\nexport const SwitchStyleWrap = styled.div<SwitchStyleWrapProps>`\n ${(props) => {\n const psd = `props.prefix-text`;\n return css`\n vertical-align: middle;\n font-size: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'fontSizeSmall')};\n cursor: pointer;\n input[type='checkbox'] {\n vertical-align: middle;\n cursor: pointer;\n white-space: nowrap;\n position: relative;\n min-width: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'minWidthSwitchCheckbox')};\n height: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'heightSwitchCheckbox')};\n margin: 0 !important;\n background-clip: border-box;\n background-color: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'backgroundColorSwitchCheckbox',\n )};\n appearance: none;\n outline: 0;\n font-size: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'fontSizeSmall')};\n border-radius: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'borderRadiusSwitchCheckbox',\n )};\n transition: all 0.3s;\n box-shadow: inset 0 1px 2px\n ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'boxShadowColorSwitchCheckbox')};\n &:before,\n &:after {\n display: inline-block;\n vertical-align: middle;\n }\n &:before {\n content: attr(data-checked);\n transition: all 0.3s;\n padding: 0 21px 0 6px;\n color: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'colorSwitchCheckboxBefore')};\n line-height: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'lineHeightSwitchCheckboxBefore',\n )};\n }\n &:checked {\n background-color: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'backgroundColorSwitchCheckboxChecked',\n )};\n &:after {\n right: 2px;\n margin-right: 0;\n }\n &:before {\n content: attr(data-unchecked);\n }\n }\n &:not(:checked):before {\n padding: 0 6px 0 21px;\n color: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'colorSwitchCheckboxNotCheckedBefore',\n )};\n }\n &:after {\n content: ' ';\n position: absolute;\n margin-right: -18px;\n right: 100%;\n margin-top: 2px;\n margin-left: 1px;\n height: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'heightSwitchCheckboxAfter')};\n width: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'widthSwitchCheckboxAfter')};\n border-radius: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'borderRadiusSwitchCheckboxAfter',\n )};\n transition: all 0.2s;\n background-color: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'backgroundColorSwitchCheckboxAfter',\n )};\n box-shadow: 0 1px 2px 0\n ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'boxShadowColorSwitchCheckboxAfter')};\n }\n &:disabled {\n cursor: not-allowed;\n opacity: 0.45;\n }\n &:focus {\n box-shadow: 0 0 0 2px\n ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'boxShadowColorSwitchCheckboxFocus')},\n inset 0 1px 2px\n ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'boxShadowColorInSwitchCheckboxFocus',\n )};\n }\n }\n\n ${props?.disabled &&\n css`\n cursor: not-allowed;\n `}\n\n ${props?.size === 'large' &&\n css`\n input[type='checkbox'] {\n min-width: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'minWidthSwitchLargeCheckbox',\n )};\n height: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'heightSwitchLargeCheckbox')};\n &::after {\n margin-right: -22px;\n height: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'heightSwitchLargeCheckboxAfter',\n )};\n width: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'widthSwitchLargeCheckboxAfter',\n )};\n }\n &:before {\n padding: 0 25px 0 8px;\n margin-top: 0;\n line-height: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'lineHeightSwitchLargeCheckboxBefore',\n )};\n font-size: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'fontSizeLarge')};\n }\n &:not(:checked):before {\n padding: 0 8px 0 25px;\n }\n }\n `}\n\n ${props?.size === 'small' &&\n css`\n font-size: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'fontSizeSmall')};\n input[type='checkbox'] {\n min-width: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'minWidthSwitchSmallCheckbox',\n )};\n height: ${getThemeVariantValue({ ...props, defaultTheme: SwitchStyleTheme }, 'heightSwitchSmallCheckbox')};\n &::after {\n margin-right: -14px;\n height: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'heightSwitchSmallCheckboxAfter',\n )};\n width: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'widthSwitchSmallCheckboxAfter',\n )};\n }\n &:before {\n padding: 0 16px 0 6px;\n line-height: ${getThemeVariantValue(\n { ...props, defaultTheme: SwitchStyleTheme },\n 'lineHeightSwitchSmallCheckboxBefore',\n )};\n }\n &:not(:checked):before {\n padding: 0 6px 0 16px;\n }\n }\n `}\n\n ${psd} {\n vertical-align: middle;\n display: inline-block;\n margin-left: 5px;\n }\n `;\n }}\n`;\n\n// SwitchStyleWrap.defaultProps = {\n// defaultTheme: SwitchStyleTheme,\n// };\n","import React from 'react';\nimport { RadioAbstract, RadioAbstractProps } from '@uiw/react-radio';\nimport { SwitchStyleWrap } from './style';\nexport * from './style/index';\n\nexport interface SwitchProps extends RadioAbstractProps {}\n\nexport default React.forwardRef<HTMLInputElement, SwitchProps>((props, ref) => {\n const { prefixCls = 'w-switch', ...other } = props;\n return <SwitchStyleWrap as={RadioAbstract} prefixCls={prefixCls} {...{ ...other, type: 'checkbox' }} ref={ref} />;\n});\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { IconStyleBase, IconStyleBaseProps } from '@uiw/react-icon';\n\nexport const TableBaseDefaultTheme = {\n borderColorTable: '#dfe2e5',\n backgroundColorTableFooter: ' #fafafa',\n borderBottomColorTableRows: '#e8e8e8',\n backgroundColorTableTr: 'transparent',\n backgroundColorTable: '#fff',\n backgroundColorTableEvenRows: '#f9f9f9', // 偶数行背景颜色\n backgroundColorTableEvenRowsHover: '#efefef', // 偶数行Hover背景颜色\n backgroundColorTableHead: '#f6f9fb', // 表头背影色\n borderRightColorFixedRows: '#f0f0f0', // 固定列\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof TableBaseDefaultTheme>;\n\nexport interface TableStyleBaseProps\n extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>,\n ThemeVar {}\n\nexport interface TableStyleWrapBaseProps extends TableStyleBaseProps {\n params?: {\n bordered?: boolean;\n };\n}\n\nexport interface TableStyleDomIconProps extends IconStyleBaseProps {}\n\nexport interface TableStyleColProps extends TableStyleBaseProps {\n params?: {\n align?: 'left' | 'center' | 'right';\n fixed?: boolean | 'left' | 'right';\n bordered?: boolean;\n first?: boolean;\n };\n}\n\nexport interface TableStyleColContentProps extends TableStyleBaseProps {\n params: {\n ellipsis?: boolean;\n };\n}\n\nexport interface TableStyleFooterProps extends TableStyleBaseProps {\n params?: {\n bordered?: boolean;\n };\n}\n\nexport const TableStyleWrap = styled.div<TableStyleWrapBaseProps>`\n width: 100%;\n overflow: auto;\n > table {\n display: table !important;\n margin: 0 !important;\n width: 100%;\n border-spacing: 0;\n border-collapse: collapse;\n tr > th,\n tr > td {\n border: 0;\n padding: 5px 8px;\n border-bottom: 1px solid\n ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'borderBottomColorTableRows')};\n }\n tr {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'backgroundColorTableTr')};\n }\n > caption {\n text-align: left;\n padding: 10px 8px;\n }\n > tbody > tr {\n transition: all 0.3s;\n > td {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'backgroundColorTable')};\n position: relative;\n z-index: 1;\n }\n &:hover,\n &:hover:nth-child(2n) {\n > td {\n background-color: ${(props) =>\n getThemeVariantValue(\n { ...props, defaultTheme: TableBaseDefaultTheme },\n 'backgroundColorTableEvenRowsHover',\n )};\n }\n }\n &:nth-child(2n) {\n > td {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'backgroundColorTableEvenRows')};\n }\n }\n }\n > thead {\n > tr > th {\n font-weight: normal;\n padding: 8px;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'backgroundColorTableHead')};\n position: relative;\n z-index: 1;\n }\n > tr,\n tr:nth-child(2n) {\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'backgroundColorTableHead')};\n border: transparent;\n }\n }\n }\n ${(props) =>\n props?.params?.bordered &&\n css`\n > table {\n tr > th,\n tr > td,\n > caption {\n border: 1px solid\n ${(props) => getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'borderColorTable')};\n }\n > caption {\n border-bottom: 0;\n }\n }\n `}\n`;\n// TableStyleWrap.defaultProps = { defaultTheme: TableBaseDefaultTheme };\n\nexport const TableStyleDomIcon = styled(IconStyleBase)<TableStyleDomIconProps>``;\nexport const TableStyleTheadWrap = styled.thead``;\nexport const TheadItem = styled.th``;\n\n// 单元格\nexport const TableStyleCol = styled.td<TableStyleColProps>`\n text-align: ${(props) => props?.params?.align};\n ${(props) =>\n props?.params?.fixed &&\n (props?.params?.fixed === 'right'\n ? css`\n position: sticky !important;\n z-index: 2 !important;\n\n ${props?.params?.bordered &&\n css`\n &:before {\n content: '';\n position: absolute;\n right: -1px;\n top: 0;\n bottom: 0;\n border-right: 1px solid\n ${getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'borderColorTable')};\n }\n `}\n\n &::after {\n position: absolute;\n top: 0;\n bottom: -1px;\n left: 0;\n width: 30px;\n transform: translateX(-100%);\n transition: box-shadow 0.3s;\n content: '';\n pointer-events: none;\n border-right: 1px solid\n ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'borderRightColorFixedRows')};\n /* border-right: 1px solid #f0f0f0; */\n }\n ${props?.params?.first &&\n css`\n &::after {\n box-shadow: inset -10px 0 8px -8px rgb(0 0 0 / 15%);\n }\n `}\n `\n : css`\n position: sticky !important;\n z-index: 2 !important;\n ${props?.params?.bordered &&\n css`\n &:before {\n content: '';\n position: absolute;\n left: -1px;\n top: 0;\n bottom: 0;\n border-left: 1px solid\n ${getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'borderColorTable')};\n }\n `}\n &:after {\n box-shadow: inset 10px 0 8px -8px rgb(0 0 0 / 15%);\n position: absolute;\n top: 0;\n right: 0;\n bottom: -1px;\n width: 30px;\n transform: translateX(100%);\n transition: box-shadow 0.3s;\n content: '';\n pointer-events: none;\n }\n `)}\n`;\n// TableStyleCol.defaultProps = { defaultTheme: TableBaseDefaultTheme };\n\nexport const TableStyleColContent = styled.span<TableStyleColContentProps>`\n ${(props) =>\n props?.params?.ellipsis &&\n css`\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n word-break: keep-all;\n display: block;\n `}\n`;\n// TableStyleColContent.defaultProps = { defaultTheme: TableBaseDefaultTheme };\n\nexport const TableStyleFooter = styled.div<TableStyleFooterProps>`\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'backgroundColorTableFooter')};\n padding: 10px 8px;\n ${(props) =>\n props.params?.bordered &&\n css`\n & {\n border: 1px solid\n ${(props) => getThemeVariantValue({ ...props, defaultTheme: TableBaseDefaultTheme }, 'borderColorTable')};\n border-top: 0;\n }\n `}\n`;\n// TableStyleFooter.defaultProps = { defaultTheme: TableBaseDefaultTheme };\n","import { TableColumns, LocationWidth } from './';\nimport React from 'react';\n\n/**\n * Get colspan number\n * @param {Array} date\n */\nfunction getColspanNum<T>(data: TableColumns<T>[] = [], num = 1) {\n let childs: TableColumns<T>[] = [];\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<T>(data: TableColumns<T>[] = [], child = []) {\n let childs: TableColumns<T>[] = [];\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<T> {\n header: TableColumns<T>[][];\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 function getLevelItems<T>(data: TableColumns<T>[], result?: ILevelItems<T>): ILevelItems<T> {\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<T>[] = [];\n const levelTop: TableColumns<T>[] = [];\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<T>[]).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<T>) => {\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<T>) => {\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 function getAllColumnsKeys<T>(data: TableColumns<T>[], keys: TableColumns<T>[] = []): TableColumns<T>[] {\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]);\n } else {\n keys.push({ ...data[i], key: i.toString() });\n }\n }\n return keys;\n}\n\nexport function locationFixed(\n fixed: boolean | 'left' | 'right',\n location: { [key: string]: LocationWidth },\n index: string,\n): React.CSSProperties {\n if (!fixed) return {};\n if (fixed === 'right') return { right: location[index]?.right };\n return { left: location[index]?.left };\n}\n\nexport const getMergeRowSpan = (\n data: any[],\n expandedKeys: (string | number)[],\n rowKey = 'id',\n childName = 'children',\n) => {\n let childSum = data.length;\n data.forEach((item) => {\n if (Array.isArray(item[childName]) && expandedKeys.includes(item[rowKey])) {\n const sum = getMergeRowSpan(item[childName], expandedKeys);\n childSum = childSum + sum;\n }\n });\n return childSum;\n};\n","import React, { Component } from 'react';\nimport { TableColumns, TableProps, LocationWidth } from './';\nimport { TableStyleCol } from './style';\nimport { locationFixed } from './util';\n\ninterface ThComponentProps<T> {\n colNum: number;\n rightFixedKey: number;\n bordered?: boolean;\n item: TableColumns<T>;\n prefixCls: string;\n titleNode: JSX.Element;\n onCellHead: TableProps<T>['onCellHead'];\n rowNum: number;\n locationWidth: { [key: string]: LocationWidth };\n updateLocation: (params: LocationWidth, index: string, key: string, colSpan?: number) => void;\n}\nexport default class ThComponent<T> extends Component<ThComponentProps<T>> {\n wrapper = React.createRef<HTMLTableCellElement>();\n componentDidMount() {\n this.props.updateLocation(\n { width: this.props.item.width || this.wrapper.current!.getBoundingClientRect().width },\n `${this.props.rowNum}${this.props.colNum}`,\n this.props.item.key!,\n this.props.item.colSpan,\n );\n }\n\n render() {\n const { colNum, rightFixedKey, prefixCls, item, titleNode, onCellHead, rowNum, locationWidth } = this.props;\n const { title, key, render, children, ellipsis, fixed = false, ...thProps } = item;\n let cls = '';\n if (fixed) {\n if (fixed === 'right') {\n cls = prefixCls + '-fixed-right';\n } else {\n cls = prefixCls + '-fixed-true';\n }\n }\n return (\n <TableStyleCol\n as=\"th\"\n ref={this.wrapper}\n key={colNum}\n {...thProps}\n style={{ ...thProps.style, ...locationFixed(fixed, locationWidth, `${rowNum}${colNum}`) }}\n className={`${prefixCls}-tr-children-${item?.align || 'left'} ${item.className || ''} ${cls}`}\n params={{\n align: item?.align || 'left',\n fixed: fixed,\n bordered: this.props.bordered,\n first: rightFixedKey === 1,\n }}\n onClick={(evn: any) => onCellHead?.(item, colNum, rowNum!, evn)}\n >\n {titleNode}\n </TableStyleCol>\n );\n }\n}\n","import React from 'react';\nimport { IProps, noop } from '@uiw/utils';\nimport { TableProps, TableColumns, LocationWidth } from './';\nimport { TableStyleTheadWrap, TableStyleColContent } from './style';\nimport ThComponentProps from './ThComponent';\n\nexport interface TheadProps<T extends { [key: string]: V }, V = any> extends IProps {\n data?: TableColumns<T>[][];\n bordered?: boolean;\n onCellHead?: TableProps<T, V>['onCellHead'];\n align?: TableColumns['align'];\n className?: TableColumns['className'];\n locationWidth?: { [key: string]: LocationWidth };\n updateLocation?: (params: LocationWidth, index: string, key: string, colSpan?: number) => void;\n}\n\nexport default function TheadComponent<T extends { [key: string]: V }, V>(\n props: TheadProps<T, V> & React.HTMLAttributes<HTMLTableSectionElement> = {},\n) {\n const {\n prefixCls = 'w-table',\n className,\n data = [],\n onCellHead = noop,\n locationWidth,\n updateLocation,\n ...other\n } = props;\n let rightFixedNum = 0;\n return (\n <TableStyleTheadWrap className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...other}>\n {data &&\n data.length > 0 &&\n data.map((tds?: TableColumns<T>[], rowNum?: number) => (\n <tr key={rowNum}>\n {(tds || []).map((item, colNum) => {\n const { title, key, render, children, ellipsis, fixed = false, ...thProps } = item;\n const titleNode: TableColumns<T>['title'] = (\n <TableStyleColContent\n className={ellipsis ? `${thProps.className || ''} ${prefixCls}-ellipsis` : undefined}\n params={{ ellipsis }}\n >\n {typeof title === 'function' ? title(item, colNum, rowNum!) : title}\n </TableStyleColContent>\n );\n if (thProps.colSpan === 0) {\n return null;\n }\n if (fixed === 'right') {\n rightFixedNum = rightFixedNum + 1;\n }\n return (\n <ThComponentProps\n colNum={colNum}\n rightFixedKey={rightFixedNum}\n item={item}\n key={colNum}\n bordered={props.bordered}\n prefixCls={prefixCls}\n onCellHead={onCellHead}\n rowNum={rowNum!}\n titleNode={titleNode}\n locationWidth={locationWidth!}\n updateLocation={updateLocation!}\n />\n );\n })}\n </tr>\n ))}\n </TableStyleTheadWrap>\n );\n}\n","import React, { useState } from 'react';\n\ninterface ExpandableProps<T> {\n onClick: (expand: boolean) => void;\n expandIcon: (expanded: boolean) => React.ReactNode;\n defaultExpand: boolean;\n}\n/**\n * 可展开配置\n */\nexport default function ExpandableComponent<T>({ defaultExpand, onClick, expandIcon }: ExpandableProps<T>) {\n const [expand, setExpand] = useState<boolean>(defaultExpand);\n return (\n <div\n style={{ display: 'flex', justifyContent: 'center', alignItems: 'center' }}\n onClick={() => {\n setExpand(!expand);\n onClick(expand);\n // record: T, index: number, expanded: boolean\n }}\n children={expandIcon(expand)}\n />\n );\n}\n","import React, { useMemo, useState, useEffect, Fragment } from 'react';\n// import Icon from '@uiw/react-icon';\nimport { MinusSquareO } from '@uiw/icons/lib/MinusSquareO';\nimport { PlusSquareO } from '@uiw/icons/lib/PlusSquareO';\nimport { LocationWidth, TableColumns, TableProps } from './';\nimport { TableStyleCol, TableStyleColContent, TableStyleDomIcon } from './style';\nimport { noop } from '@uiw/utils';\nimport { locationFixed, getMergeRowSpan } from './util';\n\ninterface TableTrProps<T> {\n rowKey?: keyof T;\n header: TableColumns<T>[][];\n data: T[];\n keys: TableProps['columns'];\n render: { [key: string]: any };\n ellipsis?: Record<string, boolean>;\n prefixCls: string;\n onCell: TableProps['onCell'];\n isExpandedDom: (record: T, index: number) => false | JSX.Element;\n // 控制树形结构每一层的缩进宽度\n indentSize: number;\n bordered?: boolean;\n // 层级\n hierarchy: number;\n childrenColumnName: string;\n locationWidth: { [key: string]: LocationWidth };\n isAutoExpanded?: boolean;\n isAutoMergeRowSpan?: boolean;\n expandIndex: (number | T[keyof T])[];\n setExpandIndex: React.Dispatch<React.SetStateAction<(number | T[keyof T])[]>>;\n // 点击展开图标触发\n onExpand?: (expanded: boolean, record: T, index: number, hierarchy?: number) => void;\n}\n\nexport default function TableTr<T extends { [key: string]: any }>(props: TableTrProps<T>) {\n const {\n rowKey,\n data,\n keys,\n render,\n ellipsis,\n prefixCls,\n onCell = noop,\n isExpandedDom,\n hierarchy,\n indentSize,\n childrenColumnName,\n locationWidth,\n header,\n isAutoExpanded = true,\n isAutoMergeRowSpan,\n expandIndex,\n setExpandIndex,\n onExpand,\n } = props;\n const [isOpacity, setIsOpacity] = useState(false);\n const [childrenIndex, setChildrenIndex] = useState(0);\n\n useEffect(() => {\n setIsOpacity(!!data?.find((it) => it[childrenColumnName]));\n setChildrenIndex(keys?.findIndex((it) => it.key === 'uiw-expanded') === -1 ? 0 : 1);\n }, [data]);\n //\n\n const IconDom = useMemo(() => {\n return (key: T[keyof T] | number, isOpacity: boolean, trData: T, rowNum: number, layout: any = 'left') => {\n const flag = expandIndex.includes(key);\n const Icon = flag ? MinusSquareO : PlusSquareO;\n const newProps: { float?: any; marginLeft?: number } = {};\n if (layout === 'left') {\n newProps.float = 'left';\n newProps.marginLeft = hierarchy * indentSize;\n } else {\n newProps.marginLeft = indentSize;\n }\n return (\n <TableStyleDomIcon\n style={{\n marginRight: 10,\n opacity: isOpacity ? 1 : 0,\n marginTop: 3.24,\n ...newProps,\n }}\n onClick={() => {\n onExpand && onExpand(flag, trData, rowNum, hierarchy);\n setExpandIndex(flag ? expandIndex.filter((it) => it !== key) : [...expandIndex, key]);\n }}\n >\n <Icon />\n </TableStyleDomIcon>\n );\n };\n }, [expandIndex]);\n const getIndex = (key: string) => {\n let j = 0;\n const i = header.findIndex((it) => {\n j = it.findIndex((item) => item.key === key);\n return j > -1;\n });\n return `${i}${j}`;\n };\n if (!Array.isArray(data) || !data.length) {\n return null;\n }\n return (\n <React.Fragment>\n {data.map((trData, rowNum) => {\n const key = rowKey ? trData[rowKey] : rowNum;\n const mergeSpan = getMergeRowSpan([trData], expandIndex, rowKey as string, childrenColumnName);\n let rightFixedNum = 0;\n return (\n <React.Fragment key={rowNum}>\n <tr>\n {keys!.map((keyName, colNum) => {\n const isHasChildren = Array.isArray(trData[childrenColumnName]);\n let itemShow: {\n show?: boolean;\n rowSpan?: number;\n } = {};\n if (isAutoMergeRowSpan) {\n const newLaval = Reflect.get(keyName, 'level');\n if (hierarchy === newLaval && isHasChildren) {\n itemShow.rowSpan = mergeSpan;\n } else if (hierarchy && Reflect.has(keyName, 'level') && hierarchy > newLaval) {\n return <Fragment key={colNum} />;\n }\n }\n let objs: React.TdHTMLAttributes<HTMLTableDataCellElement> = {\n children: trData[keyName.key!],\n };\n\n let isExpanded = false;\n\n if ((isOpacity || hierarchy || isHasChildren) && colNum === childrenIndex && isAutoExpanded) {\n isExpanded = true;\n } else if ((isOpacity || hierarchy || isHasChildren) && !isAutoExpanded && keyName.isExpanded) {\n isExpanded = true;\n }\n if (keyName.isExpandedButton) {\n isExpanded = true;\n }\n\n /**按钮不展示,其他的距离还保留*/\n let isExpandedBtn = isExpanded;\n\n if (render[keyName.key!]) {\n const child = render[keyName.key!](trData[keyName.key!], keyName.key, trData, rowNum, colNum, {\n level: hierarchy,\n rowSpan: itemShow.rowSpan,\n });\n\n if (React.isValidElement(child)) {\n objs.children = child;\n } else {\n if (child.isExpanded === false) {\n isExpandedBtn = false;\n }\n if (child.props) {\n if (itemShow.rowSpan) {\n child.props.rowSpan = itemShow.rowSpan;\n }\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 } else if (itemShow.rowSpan && isAutoMergeRowSpan) {\n objs.rowSpan = itemShow.rowSpan;\n }\n\n if (isExpanded) {\n if (keyName.isExpandedButtonLayout === 'right') {\n objs.children = (\n <>\n <span style={{ paddingLeft: hierarchy * indentSize }}></span>\n {objs.children}\n {isExpandedBtn &&\n IconDom(\n key,\n isHasChildren || !!keyName?.isExpandedButton,\n trData,\n rowNum,\n keyName.isExpandedButtonLayout,\n )}\n </>\n );\n } else {\n objs.children = (\n <>\n {isExpandedBtn && IconDom(key, isHasChildren || !!keyName?.isExpandedButton, trData, rowNum)}\n <span style={{ paddingLeft: hierarchy * indentSize }}></span>\n {objs.children}\n </>\n );\n }\n }\n\n if (keyName.fixed) {\n if (keyName.fixed === 'right') {\n rightFixedNum = rightFixedNum + 1;\n objs.className = `${prefixCls}-fixed-right`;\n } else {\n objs.className = `${prefixCls}-fixed-true`;\n }\n }\n\n return (\n <TableStyleCol\n {...objs}\n style={\n keyName.fixed\n ? { ...locationFixed(keyName.fixed!, locationWidth, `${getIndex(keyName.key || 'undefined')}`) }\n : {}\n }\n children={\n <TableStyleColContent\n className={ellipsis && ellipsis[keyName.key!] ? `${prefixCls}-ellipsis` : undefined}\n params={{ ellipsis: ellipsis && ellipsis[keyName.key!] }}\n >\n {objs.children}\n </TableStyleColContent>\n }\n key={colNum}\n className={[\n prefixCls + '-tr-children-' + (keyName.align || 'left'),\n keyName.className,\n objs.className,\n ]\n .filter((it) => it)\n .join(' ')\n .trim()}\n params={{\n align: keyName.align,\n fixed: keyName.fixed,\n bordered: props.bordered,\n first: rightFixedNum === 1,\n }}\n onClick={(evn) => onCell(trData, { rowNum, colNum, keyName: keyName.key! }, evn)}\n />\n );\n })}\n </tr>\n {isExpandedDom(trData, rowNum)}\n {expandIndex.includes(key) && (\n <TableTr {...props} data={trData[childrenColumnName]} hierarchy={hierarchy + 1} />\n )}\n </React.Fragment>\n );\n })}\n </React.Fragment>\n );\n}\n","import React, { useMemo, useState, useEffect, useRef } from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport { MinusSquareO } from '@uiw/icons/lib/MinusSquareO';\nimport { PlusSquareO } from '@uiw/icons/lib/PlusSquareO';\nimport Thead from './Thead';\nimport { TableStyleWrap, TableStyleFooter } from './style';\nimport { getLevelItems, getAllColumnsKeys, NodeTreeData } from './util';\nimport ExpandableComponent from './Expandable';\nimport TableTr from './TableTr';\nexport * from './style';\n\n// 展开配置\nexport interface ExpandableType<T> {\n // 展开行\n expandedRowRender?: (record: T, index: number, expanded: boolean) => React.ReactNode;\n // 自定义图标\n expandIcon?: (expanded: boolean, record: T, index: number) => React.ReactNode;\n // 是否允许展开\n rowExpandable?: (record: T) => boolean;\n // 初始时,是否展开所有行\n defaultExpandAllRows?: boolean;\n // 默认展开的行 rowKey数组\n defaultExpandedRowKeys?: Array<T[keyof T] | number>;\n // 控制展开的行 rowKey数组\n expandedRowKeys?: Array<T[keyof T] | number>;\n // 展开的行变化触发\n onExpandedRowsChange?: (expandedRows: Array<T[keyof T] | number>) => void;\n // 点击展开图标触发\n onExpand?: (expanded: boolean, record: T, index: number, hierarchy?: number) => void;\n // 控制树形结构每一层的缩进宽度\n indentSize?: number;\n // 指定树形结构的列名\n childrenColumnName?: string;\n /**是否自动设置展开按钮位置*/\n isAutoExpanded?: boolean;\n}\n\nexport type TableColumns<T = any> = {\n title?: string | ((data: TableColumns<T>, rowNum: number, colNum: number) => JSX.Element) | JSX.Element;\n key?: string;\n width?: number;\n colSpan?: number;\n children?: TableColumns<T>[];\n ellipsis?: boolean;\n render?: (\n text: string,\n keyName: string,\n rowData: T,\n rowNumber: number,\n columnNumber: number,\n leveConfig: {\n level: number;\n rowSpan?: number;\n summary:\n | {\n summary: Record<\n string,\n {\n count: number;\n level: number;\n }\n >;\n summaryCount: Record<string | number, number>;\n }\n | undefined;\n },\n ) => React.ReactNode;\n style?: React.CSSProperties;\n align?: 'left' | 'center' | 'right';\n className?: string;\n fixed?: boolean | 'left' | 'right';\n isExpanded?: boolean;\n isExpandedButton?: boolean;\n isExpandedButtonLayout?: 'left' | 'right';\n [key: string]: any;\n};\n\nexport interface TableProps<T extends { [key: string]: V } = any, V = any> extends IProps, Omit<HTMLDivProps, 'title'> {\n prefixCls?: string;\n columns?: TableColumns<T>[];\n data?: Array<T>;\n title?: React.ReactNode;\n footer?: React.ReactNode;\n bordered?: boolean;\n empty?: React.ReactNode;\n onCell?: (\n data: { [key: string]: any },\n options: ICellOptions,\n evn: React.MouseEvent<HTMLTableCellElement>,\n ) => void | React.ReactNode;\n onCellHead?: (\n data: TableColumns<T>,\n rowNum: number,\n colNum: number,\n evn: React.MouseEvent<HTMLTableCellElement>,\n ) => void;\n expandable?: ExpandableType<T>;\n rowKey?: keyof T;\n scroll?: { x?: React.CSSProperties['width']; y?: React.CSSProperties['height'] };\n isAutoMergeRowSpan?: boolean;\n}\n\nexport interface LocationWidth {\n left?: number;\n right?: number;\n width: number;\n key?: string;\n colSpan?: number;\n}\nexport interface ICellOptions {\n rowNum: number;\n colNum: number;\n keyName: string;\n}\n\nexport default function Table<T extends { [key: string]: V }, V>(props: TableProps<T, V> = {}) {\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 empty,\n children,\n expandable,\n rowKey,\n scroll,\n isAutoMergeRowSpan = false,\n ...other\n } = props;\n const [expandIndex, setExpandIndex] = useState<Array<T[keyof T] | number>>([]);\n const [locationWidth, setLocationWidth] = useState<{ [key: string]: LocationWidth }>({});\n const finalLocationWidth = useRef<{ [key: string]: LocationWidth }>({});\n\n const updateLocation = (params: LocationWidth, index: string, key: string, colSpan: number = 0) => {\n finalLocationWidth.current = {\n ...finalLocationWidth.current,\n [index]: {\n ...finalLocationWidth.current[index],\n ...params,\n key: key,\n colSpan,\n },\n };\n if (index === `${header.length - 1}${header[header.length - 1].length - 1}`) {\n setLocationWidth(computed());\n }\n };\n const deepClumnsLocation = (params: Array<TableColumns<T> | number>, fistIndex: number) => {\n let initialValue = 0,\n headerIndex = 0,\n deepParams: Array<TableColumns<T> | number> = [];\n console.log('initialValue0000', initialValue);\n params.forEach((_, index) => {\n const i = `${fistIndex}${headerIndex}`;\n if (typeof params[index] === 'number') {\n initialValue = (params[index] as number) + initialValue;\n deepParams.push(params[index]);\n return;\n }\n if (finalLocationWidth.current[i]) {\n finalLocationWidth.current[i].left = initialValue;\n initialValue = finalLocationWidth.current[i].width + initialValue;\n if (Array.isArray((params[index] as TableColumns<T>).children)) {\n deepParams.push(...(params[index] as TableColumns<T>).children!);\n } else {\n deepParams.push(finalLocationWidth.current[i].width);\n }\n }\n headerIndex += 1;\n });\n (initialValue = 0), (headerIndex = header[fistIndex].length - 1);\n for (let index = params.length - 1; index >= 0; index--) {\n const i = `${fistIndex}${headerIndex}`;\n if (typeof params[index] === 'number') {\n initialValue = (params[index] as number) + initialValue;\n continue;\n }\n if (finalLocationWidth.current[i]) {\n finalLocationWidth.current[i].right = initialValue;\n initialValue = finalLocationWidth.current[i].width + initialValue;\n }\n headerIndex -= 1;\n }\n console.log('initialValue', initialValue);\n if (deepParams.filter((it) => typeof it !== 'number').length) deepClumnsLocation(deepParams, fistIndex + 1);\n };\n\n const computed = () => {\n deepClumnsLocation(columns, 0);\n return finalLocationWidth.current;\n };\n useEffect(() => {\n const childKey = expandable?.childrenColumnName || 'children';\n const deep = (params: TableColumns<T>) => {\n const arr1: Array<T[keyof T] | number> = [];\n const arr = params.map((it: T, index: number) => {\n if (Array.isArray(it[childKey])) {\n arr1.push(...deep(it[childKey]));\n }\n return rowKey ? it[rowKey] : index;\n });\n return [...arr1, ...arr];\n };\n if (expandable) {\n if (expandable.defaultExpandAllRows) {\n setExpandIndex(deep(data));\n return;\n }\n if (expandable.defaultExpandedRowKeys) {\n setExpandIndex(expandable.defaultExpandedRowKeys);\n return;\n }\n }\n }, []);\n useEffect(() => {\n if (expandable) {\n if (expandable.expandedRowKeys && JSON.stringify(expandable.expandedRowKeys) !== JSON.stringify(expandIndex)) {\n setExpandIndex(expandable.expandedRowKeys);\n }\n }\n }, [expandable?.expandedRowKeys]);\n\n const isExpandedDom = useMemo(() => {\n return (record: T, index: number) => {\n if (!expandable) {\n return false;\n }\n if (!expandable.expandedRowRender) {\n return false;\n }\n let flag = true;\n if (expandable.rowExpandable) {\n flag = expandable.rowExpandable(record);\n }\n return (\n flag && (\n <tr style={expandIndex.includes(rowKey ? record[rowKey] : index) ? {} : { display: 'none' }}>\n <td style={{ paddingLeft: 16 }} colSpan={columns.length + 1}>\n {expandable.expandedRowRender(record, index, true)}\n </td>\n </tr>\n )\n );\n };\n }, [expandable, expandIndex]);\n\n const self = useMemo(() => {\n let keys = getAllColumnsKeys<T>(columns);\n let selfColumns: TableColumns<T>[] = [];\n if (expandable?.expandedRowRender) {\n keys = [{ key: 'uiw-expanded', align: 'center' }, ...keys];\n selfColumns = [\n {\n title: '',\n key: 'uiw-expanded',\n width: 50,\n align: 'center',\n render: (text, key, record, index) => {\n return (\n <ExpandableComponent\n defaultExpand={\n expandable.defaultExpandAllRows === undefined\n ? !!expandable.defaultExpandedRowKeys?.includes(rowKey ? record[rowKey] : index)\n : !!expandable.defaultExpandAllRows\n }\n onClick={(expand) => {\n expandable.onExpand?.(expand, record, index);\n if (expand) {\n const result = expandIndex.filter((it) => (rowKey ? it !== record[rowKey] : it !== index));\n expandable.onExpandedRowsChange ? expandable.onExpandedRowsChange(result) : setExpandIndex(result);\n } else {\n const result = [...expandIndex, rowKey ? record[rowKey] : index];\n expandable.onExpandedRowsChange ? expandable.onExpandedRowsChange(result) : setExpandIndex(result);\n }\n }}\n expandIcon={(expand) => {\n if (expandable.rowExpandable && !expandable.rowExpandable?.(record)) {\n return null;\n }\n if (expandable.expandIcon) {\n return expandable.expandIcon(expand, record, index);\n }\n return expand ? <MinusSquareO /> : <PlusSquareO />;\n }}\n />\n );\n },\n },\n ...columns,\n ];\n } else {\n selfColumns = [...columns];\n }\n return {\n keys,\n selfColumns,\n };\n }, [columns, expandIndex]);\n const style: { table: React.CSSProperties; div: React.CSSProperties } = useMemo(() => {\n const style: { table: React.CSSProperties; div: React.CSSProperties } = {\n table: {},\n div: {},\n };\n if (scroll) {\n if (scroll.x !== undefined) {\n style.table.maxWidth = 'none';\n style.table.minWidth = '100%';\n style.table.width = scroll.x;\n style.div.overflowX = 'auto';\n style.div.overflowY = 'hidden';\n }\n if (scroll.y !== undefined) {\n style.div.maxHeight = scroll.y;\n style.div.overflowY = 'scroll';\n }\n }\n return style;\n }, [scroll]);\n const cls = [prefixCls, className, bordered ? `${prefixCls}-bordered` : null].filter(Boolean).join(' ').trim();\n const { header, render, ellipsis } = getLevelItems(self.selfColumns);\n return (\n <React.Fragment>\n <TableStyleWrap className={cls} {...other} style={{ ...other.style, ...style.div }} params={{ bordered }}>\n <table style={{ tableLayout: ellipsis ? 'fixed' : 'auto', ...style.table }}>\n {title && <caption>{title}</caption>}\n {columns && columns.length > 0 && (\n <Thead\n onCellHead={onCellHead}\n bordered={bordered}\n data={header}\n locationWidth={locationWidth}\n updateLocation={updateLocation}\n />\n )}\n {data && data.length > 0 && (\n <tbody>\n <TableTr\n rowKey={rowKey}\n locationWidth={locationWidth}\n data={data}\n header={header}\n keys={self.keys}\n render={render}\n ellipsis={ellipsis}\n prefixCls={prefixCls}\n bordered={bordered}\n onCell={onCell}\n hierarchy={0}\n isExpandedDom={isExpandedDom}\n onExpand={expandable?.onExpand}\n indentSize={typeof expandable?.indentSize === 'number' ? expandable?.indentSize : 16}\n childrenColumnName={expandable?.childrenColumnName || 'children'}\n isAutoExpanded={expandable?.isAutoExpanded}\n isAutoMergeRowSpan={isAutoMergeRowSpan}\n expandIndex={expandIndex}\n setExpandIndex={setExpandIndex}\n />\n </tbody>\n )}\n {data && data.length === 0 && empty && (\n <tbody>\n <tr>\n <td colSpan={self.keys.length} style={{ position: 'relative', left: 0 }}>\n {empty}\n </td>\n </tr>\n </tbody>\n )}\n {props.children}\n </table>\n </TableStyleWrap>\n {footer && (\n <TableStyleFooter className={`${prefixCls}-footer`} params={{ bordered }}>\n {footer}\n </TableStyleFooter>\n )}\n </React.Fragment>\n );\n}\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, HTMLDivProps, ThemeVariantValueOptions } from '@uiw/utils';\nimport { TabsProps } from '../';\n\nexport const TabsStyleTheme = {\n colorTabsItemActive: '#008ef0',\n backgroundColorTabsItemActive: '#fff',\n colorTabsItemDisabled: 'rgba(0, 0, 0, 0.25)',\n boxShadowTabsFlowContentDefault: '1px 0px 0px #d9d9d9 inset',\n backgroundColorTabsNavHiddenBase: '#d9d9d9',\n backgroundColorTabsBase: '#108ee9',\n borderBottomTabsAfter: '1px solid #d9d9d9',\n borderBottomTabsCardAfter: '1px solid #d9d9d9',\n backgroundColorTabsCardAfter: '#f9f9f9',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof TabsStyleTheme>;\n\nexport interface TabsWrapDivProps extends HTMLDivProps, ThemeVar {}\n\nexport interface TabsStyleProps extends TabsProps, TabsWrapDivProps {}\n\nexport const TabsStyleWarp = styled.div<TabsStyleProps>`\n ${(props) => {\n if (props.type === 'line') {\n return css`\n ${TabsDivSlide} {\n background-color: ${getThemeVariantValue(\n { ...props, defaultTheme: TabsStyleTheme },\n 'backgroundColorTabsBase',\n )};\n box-sizing: border-box;\n bottom: 0;\n position: absolute;\n height: 1px;\n left: 0;\n width: 20px;\n z-index: 1;\n transition: all 0.3s;\n }\n ${TabsDivNav}::after {\n content: '';\n position: relative;\n display: block;\n border-bottom: ${getThemeVariantValue({ ...props, defaultTheme: TabsStyleTheme }, 'borderBottomTabsAfter')};\n }\n `;\n }\n if (props.type === 'card') {\n return css`\n ${TabsDivNav}::after {\n content: '';\n position: relative;\n display: block;\n border-bottom: ${getThemeVariantValue(\n { ...props, defaultTheme: TabsStyleTheme },\n 'borderBottomTabsCardAfter',\n )};\n }\n ${TabsItem} {\n margin: 0;\n border: ${getThemeVariantValue({ ...props, defaultTheme: TabsStyleTheme }, 'borderBottomTabsCardAfter')};\n border-bottom: 0;\n padding: 7px 16px;\n border-radius: 4px 4px 0 0;\n background: ${getThemeVariantValue(\n { ...props, defaultTheme: TabsStyleTheme },\n 'backgroundColorTabsCardAfter',\n )};\n margin-right: 5px;\n bottom: -1px;\n }\n `;\n }\n return css``;\n }}\n`;\n\nexport const TabsDivFlex = styled.div`\n display: flex;\n`;\nexport const TabsDivHidden = styled.div`\n overflow: hidden;\n`;\nexport const TabsDivBar = styled.div`\n position: relative;\n overflow-x: auto;\n height: calc(100% + 17px);\n`;\nexport const TabsDivNav = styled.div`\n position: relative;\n width: max-content;\n`;\nexport const TabsDivSlide = styled.div``;\n\nexport const TabsNavHidden = styled.div<TabsWrapDivProps>`\n display: flex;\n overflow-y: auto;\n padding: 5px 10px 5px 5px;\n max-height: 200px;\n flex-direction: column;\n :hover {\n background: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TabsStyleTheme }, 'backgroundColorTabsNavHiddenBase')};\n }\n`;\n// TabsNavHidden.defaultProps = {\n// defaultTheme: TabsStyleTheme,\n// };\n\nexport const TabsFlowContent = styled.div<TabsWrapDivProps>`\n margin-left: 5px;\n padding: 0px 10px 0px 10px;\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TabsStyleTheme }, 'boxShadowTabsFlowContentDefault')};\n cursor: pointer;\n`;\n\n// TabsFlowContent.defaultProps = {\n// defaultTheme: TabsStyleTheme,\n// };\n\ninterface TabsItemProps extends TabsWrapDivProps {\n active: boolean;\n disabled: boolean;\n type: TabsProps['type'];\n}\n\nexport const TabsItem = styled.div<TabsItemProps>`\n padding: 7px 10px;\n display: inline-block;\n height: 100%;\n font-size: 14px;\n box-sizing: border-box;\n position: relative;\n cursor: pointer;\n text-decoration: none;\n transition: all 0.3s;\n ${(props) => {\n if (props.active) {\n return css`\n color: ${getThemeVariantValue({ ...props, defaultTheme: TabsStyleTheme }, 'colorTabsItemActive')};\n ${props.type === 'card' &&\n css`\n background: ${getThemeVariantValue(\n { ...props, defaultTheme: TabsStyleTheme },\n 'backgroundColorTabsItemActive',\n )};\n z-index: 1;\n `}\n `;\n }\n return css``;\n }}\n ${(props) =>\n props.disabled &&\n css`\n cursor: not-allowed;\n user-select: none;\n color: ${getThemeVariantValue({ ...props, defaultTheme: TabsStyleTheme }, 'colorTabsItemDisabled')};\n `}\n`;\n\nexport const TabsPaneWarp = styled.div<TabsWrapDivProps>``;\n\n// TabsStyleWarp.defaultProps = {\n// defaultTheme: TabsStyleTheme,\n// };\n","import React, { useEffect, useState, useRef, useCallback } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Pane from './Pane';\nimport Popover from '@uiw/react-popover';\nimport * as Styled from './style';\nexport * from './Pane';\nexport * from './style';\n\nTabs.Pane = Pane;\n\nlet labelWidth: number = 0;\nexport interface TabsProps extends IProps, HTMLDivProps {\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\ntype FlowNavType = {\n content: number;\n nav: Array<Record<'index' | 'width' | 'curWidth', number>>;\n flowLeft: number;\n displayStart: number;\n displayEnd: number;\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\n const [activeKey, setActiveKey] = useState(props.activeKey);\n const [slideStyle, setSlideStyle] = useState({ width: 0, left: 0 });\n const activeItem = useRef<HTMLDivElement | undefined>();\n\n const [flowNav, flowNavSet] = useState<FlowNavType>({\n content: 0,\n nav: [],\n flowLeft: -1,\n displayStart: 0,\n displayEnd: 0,\n });\n const [hiddenNav, hiddenNavSet] = useState<Array<number>>([]);\n const deviation = 15;\n\n const [nodes, nodesSet] = useState<any>();\n const divContentRef = useCallback((node: HTMLDivElement | null) => {\n if (node !== null) {\n nodesSet(nodes);\n node.addEventListener('scroll', (e: any) => {\n const { clientWidth, scrollLeft } = e.target;\n flowNav.displayStart = scrollLeft;\n flowNav.displayEnd = clientWidth + scrollLeft;\n flowNavSet({ ...flowNav });\n });\n flowNav.displayEnd = node.getBoundingClientRect().width;\n flowNavSet({ ...flowNav });\n }\n }, []);\n\n const divNavRef = useCallback((node: HTMLDivElement | null, key: number, itemKey: React.Key | null) => {\n if (node !== null) {\n node.addEventListener('click', (e: any) => {\n activeItem.current = node;\n });\n divNavWidthChange(node.getBoundingClientRect().width, key);\n\n if (itemKey === props.activeKey && type === 'line' && labelWidth === 0) {\n activeItem.current = node;\n }\n }\n }, []);\n\n const divNavWidthChange = (width: number, index: number) => {\n let curWidth = 0;\n flowNav.nav.slice(0, index + 1).forEach((nav) => (curWidth += nav.width));\n flowNav.nav[index] = { width, curWidth: Math.floor(curWidth), index };\n flowNavSet(flowNav);\n };\n\n useEffect(() => {\n showHideenNav();\n }, [flowNav.displayEnd > flowNav.nav[flowNav.nav.length - 1]?.curWidth]);\n\n const showHideenNav = () => {\n const hiddenNav: Array<number> = [];\n if (flowNav.nav.length > 0) {\n flowNav.nav.forEach((item) => {\n const curWidth = item.curWidth - deviation;\n if (curWidth < flowNav.displayStart || curWidth > flowNav.displayEnd) {\n hiddenNav.push(item.index);\n }\n });\n hiddenNavSet(hiddenNav);\n }\n };\n\n useEffect(() => setActiveKey(props.activeKey), [props.activeKey]);\n useEffect(() => calcSlideStyle(), [activeKey]);\n\n function calcSlideStyle() {\n if (activeItem.current && type === 'line') {\n labelWidth = activeItem.current.clientWidth;\n setSlideStyle({\n width: activeItem.current.clientWidth,\n left: activeItem.current.offsetLeft,\n });\n }\n }\n\n return (\n <Styled.TabsStyleWarp className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...elementProps}>\n <Styled.TabsDivFlex>\n <Styled.TabsDivHidden>\n <Styled.TabsDivBar className={`${prefixCls}-bar`} ref={divContentRef}>\n <Styled.TabsDivNav className={`${prefixCls}-nav`}>\n {renderNav(children)}\n <Styled.TabsDivSlide className={`${prefixCls}-slide`} style={slideStyle} />\n </Styled.TabsDivNav>\n </Styled.TabsDivBar>\n </Styled.TabsDivHidden>\n {hiddenNav.length > 0 && (\n <Popover\n trigger=\"click\"\n placement=\"bottomRight\"\n visibleArrow={false}\n content={\n <Styled.TabsNavHidden className={`${prefixCls}-nav-hidden`}>\n {renderNav(hiddenNav.map((idx) => (children as Array<React.ReactElement>)[idx]))}\n </Styled.TabsNavHidden>\n }\n >\n <Styled.TabsFlowContent onClick={showHideenNav} className={`${prefixCls}-flow-content`}>\n <span>…</span>\n </Styled.TabsFlowContent>\n </Popover>\n )}\n </Styled.TabsDivFlex>\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 </Styled.TabsStyleWarp>\n );\n\n function renderNav(children: React.ReactNode): React.ReactNode {\n return 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: `${prefixCls}-item`,\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 <Styled.TabsItem\n type={type}\n disabled={item.props.disabled}\n active={item.key === activeKey}\n key={key}\n ref={(ref) => divNavRef(ref, key, item.key)}\n {...divProps}\n />\n );\n });\n }\n}\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { TabsPaneWarp } from './style';\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 <TabsPaneWarp className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...resetProps} />;\n};\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { TooltipProps } from '../';\n\nexport const TooltipStyleTheme = {\n backgroundColorTooltipStyleInnerWarpBase: 'rgba(0, 0, 0, 0.75)',\n borderColorTooltipStyleInnerWarpBase: 'rgba(0, 0, 0, 0.75)',\n boxShadowTooltipStyleInnerWarpBase: '0 1px 6px rgba(0, 0, 0, 0.2)',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof TooltipStyleTheme>;\n\nexport interface TooltipStyleProps extends TooltipProps, ThemeVar {}\n\ninterface TooltipContainerProps {\n visibleArrow: boolean;\n placement: TooltipStyleProps['placement'];\n}\n\ninterface TooltipArrowProps extends ThemeVar {\n placement: TooltipStyleProps['placement'];\n}\n\nfunction tooltipHandle(placement: TooltipStyleProps['placement']) {\n const obj = {\n right: 'right',\n rightTop: 'right',\n rightBottom: 'right',\n\n left: 'left',\n leftTop: 'left',\n leftBottom: 'left',\n\n top: 'top',\n topLeft: 'top',\n topRight: 'top',\n\n bottom: 'bottom',\n bottomLeft: 'bottom',\n bottomRight: 'bottom',\n };\n switch (obj[placement!]) {\n case 'bottom':\n return css`\n padding-top: 5px;\n `;\n case 'top':\n return css`\n padding-bottom: 5px;\n `;\n case 'right':\n return css`\n padding-left: 5px;\n `;\n case 'left':\n return css`\n padding-right: 5px;\n `;\n default:\n return css``;\n }\n}\n\nfunction tooltipArrowHandle(placement: TooltipStyleProps['placement']) {\n const obj = {\n right: 'right',\n rightTop: 'right',\n rightBottom: 'right',\n\n left: 'left',\n leftTop: 'left',\n leftBottom: 'left',\n\n top: 'top',\n topLeft: 'top',\n topRight: 'top',\n\n bottom: 'bottom',\n bottomLeft: 'bottom',\n bottomRight: 'bottom',\n };\n switch (obj[placement!]) {\n case 'right':\n return css`\n border-right-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TooltipStyleTheme }, 'borderColorTooltipStyleInnerWarpBase')};\n border-width: 5px 5px 5px 0;\n left: 0;\n margin-top: -5px;\n top: 50%;\n `;\n case 'left':\n return css`\n border-left-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TooltipStyleTheme }, 'borderColorTooltipStyleInnerWarpBase')};\n border-width: 5px 0 5px 5px;\n margin-top: -5px;\n right: 0;\n top: 50%;\n `;\n case 'top':\n return css`\n border-top-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TooltipStyleTheme }, 'borderColorTooltipStyleInnerWarpBase')};\n border-width: 5px 5px 0;\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n `;\n case 'bottom':\n return css`\n border-bottom-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TooltipStyleTheme }, 'borderColorTooltipStyleInnerWarpBase')};\n border-width: 0 5px 5px;\n left: 50%;\n margin-left: -5px;\n top: 0;\n `;\n default:\n return css``;\n }\n}\n\nexport const TooltipStyleWarp = styled.div<TooltipStyleProps>``;\nexport const TooltipStyleContainerWarp = styled.div<TooltipContainerProps>`\n position: relative;\n display: inline-block;\n ${(props) =>\n !props.visibleArrow &&\n css`\n padding: 0 !important;\n `}\n ${(props) => tooltipHandle(props.placement)}\n`;\nexport const TooltipStyleArrowWarp = styled.div<TooltipArrowProps>`\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n ${(props) => tooltipArrowHandle(props.placement)}\n ${({ placement }) => {\n if (['leftTop', 'rightTop'].includes(placement!)) {\n return css`\n top: 15px;\n `;\n }\n if (['leftBottom', 'rightBottom'].includes(placement!)) {\n return css`\n bottom: 10px;\n top: auto;\n `;\n }\n if (['bottomLeft', 'topLeft'].includes(placement!)) {\n return css`\n left: 15px;\n `;\n }\n if (['bottomRight', 'topRight'].includes(placement!)) {\n return css`\n right: 10px;\n left: auto;\n `;\n }\n return css``;\n }}\n`;\nexport const TooltipStyleInnerWarp = styled.div<ThemeVar>`\n font-size: 12px;\n max-width: 250px;\n padding: 5px 10px;\n display: block;\n color: #fff;\n text-align: left;\n text-decoration: none;\n border-radius: 4px;\n box-shadow: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TooltipStyleTheme }, 'boxShadowTooltipStyleInnerWarpBase')};\n word-break: break-all;\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TooltipStyleTheme }, 'backgroundColorTooltipStyleInnerWarpBase')};\n`;\n\n// TooltipStyleInnerWarp.defaultProps = {\n// defaultTheme: TooltipStyleTheme,\n// };\n// TooltipStyleArrowWarp.defaultProps = {\n// defaultTheme: TooltipStyleTheme,\n// };\n","import React from 'react';\nimport OverlayTrigger, { OverlayTriggerProps } from '@uiw/react-overlay-trigger';\nimport { IProps } from '@uiw/utils';\nimport { TooltipStyleWarp, TooltipStyleContainerWarp, TooltipStyleArrowWarp, TooltipStyleInnerWarp } from './style';\nexport interface TooltipProps extends IProps, OverlayTriggerProps {\n visibleArrow?: boolean;\n content?: React.ReactNode;\n}\nexport * from './style';\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 <TooltipStyleWarp\n as={OverlayTrigger}\n usePortal={usePortal}\n isOpen={isOpen}\n trigger={trigger}\n delay={delay}\n onVisibleChange={onVisibleChange}\n placement={placement}\n {...other}\n overlay={\n <TooltipStyleContainerWarp placement={placement} visibleArrow={visibleArrow} className={cls}>\n {visibleArrow && <TooltipStyleArrowWarp placement={placement} className={`${prefixCls}-arrow`} />}\n <TooltipStyleInnerWarp className={`${prefixCls}-inner`}>{props.content}</TooltipStyleInnerWarp>\n </TooltipStyleContainerWarp>\n }\n >\n {typeof props.children === 'object' ? props.children : <span>{props.children}</span>}\n </TooltipStyleWarp>\n );\n};\n","import styled, { css } from 'styled-components';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\nimport { TreeRenderTitleNode, TreeProps } from '../index';\nimport { IconStyleBase } from '@uiw/react-icon';\n\nexport const TreeStyleTheme = {\n borderRadiusTreeNodeDefault: '0 0 0 3px',\n borderTreeNodeDefaultAfter: '1px solid #d9d9d9',\n backgroundColorTreeNodeJudgeSelected: '#d5e8fc',\n colorTreeNodeUlLidivSpanDefault: '#2ea3f4',\n transformTreeNodeUlLidivSpanDefault: 'scale(0.79) rotate(0deg)',\n fontSizeTreeNodeStyleCSSTransitionDefault: '14px',\n transformTreeNodeUlLidivSpanIconDefault: 'scale(0.79) rotate(90deg) !important;',\n};\ntype ThemeVar = ThemeVariantValueOptions<typeof TreeStyleTheme>;\n\ninterface TreeNodeStyleCSSTransitionProps extends TreeRenderTitleNode, ThemeVar {\n isOpen: boolean;\n level: number;\n}\ninterface TreeNodeUlLidivProps extends ThemeVar {}\n\ninterface TreeNodeUlLidivSpanIconProps extends ThemeVar {\n isIcon?: string;\n isNoChild?: boolean;\n isIconAnimation?: boolean;\n isItemIsOpen?: boolean;\n}\ninterface TreeNodeUlLidivSpanDivProps extends ThemeVar {\n judgeSelected?: boolean;\n judgeisSelected?: boolean;\n isDisabled?: string | null;\n}\ninterface TreeNodeStyleWrapProps extends TreeProps, ThemeVar {}\n\nexport const TreeNodeStyleCSSTransition = styled.div<TreeNodeStyleCSSTransitionProps>`\n font-size: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TreeStyleTheme }, 'fontSizeTreeNodeStyleCSSTransitionDefault')};\n`;\n\n// TreeNodeStyleCSSTransition.defaultProps = {\n// defaultTheme: TreeStyleTheme,\n// };\n\nexport const TreeNodeStyleUl = styled.ul<TreeNodeStyleCSSTransitionProps>`\n padding: 0 !important;\n transition: 0.3s all;\n overflow: hidden;\n margin: 0;\n ul {\n padding-left: 18px !important;\n margin-bottom: 0;\n }\n li {\n list-style: none !important;\n & + li {\n margin-top: 2px !important;\n }\n &:first-child {\n padding-top: 3px;\n }\n }\n\n ${(props) => props.level !== 1 && props.isOpen && css``}\n\n ${(props) =>\n props.level !== 1 &&\n !props.isOpen &&\n css`\n height: 0;\n `}\n`;\n\nexport const TreeNodeStyleUlDiv = styled.div<TreeNodeUlLidivProps>`\n line-height: initial;\n & > * {\n vertical-align: middle;\n }\n`;\n\nexport const TreeNodeStyleUlLidivSpan = styled.div<TreeNodeUlLidivProps>`\n cursor: pointer;\n position: relative;\n z-index: 1;\n width: 14px;\n height: 14px;\n line-height: 14px;\n display: inline-block;\n text-align: center;\n &:hover {\n color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TreeStyleTheme }, 'colorTreeNodeUlLidivSpanDefault')};\n }\n ${IconStyleBase} {\n transition: 0.3s all;\n transform: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TreeStyleTheme }, 'transformTreeNodeUlLidivSpanDefault')};\n &.open:not(.no-animation) {\n transform: scale(0.79) rotate(90deg) !important;\n }\n }\n`;\n\n// TreeNodeStyleUlLidivSpan.defaultProps = {\n// defaultTheme: TreeStyleTheme,\n// };\n\nexport const TreeNodeStyleUlLidivSpanIcon = styled.div<TreeNodeUlLidivSpanIconProps>`\n ${(props) =>\n props.isNoChild &&\n !props.isIcon &&\n css`\n display: none;\n `}\n\n ${(props) =>\n props.isItemIsOpen &&\n props.isIconAnimation &&\n css`\n transform: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TreeStyleTheme }, 'transformTreeNodeUlLidivSpanIconDefault')};\n `}\n`;\n\n// TreeNodeStyleUlLidivSpanIcon.defaultProps = {\n// defaultTheme: TreeStyleTheme,\n// };\n\nexport const TreeNodeStyleUlLidivSpanDiv = styled.div<TreeNodeUlLidivSpanDivProps>`\n display: inline-block;\n padding: 2px 5px;\n cursor: pointer;\n\n ${(props) =>\n props.judgeSelected &&\n props.judgeisSelected &&\n css`\n background-color: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TreeStyleTheme }, 'backgroundColorTreeNodeJudgeSelected')};\n `}\n\n ${(props) =>\n props.judgeSelected &&\n css`\n cursor: not-allowed;\n `}\n\n > * {\n vertical-align: middle;\n }\n`;\n\nexport const TreeNodeStyleWrap = styled.div<TreeNodeStyleWrapProps>`\n li {\n position: relative;\n li {\n &:before,\n &::after {\n content: ' ';\n border-left: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TreeStyleTheme }, 'borderTreeNodeDefaultAfter')};\n left: -12px;\n position: absolute;\n }\n &::after {\n height: 100%;\n top: 5px;\n }\n &:last-child::after {\n height: 16px;\n top: -18px;\n }\n &:before {\n content: ' ';\n width: 10px;\n height: 16px;\n border-bottom: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TreeStyleTheme }, 'borderTreeNodeDefaultAfter')};\n top: -2px;\n }\n &:last-child::before {\n border-radius: ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TreeStyleTheme }, 'borderRadiusTreeNodeDefault')};\n }\n }\n }\n`;\n\n// TreeNodeStyleWrap.defaultProps = {\n// defaultTheme: TreeStyleTheme,\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 './';\nimport {\n TreeNodeStyleCSSTransition,\n TreeNodeStyleUl,\n TreeNodeStyleUlDiv,\n TreeNodeStyleUlLidivSpan,\n TreeNodeStyleUlLidivSpanIcon,\n TreeNodeStyleUlLidivSpanDiv,\n} from './style/index';\n\ninterface TreeNodeIconProps {\n isOpen: boolean;\n noChild: boolean;\n openKeys: TreeNodeProps['openKeys'];\n selectedKeys: TreeNodeProps['selectedKeys'];\n}\n\ninterface DisabledObj {\n onClick?: (item: TreeData, evn: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n disabled: string | null;\n disabledMouse: string | null;\n disabledClass?: string;\n disabledStyle?: React.CSSProperties;\n}\ninterface TreeNodeProps<T = (data: TreeData, props: TreeNodeIconProps) => IconProps['type']> extends IProps {\n data: TreeData[];\n level: number;\n isOpen?: boolean;\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, className }: { label: React.ReactNode; className?: string }) =>\n useMemo(() => <span className={className}>{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 const node = React.useRef<HTMLUListElement>(null);\n\n if (parent && (parent.key || parent.key === 0)) {\n isOpen = !!(openKeys && openKeys.indexOf(parent.key) > -1);\n }\n\n const onExit = useCallback(() => {\n node.current!.style.height = `${node.current!.scrollHeight}px`;\n }, []);\n const onExiting = useCallback(() => {\n node.current!.style.height = '1px';\n }, []);\n const onEnter = useCallback(() => {\n node.current!.style.height = '1px';\n }, []);\n const onEntering = useCallback(() => {\n node.current!.style.height = `${node.current!.scrollHeight}px`;\n }, []);\n const onEntered = useCallback(() => {\n node.current!.style.height = 'initial';\n }, []);\n\n return (\n <TreeNodeStyleCSSTransition\n as={CSSTransition}\n nodeRef={node}\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 <TreeNodeStyleUl\n ref={node}\n isOpen={isOpen}\n level={level}\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 const disabledObj: DisabledObj = {\n onClick: onItemSelected,\n disabled: null,\n disabledMouse: null,\n disabledClass: undefined,\n disabledStyle: undefined,\n };\n if (item.disabled) {\n disabledObj.onClick = undefined;\n disabledObj.disabled = 'disabled';\n disabledObj.disabledMouse = `${prefixCls}-disabled-mouse`;\n disabledObj.disabledClass = `${prefixCls}-disabled-ele`;\n disabledObj.disabledStyle = { color: '#00000040' };\n }\n return (\n <li key={idx} style={{ display: item.hideNode ? 'none' : 'block' }}>\n <TreeNodeStyleUlDiv className={`${prefixCls}-label`}>\n <TreeNodeStyleUlLidivSpan\n style={{ display: noChild ? 'none' : 'auto' }}\n className={`${prefixCls}-switcher`}\n onClick={(evn: React.MouseEvent<HTMLElement, MouseEvent>) => onItemClick(item, evn)}\n >\n <TreeNodeStyleUlLidivSpanIcon\n as={Icon}\n type={iconItem || 'caret-right'}\n isIcon={typeof icon}\n isNoChild={noChild}\n isIconAnimation={iconAnimation}\n isItemIsOpen={itemIsOpen}\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 </TreeNodeStyleUlLidivSpan>\n <TreeNodeStyleUlLidivSpanDiv\n onClick={(evn) => disabledObj.onClick?.(item, evn)}\n judgeSelected={selected}\n judgeisSelected={isSelected}\n isDisabled={disabledObj.disabled}\n className={[\n `${prefixCls}-title`,\n selected && isSelected ? 'selected' : null,\n disabledObj.disabled,\n disabledObj.disabledMouse,\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 disabled: item.disabled,\n disabledClass: disabledObj.disabledClass,\n disabledStyle: disabledObj.disabledStyle,\n })\n ) : (\n <Label label={item.label} className={disabledObj.disabledClass} />\n )}\n </TreeNodeStyleUlLidivSpanDiv>\n </TreeNodeStyleUlDiv>\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 </TreeNodeStyleUl>\n </TreeNodeStyleCSSTransition>\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 { TreeNodeStyleWrap } from './style/index';\nexport * from './style';\n\nexport type TreeRenderTitleNode = {\n selected?: boolean;\n noChild?: boolean;\n isHalfChecked?: boolean;\n openKeys?: TreeProps['openKeys'];\n selectedKeys?: TreeProps['selectedKeys'];\n disabled?: boolean;\n disabledClass?: string;\n disabledStyle?: React.CSSProperties;\n};\n\nexport interface TreeProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\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 onChange?: (key: string | number | undefined, eys: (string | number | undefined)[]) => void;\n value?: TreeData['key'][];\n}\n\nexport interface TreeData {\n label?: React.ReactNode;\n children?: TreeData[];\n hideNode?: boolean;\n key?: string | number;\n disabled?: boolean;\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 = (\n childs: TreeData[] = [],\n result: TreeData['key'][] = [],\n depth?: number,\n): TreeData['key'][] => {\n childs.forEach((item) => {\n if (!item.hideNode) {\n result.push(item.key as string | number);\n }\n if (typeof depth === 'number' && !(depth - 1)) return;\n\n if (item.children && item.children.length > 0) {\n result = result.concat(getChildKeys(item.children, undefined, depth ? depth - 1 : undefined));\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, undefined, 1))) {\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 = true,\n renderTitle,\n onChange,\n value,\n ...elementProps\n } = props;\n\n const [curOpenKeys, setCurOpenKeys] = useState(openKeys);\n const [curSelectedKeys, setCurSelectedKeys] = useState(value || selectedKeys);\n\n useEffect(() => {\n setCurSelectedKeys(props.value || props.selectedKeys || []);\n }, [JSON.stringify(props.selectedKeys), JSON.stringify(props.value)]);\n\n useEffect(() => {\n let arrOpenKeys: TreeData['key'][] = [...curOpenKeys];\n if (defaultExpandAll) {\n arrOpenKeys = getChildKeys(data);\n } else if (autoExpandParent) {\n arrOpenKeys.push(...getChildKeys(data || [], undefined, 1));\n }\n setCurOpenKeys(arrOpenKeys);\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 && findKey !== 0) {\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 onChange?.(item.key, selKeys);\n }\n return (\n <TreeNodeStyleWrap 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 </TreeNodeStyleWrap>\n );\n}\n","import styled from 'styled-components';\n\ninterface TreeCheckedProps {\n defaultTheme?: Record<string, string | number>;\n}\n\nexport const TreeCheckboxStyleBase = styled.div<TreeCheckedProps>`\n margin-right: 5px;\n`;\n","import React, { Fragment } from 'react';\nimport Tree, { TreeProps, TreeRenderTitleNode, TreeData } from '@uiw/react-tree';\nimport Checkbox, { CheckboxProps } from '@uiw/react-checkbox';\nimport { TreeCheckboxStyleBase } from './style/index';\nexport * from './style';\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 <TreeCheckboxStyleBase\n as={Checkbox}\n className={`${prefixCls}-checked`}\n disabled={node.disabled}\n {...checkedProps}\n />\n {item.label && <span className={node.disabledClass}>{item.label}</span>}\n </Fragment>\n );\n }}\n {...props}\n />\n );\n}\n","import styled, { css } from 'styled-components';\nimport Dropdown from '@uiw/react-dropdown';\nimport Input, { InputStyleBase } from '@uiw/react-input';\nimport Tag from '@uiw/react-tag';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const DropdownStyleTheme = {\n backgroundColorDropdownDivBase: '#fff',\n colorDropdownDivBase: '#393e48',\n backgroundColorDropdownDivDisabled: '#dddddd',\n colorDropdownDivDisabled: '#a5a5a5',\n\n boxShadowDropdownDiv: `0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15),inset 0 1px 1px rgba(16, 22, 26, 0.2)`,\n boxShadowDropdownDivFocus: `box-shadow: 0 0 0 1px #393e48, 0 0 0 3px rgba(57, 62, 72, 0.17), inset 0 1px 1px rgba(16, 22, 26, 0.2)`,\n boxShadowDropdownDivhover: `box-shadow: 0 0 0 1px #6e6e6e, 0 0 0 3px rgba(57, 62, 72, 0), inset 0 1px 1px rgba(16, 22, 26, 0.2)`,\n boxShadowDropdownDivFocushover: `box-shadow: 0 0 0 1px #6e6e6e, 0 0 0 3px rgba(57, 62, 72, 0.17), inset 0 1px 1px rgba(16, 22, 26, 0.2)`,\n};\n\nexport interface DropdownDivProps extends ThemeVariantValueOptions<typeof DropdownStyleTheme> {\n size?: string;\n}\n\nexport const DropdownWrap = styled(Dropdown)``;\n\nexport const DropdownDiv = styled.div<DropdownDivProps>`\n ${(props) => css`\n display: flex;\n // overflow: hidden;\n justify-content: space-between;\n outline: none;\n border: none;\n align-items: center;\n border-radius: 3px;\n box-shadow: ${getThemeVariantValue({ ...props, defaultTheme: DropdownStyleTheme }, 'boxShadowDropdownDiv')};\n box-sizing: border-box;\n background: ${getThemeVariantValue(\n { ...props, defaultTheme: DropdownStyleTheme },\n 'backgroundColorDropdownDivBase',\n )};\n min-height: 30px;\n margin: 0 !important;\n padding: 3px 10px 3px 10px;\n vertical-align: middle;\n line-height: 30px;\n color: ${getThemeVariantValue({ ...props, defaultTheme: DropdownStyleTheme }, 'colorDropdownDivBase')};\n font-weight: 400;\n font-size: inherit;\n transition: box-shadow 0.3s cubic-bezier(0.4, 1, 0.75, 0.9);\n appearance: none;\n\n &:focus {\n ${getThemeVariantValue({ ...props, defaultTheme: DropdownStyleTheme }, 'boxShadowDropdownDivFocus')};\n }\n\n &:hover {\n ${getThemeVariantValue({ ...props, defaultTheme: DropdownStyleTheme }, 'boxShadowDropdownDivhover')};\n }\n\n &:focus&:hover {\n ${getThemeVariantValue({ ...props, defaultTheme: DropdownStyleTheme }, 'boxShadowDropdownDivFocushover')};\n }\n\n &:disabled {\n box-shadow: none;\n background: ${getThemeVariantValue(\n { ...props, defaultTheme: DropdownStyleTheme },\n 'backgroundColorDropdownDivDisabled',\n )};\n opacity: 0.75;\n color: ${getThemeVariantValue({ ...props, defaultTheme: DropdownStyleTheme }, 'colorDropdownDivDisabled')};\n cursor: not-allowed;\n resize: none;\n }\n `}\n ${(props) => {\n if (props.size === 'small') {\n return css`\n & ${InputStyleBase} {\n height: 16px;\n font-size: 10px;\n padding: 0px;\n }\n `;\n }\n }}\n ${(props) => {\n if (props.size === 'large') {\n return css`\n & ${InputStyleBase} {\n // line-height:0px !important;\n height: 28px;\n }\n `;\n }\n }}\n`;\n\n// DropdownDiv.defaultProps = {\n// defaultTheme: DropdownStyleTheme,\n// };\n\nexport const DropdownDivTag = styled(Tag)``;\n\nexport const DropdownDivInput = styled(Input)`\n flex: 1;\n top: 1px;\n\n input {\n box-shadow: none;\n padding: 0px;\n height: 20px;\n min-width: 50px;\n }\n\n .w-input-inner {\n &:hover {\n box-shadow: none !important;\n }\n\n &:focus {\n box-shadow: none !important;\n }\n }\n`;\n\nexport const DropdownDivSpan = styled.span`\n width: 14px;\n display: flex;\n align-content: center;\n`;\n","import React, { useMemo, useState, useRef, useEffect, ReactElement } from 'react';\nimport { DropdownProps } from '@uiw/react-dropdown';\nimport Icon from '@uiw/react-icon';\nimport { TagProps } from '@uiw/react-tag';\nimport Card from '@uiw/react-card';\nimport Empty from '@uiw/react-empty';\nimport { IProps } from '@uiw/utils';\nimport { DropdownWrap, DropdownDiv, DropdownDivTag, DropdownDivSpan, DropdownDivInput } from './style/index';\n\nconst TagSize = { large: 25, default: 20, small: 17 };\n\nexport interface DropContent<V> {\n values: Array<V>;\n onSelected?: (selectedAll: Array<V>, selectd: V, isChecked: boolean) => void;\n options?: Array<any>;\n}\n\nexport interface SearchTagInputOption {\n label: string;\n key: string | number;\n}\n\nexport interface SearchTagInputProps<V> extends IProps, DropdownProps, DropContent<V> {\n allowClear?: boolean;\n content: ReactElement<DropContent<V>>;\n size?: 'large' | 'default' | 'small';\n onChange: (selectedAll: Array<V>, selectd: V, isChecked: boolean) => void;\n onSearch?: (seachValue: string) => void;\n loading?: boolean;\n placeholder?: string;\n emptyOption?: boolean | React.ReactNode;\n selectCloseDrop?: boolean;\n tagProps?: TagProps;\n}\n\nfunction SearchTagInput<V extends SearchTagInputOption>(props: SearchTagInputProps<V>) {\n const {\n prefixCls = 'w-search-tree',\n size = 'default',\n disabled = false,\n allowClear = false,\n loading = false,\n selectCloseDrop = false,\n className,\n style,\n placeholder,\n\n tagProps = {},\n content,\n options,\n values,\n onChange,\n onSearch,\n emptyOption,\n // ...others\n } = props;\n\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n const [innerIsOpen, setInnerIsOpen] = useState(false);\n const [selectedOption, setSelectedOption] = useState<Array<V>>(values);\n const optionRef = useRef<Array<V>>();\n const [searchValue, searchValueSet] = useState<string>('');\n optionRef.current = useMemo(() => selectedOption, [selectedOption]);\n const [selectIconType, setSelectIconType] = useState('');\n const inputRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n setSelectedOption(values);\n }, [JSON.stringify(values)]);\n\n function renderSelectIcon(type: string) {\n const selectIconType = type === 'enter' && allowClear && (!!selectedOption.length || searchValue) ? 'close' : '';\n setSelectIconType(selectIconType);\n }\n\n const handleSelectChange = (selectedAll: Array<V>, selectd?: V, isChecked: boolean = true) => {\n setSelectedOption(selectedAll);\n\n searchValueChange('');\n onChange?.(selectedAll, selectd!, isChecked);\n };\n\n const removeSelectItem = (index: number) => {\n const selectedOption = optionRef.current as Array<V>;\n const curreentItem = selectedOption[index];\n selectedOption.splice(index, 1);\n handleSelectChange([...selectedOption], curreentItem, false);\n };\n\n function handleInputChange(value: string) {\n setInnerIsOpen(true);\n searchValueChange(value);\n setSelectIconType(value ? 'loading' : '');\n }\n\n const searchValueChange = (value: string) => {\n searchValueSet(value);\n onSearch?.(value);\n };\n\n // 清除选中的值\n function resetSelectedValue(e: any) {\n e.stopPropagation();\n inputRef.current?.focus();\n handleInputChange('');\n setInnerIsOpen(false);\n setSelectedOption([]);\n handleSelectChange([]);\n }\n\n function inputKeyDown(e: any) {\n if (selectedOption.length > 0 && !searchValue && e.keyCode === 8) {\n removeSelectItem(selectedOption.length - 1);\n }\n }\n\n const newContent = useMemo(() => {\n if (emptyOption) {\n return typeof emptyOption === 'boolean' ? <Empty style={{ minWidth: 200, width: style?.width }} /> : emptyOption;\n }\n\n const newProps = {\n ...content.props,\n onSelected: (selectedAll: Array<V>, selectd?: V, isChecked: boolean = true) => {\n setInnerIsOpen(!selectCloseDrop);\n handleSelectChange(selectedAll, selectd, isChecked);\n },\n values: selectedOption,\n options,\n };\n return React.cloneElement(content as JSX.Element, newProps);\n }, [JSON.parse(JSON.stringify(selectedOption)), options, emptyOption]);\n\n return (\n <DropdownWrap\n className={cls}\n trigger=\"click\"\n onVisibleChange={(isOpen: boolean) => {\n setInnerIsOpen(isOpen);\n if (!isOpen) searchValueChange('');\n }}\n disabled={disabled}\n isOpen={innerIsOpen}\n menu={<Card bodyStyle={emptyOption === true ? { padding: 0 } : undefined}>{newContent}</Card>}\n >\n <div\n onMouseOver={() => renderSelectIcon('enter')}\n onMouseLeave={() => renderSelectIcon('leave')}\n onClick={() => inputRef.current?.focus()}\n style={{ minWidth: style?.width || 200, maxWidth: 'none', ...style }}\n >\n <DropdownDiv\n size={size}\n className={[`${prefixCls}-inner`, `${prefixCls}-${size}`].filter(Boolean).join(' ').trim()}\n >\n <div style={{ display: 'flex', flexFlow: 'wrap', width: '100%' }}>\n {selectedOption.map((item, index) => {\n return (\n <DropdownDivTag\n style={{ height: TagSize[size], margin: 1, display: 'flex', alignItems: 'center' }}\n className={`${prefixCls}-tag`}\n key={index}\n closable\n color=\"#393E48\"\n {...tagProps}\n disabled={disabled}\n onClose={(e) => {\n e.stopPropagation();\n removeSelectItem(index);\n }}\n >\n {item.label}\n </DropdownDivTag>\n );\n })}\n <DropdownDivInput\n ref={inputRef}\n className={`${prefixCls}-input-contents`}\n size={size}\n disabled={disabled}\n onKeyDown={inputKeyDown}\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => handleInputChange(e.target.value)}\n value={searchValue}\n placeholder={selectedOption.length ? '' : placeholder}\n />\n </div>\n {!disabled && (\n <DropdownDivSpan style={{ height: 25, width: 14 }} className={`${prefixCls}-close-tag-contents`}>\n {(selectIconType === 'close' || (selectIconType === 'loading' && loading)) && (\n <Icon\n type={selectIconType}\n spin={loading && selectIconType === 'loading'}\n onClick={resetSelectedValue}\n />\n )}\n </DropdownDivSpan>\n )}\n </DropdownDiv>\n </div>\n </DropdownWrap>\n );\n}\n\nexport default SearchTagInput;\n","import React, { useState, useEffect } from 'react';\nimport SearchTagInput, { DropContent, SearchTagInputOption } from './SearchTagInput';\nimport Tree, { TreeData, TreeProps } from '@uiw/react-tree';\nimport TreeChecked, { TreeCheckedProps } from '@uiw/react-tree-checked';\nexport * from './style';\n\ntype SelectOtpion = Record<string | number, string>;\n\n// type TreeCheckedsProps = TreeCheckedProps & Partial<DropContent<SearchTagInputOption>>\nfunction TreeCheckeds<V extends SearchTagInputOption>(\n props: Omit<TreeCheckedProps, 'onSelected'> & Partial<DropContent<V>>,\n) {\n const [selectOption, selectOptionSet] = useState<SelectOtpion>({});\n const [keys, keysSet] = useState<Array<string | number>>([]);\n\n useEffect(() => {\n let selectOption: SelectOtpion = {};\n const keys = props.values?.map((opt) => {\n selectOption[opt.key] = opt.label;\n return opt.key;\n });\n selectOptionSet(selectOption);\n keysSet(keys || []);\n }, [props.values]);\n\n const onSelected = (_: any, item: any, isChecked: boolean, evn: TreeData) => {\n const curSelectOption: SelectOtpion = getOptionsRecursion([evn], selectOption, isChecked);\n let isNumberKey = false;\n if (typeof item === 'number') isNumberKey = true;\n const option = Object.entries(curSelectOption).map(\n ([key, label]) => ({ key: isNumberKey ? Number.parseInt(key) : key, label } as V),\n );\n props.onSelected?.(option, { key: evn.key, label: evn.label as string } as V, isChecked);\n };\n\n const getOptionsRecursion = (childrens: TreeData[], selectOption: SelectOtpion, isAdd: boolean) => {\n const addOrDel = (key: string | number, label: string, isAdd: boolean) => {\n if (isAdd) {\n selectOption[key] = label;\n } else {\n delete selectOption[key!];\n }\n };\n const iteratorParent = (child: TreeData) => {\n // 向上迭代\n if (child.parent) {\n const selectCount = child.parent.children.filter((child: TreeData) => !selectOption[child.key!]).length;\n addOrDel(child.parent.key, child.parent.label, selectCount === 0);\n iteratorParent(child.parent);\n }\n };\n\n childrens.forEach((child: TreeData) => {\n if (!!child.children?.length) {\n selectOption = getOptionsRecursion(child.children, selectOption, isAdd);\n }\n addOrDel(child.key!, child.label?.toString()!, isAdd);\n iteratorParent(child);\n });\n return selectOption;\n };\n\n return (\n <TreeChecked defaultExpandAll={true} {...props} data={props.options} selectedKeys={keys} onSelected={onSelected} />\n );\n}\n\nfunction SingeTree<V extends SearchTagInputOption>(props: Omit<TreeProps, 'onSelected'> & Partial<DropContent<V>>) {\n const [keys, keysSet] = useState<Array<string | number>>([]);\n\n useEffect(() => {\n const keys: Array<string | number> = [];\n if (props.values?.length) keys[0] = props.values[0].key;\n keysSet(keys);\n }, [props.values]);\n\n const onSelected = (_1: any, _2: any, isChecked: boolean, evn: TreeData) => {\n const { key, label } = evn;\n const cur = { key, label } as V;\n props.onSelected?.(isChecked ? [cur] : [], cur, isChecked);\n };\n\n return (\n <Tree\n defaultExpandAll={true}\n {...props}\n multiple={false}\n data={props.options}\n selectedKeys={keys}\n onSelected={onSelected}\n />\n );\n}\n\nexport interface SearchTreeProps<V> {\n onChange?: (selectd: V, selectedAll: Array<V>, isChecked: boolean) => void;\n onSearch?: (seachValue: string) => void;\n value?: Array<V>;\n options?: TreeData[];\n treeProps?: Omit<TreeCheckedProps, 'onSelected'> & Partial<DropContent<V>>;\n emptyOption?: React.ReactNode;\n multiple?: boolean;\n}\n\nfunction SearchTree<V extends SearchTagInputOption>(props: SearchTreeProps<V>) {\n const {\n onChange,\n onSearch,\n multiple = true,\n options = [],\n value = [],\n emptyOption = !options.length,\n treeProps,\n ...other\n } = props;\n const [selectedValues, selectedValuesSet] = useState<Array<V>>(Array.isArray(value) ? value : [value]);\n const [selectedOptions, selectedOptionSet] = useState<Array<TreeData>>(options);\n const [isEmpty, isEmptySet] = useState(emptyOption);\n\n useEffect(() => {\n selectedValuesSet(Array.isArray(value) ? value : []);\n }, [JSON.stringify(value)]);\n\n const selectedChange = (resultValue: Array<V>, cur: V, isChecked: boolean) => {\n selectedValuesSet(resultValue);\n onChange?.(cur, resultValue, isChecked);\n };\n\n // 防抖\n const debounce = (fn: Function, ms: number) => {\n let timeoutId: NodeJS.Timeout;\n return (searchValue: string) => {\n onSearch?.(searchValue);\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => {\n fn(searchValue);\n }, ms);\n };\n };\n\n const selectedSearch = (searchValue: string) => {\n const hiddenNodeForSeach = (childrens: TreeData[], parentIsHide: boolean = true) => {\n childrens.forEach((child: TreeData) => {\n const isHide = !(child.label as string).includes(searchValue.trim()) && parentIsHide;\n if (!!child.children?.length) {\n hiddenNodeForSeach(child.children, isHide);\n const find = child.children.find((item) => !item.hideNode);\n child.hideNode = isHide && !find;\n } else {\n child.hideNode = isHide;\n }\n });\n };\n hiddenNodeForSeach(options);\n selectedOptionSet([...options]);\n\n let isEmpt = true;\n options.forEach((opt) => (isEmpt = isEmpt && !!opt.hideNode));\n isEmptySet(typeof emptyOption === 'boolean' && isEmpt ? isEmpt : emptyOption);\n };\n\n return (\n <SearchTagInput\n {...other}\n emptyOption={isEmpty}\n selectCloseDrop={!multiple}\n onSearch={selectedSearch}\n onChange={selectedChange}\n values={selectedValues}\n options={selectedOptions}\n content={multiple ? <TreeCheckeds {...treeProps} /> : <SingeTree {...treeProps} />}\n />\n );\n}\n\nexport default SearchTree;\n","import React, { useEffect, useRef, useState } from 'react';\nimport { IProps } from '@uiw/utils';\nimport { DownSquareO } from '@uiw/icons/lib/DownSquareO';\nimport Input from '@uiw/react-input';\nimport TreeChecked from '@uiw/react-tree-checked';\nimport { TreeData } from '@uiw/react-tree';\nimport Checkbox from '@uiw/react-checkbox';\nimport TranSferWarp, { TransferArrow, TransferArrowContent, TransferCard, TransferChekedContentWrap } from './style';\nexport * from './style';\n\nexport interface TransferOptionType {\n key: string | number;\n label: string;\n}\n\nenum CheckedStatus {\n UnChecked = 0,\n AllChecked = 1,\n Indeterminate = 2,\n}\n\ninterface TransferProps extends IProps {\n placeholder?: string;\n bodyStyle?: React.CSSProperties;\n\n onChange?: (transfer: string, selectedAll: Array<TransferOptionType>) => void;\n onSearch?: (transfer: string, seachValue: string) => void;\n showSearch?: boolean;\n selectedAll?: boolean;\n value?: Array<TransferOptionType>;\n options?: TreeData[];\n // emptyOption?: React.ReactNode;\n}\n\nfunction Transfer(props: TransferProps) {\n const {\n placeholder,\n options,\n value = [],\n showSearch = false,\n selectedAll = false,\n\n bodyStyle,\n style,\n className,\n prefixCls = 'w-transfer',\n } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n\n const [searchValueLeft, searchValueLeftSet] = useState('');\n const [searchValueRight, searchValueRightSet] = useState('');\n const [selectedOptions, selectedOptionSet] = useState<Array<TreeData>>(options || []);\n const selectedOptionsShowCount = useRef<number>(0);\n const [selectOption, selectOptionSet] = useState<Map<string | number, string>>(new Map());\n const [leftSelectOption, leftSelectOptionSet] = useState<Map<string | number, string>>(new Map());\n const [leftSelectedKeys, leftSelectedKeySet] = useState<Array<string | number | undefined>>([]);\n const [rightSelectedKeys, rightSelectedKeySet] = useState<Array<string | number | undefined>>([]);\n const [rightOpions, rightOpionSet] = useState<Array<TreeData>>([]);\n const [selectAllChecked, selectAllCheckedSet] = useState<{ left: CheckedStatus; right: CheckedStatus }>({\n left: CheckedStatus.UnChecked,\n right: CheckedStatus.UnChecked,\n });\n\n useEffect(() => {\n if (value) {\n rightOpionSet(value || []);\n\n value?.forEach((selectd) => selectOption.set(selectd.key, selectd.label));\n hiddenNode((child) => !!value?.find((selectd) => child.key === selectd.key));\n }\n }, [JSON.stringify(value)]);\n\n const hiddenNode = (callBackfn: (child: TreeData) => boolean) => {\n selectedOptionsShowCount.current = 0;\n const hiddenNodeForSeach = (childrens: TreeData[]) => {\n childrens.forEach((child: TreeData) => {\n const isHide = callBackfn(child); // && parentIsHide;\n if (!!child.children?.length) {\n hiddenNodeForSeach(child.children);\n const find = child.children.find((item: TreeData) => !item.hideNode);\n child.hideNode = isHide && !find;\n } else {\n child.hideNode = isHide;\n }\n if (!child.hideNode) {\n selectedOptionsShowCount.current++;\n }\n });\n };\n hiddenNodeForSeach(selectedOptions);\n selectedOptionSet([...selectedOptions]);\n };\n\n const getOptionsRecursion = (childrens: TreeData[], selectOption: Map<string | number, string>, isAdd: boolean) => {\n const addOrDel = (key: string | number, label: string, isAdd: boolean) => {\n if (isAdd) {\n selectOption.set(key, label);\n } else {\n selectOption.delete(key);\n }\n };\n const iteratorParent = (child: TreeData) => {\n if (child.parent) {\n const selectCount = child.parent.children.filter(\n (child: TreeData) => !selectOption.get(child.key!) && !child.hideNode,\n ).length;\n addOrDel(child.parent.key, child.parent.label, selectCount === 0);\n iteratorParent(child.parent);\n }\n };\n\n childrens.forEach((child: TreeData) => {\n if (!!child.children?.length) {\n selectOption = getOptionsRecursion(child.children, selectOption, isAdd);\n }\n addOrDel(child.key!, child.label?.toString()!, isAdd);\n iteratorParent(child);\n });\n return selectOption;\n };\n\n const leftTreeOnSelected = (\n selectedKeys: Array<string | number | undefined>,\n _1: any,\n isChecked: boolean,\n evn: TreeData,\n ) => {\n leftSelectedKeySet(selectedKeys);\n const selectOptionTemp = getOptionsRecursion([evn], leftSelectOption, isChecked);\n leftSelectOptionSet(selectOptionTemp);\n };\n\n const rightTreeOnSelected = (selectedKeys: Array<string | number | undefined>) => {\n rightSelectedKeySet(selectedKeys);\n };\n\n const transferClick = (transferType: 'left' | 'right') => {\n if (transferType === 'left') {\n leftSelectOption.forEach((value, key) => {\n selectOption.set(key, value);\n });\n leftSelectOptionSet(new Map());\n leftSelectedKeySet([]);\n } else {\n rightSelectedKeys.forEach((key) => {\n selectOption.delete(key!);\n });\n rightSelectedKeySet([]);\n }\n\n selectOptionSet(selectOption);\n const option: Array<TransferOptionType> = [];\n selectOption.forEach((label, key) => option.push({ key, label }));\n props.onChange?.(transferType, option);\n };\n\n const searchValueLeftChange = (searchValue: string) => {\n hiddenNode((child: TreeData) => {\n let searchIsMatch = !(child.label as string).includes(searchValue.trim());\n if (!searchIsMatch) {\n const isSekected = rightOpions.find((selected) => selected.key === child.key);\n searchIsMatch = !!isSekected;\n }\n return searchIsMatch;\n });\n\n searchValueLeftSet(searchValue);\n\n props.onSearch?.('left', searchValue);\n };\n\n const searchValueRightChange = (searchValue: string) => {\n searchValueRightSet(searchValue);\n\n rightOpions.forEach((option) => {\n const isHide = !(option.label as string).includes(searchValue.trim());\n option.hideNode = isHide;\n });\n rightOpionSet(rightOpions);\n\n props.onSearch?.('right', searchValue);\n };\n\n const selectAllLeftChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const isChecked = e.target.checked;\n\n selectAllChecked.left = isChecked ? 1 : 0;\n if (isChecked) {\n const keys: Array<string | number> = [];\n const selectedOptionsRecursion = (selectedOptions: Array<TreeData>) => {\n selectedOptions.forEach((child) => {\n if (child.children?.length) {\n selectedOptionsRecursion(child.children);\n }\n if (!child.hideNode) {\n leftSelectOption.set(child.key!, child.label as string);\n keys.push(child.key!);\n }\n });\n };\n selectedOptionsRecursion(selectedOptions);\n\n leftSelectOptionSet(leftSelectOption);\n leftSelectedKeySet(keys);\n } else {\n leftSelectedKeySet([]);\n leftSelectOptionSet(new Map());\n }\n selectAllCheckedSet(selectAllChecked);\n };\n\n const selectAllRightChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const isChecked = e.target.checked;\n\n selectAllChecked.right = isChecked ? 1 : 0;\n if (isChecked) {\n const keys = rightOpions.map((child) => child.key);\n rightSelectedKeySet(keys);\n } else {\n rightSelectedKeySet([]);\n }\n selectAllCheckedSet(selectAllChecked);\n };\n\n const Arrow = (props: { click: () => void; style: React.CSSProperties }) => (\n <TransferArrow\n onClick={() => props.click()}\n className={`${prefixCls}-arrow`}\n style={{ fontSize: 20, stroke: '#e9e9e9', ...props.style }}\n >\n <DownSquareO />\n </TransferArrow>\n );\n\n return (\n <TranSferWarp className={cls} style={{ width: 400, ...style }}>\n <TransferCard\n bodyStyle={{ padding: '5px 9px' }}\n title={\n <div>\n {selectedAll && (\n <Checkbox\n indeterminate={leftSelectedKeys.length < selectedOptionsShowCount.current && !!leftSelectedKeys.length}\n checked={leftSelectedKeys.length >= selectedOptionsShowCount.current && !!leftSelectedKeys.length}\n onChange={selectAllLeftChange}\n />\n )}\n <label style={{ marginLeft: 3 }}>\n {leftSelectedKeys.length}/{selectedOptionsShowCount.current}\n </label>\n </div>\n }\n className={`${prefixCls}-card`}\n >\n {showSearch && (\n <Input\n placeholder={placeholder}\n value={searchValueLeft}\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => searchValueLeftChange(e.target.value)}\n />\n )}\n <TransferChekedContentWrap className={`${prefixCls}-cheked-content`}>\n <TreeChecked\n defaultExpandAll={true}\n placeholder={placeholder || '搜索选项'}\n data={selectedOptions}\n selectedKeys={leftSelectedKeys}\n onSelected={leftTreeOnSelected}\n />\n </TransferChekedContentWrap>\n </TransferCard>\n <TransferArrowContent className={`${prefixCls}-arrow-content`}>\n <Arrow\n click={() => transferClick('left')}\n style={{ transform: 'rotate(-90deg)', background: leftSelectedKeys.length > 0 ? '#393E48' : 'none' }}\n />\n <Arrow\n click={() => transferClick('right')}\n style={{ transform: 'rotate(90deg)', background: rightSelectedKeys.length > 0 ? '#393E48' : 'none' }}\n />\n </TransferArrowContent>\n <TransferCard\n bodyStyle={{ padding: '5px 9px' }}\n className={`${prefixCls}-card`}\n title={\n <div>\n {selectedAll && (\n <Checkbox\n indeterminate={rightSelectedKeys.length < rightOpions.length && !!rightSelectedKeys.length}\n checked={rightSelectedKeys.length === rightOpions.length && !!rightSelectedKeys.length}\n onChange={selectAllRightChange}\n />\n )}\n <label style={{ marginLeft: 3 }}>\n {rightSelectedKeys.length}/{rightOpions.length}\n </label>\n </div>\n }\n >\n {showSearch && (\n <Input\n placeholder={placeholder}\n value={searchValueRight}\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => searchValueRightChange(e.target.value)}\n />\n )}\n <div className={`${prefixCls}-cheked-content`} style={bodyStyle}>\n <TreeChecked data={rightOpions} selectedKeys={rightSelectedKeys} onSelected={rightTreeOnSelected} />\n </div>\n </TransferCard>\n </TranSferWarp>\n );\n}\n\nexport default Transfer;\n","import styled from 'styled-components';\nimport Card from '@uiw/react-card';\nimport { IconStyleBase } from '@uiw/react-icon';\nimport { getThemeVariantValue, ThemeVariantValueOptions } from '@uiw/utils';\n\nexport const TransferStyleTheme = {\n boxShadowColorTransferArrowPropsHover: 'rgba(0, 0, 0, 0.2)',\n};\n\nexport const TransferWrap = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\nexport const TransferChekedContentWrap = styled.div`\n height: 200px;\n overflow-y: auto;\n`;\n\ninterface TransferArrowProps extends ThemeVariantValueOptions<typeof TransferStyleTheme> {}\n\nexport const TransferArrow = styled(IconStyleBase)<TransferArrowProps>`\n transition: all 0.3s;\n border-radius: 3px;\n\n &:hover {\n cursor: pointer;\n box-shadow: 0 1px 6px\n ${(props) =>\n getThemeVariantValue({ ...props, defaultTheme: TransferStyleTheme }, 'boxShadowColorTransferArrowPropsHover')};\n }\n`;\n\n// TransferArrow.defaultProps = {\n// defaultTheme: TransferStyleTheme,\n// };\n\nexport const TransferArrowContent = styled.div`\n width: 50px;\n height: 50px;\n display: flex;\n flex-direction: column;\n align-self: center;\n justify-content: space-between;\n`;\n\nexport const TransferCard = styled(Card)`\n width: 50%;\n`;\n\nexport default TransferWrap;\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};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\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/\" + (chunkId === 6982 ? \"vendors-standalone\" : chunkId) + \".\" + {\"190\":\"7edd1c49\",\"250\":\"5029ec67\",\"333\":\"fc71eebd\",\"335\":\"55ffc344\",\"429\":\"6578eb87\",\"432\":\"842962e5\",\"462\":\"39e1bec8\",\"498\":\"9f80c5a9\",\"530\":\"941bb02b\",\"597\":\"6f3e5305\",\"636\":\"19ac1d51\",\"649\":\"2a00838f\",\"713\":\"3e83e480\",\"981\":\"a1c7c417\",\"1048\":\"94a6aa97\",\"1067\":\"929ba8ec\",\"1079\":\"7e1718e2\",\"1175\":\"2cf5938c\",\"1451\":\"71d00f70\",\"1515\":\"2ee6027c\",\"1548\":\"27ecb715\",\"1574\":\"e7e8ca0b\",\"1643\":\"65a6a029\",\"1661\":\"b1a4a663\",\"1750\":\"5227bb5e\",\"1859\":\"bd807a1a\",\"1876\":\"3c742a52\",\"1892\":\"747ca247\",\"1949\":\"4901c469\",\"2076\":\"2a2f2e73\",\"2081\":\"a5c6c0b2\",\"2134\":\"896a7264\",\"2144\":\"f1ee5d55\",\"2191\":\"fc8156c5\",\"2204\":\"d91f4856\",\"2206\":\"4be5f8cc\",\"2287\":\"c9c15c22\",\"2302\":\"67c3dc9d\",\"2326\":\"7de8ad72\",\"2633\":\"bb70d96d\",\"2637\":\"95d4fa7a\",\"2730\":\"d4b6b372\",\"2810\":\"c0c4b751\",\"2860\":\"549461c8\",\"2869\":\"19a25def\",\"3055\":\"6c2a89d9\",\"3061\":\"c6cb9624\",\"3083\":\"31e3897e\",\"3109\":\"4af44a9a\",\"3118\":\"55491fc1\",\"3161\":\"7ae98c7e\",\"3177\":\"08de3d50\",\"3231\":\"7dbcf978\",\"3479\":\"81aeb044\",\"3508\":\"43d1d7b5\",\"3535\":\"9eff8919\",\"3552\":\"b2d3cdc8\",\"3612\":\"b01520f8\",\"3717\":\"f662d52e\",\"3720\":\"bedba81e\",\"3896\":\"bc8dd991\",\"3906\":\"4b3d3d6f\",\"3914\":\"39b5d360\",\"3984\":\"34d17ea2\",\"4061\":\"7e66b830\",\"4070\":\"2a352912\",\"4093\":\"80bd3f93\",\"4107\":\"522b28bd\",\"4137\":\"ccad4554\",\"4156\":\"7fc5b913\",\"4307\":\"b6ec90e6\",\"4364\":\"112c13ed\",\"4455\":\"4a4ae4c6\",\"4477\":\"fd1c653c\",\"4529\":\"96f6ee1c\",\"4575\":\"1d093633\",\"4725\":\"759d8a27\",\"4861\":\"95afad19\",\"5388\":\"d65e3afc\",\"5497\":\"0569d44a\",\"5746\":\"b90a562e\",\"5775\":\"f098c327\",\"5804\":\"8631bd61\",\"5852\":\"b00cfb0a\",\"5860\":\"fdc661e3\",\"5900\":\"78ec478b\",\"6146\":\"d12b79fd\",\"6255\":\"1cafdf45\",\"6307\":\"0d830328\",\"6423\":\"3ab1201b\",\"6503\":\"ed4da94d\",\"6512\":\"b2e824e1\",\"6680\":\"e7d9f942\",\"6716\":\"c12f30eb\",\"6795\":\"1f6469bb\",\"6835\":\"8df4972a\",\"6889\":\"0d70919c\",\"6929\":\"9dccfc47\",\"6982\":\"ef471b78\",\"7019\":\"e24af36b\",\"7064\":\"e32d7528\",\"7096\":\"c8ac79de\",\"7103\":\"c3000863\",\"7157\":\"a2b2d210\",\"7191\":\"a1c96056\",\"7237\":\"3442e232\",\"7342\":\"5353dbd4\",\"7499\":\"6b3a5f0e\",\"7541\":\"bcbec42c\",\"7615\":\"82b700e4\",\"7655\":\"365326b3\",\"7702\":\"a65c779d\",\"7741\":\"1d082c1e\",\"8047\":\"9a005bc5\",\"8110\":\"1e885014\",\"8133\":\"ac548cf1\",\"8240\":\"8dee1b76\",\"8310\":\"f89aa49b\",\"8322\":\"e2aa4bc3\",\"8324\":\"ea98e94e\",\"8400\":\"3867a875\",\"8415\":\"edd87eae\",\"8467\":\"0c2d6f23\",\"8543\":\"1a2df9ac\",\"8630\":\"7e62434c\",\"8660\":\"a8afd39a\",\"8763\":\"1d7b40ef\",\"8822\":\"767c680c\",\"9036\":\"54187c20\",\"9041\":\"bfa25850\",\"9133\":\"da5708ff\",\"9244\":\"678b7be9\",\"9351\":\"f954e980\",\"9375\":\"5c8f3196\",\"9394\":\"12dd3a38\",\"9609\":\"1b88ac35\",\"9624\":\"76553861\",\"9650\":\"152556f1\",\"9666\":\"0ff70cca\",\"9694\":\"a5bfc23f\",\"9699\":\"ef582251\",\"9773\":\"65938ab5\",\"9808\":\"012175de\",\"9875\":\"5d63d3de\",\"9915\":\"f4005b98\",\"9947\":\"3434c8e0\",\"9985\":\"80b2102a\",\"9986\":\"06bbe010\"}[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 + \".\" + {\"1859\":\"507013dd\",\"3231\":\"03a69769\",\"5388\":\"d72a1b0e\",\"8324\":\"d4ef4381\"}[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\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 = \"./\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, 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\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\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, null, 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 = {\"1859\":1,\"3231\":1,\"5388\":1,\"8324\":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(8324 != chunkId) {\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));","__webpack_require__.nc = undefined;","// 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, [2279,1908,9896,5447], function() { return __webpack_require__(6876); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["dark","_jsx","viewBox","width","height","version","children","stroke","strokeWidth","fill","fillRule","d","light","NoMatch","_jsxs","Link","to","De","Loader","tip","indicator","Icon","type","spin","style","verticalAlign","Options","props","arguments","length","undefined","useMemo","Select","value","onChange","e","target","isV1","split","window","location","href","concat","currentVersion","pkg","versionList","data","unshift","className","styles","defaultValue","map","idx","home","component","github","issue","gitee","plugin","SiderMenu","useLocation","trans","useTranslation","t","menu","find","item","RegExp","path","test","pathname","pre","title","nav","icon","newName","name","newPre","divider","translation","NavLink","replace","initialState","layout","i18n","reducer","state","action","_objectSpread","ThemeContext","React","dispatch","rx","x","y","fillOpacity","menutop","china","id","transform","xlinkHref","Nav","useContext","_useTranslation","_useState","useState","_useState2","_slicedToArray","searchText","setSearchText","menuSearchOption","_data$find","components","m","option","i","com","label","toLocaleLowerCase","includes","push","Fragment","filter","Boolean","join","trim","logo","display","_ref","Object","keys","Tooltip","usePortal","placement","content","whiteSpace","activeStyle","color","_ref2","isActive","_ref3","SearchSelect","size","maxWidth","top","alignItems","marginLeft","placeholder","showSearch","onSearch","onSelect","open","language","changeLanguage","rel","Header","Layout","Sider","Content","Components","_props$siderMenu","siderMenu","Affix","offsetTop","zIndex","padding","Outlet","position","left","bottom","overflow","paddingLeft","lineHeight","flexDirection","justifyContent","backgroundColor","VersionSelect","Loadable","Component","Suspense","fallback","Loading","Home","lazy","Extensions","GuideQuickStart","GuideImport","GuideCreateReactApp","GuideKKT","GuideDocs","GuideVscode","GuideRecommendation","Overview","Colors","Alert","AutoLink","ResetCss","Avatar","Calendar","Cascader","Checkbox","CopyToClipboard","Collapse","Card","Carousel","Descriptions","Divider","Drawer","DatePicker","DateInput","Dropdown","Badge","Progress","Pagination","PinCode","Input","Button","Radio","Split","Switch","Slider","Grid","Form","FileInput","Breadcrumb","List","Notify","Tree","TreeChecked","SearchTree","Transfer","Tag","Tabs","Table","TimePicker","Rate","Overlay","BackTop","Portal","OverlayTrigger","Popover","Message","MonthPicker","Textarea","Modal","Formatter","Steps","Menu","Empty","routes","element","BaseLayout","index","App","useRoutes","Provider","_useReducer","useReducer","_useReducer2","ReactDOM","document","getElementById","render","HashRouter","Backend","use","LanguageDetector","initReactI18next","init","fallbackLng","load","detection","caches","backend","loadPath","LOADPATH","DefLan","getScroll","method","isWindow","ret","documentElement","noop","getThemeVariantValue","options","field","defaultTheme","theme","GetStyledCloneComponent","oProps","_props$isChildClassNa","isChildClassName","styleClassName","_ref$className","oClassName","rest","_objectWithoutPropertiesLoose","_excluded","childProps","cls","ite","_extends","getOffset","elemRect","getBoundingClientRect","targetRect","getTargetRect","scrollTop","scrollLeft","docElem","body","clientTop","clientLeft","getDefaultTarget","_React$Component","_inherits","_super","_createSuper","_this","_classCallCheck","call","placeholderStyle","affixStyle","box","events","eventHandlers","timeout","getInstance","node","updatePosition","bind","_assertThisInitialized","_createClass","key","_this2","this","setTimeout","setTargetEventListeners","clearEventListeners","clearTimeout","offsetBottom","offsetParent","elemSize","clientWidth","clientHeight","offsetMode","elemOffset","setPlaceholderStyle","setAffixStyle","affixed","setState","_this3","forEach","eventName","addEventListener","_this4","handler","removeEventListener","_this$props","prefixCls","resetProps","ref","defaultProps","canUseDOM","createElement","container","defaultNode","useRef","containerRef","useEffect","current","removeChild","appendChild","OverlayStyleTheme","backgroundColorOverlayBackdrop","ContentWrap","styled","_templateObject","_taggedTemplateLiteralLoose","ContainerWrap","_templateObject2","BackdropWrap","_templateObject3","OverlayWrap","_templateObject4","css","_templateObject5","openClass","_templateObject6","_templateObject7","isOpen","_templateObject8","_props$prefixCls","_props$usePortal","_props$maskClosable","maskClosable","_props$backdropProps","backdropProps","_props$portalProps","portalProps","_props$hasBackdrop","hasBackdrop","_props$unmountOnExit","unmountOnExit","_props$timeout","_props$transitionName","transitionName","_props$onOpening","onOpening","_props$onOpened","onOpened","_props$onClosing","onClosing","_props$onClosed","onClosed","_props$onClose","onClose","_props$onEnter","onEnter","_onEnter","_props$onExiting","onExiting","_onExiting","_props$onEntering","onEntering","_onEntering","_props$onEntered","onEntered","_onEntered","_props$onExit","onExit","_props$dialogProps","dialogProps","otherProps","setIsOpen","_useState3","_useState4","visible","setVisible","overlay","overlayWillClose","classList","add","decoratedChild","cloneElement","as","tabIndex","handleBackdropMouseDown","onMouseDown","remove","_useState5","_useState6","transSet","TransitionGroupComp","CSSTransition","classNames","in","isAppearing","onExited","nodeRef","status","loadingCircle","keyframes","IconStyleBase","_props$params","params","_props$params2","_props$verticalAlign","_props$tagName","tagName","TagName","_props$spin","others","svg","svgPaths","propps","ButtonStyleTheme","colorButtonStyleBase","fontSizeSmall","fontSizeDefault","fontSizeLarge","minHeightButtonSmall","minHeightButtonDefault","minHeightButtonLarge","fontSizeButtonIconSmall","fontSizeButtonIcontDefault","fontSizeButtonIconLarge","borderColorLinghtLoadingBefore","colorButtonLoadingBefore","colorPrimary","backgroundColorPrimary","backgroundColorPrimaryHover","boxShadowColorPrimaryFocus","backgroundColorPrimaryActive","backgroundColorPrimaryDisabled","boxShadowColorPrimaryBasic","backgroundColorPrimaryBasicHover","colorPrimaryBasicDisabled","backgroundColorPrimaryBasicActive","colorSuccess","backgroundColorSuccess","backgroundColorSuccessHover","boxShadowColorSuccessFocus","backgroundColorSuccessActive","backgroundColorSuccessDisabled","boxShadowColorSuccessBasic","backgroundColorSuccessBasicHover","colorSuccessBasicDisabled","backgroundColorSuccessBasicActive","colorWarning","backgroundColorWarning","backgroundColorWarningHover","boxShadowColorWarningFocus","backgroundColorWarningActive","backgroundColorWarningDisabled","boxShadowColorWarningBasic","backgroundColorWarningBasicHover","colorWarningBasicDisabled","backgroundColorWarningBasicActive","colorError","backgroundColorError","backgroundColorErrorHover","boxShadowColorErrorFocus","backgroundColorErrorActive","backgroundColorErrorDisabled","boxShadowColorErrorBasic","backgroundColorErrorBasicHover","colorErrorBasicDisabled","backgroundColorErrorBasicActive","colorLight","backgroundColorLight","backgroundColorLightHover","boxShadowColorLightFocus","backgroundColorLightActive","backgroundColorLightDisabled","boxShadowColorLightBasic","backgroundColorLightBasicHover","colorLightBasicDisabled","colorLightBasic","backgroundColorLightBasicActive","boxShadowColorLightDefault","boxShadowColorLight4","colorDark","backgroundColorDark","backgroundColorDarkHover","boxShadowColorDarkFocus","backgroundColorDarkActive","backgroundColorDarkDisabled","boxShadowColorDarkBasic","backgroundColorDarkBasicHover","colorDarkBasicDisabled","backgroundColorDarkBasicActive","colorLink","colorLinkHover","backgroundColorLink","backgroundColorLinkHover","boxShadowColorLinkFocus","backgroundColorLinkActive","backgroundColorLinkDisabled","boxShadowColorLinkBasic","backgroundColorLinkBasicHover","colorLinkBasicDisabled","backgroundColorLinkBasicActive","colorLinkNotDisabled","colorLinkNotDisabledActive","propsTheme","getCommonCss","attrName","fig","lastName","buttonVariant","param","basic","focus","active","disabled","backgroundColorHover","boxShadowColorFocus","backgroundColorActive","backgroundColorDisabled","boxShadowColorBasic","backgroundColorBasicHover","colorBasicDisabled","backgroundColorBasicActive","getloadingCss","_templateObject10","_props$param","loading","_templateObject11","_props$param2","_templateObject12","getSize","fontSize","minHeight","iconSize","_templateObject13","buttonSize","getIconAndSizeCss","_templateObject16","_templateObject14","_templateObject15","buttonSizeCss","ButtonStyleBase","block","ButtonStyleBasePrimary","ButtonStyleBaseSuccess","ButtonStyleBaseDangers","ButtonStyleBaseDark","ButtonStyleBaseLight","_templateObject9","ButtonStyleBaseLink","ButtonStyleBaseWarning","ButtonStyleWarp","_props$disabled","_props$active","_props$loading","_props$block","_props$basic","_props$htmlType","htmlType","_props$type","_props$size","child","ModalStyleTheme","minHeightModalStyleHeader","backgroundColorModalStyleHeaderBase","boxShadowColorModalStyleHeaderBase","minHeightModalStyleHeaderH4","backgroundColorModalStyleInnerBase","minWidthModalStyleInner","boxShadowModalStyleInnerH","boxShadowModalStyleInnerV","ModalStyleHeader","ModalStyleBody","ModalStyleFooter","ModalStyleContainer","ModalStyleInner","ModalStyleWrap","_props$useButton","useButton","_props$autoFocus","autoFocus","cancelText","cancelButtonProps","confirmButtonProps","_props$confirmText","confirmText","_props$maxWidth","_props$minWidth","minWidth","_props$isCloseButtonS","isCloseButtonShown","_props$onCancel","onCancel","_props$onConfirm","onConfirm","bodyStyle","other","setLoading","handleCancel","_x","_handleCancel","apply","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","t0","t1","stop","_handleConfirm","_callee2","_context2","onClick","Close","_x2","handleConfirm","show","_props$title","dv","AlertStyleTheme","colorAlertPrimary","colorAlertSuccess","colorAlertWarning","colorAlertDanger","colorAlertDefault","typeVariant","AlertStyleWarp","_props","_props$width","delimiter","_props$text","text","word","match","url","_createElement","startsWith","AvatarStyleTheme","backgroundColorAvatar","colorAvatar","fontSizeAvatarMini","fontSizeAvatarSmall","fontSizeAvatarDefault","fontSizeAvatarLarge","widthAvatarMini","widthAvatarSmall","widthAvatarDefault","widthAvatarLarge","borderRadiusDefault","AvatarStyleImg","AvatarStyleWarp","shape","_props$shape","src","alt","_props$onError","onError","_onError","isImgExist","setIsImgExist","evn","getScrollTop","BackTopStyleTheme","bottomBackTop","rightBackTop","BackTopStyleWarp","BackToUp","fixed","BackTopStyleBase","_props$offsetTop","_props$fixed","_props$speed","speed","_props$showBelow","showBelow","_props$clickable","clickable","topShowBelow","percent","setPercent","setCurrent","opacity","onScroll","Math","round","scrollHeight","innerHeight","getScrollPercent","scrollToTop","step","start","timer","setInterval","scrollTo","clearInterval","scrollToAnimate","toString","marginVerticalBadgeStyleColorDot","marginHorizontalBadgeStyleColorDot","topBadgeStyleColorDot","widthBadgeStyleColorDot","backgroundColorBadgepPocessing","backgroundBadgeCountDot","colorBadge","boxShadowBadgeCountDot","topBadgeCountDot","topBadgeCount","heightBadgeCount","borderRadiusBadgeCount","keyframesStatusProcessing","BadgeStyleColorDot","processing","BadgeStyleSupCountDotBase","dot","nowrap","BadgeStyleWarp","_props$style","_props$max","max","_props$dot","_props$processing","count","supProps","warpperProps","BreadcrumbStyleTheme","colorBreadcrumbActive","paddingLeftBreadcrumItemBefore","paddingRightBreadcrumItemBefore","marginLeftBreadcrumItemInterval","BreadcrumbStyleWarp","BreadcrumbStyleWarpItem","noBefore","noSeparator","BreadcrumbStyleSeparator","BreadcrumbItem","separator","isElm","_props$separator","assign","Item","ButtonGroupStyleTheme","ButtonGroupWarp","vertical","_props$vertical","context","parentNode","isDOM","HTMLElement","nodeType","nodeName","contains","compareDocumentPosition","getBordersSize","axis","sideA","sideB","parseFloat","isIE11","isBrowser","MSInputMethodContext","documentMode","isIE10","navigator","userAgent","isIE","html","computedStyle","parseInt","rect","right","offsets","result","sizes","getComputedStyle","getWindowSizes","ownerDocument","horizScrollbar","offsetWidth","vertScrollbar","offsetHeight","offsetLeft","property","defaultView","getStyleComputedProperty","getOuterSizes","scrollWidth","getStyle","triggerDom","trigger","popupDom","popup","autoAdjustOverflow","sty","winSizeHeight","winSizeWidth","innerWidth","OverlayTriggerWrap","normalizeDelay","delay","hide","_props$isClickOutside","isOutside","isClickOutside","_props$trigger","_props$placement","_props$onVisibleChang","onVisibleChange","triggerRef","popupRef","timeoutRef","hoverStateRef","overlayStyl","setOverlayStyl","useImperativeHandle","_hide","_show","overlayDom","overlayProps","triggerProps","handleClickOutside","handleResize","styls","popNode","childNode","clearTimeouts","_step","_iterator","_createForOfIteratorHelper","s","n","done","timeoutId","err","f","handleShow","_props$children","handle","handleHide","handleMouseOverOut","relatedNative","currentTarget","related","relatedTarget","nativeEvent","onFocus","onMouseOver","onMouseEnter","onMouseOut","onMouseLeave","PopoverStyleTheme","fontSizePopoverDefault","boxShadowPopoverPrimary","PopoverStyleOverlayTriggerArrow","PopoverStyleOverlayTriggerDiv","_props$params3","_props$params4","PopoverStyleOverlayTrigger","PopoverStyleOverlayTriggerContent","renderArrow","visibleArrow","writingMode","Confirm","_props$cancelText","marginTop","InputStyleTheme","colorInputStyleBase","boxShadowColorInputHBase","boxShadowColorInputInsHBase","boxShadowColorInputInsVBase","backgroundColorInputStyleBase","heightInputDefault","fontSizeInputDefault","boxShadowColorInputHFocus","boxShadowColorInputVFocus","boxShadowColorInputHHover","boxShadowColorInputVHover","backgrounColorInputDisabled","colorInputDisabled","topInputStyleAddonAfter","lineHeightInputsDefault","widthInputsDefault","lineHeightInputLarge","lineHeightInputSmall","lineHeightInputStyleAddonAfter","InputStyleBase","boxShadowColorInputStyleBase","InputStyleAddonAfter","InputStyleWarp","min","overLimitColor","keyboard","Number","overLimitComp","isOverLimit","isOverLimitSet","overLimitProps","inputStyle","v","_props$preIcon","preIcon","addonAfter","inputRef","addonRef","input","paddingRight","computedInputPadding","autoComplete","DateTimePickerStyleTheme","borderLeftColorDateTimeStylePanelUl","colorDateTimeLi","colorDateTimeLiDisabled","colorDateTimeLiSelected","backgroundColorDateTimeLiSelect","backgroundColorDateTimeLiHover","backgroundColorDateTimeLiActive","colorDateTimeStyleCloseButton","colorDateTimeStyleCloseButtonHover","DateTimeInput","DateTimeStyleCloseButton","DateTimeStylePanelUl","DateTimeStylePanelLi","selected","DateTimeStylePanel","DateTimeStyleBase","TimePickerPanel","_props$count","date","hideDisabled","onSelected","disableds","getDisabledItem","num","Date","_toConsumableArray","Array","_","liProps","currentDate","handleClick","currentCount","tag","dataset","getItemInstance","TimePickerTime","_props$precision","precision","TimePanel","_props$format","format","popoverProps","_props$allowClear","allowClear","disabledHours","disabledMinutes","disabledSeconds","inputProps","setDate","timeProps","inputValue","formatter","datePickerTime","dataStr","readOnly","DatePickerStyleTheme","backgroundColorDatePickerBaseHover","backgroundColorDatePickerStyleCaptionPanePrevBefore","backgroundColorDatePickerActive","backgroundColorDatePickerStyleCaptionToday","backgroundColorDatePickerStyleCaptionTodayBefore","backgroundColorBase","backgroundColorDatePickerTodayDisabled","colorDatePickerDayTodayBase","backgroundColorDatePickerDayDisabled","colorDatePickerDayHover","colorDatePickerDayEnd","borderColorDatepickerBase","colorDatepickerTimeBase","boxShadowDatepickerTime1","boxShadowDatepickerTime2","boxShadowDatepickerTime3","colorDatePickerPaging","borderBottomColorDatepickerCaption","DatePickerStyleBodyWarp","DatePickerStyleWeekBase","DatePickerStyleWeekDay","DatePickerStyleWeek","_props$cls","_props$cls2","_props$cls3","today","_props$cls4","_props$cls5","_props$cls6","_props$cls7","classnames","obj","keyName","DayRect","selectedDate","col","panelDate","disabledDate","renderDay","onSelectDay","end","isNaN","getTime","isValidDate","year","getFullYear","month","getMonth","week","getDay","toDateString","lastDay","getDate","day","cellDate","divProps","cellMonth","WEEKTITLE","WEEKDAY","DatePickerDay","_props$weekday","weekday","_props$weekTitle","weekTitle","_onSelectDay","_excluded2","weekdayLabel","row","curDate","DatePickerStyleYearMonthWarp","isYear","DatePickerStyleYearMonthSelect","paging","DatePickerMonth","_props$panelDate","monthLabel","_props$onSelected","selectedMonth","DatePickerYear","_props$panelNum","panelNum","activeYear","setActiveYear","selectedYear","setFullYear","handleSelected","DatePickerStyleCaptionPaneBase","DatePickerStyleCaptionPaneYear","DatePickerStyleCaptionPaneMonth","DatePickerStyleCaptionPane","DatePickerStyleCaptionToday","DatePickerStyleCaptionBase","_len","arg","_key","DatePickerCaption","todayButton","renderMonth","DatePickerStyleWarp","MONTH_LABEL","_props$monthLabel","_props$today","_props$onChange","_props$onPanelChange","onPanelChange","showTime","setType","selectDate","setSelectDate","selectPanelDate","setSelectPanelDate","curType","setMonth","onSelectedDate","dateSource","fontSizeCalendarCaptionDefualt","backgroundColorCalendarHover","backgroundColorCalendarActive","lineHeightCalendarPanel","backgroundCalendarDefault","borderColorCalendarChildDiv","CalendarCaptionStyleWrap","CalendarBtnStyleWrap","CalendarBtnGroupStyleWrap","CalendarTitleWrap","CalendarDayWrap","CalendarInnerWrap","CalendarPanelStyleWrap","CalendarStyleWrap","RenderDay","dayData","arr","_props$titleFormat","titleFormat","_props$todayLabel","todayLabel","onPaging","setPanelDate","handlePaging","_month","titleLable","btngroup","Down","propsNext","CardStyleTheme","borderRadiusLarge","lineHeightDefault","borderColorBaseActive","borderColorBase","heightCardStyleHead","paddingVerticalCardStyleHead","paddingHorizontalCardStyleHead","borderRadius1CardStyleHead","borderRadius2CardStyleHead","borderRadius3CardStyleHead","borderRadius4CardStyleHead","colorBase","rightCardStyleHeadExtra","topCardStyleHeadExtra","paddingCardBody","borderTopCardBody","paddingVerticalCardStyleFooter","paddingHorizontalCardStyleFooter","borderTopCardStyleFooter","colorCardStyleFooter","getHoverOrActive","CardStyleHead","CardStyleHeadTitle","CardStyleHeadExtra","CardBody","CardStyleFooter","CardStyleWarp","bordered","noHover","getNoHover","getActive","extra","footer","_props$bordered","_props$noHover","bodyClassName","prefix","CarouselStyleWarp","CarouselStyleWarpContent","_props$position","_props$direction","direction","_props$height","_props$palyTime","palyTime","_props$scrollTime","scrollTime","_props$autoPlay","autoPlay","afterChange","beforeChange","currentPosition","currentPositionSet","transitionInner","transitionInnerSet","positionRef","childCount","_stopPlay","after","before","gotoSlide","prevSlide","nextSlide","stopPlay","slidNumber","maxSlid","slidNumberTemp","play","ms","time","childrens","innerStyle","transition","MenuStyleTheme","backgroundColorMenuBase","backgroundColorMenuActive","colorMenuStyleItemIconDisabled","colorMenuStyleItemIconDark","colorMenuStyleItemIconDarkActive","colorMenuStyleBaseLight","backgroundMenuStyleBaseLight","boxShadowMenuStyleBaseBordered","colorMenuStyleItemBaseLightHover","colorMenuStyleItemBaseHover","borderTopColorMenuDividerBase","colorMenuStyleBaseDark","backgroundColorMenuStyleBaseDark","borderTopColorMenuDividerBaseDark","MenuDividerBase","MenuStyleItemIcon","MenuItemStyleTextBase","isText","multiline","MenuStyleItemBase","_props$params5","_props$params6","_props$params7","SubItemCollapseIcon","_props$params8","_props$params9","collapse","MenuStyleSubOverlayTriggerBase","_templateObject17","_props$params10","_templateObject18","_templateObject19","MenuStyleBase","_templateObject20","_templateObject21","_templateObject22","_props$params11","_templateObject23","_props$params12","_templateObject24","_props$params13","inlineCollapsed","_templateObject25","_props$params14","_templateObject26","_templateObject27","disabledProps","Internal","_props$multiline","isSubMenuItem","htmlProps","anchorCls","tagComp","MenuItem","displayName","MenuDivider","MenuContext","createContext","nodeDoms","onUpdateNode","onUpdateSize","useMenuContext","_node$overlayDom$curr","parentElement","IconView","CaretRight","SubMenu","_props$overlayProps","_props$collapse","inlineIndent","overlayTriggerProps","menuProps","store","isCheck","checkedMenuItem","appear","_props$theme","_props$inlineIndent","ContextMenu","CascaderStyleTheme","colorCascaderClose","CascaderStyleIconWarp","closebtn","_props$expandTrigger","expandTrigger","_props$option","innerIsOpen","setInnerIsOpen","selectedValue","setSelectedValue","selectIconType","setSelectIconType","_useState7","_useState8","_useState9","_useState10","searchOn","setSearchOn","_useState11","_useState12","setInputValue","_useState13","_useState14","searchOption","setSearchOption","tempOptions","iteratorOption","opt","cb","opts","optsTemp","renderSelectIcon","valueTemp","optChildren","findOpt","handelChange","isSeleted","widths","click","triggers","callback","OptionIter","level","overflowY","_selectedValue$level","_opt$children","optionsItem","splice","handleItemClick","_selectedValue","handelSearch","onBlur","stopPropagation","RadioStyleTheme","fontSizeSamll","colorRadioDefault","colorNotCheckedNotDisabledDefault","widthRadioDefault","heightRadioDefault","borderRadioDefault","borderRadioCheckedDefault","RadioInputStyleBase","RadioText","RadioBase","RadioGroupBase","RadioAbstract","_props$value","_props$checked","checked","prChecked","setChecked","prevChecked","setPrevChecked","persist","ButtonGroup","RadioButton","CheckboxStyleTheme","boxShadowCheckboxChecked","backgroundColorCheckboxChecked","backgroundColorCheckboxBase","colorCheckboxDisabled","borderColorCheckboxChecked","boxShadowCheckboxHover","CheckGroupStyleBase","CheckboxStyleBase","indeterminate","CheckboxGroup","_onChange","valueRef","childs","isArray","include","val","InternalCheckbox","_props$indeterminate","Group","CollapseStyleTheme","borderColorCollapseBase","colorCollapsePanelBase","colorCollapseStyleHeaderBase","backgroundColorCollapseStyleHeaderBase","colorCollapseStyleHeaderDisabled","backgroundColorCollapseStyleHeaderDisabled","CollapseStyleWarp","CollapseStyleItem","CollapseStyleHeader","CollapseStyleItemPanel","CollapseStyleHeaderTitle","CollapseStyleHeaderExtra","toArray","activeKey","currentActiveKey","InternalCollapse","_props$accordion","accordion","_props$showArrow","showArrow","propsActiveKey","setActiveKey","String","indexOf","onItemClick","Panel","_props$icon","_children","header","iconRender","transitionDuration","instance","CopyToClipbordSelect","CopyToClipbordWarp","_props$onClick","copy","isCopy","DateInputStyleTheme","fillDateInputCloseBase","fillDateInputCloseHover","colorDateInputStyleBase","backgroundColorDateInputDisabled","colorDateInputDisabled","boxShadowDateInputBase","boxShadowDateInputFocus","boxShadowDateInputHover","boxShadowDateInputFocusHover","DateInputStyleDatePickerPopover","DateInputStyleBase","DateInputIconStyleWarp","DateInputRangeStyleWarp","DateInputRange","_props$bodyStyle","datePickerProps","dateRange","setDateRange","handleChange","cdate","changeValue","propsValue","JSON","stringify","margin","SwapRight","_props$autoClose","autoClose","DescriptionsStyleTheme","borderColorDescriptions","borderColorDescriptionsTh","colorDescriptionsHead","colorDescriptionsConent","colorDescriptionsColon","DescriptionsStyleWarp","DescriptionsStyleItem","isLabel","isColon","isContent","DescriptionsStyleTable","DescriptionsStyleTableCaption","DescriptionsStyleTableRow","DescriptionsStyleTableTbody","colon","span","labelProps","colSpan","Row","column","handleCell","isHead","Cell","isLastCell","generateChildrenRows","leftSpans","rows","columns","itemNode","_itemNode$props$span","InternalDescriptions","_props$column","_props$colon","_props$layout","cloneChildren","DescriptionsItem","DividerStyleTheme","backgroundColorDividerBase","borderTopColorDividerWithText","DividerStyleBase","align","dashed","DividerStyleInnerText","_props$dashed","_props$align","restProps","DividerWarp","DrawerStyleTheme","boxShadowColorInDrawerWrapper","boxShadowColorHvDrawerWrapper","backgroundColorDrawerWrapper","backgroundColorDrawerHeader","boxShadowColorInDrawerHeader","colorHvDrawerHeader","boxShadowColorInDrawerFooter","DrawerStyleWrapperWrap","DrawerStyleHeaderWrap","DrawerStyleBodyWrap","DrawerStyleFooterWrap","DrawerStyleBodyClsWrap","DrawerStyleWrap","bodyProps","_props$isOpen","bodyCls","styl","_defineProperty","footerView","iconView","titleView","EmptyStyleTheme","colorEmptyBase","EmptyStyleBase","EmptyStyleIcon","EmptyStyleDescription","EmptyStyleFooter","iconProps","_props$description","description","EmptyWrap","FileInputTheme","boxShadowFileInputStyleWarpAfterBase","backgroundImageFileInputStyleWarpAfterBase","backgroundColorFileInputStyleWarpAfterBase","colorFileInputStyleWarpAfterBase","backgroundColorFileInputStyleWarpHoverAfterBase","boxShadowFileInputStyleWarpHoverAfterBase","colorFileInputStyleWarpBeforeBase","backgroundFileInputStyleCardActionsWarpBase","backgroundColorFileInputStyleCardBoxWarpBase","borderColorFileInputStyleCardBoxWarpBase","backgroundFileInputStyleListActionsWarpBase","borderColorFileInputStyleListUploadTypeWarpBase","backgroundFileInputStyleListUploadTypeWarpHover","FileInputStyleWarp","FileInputStyleCardActionsWarp","isAction","FileInputStyleCardBoxWarp","btn","FileInputStyleCardBoxInfoWarp","FileInputStyleCardActionsRemoveWarp","FileInputStyleCardWarp","FileInputStyleListActionsWarp","FileInputStyleListActionsSearchWarp","FileInputStyleListUploadInfoTypeWarp","FileInputStyleListUploadTextTypeWarp","FileInputStyleListUploadIconTypeWarp","FileInputStyleListUploadTypeWarp","uploadType","FileInputStyleListWarp","_templateObject28","_templateObject29","_templateObject30","_templateObject31","_templateObject32","_props$dataLabel","dataLabel","_props$dataList","dataList","readonly","_props$showFileIcon","showFileIcon","showPreviewIcon","showRemoveIcon","onPreview","onAdd","onRemove","Search","Delete","_props$maxNumber","maxNumber","getBase64","file","reader","FileReader","Promise","resolve","readAsDataURL","getListFiles","files","dataURLKey","promiseFiles","all","then","fileListBase64","base64","isUploadType","_props$multiple","multiple","inValue","fileList","setFileList","Comp","handleClickInput","useCallback","openFileDialog","onFileUpload","onInputChange","updatedFileList","updatedList","abrupt","sent","slice","_props$uploadType","prop","FileList","otherProp","alignType","middle","baseline","grow","Col","ColStyleWrap","justify","_props$gutter","gutter","gutterStyl","RowStyleWrap","SelectStyleTheme","paddingSelectSmall","paddingSelectDefault","paddingSelectLarge","fontSizeSelectSmall","fontSizeSelectDefault","fontSizeSelectLarge","colorSelectBase","colorSelectDisabled","backgroundColorSelectBase","backgroundColorSelectHover","backgroundColorSelectDisabled","boxShadowSelectBase","boxShadowSelectDisabled","backgroundImageSelectUrl","SelectStyleWarp","InternalSelect","Option","TextareaStyleTheme","colorTextareaDefault","colorTextareaDark","backgroundColorTextareaStyleWarpBase","boxShadowTextarea","boxShadowTextareaFocus","boxShadowTextareaHover","boxShadowTextareaFocusHover","colorTextareaDisabled","backgroundTextareaDisabled","TextareaStyleWarp","FormStyleTheme","colorFormStyleHelpStyleBase","colorFormStyleItemErrorBase","boxShadowFormStyleItemErrorBase","LabelStyle","FormStyleHelpStyle","FormStyleRowStyle","FormStyleItem","hasError","FormItem","_React$PureComponent","required","labelFor","labelClassName","labelStyle","help","inline","labelCls","htmlFor","FormStyleWarp","FormStyleFieldset","isPromise","promise","fields","resetOnSubmit","onSubmitError","onSubmit","afterSubmit","initData","initial","submitting","errors","_cb","initialValue","_currentValue","currentValue","newFormState","setData","handleSubmit","resetForm","handleReset","getFieldValues","getError","setFields","setFieldValue","formUnits","itemProps","error","childField","controlField","tempData","fieldName","validator","env","list","nextState","preventDefault","onSuccess","response","reset","afterSubmitPromise","catch","canSubmit","_data$current","passesValidators","_name","prototype","hasOwnProperty","initials","entries","_ref4","hasCurrentValue","ListStyleTheme","colorListBase","backgroundColorListBase","boxShadowListActive","borderColorListActive","colorListBorder","backgroundColorListStriped","backgroundColorListBordered","colorListItemDisabled","backgroundListItemActive","colorListItemActive","backgroundListItemNotDisabledHover","ListStyleItemMain","ListStyleItemExtra","ListStyleItemWarp","ListStyleHeader","ListStyleFooter","ListStyleWarp","striped","ListItem","InternalList","items","_props$striped","renderItem","_props$dataSource","dataSource","childrenList","classString","ListWarp","loaderRotate","loaderDash","loaderColor","LoaderStyleSvg","LoaderStyleTips","fullscreen","LoaderStyleTipsNested","LoaderStyleTipsNestedText","LoaderStyleWarp","LoaderStyleChild","bgColor","_props$fullscreen","indicatorView","cx","cy","r","strokeMiterlimit","tipsView","MessageStyleTheme","colorMessageChildren","colorMessageTitle","backgroundMessageSuccess","colorMessageSuccess","backgroundMessageWarning","colorMessageWarning","backgroundMessageInfo","colorMessageInfo","backgroundMessageError","colorMessageError","colorMessageDescriptionSpanBase","colorMessageTitleSpanBase","backgroundColorMessageButtonWarpHover","colorMessageButtonWarpBase","backgroundColorMessageButtonWarpActive","MessageStyleWrap","MessageStyleDivWrap","showIcon","rounded","MessageStyleSpanWrap","MessageStyleDescriptionSpan","MessageStyleTitleSpan","MessageStyleButtonWarp","handleClosed","renderIcon","_this$props2","base","CircleCheck","Warning","Information","CircleClose","elementProps","Child","MonthPickerTheme","fillMonthPickerStyleCloseButtonBase","fillMonthPickerStyleCloseButtonHover","MonthPickerStyleCloseButton","MonthPickerStylePopoverBase","MonthPickerStyleInputStyleBase","_props$pickerCaptionP","pickerCaptionProps","handleSelectedDate","curPanelDate","captionType","NotifyGlobalStyle","createGlobalStyle","NotifyStyleAlertBase","notifys","Container","duration","closed","willUnmount","_this$state$notifys$p","alertProps","notifysDom","NotificationCreate","div","create","random","nprops","notifysChild","PaginationStyleTheme","borderColorPaginationBase","backgroundColorPaginationActive","backgroundColorPaginationHover","backgroundColorPaginationTextBase","backgroundPaginationTextDisabled","backgroundPaginationTextHover","boxShadowdisabledPaginationDisabled","boxShadowdisabledPaginationActive","PaginationStyleBaseLIA","isArrow","PaginationStyleBaseLI","isOptions","PaginationStyleBaseUL","isDivider","_props$alignment","alignment","_props$total","total","_props$pageSize","pageSize","_props$pageSizeOption","pageSizeOptions","_props$current","currentNumber","onShowSizeChange","initPageSoure","ceil","itemCount","goto","textAlign","sizeCount","PinCodeStyleDivWrap","PinCodeStyleInputWrap","InternalPinCode","_props$placeholder","_props$onBlur","_props$onFocus","placehold","setPlacehold","values","setValues","handleBlur","event","handleFocus","inpProps","inputMode","charAt","onKeyDown","handleKeyDown","Icons","close","check","Check","IconProgress","ProgressStyleTheme","strokeProgressStylePathSuccess","strokeProgressStylePathException","strokeProgressStylePath","strokeProgressStylePathTrail","colorProgresTextSuccess","colorProgresTextException","colorProgresText","backgroundColorProgressStyleBgSuccess","backgroundColorProgressStyleBgException","backgroundColorProgressStyleBg","backgroundColorProgressStyleInner","backgroundProgressStyleBgActiveBefore","backgroundImageProgressStyleBgActive","ProgressStyleBarStripes","progressActive","ProgressStyleWarp","isLine","ProgressStyleText","isCircle","ProgressStyleBar","showText","ProgressStyleInner","ProgressStyleBg","ProgressStyleSvg","ProgressStylePath","isTrail","isStroke","Circle","elm","_strokeWidth","toFixed","radius","setAttribute","perimeter","PI","progressInfo","progressStatus","percentView","relativeStrokeWidth","strokeLinecap","Line","percentStyle","RateBgStyleTheme","colorRateBgBase","colorRateActiveBase","lineHeightRateActiveDefault","colorRateActiveOn","lineHeightRateDefault","fontSizeRateDefault","RateBg","RateActive","hoverOn","starOn","halfon","RateWarp","defValue","allowHalf","_props$character","character","_props$readOnly","_props$onHoverChange","onHoverChange","setValue","hoverCount","setHoverCount","prevValue","setPrevValue","getValue","isLeft","clientX","activeCls","onMouseMove","TagDefaultTheme","backgroundColorTagStyleSvgHover","backgroundColorTagStyleSvgActive","backgroundColorTagStyleSvgLightActive","fillTagStyleSvgLightHover","TagStyleSvg","isLight","TagStyleWarp","_props$visible","_props$color","closable","_props$light","borderColor","boxShadow","SearchSelectStyleTheme","backgroundSearchSelectDisabled","backgroundSearchSelectBase","colorSearchSelectDisabled","colorSearchSelectBase","boxShadowSearchSelectBase","boxShadowSearchSelectFocus","boxShadowSearchSelectHover","boxShadowSearchSelectFocusHover","SearchSelectInputContentsBase","SearchSelectTagContentsBase","SearchSelectInputStyleBase","SearchSelectIconStyleBase","singe","SearchSelectInner","_ref$size","_ref$len","len","returnPaddingLeft","ICONTYPE","TagSize","large","default","small","_style$width","valueAmount","maxTagCount","_props$labelInValue","labelInValue","_props$mode","mode","_props$showSearch","_props$tagProps","tagProps","isMultiple","selectedLabel","setSelectedLabel","omitTagCount","divRef","valueVerify","selectedValueChange","getSelectOption","findResult","selectedLabelChange","handleItemsClick","removeSelectItem","resultValue","handleSelectChange","handleInputChange","resetSelectedValue","_inputRef$current","maxHeight","findIndex","finds","_inputRef$current2","flex","keyCode","StepsStyleTheme","colorStepsError","backgroundColorStepsError","borderColorStepsError","backgroundColorStepsProcess","borderColorStepsProcess","backgroundStepsStyleItemTail","colorStepsStyleItemHeadInner","borderColorStepsStyleItemHeadInner","backgroundColorStepsStyleItemHeadInner","colorStepsStyleItemHeadInnerIcon","colorStepsStyleItemMainTitle","colorStepsStyleItemMainProcess","StepsStyleWarp","StepsStyleItem","StepsStyleItemTail","StepsStyleItemTailI","nextError","StepsStyleItemHead","StepsStyleItemHeadInner","_templateObject33","_templateObject34","_templateObject35","_templateObject36","StepsStyleItemHeadInnerDot","_templateObject37","_templateObject38","StepsStyleItemHeadInnerIcon","_templateObject39","_props$params15","_props$params16","_templateObject40","_props$params17","_templateObject41","StepsStyleItemHeadInnerSvg","_templateObject42","StepsStyleItemMain","_templateObject43","_props$params18","_templateObject44","_templateObject45","_props$params19","_templateObject46","StepsStyleItemMainTitle","_templateObject47","_props$params20","_templateObject48","_props$params21","_templateObject49","_props$params22","_templateObject50","StepsStyleItemMainDescription","_templateObject51","_props$params23","_templateObject52","_props$params24","_templateObject53","_props$params25","_props$params26","_templateObject54","InternalSteps","_props$status","_props$progressDot","progressDot","warpRef","lastStepOffsetWidth","setLastStepOffsetWidth","filteredChildren","c","lastIndex","domNode","lastChild","abs","calcStepOffsetWidth","stepNumber","itemWidth","adjustMarginRight","Step","stepItemStyle","stepItemDotStyle","marginRight","iconNode","SliderStyleTheme","backgroundColorSlider","backgroundColorSliderStyleBar","backgroundColorSliderStyleHandleDisabled","boxShadowSliderStyleHandleDisabled","boxShadowSliderStyleHandleDisabledActive","backgroundColorSliderStyleHandleDisabledActive","boxShadowSliderStyleHandle","backgroundColorSliderStyleHandle","backgroundImageSliderStyleHandle","backgroundColorSliderStyleTooltip","colorSliderStyleTooltip","colorSliderStyleMark","boxShadowSliderStyleDot","backgroundColorSliderStyleDot","SliderStyleWarp","marks","SliderStyleBar","SliderStyleHandle","SliderStyleTooltip","SliderStyleDot","SliderStyleMark","noMarks","Dots","markRender","stepValue","_extends2","_props$min","_props$dots","dots","_props$step","_props$progress","progress","_props$tooltip","tooltip","renderMarks","bar","slider","indexBar","startX","curValue","barWidth","barOffsetLeft","move","arrValue","setArrValue","getWidthToValue","equal","floor","onDragging","vals","valueToWidth","_barStyl","onDragEnd","markOffset","newData","val1","val2","half","_half","getRangeValue","getValueToPercent","barStyl","leftValue","rightValue","getLabelValue","lleftPostion","onHandleBtnDown","stepWidth","stepArray","SwitchStyleTheme","minWidthSwitchCheckbox","heightSwitchCheckbox","backgroundColorSwitchCheckbox","borderRadiusSwitchCheckbox","boxShadowColorSwitchCheckbox","colorSwitchCheckboxBefore","lineHeightSwitchCheckboxBefore","backgroundColorSwitchCheckboxChecked","colorSwitchCheckboxNotCheckedBefore","heightSwitchCheckboxAfter","widthSwitchCheckboxAfter","borderRadiusSwitchCheckboxAfter","backgroundColorSwitchCheckboxAfter","boxShadowColorSwitchCheckboxAfter","boxShadowColorSwitchCheckboxFocus","boxShadowColorInSwitchCheckboxFocus","minWidthSwitchLargeCheckbox","heightSwitchLargeCheckbox","heightSwitchLargeCheckboxAfter","widthSwitchLargeCheckboxAfter","lineHeightSwitchLargeCheckboxBefore","minWidthSwitchSmallCheckbox","heightSwitchSmallCheckbox","heightSwitchSmallCheckboxAfter","widthSwitchSmallCheckboxAfter","lineHeightSwitchSmallCheckboxBefore","SwitchStyleWrap","TableBaseDefaultTheme","borderColorTable","backgroundColorTableFooter","borderBottomColorTableRows","backgroundColorTableTr","backgroundColorTable","backgroundColorTableEvenRows","backgroundColorTableEvenRowsHover","backgroundColorTableHead","borderRightColorFixedRows","TableStyleWrap","TableStyleDomIcon","TableStyleTheadWrap","TheadItem","TableStyleCol","first","TableStyleColContent","ellipsis","TableStyleFooter","getColspanNum","getRowspanNum","getLevelItems","levelTop","rowSpan","_num","getAllColumnsKeys","locationFixed","_location$index","_location$index2","getMergeRowSpan","expandedKeys","rowKey","childName","childSum","sum","ThComponent","_Component","wrapper","updateLocation","rowNum","colNum","rightFixedKey","titleNode","onCellHead","locationWidth","_item$fixed","thProps","TheadComponent","_props$data","_props$onCellHead","rightFixedNum","tds","ThComponentProps","ExpandableComponent","defaultExpand","_onClick","expandIcon","expand","setExpand","TableTr","_props$onCell","onCell","isExpandedDom","hierarchy","indentSize","childrenColumnName","_props$isAutoExpanded","isAutoExpanded","isAutoMergeRowSpan","expandIndex","setExpandIndex","onExpand","isOpacity","setIsOpacity","childrenIndex","setChildrenIndex","it","IconDom","trData","flag","MinusSquareO","PlusSquareO","newProps","float","getIndex","j","mergeSpan","isHasChildren","itemShow","newLaval","Reflect","get","has","objs","isExpanded","isExpandedButton","isExpandedBtn","isExpandedButtonLayout","_Fragment","_props$columns","empty","expandable","scroll","_props$isAutoMergeRow","setLocationWidth","finalLocationWidth","deepClumnsLocation","fistIndex","headerIndex","deepParams","console","log","_index","computed","childKey","defaultExpandAllRows","deep","arr1","defaultExpandedRowKeys","expandedRowKeys","record","expandedRowRender","rowExpandable","self","selfColumns","_expandable$defaultEx","onExpandedRowsChange","_result","table","overflowX","_getLevelItems","tableLayout","Thead","TabsStyleTheme","colorTabsItemActive","backgroundColorTabsItemActive","colorTabsItemDisabled","boxShadowTabsFlowContentDefault","backgroundColorTabsNavHiddenBase","backgroundColorTabsBase","borderBottomTabsAfter","borderBottomTabsCardAfter","backgroundColorTabsCardAfter","TabsStyleWarp","TabsDivSlide","TabsDivNav","TabsItem","TabsDivFlex","TabsDivHidden","TabsDivBar","TabsNavHidden","TabsFlowContent","TabsPaneWarp","Pane","labelWidth","_flowNav$nav","onTabClick","slideStyle","setSlideStyle","activeItem","flowLeft","displayStart","displayEnd","flowNav","flowNavSet","hiddenNav","hiddenNavSet","nodes","nodesSet","divContentRef","_e$target","divNavRef","itemKey","divNavWidthChange","curWidth","showHideenNav","calcSlideStyle","Styled","renderNav","TooltipStyleTheme","backgroundColorTooltipStyleInnerWarpBase","borderColorTooltipStyleInnerWarpBase","boxShadowTooltipStyleInnerWarpBase","TooltipStyleWarp","TooltipStyleContainerWarp","rightTop","rightBottom","leftTop","leftBottom","topLeft","topRight","bottomLeft","bottomRight","tooltipHandle","TooltipStyleArrowWarp","tooltipArrowHandle","TooltipStyleInnerWarp","_props$visibleArrow","TreeStyleTheme","borderRadiusTreeNodeDefault","borderTreeNodeDefaultAfter","backgroundColorTreeNodeJudgeSelected","colorTreeNodeUlLidivSpanDefault","transformTreeNodeUlLidivSpanDefault","fontSizeTreeNodeStyleCSSTransitionDefault","transformTreeNodeUlLidivSpanIconDefault","TreeNodeStyleCSSTransition","TreeNodeStyleUl","TreeNodeStyleUlDiv","TreeNodeStyleUlLidivSpan","TreeNodeStyleUlLidivSpanIcon","isNoChild","isIcon","isItemIsOpen","isIconAnimation","TreeNodeStyleUlLidivSpanDiv","judgeSelected","judgeisSelected","TreeNodeStyleWrap","Label","TreeNode","renderTitle","iconAnimation","isSelected","openKeys","selectedKeys","parent","_props$onItemClick","_props$onItemSelected","onItemSelected","noChild","itemIsOpen","iconItem","childKeys","getChildKeys","checkedKeys","isHalfChecked","disabledObj","disabledMouse","disabledClass","disabledStyle","hideNode","isDisabled","isContained","a","b","aStr","depth","getParentKeys","getParentSelectKeys","_props$openKeys","_props$selectedKeys","_props$defaultExpandA","defaultExpandAll","_props$showLine","showLine","_props$iconAnimation","_props$isSelected","_props$checkStrictly","checkStrictly","_props$onExpand","_props$autoExpandPare","autoExpandParent","curOpenKeys","setCurOpenKeys","curSelectedKeys","setCurSelectedKeys","arrOpenKeys","_arrOpenKeys","currentKeys","expanded","selKeys","findKey","from","Set","TreeCheckboxStyleBase","_ref$prefixCls","checkedProps","DropdownStyleTheme","backgroundColorDropdownDivBase","colorDropdownDivBase","backgroundColorDropdownDivDisabled","colorDropdownDivDisabled","boxShadowDropdownDiv","boxShadowDropdownDivFocus","boxShadowDropdownDivhover","boxShadowDropdownDivFocushover","DropdownWrap","DropdownDiv","DropdownDivTag","DropdownDivInput","DropdownDivSpan","_props$selectCloseDro","selectCloseDrop","emptyOption","selectedOption","setSelectedOption","optionRef","searchValue","searchValueSet","selectedAll","selectd","isChecked","searchValueChange","curreentItem","newContent","parse","flexFlow","TreeCheckeds","selectOption","selectOptionSet","keysSet","_props$values","getOptionsRecursion","isAdd","addOrDel","iteratorParent","selectCount","_child$children","_child$label","curSelectOption","isNumberKey","SingeTree","_props$values2","_1","_2","cur","CheckedStatus","_props$options","_props$emptyOption","treeProps","selectedValues","selectedValuesSet","selectedOptions","selectedOptionSet","isEmpty","isEmptySet","SearchTagInput","hiddenNodeForSeach","parentIsHide","_child$children2","isHide","isEmpt","TransferStyleTheme","boxShadowColorTransferArrowPropsHover","TransferWrap","TransferChekedContentWrap","TransferArrow","TransferArrowContent","TransferCard","_props$selectedAll","searchValueLeft","searchValueLeftSet","searchValueRight","searchValueRightSet","selectedOptionsShowCount","Map","leftSelectOption","leftSelectOptionSet","leftSelectedKeys","leftSelectedKeySet","rightSelectedKeys","rightSelectedKeySet","_useState15","_useState16","rightOpions","rightOpionSet","_useState17","UnChecked","_useState18","selectAllChecked","selectAllCheckedSet","set","hiddenNode","callBackfn","delete","transferClick","transferType","Arrow","DownSquareO","TranSferWarp","selectedOptionsRecursion","_child$children3","searchIsMatch","selectOptionTemp","background","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","every","getter","__esModule","leafPrototypes","getProto","getPrototypeOf","__proto__","ns","def","getOwnPropertyNames","definition","o","defineProperty","enumerable","chunkId","reduce","promises","u","miniCssF","g","globalThis","Function","inProgress","dataWebpackPrefix","l","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","nc","onScriptComplete","onerror","onload","doneFns","head","Symbol","toStringTag","p","loadStylesheet","reject","fullhref","existingLinkTags","dataHref","existingStyleTags","findStylesheet","oldTag","linkTag","errorType","realHref","Error","code","request","insertBefore","nextSibling","createStylesheet","installedCssChunks","miniCss","installedChunks","installedChunkData","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
|