@uiw/doc 4.21.26 → 4.21.27

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/main.6053bb3e.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?ec2c","webpack://website/./src/components/SiderMenu/index.module.less?215c","components/icons/nav.tsx","components/SiderMenu/index.tsx","webpack://website/./src/components/Nav/index.module.less?d89d","contexts/index.ts","components/icons/menu.tsx","components/Nav/index.tsx","layouts/BaseLayout.tsx","routers.tsx","index.tsx","../../packages/utils/src/noop.ts","../../packages/utils/src/getScroll.ts","../../packages/react-affix/src/utils.ts","../../packages/react-affix/src/index.tsx","../../packages/react-portal/src/index.tsx","../../packages/react-overlay/src/index.tsx","../../packages/react-icon/src/index.tsx","../../packages/react-button/src/index.tsx","../../packages/react-modal/src/index.tsx","../../packages/react-modal/src/CallShow.tsx","../../packages/react-alert/src/index.tsx","../../packages/react-auto-link/src/index.tsx","../../packages/react-avatar/src/index.tsx","../../packages/react-back-top/src/utils.ts","../../packages/react-back-top/src/index.tsx","../../packages/react-badge/src/index.tsx","../../packages/react-breadcrumb/src/Item.tsx","../../packages/react-breadcrumb/src/Breadcrumb.tsx","../../packages/react-breadcrumb/src/index.ts","../../packages/react-button-group/src/index.tsx","../../packages/react-overlay-trigger/src/utils.ts","../../packages/react-overlay-trigger/src/util/getBordersSize.ts","../../packages/react-overlay-trigger/src/util/isBrowser.ts","../../packages/react-overlay-trigger/src/util/isIE.ts","../../packages/react-overlay-trigger/src/util/getWindowSizes.ts","../../packages/react-overlay-trigger/src/util/getBoundingClientRect.ts","../../packages/react-overlay-trigger/src/util/getClientRect.ts","../../packages/react-overlay-trigger/src/util/getStyleComputedProperty.ts","../../packages/react-overlay-trigger/src/util/getOuterSizes.ts","../../packages/react-overlay-trigger/src/getStyle.ts","../../packages/react-overlay-trigger/src/index.tsx","../../packages/react-popover/src/index.tsx","../../packages/react-popover/src/Confirm.tsx","../../packages/react-input/src/InputNumber.tsx","../../packages/react-input/src/index.tsx","../../packages/react-time-picker/src/Panel.tsx","../../packages/react-time-picker/src/Time.tsx","../../packages/react-time-picker/src/index.tsx","../../packages/react-date-picker/src/DatePickerDay.tsx","../../packages/react-date-picker/src/DatePickerMonth.tsx","../../packages/react-date-picker/src/DatePickerYear.tsx","../../packages/react-date-picker/src/DatePickerCaption.tsx","../../packages/react-date-picker/src/index.tsx","../../packages/react-calendar/src/DayLabel.tsx","../../packages/react-calendar/src/index.tsx","../../packages/react-card/src/index.tsx","../../packages/react-carousel/src/index.tsx","../../packages/react-dropdown/src/index.tsx","../../packages/react-menu/src/MenuItem.tsx","../../packages/react-menu/src/Divider.tsx","../../packages/react-menu/src/SubMenu.tsx","../../packages/react-menu/src/Menu.tsx","../../packages/react-menu/src/index.ts","../../packages/react-cascader/src/index.tsx","../../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/Group.tsx","../../packages/react-checkbox/src/Checkbox.tsx","../../packages/react-checkbox/src/index.ts","../../packages/react-collapse/src/Collapse.tsx","../../packages/react-collapse/src/Panel.tsx","../../packages/react-collapse/src/index.ts","../../packages/react-copy-to-clipboard/src/index.tsx","../../packages/react-date-input/src/DateInputRange.tsx","../../packages/react-date-input/src/index.tsx","../../packages/react-descriptions/src/DescriptionsItem.tsx","../../packages/react-descriptions/src/Cell.tsx","../../packages/react-descriptions/src/Row.tsx","../../packages/react-descriptions/src/index.tsx","../../packages/react-divider/src/index.tsx","../../packages/react-drawer/src/index.tsx","../../packages/react-empty/src/index.tsx","../../packages/react-file-input/src/Input.tsx","../../packages/react-file-input/src/List.tsx","../../packages/react-file-input/src/Card.tsx","../../packages/react-file-input/src/utils.ts","../../packages/react-file-input/src/FileList.tsx","../../packages/react-file-input/src/index.tsx","../../packages/react-grid/src/Col.tsx","../../packages/react-grid/src/Row.tsx","../../packages/react-form/src/FormItem.tsx","../../packages/react-form/src/Form.tsx","../../packages/react-form/src/index.ts","../../packages/react-list/src/Item.tsx","../../packages/react-list/src/index.tsx","../../packages/react-loader/src/index.tsx","../../packages/react-message/src/index.tsx","../../packages/react-month-picker/src/index.tsx","../../packages/react-notify/src/Container.tsx","../../packages/react-notify/src/index.tsx","../../packages/utils/src/randomid.ts","../../packages/react-select/src/Option.tsx","../../packages/react-select/src/Group.tsx","../../packages/react-select/src/index.tsx","../../packages/react-pagination/src/index.tsx","../../packages/react-pin-code/src/index.tsx","../../packages/react-progress/src/utils.tsx","../../packages/react-progress/src/Circle.tsx","../../packages/react-progress/src/Line.tsx","../../packages/react-progress/src/index.ts","../../packages/react-rate/src/index.tsx","../../packages/react-tag/src/index.tsx","../../packages/react-search-select/src/index.tsx","../../packages/react-steps/src/Steps.tsx","../../packages/react-steps/src/Step.tsx","../../packages/react-steps/src/index.ts","../../packages/react-slider/src/Dots.tsx","../../packages/react-slider/src/index.tsx","../../packages/react-switch/src/index.tsx","../../packages/react-table/src/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/index.tsx","../../packages/react-tabs/src/Pane.tsx","../../packages/react-textarea/src/index.tsx","../../packages/react-tooltip/src/index.tsx","../../packages/react-tree/src/TreeNode.tsx","../../packages/react-tree/src/index.tsx","../../packages/react-tree-checked/src/index.tsx","../../packages/react-search-tree/src/SearchTagInput.tsx","../../packages/react-search-tree/src/index.tsx","../../packages/react-transfer/src/index.tsx","../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/startup"],"sourcesContent":["import React from 'react';\n\nconst logo = (\n <svg viewBox=\"0 0 20 20\" width=\"23\" height=\"23\" version=\"1.1\">\n <g stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\n <path\n d=\"M5.70480219,0 L10.4096044,3.41834667 L8.61252986,8.94934776 L2.79707453,8.94934776 L1,3.41834667 L5.70480219,0 Z M5.70480219,20 L1,16.5816533 L2.79707453,11.0506522 L8.61252986,11.0506522 L10.4096044,16.5816533 L5.70480219,20 Z M18.8709653,12.9678909 L13.3400514,14.7649021 L9.92167142,10.0599974 L13.3399103,5.35519519 L18.8708781,7.15237223 L18.8709653,12.9678909 Z\"\n fill=\"#FFFFFF\"\n />\n </g>\n </svg>\n);\n\nconst dark = logo;\n\nconst light = (\n <svg viewBox=\"0 0 20 20\" version=\"1.1\">\n <g stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\n <path\n d=\"M5.70480219,0 L10.4096044,3.41834667 L8.61252986,8.94934776 L2.79707453,8.94934776 L1,3.41834667 L5.70480219,0 Z M5.70480219,20 L1,16.5816533 L2.79707453,11.0506522 L8.61252986,11.0506522 L10.4096044,16.5816533 L5.70480219,20 Z M18.8709653,12.9678909 L13.3400514,14.7649021 L9.92167142,10.0599974 L13.3399103,5.35519519 L18.8708781,7.15237223 L18.8709653,12.9678909 Z\"\n fill=\"#FFFFFF\"\n />\n </g>\n </svg>\n);\n\nexport default {\n dark,\n light,\n};\n","import { Link } from 'react-router-dom';\n\nexport default function NoMatch() {\n return (\n <div>\n <h2>It looks like you're lost...</h2>\n <p>\n <Link to=\"/\">Go to the home page</Link>\n </p>\n </div>\n );\n}\n","import { Loader, Icon } from 'uiw';\n\nexport default function De() {\n return (\n <Loader tip=\"Loading...\" indicator={<Icon type=\"loading\" spin={true} style={{ verticalAlign: 'text-top' }} />} />\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {};","import React, { useMemo } from 'react';\nimport { Select } from 'uiw';\nimport pkg from 'uiw/package.json';\nimport styles from './index.module.less';\n\ntype OptionsProps = {\n version?: string;\n};\n\nfunction Options(props = {} as OptionsProps) {\n return useMemo(() => <Select.Option value={props.version}>{props.version}</Select.Option>, [props.version]);\n}\n\nexport type VersionSelectProps = {\n data: string[];\n};\n\nconst VersionSelect = (props = {} as VersionSelectProps) => {\n function onChange(e: React.ChangeEvent<HTMLSelectElement>) {\n const version = e.target.value;\n const isV1 = version.split('.')[0] === '1';\n if (isV1) {\n window.location.href = `https://unpkg.com/uiw@${version}/dist/index.html`;\n } else {\n window.location.href = `https://unpkg.com/@uiw/doc@${version}/web/index.html`;\n }\n }\n // @ts-ignore\n // eslint-disable-next-line no-undef\n const currentVersion = pkg.version;\n const versionList = props.data;\n const firstVersion = versionList[0];\n if (firstVersion !== currentVersion) {\n versionList.unshift(currentVersion);\n }\n return useMemo(\n () => (\n <div className={styles.nav}>\n <Select defaultValue={versionList[0]} onChange={onChange}>\n {versionList.map((version, idx) => {\n return <Options key={idx} version={version} />;\n })}\n </Select>\n </div>\n ),\n [versionList],\n );\n};\n\nexport default VersionSelect;\n","// extracted by mini-css-extract-plugin\nexport default {\"sider\":\"index_sider__vrASx\",\"menuWarpper\":\"index_menuWarpper__asOzy\",\"subMenu\":\"index_subMenu__c4Mvo\",\"layoutWrap\":\"index_layoutWrap__6CE3D\",\"layoutSider\":\"index_layoutSider__1t-SG\"};","// extracted by mini-css-extract-plugin\nexport default {\"title\":\"index_title__O5TzH\",\"menu\":\"index_menu__9HE8I\",\"divider\":\"index_divider__1cINS\"};","import React from 'react';\n\nexport default {\n home: (\n <svg width=\"23\" height=\"24\" viewBox=\"0 0 23 24\">\n <path\n fill=\"#555\"\n d=\"M7.95808665,21.4797568 L7.95808665,14.2926972 C7.95808665,13.872855 8.29729322,13.5325056 8.71572573,13.5325056 L14.7768383,13.5325056 C15.1952708,13.5325056 15.5344774,13.872855 15.5344774,14.2926972 L15.5344774,21.4800639 L18.3333605,21.4801773 C18.4412665,21.4760176 18.5251665,21.4671569 18.58271,21.4596448 C18.588514,21.3995182 18.5915777,21.3235793 18.5907536,21.2318213 L18.5909124,14.2893672 C18.590922,13.869525 18.9301364,13.5291834 19.3485689,13.5291931 C19.7670014,13.5292027 20.1062001,13.8695599 20.1061905,14.2894021 L20.1059996,21.2248359 C20.1119888,21.8771673 19.9896563,22.3494462 19.5993559,22.6516032 C19.3010239,22.8825616 18.9057568,22.9796164 18.3624477,23 L4.48346492,22.9997015 C3.86961191,22.9824374 3.38486601,22.8118189 3.07125061,22.4182996 C2.79329968,22.0695315 2.68322544,21.5965073 2.68425496,20.9934992 L2.68424909,14.2893853 C2.68424872,13.8695431 3.02345499,13.5291934 3.4418875,13.5291931 C3.86032001,13.5291927 4.19952687,13.8695418 4.19952724,14.289384 L4.199532,20.9947994 C4.19904359,21.2811808 4.23526541,21.4410529 4.2538782,21.4676906 C4.24030246,21.4480656 4.31738234,21.474056 4.50469304,21.4796169 L7.95808665,21.4797568 Z M9.4733648,21.4798183 L14.0191993,21.4800025 L14.0191993,15.0528888 L9.4733648,15.0528888 L9.4733648,21.4798183 Z M2.28332829,11.4133771 C1.98200714,11.7046849 1.50237937,11.6957445 1.21204968,11.3934082 C0.921719999,11.0910719 0.930630346,10.6098283 1.2319515,10.3185205 L10.4507678,1.41136668 C10.7833916,1.14885042 11.1310579,1 11.4999998,1 C11.9102569,1 12.2738276,1.19453217 12.5845816,1.51087139 L21.7658664,10.3164197 C22.0683439,10.6065186 22.0791684,11.0877227 21.7900436,11.3912192 C21.5009189,11.6947157 21.0213305,11.7055767 20.718853,11.4154779 L11.5218713,2.5944308 C11.4545418,2.52599021 11.4440624,2.52038312 11.4999998,2.52038312 C11.514622,2.52038312 11.4750696,2.53731716 11.4448602,2.55629655 L2.28332829,11.4133771 Z\"\n />\n </svg>\n ),\n component: (\n <svg viewBox=\"0 0 1041 1024\" width=\"20\" height=\"20\">\n <path\n d=\"M133.498105 661.882904h31.175644v195.047619a34.373146 34.373146 0 0 0 34.373146 34.373146h109.514441a34.373146 34.373146 0 1 0 0-68.746292h-75.141295V627.509758a35.172521 35.172521 0 0 0-34.373146-35.172521h-65.54879a63.950039 63.950039 0 0 1 0-127.900079h65.54879a35.172521 35.172521 0 0 0 34.373146-35.172521V233.417642h195.846994a35.172521 35.172521 0 0 0 35.172522-34.373146v-65.54879a63.950039 63.950039 0 0 1 127.900078 0v65.54879a35.172521 35.172521 0 0 0 35.172521 34.373146h195.047619v74.341921a34.373146 34.373146 0 0 0 68.746292 0V199.044496a34.373146 34.373146 0 0 0-34.373146-34.373145H661.885302v-31.175645a133.495706 133.495706 0 0 0-266.991413 0v31.175645H199.046895a34.373146 34.373146 0 0 0-34.373146 34.373145v195.846995h-31.175644A132.696331 132.696331 0 0 0 0.002398 527.587822a133.495706 133.495706 0 0 0 133.495707 134.295082z\"\n fill=\"#6F737E\"\n />\n <path\n d=\"M1004.817386 840.943013a79.937549 79.937549 0 1 1 0-159.875097 34.373146 34.373146 0 0 0 34.373146-32.774395V533.982826a34.373146 34.373146 0 0 0-34.373146-34.373146H879.315435v-10.391881a103.119438 103.119438 0 1 0-206.238876 0v10.391881H549.972734a35.172521 35.172521 0 0 0-35.172522 34.373146v124.702576h-10.391881a103.119438 103.119438 0 1 0 0 206.238876h10.391881v124.702576a35.172521 35.172521 0 0 0 35.172522 34.373146H663.484053a34.373146 34.373146 0 0 0 34.373146-34.373146 79.937549 79.937549 0 0 1 159.875098 0 34.373146 34.373146 0 0 0 34.373146 34.373146h114.310694a34.373146 34.373146 0 0 0 34.373146-34.373146V879.313037a34.373146 34.373146 0 0 0-35.971897-38.370024z\"\n fill=\"#6F737E\"\n />\n </svg>\n ),\n github: (\n <svg viewBox=\"0 0 1049 1024\" width=\"20\" height=\"20\">\n <path\n d=\"M524.979332 0C234.676191 0 0 234.676191 0 524.979332c0 232.068678 150.366597 428.501342 358.967656 498.035028 26.075132 5.215026 35.636014-11.299224 35.636014-25.205961 0-12.168395-0.869171-53.888607-0.869171-97.347161-146.020741 31.290159-176.441729-62.580318-176.441729-62.580318-23.467619-60.841976-58.234462-76.487055-58.234463-76.487055-47.804409-32.15933 3.476684-32.15933 3.476685-32.15933 53.019436 3.476684 80.83291 53.888607 80.83291 53.888607 46.935238 79.963739 122.553122 57.365291 152.97411 43.458554 4.345855-33.897672 18.252593-57.365291 33.028501-70.402857-116.468925-12.168395-239.022047-57.365291-239.022047-259.012982 0-57.365291 20.860106-104.300529 53.888607-140.805715-5.215026-13.037566-23.467619-66.926173 5.215027-139.067372 0 0 44.327725-13.906737 144.282399 53.888607 41.720212-11.299224 86.917108-17.383422 131.244833-17.383422s89.524621 6.084198 131.244833 17.383422C756.178839 203.386032 800.506564 217.29277 800.506564 217.29277c28.682646 72.1412 10.430053 126.029806 5.215026 139.067372 33.897672 36.505185 53.888607 83.440424 53.888607 140.805715 0 201.64769-122.553122 245.975415-239.891218 259.012982 19.121764 16.514251 35.636014 47.804409 35.636015 97.347161 0 70.402857-0.869171 126.898978-0.869172 144.282399 0 13.906737 9.560882 30.420988 35.636015 25.205961 208.601059-69.533686 358.967656-265.96635 358.967655-498.035028C1049.958663 234.676191 814.413301 0 524.979332 0z\"\n fill=\"#191717\"\n />\n <path\n d=\"M199.040177 753.571326c-0.869171 2.607513-5.215026 3.476684-8.691711 1.738342s-6.084198-5.215026-4.345855-7.82254c0.869171-2.607513 5.215026-3.476684 8.691711-1.738342s5.215026 5.215026 4.345855 7.82254z m-6.953369-4.345856M219.900283 777.038945c-2.607513 2.607513-7.82254 0.869171-10.430053-2.607514-3.476684-3.476684-4.345855-8.691711-1.738342-11.299224 2.607513-2.607513 6.953369-0.869171 10.430053 2.607514 3.476684 4.345855 4.345855 9.560882 1.738342 11.299224z m-5.215026-5.215027M240.760389 807.459932c-3.476684 2.607513-8.691711 0-11.299224-4.345855-3.476684-4.345855-3.476684-10.430053 0-12.168395 3.476684-2.607513 8.691711 0 11.299224 4.345855 3.476684 4.345855 3.476684 9.560882 0 12.168395z m0 0M269.443034 837.011749c-2.607513 3.476684-8.691711 2.607513-13.906737-1.738342-4.345855-4.345855-6.084198-10.430053-2.607513-13.037566 2.607513-3.476684 8.691711-2.607513 13.906737 1.738342 4.345855 3.476684 5.215026 9.560882 2.607513 13.037566z m0 0M308.555733 853.526c-0.869171 4.345855-6.953369 6.084198-13.037566 4.345855-6.084198-1.738342-9.560882-6.953369-8.691711-10.430053 0.869171-4.345855 6.953369-6.084198 13.037566-4.345855 6.084198 1.738342 9.560882 6.084198 8.691711 10.430053z m0 0M351.145116 857.002684c0 4.345855-5.215026 7.82254-11.299224 7.82254-6.084198 0-11.299224-3.476684-11.299224-7.82254s5.215026-7.82254 11.299224-7.82254c6.084198 0 11.299224 3.476684 11.299224 7.82254z m0 0M391.126986 850.049315c0.869171 4.345855-3.476684 8.691711-9.560882 9.560882-6.084198 0.869171-11.299224-1.738342-12.168395-6.084197-0.869171-4.345855 3.476684-8.691711 9.560881-9.560882 6.084198-0.869171 11.299224 1.738342 12.168396 6.084197z m0 0\"\n fill=\"#191717\"\n />\n </svg>\n ),\n issue: (\n <svg className=\"issue\" viewBox=\"0 0 1024 1024\" width=\"23\" height=\"23\">\n <path\n d=\"M1022.976 698.368c0-58.88-24.064-113.664-64.512-155.648-44.544 175.616-223.744 307.2-438.784 310.784 51.712 55.296 131.072 90.624 219.648 90.624 21.504 0 41.984-2.048 61.952-6.144 54.784 75.776 121.856 72.192 121.856 72.192-24.064-14.848-27.136-69.632-26.112-108.032 76.288-44.032 125.952-119.296 125.952-203.776z m0 0\"\n fill=\"#558EFF\"\n ></path>\n <path\n d=\"M458.24 13.824C205.312 13.824 0 191.488 0 410.624c0 137.216 80.384 258.048 202.24 329.216 1.536 61.44-3.584 150.016-41.984 174.592 0 0 108.544 5.632 197.12-116.736 32.256 6.144 66.048 9.728 100.352 9.728H465.92c215.04-3.584 394.24-135.168 438.784-310.784 7.168-27.648 10.752-56.32 10.752-86.016 0.512-219.136-204.288-396.8-457.216-396.8zM256 462.848c-33.792 0-60.928-27.136-60.928-60.928 0-33.792 27.136-60.928 60.928-60.928 33.792 0 60.928 27.136 60.928 60.928 0 33.792-27.136 60.928-60.928 60.928z m202.24 0c-33.792 0-60.928-27.136-60.928-60.928 0-33.792 27.136-60.928 60.928-60.928 33.792 0 60.928 27.136 60.928 60.928 0 33.792-27.136 60.928-60.928 60.928z m202.24 0c-33.792 0-60.928-27.136-60.928-60.928 0-33.792 27.136-60.928 60.928-60.928 33.792 0 60.928 27.136 60.928 60.928 0 33.792-27.136 60.928-60.928 60.928z m0 0\"\n fill=\"#549EFF\"\n ></path>\n </svg>\n ),\n gitee: (\n <svg className=\"gitee\" viewBox=\"0 0 1024 1024\" width=\"200\" height=\"200\">\n <path\n d=\"M512 1024C229.222 1024 0 794.778 0 512S229.222 0 512 0s512 229.222 512 512-229.222 512-512 512z m259.149-568.883h-290.74a25.293 25.293 0 0 0-25.292 25.293l-0.026 63.206c0 13.952 11.315 25.293 25.267 25.293h177.024c13.978 0 25.293 11.315 25.293 25.267v12.646a75.853 75.853 0 0 1-75.853 75.853h-240.23a25.293 25.293 0 0 1-25.267-25.293V417.203a75.853 75.853 0 0 1 75.827-75.853h353.946a25.293 25.293 0 0 0 25.267-25.292l0.077-63.207a25.293 25.293 0 0 0-25.268-25.293H417.152a189.62 189.62 0 0 0-189.62 189.645V771.15c0 13.977 11.316 25.293 25.294 25.293h372.94a170.65 170.65 0 0 0 170.65-170.65V480.384a25.293 25.293 0 0 0-25.293-25.267z\"\n fill=\"#C71D23\"\n ></path>\n </svg>\n ),\n plugin: (\n <svg viewBox=\"0 0 1024 1024\" width=\"24\" height=\"24\">\n <path d=\"M937.6 251.3L538 69.7c-11.5-5.1-24.6-5.1-36.1 0L102.4 251.3c-22.4 9.9-32.5 32.2-22.6 54.6 4.5 10.1 12.5 15.1 22.6 19.6L502 506.1c11.5 5.1 24.6 5.1 36.1 0l399.6-180.6c22.4-9.9 32.5-33.2 22.6-55.6-4.6-10.1-12.6-14.1-22.7-18.6zM497.6 723.4l-398.7-165c-18.4-7.6-27.1-28.7-19.5-47 7.6-18.4 28.7-27.1 47-19.5l398.7 165c18.4 7.6 27.1 28.7 19.5 47-7.6 18.3-28.6 27.1-47 19.5z\" />\n <path d=\"M526.4 723.4l398.7-165c18.4-7.6 27.1-28.7 19.5-47-7.6-18.4-28.7-27.1-47-19.5l-398.7 165c-18.4 7.6-27.1 28.7-19.5 47 7.6 18.3 28.6 27.1 47 19.5z\" />\n <path d=\"M497.6 955.4l-398.7-165c-18.4-7.6-27.1-28.7-19.5-47 7.6-18.4 28.7-27.1 47-19.5l398.7 165c18.4 7.6 27.1 28.7 19.5 47-7.6 18.3-28.6 27.1-47 19.5z\" />\n <path d=\"M526.4 955.4l398.7-165c18.4-7.6 27.1-28.7 19.5-47-7.6-18.4-28.7-27.1-47-19.5l-398.7 165c-18.4 7.6-27.1 28.7-19.5 47 7.6 18.3 28.6 27.1 47 19.5z\" />\n </svg>\n ),\n};\n","import { NavLink } from 'react-router-dom';\nimport { useLocation } from 'react-router-dom';\nimport styles from './index.module.less';\nimport menu from '../../menu.json';\nimport nav from '../icons/nav';\n\nexport default function SiderMenu() {\n const location = useLocation();\n const data = menu.find((item) => new RegExp(`^${item.path || ''}`).test(location.pathname));\n\n if (!data?.children) {\n return null;\n }\n return (\n <div className={styles.wapper}>\n <h2 className={styles.title}>\n {(nav as any)[data.icon]}\n <span>{data.name}</span>\n </h2>\n <div className={styles.menu}>\n {data.children &&\n data.children.map((item, idx) => {\n if (item.divider) {\n return (\n <div key={idx} className={styles.divider}>\n {item.name}\n </div>\n );\n }\n if (/^http(?:|s):\\/\\//.test(item.path || '')) {\n return (\n <a key={idx} href={item.path} target=\"__blank\">\n {item.name}\n <svg viewBox=\"0 0 1024 1024\" width={14}>\n <path d=\"M821.1456 276.8384c-235.9296 25.1392-449.1776 226.7136-490.5472 452.352a38.4 38.4 0 1 1-75.5712-13.824c45.568-248.576 269.312-468.48 526.6944-510.6688l-117.8112-69.1712a38.4 38.4 0 0 1 38.912-66.2528l223.3344 131.1744a38.4 38.4 0 0 1 10.1376 57.6l-170.752 206.6432a38.4 38.4 0 1 1-59.1872-48.9472l114.7904-138.9056z\" />\n <path d=\"M832 620.0832a38.4 38.4 0 0 1 76.8 0v158.208c0 85.9648-61.5936 157.8496-140.8 157.8496H204.8c-79.2064 0-140.8-71.8848-140.8-157.9008V300.3904c0-86.016 61.5936-157.8496 140.8-157.8496h220.2112a38.4 38.4 0 1 1 0 76.8H204.8c-33.8944 0-64 35.072-64 81.0496V778.24c0 45.9776 30.1056 81.1008 64 81.1008h563.2c33.8944 0 64-35.1232 64-81.1008v-158.1568z\" />\n </svg>\n </a>\n );\n }\n return (\n <NavLink key={idx} to={item.path || ''} replace>\n {item.name}\n </NavLink>\n );\n })}\n </div>\n </div>\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"logo\":\"index_logo__kUQOi\",\"top\":\"index_top__DLxV-\",\"nav\":\"index_nav__SdXbb\",\"navTop\":\"index_navTop__08yh1\",\"btn\":\"index_btn__YYGUe\",\"btnTop\":\"index_btnTop__PlNw6\"};","import React from 'react';\n\ntype InitialState = {\n layout: 'top' | 'left' | 'mix';\n};\n\nexport const initialState: InitialState = {\n layout: 'top',\n};\n\nexport const reducer = (state: InitialState, action: InitialState) => {\n return {\n ...state,\n ...action,\n };\n};\n\nexport interface Context {\n state: InitialState;\n dispatch: React.Dispatch<InitialState>;\n}\n\nexport const ThemeContext = React.createContext<Context>({\n state: initialState,\n dispatch: () => null,\n});\n","import React from 'react';\n\nexport default {\n menu: (\n <svg width=\"19\" height=\"19\" viewBox=\"0 0 26 26\">\n <g fill=\"none\" fillRule=\"evenodd\">\n <rect width=\"26\" height=\"26\" fill=\"#9E9E9E\" rx=\"4\" />\n <rect width=\"5\" height=\"20\" x=\"3\" y=\"3\" fill=\"#202224\" rx=\"2.5\" />\n <rect width=\"12\" height=\"20\" x=\"11\" y=\"3\" fill=\"#FFF\" fillOpacity=\".657\" rx=\"2\" />\n </g>\n </svg>\n ),\n menutop: (\n <svg width=\"19\" height=\"19\" viewBox=\"0 0 26 26\">\n <g fill=\"none\" fillRule=\"evenodd\">\n <rect width=\"26\" height=\"26\" fill=\"#9E9E9E\" rx=\"4\" />\n <rect width=\"20\" height=\"5\" x=\"3\" y=\"3\" fill=\"#202224\" rx=\"2.5\" />\n <rect width=\"20\" height=\"12\" x=\"3\" y=\"11\" fill=\"#FFF\" fillOpacity=\".66\" rx=\"2\" />\n </g>\n </svg>\n ),\n china: (\n <svg className=\"flag\" width=\"19\" height=\"19\" viewBox=\"0 0 512 512\">\n <defs>\n <path id=\"a\" fill=\"#ffde00\" d=\"M1-.3L-.7.8 0-1 .6.8-1-.3z\" />\n </defs>\n <path fill=\"#de2910\" d=\"M0 0h512v512H0z\" />\n <use width=\"30\" height=\"20\" transform=\"matrix(76.8 0 0 76.8 128 128)\" xlinkHref=\"#a\" />\n <use width=\"30\" height=\"20\" transform=\"rotate(-121 142.6 -47) scale(25.5827)\" xlinkHref=\"#a\" />\n <use width=\"30\" height=\"20\" transform=\"rotate(-98.1 198 -82) scale(25.6)\" xlinkHref=\"#a\" />\n <use width=\"30\" height=\"20\" transform=\"rotate(-74 272.4 -114) scale(25.6137)\" xlinkHref=\"#a\" />\n <use width=\"30\" height=\"20\" transform=\"matrix(16 -19.968 19.968 16 256 230.4)\" xlinkHref=\"#a\" />\n </svg>\n ),\n};\n","import { Fragment, useContext } from 'react';\nimport { Tooltip } from 'uiw';\nimport { NavLink, Link } from 'react-router-dom';\nimport styles from './index.module.less';\nimport data from '../../menu.json';\nimport { ThemeContext } from '../../contexts';\nimport nav from '../icons/nav';\nimport logo from '../icons/logo';\nimport menu from '../icons/menu';\nimport pkg from 'uiw/package.json';\n\nexport default function Nav() {\n const { state, dispatch } = useContext(ThemeContext);\n return (\n <Fragment>\n <div className={[styles.logo, state.layout === 'left' ? null : styles.top].filter(Boolean).join(' ').trim()}>\n <Link to=\"/\">\n {logo.dark}\n {state.layout === 'top' && (\n <span>\n UIW<sup>{pkg.version}</sup>\n </span>\n )}\n </Link>\n </div>\n <div className={[styles.nav, state.layout === 'left' ? null : styles.navTop].filter(Boolean).join(' ').trim()}>\n {data.map(({ path, name, icon }, idx) => {\n if (Object.keys(nav).includes(icon)) {\n icon = (nav as any)[icon];\n }\n if (/^https?:(?:\\/\\/)?/.test(path)) {\n if (state.layout === 'top') {\n return (\n <a key={idx} target=\"__blank\" href={path} className={styles.outerUrl}>\n {icon} <span>{name}</span>\n </a>\n );\n }\n return (\n <Tooltip\n usePortal={false}\n key={idx}\n placement={state.layout === 'left' ? 'right' : 'bottom'}\n content={<span style={{ whiteSpace: 'nowrap' }}>{name}</span>}\n >\n <a target=\"__blank\" href={path} className={styles.outerUrl}>\n {icon}\n </a>\n </Tooltip>\n );\n }\n let activeStyle: React.CSSProperties = {\n color: '#fff',\n };\n if (state.layout === 'top') {\n return (\n <NavLink\n to={path}\n key={idx}\n // @ts-ignore\n style={({ isActive }) => (isActive ? activeStyle : undefined)}\n >\n {icon} <span>{name}</span>\n </NavLink>\n );\n }\n\n return (\n <Tooltip\n usePortal={false}\n key={idx}\n placement={state.layout === 'left' ? 'right' : 'bottom'}\n content={<span style={{ whiteSpace: 'nowrap' }}>{name}</span>}\n >\n <NavLink\n to={path}\n // @ts-ignore\n style={({ isActive }) => (isActive ? activeStyle : undefined)}\n >\n {icon}\n </NavLink>\n </Tooltip>\n );\n })}\n </div>\n <div className={[styles.btn, state.layout === 'left' ? null : styles.btnTop].filter(Boolean).join(' ').trim()}>\n <Tooltip placement={state.layout === 'left' ? 'right' : 'bottom'} content=\"国内镜像站点\">\n <a href=\"http://uiw.gitee.io\" rel=\"noopener noreferrer\" target=\"_blank\">\n {menu.china}\n </a>\n </Tooltip>\n <button onClick={() => dispatch({ layout: state.layout === 'left' ? 'top' : 'left' })}>\n {state.layout === 'left' ? menu.menu : menu.menutop}\n </button>\n </div>\n </Fragment>\n );\n}\n","import { Fragment, useContext } from 'react';\nimport { Outlet } from 'react-router-dom';\nimport { Layout, Affix } from 'uiw';\nimport VersionSelect from '../components/VersionSelect';\nimport styles from './index.module.less';\nimport version from '../version.json';\nimport SiderMenu from '../components/SiderMenu';\nimport Nav from '../components/Nav';\nimport { ThemeContext } from '../contexts';\n\nconst { Header, Sider, Content } = Layout;\nexport interface ComponentsProps {\n siderMenu?: boolean;\n}\n\nexport default function Components(props: ComponentsProps) {\n const { siderMenu = true } = props;\n const { state } = useContext(ThemeContext);\n return (\n <Layout className={styles.layout}>\n {state.layout === 'top' ? (\n <Fragment>\n <Affix offsetTop={0} style={{ zIndex: 999, 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 <Header\n style={{\n height: 'inherit',\n lineHeight: '32px',\n position: 'absolute',\n padding: '5px 10px',\n right: 10,\n marginTop: -10,\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 <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 }} data-ddd=\"xxx\" 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: '/',\n element: <Home />,\n },\n];\n","import React, { useReducer } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { useRoutes, HashRouter } from 'react-router-dom';\nimport BackToUp from '@uiw/react-back-to-top';\nimport '@uiw/reset.css';\nimport { routes } from './routers';\nimport './styles/index.less';\nimport { ThemeContext, reducer, initialState } from './contexts';\n\nconst App = () => useRoutes(routes);\nexport const Provider = ({ children }: { children: React.ReactNode }) => {\n const [state, dispatch] = useReducer(reducer, initialState);\n return <ThemeContext.Provider value={{ state, dispatch }}>{children}</ThemeContext.Provider>;\n};\n\nconst container = document.getElementById('root');\nconst root = createRoot(container!);\nroot.render(\n <HashRouter>\n <BackToUp style={{ zIndex: 9999 }}>Top</BackToUp>\n <Provider>\n <App />\n </Provider>\n </HashRouter>,\n);\n","export function noop() {}\n","/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} top `true` or `false`\n * @returns {number} amount of scrolled pixels\n */\nexport function getScroll(target: HTMLElement | Window | null, top?: boolean) {\n if (typeof window === 'undefined') {\n return 0;\n }\n\n const prop = top ? 'pageYOffset' : 'pageXOffset';\n const method = top ? 'scrollTop' : 'scrollLeft';\n const isWindow: boolean = target === window;\n\n let ret = isWindow ? (target as Window)[prop] : (target as HTMLElement)[method];\n if (isWindow && typeof ret !== 'number') {\n ret = document.documentElement[method];\n }\n\n return ret;\n}\n","import { getScroll } from '@uiw/utils';\n\nexport const getTargetRect = (target: HTMLElement | Window | null) => {\n return target !== window\n ? (target as HTMLElement).getBoundingClientRect()\n : ({ top: 0, left: 0, bottom: 0 } as ClientRect);\n};\n\nexport const getOffset = (element: HTMLElement, target: HTMLElement | Window | null) => {\n const elemRect = element.getBoundingClientRect();\n const targetRect = getTargetRect(target);\n const scrollTop = getScroll(target, true);\n const scrollLeft = getScroll(target);\n\n const docElem = window.document.body;\n const clientTop = docElem.clientTop || 0;\n const clientLeft = docElem.clientLeft || 0;\n\n return {\n top: elemRect.top - targetRect.top + scrollTop - clientTop,\n left: elemRect.left - targetRect.left + scrollLeft - clientLeft,\n width: elemRect.width,\n height: elemRect.height,\n };\n};\n\nexport const getDefaultTarget = () => (typeof window !== 'undefined' ? window : null);\n","import React from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport { getDefaultTarget, getOffset } from './utils';\n\nexport interface AffixProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n /**\n * 距离窗口顶部达到指定偏移量后触发\n */\n offsetTop?: number;\n /**\n * 距离窗口底部达到指定偏移量后触发\n */\n offsetBottom?: number;\n target?: () => Window | HTMLElement | null;\n /**\n * 固定状态改变时触发的回调函数\n */\n onChange?: (affixed?: boolean) => void;\n}\n\nexport interface AffixState {\n affixStyle?: React.CSSProperties;\n placeholderStyle?: React.CSSProperties;\n}\n\nexport default class Affix extends React.Component<AffixProps, AffixState> {\n public static defaultProps: AffixProps = {\n prefixCls: 'w-affix',\n onChange: noop,\n };\n public state: AffixState = {\n placeholderStyle: undefined,\n affixStyle: undefined,\n };\n private box: any;\n private target!: Window | HTMLElement | null;\n private readonly events = ['resize', 'scroll', 'touchstart', 'touchmove', 'touchend', 'pageshow', 'load'];\n private eventHandlers: Record<string, any> = {};\n private timeout?: number;\n constructor(props: AffixProps & HTMLDivProps) {\n super(props);\n this.updatePosition = this.updatePosition.bind(this);\n }\n componentDidMount() {\n const target = this.props.target || getDefaultTarget;\n // Wait for parent component ref has its value\n this.timeout = window.setTimeout(() => {\n this.target = target();\n this.setTargetEventListeners();\n });\n }\n componentWillUnmount() {\n this.clearEventListeners();\n clearTimeout(this.timeout);\n }\n updatePosition() {\n let { offsetTop } = this.props;\n const { offsetBottom } = this.props;\n if (!this.box || !this.box.offsetParent) {\n return;\n }\n\n const elemSize = {\n width: this.box.clientWidth,\n height: this.box.clientHeight,\n };\n const offsetMode = { top: true, bottom: false };\n if (typeof offsetTop !== 'number' && typeof offsetBottom !== 'number') {\n offsetMode.top = true;\n offsetTop = 0;\n }\n\n if (typeof offsetBottom === 'number') {\n offsetMode.top = false;\n offsetMode.bottom = true;\n }\n\n const elemOffset = getOffset(this.box, this.target);\n const box = this.box.getBoundingClientRect();\n const bottom = document.documentElement.clientHeight - box.y - elemOffset.height;\n\n if (offsetMode.top && box.y < 0) {\n this.setPlaceholderStyle({ ...elemSize });\n this.setAffixStyle({\n position: 'fixed',\n top: offsetTop || 0,\n left: elemOffset.left,\n width: elemOffset.width,\n });\n } else if (offsetMode.bottom && bottom < 0) {\n this.setPlaceholderStyle({ ...elemSize });\n this.setAffixStyle({\n position: 'fixed',\n bottom: offsetBottom || 0,\n left: elemOffset.left,\n width: elemOffset.width,\n });\n } else {\n this.setPlaceholderStyle();\n this.setAffixStyle();\n }\n }\n setAffixStyle(affixStyle?: React.CSSProperties) {\n const { onChange } = this.props;\n const affixed = !!this.state.affixStyle;\n this.setState({ affixStyle }, () => {\n onChange && onChange(affixed);\n });\n }\n setPlaceholderStyle(placeholderStyle?: React.CSSProperties) {\n this.setState({ placeholderStyle });\n }\n // 设置监听事件\n setTargetEventListeners() {\n this.clearEventListeners();\n this.events.forEach((eventName) => {\n this.eventHandlers[eventName] = this.updatePosition;\n this.target && this.target.addEventListener(eventName, this.updatePosition, false);\n });\n }\n clearEventListeners() {\n this.events.forEach((eventName) => {\n const handler = this.eventHandlers[eventName];\n this.target && this.target.removeEventListener(eventName, handler, false);\n });\n }\n getInstance = (node: HTMLDivElement) => {\n if (node) {\n this.box = node;\n }\n };\n public render() {\n const { prefixCls, className, children, offsetTop, offsetBottom, target, onChange, ...resetProps } = this.props;\n const cls = [className, prefixCls].filter(Boolean).join(' ').trim();\n return (\n <div {...resetProps} ref={this.getInstance} style={{ ...this.state.placeholderStyle, ...this.props.style }}>\n <div className={cls} style={this.state.affixStyle}>\n {children}\n </div>\n </div>\n );\n }\n}\n","import React, { useEffect, useRef } from 'react';\nimport ReactDOM from 'react-dom';\n\nexport const canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nexport interface PortalProps {\n children?: React.ReactNode;\n /**\n * The HTML element that children will be mounted to.\n * @default document.body\n */\n container?: HTMLElement;\n /**\n * Callback invoked when the children of this `Portal` have been added to the DOM.\n * @deprecated v4.9.0+\n */\n onChildrenMount?: (portalElement: HTMLElement) => void;\n /** @deprecated v4.9.0+ */\n visible?: boolean;\n}\n\nexport default function Portal(props: PortalProps) {\n const { container } = props;\n const defaultNode = useRef<HTMLDivElement>();\n const containerRef = useRef<HTMLElement | undefined>(container);\n\n useEffect(() => {\n return () => {\n if (defaultNode.current && containerRef.current) {\n containerRef.current.removeChild(defaultNode.current);\n defaultNode.current = undefined;\n }\n };\n }, []);\n\n if (!canUseDOM) {\n return null;\n }\n if (!containerRef.current) {\n containerRef.current = document.body;\n }\n if (!defaultNode.current) {\n defaultNode.current = document.createElement('div');\n containerRef.current.appendChild(defaultNode.current);\n }\n return ReactDOM.createPortal(props.children, defaultNode.current);\n}\n","/**\n * Overlay 组件\n * ---------------\n * 动画库 react-transition-group 文档\n * 老的文档\n * https://facebook.github.io/react/docs/animation.html\n * 新的文档\n * https://reactcommunity.org/react-transition-group/\n * 动画效果\n * https://daneden.github.io/animate.css/\n */\nimport React, { cloneElement, useEffect, useRef, useState } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { TransitionProps } from 'react-transition-group/Transition';\nimport Portal, { PortalProps } from '@uiw/react-portal';\nimport { IProps, noop } from '@uiw/utils';\n\nimport './style/index.less';\n\nexport interface OverlayProps extends IProps, Omit<TransitionProps, 'timeout'> {\n timeout?: TransitionProps['timeout'];\n isOpen?: boolean;\n usePortal?: boolean;\n maskClosable?: boolean;\n dialogProps?: React.HTMLProps<HTMLElement>;\n backdropProps?: React.HTMLProps<HTMLDivElement>;\n portalProps?: PortalProps;\n hasBackdrop?: boolean;\n unmountOnExit?: boolean;\n transitionName?: string;\n onEnter?: (node: HTMLElement, isAppearing: boolean) => void;\n onOpening?: (node: HTMLElement, isAppearing: boolean) => void;\n onOpened?: (node: HTMLElement, isAppearing: boolean) => void;\n onClosing?: (node: HTMLElement) => void;\n onClosed?: (node: HTMLElement | React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;\n onClose?: (evn: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n}\n\nexport default function Overlay(props: OverlayProps) {\n const {\n className,\n style,\n isOpen: _ = false,\n prefixCls = 'w-overlay',\n usePortal = true,\n maskClosable = true,\n backdropProps = {},\n portalProps = {},\n hasBackdrop = true,\n unmountOnExit = true, // 设置 true 销毁根节点\n timeout = 300,\n transitionName = 'w-overlay',\n // onEnter = noop,\n onOpening = noop,\n onOpened = noop,\n onClosing = noop,\n onClosed = noop,\n onClose = noop,\n 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(children, {\n ...dialogProps,\n style: { ...children.props.style, ...dialogProps.style },\n className: [children.props.className, `${prefixCls}-content`].filter(Boolean).join(' ').trim(),\n tabIndex: 0,\n })\n ) : (\n <span {...dialogProps} className={`${prefixCls}-content`}>\n {children}\n </span>\n );\n\n function handleClosed(node: HTMLElement | React.MouseEvent<HTMLButtonElement, MouseEvent>) {\n setVisible(false);\n onClosed && onClosed(node);\n }\n\n function handleBackdropMouseDown(e: React.MouseEvent<HTMLDivElement, MouseEvent>) {\n if (e.target !== container.current && usePortal) {\n return;\n }\n if (maskClosable && hasBackdrop) {\n overlayWillClose();\n setIsOpen(false);\n onClose && onClose(e);\n }\n backdropProps && backdropProps.onMouseDown && backdropProps.onMouseDown(e);\n }\n\n function overlayWillOpen() {\n if (hasBackdrop && usePortal) {\n document.body.classList.add(`${prefixCls}-open`);\n }\n }\n\n function overlayWillClose() {\n if (hasBackdrop && usePortal) {\n document.body.classList.remove(`${prefixCls}-open`);\n }\n // if (unmountOnExit) {\n // setVisible(false)\n // }\n }\n const TransitionGroupComp = (\n <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 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 onClosing(overlay.current!);\n onExiting(overlay.current!);\n }}\n onExited={() => {\n handleClosed(overlay.current!);\n onExit(overlay.current!);\n }}\n nodeRef={overlay}\n {...otherProps}\n >\n {(status) => {\n return (\n <div\n style={style}\n ref={overlay}\n className={[\n prefixCls,\n className,\n !usePortal ? `${prefixCls}-inline` : null,\n isOpen ? `${prefixCls}-enter-done` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {hasBackdrop &&\n cloneElement(<div />, {\n ...backdropProps,\n onMouseDown: handleBackdropMouseDown,\n className: [`${prefixCls}-backdrop`, backdropProps.className].filter(Boolean).join(' ').trim(),\n tabIndex: maskClosable ? 0 : null,\n })}\n {usePortal ? (\n <div ref={container} onMouseDown={handleBackdropMouseDown} className={`${prefixCls}-container`}>\n {cloneElement(decoratedChild, { 'data-status': status })}\n </div>\n ) : (\n cloneElement(decoratedChild, { 'data-status': status })\n )}\n </div>\n );\n }}\n </CSSTransition>\n );\n if (visible && usePortal) {\n return <Portal {...{ ...portalProps }}>{TransitionGroupComp}</Portal>;\n } else {\n return TransitionGroupComp;\n }\n}\n","import React from 'react';\nimport svgPaths from '@uiw/icons/fonts/w-icon.json';\nimport './style/index.less';\n\nexport type IconsName = keyof typeof svgPaths;\ntype TagType = React.ComponentType | keyof JSX.IntrinsicElements;\n\nexport interface IconProps<Tag extends TagType = 'span', E = React.ReactElement> extends React.HTMLAttributes<Tag> {\n style?: React.CSSProperties;\n className?: string;\n prefixCls?: string;\n /**\n * HTML tag to use for the rendered element.\n * @default \"span\"\n */\n tagName?: Tag;\n type?: IconsName | null | E;\n spin?: boolean;\n color?: string;\n verticalAlign?: 'middle' | 'baseline';\n}\n\nexport default function Icon<Tag extends TagType = 'span'>(props: IconProps<Tag>) {\n const {\n className,\n prefixCls = 'w-icon',\n verticalAlign = 'middle',\n tagName: TagName = 'span',\n color,\n type,\n spin = false,\n ...others\n } = props;\n\n let svg = null;\n if (typeof type === 'string') {\n svg = (\n <svg fill={color} viewBox=\"0 0 20 20\">\n {(svgPaths[type] || []).map((d, i) => (\n <path key={i} d={d} fillRule=\"evenodd\" />\n ))}\n </svg>\n );\n } else if (React.isValidElement(type)) {\n svg = React.cloneElement(type, {\n fill: color,\n });\n } else {\n return null;\n }\n others.style = { fill: 'currentColor', ...others.style };\n const propps = {\n ...others,\n className: [\n prefixCls,\n className,\n prefixCls && verticalAlign ? `${prefixCls}-${verticalAlign}` : null,\n spin && prefixCls ? `${prefixCls}-spin` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n };\n\n return React.createElement(TagName, { ...propps } as any, svg);\n}\n","import React from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLButtonProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport type ButtonType = 'primary' | 'success' | 'warning' | 'danger' | 'light' | 'dark' | 'link';\nexport type ButtonSize = 'large' | 'default' | 'small';\n\nexport interface ButtonProps extends IProps, Omit<HTMLButtonProps, 'size'> {\n basic?: boolean;\n disabled?: boolean;\n active?: boolean;\n loading?: boolean;\n block?: boolean;\n icon?: IconProps['type'];\n type?: ButtonType;\n size?: ButtonSize;\n htmlType?: 'button' | 'submit' | 'reset';\n onClick?: (e: React.MouseEvent<HTMLButtonElement> & MouseEvent) => void;\n}\n\nexport default React.forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n const {\n prefixCls = 'w-btn',\n disabled = false,\n active = false,\n loading = false,\n block = false,\n basic = false,\n htmlType = 'button',\n type = 'light',\n size = 'default',\n icon,\n className,\n children,\n ...others\n } = props;\n const cls = [\n className,\n prefixCls,\n size ? `${prefixCls}-size-${size}` : null,\n type ? `${prefixCls}-${type}` : null,\n basic ? `${prefixCls}-basic` : null,\n loading ? `${prefixCls}-loading` : null,\n disabled || loading ? 'disabled' : null,\n active ? 'active' : null,\n block ? 'block' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n return (\n <button {...others} ref={ref} type={htmlType} disabled={disabled || loading} className={cls}>\n {icon && <Icon type={icon} />}\n {children &&\n React.Children.map(children, (child: React.ReactNode) => {\n if (!child) return child;\n if (React.isValidElement(child)) return child;\n return <span>{child}</span>;\n })}\n </button>\n );\n});\n","import React, { useState, useEffect } from 'react';\nimport Overlay, { OverlayProps } from '@uiw/react-overlay';\nimport Button, { ButtonType, ButtonProps } from '@uiw/react-button';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps, noop } from '@uiw/utils';\nimport './style/index.less';\nimport CallShow from './CallShow';\n\nexport interface ModalProps extends IProps, OverlayProps {\n type?: ButtonType;\n cancelText?: string;\n confirmButtonProps?: Omit<ButtonProps, 'ref'>;\n cancelButtonProps?: Omit<ButtonProps, 'ref'>;\n content?: React.ReactNode;\n confirmText?: string;\n title?: string;\n icon?: IconProps['type'];\n useButton?: boolean;\n usePortal?: boolean;\n autoFocus?: boolean;\n isCloseButtonShown?: boolean;\n isOpen?: boolean;\n bodyStyle?: React.CSSProperties;\n maxWidth?: number;\n minWidth?: number;\n width?: number;\n onCancel?: (evn: React.MouseEvent<HTMLButtonElement> & MouseEvent) => void;\n onConfirm?: (evn: React.MouseEvent<HTMLButtonElement> & MouseEvent) => void;\n}\n\nconst Modal: React.ForwardRefExoticComponent<ModalProps & React.RefAttributes<OverlayProps>> = React.forwardRef<\n OverlayProps,\n ModalProps\n>((props, ref) => {\n const {\n prefixCls = 'w-modal',\n className,\n children,\n useButton = true,\n usePortal = true,\n autoFocus = false,\n isOpen: _ = false,\n title,\n cancelText,\n cancelButtonProps,\n confirmButtonProps,\n content,\n confirmText = '确认',\n type = 'light',\n icon,\n maxWidth = 500,\n minWidth = 320,\n width,\n isCloseButtonShown = true,\n onCancel = noop,\n onConfirm = noop,\n bodyStyle,\n ...other\n } = props;\n const [isOpen, setIsOpen] = useState(props.isOpen);\n useEffect(() => {\n if (props.isOpen !== isOpen) {\n setIsOpen(props.isOpen);\n }\n }, [props.isOpen]);\n\n const [loading, setLoading] = useState(false);\n const cls = [prefixCls, className, type ? `${type}` : null].filter(Boolean).join(' ').trim();\n function onClose() {\n setIsOpen(false);\n }\n async function handleCancel(e: React.MouseEvent<HTMLButtonElement, MouseEvent> & MouseEvent) {\n setLoading(true);\n try {\n onCancel && (await onCancel(e));\n } catch (e) {}\n setIsOpen(false);\n setLoading(false);\n }\n async function handleConfirm(e: React.MouseEvent<HTMLButtonElement, MouseEvent> & MouseEvent) {\n setLoading(true);\n try {\n onConfirm && (await onConfirm(e));\n } catch (e) {}\n setIsOpen(false);\n setLoading(false);\n }\n return (\n <Overlay usePortal={usePortal} isOpen={isOpen} {...other} onClose={onClose} className={cls}>\n <div className={`${prefixCls}-container`}>\n <div\n className={[\n `${prefixCls}-inner`,\n title ? `${prefixCls}-shown-title` : null,\n icon ? `${prefixCls}-shown-icon` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n style={{ maxWidth, minWidth, width }}\n >\n {(title || icon) && (\n <div className={`${prefixCls}-header`}>\n {icon && <Icon type={icon} />}\n {title && <h4>{title}</h4>}\n {isCloseButtonShown && <Button basic onClick={(e) => handleCancel(e)} icon=\"close\" type=\"light\" />}\n </div>\n )}\n <div className={`${prefixCls}-body`} style={bodyStyle}>\n {children || content}\n </div>\n {useButton && (\n <div className={`${prefixCls}-footer`}>\n <Button\n autoFocus={autoFocus}\n type={type}\n loading={loading}\n disabled={loading}\n {...confirmButtonProps}\n onClick={(e) => handleConfirm(e)}\n >\n {confirmText}\n </Button>\n {cancelText && (\n <Button {...cancelButtonProps} onClick={(e) => handleCancel(e)}>\n {cancelText}\n </Button>\n )}\n </div>\n )}\n </div>\n </div>\n </Overlay>\n );\n});\n\ntype Modal = typeof Modal & {\n show: (props?: Omit<ModalProps, 'onClosed' | 'isOpen'> & { children?: React.ReactNode }) => void;\n};\n(Modal as Modal).show = CallShow;\nexport default Modal as 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 React from 'react';\nimport Modal, { ModalProps } from '@uiw/react-modal';\nimport { IProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface AlertProps extends IProps, ModalProps {\n width?: number;\n}\n\nexport default (props: AlertProps = {}) => {\n const { prefixCls = 'w-alert', className, width = 400, ...other } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n return (\n <Modal {...other} width={width} className={cls}>\n {props.children}\n </Modal>\n );\n};\n","import React, { Fragment } from 'react';\n\nconst delimiter =\n /((?:https?:\\/\\/)?(?:(?:[a-z0-9]?(?:[a-z0-9\\-]{1,61}[a-z0-9])?\\.[^\\.|\\s])+[a-z\\.]*[a-z]+|(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3})(?::\\d{1,5})*[a-z0-9.,_\\/~#&=;%+?\\-\\\\(\\\\)]*)/gi;\n\nexport type AutoLinkProps = {\n text?: string;\n} & React.AnchorHTMLAttributes<HTMLAnchorElement>;\n\nexport default (props: AutoLinkProps = {}) => {\n const { text = '', ...other } = props;\n return (\n <Fragment>\n {text.split(delimiter).map((word, idx) => {\n const match = word.match(delimiter);\n if (match && match[0]) {\n const url = match[0];\n return (\n <a {...other} key={idx} href={url.startsWith('http') ? url : `http://${url}`}>\n {url}\n </a>\n );\n }\n return <Fragment key={idx}>{word}</Fragment>;\n })}\n </Fragment>\n );\n};\n","import React from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { HTMLSpanProps, noop } from '@uiw/utils';\nimport './style/index.less';\nimport { useState } from 'react';\nimport { useEffect } from 'react';\n\nexport interface AvatarProps extends HTMLSpanProps {\n style?: React.CSSProperties;\n className?: string;\n prefixCls?: string;\n icon?: IconProps['type'];\n alt?: string;\n src?: string;\n size?: 'large' | 'default' | 'small' | 'mini';\n shape?: 'square' | 'circle';\n onError?: (event: React.SyntheticEvent<HTMLImageElement, Event>) => boolean;\n}\n\nexport default React.forwardRef<HTMLSpanElement, AvatarProps>((props, ref) => {\n const {\n prefixCls = 'w-avatar',\n shape = 'circle',\n size = 'default',\n className,\n src,\n alt,\n icon,\n onError = noop,\n ...resetProps\n } = props;\n let children = props.children;\n const [isImgExist, setIsImgExist] = useState(true);\n const cls = [\n prefixCls,\n className,\n size ? `${prefixCls}-${size}` : null,\n shape ? `${prefixCls}-${shape}` : null,\n src ? `${prefixCls}-image` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n useEffect(() => {\n setIsImgExist(true);\n }, [props.src]);\n\n if (isImgExist && src) {\n children = (\n <img\n src={src}\n alt={alt}\n onError={(evn) => {\n const errorFlag = onError ? onError(evn) : undefined;\n if (errorFlag !== false) {\n setIsImgExist(false);\n }\n }}\n />\n );\n } else if (icon && typeof icon === 'string') {\n children = <Icon type={icon} />;\n } else if (icon && React.isValidElement(icon)) {\n children = icon;\n }\n return (\n <span {...resetProps} className={cls} ref={ref}>\n {children}\n </span>\n );\n});\n","/**\n * 获取当前滚动条所在位置\n */\nexport function getScrollTop() {\n let scrollTop = 0;\n if (document && document.documentElement && document.documentElement.scrollTop) {\n scrollTop = document.documentElement.scrollTop;\n } else if (document.body) {\n scrollTop = document.body.scrollTop;\n }\n return scrollTop;\n}\n\n/**\n * TODO\n * @param {*} position 滚动到何处\n * @param {*} step 步长\n * @param {*} current 滚动条当前位置\n */\nexport function scrollToAnimate(position: number = 0, step: number = 100, current: number = 0) {\n let start = 0;\n const timer = setInterval(() => {\n if (current - start >= position) {\n start += step;\n if (current - start >= position) {\n window.scrollTo(0, current - start);\n } else {\n window.scrollTo(0, position);\n }\n } else {\n clearInterval(timer);\n }\n }, 0);\n}\n/**\n * 获取滚动条位置百分比\n */\nexport function getScrollPercent(offsetTop: number = 0) {\n let percent = 0;\n if (offsetTop < getScrollTop()) {\n percent = Math.round(\n ((getScrollTop() - offsetTop) / (document.body.scrollHeight - offsetTop - window.innerHeight)) * 100,\n );\n }\n return percent > 100 ? 100 : percent;\n}\n","import React, { useState, useEffect } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { getScrollPercent, getScrollTop, scrollToAnimate } from './utils';\nimport './style/index.less';\n\nexport interface ChildrenFunction {\n scrollToTop: () => void;\n percent: number;\n current: number;\n}\n\nexport interface BackTopProps 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}\n\nexport interface IBackTopState {\n percent: number;\n current: number;\n}\n\nexport default React.forwardRef<HTMLDivElement, BackTopProps>((props, ref) => {\n const {\n prefixCls = 'w-back-top',\n className,\n content,\n children,\n offsetTop = 0,\n fixed = true,\n speed = 100,\n showBelow = 1,\n clickable = true,\n ...other\n } = props;\n const topShowBelow = !fixed ? 0 : showBelow || 0;\n const [percent, setPercent] = useState(0);\n const [current, setCurrent] = useState(0);\n const visible = percent >= topShowBelow;\n const cls = [\n prefixCls,\n className,\n !fixed ? 'no-fixed' : null,\n visible ? `${prefixCls}-show` : null,\n !visible ? `${prefixCls}-hide` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n useEffect(() => {\n window && window.addEventListener('scroll', onScroll);\n return function () {\n window && window.removeEventListener('scroll', onScroll);\n };\n });\n function onScroll() {\n setPercent(getScrollPercent(offsetTop));\n setCurrent(getScrollTop());\n }\n function scrollToTop() {\n if (typeof offsetTop === 'number' && typeof speed === 'number' && typeof current === 'number') {\n scrollToAnimate(offsetTop, speed, current);\n }\n }\n return (\n <div onClick={() => clickable && scrollToTop()} className={cls} {...other} ref={ref}>\n {content}\n {typeof children !== 'function' ? children : children({ percent, current, scrollToTop: scrollToTop })}\n </div>\n );\n});\n","import React from 'react';\nimport { IProps, HTMLSpanProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface BadgeProps extends IProps, HTMLSpanProps {\n color?: string;\n dot?: boolean;\n processing?: boolean;\n max?: number;\n count?: number;\n}\n\nexport default React.forwardRef<HTMLSpanElement, BadgeProps>((props, ref) => {\n const {\n prefixCls = 'w-badge',\n className,\n style = {},\n color,\n max = 99,\n dot = false,\n processing = false,\n count,\n children,\n ...other\n } = props;\n const supProps = {\n className: [!dot ? `${prefixCls}-count` : null, dot ? 'dot' : null].filter(Boolean).join(' ').trim(),\n style: {},\n };\n const cls = [\n className,\n prefixCls,\n !children ? 'nowrap' : null,\n !children ? `${prefixCls}-status` : null,\n processing ? `${prefixCls}-processing` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n const warpperProps: HTMLSpanProps = {};\n if (count || count === 0) {\n supProps.style = { backgroundColor: color, ...style };\n } else {\n warpperProps.style = style || {};\n }\n return (\n <span className={cls} {...other} {...warpperProps} ref={ref}>\n {color && <span className={`${prefixCls}-dot`} style={{ backgroundColor: color }} />}\n {children}\n {count !== 0 && !color && <sup {...supProps}>{!dot && count && max && count > max ? `${max}+` : count}</sup>}\n </span>\n );\n});\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\nimport './style/item.less';\n\ntype ElementTag<T = any> = T extends HTMLElement ? React.HTMLAttributes<T> : T;\n\nexport interface BreadcrumbItemProps<T = any> extends IProps, ElementTag {\n tagName?: T extends HTMLElement ? keyof JSX.IntrinsicElements : T;\n separator?: JSX.Element | string;\n active?: boolean;\n 'data-separator'?: JSX.Element | string;\n}\n\ntype RefElement<T = HTMLSpanElement> = T extends HTMLElement ? T : never;\n\nconst BreadcrumbItem = React.forwardRef<RefElement, BreadcrumbItemProps>((props, ref) => {\n const { prefixCls = 'w-breadcrumb', className, tagName: TagName = 'span', active, separator, ...other } = props;\n const isElm = React.isValidElement(separator);\n const cls = [\n `${prefixCls}-item`,\n className,\n active ? 'active' : null,\n !separator ? 'no-separator' : null,\n isElm ? 'no-before' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const otherProps = { className: cls, ...other };\n if (!isElm) {\n otherProps['data-separator'] = separator;\n }\n return React.createElement(\n TagName,\n {\n ...otherProps,\n ref,\n },\n <Fragment>\n {isElm && <span className={`${prefixCls}-separator`}>{separator}</span>}\n {props.children}\n </Fragment>,\n );\n});\n\nexport default BreadcrumbItem;\n","import React from 'react';\nimport { HTMLDivProps } from '@uiw/utils';\nimport Item from './Item';\nimport './style/index.less';\n\nexport interface BreadcrumbProps extends HTMLDivProps {\n style?: React.CSSProperties;\n className?: string;\n prefixCls?: string;\n separator?: JSX.Element | string;\n}\n\nconst Breadcrumb = React.forwardRef<HTMLDivElement, BreadcrumbProps>((props, ref) => {\n const { prefixCls = 'w-breadcrumb', className, separator = '/', ...other } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n return (\n <div {...{ className: cls, ...other }} ref={ref}>\n {React.Children.map(props.children, (element: any) => {\n return React.cloneElement(element, Object.assign({ separator }, element.props, {}));\n })}\n </div>\n );\n});\ntype Breadcrumb = typeof Breadcrumb & {\n Item: typeof Item;\n};\n\n(Breadcrumb as Breadcrumb).Item = Item;\n\nexport default Breadcrumb as Breadcrumb;\nexport { Breadcrumb };\n","import Breadcrumb from './Breadcrumb';\n\nexport * from './Item';\nexport * from './Breadcrumb';\n\nexport default Breadcrumb;\n","import React from 'react';\nimport { HTMLDivProps, IProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface ButtonGroupProps extends IProps, HTMLDivProps {\n vertical?: boolean;\n}\n\nexport default React.forwardRef<HTMLDivElement, ButtonGroupProps>((props, ref) => {\n const { prefixCls = 'w-btn-group', vertical = false, children, className, ...resetProps } = props;\n\n const cls = [prefixCls, className, vertical && `${prefixCls}-vertical`].filter(Boolean).join(' ').trim();\n\n return (\n <div className={cls} {...resetProps} ref={ref}>\n {children}\n </div>\n );\n});\n","const canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nfunction fallback(context: HTMLElement, node: HTMLElement) {\n if (node) {\n do {\n if (node === context) return true;\n } while ((node = node.parentNode as HTMLElement));\n }\n\n return false;\n}\n\nfunction isDOM(item: Node) {\n return typeof HTMLElement === 'function'\n ? item instanceof HTMLElement\n : item && typeof item === 'object' && item.nodeType === 1 && typeof item.nodeName === 'string';\n}\n\nconst contains = (() => {\n // HTML DOM and SVG DOM may have different support levels,\n // so we need to check on context instead of a document root element.\n return canUseDOM\n ? function (context: HTMLElement, node: HTMLElement) {\n if (context && context.contains && typeof context.contains === 'function' && isDOM(node)) {\n return context.contains(node);\n }\n if (context && context.compareDocumentPosition && isDOM(node)) {\n return context === node || !!(context.compareDocumentPosition(node) && 16);\n }\n return fallback(context, node);\n }\n : fallback;\n})();\n\nexport default contains;\n","export interface BordersSize extends CSSStyleDeclaration {\n [key: string]: any;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nexport default function getBordersSize(styles: BordersSize, axis: 'x' | 'y'): number {\n const sideA: string = axis === 'x' ? 'Left' : 'Top';\n const sideB: string = sideA === 'Left' ? 'Right' : 'Bottom';\n return parseFloat(styles[`border${sideA}Width`]) + parseFloat(styles[`border${sideB}Width`]);\n}\n","export default typeof window !== 'undefined' && typeof document !== 'undefined';\n","import isBrowser from './isBrowser';\n\ninterface Document {\n documentMode?: any;\n}\n\ninterface Window {\n MSInputMethodContext?: any;\n}\n\nconst isIE11 = isBrowser && !!((window as Window).MSInputMethodContext && (document as Document).documentMode);\nconst isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nexport default function isIE(version: number) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n","import isIE from './isIE';\n\ninterface BodyElement extends HTMLBodyElement {\n [key: string]: any;\n}\n\ninterface IHTMLElement extends HTMLElement {\n [key: string]: any;\n}\n\ninterface ComputedStyle extends CSSStyleDeclaration {\n [key: string]: any;\n}\n\nfunction getSize(axis: 'Height' | 'Width', body: BodyElement, html: IHTMLElement, computedStyle: ComputedStyle) {\n return Math.max(\n body[`offset${axis}`],\n body[`scroll${axis}`],\n html[`client${axis}`],\n html[`offset${axis}`],\n html[`scroll${axis}`],\n isIE(10)\n ? parseInt(html[`offset${axis}`], 10) +\n parseInt(computedStyle[`margin${axis === 'Height' ? 'Top' : 'Left'}`], 10) +\n parseInt(computedStyle[`margin${axis === 'Height' ? 'Bottom' : 'Right'}`], 10)\n : 0,\n );\n}\n\nexport type WindowSize = { height?: number; width?: number };\n\nexport default function getWindowSizes(document: HTMLDocument): WindowSize {\n const body = document.body as HTMLBodyElement;\n const html = document.documentElement as HTMLElement;\n const computedStyle = getComputedStyle(html) as CSSStyleDeclaration;\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle),\n };\n}\n","import { getScroll } from '@uiw/utils';\nimport getStyleComputedProperty from './getStyleComputedProperty';\nimport getBordersSize from './getBordersSize';\nimport getWindowSizes, { WindowSize } from './getWindowSizes';\nimport getClientRect from './getClientRect';\nimport isIE from './isIE';\n\nexport interface IBoundingClientRect {\n left: number;\n right: number;\n top: number;\n bottom: number;\n width: number;\n height: number;\n offsetLeft?: number;\n offsetTop?: number;\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nexport default function getBoundingClientRect(element: HTMLElement) {\n let rect = {} as IBoundingClientRect;\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n const scrollTop = getScroll(element, true);\n const scrollLeft = getScroll(element);\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n // eslint-disable-next-line\n } catch (e) {}\n\n const result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top,\n } as IBoundingClientRect;\n\n // subtract scrollbar size from sizes\n const sizes: WindowSize = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument!) : {};\n const width = sizes.width || element.clientWidth || result.right - result.left;\n const height = sizes.height || element.clientHeight || result.bottom - result.top;\n\n let horizScrollbar = element.offsetWidth - width;\n let vertScrollbar = element.offsetHeight - height;\n\n result.offsetLeft = element.offsetLeft || element.scrollLeft || 0;\n result.offsetTop = element.offsetTop || element.offsetTop || 0;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n const styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result) as IBoundingClientRect;\n}\n","/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nexport default function getClientRect(offsets: ClientRect): ClientRect {\n return {\n ...offsets,\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height,\n };\n}\n","/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nexport default function getStyleComputedProperty(\n element: HTMLElement,\n property?: keyof CSSStyleDeclaration,\n): CSSStyleDeclaration | any {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n const window = element.ownerDocument!.defaultView;\n const css: CSSStyleDeclaration = (window as Window).getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n","export type Sizes = {\n width: number;\n height: number;\n};\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nexport default function getOuterSizes(element: HTMLElement): Sizes {\n let rect = element.getBoundingClientRect();\n // const window = element.ownerDocument.defaultView;\n // const styles = window.getComputedStyle(element);\n // const x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n // const y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n const result: Sizes = {\n width: element.offsetWidth || element.scrollWidth || rect.width || 0,\n height: element.offsetHeight || element.scrollHeight || rect.height || 0,\n };\n return result;\n}\n","import { getScroll } from '@uiw/utils';\nimport getBoundingClientRect, { IBoundingClientRect } from './util/getBoundingClientRect';\nimport getOuterSizes from './util/getOuterSizes';\nimport { OverlayStyl, OverlayTriggerProps, Placement } from './';\n\ntype GetStyleOptions = {\n trigger: HTMLElement | IBoundingClientRect;\n popup: HTMLElement | IBoundingClientRect;\n placement: OverlayStyl['placement'];\n usePortal: OverlayTriggerProps['usePortal'];\n autoAdjustOverflow: OverlayTriggerProps['autoAdjustOverflow'];\n};\n\nexport function getStyle(options: GetStyleOptions) {\n let { trigger: triggerDom, popup: popupDom, placement, usePortal, autoAdjustOverflow } = options || {};\n const sty = {\n left: 0,\n top: 0,\n placement,\n } as OverlayStyl;\n\n if (!triggerDom || !popupDom || !document) {\n return sty;\n }\n\n const winSizeHeight = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n const winSizeWidth = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n\n sty.placement = placement;\n const scrollTop = getScroll((triggerDom as HTMLElement).ownerDocument!.documentElement, true);\n const scrollLeft = getScroll((triggerDom as HTMLElement).ownerDocument!.documentElement);\n const trigger = {\n ...getBoundingClientRect(triggerDom as HTMLElement),\n ...getOuterSizes(triggerDom as HTMLElement),\n };\n const popup = {\n ...getBoundingClientRect(popupDom as HTMLElement),\n ...getOuterSizes(popupDom as HTMLElement),\n };\n\n const bottom = winSizeHeight - trigger.bottom;\n const right = winSizeWidth - trigger.left - trigger.width;\n\n sty.top = trigger.top + scrollTop;\n sty.left = trigger.left;\n\n if (!usePortal) {\n sty.top = trigger.offsetTop as number;\n sty.left = trigger.offsetLeft as number;\n }\n\n if (placement && /^(top)/.test(placement)) {\n sty.top -= popup.height;\n }\n if (placement && /^(right)/.test(placement)) {\n sty.left += trigger.width;\n }\n if (placement && /^(bottom)/.test(placement)) {\n sty.top += trigger.height;\n }\n if (placement && /^(left)/.test(placement)) {\n sty.left -= popup.width;\n }\n switch (sty.placement) {\n case 'bottomLeft':\n case 'topLeft':\n break;\n case 'bottom':\n // eslint-disable-next-line\n case 'top':\n sty.left = sty.left - (popup.width - trigger.width) / 2;\n break;\n case 'bottomRight':\n case 'topRight':\n sty.left = sty.left + scrollLeft + trigger.width - popup.width;\n break;\n case 'rightTop':\n case 'leftTop':\n break;\n case 'right':\n // eslint-disable-next-line\n case 'left':\n sty.top = sty.top - (popup.height - trigger.height) / 2;\n break;\n case 'rightBottom':\n case 'leftBottom':\n sty.top = sty.top - popup.height + trigger.height;\n break;\n default:\n break;\n }\n if (autoAdjustOverflow) {\n if (placement && /^(top)/.test(placement) && trigger.top < popup.height && bottom > popup.height) {\n sty.placement = placement.replace(/^top/, 'bottom') as Placement;\n sty.top = sty.top + popup.height + trigger.height;\n }\n if (placement && /^(bottom)/.test(placement) && bottom < popup.height && trigger.top > popup.height) {\n sty.placement = placement.replace(/^bottom/, 'top') as Placement;\n sty.top = sty.top - popup.height - trigger.height;\n }\n if (placement && /^(right)/.test(placement) && right < popup.width) {\n sty.placement = placement.replace(/^right/, 'left') as Placement;\n sty.left = sty.left - trigger.width - popup.width;\n }\n if (placement && /^(left)/.test(placement) && trigger.left < popup.width) {\n sty.placement = placement.replace(/^left/, 'right') as Placement;\n sty.left = sty.left + trigger.width + popup.width;\n }\n\n if (placement && /^(left|right)/.test(placement) && usePortal) {\n // Top\n if (\n (/(Top)$/.test(placement) && trigger.top < 0) ||\n (/(right|left)$/.test(placement) && trigger.top + trigger.height / 2 < popup.height / 2) ||\n (/(Bottom)$/.test(placement) && trigger.top + trigger.height < popup.height)\n ) {\n sty.top = scrollTop;\n }\n } else {\n // Top\n if (placement && /(Top)$/.test(placement) && trigger.top < 0) {\n sty.top -= trigger.top;\n }\n if (placement && /(Bottom)$/.test(placement) && trigger.bottom < popup.height) {\n // eslint-disable-next-line\n sty.top = sty.top + (popup.height - trigger.bottom);\n }\n if (placement && /(right|left)$/.test(placement) && trigger.bottom - trigger.height / 2 < popup.height / 2) {\n sty.top = sty.top + popup.height / 2 - (trigger.bottom - trigger.height / 2);\n }\n }\n // Bottom Public Part\n if (placement && /^(left|right)/.test(placement)) {\n if (/(Top)$/.test(placement) && bottom + trigger.height < popup.height) {\n sty.top = sty.top - (popup.height - bottom - trigger.height); // eslint-disable-line\n }\n if (/(right|left)$/.test(placement) && bottom + trigger.height / 2 < popup.height / 2) {\n sty.top = sty.top - (popup.height / 2 - bottom - trigger.height / 2); // eslint-disable-line\n }\n if (/(Bottom)$/.test(placement) && bottom < 0) {\n sty.top = sty.top + bottom; // eslint-disable-line\n }\n }\n\n if (placement && /^(top|bottom)/.test(placement) && usePortal) {\n // left\n if (\n (/(Left)$/.test(placement) && trigger.left < 0) ||\n (/(top|bottom)$/.test(placement) && trigger.left + trigger.width / 2 < popup.width / 2) ||\n (/(Right)$/.test(placement) && trigger.left + trigger.width < popup.width)\n ) {\n sty.left = scrollLeft;\n }\n // right\n if (/(top|bottom)$/.test(placement) && right + trigger.width / 2 < popup.width / 2) {\n sty.left = trigger.left + trigger.width + right - popup.width;\n }\n } else if (placement && /(top|bottom)$/.test(placement) && right + trigger.width / 2 < popup.width / 2) {\n sty.left = sty.left + (right + trigger.width / 2 - popup.width / 2); // eslint-disable-line\n }\n if (placement && /^(top|bottom)/.test(placement)) {\n if (/(Left)$/.test(placement) && trigger.width + right < popup.width) {\n sty.left = sty.left - (popup.width - trigger.width - right);\n }\n if (/(Right)$/.test(placement) && right < 0) {\n sty.left = sty.left + right; // eslint-disable-line\n }\n }\n }\n return sty;\n}\n","import React, { cloneElement, useEffect, useRef, useState, useImperativeHandle } from 'react';\nimport { IProps, noop } from '@uiw/utils';\nimport Overlay, { OverlayProps } from '@uiw/react-overlay';\nimport contains from './utils';\nimport { IBoundingClientRect } from './util/getBoundingClientRect';\nimport { getStyle } from './getStyle';\nimport './style/index.less';\n\nexport interface OverlayTriggerProps extends IProps, OverlayProps {\n onVisibleChange?: (isVisbale: boolean) => void;\n onEnter?: (node: HTMLElement, isAppearing: boolean) => void;\n overlay?: React.ReactNode | any;\n trigger?: 'click' | 'hover' | 'focus';\n usePortal?: boolean;\n isOpen?: boolean;\n disabled?: boolean;\n isOutside?: boolean;\n isClickOutside?: boolean;\n autoAdjustOverflow?: boolean;\n placement?: Placement;\n delay?: Delay;\n}\n\nexport interface OverlayTriggerState {\n show: boolean;\n trigger: OverlayTriggerProps['trigger'];\n overlayStyl: OverlayStyl;\n transitionName: OverlayProps['transitionName'];\n}\n\nexport type Delay =\n | number\n | {\n show?: number;\n hide?: number;\n };\n\nexport type Placement =\n | 'top'\n | 'topLeft'\n | 'topRight'\n | 'left'\n | 'leftTop'\n | 'leftBottom'\n | 'right'\n | 'rightTop'\n | 'rightBottom'\n | 'bottom'\n | 'bottomLeft'\n | 'bottomRight';\n\nexport type OverlayStyl = {\n placement: Placement;\n top: number;\n bottom: number;\n left: number;\n right: number;\n zIndex: number;\n};\n\ninterface ITriggerProps {\n onClick?: (e: MouseEvent) => void;\n onFocus?: (e: MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n onMouseOut?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n onMouseEnter?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n onMouseLeave?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n}\n\nconst normalizeDelay = (delay?: Delay) => (delay && typeof delay === 'object' ? delay : { show: delay, hide: delay });\n\nexport type OverlayTriggerRef = {\n hide: () => void;\n show: () => void;\n 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 if (zIndex.current <= 999) {\n zIndex.current = 999;\n } else {\n zIndex.current -= 1;\n }\n setIsOpen(false);\n }\n\n function show() {\n if (isOpen) return;\n const nodeIndex = triggerRef.current?.style.zIndex;\n if (nodeIndex) {\n zIndex.current = Number(nodeIndex) + 1;\n } else {\n zIndex.current += 1;\n }\n setIsOpen(true);\n }\n\n function handleEnter(node: HTMLElement, isAppearing: boolean) {\n onEnter && onEnter(node, isAppearing);\n const styls = getStyle({\n placement: overlayStyl.placement || placement,\n trigger: triggerRef.current as HTMLElement | IBoundingClientRect,\n popup: popupRef.current as HTMLElement | IBoundingClientRect,\n usePortal,\n autoAdjustOverflow,\n });\n setOverlayStyl({ ...styls, zIndex: zIndex.current });\n }\n\n if (trigger === 'click' && !disabled) {\n triggerProps.onClick = (e) => {\n const { onClick } = getChildProps() as any;\n isOpen ? hide() : show();\n if (onClick) onClick(e, !isOpen);\n };\n }\n if (trigger === 'focus' && !disabled) {\n triggerProps.onFocus = () => handleShow();\n }\n\n if (trigger === 'hover' && !disabled) {\n triggerProps.onMouseOver = triggerProps.onMouseEnter = (e) => {\n handleMouseOverOut(handleShow, e, 'fromElement');\n };\n triggerProps.onMouseOut = triggerProps.onMouseLeave = (e) => {\n handleMouseOverOut(handleHide, e, 'toElement');\n };\n if (overlayProps.dialogProps) {\n overlayProps.dialogProps!.onMouseLeave = (e) => {\n handleMouseOverOut(handleHide, e, 'toElement');\n };\n }\n }\n overlayProps.style = { ...overlayProps.style, ...overlayStyl };\n return (\n <React.Fragment>\n {cloneElement(\n child,\n Object.assign({}, child.props, {\n ...triggerProps,\n ref: triggerRef,\n style: { zIndex: zIndex.current },\n className: [child.props.className, disabled ? `${prefixCls}-disabled` : null]\n .filter(Boolean)\n .join(' ')\n .trim(),\n }),\n )}\n <Overlay\n {...overlayProps}\n style={{ ...overlayProps.style, ...overlayStyl }}\n onEnter={handleEnter}\n className={[prefixCls, className, overlayStyl.placement].filter(Boolean).join(' ').trim()}\n usePortal={usePortal}\n transitionName={transitionName}\n isOpen={isOpen}\n hasBackdrop={false}\n >\n {cloneElement(\n overlay,\n Object.assign({\n ...overlay.props,\n ref: popupRef,\n className: [overlay.props && overlay.props.className, placement].filter(Boolean).join(' ').trim(),\n }),\n )}\n </Overlay>\n </React.Fragment>\n );\n});\n","import React from 'react';\nimport OverlayTrigger, { OverlayTriggerProps } from '@uiw/react-overlay-trigger';\nimport Confirm from './Confirm';\nimport './style/index.less';\n\nexport interface PopoverProps extends OverlayTriggerProps {\n content?: React.ReactNode;\n visibleArrow?: boolean;\n}\n\nexport default class Popover extends React.Component<PopoverProps> {\n 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 <div className={`${prefixCls}-arrow`}>\n <svg viewBox=\"0 0 30 30\">\n <path\n fillOpacity=\"0.2\"\n d=\"M8.11 6.302c1.015-.936 1.887-2.922 1.887-4.297v26c0-1.378-.868-3.357-1.888-4.297L.925 17.09c-1.237-1.14-1.233-3.034 0-4.17L8.11 6.302z\"\n />\n <path\n fill=\"#fff\"\n d=\"M8.787 7.036c1.22-1.125 2.21-3.376 2.21-5.03V0v30-2.005c0-1.654-.983-3.9-2.21-5.03l-7.183-6.616c-.81-.746-.802-1.96 0-2.7l7.183-6.614z\"\n />\n </svg>\n </div>\n );\n };\n render() {\n const { prefixCls, className, content, visibleArrow, ...other } = this.props;\n const cls = [prefixCls, className, !visibleArrow ? 'no-arrow' : null].filter(Boolean).join(' ').trim();\n return (\n <OverlayTrigger\n {...other}\n overlay={\n <div className={cls}>\n {visibleArrow && this.renderArrow()}\n <div className={`${prefixCls}-inner`}>{this.props.content}</div>\n </div>\n }\n >\n {typeof this.props.children === 'object' && (this.props.children 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 </OverlayTrigger>\n );\n }\n}\n","import React, { useState } from 'react';\nimport Popover, { PopoverProps } from './';\nimport './style/index.less';\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 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 Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLInputProps } from '@uiw/utils';\nimport './style/input.less';\nexport * from './InputNumber';\nexport { default as InputNumber } from './InputNumber';\n\nexport interface InputProps extends IProps, Omit<HTMLInputProps, 'size'> {\n preIcon?: IconProps['type'];\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 ...otherProps\n } = props;\n const inputRef = React.useRef<HTMLInputElement>(null);\n const addonRef = React.useRef<HTMLSpanElement>(null);\n useImperativeHandle<HTMLInputElement | null, HTMLInputElement | null>(ref, () => inputRef.current);\n const cls = [\n prefixCls,\n className,\n size ? `${prefixCls}-${size}` : null,\n addonAfter ? `${prefixCls}-addon` : null,\n props.disabled ? 'disabled' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n useEffect(() => {\n computedInputPadding();\n });\n\n function computedInputPadding() {\n if (addonRef.current && inputRef.current) {\n const input = window && window.getComputedStyle(addonRef.current, null);\n inputRef.current.style.paddingRight = `${\n addonRef.current.clientWidth + parseInt(input.right as string, 10) * 2\n }px`;\n }\n }\n return (\n <div className={cls} style={style}>\n <Icon type={preIcon} />\n <input\n ref={inputRef}\n type={type}\n autoComplete=\"off\"\n {...otherProps}\n style={inputStyle}\n className={`${prefixCls}-inner`}\n />\n {addonAfter && (\n <span className={`${prefixCls}-addon-after`} ref={addonRef}>\n {addonAfter}\n </span>\n )}\n </div>\n );\n});\n","import React, { useMemo, useRef } from 'react';\nimport { IProps, HTMLDivProps, HTMLLiProps } from '@uiw/utils';\nimport './style/time-picker.less';\n\nexport interface TimePickerPanelProps extends IProps, HTMLDivProps {\n onSelected?: (\n type: TimePickerPanelProps['type'],\n num: number,\n disableds: number[],\n date: TimePickerPanelProps['date'],\n ) => void;\n count?: number;\n hideDisabled?: boolean;\n disabledHours?: (\n num: number,\n type: TimePickerPanelProps['type'],\n date: TimePickerPanelProps['date'],\n ) => boolean | undefined;\n disabledMinutes?: (\n num: number,\n type: TimePickerPanelProps['type'],\n date: TimePickerPanelProps['date'],\n ) => boolean | undefined;\n disabledSeconds?: (\n num: number,\n type: TimePickerPanelProps['type'],\n date: TimePickerPanelProps['date'],\n ) => boolean | undefined;\n type?: 'Hours' | 'Minutes' | 'Seconds';\n date?: Date;\n}\n\nexport default function TimePickerPanel(props: TimePickerPanelProps) {\n const {\n prefixCls = 'w-timepicker',\n className,\n count = 24,\n date,\n type = 'Hours',\n disabledHours,\n disabledMinutes,\n disabledSeconds,\n hideDisabled,\n onSelected,\n ...other\n } = props;\n const disableds = useRef<number[]>([]);\n function getMaybeNumber() {\n if (date && type) {\n return new Date(date)[`get${type}` as 'getHours' | 'getMinutes' | 'getSeconds']();\n }\n return 0;\n }\n function handleClick(num: number, e: React.MouseEvent<HTMLLIElement>) {\n if (!date) return;\n const currentDate = new Date(date);\n currentDate[`set${type}` as 'setHours' | 'setMinutes' | 'setSeconds'](num);\n onSelected && onSelected(type, num, disableds.current, currentDate);\n }\n function getDisabledItem(num: number) {\n const disabled = props[`disabled${type}` as 'disabledHours' | 'disabledMinutes' | 'disabledSeconds'];\n if (disabled) {\n return disabled(num, type, new Date(date!));\n }\n return false;\n }\n function getItemInstance(tag: HTMLLIElement) {\n if (tag && tag.parentNode && tag.dataset['index']) {\n const offsetTop = Number(tag.dataset['index']) * tag.clientHeight;\n if (tag.parentNode.parentNode) {\n (tag.parentNode.parentNode as HTMLDivElement).scrollTop = offsetTop;\n }\n }\n }\n const data = useMemo(() => {\n return [...Array(count)]\n .map((_, idx) => {\n const disabled = getDisabledItem(idx);\n if (disabled) disableds.current.push(idx);\n return {\n count: idx,\n disabled: getDisabledItem(idx),\n };\n })\n .filter((item) => (hideDisabled && item.disabled ? false : true));\n }, [hideDisabled]);\n\n return (\n <div className={`${prefixCls}-spinner`} {...other}>\n <ul>\n {data.map((item, idx) => {\n const liProps = {} as HTMLLiProps;\n if (!item.disabled) {\n liProps.onClick = (e) => handleClick(item.count, e);\n }\n const currentCount = getMaybeNumber();\n return (\n <li\n key={idx}\n data-index={currentCount === item.count ? idx : undefined}\n ref={(tag) => tag && getItemInstance(tag)}\n {...liProps}\n className={[\n item.disabled ? 'disabled' : null,\n currentCount === item.count ? 'selected' : null,\n hideDisabled && item.disabled ? 'hide' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {item.count < 10 ? `0${item.count}` : item.count}\n </li>\n );\n })}\n </ul>\n </div>\n );\n}\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\nimport TimePanel, { TimePickerPanelProps } from './Panel';\nimport './style/time-picker.less';\n\nexport interface TimePickerTimeProps extends IProps, TimePickerPanelProps {\n precision?: Precision;\n}\n\nexport type Precision = 'hour' | 'minute' | 'second';\n\nexport function TimePickerTime(props: TimePickerTimeProps) {\n const { prefixCls = 'w-timepicker', className, precision = 'second', ...other } = props;\n return (\n <div className={[prefixCls, className].filter(Boolean).join(' ').trim()}>\n {/^(second|minute|hour)$/.test(precision as Precision) && <TimePanel type=\"Hours\" count={24} {...other} />}\n {/^(second|minute)$/.test(precision as Precision) && <TimePanel type=\"Minutes\" count={60} {...other} />}\n {/^(second)$/.test(precision as Precision) && <TimePanel type=\"Seconds\" count={60} {...other} />}\n </div>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport Popover, { PopoverProps } from '@uiw/react-popover';\nimport Input, { InputProps } from '@uiw/react-input';\nimport Button from '@uiw/react-button';\nimport { IProps } from '@uiw/utils';\nimport formatter from '@uiw/formatter';\nimport { TimePickerTime, TimePickerTimeProps } from './Time';\nimport './style/index.less';\n\nexport * from './Panel';\nexport * from './Time';\n\nexport interface TimePickerProps extends IProps, Omit<InputProps, 'onChange' | 'value'> {\n value?: Date;\n format?: string;\n popoverProps?: PopoverProps;\n disabledHours?: TimePickerTimeProps['disabledHours'];\n precision?: TimePickerTimeProps['precision'];\n disabledMinutes?: TimePickerTimeProps['disabledMinutes'];\n disabledSeconds?: TimePickerTimeProps['disabledSeconds'];\n hideDisabled?: TimePickerTimeProps['hideDisabled'];\n allowClear?: boolean;\n disabled?: boolean;\n onChange?: (\n dataStr?: string,\n date?: Date | '',\n type?: TimePickerTimeProps['type'],\n num?: number,\n disableds?: number[],\n ) => void;\n}\n\nexport default function TimePicker(props: TimePickerProps) {\n const {\n prefixCls = 'w-timepicker',\n className,\n disabled,\n value,\n format = 'HH:mm:ss',\n popoverProps,\n allowClear = true,\n onChange,\n disabledHours,\n disabledMinutes,\n disabledSeconds,\n hideDisabled,\n precision,\n ...inputProps\n } = props;\n const [date, setDate] = useState(props.value);\n useEffect(() => setDate(props.value), [props.value]);\n const timeProps = {\n disabledHours,\n disabledMinutes,\n disabledSeconds,\n hideDisabled,\n precision,\n };\n const inputValue = date ? formatter(format, 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 <Button\n className={`${prefixCls}-close-btn`}\n icon=\"close\"\n disabled={props.disabled}\n onClick={() => {\n setDate(undefined);\n onChange && onChange();\n }}\n size={props.size}\n basic\n type=\"light\"\n />\n );\n }\n return (\n <Popover\n trigger=\"focus\"\n placement=\"bottomLeft\"\n autoAdjustOverflow\n visibleArrow={false}\n {...popoverProps}\n content={\n <TimePickerTime\n className={`${prefixCls}-popover`}\n {...timeProps}\n date={datePickerTime}\n onSelected={(type, num, disableds, currentDate) => {\n setDate(new Date(currentDate!));\n const dataStr = currentDate ? formatter(format, currentDate) : '';\n onChange && onChange(dataStr, currentDate, type, num, disableds);\n }}\n />\n }\n >\n <Input\n placeholder=\"请选择时间\"\n readOnly\n disabled={disabled}\n {..._props}\n className={[`${prefixCls}-input`, className].filter(Boolean).join(' ').trim()}\n />\n </Popover>\n );\n}\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/day.less';\n\nfunction isValidDate(date: Date) {\n return date instanceof Date && !isNaN(date.getTime());\n}\n\nexport interface DatePickerDayDateSource {\n day?: number;\n month?: number;\n year?: number;\n}\n\nfunction classnames(obj: Record<string, boolean>) {\n return Object.keys(obj || {})\n .map((keyName) => (obj[keyName] ? keyName : null))\n .filter(Boolean)\n .join(' ')\n .trim();\n}\n\nexport interface DatePickerDayProps extends IProps, HTMLDivProps {\n weekday?: string[];\n weekTitle?: string[];\n panelDate?: Date;\n date?: Date;\n today?: Date;\n prefixCls?: string;\n onSelectDay?: (selectedDate?: Date, dateSource?: DatePickerDayDateSource) => void;\n renderDay?: (day: number, props: DatePickerDayRenderDay & DatePickerDayRenderDayProps) => React.ReactNode;\n disabledDate?: (cellDate: Date, props: DatePickerDayRenderDay & DatePickerDayRenderDayProps) => boolean;\n}\n\nexport interface PickerDayState {\n selected?: Date;\n panelDate?: Date;\n}\n\nexport type DatePickerDayRenderDay = {\n end: boolean;\n prev: boolean;\n today: boolean;\n selected: boolean;\n next: boolean;\n disabled: boolean;\n date?: Date;\n};\n\nexport type DatePickerDayRenderDayProps = {\n key?: number;\n date?: Date;\n onClick?: (cellDate: Date, event: React.MouseEvent<HTMLDivProps>) => void;\n};\n\nexport type DayRectProps = {\n col: number;\n row: number;\n index: number;\n date?: DatePickerDayProps['date'];\n today?: DatePickerDayProps['today'];\n disabledDate?: DatePickerDayProps['disabledDate'];\n renderDay?: DatePickerDayProps['renderDay'];\n panelDate?: DatePickerDayProps['panelDate'];\n onSelectDay?: DatePickerDayProps['onSelectDay'];\n};\n\nexport function DayRect(props: DayRectProps) {\n const {\n date: selectedDate,\n row,\n col,\n index,\n today,\n panelDate,\n disabledDate,\n renderDay,\n onSelectDay,\n ...other\n } = props;\n const cls: Omit<DatePickerDayRenderDay, 'date'> = {\n end: col === 0 || col === 6,\n prev: false,\n today: false,\n selected: false,\n next: false,\n disabled: false,\n };\n let date = panelDate;\n if (!date || !isValidDate(date)) date = new Date();\n const year = date.getFullYear();\n const month = date.getMonth();\n const week = useMemo(() => new Date(new Date(date!).setDate(1)).getDay(), [date.toDateString()]);\n const lastDay = useMemo(() => new Date(year, month === 0 ? 12 : month + 1, 0).getDate(), [date.toDateString()]);\n let day = index;\n if (date) {\n day = day - week + 1;\n if (day < 1) {\n cls.prev = true;\n }\n if (day > lastDay) {\n cls.next = true;\n }\n }\n let cellDate = 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 <div className={classnames(cls)} {...other} {...divProps}>\n {renderDay ? (\n renderDay(cellDate.getDate(), { ...props, ...cls, date: cellDate })\n ) : (\n <div>{cellDate.getDate()}</div>\n )}\n </div>\n );\n}\n\nconst WEEKTITLE = ['星期天', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];\nconst WEEKDAY = ['日', '一', '二', '三', '四', '五', '六'];\n\nexport function DatePickerDay(props: DatePickerDayProps) {\n const {\n prefixCls = 'w-datepicker',\n className,\n weekday = WEEKDAY,\n weekTitle = WEEKTITLE,\n date,\n today,\n panelDate,\n disabledDate,\n renderDay,\n onSelectDay,\n ...other\n } = props;\n\n const weekdayLabel = useMemo(\n () => (\n <div className={`${prefixCls}-weekday`}>\n {(weekday || []).map((week, idx) => (\n <div key={idx} className={classnames({ end: idx === 0 || idx === 6 })} title={weekTitle && weekTitle[idx]}>\n {week}\n </div>\n ))}\n </div>\n ),\n [prefixCls, weekday, weekTitle],\n );\n\n return (\n <div {...other} className={[prefixCls ? `${prefixCls}-body` : null, className].filter(Boolean).join(' ').trim()}>\n {weekdayLabel}\n <div className={[prefixCls ? `${prefixCls}-day-body` : null].filter(Boolean).join(' ').trim()}>\n {[...Array(6)].map((_, idx) => (\n <div key={idx} className={`${prefixCls}-week`}>\n {[...Array(7)].map((_, col) => (\n <DayRect\n date={date}\n today={today}\n disabledDate={disabledDate}\n renderDay={renderDay}\n panelDate={panelDate}\n key={col}\n col={col}\n row={idx}\n onSelectDay={(curDate, data) => {\n onSelectDay && onSelectDay(curDate, data);\n }}\n index={idx * 7 + col}\n />\n ))}\n </div>\n ))}\n </div>\n </div>\n );\n}\n","import React from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport './style/year-month.less';\n\nexport interface DatePickerMonthProps extends IProps, HTMLDivProps {\n panelDate?: Date;\n onSelected?: (month: number, paging?: boolean) => void;\n monthLabel?: React.ReactNode[];\n}\n\nexport function DatePickerMonth(props: DatePickerMonthProps) {\n const {\n prefixCls = 'w-datepicker',\n className,\n panelDate = new Date(),\n monthLabel,\n onSelected = noop,\n ...other\n } = props;\n return (\n <div className={[prefixCls ? `${prefixCls}-month` : null, className].filter(Boolean).join(' ').trim()} {...other}>\n {[...Array(12)].map((_, idx) => {\n const selectedMonth = panelDate!.getMonth();\n return (\n <div key={idx} className={[selectedMonth === idx ? 'selected' : null].filter(Boolean).join(' ').trim()}>\n <span onClick={() => onSelected(idx, false)}>{(monthLabel && monthLabel[idx]) || idx}</span>\n </div>\n );\n })}\n </div>\n );\n}\n","import React, { useState } from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport './style/year-month.less';\n\nexport interface DatePickerYearProps extends IProps, HTMLDivProps {\n panelDate?: Date;\n panelNum?: number[];\n onSelected?: (year: number, paging?: boolean) => void;\n}\n\nexport function DatePickerYear(props: DatePickerYearProps) {\n const {\n prefixCls = 'w-datepicker',\n panelNum = [-7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],\n className,\n panelDate,\n onSelected = noop,\n ...other\n } = props;\n const [activeYear, setActiveYear] = useState(props.panelDate);\n function handleSelected(year: number, idx: number) {\n if (idx === 0 || idx === panelNum!.length - 1) {\n const date = new Date(activeYear!);\n date.setFullYear(year);\n setActiveYear(date);\n } else {\n onSelected!(year);\n }\n }\n return (\n <div className={[prefixCls ? `${prefixCls}-year` : null, className].filter(Boolean).join(' ').trim()} {...other}>\n {panelNum &&\n panelNum.map((_, idx) => {\n const selectedYear = activeYear!.getFullYear();\n const year = selectedYear + panelNum[idx];\n return (\n <div\n key={idx}\n className={[\n selectedYear === year ? 'selected' : null,\n idx === 0 || idx === panelNum.length - 1 ? 'paging' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n <span onClick={() => handleSelected(year, idx)}>{year}</span>\n </div>\n );\n })}\n </div>\n );\n}\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport './style/caption.less';\n\nfunction classnames(...arg: (string | null | undefined)[]) {\n return [...arg].filter(Boolean).join(' ').trim();\n}\n\nexport type DatePickerCaptionType = 'prev' | 'month' | 'year' | 'today' | 'next';\n\nexport interface DatePickerCaptionProps extends IProps, HTMLDivProps {\n panelDate?: Date;\n monthLabel?: React.ReactNode[];\n todayButton?: string;\n onSelected?: (captionType: DatePickerCaptionType) => void;\n}\n\nexport function DatePickerCaption(props: DatePickerCaptionProps) {\n const {\n prefixCls = 'w-datepicker',\n className,\n panelDate = new Date(),\n monthLabel,\n onSelected = noop,\n todayButton,\n ...other\n } = props;\n\n const renderMonth = useMemo(() => {\n const month = panelDate.getMonth();\n return (monthLabel && monthLabel[month]) || month + 1;\n }, [panelDate.toDateString(), monthLabel]);\n return (\n <div className={classnames(prefixCls ? `${prefixCls}-caption` : null, className)} {...other}>\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'prev')}\n onClick={() => onSelected('prev')}\n />\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'month')}\n onClick={() => onSelected('month')}\n >\n {renderMonth}\n </div>\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'year')}\n onClick={() => onSelected('year')}\n >\n {panelDate!.getFullYear()}\n </div>\n {todayButton && (\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-today` : null)}\n onClick={() => onSelected('today')}\n title={todayButton}\n />\n )}\n <div\n className={classnames(prefixCls ? `${prefixCls}-caption-pane` : null, 'next')}\n onClick={() => onSelected('next')}\n />\n </div>\n );\n}\n","import React, { useEffect, useMemo, useState } from 'react';\nimport formatter from '@uiw/formatter';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport { TimePickerTime, TimePickerPanelProps } from '@uiw/react-time-picker';\nimport { DatePickerDay, DatePickerDayProps, DatePickerDayDateSource } from './DatePickerDay';\nimport { DatePickerMonth } from './DatePickerMonth';\nimport { DatePickerYear } from './DatePickerYear';\nimport { DatePickerCaption, DatePickerCaptionType } from './DatePickerCaption';\nimport './style/index.less';\n\nexport * from './DatePickerDay';\nexport * from './DatePickerMonth';\nexport * from './DatePickerYear';\nexport * from './DatePickerCaption';\n\nconst MONTH_LABEL = [\n '一月',\n '二月',\n '三月',\n '四月',\n '五月',\n '六月',\n '七月',\n '八月',\n '九月',\n '十月',\n '十一月',\n '十二月',\n];\n\nexport interface DatePickerShowTimeProps extends TimePickerPanelProps {\n format?: string;\n}\nexport interface DatePickerProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n onChange?: (selectedDate?: Date, dateSource?: DatePickerDayDateSource) => void;\n renderDay?: DatePickerDayProps['renderDay'];\n disabledDate?: DatePickerDayProps['disabledDate'];\n showTime?: DatePickerShowTimeProps | boolean;\n monthLabel?: React.ReactNode[];\n weekday?: string[];\n weekTitle?: string[];\n date?: Date;\n panelDate?: Date;\n today?: Date;\n todayButton?: string;\n onPanelChange?: (date?: Date, mode?: 'next' | 'prev') => void;\n}\nexport interface DatePickerState {\n panelDate?: Date;\n date?: Date;\n type?: 'day' | 'time' | DatePickerCaptionType;\n}\n\nexport default function DatePicker(props: DatePickerProps) {\n const {\n prefixCls = 'w-datepicker',\n className,\n weekday,\n weekTitle,\n monthLabel = MONTH_LABEL,\n date,\n today = new Date(),\n todayButton,\n panelDate = new Date(),\n disabledDate,\n renderDay,\n onChange = noop,\n onPanelChange = noop,\n showTime,\n ...other\n } = props;\n const [type, setType] = useState<DatePickerState['type']>('day');\n const [selectDate, setSelectDate] = useState(date);\n const [selectPanelDate, setSelectPanelDate] = useState(panelDate);\n\n useEffect(() => {\n if (date) {\n setSelectDate(date);\n setSelectPanelDate(date);\n }\n }, [date]);\n\n const format = useMemo(\n () =>\n showTime && (showTime as DatePickerShowTimeProps).format\n ? (showTime as DatePickerShowTimeProps).format\n : 'HH:mm:ss',\n [showTime],\n );\n function handleSelected(curType: DatePickerState['type']) {\n if (curType && /^(year|month|time)$/.test(curType)) {\n if (type === 'time') {\n curType = 'day';\n }\n setType(curType);\n } else {\n let currentDate = new Date(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 <div className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...other}>\n <DatePickerCaption\n todayButton={todayButton}\n panelDate={selectPanelDate}\n monthLabel={monthLabel}\n onSelected={handleSelected}\n />\n {type === 'day' && (\n <DatePickerDay\n prefixCls={prefixCls}\n disabledDate={disabledDate}\n onSelectDay={(selectedDate, dateSource) => {\n setSelectPanelDate(selectedDate!);\n onChange(selectedDate, dateSource);\n }}\n renderDay={renderDay}\n date={selectDate}\n today={today || new Date()}\n panelDate={selectPanelDate}\n weekday={weekday}\n weekTitle={weekTitle}\n />\n )}\n {type === 'month' && (\n <DatePickerMonth\n panelDate={selectPanelDate}\n monthLabel={monthLabel}\n prefixCls={prefixCls}\n onSelected={(num) => onSelectedDate('setMonth', num)}\n />\n )}\n {type === 'year' && (\n <DatePickerYear\n prefixCls={prefixCls}\n panelDate={selectDate || selectPanelDate}\n onSelected={(num) => onSelectedDate('setFullYear', num)}\n />\n )}\n {type === 'time' && (\n <TimePickerTime\n date={selectPanelDate}\n {...(showTime as any)}\n className={`${prefixCls}-timepicker`}\n onSelected={onSelectedTime}\n />\n )}\n {showTime && format && (\n <div className={`${prefixCls}-time-btn`} onClick={() => handleSelected('time')}>\n {formatter(format!, selectDate || selectPanelDate)}\n </div>\n )}\n </div>\n );\n}\n","import React, { useMemo } from 'react';\nimport { CalendarProps } from './';\n\nexport type RenderDayProps = {\n prefixCls?: string;\n day?: number;\n data?: CalendarProps['data'];\n currentDate?: Date;\n};\n\nexport default function RenderDay(props: RenderDayProps) {\n const { prefixCls, day, data, currentDate } = props;\n\n const dayData = useMemo(\n () =>\n (data || []).filter((item) => {\n let arr: number[] = ((item.date && item.date.split('/')) || []).map((num) => Number(num));\n if (arr.length === 1) {\n return day === arr[0];\n }\n if (currentDate && arr.length === 2) {\n return currentDate.getMonth() + 1 === arr[0] && day === arr[1];\n }\n if (currentDate && arr.length === 3) {\n return currentDate.getFullYear() === arr[0] && currentDate.getMonth() + 1 === arr[1] && day === arr[2];\n }\n return false;\n }),\n [currentDate, day, data],\n );\n\n return useMemo(\n () => (\n <div className={`${prefixCls}-inner`}>\n <div className={`${prefixCls}-day`}>{day}</div>\n <div className={`${prefixCls}-panel`}>\n {dayData &&\n dayData.length > 0 &&\n dayData.map((item, idx) => {\n const { date, label, ...other } = item;\n return (\n <div key={idx} {...other}>\n {label}\n </div>\n );\n })}\n </div>\n </div>\n ),\n [dayData, day],\n );\n}\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { DatePickerDay, DatePickerDayProps, DatePickerDayDateSource } from '@uiw/react-date-picker';\nimport Icon from '@uiw/react-icon';\nimport formatter from '@uiw/formatter';\nimport { IProps } from '@uiw/utils';\nimport RenderDay from './DayLabel';\nimport './style/index.less';\n\nexport interface CalendarProps extends IProps, DatePickerDayProps {\n /**\n * 设置日历面板上面的日期标题。\n */\n titleFormat?: string;\n /**\n * 点击选择日期回调\n */\n onSelectDay?: (selectDay?: Date, dateSource?: DatePickerDayDateSource) => void;\n /**\n * 日历面板默认展示哪一页\n */\n panelDate?: Date;\n /**\n * 默认高亮当天日期\n */\n today?: Date;\n /**\n * 在日历面板上面添加通知,数组中的对象可以设置 `ElementProps`,如:`style`, `onClick` 等属性。\n */\n data?: ICalendarData[];\n /**\n * 选中的日期\n */\n date?: Date;\n /**\n * `今天` 按钮的文本设置\n */\n todayLabel?: string;\n /**\n * 月份显示文本\n */\n monthLabel?: string[];\n /** 翻页触发事件 */\n onPaging?: (type: 'prev' | 'next' | 'today', month: number, panelDate?: Date) => void;\n}\n\nexport interface ICalendarData {\n label?: React.ReactNode;\n date?: string;\n [key: string]: any;\n}\n\nconst MONTH_LABEL = [\n '一月',\n '二月',\n '三月',\n '四月',\n '五月',\n '六月',\n '七月',\n '八月',\n '九月',\n '十月',\n '十一月',\n '十二月',\n];\n\nexport default function Calendar(props: CalendarProps) {\n const {\n prefixCls = 'w-calendar',\n className,\n style,\n today = new Date(),\n date,\n data,\n monthLabel = MONTH_LABEL,\n titleFormat = 'YYYY/MM',\n todayLabel = '今天',\n panelDate: _,\n onPaging,\n onSelectDay,\n ...otherProps\n } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n const [panelDate, setPanelDate] = useState<Date>(props.panelDate || new Date());\n\n useEffect(() => {\n if (props.panelDate !== panelDate) {\n setPanelDate(panelDate);\n }\n }, [props.panelDate]);\n\n function handlePaging(type: 'prev' | 'next' | 'today') {\n let currentDate = new Date();\n if (type === 'today') {\n currentDate = today || new Date();\n } else {\n const month = panelDate.getMonth();\n if (panelDate && type === 'prev') {\n panelDate.setMonth(month - 1);\n }\n if (panelDate && type === 'next') {\n panelDate.setMonth(month + 1);\n }\n currentDate = panelDate;\n }\n setPanelDate(new Date(currentDate));\n onPaging && onPaging(type, currentDate!.getMonth() + 1, currentDate);\n }\n\n const titleLable = useMemo(\n () => <div className={`${prefixCls}-title`}>{formatter(titleFormat, panelDate)}</div>,\n [prefixCls, titleFormat, panelDate],\n );\n\n const btngroup = useMemo(\n () => (\n <div className={`${prefixCls}-btn-group`}>\n <Icon type=\"down\" onClick={() => handlePaging('prev')} />\n <span className={`${prefixCls}-btn`} onClick={() => handlePaging('today')}>\n {todayLabel}\n </span>\n <Icon type=\"down\" onClick={() => handlePaging('next')} />\n </div>\n ),\n [prefixCls, todayLabel],\n );\n\n return (\n <div className={cls} style={style}>\n <div className={`${prefixCls}-caption`}>\n {titleLable}\n {btngroup}\n </div>\n <DatePickerDay\n onSelectDay={(currentDate, dateSource) => {\n setPanelDate(currentDate!);\n onSelectDay && onSelectDay(currentDate, dateSource);\n }}\n renderDay={(day, propsNext) => (\n <RenderDay prefixCls={prefixCls} day={day} data={data} currentDate={propsNext.date} />\n )}\n date={date}\n today={today}\n panelDate={panelDate || new Date()}\n {...otherProps}\n />\n </div>\n );\n}\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface CardProps extends IProps, Omit<HTMLDivProps, 'title'> {\n active?: boolean;\n bordered?: boolean;\n bodyStyle?: React.CSSProperties;\n bodyClassName?: string;\n title?: React.ReactNode;\n noHover?: boolean;\n extra?: React.ReactNode;\n footer?: React.ReactNode;\n}\n\nexport default React.forwardRef<HTMLDivElement, CardProps>((props, ref) => {\n const {\n prefixCls = 'w-card',\n className,\n title,\n extra,\n footer,\n bordered = true,\n noHover = false,\n active = false,\n bodyStyle,\n bodyClassName,\n children,\n ...resetProps\n } = props;\n const cls = useMemo(\n () =>\n [\n prefixCls,\n className,\n bordered ? `${prefixCls}-bordered` : null,\n noHover ? `${prefixCls}-no-hover` : null,\n active ? 'active' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n [prefixCls, className, bordered, noHover],\n );\n\n return (\n <div {...resetProps} className={cls} ref={ref}>\n {(title || extra) && (\n <div className={`${prefixCls}-head`}>\n {title && <div className={`${prefixCls}-head-title`}>{title}</div>}\n {extra && <div className={`${prefixCls}-extra`}>{extra}</div>}\n </div>\n )}\n {children && (\n <div className={[`${prefixCls}-body`, bodyClassName].filter(Boolean).join(' ').trim()} style={bodyStyle}>\n {children}\n </div>\n )}\n {footer && <div className={`${prefixCls}-footer`}>{footer}</div>}\n </div>\n );\n});\n","import React, { useEffect, useMemo, useRef, useState } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\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 <div className={cls} style={{ width, height }}>\n <div\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 </div>\n </div>\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 React, { Fragment } from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps } from '@uiw/utils';\nimport './style/item.less';\n\nconst disabledProps = {\n href: undefined,\n onClick: undefined,\n onMouseDown: undefined,\n onMouseEnter: undefined,\n onMouseLeave: undefined,\n tabIndex: -1,\n};\n\nexport type TagType = React.ComponentType | keyof JSX.IntrinsicElements;\n\nexport interface MenuItemProps<Tag extends TagType> extends IProps, React.HTMLProps<Tag> {\n text?: React.ReactNode;\n addonAfter?: React.ReactNode;\n tagName?: Tag;\n multiline?: boolean;\n isSubMenuItem?: boolean;\n disabled?: boolean;\n active?: boolean;\n icon?: IconProps['type'];\n children?: React.ReactNode;\n}\n\nfunction Internal<Tag extends TagType = 'a'>(props: MenuItemProps<Tag>, ref: React.Ref<React.HTMLProps<Tag>>) {\n const {\n prefixCls = 'w-menu-item',\n className,\n tagName: TagName = 'a',\n children,\n disabled = false,\n multiline = false,\n icon,\n text,\n active = false,\n addonAfter,\n isSubMenuItem,\n ...htmlProps\n } = props;\n const anchorCls = [prefixCls, active ? 'active' : null, disabled ? 'w-disabled' : null, className]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n const tagComp = React.createElement(\n TagName,\n {\n ...htmlProps,\n ...(disabled ? disabledProps : {}),\n className: anchorCls,\n ref,\n } as any,\n <Fragment>\n <Icon className={`${prefixCls}-icon`} type={icon} />\n <div\n className={[prefixCls && `${prefixCls}-text`, !multiline && `${prefixCls}-multiline`]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {text}\n </div>\n {addonAfter}\n </Fragment>,\n );\n if (isSubMenuItem) {\n return tagComp;\n }\n return <li> {tagComp} </li>;\n}\n\nexport const MenuItem = React.forwardRef(Internal);\n\nMenuItem.displayName = 'uiw.MenuItem';\n","import React from 'react';\nimport { IProps, HTMLLiProps } from '@uiw/utils';\n\nexport interface MenuDividerProps extends IProps, Omit<HTMLLiProps, 'title'> {\n title?: React.ReactNode;\n}\n\nexport const MenuDivider = React.forwardRef<HTMLLIElement, MenuDividerProps>((props, ref) => {\n const { prefixCls = 'w-menu-divider', className, title, ...htmlProps } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n if (!title) {\n return <li {...htmlProps} ref={ref} className={cls} />;\n }\n return (\n <li {...htmlProps} ref={ref} className={cls} data-menu=\"divider\">\n <strong>{title}</strong>\n </li>\n );\n});\n\nMenuDivider.displayName = 'uiw.MenuDivider';\n","import React, { useMemo, useState, useContext } from 'react';\nimport { CSSTransitionProps } from 'react-transition-group/CSSTransition';\nimport OverlayTrigger, { OverlayTriggerProps, OverlayTriggerRef } from '@uiw/react-overlay-trigger';\nimport Icon from '@uiw/react-icon';\nimport { IProps } from '@uiw/utils';\nimport { MenuItem, MenuItemProps, TagType } from './MenuItem';\nimport { MenuProps, Menu, ThemeContext } from './Menu';\nimport './style/submenu.less';\n\nexport interface SubMenuProps<T extends TagType> extends IProps, MenuItemProps<T> {\n overlayProps?: OverlayTriggerProps;\n collapse?: boolean;\n disabled?: boolean;\n inlineCollapsed?: boolean;\n inlineIndent?: number;\n}\n\nfunction checkedMenuItem(node?: HTMLElement) {\n let isCheck = false;\n if (node) {\n // eslint-disable-next-line\n do {\n if (!node.dataset.menu) {\n isCheck = true;\n }\n if (node.dataset.menu && /^(subitem|divider)$/.test(node.dataset.menu)) {\n isCheck = false;\n }\n } while (!node.dataset.menu && (node = node.parentNode as HTMLElement));\n }\n return isCheck;\n}\n\nfunction IconView({ prefixCls, collapse, isOpen }: { prefixCls?: string; collapse?: boolean; isOpen: boolean }) {\n return useMemo(\n () => (\n <Icon\n type=\"caret-right\"\n className={[\n prefixCls ? `${prefixCls}-collapse-icon` : null,\n !collapse && isOpen ? 'w-open' : null,\n !collapse && !isOpen ? 'w-close' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n />\n ),\n [prefixCls, collapse, isOpen],\n );\n}\n\nexport const SubMenu = React.forwardRef(function <Tag extends TagType = 'a'>(\n props: SubMenuProps<Tag>,\n ref: React.Ref<HTMLLIElement>,\n) {\n const {\n prefixCls = 'w-menu-subitem',\n className,\n disabled,\n overlayProps = {},\n children,\n collapse = false,\n inlineIndent,\n inlineCollapsed,\n ...other\n } = props;\n const overlayTriggerProps = {} as OverlayTriggerProps & CSSTransitionProps;\n const menuProps: MenuProps = {\n bordered: true,\n children,\n inlineIndent,\n className: [prefixCls ? `${prefixCls}-overlay` : null].filter(Boolean).join(' ').trim(),\n };\n const popupRef = React.useRef<OverlayTriggerRef>(null);\n const refNode = React.useRef<HTMLElement | null>();\n const elementSource = React.useRef<EventTarget | null>();\n const [isOpen, setIsOpen] = useState(!!overlayProps.isOpen);\n const { height, setContextHeight, ele } = useContext(ThemeContext);\n\n React.useEffect(() => {\n if (refNode.current && refNode.current.style && ele === elementSource.current) {\n const currentHeight = Number(refNode.current!.style.height.substr(0, refNode.current!.style.height.length - 2));\n // 设置的高度 < '已有展开的高度',\n if (refNode.current!.getBoundingClientRect().height < currentHeight) {\n refNode.current!.style.height = currentHeight + 'px';\n } else {\n refNode.current!.style.height = currentHeight + height + 'px';\n }\n }\n }, [height, ele]);\n\n useMemo(() => {\n if (collapse) setIsOpen(false);\n }, [collapse]);\n\n function onClick(e: React.MouseEvent<HTMLUListElement, MouseEvent>) {\n const target = e.currentTarget;\n const related = (e.relatedTarget || e.nativeEvent.target) as HTMLElement;\n if (target.children.length < 1) return;\n if (checkedMenuItem(related)) {\n if (popupRef.current) {\n popupRef.current!.hide();\n }\n }\n }\n function onEnter(node: HTMLElement) {\n node.style.height = '0px';\n refNode.current = node;\n setIsOpen(true);\n if (popupRef.current && popupRef.current.overlayDom.current) {\n setContextHeight({\n height: popupRef.current.overlayDom.current.getBoundingClientRect().height,\n ele: elementSource.current!,\n });\n }\n }\n function onEntering(node: HTMLElement) {\n node.style.height = `${node.scrollHeight}px`;\n }\n function onEntered(node: HTMLElement) {\n // node.style.height = 'initial';\n if (popupRef.current && popupRef.current.overlayDom.current) {\n node.style.height = popupRef.current.overlayDom.current.getBoundingClientRect().height + 'px';\n }\n }\n function onExiting(node: HTMLElement) {\n node.style.height = '0px';\n if (popupRef.current && popupRef.current.overlayDom.current) {\n setContextHeight({\n height: -popupRef.current!.overlayDom.current!.getBoundingClientRect().height,\n ele: elementSource.current!,\n });\n }\n }\n function onExit(node: HTMLElement) {\n node.style.height = `${node.scrollHeight}px`;\n setIsOpen(false);\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\n data-menu=\"subitem\"\n ref={ref}\n onClick={(e) => {\n if (collapse) {\n e.stopPropagation();\n return;\n }\n elementSource.current = e.target;\n }}\n >\n <OverlayTrigger\n placement=\"rightTop\"\n autoAdjustOverflow\n disabled={disabled}\n isOpen={isOpen}\n usePortal={false}\n isOutside\n {...overlayTriggerProps}\n {...overlayProps}\n ref={popupRef}\n overlay={<Menu {...menuProps} style={!collapse ? { paddingLeft: inlineIndent } : {}} />}\n >\n <MenuItem\n {...other}\n ref={null}\n disabled={disabled}\n isSubMenuItem\n addonAfter={<IconView collapse={collapse} prefixCls={prefixCls} isOpen={isOpen} />}\n className={[\n prefixCls ? `${prefixCls}-title` : null,\n !collapse ? `${prefixCls}-collapse-title` : null,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n />\n </OverlayTrigger>\n </li>\n );\n});\n\nSubMenu.displayName = 'uiw.SubMenu';\n","import React, { useMemo, createContext } from 'react';\nimport { IProps, HTMLUlProps } from '@uiw/utils';\nimport { MenuItem } from './MenuItem';\nimport { MenuDivider } from './Divider';\nimport { SubMenu } from './SubMenu';\nimport './style/menu.less';\n\nexport interface MenuProps extends IProps, HTMLUlProps {\n /** 主题颜色 */\n theme?: 'light' | 'dark';\n /**\n * 垂直是否收起菜单\n * Default: `false`\n */\n inlineCollapsed?: boolean;\n /**\n * 菜单缩进宽度 Default: `10`\n */\n inlineIndent?: number;\n bordered?: boolean;\n}\ninterface MenuContextType {\n // 需要加上或者减去的高度\n height: number;\n // 事件源dom\n ele: EventTarget | null;\n}\nexport const ThemeContext = createContext(\n {} as MenuContextType & {\n setContextHeight: React.Dispatch<React.SetStateAction<MenuContextType>>;\n },\n);\n\nexport const Menu = React.forwardRef<HTMLUListElement, MenuProps>((props, ref) => {\n const {\n prefixCls = 'w-menu',\n className,\n children,\n bordered,\n theme = 'light',\n inlineIndent = 10,\n inlineCollapsed,\n ...htmlProps\n } = props;\n const cls = useMemo(\n () =>\n [\n prefixCls,\n bordered ? 'w-bordered' : null,\n inlineCollapsed ? `${prefixCls}-inline-collapsed` : null,\n theme ? `${prefixCls}-${theme}` : null,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n [prefixCls, bordered, inlineCollapsed, theme, className],\n );\n return (\n <ul {...htmlProps} ref={ref} className={cls} data-menu=\"menu\">\n {React.Children.map(children, (child: React.ReactNode, key) => {\n if (!React.isValidElement(child)) return child;\n const props: { inlineIndent?: number; inlineCollapsed?: boolean } = {};\n // Sub Menu\n if (child.props.children && child.type === (SubMenu as any)) {\n props.inlineIndent = inlineIndent;\n }\n return React.cloneElement(child, Object.assign({ ...props }, child.props, { key: `${key}` }));\n })}\n </ul>\n );\n});\n\nconst InternalContextMenu = (props: MenuProps, ref?: React.ForwardedRef<HTMLUListElement>) => {\n const [contextHeight, setContextHeight] = React.useState<MenuContextType>({ height: 0, ele: null });\n return (\n <ThemeContext.Provider value={{ ...contextHeight, setContextHeight }}>\n <Menu {...props} ref={ref} />\n </ThemeContext.Provider>\n );\n};\n\nconst ContextMenu: ContextMenuComponent = React.forwardRef<HTMLUListElement>(\n InternalContextMenu,\n) as unknown as ContextMenuComponent;\n\nMenu.displayName = 'uiw.Menu';\nContextMenu.displayName = 'uiw.Menu';\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';\n\nexport * from './Menu';\nexport * from './MenuItem';\nexport * from './SubMenu';\nexport * from './Divider';\n\nexport default Menu;\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 './style/index.less';\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 <Icon type={selectIconType} onClick={onClear} className={`${prefixCls}-close`} />\n )}\n </span>\n }\n />\n </span>\n </Dropdown>\n );\n}\n\nexport default Cascader;\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLInputProps } from '@uiw/utils';\n\n/**\n * Constructs a type by picking all properties from `HTMLInputProps` and then removing `size`.\n * Omit: https://www.typescriptlang.org/docs/handbook/utility-types.html#omittk\n */\nexport interface RadioAbstractProps extends IProps, Omit<HTMLInputProps, 'size'> {\n size?: 'large' | 'default' | 'small';\n checked?: boolean;\n disabled?: boolean;\n onChange?: (even: React.ChangeEvent<HTMLInputElement>) => void;\n}\n\nexport const RadioAbstract = React.forwardRef<HTMLInputElement, RadioAbstractProps>((props, ref) => {\n const {\n prefixCls = 'w-radio',\n type = 'radio',\n disabled = false,\n value = '',\n className,\n style,\n children,\n size,\n checked: prChecked = false,\n onChange,\n ...other\n } = props;\n\n const [checked, setChecked] = useState(prChecked);\n const [prevChecked, setPrevChecked] = useState<boolean>();\n if (prChecked !== prevChecked) {\n setPrevChecked(prChecked);\n }\n useMemo(() => {\n if (prChecked !== prevChecked) {\n setChecked(prChecked);\n }\n }, [prevChecked]);\n\n const cls = [prefixCls, className, disabled ? 'disabled' : null, size ? `${prefixCls}-${size}` : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n useMemo(() => {\n if (checked !== props.checked) {\n setChecked(!!props.checked);\n }\n }, [props.checked]);\n\n function handleChange(e: React.ChangeEvent<HTMLInputElement>) {\n e.persist();\n setChecked(e.target.checked);\n onChange && onChange(e);\n }\n\n const label = children || value;\n return (\n <label {...{ className: cls, style }}>\n <input {...{ ...other, type, disabled, value }} checked={checked} onChange={handleChange} ref={ref} />\n {label && <div className={`${prefixCls}-text`}>{label}</div>}\n </label>\n );\n});\n","import React from 'react';\nimport { RadioAbstract, RadioAbstractProps } from './RadioAbstract';\nimport './style/index.less';\n\nexport interface RadioProps extends RadioAbstractProps {}\n\nexport 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 './style/group.less';\n\nexport interface RadioGroupProps extends IProps, HTMLDivProps {\n name?: RadioProps['name'];\n value?: RadioProps['value'];\n onChange?: RadioProps['onChange'];\n}\n\nexport const RadioGroup = React.forwardRef<HTMLDivElement, RadioGroupProps>((props, ref) => {\n const { prefixCls = 'w-radio-group', className, name, value, onChange, children, ...other } = props;\n return (\n <div {...other} ref={ref} className={[prefixCls, className].filter(Boolean).join(' ').trim()}>\n <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 </div>\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 console.log('props.checked', 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 React, { useMemo, useRef } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/group.less';\n\nexport type Value = string | number;\nexport interface CheckboxGroupPorps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n value?: Value[];\n name?: string;\n onChange?: (e: React.ChangeEvent<HTMLInputElement>, values: Value[]) => void;\n}\n\nexport const CheckboxGroup = React.forwardRef<HTMLDivElement, CheckboxGroupPorps>((props, ref) => {\n const { prefixCls = 'w-checkbox-group', className, name, value, onChange, ...other } = props;\n const valueRef = useRef<Value[]>([]);\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n const childs = React.Children.toArray(props.children);\n useMemo(() => (valueRef.current = value || []), [value]);\n return (\n <div {...other} className={cls} ref={ref}>\n {React.Children.map(childs, (element: React.ReactNode) => {\n if (!React.isValidElement(element)) return;\n if (\n Array.isArray(value) &&\n element &&\n element.props &&\n element.props.value &&\n value.includes(element.props.value)\n ) {\n if (!valueRef.current.includes(element.props.value)) {\n valueRef.current.push(element.props.value);\n }\n }\n return React.cloneElement(\n element,\n Object.assign({}, element.props, {\n name,\n checked: valueRef.current.includes(element.props.value),\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => {\n if (e.target.type && e.target.type !== 'checkbox') return;\n const checked = e.target.checked;\n const include = valueRef.current.includes(element.props.value);\n if (!include && checked) {\n valueRef.current.push(element.props.value);\n } else if (include && !checked) {\n valueRef.current = valueRef.current.filter((val) => val !== element.props.value);\n }\n onChange && onChange(e, valueRef.current);\n },\n }),\n );\n })}\n </div>\n );\n});\n","import React from 'react';\nimport { RadioAbstract, RadioAbstractProps } from '@uiw/react-radio';\nimport { CheckboxGroup } from './Group';\nimport './style/index.less';\n\nexport interface CheckboxProps extends RadioAbstractProps {\n indeterminate?: boolean;\n}\n\nfunction InternalCheckbox(props: CheckboxProps, ref: React.ForwardedRef<HTMLInputElement>) {\n const {\n className,\n prefixCls = 'w-checkbox',\n type = 'checkbox',\n indeterminate = false,\n disabled = false,\n value = '',\n ...other\n } = props;\n\n const cls = [className, indeterminate && 'indeterminate'].filter(Boolean).join(' ').trim();\n return (\n <RadioAbstract\n ref={ref}\n {...other}\n type={type}\n prefixCls={prefixCls}\n disabled={disabled}\n value={value}\n className={cls}\n />\n );\n}\n\nconst Checkbox = React.forwardRef<HTMLInputElement, CheckboxProps>(InternalCheckbox);\ntype Checkbox = typeof Checkbox & {\n Group: typeof CheckboxGroup;\n};\n\n(Checkbox as Checkbox).Group = CheckboxGroup;\n\nexport default Checkbox as Checkbox;\n","import Checkbox from './Checkbox';\n\nexport * from './Checkbox';\nexport * from './Group';\nexport default Checkbox;\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Panel from './Panel';\nimport './style/index.less';\n\nexport interface CollapseProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n accordion?: boolean;\n activeKey?: string | string[];\n bordered?: boolean;\n showArrow?: boolean;\n onChange?: (activeKey: string[]) => void;\n}\n\nexport interface CollapseState {\n activeKey: string[];\n}\n\nfunction toArray(activeKey: CollapseProps['activeKey']) {\n let currentActiveKey = activeKey;\n if (!Array.isArray(currentActiveKey)) {\n currentActiveKey = currentActiveKey ? [currentActiveKey] : [];\n }\n return currentActiveKey;\n}\n\nfunction InternalCollapse(props: CollapseProps, ref: React.ForwardedRef<HTMLDivElement>) {\n const {\n prefixCls = 'w-collapse',\n className,\n children,\n accordion = false,\n bordered,\n showArrow = true,\n activeKey: propsActiveKey,\n onChange,\n ...resetProps\n } = props;\n const [activeKey, setActiveKey] = useState(toArray(propsActiveKey));\n const cls = [prefixCls, className, bordered ? 'w-noborder' : null].filter(Boolean).join(' ').trim();\n function onItemClick(key: string) {\n let keys = activeKey;\n if (accordion) {\n keys = keys[0] === key ? [] : [key];\n } else {\n keys = [...keys];\n const index = keys.indexOf(key);\n const isActive = index > -1;\n if (isActive) {\n keys.splice(index, 1);\n } else {\n keys.push(key);\n }\n }\n setActiveKey(keys);\n }\n useMemo(() => {\n if (propsActiveKey !== activeKey) {\n setActiveKey(toArray(propsActiveKey));\n }\n }, [propsActiveKey]);\n useMemo(() => {\n if (propsActiveKey !== activeKey) {\n onChange && onChange(activeKey);\n }\n }, [activeKey, propsActiveKey]);\n return (\n <div className={cls} {...resetProps} ref={ref}>\n {React.Children.map(children, (child: any, index) => {\n // 如果没有密钥提供,请使用面板顺序作为默认密钥\n const key = child.key || String(index);\n const { disabled } = child.props;\n let isActive = false;\n if (accordion) {\n // 手风琴模式下默认选择第一个\n isActive = activeKey[0] === key;\n } else {\n isActive = activeKey.indexOf(key) > -1;\n }\n const childProps = {\n prefixCls,\n isActive,\n disabled,\n showArrow,\n onItemClick: disabled ? () => {} : () => onItemClick(key),\n ...child.props,\n };\n return React.cloneElement(child, childProps);\n })}\n </div>\n );\n}\n\ntype CollapseComponent = React.FC<React.PropsWithRef<CollapseProps>> & {\n Panel: typeof Panel;\n};\n\nconst Collapse: CollapseComponent = React.forwardRef<HTMLDivElement>(InternalCollapse) as unknown as CollapseComponent;\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';\n\nexport interface CollapsePanelProps extends IProps, HTMLDivProps {\n disabled?: boolean;\n showArrow?: boolean;\n isActive?: boolean;\n header?: React.ReactNode;\n icon?: IconProps['type'];\n extra?: React.ReactNode;\n onItemClick?: (evn: React.MouseEvent<HTMLDivElement>) => void;\n}\n\nexport default function Panel(props: CollapsePanelProps) {\n const {\n prefixCls = 'w-collapse',\n className,\n icon = 'down',\n children,\n isActive,\n onItemClick,\n disabled = false,\n showArrow,\n header,\n extra,\n ...resetProps\n } = props;\n const cls = [\n prefixCls ? `${prefixCls}-item` : null,\n className,\n isActive ? `${prefixCls}-active` : null,\n disabled ? `${prefixCls}-disabled` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const iconRender = typeof icon === 'string' ? <Icon type={icon} /> : icon;\n\n const childStyle = (child: React.ReactElement) => {\n return Object.assign({}, child && child.props ? child.props.style : {}, {\n transitionDuration: '300ms',\n });\n };\n function getInstance(status: TransitionStatus, instance: any) {\n if (!instance) {\n return;\n }\n if (status === 'exited' || status === 'exiting') {\n instance.style.height = '1px';\n }\n if (status === 'entered' || status === 'entering') {\n instance.style.height = `${instance.scrollHeight}px`;\n }\n }\n return (\n <div className={cls} {...resetProps}>\n <div className={`${prefixCls}-header`} onClick={onItemClick}>\n {showArrow && iconRender}\n <span className={`${prefixCls}-title`}>{header}</span>\n {extra && <div className={`${prefixCls}-extra`}>{extra}</div>}\n </div>\n <CSSTransition in={isActive} unmountOnExit={false} timeout={300} classNames={`${prefixCls}-panel`}>\n {(status: TransitionStatus) =>\n React.cloneElement(<div>{children}</div>, {\n className: `${prefixCls}-panel`,\n style: childStyle(children as React.ReactElement),\n ref: (e: any) => getInstance(status, e),\n })\n }\n </CSSTransition>\n </div>\n );\n}\n","import Collapse from './Collapse';\n\nexport * from './Collapse';\nexport * from './Panel';\n\nexport default Collapse;\n","import React from 'react';\nimport copy from '@uiw/copy-to-clipboard';\nimport { IProps, HTMLSpanProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface CopyToClipboardProps extends IProps, Omit<HTMLSpanProps, 'onClick'> {\n text?: string;\n onClick?: (text: string, isCopy: boolean, event: React.MouseEvent<HTMLElement>) => void;\n}\n\nexport default function CopyToClipboard<T>(props: CopyToClipboardProps & T) {\n const {\n prefixCls = 'w-copy-to-clipboard',\n className,\n text = '',\n children,\n onClick = () => null,\n ...resetProps\n } = props;\n function handleClick(e: React.MouseEvent<HTMLElement>) {\n if (!text) {\n return onClick('', false, e);\n }\n copy(text, (isCopy: boolean) => {\n onClick(text, isCopy, e);\n });\n }\n const otherProps = {\n ...resetProps,\n className: [prefixCls, className].filter(Boolean).join(' ').trim(),\n onClick: handleClick,\n };\n return (\n <span {...otherProps}>\n <span className={`${prefixCls}-select`}>{text}</span>\n {children}\n </span>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport Input, { InputProps } from '@uiw/react-input';\nimport Popover, { PopoverProps } from '@uiw/react-popover';\nimport DatePicker, { DatePickerProps } from '@uiw/react-date-picker';\nimport Icon from '@uiw/react-icon';\nimport { IProps } from '@uiw/utils';\nimport formatter from '@uiw/formatter';\nimport './style/date-input-range.less';\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 function clearDateRange() {\n setDateRange([]);\n onChange && onChange(undefined, []);\n }\n\n return (\n <div\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 <DatePicker\n date={dateRange[0]}\n className={`${prefixCls}-popover`}\n {...datePickerProps}\n onChange={(selectedDate) => 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\n <Icon type=\"swap-right\" verticalAlign=\"baseline\" style={{ fontSize: 21, top: -1, margin: '0px 8px 0px 5px' }} />\n\n <Popover\n trigger=\"focus\"\n placement=\"bottomLeft\"\n autoAdjustOverflow\n {...popoverProps}\n content={\n <DatePicker\n date={dateRange[1]}\n className={`${prefixCls}-popover`}\n {...datePickerProps}\n onChange={(selectedDate) => 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 {allowClear && dateRange.length > 0 && (\n <Icon className={`${prefixCls}-close-btn`} color=\"#a5a5a5\" onClick={() => clearDateRange()} type=\"close\" />\n )}\n </div>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport Input, { InputProps } from '@uiw/react-input';\nimport Popover, { PopoverProps } from '@uiw/react-popover';\nimport DatePicker, { DatePickerProps } from '@uiw/react-date-picker';\nimport Icon from '@uiw/react-icon';\nimport { IProps } from '@uiw/utils';\nimport formatter from '@uiw/formatter';\nexport * from './DateInputRange';\nimport './style/index.less';\n\nexport interface DateInputProps extends IProps, Omit<InputProps, 'onChange' | 'value'> {\n popoverProps?: PopoverProps;\n datePickerProps?: DatePickerProps;\n value?: Date | string;\n format?: string;\n allowClear?: boolean;\n onChange?: (selectedDate?: Date) => void;\n 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 <Icon className={`${prefixCls}-close-btn`} onClick={() => handleChange(undefined)} type=\"close\" />\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 <DatePicker\n date={(value && new Date(value)) || undefined}\n className={`${prefixCls}-popover`}\n {...datePickerProps}\n onChange={(selectedDate) => handleChange(selectedDate!)}\n />\n }\n >\n <Input\n placeholder=\"请选择日期\"\n readOnly\n {...(inputProps as InputProps)}\n className={[prefixCls, className].filter(Boolean).join(' ').trim()}\n />\n </Popover>\n );\n}\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\n\nexport interface DescriptionsItemProps extends IProps {\n label?: React.ReactNode;\n children: React.ReactNode;\n span?: number;\n}\n\nconst DescriptionsItem: React.FC<DescriptionsItemProps> = ({ children }) => children as JSX.Element;\n\nexport default DescriptionsItem;\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\nimport { DescriptionsItemProps } from './DescriptionsItem';\nimport { RowProps } from './Row';\n\nexport interface CellProps\n extends Omit<RowProps, 'children'>,\n Omit<DescriptionsItemProps, 'children'>,\n React.HTMLAttributes<HTMLTableCellElement>,\n IProps {\n children?: React.ReactElement<DescriptionsItemProps> | React.ReactNode;\n tagName?: 'td' | 'th';\n /**\n * 是否为一行的最后一个\n */\n isLastCell?: boolean;\n}\n\nfunction Cell(props: CellProps = {}) {\n const {\n prefixCls,\n className,\n tagName: TagName = 'td',\n layout,\n bordered,\n label,\n isLastCell,\n colon,\n span,\n children,\n column,\n ...other\n } = props;\n\n const labelProps: React.HTMLAttributes<HTMLSpanElement> = {\n className: [\n prefixCls ? `${prefixCls}-item-label` : null,\n className,\n colon ? `${prefixCls}-item-colon` : null,\n !label ? `${prefixCls}-item-no-label` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n };\n if (layout === 'horizontal') {\n if (!bordered) {\n return (\n <TagName {...other} colSpan={span}>\n <span {...labelProps}>{label}</span>\n <span className={prefixCls ? `${prefixCls}-item-content` : ''}>{children}</span>\n </TagName>\n );\n }\n return (\n <Fragment>\n <th {...labelProps}>{label}</th>\n <TagName\n {...other}\n colSpan={span ? span * 2 - 1 : span}\n className={prefixCls ? `${prefixCls}-item-content` : ''}\n >\n {children}\n </TagName>\n </Fragment>\n );\n }\n return (\n <TagName colSpan={span} className={`${prefixCls}-item-${TagName === 'td' ? 'content' : 'label'}`}>\n {children}\n </TagName>\n );\n}\n\nexport default Cell;\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\nimport { DescriptionsItemProps } from './DescriptionsItem';\nimport Cell from './Cell';\n\nexport interface RowProps extends IProps {\n children?: React.ReactElement<DescriptionsItemProps>[];\n bordered?: boolean;\n layout?: 'horizontal' | 'vertical';\n colon?: boolean;\n column?: number;\n}\n\nexport default function Row(props: RowProps = {}) {\n const { prefixCls, layout, bordered, column, colon, children = [] } = props;\n function handleCell(isHead?: boolean) {\n return children.map((child, index) => (\n <Cell\n {...child.props}\n prefixCls={prefixCls}\n key={index}\n column={column}\n tagName={isHead ? 'th' : 'td'}\n isLastCell={children.length - 1 === index}\n layout={layout}\n colon={colon}\n bordered={bordered}\n >\n {isHead ? child.props.label : child.props.children}\n </Cell>\n ));\n }\n const cls = prefixCls ? `${prefixCls}-row` : '';\n return (\n <Fragment>\n {layout === 'vertical' && <tr className={cls}>{handleCell(true)}</tr>}\n <tr className={cls}>{handleCell()}</tr>\n </Fragment>\n );\n}\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\nimport DescriptionsItem, { DescriptionsItemProps } from './DescriptionsItem';\nimport Row, { RowProps } from './Row';\nimport './style/index.less';\n\nexport * from './DescriptionsItem';\n\nexport interface DescriptionsProps extends IProps {\n column?: number;\n title?: React.ReactNode;\n children?: React.ReactNode;\n bordered?: boolean;\n colon?: boolean;\n size?: 'large' | 'small' | 'default';\n layout?: RowProps['layout'];\n}\n\nconst generateChildrenRows = (\n children: React.ReactElement<DescriptionsItemProps>[],\n column: number,\n): Array<React.ReactElement<DescriptionsItemProps>[]> => {\n const rows: React.ReactElement<DescriptionsItemProps>[][] = [];\n let columns: React.ReactElement<DescriptionsItemProps>[] | null = null;\n let leftSpans: number;\n\n children.forEach((node: React.ReactElement<DescriptionsItemProps>, index: number) => {\n let itemNode = node;\n\n if (!columns) {\n leftSpans = column;\n columns = [];\n rows.push(columns);\n }\n\n // Always set last span to align the end of Descriptions\n const lastItem = index === children.length - 1;\n if (lastItem) {\n itemNode = React.cloneElement(itemNode, {\n span: leftSpans,\n });\n }\n // Calculate left fill span\n const { span = 1 } = itemNode.props;\n columns.push(itemNode);\n leftSpans -= span;\n\n if (leftSpans <= 0) {\n columns = null;\n }\n });\n\n return rows;\n};\n\nfunction InternalDescriptions(props: DescriptionsProps, ref: React.ForwardedRef<HTMLDivElement>) {\n const {\n prefixCls = 'w-descriptions',\n className,\n title,\n bordered,\n column = 3,\n size,\n colon = true,\n children,\n layout = 'horizontal',\n ...other\n } = props;\n const cls = [\n prefixCls,\n className,\n prefixCls && layout ? `${prefixCls}-${layout}` : null,\n bordered ? `${prefixCls}-bordered` : null,\n size ? `${prefixCls}-${size}` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n const cloneChildren = React.Children.toArray(children) as JSX.Element[];\n const childs: Array<React.ReactElement<DescriptionsItemProps>[]> = generateChildrenRows(cloneChildren, column!);\n\n return (\n <div className={cls} ref={ref}>\n <table {...other}>\n {title && <caption className={`${prefixCls}-title`}>{title}</caption>}\n <tbody 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 </tbody>\n </table>\n </div>\n );\n}\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 React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface DividerProps extends IProps, HTMLDivProps {\n dashed?: boolean;\n type?: 'horizontal' | 'vertical';\n align?: 'left' | 'right' | 'center';\n}\n\nexport default React.forwardRef<HTMLDivElement, DividerProps>((props, ref) => {\n const {\n prefixCls = 'w-divider',\n className,\n children,\n dashed = false,\n type = 'horizontal',\n align = 'center',\n ...restProps\n } = props;\n const cls = [\n className,\n prefixCls,\n prefixCls && type ? `${prefixCls}-${type}` : null,\n prefixCls && align ? `${prefixCls}-${align}` : null,\n children ? `${prefixCls}-with-text` : null,\n !!dashed ? `${prefixCls}-dashed` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n return (\n <div className={cls} {...restProps} ref={ref}>\n {children && <span className={`${prefixCls}-inner-text`}>{children}</span>}\n </div>\n );\n});\n","import React, { useMemo } from 'react';\nimport Overlay, { OverlayProps } from '@uiw/react-overlay';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport Button from '@uiw/react-button';\nimport { HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface DrawerProps extends OverlayProps {\n footer?: React.ReactNode;\n icon?: IconProps['type'];\n title?: React.ReactNode;\n bodyProps?: HTMLDivProps;\n placement?: 'top' | 'right' | 'bottom' | 'left';\n size?: number;\n isCloseButtonShown?: boolean;\n onClose?: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n}\n\nexport default (props: DrawerProps = {}) => {\n const {\n prefixCls = 'w-drawer',\n className,\n style,\n placement = 'right',\n size = 260,\n title,\n footer,\n icon,\n isCloseButtonShown = true,\n bodyProps,\n timeout = 300,\n isOpen = false,\n maskClosable = true,\n ...overlayProps\n } = props;\n const cls = [className, prefixCls, placement].filter(Boolean).join(' ').trim();\n const bodyCls = [bodyProps ? bodyProps.className : null, prefixCls ? `${prefixCls}-body-inner` : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n const styl = {\n ...style,\n [/^(top|bottom)$/.test(placement!) ? 'height' : 'width']: size,\n };\n const footerView = useMemo(() => (footer ? <div className={`${prefixCls}-footer`}>{footer}</div> : null), [footer]);\n const iconView = useMemo(() => (icon ? <Icon type={icon} /> : null), [icon]);\n const titleView = useMemo(() => (title ? <h4>{title}</h4> : null), [title]);\n return (\n <Overlay className={cls} timeout={timeout} isOpen={isOpen} maskClosable={maskClosable} {...overlayProps}>\n <div className={`${prefixCls}-wrapper`} style={styl}>\n {(title || icon) && (\n <div className={`${prefixCls}-header`}>\n {iconView}\n {titleView}\n {title && isCloseButtonShown && <Button basic onClick={props.onClose} icon=\"close\" type=\"light\" />}\n </div>\n )}\n <div className={`${prefixCls}-body`}>\n <div {...bodyProps} className={bodyCls}>\n {props.children}\n </div>\n </div>\n {footerView}\n </div>\n </Overlay>\n );\n};\n","import React from 'react';\nimport './style/index.less';\n\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 <div className={cls} {...other}>\n <div 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 </div>\n {description && <div className={`${prefixCls}-description`}>{description}</div>}\n {children && <div className={`${prefixCls}-footer`}>{children}</div>}\n </div>\n );\n};\n\nexport default Empty;\n","import React from 'react';\nimport Input, { InputProps } from '@uiw/react-input';\nimport { FileInputProps } from './';\n\nexport interface InputUploadProps extends FileInputProps, InputProps {}\n\nexport default React.forwardRef<HTMLInputElement, InputUploadProps>((props, ref) => {\n const { className, dataLabel = 'Browse', prefixCls = 'w-fileinput', ...other } = props;\n const cls = [prefixCls, className].filter(Boolean).join(' ').trim();\n return <Input ref={ref} data-label={dataLabel} className={cls} {...other} type=\"file\" />;\n});\n","import React from 'react';\nimport Icon from '@uiw/react-icon';\nimport { FileInputListProps } from './';\nimport './style/index.less';\n\nconst Picture = (props: FileInputListProps) => {\n const {\n className,\n prefixCls = 'w-fileinput-list',\n dataList = [],\n uploadType,\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, `${prefixCls}-size-${size}`, `${prefixCls}-shape-${shape}`, className]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n return (\n <div 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 <div className={`${prefixCls}-${uploadType}`} key={index}>\n {uploadType === 'picture' && (\n <div className={`${prefixCls}-info ${prefixCls}-${uploadType}-info`}>\n <img src={item['dataURL']} alt=\"\" />\n {showFileIcon?.showPreviewIcon && (\n <div className={`${prefixCls}-actions`}>\n <span className={`${prefixCls}-actions-search`} onClick={() => onPreview?.(item)}>\n <Icon type=\"search\" style={{ color: '#fff', fontSize: 16 }} />\n </span>\n </div>\n )}\n </div>\n )}\n <div className={`${prefixCls}-${uploadType}-text`}>{item.name}</div>\n {showFileIcon?.showRemoveIcon && (\n <div className={`${prefixCls}-${uploadType}-icon`} onClick={() => onRemove?.(index)}>\n <Icon type=\"delete\" style={{ color: '#999' }} />\n </div>\n )}\n </div>\n ))}\n </div>\n </div>\n );\n};\n\nexport default Picture;\n","import React from 'react';\nimport Icon from '@uiw/react-icon';\nimport { FileInputListProps } from './';\nimport './style/index.less';\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 cls = [prefixCls, `${prefixCls}-size-${size}`, `${prefixCls}-shape-${shape}`, className]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n const isAction = showFileIcon.showPreviewIcon || showFileIcon.showRemoveIcon ? true : false;\n\n return (\n <div className={cls}>\n {dataList.map((item, index) => (\n <div className={`${prefixCls}-box`} key={index}>\n <div className={`${prefixCls}-box-info`}>\n <img src={item['dataURL']} alt=\"\" />\n </div>\n\n <div className={isAction ? `${prefixCls}-actions` : ''}>\n {showFileIcon?.showPreviewIcon && (\n <span className={`${prefixCls}-actions-remove`} onClick={() => onPreview?.(item)}>\n <Icon type=\"search\" style={{ color: '#fff', fontSize: 16 }} />\n </span>\n )}\n {showFileIcon?.showRemoveIcon && (\n <span className={`${prefixCls}-actions-remove`} onClick={() => onRemove?.(index)}>\n <Icon type=\"delete\" style={{ color: '#fff', fontSize: 16 }} />\n </span>\n )}\n </div>\n </div>\n ))}\n {maxNumber > dataList.length && !readonly && (\n <div className={`${prefixCls}-box ${prefixCls}-btn`} onClick={onAdd}>\n {children}\n </div>\n )}\n </div>\n );\n};\n\nexport default Card;\n","import { FileInputValue } from './';\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 './';\nimport { FileInputUploadProps } from './types';\nimport { openFileDialog, getListFiles } from './utils';\n\nexport const FileList = (props: FileInputUploadProps) => {\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 { InputProps } from '@uiw/react-input';\nimport { UploadType, FileInputBaseProps, FileInputUploadProps, FileInputShowIconProps } from './types';\nimport './style/index.less';\nexport interface FileInputValue {\n dataURL?: string;\n file?: File;\n name?: string;\n [key: string]: any;\n}\nexport interface FileInputProps extends FileInputBaseProps, InputProps {\n dataLabel?: string;\n}\nexport interface FileInputListProps extends FileInputUploadProps {\n shape?: 'circle' | 'round';\n size?: 'large' | 'middle' | 'small';\n showFileIcon?: FileInputShowIconProps;\n dataList: FileInputValue[];\n onAdd?: () => void;\n onRemove?: (index: number) => void;\n}\n\ninterface Props {\n uploadType?: UploadType;\n [key: string]: any;\n}\n\nfunction Upload(props: Props) {\n const { uploadType = 'input' } = props;\n\n if (uploadType === 'input') {\n return <Input {...props} />;\n }\n\n if (isUploadType(uploadType)) {\n return <FileList {...props} />;\n }\n return null;\n}\n\nexport default Upload;\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/col.less';\n\nexport interface ColProps extends IProps, HTMLDivProps {\n fixed?: boolean;\n span?: number | string;\n grow?: number | string;\n align?: 'top' | 'middle' | 'bottom' | 'baseline';\n}\n\nexport function Col(props: ColProps = {}) {\n const { prefixCls = 'w-col', className, fixed, span, grow, align, ...other } = props;\n const cls = [\n prefixCls,\n className,\n span ? `${prefixCls}-${span}` : null,\n fixed ? `${prefixCls}-fixed` : null,\n align ? `${prefixCls}-align-${align}` : null,\n fixed ? `${prefixCls}-grow-${grow}` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n return (\n <div className={cls} {...other}>\n {props.children}\n </div>\n );\n}\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/row.less';\n\nexport interface RowProps extends IProps, HTMLDivProps {\n fixed?: boolean;\n gutter?: number;\n justify?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';\n align?: 'top' | 'middle' | 'bottom' | 'baseline';\n}\n\nexport function Row(props: RowProps = {}) {\n const { prefixCls = 'w-row', className, gutter = 0, justify, align, ...other } = props;\n const cls = [\n prefixCls,\n className,\n align ? `${prefixCls}-align-${align}` : null,\n justify ? `${prefixCls}-justify-${justify}` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const gutterStyl = !gutter ? {} : { paddingLeft: gutter / 2, paddingRight: gutter / 2 };\n return (\n <div {...other} className={cls}>\n {React.Children.toArray(props.children).map((child) => {\n if (!React.isValidElement(child)) return child;\n return React.cloneElement(\n child,\n Object.assign({}, child.props, {\n style: { ...child.props.style, ...gutterStyl },\n }),\n );\n })}\n </div>\n );\n}\n","import React from 'react';\nimport { Col, Row } from '@uiw/react-grid';\nimport { IProps, HTMLInputProps } from '@uiw/utils';\nimport { FormFieldsProps } from './Form';\nimport './style/form-item.less';\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 <div className={cls} style={style} {...otherProps}>\n <Row>\n <Col fixed className={labelCls}>\n {required && <label style={{ color: 'red' }}>*</label>}\n <label style={labelStyle} htmlFor={labelFor}>\n {label}\n </label>\n </Col>\n <Col className=\"w-form-row\">{this.props.children}</Col>\n </Row>\n {help && (\n <Row>\n <Col className=\"w-form-help\">{help}</Col>\n </Row>\n )}\n </div>\n );\n }\n return (\n <div className={cls} style={style} {...otherProps}>\n {label && (\n <React.Fragment>\n {required && <label style={{ color: 'red' }}>*</label>}\n <label className={labelCls} style={labelStyle} htmlFor={labelFor}>\n {label}\n </label>\n </React.Fragment>\n )}\n <Col className=\"w-form-row\">{this.props.children}</Col>\n {help && <div className=\"w-form-help\">{help}</div>}\n </div>\n );\n }\n}\n","import React, { useState, useImperativeHandle, useMemo } from 'react';\nimport { IProps } from '@uiw/utils';\nimport FormItem, { FormItemProps } from './FormItem';\nimport './style/form.less';\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?: (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?: ((handle: FormChildrenProps) => JSX.Element) | 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\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 fieldsProps: FormFieldsProps<T> = fields[name];\n if (!fieldsProps) continue;\n if (fieldsProps.validator && fieldsProps.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 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 <form {...others} className={[prefixCls, className].filter(Boolean).join(' ').trim()} onSubmit={handleSubmit}>\n <fieldset {...{ disabled: data.submitting }}>\n {typeof children === 'function'\n ? children({\n fields: formUnits,\n state: data,\n resetForm: handleReset,\n canSubmit: canSubmit,\n })\n : children}\n </fieldset>\n </form>\n );\n}\n\nexport default React.forwardRef<FormRefType | undefined, FormProps<{}>>(Form);\n","import Form from './Form';\n\nexport * from './Form';\nexport * from './FormItem';\nexport { default as FormItem } from './FormItem';\n\nexport default Form;\n","import React, { Fragment } from 'react';\nimport { IProps } from '@uiw/utils';\n\nexport type TagType = React.ComponentType | keyof JSX.IntrinsicElements;\n\nexport interface ListItemProps<Tag extends TagType> extends IProps, React.HTMLProps<Tag> {\n disabled?: boolean;\n active?: boolean;\n extra?: React.ReactNode;\n href?: string;\n tagName?: Tag;\n}\n\nexport const ListItem = React.forwardRef(\n <Tag extends TagType = 'div'>(props: ListItemProps<Tag>, ref: React.Ref<React.HTMLProps<Tag>>) => {\n const {\n prefixCls = 'w-list-item',\n className,\n children,\n extra,\n tagName = 'div',\n active = false,\n ...resetProps\n } = props;\n const cls = [prefixCls, className, props.disabled ? 'w-disabled' : null, active ? 'w-active' : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n const TagName = props.href && typeof tagName === 'string' ? 'a' : tagName;\n return React.createElement(\n TagName,\n {\n ...resetProps,\n className: cls,\n ref,\n } as any,\n !extra || resetProps.href ? (\n children\n ) : (\n <Fragment>\n <div className={`${prefixCls}-main`}>{children}</div>\n <div className={`${prefixCls}-extra`}>{extra}</div>\n </Fragment>\n ),\n );\n },\n);\n\nListItem.displayName = 'List.Item';\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { ListItem } from './Item';\nimport './style/index.less';\n\nexport * from './Item';\n\nexport interface ListProps<T> extends IProps, HTMLDivProps {\n bordered?: boolean;\n striped?: boolean;\n noHover?: boolean;\n active?: boolean;\n header?: React.ReactNode;\n footer?: React.ReactNode;\n size?: 'small' | 'default' | 'large';\n renderItem?: (item: any, idx: number) => React.ReactNode;\n dataSource?: T[];\n}\n\nfunction InternalList<T>(props: ListProps<T>, ref: React.ForwardedRef<HTMLDivElement>) {\n const {\n prefixCls = 'w-list',\n bordered = true,\n striped = false,\n noHover = false,\n active = false,\n size = 'default',\n renderItem,\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 <div className={classString} {...resetProps} ref={ref}>\n {header && <div className={`${prefixCls}-header`}>{header}</div>}\n {childrenList}\n {footer && <div className={`${prefixCls}-footer`}>{footer}</div>}\n </div>\n );\n}\n\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 React, { useMemo } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface LoaderProps extends IProps, HTMLDivProps {\n size?: 'small' | 'default' | 'large';\n loading?: boolean;\n fullscreen?: boolean;\n color?: string;\n bgColor?: string;\n vertical?: boolean;\n tip?: React.ReactNode;\n indicator?: React.ReactNode;\n children?: any | React.ReactNode;\n}\n\nexport default (props: LoaderProps = {}) => {\n const {\n prefixCls = 'w-loader',\n className,\n size = 'default',\n loading = true,\n tip,\n vertical,\n color,\n bgColor,\n children,\n indicator,\n fullscreen = false,\n ...otherProps\n } = props;\n const cls = [prefixCls, className, size ? `${prefixCls}-${size}` : null].filter(Boolean).join(' ').trim();\n\n const indicatorView = useMemo(\n () => (\n <svg viewBox=\"25 25 50 50\">\n <circle cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" strokeWidth=\"5\" strokeMiterlimit=\"10\" />\n </svg>\n ),\n [],\n );\n\n const tipsView = useMemo(\n () => (\n <div\n className={[`${prefixCls}-tips`, fullscreen ? `${prefixCls}-fullscreen` : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n style={{ color, backgroundColor: bgColor }}\n >\n <div className={`${prefixCls}-tips-nested`}>\n {indicator || indicatorView}\n {tip && (\n <div\n className={[`${prefixCls}-text`, vertical ? `${prefixCls}-vertical` : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {tip}\n </div>\n )}\n </div>\n </div>\n ),\n [fullscreen, bgColor, prefixCls, vertical, tip],\n );\n\n return (\n <div className={cls} {...otherProps}>\n {(loading || fullscreen) && tipsView}\n {children &&\n React.cloneElement(\n children,\n Object.assign({}, children.props, {\n className: [`${prefixCls}-warp`, loading ? `${prefixCls}-blur` : null].filter(Boolean).join(' ').trim(),\n }),\n )}\n </div>\n );\n};\n","import React from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport Button from '@uiw/react-button';\nimport './style/index.less';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\n\nexport interface MessageProps extends IProps, Omit<HTMLDivProps, 'title'> {\n title?: React.ReactNode;\n icon?: IconProps['type'];\n type?: 'success' | 'warning' | 'info' | 'error';\n description?: React.ReactNode;\n showIcon?: boolean;\n isCloseButtonShown?: boolean;\n rounded?: boolean;\n onClose?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n}\n\nexport interface IMessageState {\n isOpen: boolean;\n}\n\nexport default class Message extends React.Component<MessageProps, IMessageState> {\n public static defaultProps: MessageProps = {\n prefixCls: 'w-message',\n rounded: true,\n isCloseButtonShown: false,\n };\n constructor(props: MessageProps) {\n super(props);\n this.state = {\n isOpen: true,\n };\n }\n handleClosed = (e: React.MouseEvent<HTMLButtonElement>) => {\n const { onClose } = this.props;\n this.setState({ isOpen: false });\n onClose && onClose(e);\n };\n renderIcon = () => {\n const { type, showIcon } = this.props;\n let icon = this.props.icon;\n if (!icon && showIcon) {\n switch (type) {\n case 'success':\n icon = 'circle-check';\n break;\n case 'warning':\n icon = 'warning';\n break;\n case 'info':\n icon = 'information';\n break;\n case 'error':\n icon = 'circle-close';\n break;\n default:\n break;\n }\n }\n return icon;\n };\n render() {\n const {\n prefixCls,\n className,\n type,\n title,\n description,\n showIcon,\n icon,\n rounded,\n isCloseButtonShown,\n ...elementProps\n } = this.props;\n const children = description || this.props.children;\n const cls = [\n prefixCls,\n className,\n `${prefixCls}-${type}`,\n rounded ? `${prefixCls}-rounded` : null,\n showIcon ? `${prefixCls}-icon` : null,\n showIcon ? `${prefixCls}${title ? '-title' : ''}${children ? '-description' : ''}` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const Child = (\n <div className={cls} {...elementProps}>\n {isCloseButtonShown && <Button basic onClick={this.handleClosed} icon=\"close\" type=\"light\" />}\n {showIcon && <Icon type={this.renderIcon()} />}\n <span className={`${prefixCls}-title`}>{title}</span>\n <span className={`${prefixCls}-description`}>{children}</span>\n </div>\n );\n if (!isCloseButtonShown) {\n return Child;\n }\n return (\n <CSSTransition in={this.state.isOpen} unmountOnExit timeout={300} classNames={prefixCls}>\n {Child}\n </CSSTransition>\n );\n }\n}\n","import React, { useEffect, useMemo, useState } from 'react';\nimport Input, { InputProps } from '@uiw/react-input';\nimport Popover, { PopoverProps } from '@uiw/react-popover';\nimport { IProps } from '@uiw/utils';\nimport Button from '@uiw/react-button';\nimport formatter from '@uiw/formatter';\nimport { DatePickerMonth, DatePickerYear, DatePickerCaption, DatePickerCaptionProps } from '@uiw/react-date-picker';\nimport './style/index.less';\n\nexport interface MonthPickerProps extends IProps, Omit<InputProps, 'value' | 'onChange'> {\n popoverProps?: PopoverProps;\n pickerCaptionProps?: DatePickerCaptionProps;\n value?: Date | string;\n format?: string;\n monthLabel?: string[];\n allowClear?: boolean;\n onChange?: (date?: Date, formatDate?: string) => void;\n}\n\nconst MONTH_LABEL = [\n '一月',\n '二月',\n '三月',\n '四月',\n '五月',\n '六月',\n '七月',\n '八月',\n '九月',\n '十月',\n '十一月',\n '十二月',\n];\n\nexport default function MonthPicker(props: MonthPickerProps) {\n const {\n prefixCls = 'w-monthpicker',\n format = 'YYYY/MM',\n onChange = () => {},\n className,\n popoverProps,\n pickerCaptionProps = {},\n allowClear = true,\n monthLabel = MONTH_LABEL,\n ...inputProps\n } = props;\n\n const [isOpen, setIsOpen] = useState(false);\n const [panelDate, setPanelDate] = useState(new Date());\n const [type, setType] = useState('month');\n const [date, setDate] = useState(props.value);\n\n useEffect(() => setDate(props.value), [props.value]);\n\n inputProps.value = useMemo(\n () => (typeof date === 'string' ? date : date ? formatter(format, date) : ''),\n [format, date],\n );\n\n if (allowClear && inputProps.value) {\n inputProps.addonAfter = (\n <Button\n className={`${prefixCls}-close-btn`}\n icon=\"close\"\n onClick={() => {\n setDate('');\n onChange && onChange();\n }}\n size={inputProps.size}\n basic\n type=\"light\"\n />\n );\n }\n\n function handleSelectedDate(type: 'setMonth' | 'setFullYear', num: number, paging?: boolean) {\n const curPanelDate = new Date(new Date(panelDate)[type](num));\n if (!paging) {\n setType('month');\n }\n const curDate = formatter(format, new Date(curPanelDate));\n setDate(curDate);\n setPanelDate(curPanelDate);\n onChange && onChange(curPanelDate, curDate);\n if (type === 'setMonth') {\n setIsOpen(false);\n }\n }\n\n return (\n <Popover\n trigger=\"focus\"\n placement=\"bottomLeft\"\n autoAdjustOverflow\n isOpen={isOpen}\n {...popoverProps}\n onVisibleChange={(open) => setIsOpen(open)}\n content={\n <div className={`${prefixCls}-popover`}>\n <DatePickerCaption\n panelDate={panelDate}\n monthLabel={monthLabel}\n {...pickerCaptionProps}\n onSelected={(captionType) => {\n if (/^(month|year)$/.test(captionType as string)) {\n setType(captionType);\n } else {\n const year = new Date(panelDate).getFullYear();\n const curPanelDate = new Date(\n new Date(panelDate).setFullYear(captionType === 'next' ? year + 1 : year - 1),\n );\n setPanelDate(curPanelDate);\n }\n }}\n />\n {type === 'month' && (\n <DatePickerMonth\n panelDate={panelDate}\n monthLabel={monthLabel}\n onSelected={(month, paging) => handleSelectedDate('setMonth', month, paging)}\n />\n )}\n {type === 'year' && (\n <DatePickerYear\n panelDate={panelDate}\n onSelected={(year, paging) => handleSelectedDate('setFullYear', year, paging)}\n />\n )}\n </div>\n }\n >\n <Input\n placeholder=\"请输入日期\"\n readOnly\n {...(inputProps as any)}\n className={[prefixCls, className].filter(Boolean).join(' ').trim()}\n />\n </Popover>\n );\n}\n","import React from 'react';\nimport Alert, { AlertProps } from '@uiw/react-alert';\nimport { IProps } from '@uiw/utils';\nimport { NotificationCreateProps } from './index';\n\nexport type Placement = 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';\n\nexport interface ContainerProps extends IProps {\n placement?: Placement;\n}\nexport interface ContainerState {\n placement?: Placement;\n notifys: ContainerNotifys;\n}\n\nexport type ContainerNotifys = {\n [placement: string]: {\n [key: string]: NotificationCreateProps;\n };\n};\n\nconst notifys: ContainerNotifys = {};\nconst timer: { [key: string]: any } = {};\n\nexport default class Container extends React.Component<ContainerProps, ContainerState> {\n public static defaultProps: ContainerProps = {\n prefixCls: 'w-notify',\n placement: 'topRight',\n };\n public state: ContainerState = {\n notifys: {},\n };\n public create(props: NotificationCreateProps) {\n const { placement, key } = props;\n if (!notifys[placement as Placement]) {\n notifys[placement as Placement] = {};\n }\n props.isOpen = false;\n notifys[placement as Placement][key as string] = props;\n if (props.duration) {\n timer[key as string] = setTimeout(() => {\n this.closed(key as string, placement);\n }, props.duration);\n }\n this.setState(\n {\n notifys,\n placement,\n },\n () => {\n notifys[placement as Placement][key as string].isOpen = true;\n this.setState({ notifys });\n },\n );\n }\n public closed(key: string, placement?: Placement) {\n if (!key || !placement || !notifys[placement][key]) {\n return;\n }\n notifys[placement][key].isOpen = false;\n const props: NotificationCreateProps = notifys[placement][key];\n this.setState({ notifys }, () => {\n clearTimeout(timer[key]);\n delete timer[key];\n delete notifys[placement][key];\n if (props && props.willUnmount) {\n props.willUnmount(props, notifys);\n }\n });\n }\n render() {\n const { prefixCls } = this.props;\n const { placement } = this.state;\n return (\n <React.Fragment>\n {placement &&\n Object.keys(this.state.notifys[placement]).map((key) => {\n const { description, isOpen, ...alertProps } = this.state.notifys[placement][key];\n if (alertProps.type === 'open') {\n delete alertProps.type;\n }\n return (\n <Alert\n className={prefixCls}\n key={key}\n useButton={false}\n width={320}\n {...(alertProps as AlertProps)}\n usePortal={false}\n hasBackdrop={false}\n isOpen={isOpen}\n content={description}\n />\n );\n })}\n </React.Fragment>\n );\n }\n}\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { AlertProps } from '@uiw/react-alert';\nimport { randomid } from '@uiw/utils';\nimport Container, { Placement, ContainerNotifys } from './Container';\nimport './style/index.less';\n\nexport interface NotificationCreateProps extends Omit<AlertProps, 'type'> {\n placement?: Placement;\n description?: React.ReactNode;\n type?: 'primary' | 'danger' | 'open' | 'success' | 'warning' | 'info' | 'error';\n duration?: number;\n key?: string;\n willUnmount?: (props: NotificationCreateProps, notifys: ContainerNotifys) => void;\n}\n\nexport type Notifys = { [key: string]: any };\nexport type NotifysDom = { [key: string]: HTMLDivElement };\n\nconst notifys: Notifys = {};\nconst notifysDom: NotifysDom = {};\n\nexport interface NotificationProps {\n (props: NotificationCreateProps, type: NotificationCreateProps['type']): void;\n [key: string]: () => void;\n}\n\nfunction NotificationCreate(props: NotificationCreateProps, type: NotificationCreateProps['type'] = 'open') {\n if (!props.placement) {\n props.placement = 'topRight';\n }\n props.type = type as NotificationCreateProps['type'];\n if (!props.icon && props.icon !== null) {\n switch (props.type) {\n case 'success':\n props.icon = 'circle-check';\n break;\n case 'warning':\n props.icon = 'warning';\n break;\n case 'info':\n props.icon = 'information';\n break;\n case 'error':\n props.icon = 'circle-close';\n break;\n default:\n break;\n }\n }\n switch (props.type) {\n case 'info':\n props.type = 'primary';\n break;\n case 'error':\n props.type = 'danger';\n break;\n default:\n break;\n }\n\n if (props.placement && !notifys[props.placement]) {\n const div = document.createElement('div');\n document.body.appendChild(div);\n div.className = ['w-notify-warpper', props.placement].filter(Boolean).join(' ').trim();\n notifysDom[props.placement] = div;\n notifys[props.placement] = ReactDOM.render(<Container />, div);\n }\n\n if (props.duration !== null) {\n props.duration = (props.duration || 4.5) * 1000;\n }\n\n if (notifys[props.placement]) {\n notifys[props.placement].create({\n ...props,\n duration: props.duration,\n key: randomid(),\n willUnmount(nprops: any, notifysChild: ContainerNotifys) {\n if (!nprops) return;\n nprops.onClose && nprops.onClose();\n const keys = Object.keys(notifysChild[props.placement as Placement]);\n if (keys.length === 0 && notifys[props.placement as Placement]) {\n delete notifys[props.placement as Placement];\n if (notifysDom[props.placement as Placement]) {\n document.body.removeChild(notifysDom[props.placement as Placement]);\n }\n }\n },\n });\n }\n}\n\n['open', 'success', 'warning', 'info', 'error'].forEach((type) => {\n (NotificationCreate as NotificationProps)[type] = (options: NotificationCreateProps = {}) => {\n return NotificationCreate(options, type as NotificationCreateProps['type']);\n };\n});\n\nexport interface NotificationApi {\n open(option: NotificationCreateProps): void;\n success(option: NotificationCreateProps): void;\n warning(option: NotificationCreateProps): void;\n info(option: NotificationCreateProps): void;\n error(option: NotificationCreateProps): void;\n}\n\nexport default NotificationCreate as unknown as NotificationApi;\n","/**\n * Returns a random text\n */\nexport function randomid(): string {\n return parseInt(String(Math.random() * 1e15), 10).toString(36);\n}\n","import React from 'react';\n\nexport default React.forwardRef<HTMLOptionElement, React.InputHTMLAttributes<HTMLOptionElement>>((props, ref) => (\n <option {...props} ref={ref} />\n));\n","import React from 'react';\n\nexport default React.forwardRef<HTMLOptGroupElement, React.InputHTMLAttributes<HTMLOptGroupElement>>((props, ref) => (\n <optgroup {...props} ref={ref} />\n));\n","import React from 'react';\nimport { IProps } from '@uiw/utils';\nimport Option from './Option';\nimport Group from './Group';\nimport './style/index.less';\n\nexport interface SelectProps extends IProps, Omit<React.SelectHTMLAttributes<HTMLSelectElement>, 'size'> {\n size?: 'large' | 'default' | 'small';\n}\n\nconst InternalSelect = (props: SelectProps, ref?: React.ForwardedRef<HTMLSelectElement>) => {\n const { prefixCls = 'w-select', className, size = 'default', ...other } = props;\n return (\n <select\n {...other}\n ref={ref}\n className={[prefixCls, className, size ? `${prefixCls}-${size}` : null].filter(Boolean).join(' ').trim()}\n />\n );\n};\n\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 React, { useEffect, useMemo, useState } from 'react';\nimport Select from '@uiw/react-select';\nimport { IProps, HTMLUlProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface PaginationProps extends IProps, Omit<HTMLUlProps, 'onChange'> {\n prefixCls?: string;\n alignment?: 'left' | 'center' | 'right';\n size?: 'default' | 'small';\n 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 <ul className={cls} style={{ ...style, textAlign: alignment }} {...other}>\n {initPageSoure.map((item: PaginationItemSourceData, idx) => {\n // eslint-disable-next-line jsx-a11y/anchor-is-valid\n let label = <a>{item.label}</a>;\n if (/^(prev|next)$/.test(item.type as string)) {\n // eslint-disable-next-line jsx-a11y/anchor-is-valid\n label = <a className={`arrow ${item.type}`} />;\n }\n return (\n <li\n className={[item.active ? 'active' : null, item.disabled ? 'disabled' : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n onClick={() => handleClick(item)}\n key={idx}\n >\n {label}\n </li>\n );\n })}\n {pageSizeOptions.length > 0 && (\n <li 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 </li>\n )}\n </ul>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport { IProps, noop } from '@uiw/utils';\nimport Input, { InputProps } from '@uiw/react-input';\nimport './style/input.less';\n\nexport interface PinCodeProps extends IProps {\n value?: string[];\n disabled?: boolean;\n onChange?: (value: string[]) => void;\n onBlur?: InputProps['onBlur'];\n onFocus?: InputProps['onFocus'];\n autoFocus?: boolean;\n size?: InputProps['size'];\n placeholder?: string;\n}\n\nfunction InternalPinCode(props: PinCodeProps = {}, ref: React.ForwardedRef<HTMLDivElement>) {\n const {\n prefixCls = 'w-pin-code',\n placeholder = '○',\n value = [],\n autoFocus,\n className,\n size = 'default',\n style,\n disabled,\n onChange = noop,\n onBlur = noop,\n onFocus = noop,\n ...otherProps\n } = props;\n const [input] = useState<{\n [key: string]: HTMLInputElement;\n }>({});\n const [placehold, setPlacehold] = useState(placeholder);\n const [values, setValues] = useState(value);\n const cls = [prefixCls, className, size ? `${prefixCls}-${size}` : null, disabled ? 'disabled' : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n\n function handleChange(e: React.ChangeEvent<HTMLInputElement>, idx: number) {\n let val = e.target.value;\n val = val.charAt(val.length - 1);\n const arr = [...values];\n if (Number(val) > -1 && val) {\n e.currentTarget.value = val;\n arr[idx] = val;\n if (input[idx + 1]) {\n input[idx + 1].focus();\n }\n setValues(arr);\n } else if (!val) {\n arr[idx] = '';\n setValues(arr);\n }\n }\n function handleKeyDown(e: React.KeyboardEvent<HTMLInputElement>, idx: number) {\n let val = e.currentTarget.value;\n const key = e.key.toLocaleLowerCase();\n if (!val && input[idx - 1] && /(backspace|delete)/.test(key)) {\n input[idx - 1].focus();\n }\n }\n useEffect(() => {\n if (values !== value) {\n onChange(values);\n }\n }, [values]);\n\n function handleBlur(event: React.FocusEvent<HTMLInputElement>) {\n setPlacehold(placeholder);\n onBlur(event);\n }\n function handleFocus(event: React.FocusEvent<HTMLInputElement>) {\n setPlacehold('');\n onFocus(event);\n }\n\n return (\n <div className={cls} style={style} {...otherProps} ref={ref}>\n {[...values].map((val, key) => {\n const inpProps: InputProps = {\n min: 0,\n type: 'text',\n inputMode: 'numeric',\n autoComplete: 'off',\n value: val,\n onChange: (e) => handleChange(e, key),\n onKeyDown: (e) => handleKeyDown(e, key),\n onBlur: (e) => handleBlur(e),\n onFocus: (e) => handleFocus(e),\n className: `${prefixCls}-inner`,\n placeholder: placehold,\n disabled,\n size,\n };\n if (autoFocus && key === 0) {\n inpProps.autoFocus = true;\n }\n const child = (\n <Input\n ref={(instance) => {\n if (instance) {\n input[key] = instance;\n }\n }}\n {...inpProps}\n key={key}\n />\n );\n return child;\n })}\n </div>\n );\n}\n\nexport default React.forwardRef<HTMLDivElement, PinCodeProps>(InternalPinCode);\n","import React from 'react';\nimport Icon, { IconProps } from '@uiw/react-icon';\n\nexport function IconProgress<T>(props: { type: IconProps<T>['type'] }): JSX.Element {\n return <Icon type={props.type} />;\n}\n","import React from 'react';\nimport { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport { IconProgress } from './utils';\nimport './style/index.less';\nimport './style/circle.less';\n\nexport type Status = 'success' | 'active' | 'exception';\n\ntype TagType = React.ComponentType | keyof JSX.IntrinsicElements;\nexport interface ProgressCircleProps<T extends TagType = 'span'> 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 TagType = 'span'> extends React.Component<ProgressCircleProps<T>> {\n public static defaultProps: ProgressCircleProps<'span'> = {\n prefixCls: 'w-progress',\n showText: true,\n percent: 0, // 百分比(必填)\n width: 126, // 圆圈进度条画布宽度\n strokeWidth: 6, // 进度条大小设置\n };\n relativeStrokeWidth(type: 'track' | 'bg' | undefined, elm: SVGPathElement) {\n const { strokeWidth, percent } = this.props;\n if (elm && elm.parentNode) {\n const { width } = (elm.parentNode as SVGAElement).getBoundingClientRect();\n const _strokeWidth: string = (((strokeWidth as number) / width) * 100).toFixed(1);\n const radius = parseInt((50 - parseFloat(_strokeWidth) / 2).toString(), 10);\n elm.setAttribute('stroke-width', _strokeWidth);\n elm.setAttribute(\n 'd',\n `M 50 50 m 0 -${radius} a ${radius} ${radius} 0 1 1 0 ${radius * 2} a ${radius} ${radius} 0 1 1 0 -${\n radius * 2\n }`,\n );\n if (type === 'track') {\n // 计算周长\n const perimeter = 2 * Math.PI * radius;\n elm.setAttribute(\n 'style',\n `stroke-dasharray:${perimeter}px,${perimeter}px;stroke-dashoffset:${\n (1 - (percent as number) / 100) * perimeter\n }px;transition: stroke-dashoffset 0.6s ease 0s, stroke 0.6s ease;`,\n );\n }\n }\n }\n render() {\n const { prefixCls, style, type, className, showText, percent, format, strokeWidth, width, status, ...resetProps } =\n this.props;\n const cls = [\n prefixCls,\n className,\n `${prefixCls}-circle`,\n showText ? `${prefixCls}-show-text` : null,\n status ? `${prefixCls}-status-${status}` : null,\n parseInt((percent as number).toString(), 10) >= 100 ? `${prefixCls}-status-success` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n let progressInfo;\n const progressStatus =\n parseInt((percent as number).toString(), 10) >= 100 && !('status' in this.props) ? 'success' : status;\n if (showText) {\n let percentView: React.ReactNode = `${percent}%`;\n if (progressStatus === 'exception') {\n percentView = <IconProgress type=\"close\" />;\n } else if (progressStatus === 'success') {\n percentView = <IconProgress type=\"check\" />;\n }\n progressInfo = (\n <span className={`${prefixCls}-text`} style={{ fontSize: (width as number) * 0.16 + 6 }}>\n {format ? format(percent as number) : percentView}\n </span>\n );\n }\n return (\n <div className={cls} style={style} {...resetProps}>\n <svg viewBox=\"0 0 100 100\" width={`${width}`}>\n <path ref={this.relativeStrokeWidth.bind(this, 'bg')} className={`${prefixCls}-trail`} fill=\"none\" />\n <path\n ref={this.relativeStrokeWidth.bind(this, 'track')}\n strokeLinecap=\"round\"\n className={`${prefixCls}-stroke`}\n fill=\"none\"\n />\n </svg>\n {progressInfo}\n </div>\n );\n }\n}\nexport { Circle };\n","import React from 'react';\nimport { IconProgress } from './utils';\nimport { ProgressCircleProps } from './Circle';\nimport './style/index.less';\nimport './style/line.less';\n\nexport interface ProgressLineProp<T> extends ProgressCircleProps<T> {}\n\nexport default class Line<T> extends React.Component<ProgressLineProp<T>> {\n public static defaultProps: ProgressLineProp<{}> = {\n prefixCls: 'w-progress',\n showText: true, // 是否显示进度条文字内容\n percent: 0, // 百分比(必填)\n width: 126, // 圆圈进度条画布宽度\n strokeWidth: 6, // 进度条大小设置\n };\n render() {\n const { prefixCls, style, className, showText, percent, format, strokeWidth, width, status, ...resetProps } =\n this.props;\n const cls = [\n prefixCls,\n className,\n `${prefixCls}-line`,\n showText ? `${prefixCls}-show-text` : null,\n status ? `${prefixCls}-status-${status}` : null,\n parseInt((percent as number).toString(), 10) >= 100 ? `${prefixCls}-status-success` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n let progressInfo;\n if (showText) {\n const progressStatus =\n parseInt((percent as number).toString(), 10) >= 100 && !('status' in this.props) ? 'success' : status;\n let percentView: React.ReactNode = `${percent}%`;\n if (progressStatus === 'exception') {\n percentView = <IconProgress type=\"circle-close\" />;\n } else if (progressStatus === 'success') {\n percentView = <IconProgress type=\"circle-check\" />;\n }\n progressInfo = <span className={`${prefixCls}-text`}>{format ? format(percent as number) : percentView}</span>;\n }\n const percentStyle = {\n width: `${percent}%`,\n height: strokeWidth,\n };\n return (\n <div className={cls} style={style} {...resetProps}>\n <div className={`${prefixCls}-bar`}>\n <div className={`${prefixCls}-inner`}>\n <div className={`${prefixCls}-bg`} style={percentStyle} />\n </div>\n </div>\n {progressInfo}\n </div>\n );\n }\n}\nexport { Line };\n","import Circle from './Circle';\nimport Line from './Line';\n\nexport * from './Circle';\nexport * from './Line';\n\nexport default {\n Line,\n Circle,\n};\n","import React, { useState, useMemo } from 'react';\nimport { IProps, HTMLDivProps, HTMLSpanProps, noop } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface RateProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n value?: number;\n readOnly?: boolean;\n allowHalf?: boolean;\n count?: number;\n color?: string;\n disabled?: boolean;\n character?: React.ReactNode;\n onChange?: (key: number) => void;\n onHoverChange?: (key: number) => void;\n}\n\nexport default function Rate(props: RateProps = {}) {\n const {\n prefixCls = 'w-rate',\n count = 5,\n value: defValue = 0,\n className,\n allowHalf,\n character = '★',\n readOnly = false,\n disabled,\n onChange = noop,\n onHoverChange = noop,\n color,\n ...other\n } = props;\n const [value, setValue] = useState(defValue);\n const [hoverCount, setHoverCount] = useState(-1);\n const cls = [prefixCls, className, disabled ? 'disabled' : null].filter(Boolean).join(' ').trim();\n const [prevValue, setPrevValue] = useState<number>();\n if (defValue !== prevValue) {\n setPrevValue(defValue);\n }\n\n useMemo(() => {\n if (value !== prevValue) {\n setValue(defValue);\n }\n }, [prevValue]);\n\n function onMouseLeave() {\n setHoverCount(-1);\n }\n\n function getValue(e: React.MouseEvent<HTMLElement>, key: number) {\n e.persist();\n let currentValue = key;\n const isLeft =\n e.clientX - e.currentTarget.getBoundingClientRect().left <= e.currentTarget.getBoundingClientRect().width / 2;\n if (allowHalf) {\n e.persist();\n currentValue = isLeft ? key + 0.5 : key + 1;\n } else {\n currentValue = key + 1;\n }\n return currentValue;\n }\n\n function onMouseMove(e: React.MouseEvent<HTMLElement>, key: number) {\n const currentValue = getValue(e, key);\n if (hoverCount !== currentValue) {\n setHoverCount(currentValue);\n onHoverChange(currentValue);\n }\n }\n function onClick(e: React.MouseEvent<HTMLElement>, key: number) {\n if (readOnly) return;\n const currentValue = getValue(e, key);\n setValue(currentValue);\n onChange(currentValue);\n }\n return (\n <div {...other} className={cls} onMouseLeave={() => onMouseLeave()}>\n {[...Array(count)].map((_, idx) => {\n const halfon =\n (value <= idx + 0.5 && Math.ceil(value) - 1 === idx && hoverCount === -1) || hoverCount === idx + 0.5;\n const activeCls = [\n `${prefixCls}-hight`,\n idx + 1 <= value && hoverCount === -1 ? 'star-on' : null,\n idx + 1 <= hoverCount ? 'hover-on' : null,\n halfon ? 'half-on' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const props: HTMLSpanProps = {};\n if (!readOnly) {\n props.onClick = (e) => onClick(e, idx);\n props.onMouseMove = (e) => onMouseMove(e, idx);\n }\n return (\n <span key={idx} {...props}>\n <span style={{ color }} className={activeCls}>\n {character}\n </span>\n <span className={`${prefixCls}-bg`}>{character}</span>\n </span>\n );\n })}\n </div>\n );\n}\n","import React, { useMemo } from 'react';\nimport { IProps, HTMLSpanProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface TagProps extends IProps, Omit<HTMLSpanProps, 'title'> {\n color?: string;\n disabled?: boolean;\n visible?: boolean;\n bordered?: boolean;\n light?: boolean;\n closable?: boolean;\n title?: React.ReactNode;\n onClose?: (e: React.MouseEvent<SVGSVGElement, MouseEvent>) => void;\n}\n\nexport default (props: TagProps = {}) => {\n const {\n prefixCls = 'w-tag',\n className,\n style,\n title = '',\n children,\n visible = true,\n color = '#6E6E6E',\n disabled = false,\n bordered = true,\n closable,\n light = false,\n onClose,\n ...other\n } = props;\n const cls = [prefixCls, className, light ? `${prefixCls}-light` : null, disabled ? 'disabled' : null]\n .filter(Boolean)\n .join(' ')\n .trim();\n const styl: React.CSSProperties = { ...style };\n if (!light) {\n styl.color = '#fff';\n styl.backgroundColor = color;\n } else {\n styl.color = color;\n styl.borderColor = color;\n if (bordered && light) {\n styl.boxShadow = `inset 0 0 0 1px ${color}`;\n }\n }\n if (!visible) {\n return null;\n }\n\n return (\n <span className={cls} style={styl} {...other}>\n {title || children}\n {!disabled && closable ? (\n <svg onClick={onClose} className={`${prefixCls}-close`} width=\"15\" height=\"15\" viewBox=\"0 0 16 16\">\n <path d=\"M9.41 8l2.29-2.29c.19-.18.3-.43.3-.71a1.003 1.003 0 0 0-1.71-.71L8 6.59l-2.29-2.3a1.003 1.003 0 0 0-1.42 1.42L6.59 8 4.3 10.29c-.19.18-.3.43-.3.71a1.003 1.003 0 0 0 1.71.71L8 9.41l2.29 2.29c.18.19.43.3.71.3a1.003 1.003 0 0 0 .71-1.71L9.41 8z\" />\n </svg>\n ) : null}\n </span>\n );\n};\n","import React, { useMemo } from 'react';\nimport Dropdown, { DropdownProps } from '@uiw/react-dropdown';\nimport Icon from '@uiw/react-icon';\nimport Menu from '@uiw/react-menu';\nimport Input from '@uiw/react-input';\nimport Tag, { TagProps } from '@uiw/react-tag';\nimport { IProps } from '@uiw/utils';\nimport { useState } from 'react';\nimport { useRef } from 'react';\nimport { useEffect } from 'react';\nimport './style/index.less';\n\ntype ValueType = string | number;\n\nconst TagSize = { large: 25, default: 20, small: 17 };\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 const tagContentRef = useRef<HTMLDivElement>(null);\n const [tagClientWidth, setTagClientWidth] = React.useState(180);\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 React.useEffect(() => {\n if (tagContentRef.current?.clientWidth) {\n setTagClientWidth(tagContentRef.current?.clientWidth);\n }\n }, [tagContentRef.current]);\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 <div\n className={[`${prefixCls}-inner`, `${prefixCls}-search-${showSearch}`, `${prefixCls}-${size}`]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n <div\n ref={tagContentRef}\n className={[`${prefixCls}-tag-content`, disabled && `${prefixCls}-tag-content-disabled`]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\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 <span\n style={{\n maxWidth: tagClientWidth - 63,\n textOverflow: 'ellipsis',\n overflow: 'auto',\n }}\n >\n {item.label}\n </span>\n </Tag>\n );\n })}\n {!!omitTagCount && (\n <Tag style={{ height: 20, margin: 1, display: 'flex', alignItems: 'center' }} disabled={true}>\n +{omitTagCount} …{' '}\n </Tag>\n )}\n <Input\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 </div>\n {!disabled && (selectIconType === 'close' || (selectIconType === 'loading' && loading)) && (\n <Icon\n className={`${prefixCls}-multiple-colse`}\n type={selectIconType}\n spin={loading && selectIconType === 'loading'}\n onClick={resetSelectedValue}\n />\n )}\n </div>\n ) : (\n <Input\n className={`${prefixCls}-search-${showSearch}`}\n readOnly={!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 <Icon\n type={selectIconType}\n className={`${prefixCls}-singe-colse`}\n color=\"#393e48\"\n spin={loading && selectIconType === 'loading'}\n onClick={resetSelectedValue}\n />\n )\n }\n />\n )}\n </div>\n </Dropdown>\n );\n}\n","import React, { useEffect, useRef, useState } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Step, { StepProps } from './Step';\n\nexport interface StepsProps<T> extends IProps, HTMLDivProps {\n status?: StepProps['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 <div className={classString} style={style} {...resetProps} ref={warpRef}>\n {React.Children.map(children, (child: any, index) => {\n const childProps = {\n stepNumber: `${index + 1}`,\n prefixCls,\n progressDot,\n ...child.props,\n };\n if (index !== lastIndex && direction !== 'vertical') {\n childProps.itemWidth = `${100 / lastIndex}%`;\n childProps.adjustMarginRight = -Math.round(lastStepOffsetWidth / lastIndex + 1);\n }\n\n if (progressDot && direction !== 'vertical') {\n childProps.itemWidth = `${100 / filteredChildren.length}%`;\n childProps.adjustMarginRight = 0;\n }\n // 错误前面\n if (status === 'error' && index === (current as number) - 1) {\n childProps.className = `${prefixCls}-next-error`;\n }\n if (!child.props.status) {\n if (index === current!) {\n childProps.status = status;\n } else if (index < (current as number)) {\n childProps.status = 'finish';\n } else {\n childProps.status = 'wait';\n }\n }\n return React.cloneElement(child, childProps);\n })}\n </div>\n );\n}\n\ntype Steps = typeof InternalSteps & {\n Step: typeof Step;\n};\n\n(InternalSteps as Steps).Step = Step;\n\nexport default InternalSteps as Steps;\n","import React, { CSSProperties } from 'react';\nimport Icon, { IconProps, IconsName } from '@uiw/react-icon';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface StepProps extends IProps, Omit<HTMLDivProps, 'title'> {\n title?: React.ReactNode;\n description?: React.ReactNode;\n status?: 'wait' | 'process' | 'finish' | 'error' | 'success';\n progressDot?: boolean;\n itemWidth?: number;\n stepNumber?: string;\n adjustMarginRight?: number;\n icon?: IconProps['type'];\n}\n\nexport default function Step(props: StepProps) {\n const {\n prefixCls = 'w-steps',\n className,\n style,\n status,\n itemWidth,\n icon,\n adjustMarginRight,\n stepNumber,\n title,\n description,\n progressDot,\n ...restProps\n } = props;\n const classString = [\n `${prefixCls}-item`,\n `${prefixCls}-item-${status}`,\n className,\n icon ? `${prefixCls}-custom` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim();\n const stepItemStyle: CSSProperties = { ...style };\n const stepItemDotStyle: CSSProperties = {};\n if (itemWidth) {\n stepItemStyle.width = itemWidth;\n }\n if (adjustMarginRight) {\n stepItemStyle.marginRight = adjustMarginRight;\n if (progressDot) {\n stepItemDotStyle.paddingRight = Math.abs(adjustMarginRight);\n }\n }\n let iconNode = null;\n if (progressDot && !icon) {\n iconNode = <span className={`${prefixCls}-dot`} />;\n } else if (icon && typeof icon !== 'string') {\n iconNode = <span className={`${prefixCls}-icon`}>{icon}</span>;\n } else if ((icon && typeof icon === 'string') || status === 'finish' || status === 'error') {\n iconNode = (\n <Icon\n type={\n [\n icon && typeof icon === 'string' ? `${icon}` : null,\n !icon && status === 'finish' ? 'check' : null,\n !icon && status === 'error' ? 'close' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim() as IconsName | null\n }\n />\n );\n } else {\n iconNode = <span className={`${prefixCls}-icon`}>{stepNumber}</span>;\n }\n return (\n <div {...restProps} className={classString} style={stepItemStyle}>\n <div className={`${prefixCls}-item-tail`} style={stepItemDotStyle}>\n <i style={{ paddingRight: '100%' }} />\n </div>\n <div className={`${prefixCls}-item-head`}>\n <div className={[`${prefixCls}-item-inner`, !!icon && 'is-icon'].filter(Boolean).join(' ').trim()}>\n {iconNode}\n </div>\n </div>\n <div className={[`${prefixCls}-item-main`, !!icon && 'is-icon-main'].filter(Boolean).join(' ').trim()}>\n <div className={`${prefixCls}-item-title`}>{title}</div>\n {description && <div className={`${prefixCls}-item-description`}>{description}</div>}\n </div>\n </div>\n );\n}\n","import Steps from './Steps';\n\nexport * from './Steps';\nexport * from './Step';\n\nexport default Steps;\n","import React from 'react';\nimport { HTMLDivProps } from '@uiw/utils';\nimport { SliderProps, SliderMarks } from './index';\n\ninterface TooltipProps extends HTMLDivProps {\n prefixCls: string;\n data: number[];\n step: number;\n min: number;\n vertical: boolean;\n marks: SliderProps['marks'];\n markRender: (stepValue: number, mark?: SliderMarks) => React.ReactNode;\n}\n\nexport default function Dots(props: TooltipProps) {\n const { prefixCls, data, step, min, vertical, marks, markRender } = props;\n return (\n <div className={`${prefixCls}-dots`}>\n {data.map((val, idx) => {\n const stepValue = idx * step + min;\n return (\n <div\n key={idx}\n style={{\n [vertical ? 'top' : 'left']: `${val}%`,\n }}\n className={[`${prefixCls}-mark`, marks && marks !== true && !marks[stepValue] ? 'no-marks' : null]\n .filter(Boolean)\n .join(' ')\n .trim()}\n >\n {marks === true && markRender && markRender(stepValue)}\n {marks !== true && marks && marks[stepValue] && markRender && markRender(stepValue, marks[stepValue])}\n </div>\n );\n })}\n </div>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Dots from './Dots';\nimport './style/index.less';\n\nexport type SliderMarks = {\n style?: React.CSSProperties;\n label?: React.ReactNode;\n};\n\nexport interface SliderProps extends IProps, Omit<HTMLDivProps, 'onChange'> {\n value?: number | number[];\n min?: number;\n max?: number;\n marks?: boolean | Record<number, SliderMarks>;\n dots?: boolean;\n range?: boolean;\n vertical?: boolean;\n step?: number;\n disabled?: boolean;\n tooltip?: boolean;\n progress?: boolean | string;\n renderMarks?: (value: number) => JSX.Element;\n onChange?: (value: number | number[]) => void;\n onClick?: (e: React.MouseEvent<HTMLElement>) => void;\n}\n\nexport default function Slider(props: SliderProps) {\n const {\n prefixCls = 'w-slider',\n value = 0,\n min = 0,\n max = 100,\n dots = false,\n step = 1,\n disabled = false,\n progress = true,\n tooltip = false,\n className,\n marks,\n renderMarks,\n vertical,\n onChange,\n ...other\n } = props;\n\n const bar = React.useRef<HTMLDivElement>(null);\n const slider = React.useRef<HTMLDivElement>(null);\n const indexBar = React.useRef<number>();\n const startX = React.useRef<number>();\n const curValue = React.useRef<number | number[]>();\n const barWidth = React.useRef<number>();\n const barOffsetLeft = React.useRef<number>();\n const move = React.useRef<boolean>();\n const [arrValue, setArrValue] = useState(Array.isArray(value) ? value : [value]);\n\n useEffect(() => setArrValue(Array.isArray(value) ? value : [value]), [value]);\n\n other.onClick = (evn: React.MouseEvent<HTMLElement>) => {\n if (move.current !== undefined) {\n return;\n }\n const markOffset = slider.current!.getBoundingClientRect();\n const vals = getWidthToValue(evn[vertical ? 'clientY' : 'clientX'] - markOffset[vertical ? 'y' : 'x']);\n const curr = getRangeValue(vals);\n handleChange(curr);\n };\n\n function getRangeValue(val: number | number[]) {\n if (!Array.isArray(value)) {\n return Array.isArray(val) ? val : [val];\n }\n const newData = [...arrValue];\n const val1 = newData[0];\n const val2 = newData[1];\n if ((val1 < val2 && val1 > val) || (val1 > val2 && val1 < val)) {\n newData[0] = val as number;\n }\n if ((val1 < val2 && val2 < val) || (val1 > val2 && val2 > val)) {\n newData[1] = val as number;\n }\n\n if (val1 > val && val2 < val) {\n const half = val2 + (val1 - val2) / 2;\n if (half >= val) {\n newData[1] = val as number;\n }\n if (half < val) {\n newData[0] = val as number;\n }\n }\n if (val2 > val && val1 < val) {\n const half = val1 + (val2 - val1) / 2;\n if (half >= val) {\n newData[0] = val as number;\n }\n if (half < val) {\n newData[1] = val as number;\n }\n }\n return newData;\n }\n\n function handleChange(val: number[]) {\n setArrValue([...val]);\n onChange && onChange(arrValue.length === 1 ? val[0] : val);\n }\n\n function getWidthToValue(width: number) {\n const equal = (max - min) / step;\n let percent = 0;\n if (slider.current) {\n percent = (width / slider.current[vertical ? 'clientHeight' : 'clientWidth']) * 100;\n }\n\n if (percent <= 0) {\n percent = 0;\n }\n if (percent >= 100) {\n percent = 100;\n }\n\n const num = equal * (percent / 100) + 0.5;\n const numFloor = Math.floor(num);\n const vals = numFloor * step + min;\n return vals;\n }\n\n function onHandleBtnDown(idx: number, env: React.MouseEvent<HTMLElement>) {\n if (disabled) {\n return;\n }\n indexBar.current = idx;\n move.current = true;\n startX.current = env[vertical ? 'clientY' : 'clientX'];\n if (bar.current) {\n barWidth.current = bar.current[vertical ? 'clientHeight' : 'clientWidth'];\n barOffsetLeft.current = bar.current[vertical ? 'offsetTop' : 'offsetLeft'];\n }\n const vals = [...arrValue];\n if (Array.isArray(value)) {\n barWidth.current =\n (indexBar.current === 1 && vals[1] > vals[0]) || (indexBar.current !== 1 && vals[0] > vals[1])\n ? barWidth.current! + barOffsetLeft.current!\n : barOffsetLeft.current;\n }\n window.addEventListener('mousemove', onDragging);\n window.addEventListener('mouseup', onDragEnd);\n }\n function onDragging(env: MouseEvent | React.MouseEvent<HTMLButtonElement, MouseEvent>) {\n if (!move.current) {\n return;\n }\n const vals = [...arrValue];\n const valueToWidth = getWidthToValue(env[vertical ? 'clientY' : 'clientX'] - startX.current! + barWidth.current!);\n if (valueToWidth !== curValue.current) {\n vals[indexBar.current!] = valueToWidth;\n const barStyl = getStyle(vals);\n if (bar.current) {\n bar.current.style[vertical ? 'top' : 'left'] = barStyl.left;\n bar.current.style[vertical ? 'bottom' : 'right'] = barStyl.right;\n }\n handleChange(vals);\n curValue.current = valueToWidth;\n }\n }\n function onDragEnd() {\n move.current = undefined;\n window.removeEventListener('mousemove', onDragging, false);\n window.removeEventListener('mouseup', onDragEnd, false);\n }\n\n const stepArray = () => {\n const equal = (max - min) / step;\n const stepWidth = (100 * step) / (max - min);\n const result = [0];\n for (let i = 1; i < equal; i += 1) {\n result.push(i * stepWidth);\n }\n result.push(100);\n return result;\n };\n function getValueToPercent(vals: number) {\n return ((vals - min) * 100) / (max - min);\n }\n\n function getStyle(val?: number[]) {\n val = val || arrValue;\n const barStyl = { left: '0%', right: '100%' };\n if (!Array.isArray(value)) {\n barStyl.right = `${100 - getValueToPercent(val[0])}%`;\n } else {\n const leftValue = val[0] > val[1] ? val[1] : val[0];\n const rightValue = val[0] > val[1] ? val[0] : val[1];\n barStyl.left = `${getValueToPercent(leftValue)}%`;\n barStyl.right = `${100 - getValueToPercent(rightValue)}%`;\n }\n return barStyl;\n }\n\n function getLabelValue(val: number) {\n if (marks && marks !== true && marks[val] && marks[val].label) {\n return marks[val].label;\n } else if (marks && marks !== true && marks[val] && typeof marks[val] === 'string') {\n return marks[val];\n } else if (renderMarks && typeof renderMarks === 'function' && renderMarks(val)) {\n return renderMarks(val);\n }\n return val;\n }\n\n const barStyl = getStyle();\n if (disabled) {\n delete other.onClick;\n }\n return (\n <div\n ref={slider}\n className={[\n prefixCls,\n className,\n disabled ? 'disabled' : null,\n marks ? `${prefixCls}-with-marks` : null,\n vertical ? `${prefixCls}-vertical` : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n {...other}\n >\n <div\n ref={bar}\n className={`${prefixCls}-bar`}\n style={{\n [vertical ? 'top' : 'left']: barStyl.left,\n [vertical ? 'bottom' : 'right']: barStyl.right,\n ...(progress !== true ? { backgroundColor: progress || 'initial' } : {}),\n }}\n />\n {[...arrValue].map((item, idx) => {\n const lleftPostion = getValueToPercent(item);\n return (\n <div\n key={idx}\n className={`${prefixCls}-handle`}\n onMouseDown={(evn) => onHandleBtnDown(idx, evn)}\n style={{ [vertical ? 'top' : 'left']: `${lleftPostion}%` }}\n >\n {(tooltip || tooltip === false) && (\n <div className={[`${prefixCls}-tooltip`, tooltip ? 'open' : null].filter(Boolean).join(' ').trim()}>\n {getLabelValue(item)}\n </div>\n )}\n </div>\n );\n })}\n {dots && (\n <Dots\n prefixCls={prefixCls}\n min={min}\n step={step}\n marks={marks}\n vertical={!!vertical}\n data={stepArray()}\n markRender={(stepValue, mark = {}) => {\n if (!mark) {\n return <div> {getLabelValue(stepValue)} </div>;\n }\n const other = typeof mark === 'object' ? mark : {};\n delete other.label;\n return <div {...other}> {getLabelValue(stepValue)} </div>;\n }}\n />\n )}\n </div>\n );\n}\n","import React from 'react';\nimport { RadioAbstract, RadioAbstractProps } from '@uiw/react-radio';\nimport './style/index.less';\n\nexport interface SwitchProps extends RadioAbstractProps {}\n\nexport default React.forwardRef<HTMLInputElement, SwitchProps>((props, ref) => {\n const { prefixCls = 'w-switch', ...other } = props;\n return <RadioAbstract prefixCls={prefixCls} {...{ ...other, type: 'checkbox' }} ref={ref} />;\n});\n","import { 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","import React, { Component } from 'react';\nimport { TableColumns, TableProps, LocationWidth } from './';\nimport { locationFixed } from './util';\n\ninterface ThComponentProps<T> {\n colNum: number;\n rightNum: number;\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.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, rightNum, 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 const rightCls = rightNum === 1 ? `${prefixCls}-fixed-right-first` : '';\n cls = prefixCls + '-fixed-right ' + rightCls;\n } else {\n cls = prefixCls + '-fixed-true';\n }\n }\n return (\n <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 onClick={(evn) => onCellHead?.(item, colNum, rowNum!, evn)}\n >\n {titleNode}\n </th>\n );\n }\n}\n","import React from 'react';\nimport { IProps, noop } from '@uiw/utils';\nimport { TableProps, TableColumns, LocationWidth } from './';\nimport './style/index.less';\nimport ThComponentProps from './ThComponent';\n\nexport interface TheadProps<T extends { [key: string]: V }, V = any> extends IProps {\n data?: TableColumns<T>[][];\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 <thead 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 <span className={ellipsis ? `${thProps.className || ''} ${prefixCls}-ellipsis` : undefined}>\n {typeof title === 'function' ? title(item, colNum, rowNum!) : title}\n </span>\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 rightNum={rightFixedNum}\n item={item}\n key={colNum}\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 </thead>\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 } from 'react';\nimport Icon from '@uiw/react-icon';\nimport { LocationWidth, TableColumns, TableProps } from './';\nimport './style/index.less';\nimport { noop } from '@uiw/utils';\nimport { locationFixed } 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 // 层级\n hierarchy: number;\n childrenColumnName: string;\n locationWidth: { [key: string]: LocationWidth };\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 } = props;\n const [isOpacity, setIsOpacity] = useState(false);\n const [childrenIndex, setChildrenIndex] = useState(0);\n const [expandIndex, setExpandIndex] = useState<Array<T[keyof T] | number>>([]);\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 const IconDom = useMemo(() => {\n return (key: T[keyof T] | number, isOpacity: boolean) => {\n const flag = expandIndex.includes(key);\n return (\n <Icon\n type={flag ? 'minus-square-o' : 'plus-square-o'}\n style={{\n marginRight: 10,\n opacity: isOpacity ? 1 : 0,\n marginLeft: hierarchy * indentSize,\n float: 'left',\n marginTop: 3.24,\n }}\n onClick={() => {\n setExpandIndex(flag ? expandIndex.filter((it) => it !== key) : [...expandIndex, key]);\n }}\n />\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 let rightFixedNum = 0;\n return (\n <React.Fragment key={rowNum}>\n <tr key={key}>\n {keys!.map((keyName, colNum) => {\n let objs: React.TdHTMLAttributes<HTMLTableDataCellElement> = {\n children: trData[keyName.key!],\n };\n if (render[keyName.key!]) {\n const child = render[keyName.key!](trData[keyName.key!], keyName.key, trData, rowNum, colNum);\n if (React.isValidElement(child)) {\n objs.children = child;\n } else {\n if (child.props) {\n objs = { ...child.props, children: objs.children };\n if (child.props.rowSpan === 0 || child.props.colSpan === 0) return null;\n }\n if (child.children) {\n objs.children = child.children;\n }\n }\n }\n const isHasChildren = Array.isArray(trData[childrenColumnName]);\n if (colNum === childrenIndex && (isOpacity || hierarchy || isHasChildren)) {\n objs.children = (\n <>\n {IconDom(key, isHasChildren)}\n <span style={{ paddingLeft: hierarchy * indentSize }}></span>\n {objs.children}\n </>\n );\n }\n if (keyName.fixed) {\n if (keyName.fixed === 'right') {\n rightFixedNum = rightFixedNum + 1;\n const cls = rightFixedNum === 1 ? `${prefixCls}-fixed-right-first` : '';\n objs.className = `${prefixCls}-fixed-right ${cls}`;\n } else {\n objs.className = `${prefixCls}-fixed-true`;\n }\n }\n return (\n <td\n {...objs}\n style={\n keyName.fixed\n ? { ...locationFixed(keyName.fixed!, locationWidth, `${getIndex(keyName.key || 'undefined')}`) }\n : {}\n }\n children={\n <span className={ellipsis && ellipsis[keyName.key!] ? `${prefixCls}-ellipsis` : undefined}>\n {objs.children}\n </span>\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 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 Icon from '@uiw/react-icon';\nimport Thead from './Thead';\nimport { getLevelItems, getAllColumnsKeys } from './util';\nimport ExpandableComponent from './Expandable';\nimport TableTr from './TableTr';\nimport './style/index.less';\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) => void;\n // 控制树形结构每一层的缩进宽度\n indentSize?: number;\n // 指定树形结构的列名\n childrenColumnName?: string;\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?: (text: string, keyName: string, rowData: T, rowNumber: number, columnNumber: number) => React.ReactNode;\n style?: React.CSSProperties;\n align?: 'left' | 'center' | 'right';\n className?: string;\n fixed?: boolean | '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}\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 ...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 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 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 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 ? <Icon type=\"minus-square-o\" /> : <Icon type=\"plus-square-o\" />;\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.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 <div className={cls} {...other} style={{ ...other.style, ...style.div }}>\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 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 onCell={onCell}\n hierarchy={0}\n isExpandedDom={isExpandedDom}\n indentSize={typeof expandable?.indentSize === 'number' ? expandable?.indentSize : 16}\n childrenColumnName={expandable?.childrenColumnName || 'children'}\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 </div>\n {footer && <div className={`${prefixCls}-footer`}>{footer}</div>}\n </React.Fragment>\n );\n}\n","import React, { useEffect, useState, useRef, useCallback } from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\nimport Pane from './Pane';\nimport './style/index.less';\nimport Popover from '@uiw/react-popover';\n\nexport * from './Pane';\n\nTabs.Pane = Pane;\n\nlet labelWidth: number = 0;\nexport interface TabsProps extends IProps, HTMLDivProps {\n prefixCls?: string;\n activeKey?: string;\n type?: 'default' | 'line' | 'card';\n children?: React.ReactNode;\n onTabClick?: (key: string, item: React.ReactElement, e: React.MouseEvent) => void;\n}\n\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 const cls = [prefixCls, className, type ? `${prefixCls}-${type}` : null].filter(Boolean).join(' ').trim();\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) => {\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, key: number, itemKey: React.Key | null, activeKey) => {\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 === activeKey) {\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 (flowNav.displayStart > 0 || flowNav.displayEnd > 0) {\n if (curWidth < flowNav.displayStart || curWidth > flowNav.displayEnd) {\n hiddenNav.push(item.index);\n }\n }\n });\n hiddenNavSet(hiddenNav);\n }\n };\n\n useEffect(() => setActiveKey(props?.activeKey || ''), [props.activeKey]);\n useEffect(() => calcSlideStyle(), [activeKey]);\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 <div className={cls} {...elementProps}>\n <div style={{ display: 'flex' }}>\n <div style={{ overflow: 'hidden' }}>\n <div className={`${prefixCls}-bar`} ref={divContentRef}>\n <div className={`${prefixCls}-nav`} style={{ width: 'max-content' }}>\n {renderNav(children)}\n <div style={slideStyle} className={`${prefixCls}-slide`} />\n </div>\n </div>\n </div>\n {hiddenNav.length > 0 && (\n <Popover\n trigger=\"click\"\n placement=\"bottomRight\"\n visibleArrow={false}\n content={\n <div className={`${prefixCls}-nav-hidden`}>\n {renderNav(hiddenNav.map((idx) => (children as Array<React.ReactElement>)[idx]))}\n </div>\n }\n >\n <div onClick={showHideenNav} className={`${prefixCls}-flow-content`}>\n <span>…</span>\n </div>\n </Popover>\n )}\n </div>\n {React.Children.map(children, (item: any) => {\n if (!item || activeKey !== item.key) {\n return null;\n }\n return React.cloneElement(item, Object.assign({}, item.props, {}));\n })}\n </div>\n );\n\n 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: [\n `${prefixCls}-item`,\n item.key === activeKey ? 'active' : null,\n item.props.disabled ? 'disabled' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim(),\n children: item.props.label,\n };\n if (!item.props.disabled) {\n divProps.onClick = (e: React.MouseEvent) => {\n setActiveKey(item.key as string);\n onTabClick && onTabClick(item.key as string, item, e);\n calcSlideStyle();\n };\n }\n return <div key={key} ref={(ref) => divNavRef(ref, key, item.key, activeKey)} {...divProps} />;\n });\n }\n}\n","import React from 'react';\nimport { IProps, HTMLDivProps } from '@uiw/utils';\n\nexport interface TabsPaneProps extends IProps, HTMLDivProps {\n label?: React.ReactNode;\n disabled?: boolean;\n}\n\nexport default (props: TabsPaneProps = {}) => {\n const { prefixCls = 'w-tabs-pane', className, label: _, ...resetProps } = props;\n return <div className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...resetProps} />;\n};\n","import React from 'react';\nimport { IProps, HTMLTextProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface TextareaProps extends IProps, HTMLTextProps {}\n\nexport default React.forwardRef<HTMLTextAreaElement, TextareaProps>((props, ref) => {\n const { prefixCls = 'w-textarea', className, ...restProps } = props;\n return (\n <textarea className={[prefixCls, className].filter(Boolean).join(' ').trim()} {...restProps} ref={ref}>\n {props.children}\n </textarea>\n );\n});\n","import React from 'react';\nimport OverlayTrigger, { OverlayTriggerProps } from '@uiw/react-overlay-trigger';\nimport { IProps } from '@uiw/utils';\nimport './style/index.less';\n\nexport interface TooltipProps extends IProps, OverlayTriggerProps {\n visibleArrow?: boolean;\n content?: React.ReactNode;\n}\n\nexport default (props: TooltipProps = {}) => {\n const {\n prefixCls = 'w-tooltip',\n className,\n placement = 'top',\n isOpen = false,\n trigger,\n delay,\n usePortal = true,\n visibleArrow = true,\n onVisibleChange,\n ...other\n } = props;\n const cls = [prefixCls, className, !visibleArrow ? 'no-arrow' : null].filter(Boolean).join(' ').trim();\n return (\n <OverlayTrigger\n usePortal={usePortal}\n isOpen={isOpen}\n trigger={trigger}\n delay={delay}\n onVisibleChange={onVisibleChange}\n placement={placement}\n {...other}\n overlay={\n <div className={cls}>\n {visibleArrow && <div className={`${prefixCls}-arrow`} />}\n <div className={`${prefixCls}-inner`}>{props.content}</div>\n </div>\n }\n >\n {typeof props.children === 'object' ? props.children : <span>{props.children}</span>}\n </OverlayTrigger>\n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport Icon, { IconProps } from '@uiw/react-icon';\nimport { IProps, noop } from '@uiw/utils';\nimport { TreeData, TreeProps, getChildKeys } from './';\n\ninterface TreeNodeIconProps {\n isOpen: boolean;\n noChild: boolean;\n openKeys: TreeNodeProps['openKeys'];\n selectedKeys: TreeNodeProps['selectedKeys'];\n}\n\ninterface 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 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 <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 <ul\n ref={node}\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 <div className={`${prefixCls}-label`}>\n <span\n style={{ display: noChild ? 'none' : 'auto' }}\n className={`${prefixCls}-switcher`}\n onClick={(evn) => onItemClick(item, evn)}\n >\n <Icon\n type={iconItem || 'caret-right'}\n className={[\n typeof icon === 'function' ? `${prefixCls}-switcher-noop` : null,\n noChild ? 'no-child' : null,\n !iconAnimation ? 'no-animation' : null,\n itemIsOpen ? 'open' : null,\n ]\n .filter(Boolean)\n .join(' ')\n .trim()}\n />\n </span>\n <div\n onClick={(evn) => disabledObj.onClick?.(item, evn)}\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 </div>\n </div>\n {item.children && (\n <TreeNode\n {...other}\n {...{\n prefixCls,\n icon,\n iconAnimation,\n isSelected,\n openKeys,\n selectedKeys,\n onItemClick,\n onItemSelected,\n renderTitle,\n }}\n prefixCls={prefixCls}\n data={item.children}\n level={level + 1}\n parent={item}\n />\n )}\n </li>\n );\n })}\n </ul>\n </CSSTransition>\n );\n}\n","import React, { useEffect, useState } from 'react';\nimport { IconProps } from '@uiw/react-icon';\nimport { IProps, HTMLDivProps, noop } from '@uiw/utils';\nimport TreeNode from './TreeNode';\nimport './style/index.less';\n\nexport type TreeRenderTitleNode = {\n selected?: boolean;\n noChild?: boolean;\n isHalfChecked?: boolean;\n openKeys?: TreeProps['openKeys'];\n selectedKeys?: TreeProps['selectedKeys'];\n 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 setCurOpenKeys(openKeys);\n }, [JSON.stringify(openKeys)]);\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 <div className={cls} {...elementProps}>\n <TreeNode\n {...{\n icon,\n iconAnimation,\n isSelected,\n openKeys: curOpenKeys,\n selectedKeys: curSelectedKeys,\n prefixCls,\n renderTitle,\n }}\n onItemClick={onItemClick}\n onItemSelected={onItemSelected}\n data={data}\n level={1}\n />\n </div>\n );\n}\n","import React, { Fragment } from 'react';\nimport Tree, { TreeProps, TreeRenderTitleNode, TreeData } from '@uiw/react-tree';\nimport Checkbox, { CheckboxProps } from '@uiw/react-checkbox';\nimport './style/index.less';\n\nexport interface TreeCheckedProps extends TreeProps {}\n\nexport default function TreeChecked({ prefixCls = 'w-treechecked', ...props }: TreeCheckedProps): JSX.Element {\n props.className = [prefixCls, props.className].filter(Boolean).join(' ').trim();\n props.checkStrictly = true;\n props.isSelected = false;\n props.multiple = true;\n return (\n <Tree\n renderTitle={(item: TreeData, node: TreeRenderTitleNode) => {\n const checkedProps: CheckboxProps = {};\n if (node.isHalfChecked) {\n checkedProps.indeterminate = true;\n }\n if (node.selected) {\n checkedProps.checked = true;\n } else {\n checkedProps.checked = false;\n }\n return (\n <Fragment>\n <Checkbox className={`${prefixCls}-checked`} disabled={node.disabled} {...checkedProps} />\n {item.label && <span className={node.disabledClass}>{item.label}</span>}\n </Fragment>\n );\n }}\n {...props}\n />\n );\n}\n","import React, { useMemo, useState, useRef, useEffect, ReactElement } from 'react';\nimport Dropdown, { DropdownProps } from '@uiw/react-dropdown';\nimport Icon from '@uiw/react-icon';\nimport Input from '@uiw/react-input';\nimport Tag, { TagProps } from '@uiw/react-tag';\nimport Card from '@uiw/react-card';\nimport Empty from '@uiw/react-empty';\nimport { IProps } from '@uiw/utils';\nimport './style/index.less';\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 <Dropdown\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 <div className={[`${prefixCls}-inner`, `${prefixCls}-${size}`].filter(Boolean).join(' ').trim()}>\n <div style={{ display: 'flex', flexFlow: 'wrap', width: '100%' }}>\n {selectedOption.map((item, index) => {\n return (\n <Tag\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 </Tag>\n );\n })}\n <Input\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 <span 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 </span>\n )}\n </div>\n </div>\n </Dropdown>\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';\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 Card from '@uiw/react-card';\nimport Icon from '@uiw/react-icon';\nimport Input from '@uiw/react-input';\nimport TreeChecked from '@uiw/react-tree-checked';\nimport { TreeData } from '@uiw/react-tree';\nimport './style/index.less';\nimport Checkbox from '@uiw/react-checkbox';\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 <Icon\n onClick={() => props.click()}\n type=\"down-square-o\"\n className={`${prefixCls}-arrow`}\n style={{ fontSize: 20, stroke: '#e9e9e9', fill: '#333', ...props.style }}\n />\n );\n\n return (\n <div className={cls} style={{ width: 400, ...style }}>\n <Card\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 <div className={`${prefixCls}-cheked-content`}>\n <TreeChecked\n defaultExpandAll={true}\n placeholder={placeholder || '搜索选项'}\n data={selectedOptions}\n selectedKeys={leftSelectedKeys}\n onSelected={leftTreeOnSelected}\n />\n </div>\n </Card>\n <div 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 </div>\n <Card\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 </Card>\n </div>\n );\n}\n\nexport default Transfer;\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) + \".\" + {\"180\":\"d5941011\",\"303\":\"a988d410\",\"662\":\"bc9fedcb\",\"1007\":\"4a71a42e\",\"1078\":\"c28e162b\",\"1141\":\"1bae9fff\",\"1358\":\"9b1489c2\",\"1464\":\"c9df2259\",\"1472\":\"844d1c6d\",\"1479\":\"02a777bd\",\"1505\":\"1effa6f2\",\"1558\":\"7056b79b\",\"1769\":\"614fcf4c\",\"2212\":\"a8dbb0af\",\"2261\":\"ada2cb60\",\"2550\":\"2d428fbc\",\"2625\":\"2f37c4a5\",\"2778\":\"d39b9057\",\"3034\":\"e8945a6c\",\"3257\":\"01859b1f\",\"3382\":\"d3fd92d0\",\"3500\":\"002c442a\",\"3501\":\"378b1cd2\",\"3616\":\"f1043ff7\",\"3633\":\"ef254ff6\",\"3862\":\"fef0451a\",\"3890\":\"37c5da46\",\"3939\":\"45364290\",\"4072\":\"6be1093d\",\"4109\":\"b2bc2e57\",\"4194\":\"9d84edf3\",\"4209\":\"b9311bea\",\"4293\":\"240263ac\",\"4341\":\"533bce08\",\"4362\":\"0966f264\",\"4406\":\"bd44a089\",\"4443\":\"8ae2dd28\",\"4519\":\"1e6d9893\",\"4590\":\"b8654e0b\",\"4778\":\"05304db0\",\"4877\":\"edfb2966\",\"4989\":\"187bade8\",\"5126\":\"834ac15c\",\"5129\":\"9a98447e\",\"5138\":\"e4e9c02f\",\"5590\":\"c754f1da\",\"5655\":\"ddb7b1fb\",\"5737\":\"968b00db\",\"5950\":\"266da78e\",\"6081\":\"ac3e3ca2\",\"6177\":\"0a902c93\",\"6233\":\"882de451\",\"6559\":\"3b5c5eca\",\"6786\":\"bf1b1d39\",\"6982\":\"c0ea37cc\",\"7041\":\"31bd431e\",\"7094\":\"82913e80\",\"7339\":\"e82ee8d9\",\"7343\":\"2930b911\",\"7506\":\"8abdc214\",\"7526\":\"afb2ce18\",\"7543\":\"1b2befc9\",\"7562\":\"1396fce9\",\"7612\":\"b43e5526\",\"7623\":\"325f8b52\",\"7782\":\"7d93ab49\",\"8275\":\"87cb96e8\",\"8358\":\"69974ff5\",\"8914\":\"6eaf0747\",\"9054\":\"7fcfa8c0\",\"9077\":\"c39c6821\",\"9156\":\"f53097e3\",\"9200\":\"b29bc855\",\"9207\":\"53b162ed\",\"9230\":\"2e5db3f0\",\"9901\":\"980fbd40\"}[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 + \".\" + {\"303\":\"c3bdd8db\",\"2261\":\"b0328ced\",\"4877\":\"6e864cd4\",\"9200\":\"14abaeb3\"}[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\tif (linkTag.parentNode) linkTag.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 = {\"303\":1,\"2261\":1,\"4877\":1,\"9200\":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(303 != 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));","// 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,5337], function() { return __webpack_require__(2744); })\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","menu","find","item","RegExp","path","test","pathname","nav","icon","name","divider","NavLink","replace","initialState","layout","reducer","state","action","_objectSpread","ThemeContext","React","dispatch","rx","x","y","fillOpacity","menutop","china","id","transform","xlinkHref","Nav","_useContext","useContext","Fragment","filter","Boolean","join","trim","logo","_ref","Object","keys","includes","Tooltip","usePortal","placement","content","whiteSpace","activeStyle","color","_ref2","isActive","_ref3","rel","onClick","Header","Layout","Sider","Content","Components","_props$siderMenu","siderMenu","Affix","offsetTop","zIndex","display","alignItems","padding","lineHeight","position","right","marginTop","flexDirection","justifyContent","backgroundColor","VersionSelect","Outlet","left","top","bottom","overflow","paddingLeft","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","SearchSelect","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","_slicedToArray","container","document","getElementById","createRoot","render","HashRouter","BackToUp","noop","getScroll","method","isWindow","ret","documentElement","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","_extends","setAffixStyle","affixed","setState","_this3","forEach","eventName","addEventListener","_this4","handler","removeEventListener","_this$props","prefixCls","resetProps","_objectWithoutPropertiesLoose","_excluded","cls","ref","defaultProps","canUseDOM","createElement","defaultNode","useRef","containerRef","useEffect","current","removeChild","appendChild","ReactDOM","_props$prefixCls","isOpen","_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","_useState","useState","_useState2","setIsOpen","_useState3","_useState4","visible","setVisible","overlay","overlayWillClose","classList","add","decoratedChild","cloneElement","tabIndex","handleBackdropMouseDown","onMouseDown","remove","TransitionGroupComp","CSSTransition","classNames","in","isAppearing","onExited","nodeRef","status","_props$verticalAlign","_props$tagName","tagName","TagName","_props$spin","others","svg","svgPaths","i","propps","_props$disabled","disabled","_props$active","active","_props$loading","loading","_props$block","block","_props$basic","basic","_props$htmlType","htmlType","_props$type","_props$size","size","child","_props$useButton","useButton","_props$autoFocus","autoFocus","title","cancelText","cancelButtonProps","confirmButtonProps","_props$confirmText","confirmText","_props$maxWidth","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","_x2","handleConfirm","show","_ref$title","dv","_props","_props$width","delimiter","_props$text","text","word","match","url","_createElement","startsWith","_props$shape","shape","src","alt","_props$onError","onError","_onError","isImgExist","setIsImgExist","evn","getScrollTop","_props$offsetTop","_props$fixed","fixed","_props$speed","speed","_props$showBelow","showBelow","_props$clickable","clickable","topShowBelow","percent","setPercent","setCurrent","onScroll","Math","round","scrollHeight","innerHeight","getScrollPercent","scrollToTop","step","start","timer","setInterval","scrollTo","clearInterval","scrollToAnimate","_props$style","_props$max","max","_props$dot","dot","_props$processing","processing","count","supProps","warpperProps","separator","isElm","_props$separator","assign","Item","_props$vertical","vertical","context","parentNode","isDOM","HTMLElement","nodeType","nodeName","contains","compareDocumentPosition","getBordersSize","axis","sideA","sideB","parseFloat","isIE11","isBrowser","MSInputMethodContext","documentMode","isIE10","navigator","userAgent","isIE","getSize","html","computedStyle","parseInt","rect","offsets","result","sizes","getComputedStyle","getWindowSizes","ownerDocument","horizScrollbar","offsetWidth","vertScrollbar","offsetHeight","offsetLeft","property","css","defaultView","getStyleComputedProperty","getOuterSizes","scrollWidth","getStyle","options","triggerDom","trigger","popupDom","popup","autoAdjustOverflow","sty","winSizeHeight","winSizeWidth","innerWidth","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","push","handleHide","handleMouseOverOut","relatedNative","currentTarget","related","relatedTarget","nativeEvent","_triggerRef$current","nodeIndex","Number","onFocus","onMouseOver","onMouseEnter","onMouseOut","onMouseLeave","renderArrow","visibleArrow","writingMode","Confirm","_props$cancelText","fontSize","marginLeft","min","overLimitColor","keyboard","toString","overLimitComp","isOverLimit","isOverLimitSet","overLimitProps","inputStyle","v","_props$preIcon","preIcon","addonAfter","inputRef","addonRef","input","paddingRight","computedInputPadding","autoComplete","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","placeholder","readOnly","classnames","obj","keyName","DayRect","selectedDate","col","today","panelDate","disabledDate","renderDay","onSelectDay","end","selected","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","DatePickerMonth","_props$panelDate","monthLabel","_props$onSelected","selectedMonth","DatePickerYear","_props$panelNum","panelNum","activeYear","setActiveYear","selectedYear","setFullYear","handleSelected","_len","arg","_key","DatePickerCaption","todayButton","renderMonth","MONTH_LABEL","_props$monthLabel","_props$today","_props$onChange","_props$onPanelChange","onPanelChange","showTime","setType","selectDate","setSelectDate","_useState5","_useState6","selectPanelDate","setSelectPanelDate","curType","setMonth","onSelectedDate","paging","dateSource","RenderDay","dayData","arr","label","_props$titleFormat","titleFormat","_props$todayLabel","todayLabel","onPaging","setPanelDate","handlePaging","_month","titleLable","btngroup","propsNext","extra","footer","_props$bordered","bordered","_props$noHover","noHover","bodyClassName","_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","disabledProps","Internal","_props$multiline","multiline","isSubMenuItem","htmlProps","anchorCls","tagComp","MenuItem","displayName","MenuDivider","IconView","collapse","SubMenu","_props$overlayProps","_props$collapse","inlineIndent","overlayTriggerProps","menuProps","refNode","elementSource","setContextHeight","ele","currentHeight","substr","isCheck","checkedMenuItem","appear","stopPropagation","createContext","_props$theme","theme","_props$inlineIndent","inlineCollapsed","InternalContextMenu","_React$useState","_React$useState2","contextHeight","ContextMenu","onSearch","_props$expandTrigger","expandTrigger","_props$option","option","innerIsOpen","setInnerIsOpen","selectedValue","setSelectedValue","selectIconType","setSelectIconType","_useState7","_useState8","searchText","setSearchText","_useState9","_useState10","searchOn","setSearchOn","_useState11","_useState12","setInputValue","_useState13","_useState14","searchOption","setSearchOption","tempOptions","iteratorOption","opt","m","cb","opts","optsTemp","renderSelectIcon","valueTemp","optChildren","findOpt","handelChange","isSeleted","widths","click","triggers","callback","OptionIter","level","minHeight","overflowY","_selectedValue$level","_opt$children","optionsItem","splice","handleItemClick","_selectedValue","handelSearch","onBlur","RadioAbstract","_props$value","_props$checked","checked","prChecked","setChecked","prevChecked","setPrevChecked","persist","ButtonGroup","RadioButton","console","log","CheckboxGroup","_onChange","valueRef","childs","isArray","include","val","InternalCheckbox","_props$indeterminate","indeterminate","Group","toArray","activeKey","currentActiveKey","InternalCollapse","_props$accordion","accordion","_props$showArrow","showArrow","propsActiveKey","setActiveKey","String","indexOf","childProps","onItemClick","Panel","_props$icon","_children","header","iconRender","transitionDuration","instance","_props$onClick","copy","isCopy","DateInputRange","_props$bodyStyle","datePickerProps","dateRange","setDateRange","handleChange","cdate","changeValue","propsValue","JSON","stringify","margin","_props$autoClose","autoClose","open","colon","span","labelProps","colSpan","Row","column","handleCell","isHead","Cell","isLastCell","InternalDescriptions","_props$column","_props$colon","_props$layout","leftSpans","rows","columns","itemNode","_itemNode$props$span","generateChildrenRows","DescriptionsItem","_props$dashed","dashed","_props$align","align","restProps","bodyProps","_props$isOpen","bodyCls","styl","_defineProperty","footerView","iconView","titleView","iconProps","_props$description","description","_props$dataLabel","dataLabel","_props$dataList","dataList","uploadType","readonly","_props$showFileIcon","showFileIcon","showPreviewIcon","showRemoveIcon","onPreview","onAdd","onRemove","_props$maxNumber","maxNumber","isAction","getBase64","file","reader","FileReader","Promise","resolve","readAsDataURL","getListFiles","files","dataURLKey","promiseFiles","all","then","fileListBase64","base64","_props$multiple","multiple","inValue","fileList","setFileList","Comp","handleClickInput","useCallback","openFileDialog","onFileUpload","onInputChange","updatedFileList","updatedList","abrupt","sent","slice","_props$uploadType","FileList","Col","grow","_props$gutter","gutter","justify","gutterStyl","FormItem","_React$PureComponent","required","labelFor","labelClassName","labelStyle","help","inline","hasError","labelCls","htmlFor","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","promise","onSuccess","response","reset","afterSubmitPromise","catch","canSubmit","_data$current","passesValidators","_name","prototype","hasOwnProperty","fieldsProps","initials","entries","_ref4","hasCurrentValue","ListItem","InternalList","items","_props$striped","striped","renderItem","_props$dataSource","dataSource","childrenList","classString","bgColor","_props$fullscreen","fullscreen","indicatorView","cx","cy","r","strokeMiterlimit","tipsView","handleClosed","renderIcon","_this$props2","showIcon","rounded","elementProps","Child","_props$pickerCaptionP","pickerCaptionProps","handleSelectedDate","curPanelDate","captionType","notifys","Container","duration","closed","willUnmount","_this$state$notifys$p","alertProps","notifysDom","NotificationCreate","div","create","random","nprops","notifysChild","InternalSelect","Option","_props$alignment","alignment","_props$total","total","_props$pageSize","pageSize","_props$pageSizeOption","pageSizeOptions","_props$current","currentNumber","onShowSizeChange","initPageSoure","ceil","itemCount","goto","textAlign","sizeCount","InternalPinCode","_props$placeholder","_props$onBlur","_props$onFocus","placehold","setPlacehold","values","setValues","handleBlur","event","handleFocus","inpProps","inputMode","charAt","focus","onKeyDown","toLocaleLowerCase","handleKeyDown","IconProgress","Circle","elm","_strokeWidth","toFixed","radius","setAttribute","perimeter","PI","progressInfo","showText","progressStatus","percentView","relativeStrokeWidth","strokeLinecap","Line","percentStyle","defValue","allowHalf","_props$character","character","_props$readOnly","_props$onHoverChange","onHoverChange","setValue","hoverCount","setHoverCount","prevValue","setPrevValue","getValue","isLeft","clientX","halfon","activeCls","onMouseMove","_props$title","_props$visible","_props$color","closable","_props$light","borderColor","boxShadow","TagSize","large","default","small","_style$width","valueAmount","maxTagCount","_props$labelInValue","labelInValue","_props$mode","mode","_props$showSearch","showSearch","_props$tagProps","tagProps","onSelect","isMultiple","selectedLabel","setSelectedLabel","omitTagCount","divRef","tagContentRef","tagClientWidth","setTagClientWidth","valueVerify","selectedValueChange","getSelectOption","findResult","selectedLabelChange","handleItemsClick","removeSelectItem","resultValue","handleSelectChange","handleInputChange","resetSelectedValue","_inputRef$current","_tagContentRef$curren","_tagContentRef$curren2","maxHeight","findIndex","finds","_inputRef$current2","textOverflow","flex","keyCode","InternalSteps","_props$status","_props$progressDot","progressDot","warpRef","lastStepOffsetWidth","setLastStepOffsetWidth","filteredChildren","c","lastIndex","domNode","lastChild","abs","calcStepOffsetWidth","stepNumber","itemWidth","adjustMarginRight","Step","stepItemStyle","stepItemDotStyle","marginRight","iconNode","Dots","marks","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","getColspanNum","getRowspanNum","getLevelItems","levelTop","ellipsis","rowSpan","_num","getAllColumnsKeys","locationFixed","_location$index","_location$index2","ThComponent","_Component","wrapper","updateLocation","rowNum","colNum","rightNum","titleNode","onCellHead","locationWidth","_item$fixed","thProps","TheadComponent","_props$data","_props$onCellHead","rightFixedNum","tds","ThComponentProps","ExpandableComponent","defaultExpand","_onClick","expandIcon","expand","setExpand","TableTr","rowKey","_props$onCell","onCell","isExpandedDom","hierarchy","indentSize","childrenColumnName","isOpacity","setIsOpacity","childrenIndex","setChildrenIndex","expandIndex","setExpandIndex","it","IconDom","flag","opacity","float","getIndex","j","trData","objs","isHasChildren","_Fragment","_props$columns","empty","expandable","scroll","setLocationWidth","finalLocationWidth","deepClumnsLocation","params","fistIndex","headerIndex","deepParams","_index","computed","childKey","defaultExpandAllRows","deep","arr1","defaultExpandedRowKeys","expandedRowKeys","record","expandedRowRender","rowExpandable","self","selfColumns","_expandable$defaultEx","onExpand","onExpandedRowsChange","_result","table","overflowX","_getLevelItems","tableLayout","Thead","Pane","_flowNav$nav","onTabClick","slideStyle","setSlideStyle","activeItem","flowLeft","displayStart","displayEnd","flowNav","flowNavSet","hiddenNav","hiddenNavSet","nodes","nodesSet","divContentRef","_e$target","divNavRef","itemKey","divNavWidthChange","curWidth","showHideenNav","calcSlideStyle","renderNav","_props$visibleArrow","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","isContained","a","b","aStr","len","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","_ref$prefixCls","checkedProps","_props$selectCloseDro","selectCloseDrop","emptyOption","selectedOption","setSelectedOption","optionRef","searchValue","searchValueSet","selectedAll","selectd","isChecked","searchValueChange","curreentItem","newContent","newProps","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","_props$options","_props$emptyOption","treeProps","selectedValues","selectedValuesSet","selectedOptions","selectedOptionSet","isEmpty","isEmptySet","SearchTagInput","hiddenNodeForSeach","parentIsHide","_child$children2","isHide","isEmpt","CheckedStatus","_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","get","transferClick","transferType","Arrow","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__","t","ns","def","getOwnPropertyNames","definition","o","defineProperty","enumerable","chunkId","reduce","promises","u","miniCssF","g","globalThis","Function","prop","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":""}