fix: enable to drag multiple items

This commit is contained in:
gaox 2020-09-07 16:43:43 +08:00
parent d2143aa580
commit 05c6abbee8
10 changed files with 2958 additions and 289 deletions

15
dist/demo.css vendored
View File

@ -74,7 +74,8 @@
.u-transfer-list-content.delbtn-backdrop.uf-del {
color: #fff; }
.u-transfer-list-content-item {
overflow: hidden;
position: relative;
overflow: visible;
white-space: nowrap;
text-overflow: ellipsis;
padding: 7px 15px;
@ -83,6 +84,18 @@
color: #212121; }
.u-transfer-list-content-item .u-checkbox {
margin-right: 0; }
.u-transfer-list-content-item .multi-drag-count {
position: absolute;
right: -11px;
top: -8px;
z-index: 999;
width: 26px;
height: 26px;
line-height: 26px;
border-radius: 99px;
text-align: center;
background: #FFD700;
color: #999; }
.u-transfer-list-content-item:not(.u-transfer-list-content-item-disabled):hover {
cursor: pointer;
background-color: rgb(235, 236, 240); }

2
dist/demo.css.map vendored

File diff suppressed because one or more lines are too long

2473
dist/demo.js vendored

File diff suppressed because one or more lines are too long

2
dist/demo.js.map vendored

File diff suppressed because one or more lines are too long

597
package-lock.json generated
View File

@ -1,9 +1,87 @@
{
"name": "bee-transfer",
"version": "2.0.12",
"version": "2.0.13",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"@babel/code-frame": {
"version": "7.10.4",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
"integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
"dev": true,
"requires": {
"@babel/highlight": "^7.10.4"
}
},
"@babel/helper-validator-identifier": {
"version": "7.10.4",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz",
"integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==",
"dev": true
},
"@babel/highlight": {
"version": "7.10.4",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
"integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==",
"dev": true,
"requires": {
"@babel/helper-validator-identifier": "^7.10.4",
"chalk": "^2.0.0",
"js-tokens": "^4.0.0"
},
"dependencies": {
"ansi-styles": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
"dev": true,
"requires": {
"color-convert": "^1.9.0"
}
},
"chalk": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
"dev": true,
"requires": {
"ansi-styles": "^3.2.1",
"escape-string-regexp": "^1.0.5",
"supports-color": "^5.3.0"
}
},
"color-convert": {
"version": "1.9.3",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
"integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
"dev": true,
"requires": {
"color-name": "1.1.3"
}
},
"color-name": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
"dev": true
},
"has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
"dev": true
},
"supports-color": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
"dev": true,
"requires": {
"has-flag": "^3.0.0"
}
}
}
},
"@babel/runtime": {
"version": "7.9.2",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz",
@ -35,6 +113,18 @@
}
}
},
"@types/color-name": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
"integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
"dev": true
},
"@types/parse-json": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
"integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==",
"dev": true
},
"accepts": {
"version": "1.3.7",
"resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz",
@ -52,6 +142,16 @@
"object-assign": "4.x"
}
},
"ansi-styles": {
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
"integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
"dev": true,
"requires": {
"@types/color-name": "^1.1.1",
"color-convert": "^2.0.1"
}
},
"array-flatten": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
@ -83,27 +183,27 @@
"integrity": "sha1-jknIkVIbSmpu9eUAmDI2Uv0FxPE=",
"requires": {
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-button": {
"version": "2.0.11",
"resolved": "https://registry.npmjs.org/bee-button/-/bee-button-2.0.11.tgz",
"integrity": "sha512-j9ceanC55rN/YhA6qzXwAJ7phuHitaZ5jLaC9qKmWtj8iiigx4w1wxEYnu6UehIyuAa0EyuA6FazGCgGAUBoJQ==",
"version": "2.0.20",
"resolved": "https://registry.npmjs.org/bee-button/-/bee-button-2.0.20.tgz",
"integrity": "sha512-MhQDsCJbxT8aUzY5rC8R/Oz+hCMfynN7Z4Rt3eMi9VzHsTIsa/yahMXSVeyeZldC4SWVZAJDG2LO8LMimwhOag==",
"requires": {
"babel-runtime": "^6.23.0",
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-checkbox": {
"version": "2.0.10",
"resolved": "https://registry.npmjs.org/bee-checkbox/-/bee-checkbox-2.0.10.tgz",
"integrity": "sha512-BCcaB5lpaIG03GW7AnTXQ9uLduTW+8jaPnkdUtl35D+y9Semzr9k/rVD5vqiRG7YaU0f7tjZ2SJJ/EGmGaTnpg==",
"version": "2.0.11",
"resolved": "https://registry.npmjs.org/bee-checkbox/-/bee-checkbox-2.0.11.tgz",
"integrity": "sha512-6b1fpzL251lCFw1XCvXTTXIw99xw6Oj/AAJxecd/XawPSB1267zOsMgSzjLsIA+Yn+stERncYb2U2nXY/WWVwQ==",
"requires": {
"classnames": "^2.2.5",
"lodash.isequal": "^4.5.0",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-clipboard": {
@ -113,15 +213,15 @@
"dev": true,
"requires": {
"babel-runtime": "^6.26.0",
"bee-button": "^2.0.11",
"bee-form-control": "^2.0.18",
"bee-icon": "^1.0.13",
"bee-button": "^2.0.20",
"bee-form-control": "^2.0.24",
"bee-icon": "^1.0.15",
"bee-locale": "^1.0.4",
"bee-modal": "^2.1.14",
"bee-tooltip": "^2.1.6",
"classnames": "^2.2.5",
"clipboard": "^1.6.1",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
},
"dependencies": {
"babel-runtime": {
@ -148,7 +248,7 @@
"react-beautiful-dnd": "9.0.2",
"react-draggable": "^3.0.2",
"react-grid-layout": "^0.16.6",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-drawer": {
@ -160,39 +260,48 @@
"babel-runtime": "^6.23.0",
"classnames": "^2.2.6",
"react-transition-group": "^2.6.1",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-form-control": {
"version": "2.0.18",
"resolved": "https://registry.npmjs.org/bee-form-control/-/bee-form-control-2.0.18.tgz",
"integrity": "sha512-QYGsxO5/9DHuREpRmacYgzsqTiZNaO15c5BQNHZhd8UY+ZiSpKFwDwXCsowueQat1PfOeN/ItXM1Omu593D+Dw==",
"version": "2.0.24",
"resolved": "https://registry.npmjs.org/bee-form-control/-/bee-form-control-2.0.24.tgz",
"integrity": "sha512-XelrsfEpWbHYDSAIysPyr2LisuW+l3Qj+8ZGHEIaP6rp7dTSR9EdYNTIMnuYv7vc2m03u7H/IFgs/GRGjdxVxg==",
"requires": {
"bee-icon": "^1.0.3",
"classnames": "^2.2.5",
"express": "^4.16.3",
"tinper-bee-core": "^2.0.35",
"omit.js": "^2.0.2",
"rc-textarea": "^0.3.0",
"tinper-bee-core": "^2.0.36",
"warning": "^3.0.0"
},
"dependencies": {
"omit.js": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/omit.js/-/omit.js-2.0.2.tgz",
"integrity": "sha512-hJmu9D+bNB40YpL9jYebQl4lsTW6yEHRTroJzNLqQJYHm7c+NQnJGfZmIWh8S3q3KoaxV1aLhV6B3+0N0/kyJg=="
}
}
},
"bee-icon": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/bee-icon/-/bee-icon-1.0.13.tgz",
"integrity": "sha512-P8O4TylKieeANFJyXyVIzb669hOlvK0jHJSN5cRFhtzE1pUZ0mTsACy3QWKdyIDd14B63IMR0LWlh9v/S8nGyg==",
"version": "1.0.15",
"resolved": "https://registry.npmjs.org/bee-icon/-/bee-icon-1.0.15.tgz",
"integrity": "sha512-b8hOGdHWH48287zUlgMOYmSJXCG/Y4qY4jx5YmQ1aVRH9Eaznkqc4v4cTgfs4jc4+pYj5Epd2hBIPOZLBLJ2tw==",
"requires": {
"babel-runtime": "^6.23.0",
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-layout": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/bee-layout/-/bee-layout-1.2.7.tgz",
"integrity": "sha1-8jnw/J0uLntNEOWwwKW7jtvwMp8=",
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/bee-layout/-/bee-layout-1.2.8.tgz",
"integrity": "sha512-4iOXLxh1cixWQzEuBHQV+uegGBtAfBuTHHseJNY4D0wZc2XCcsLNMUYRQXbgmmvqDgE5p2HBdcicxFJP6rBzLA==",
"dev": true,
"requires": {
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-locale": {
@ -203,19 +312,19 @@
"requires": {
"babel-runtime": "^6.23.0",
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-message": {
"version": "2.1.6",
"resolved": "https://registry.npmjs.org/bee-message/-/bee-message-2.1.6.tgz",
"integrity": "sha512-6cqKfG+cEf2MJy9Bht/jPTQPLG68m4PxwglZ19YWPTiw5tFml9xY1Vl1v2+D7D9u20JQs83IrnuAzzpfJhLixQ==",
"version": "2.1.7",
"resolved": "https://registry.npmjs.org/bee-message/-/bee-message-2.1.7.tgz",
"integrity": "sha512-62Wk/W8x+6J0pEmQITice/YXqovYHDwqsSj2/fmWdiL7QhjY9Gryf5b2bMxRaxQV2hK7VyC8+k5Lz5ULtUrWvA==",
"dev": true,
"requires": {
"bee-icon": "^1.0.13",
"bee-notification": "^2.0.3",
"bee-icon": "^1.0.15",
"bee-notification": "^2.0.5",
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35",
"tinper-bee-core": "^2.0.36",
"warning": "^4.0.3"
},
"dependencies": {
@ -236,7 +345,7 @@
"integrity": "sha512-HWWB/rAPgle4ToYgGoKUK9G628/zB1BlxVvcuVsRDKVnzsfOzWT+u02vvm4KJMjMVmYI/M0C6LWbTXhCJ4aiZA==",
"dev": true,
"requires": {
"bee-button": "^2.0.11",
"bee-button": "^2.0.20",
"bee-dnd": "^1.1.3",
"bee-icon": "^1.0.11",
"bee-overlay-modal": "^0.0.1",
@ -244,21 +353,21 @@
"classnames": "^2.2.5",
"dom-helpers": "3.0.0",
"re-resizable": "^4.11.0",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-notification": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/bee-notification/-/bee-notification-2.0.3.tgz",
"integrity": "sha512-XvWP+1yO1CGWz0iMGXFdAv8I3M5XmGFYCvmLiAqOaXyJuYPnJ5EcOUraDBDW4npfCMoN6jkjf1xywS18k0SELA==",
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/bee-notification/-/bee-notification-2.0.5.tgz",
"integrity": "sha512-fBcwiI/itmVGV6zANtF8CDuKjj5/JB/7Y69980YNJOw8YnScLGEE+j5GBmXiB0S/axMhA5udYNN8rG48LJJd8g==",
"dev": true,
"requires": {
"bee-animate": "^1.0.0",
"bee-button": "^2.0.11",
"bee-button": "^2.0.20",
"bee-icon": "^1.0.11",
"bee-overlay": "^1.0.16",
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
},
"dependencies": {
"bee-animate": {
@ -268,7 +377,7 @@
"dev": true,
"requires": {
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
}
}
@ -282,7 +391,7 @@
"bee-animate": "^1.0.0",
"classnames": "^2.2.5",
"dom-helpers": "^3.0.0",
"tinper-bee-core": "^2.0.35",
"tinper-bee-core": "^2.0.36",
"warning": "^3.0.0"
},
"dependencies": {
@ -293,7 +402,7 @@
"dev": true,
"requires": {
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
}
}
@ -307,7 +416,7 @@
"bee-animate": "^1.0.0",
"classnames": "^2.2.5",
"dom-helpers": "^3.0.0",
"tinper-bee-core": "^2.0.35",
"tinper-bee-core": "^2.0.36",
"warning": "^3.0.0"
},
"dependencies": {
@ -318,23 +427,23 @@
"dev": true,
"requires": {
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
}
}
},
"bee-panel": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/bee-panel/-/bee-panel-2.0.1.tgz",
"integrity": "sha512-FG61qbsa9kSQtTi1V4F9Y1hPMbkPpspnSl2G+aAaX/xo2IZ9FQeAaNUa5VSfsvprdRWMklK39YQNNmfKI381JQ==",
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/bee-panel/-/bee-panel-2.0.2.tgz",
"integrity": "sha512-ejdQNqEgBa8hYR4E7zT1Jx/Ey7F2BLWNg2S9TGRJl02eG1zhYiC2+8YYJM+U+NfM/jPJYRdf+L/Ek/h/NM3I5A==",
"dev": true,
"requires": {
"babel-runtime": "^6.23.0",
"bee-message": "^2.1.6",
"bee-message": "^2.1.7",
"bee-transition": "^1.0.0",
"classnames": "^2.2.6",
"copy-to-clipboard": "^3.0.8",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
},
"dependencies": {
"bee-transition": {
@ -345,7 +454,7 @@
"requires": {
"classnames": "^2.2.5",
"dom-helpers": "^3.0.0",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"classnames": {
@ -365,7 +474,7 @@
"babel-runtime": "^6.20.0",
"bee-overlay": "^1.0.31",
"classnames": "^2.2.5",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-transition": {
@ -376,7 +485,7 @@
"requires": {
"classnames": "^2.2.5",
"dom-helpers": "^3.0.0",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"bee-tree": {
@ -387,11 +496,11 @@
"requires": {
"babel-runtime": "^6.23.0",
"bee-animate": "^1.0.0",
"bee-checkbox": "^2.0.10",
"bee-checkbox": "^2.0.11",
"bee-modal": "^2.0.13",
"classnames": "^2.2.5",
"omit.js": "^1.0.2",
"tinper-bee-core": "^2.0.35"
"tinper-bee-core": "^2.0.36"
}
},
"body-parser": {
@ -422,6 +531,12 @@
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
"integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg=="
},
"callsites": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
"integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
"dev": true
},
"chai": {
"version": "3.5.0",
"resolved": "https://registry.npmjs.org/chai/-/chai-3.5.0.tgz",
@ -433,6 +548,16 @@
"type-detect": "^1.0.0"
}
},
"chalk": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
"integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
"dev": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"cheerio": {
"version": "0.22.0",
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz",
@ -457,6 +582,12 @@
"lodash.some": "^4.4.0"
}
},
"ci-info": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
"integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
"dev": true
},
"classnames": {
"version": "2.2.6",
"resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz",
@ -473,6 +604,27 @@
"tiny-emitter": "^2.0.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
"compare-versions": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz",
"integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==",
"dev": true
},
"component-classes": {
"version": "1.2.6",
"resolved": "https://registry.npmjs.org/component-classes/-/component-classes-1.2.6.tgz",
@ -535,6 +687,19 @@
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz",
"integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg=="
},
"cosmiconfig": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
"integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
"dev": true,
"requires": {
"@types/parse-json": "^4.0.0",
"import-fresh": "^3.1.0",
"parse-json": "^5.0.0",
"path-type": "^4.0.0",
"yaml": "^1.7.2"
}
},
"create-react-class": {
"version": "15.6.3",
"resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.3.tgz",
@ -635,9 +800,9 @@
"integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
},
"dom-align": {
"version": "1.11.1",
"resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.11.1.tgz",
"integrity": "sha512-hN42DmUgtweBx0iBjDLO4WtKOMcK8yBmPx/fgdsgQadLuzPu/8co3oLdK5yMmeM/vnUd3yDyV6qV8/NzxBexQg=="
"version": "1.12.0",
"resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.12.0.tgz",
"integrity": "sha512-YkoezQuhp3SLFGdOlr5xkqZ640iXrnHAwVYcDg8ZKRUtO7mSzSC2BA5V0VuyAwPSJA4CLIc6EDDJh4bEsD2+zA=="
},
"dom-helpers": {
"version": "3.0.0",
@ -722,6 +887,15 @@
"uuid": "^3.0.1"
}
},
"error-ex": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
"integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
"dev": true,
"requires": {
"is-arrayish": "^0.2.1"
}
},
"es-abstract": {
"version": "1.17.5",
"resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz",
@ -763,6 +937,12 @@
"resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
"integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
},
"escape-string-regexp": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
"dev": true
},
"etag": {
"version": "1.8.1",
"resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
@ -845,6 +1025,25 @@
"unpipe": "~1.0.0"
}
},
"find-up": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
"integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
"dev": true,
"requires": {
"locate-path": "^5.0.0",
"path-exists": "^4.0.0"
}
},
"find-versions": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz",
"integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==",
"dev": true,
"requires": {
"semver-regex": "^2.0.0"
}
},
"forwarded": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
@ -896,6 +1095,12 @@
"function-bind": "^1.1.1"
}
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true
},
"has-symbols": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
@ -936,6 +1141,24 @@
"toidentifier": "1.0.0"
}
},
"husky": {
"version": "4.2.5",
"resolved": "https://registry.npmjs.org/husky/-/husky-4.2.5.tgz",
"integrity": "sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ==",
"dev": true,
"requires": {
"chalk": "^4.0.0",
"ci-info": "^2.0.0",
"compare-versions": "^3.6.0",
"cosmiconfig": "^6.0.0",
"find-versions": "^3.2.0",
"opencollective-postinstall": "^2.0.2",
"pkg-dir": "^4.2.0",
"please-upgrade-node": "^3.2.0",
"slash": "^3.0.0",
"which-pm-runs": "^1.0.0"
}
},
"iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
@ -944,6 +1167,16 @@
"safer-buffer": ">= 2.1.2 < 3"
}
},
"import-fresh": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
"integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
"dev": true,
"requires": {
"parent-module": "^1.0.0",
"resolve-from": "^4.0.0"
}
},
"inherits": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
@ -962,6 +1195,12 @@
"resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
"integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g=="
},
"is-arrayish": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
"dev": true
},
"is-callable": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
@ -1017,6 +1256,27 @@
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
},
"json-parse-even-better-errors": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.0.tgz",
"integrity": "sha512-o3aP+RsWDJZayj1SbHNQAI8x0v3T3SKiGoZlNYfbUP1S3omJQ6i9CnqADqkSPaOAxwua4/1YWx5CM7oiChJt2Q==",
"dev": true
},
"lines-and-columns": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz",
"integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
"dev": true
},
"locate-path": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
"integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
"dev": true,
"requires": {
"p-locate": "^4.1.0"
}
},
"lodash": {
"version": "4.17.15",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
@ -1150,16 +1410,16 @@
"integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="
},
"mime-db": {
"version": "1.43.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz",
"integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ=="
"version": "1.44.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz",
"integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg=="
},
"mime-types": {
"version": "2.1.26",
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz",
"integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==",
"version": "2.1.27",
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz",
"integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==",
"requires": {
"mime-db": "1.43.0"
"mime-db": "1.44.0"
}
},
"ms": {
@ -1266,21 +1526,102 @@
"ee-first": "1.1.1"
}
},
"opencollective-postinstall": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz",
"integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==",
"dev": true
},
"p-limit": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
"integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
"dev": true,
"requires": {
"p-try": "^2.0.0"
}
},
"p-locate": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
"integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
"dev": true,
"requires": {
"p-limit": "^2.2.0"
}
},
"p-try": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
"dev": true
},
"parent-module": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
"integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
"dev": true,
"requires": {
"callsites": "^3.0.0"
}
},
"parse-json": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz",
"integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==",
"dev": true,
"requires": {
"@babel/code-frame": "^7.0.0",
"error-ex": "^1.3.1",
"json-parse-even-better-errors": "^2.3.0",
"lines-and-columns": "^1.1.6"
}
},
"parseurl": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
"integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ=="
},
"path-exists": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
"dev": true
},
"path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
"integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
},
"path-type": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
"integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
"dev": true
},
"performance-now": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz",
"integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU="
},
"pkg-dir": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
"integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
"dev": true,
"requires": {
"find-up": "^4.0.0"
}
},
"please-upgrade-node": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz",
"integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==",
"dev": true,
"requires": {
"semver-compare": "^1.0.0"
}
},
"promise": {
"version": "7.3.1",
"resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz",
@ -1349,6 +1690,72 @@
"unpipe": "1.0.0"
}
},
"rc-resize-observer": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-0.2.5.tgz",
"integrity": "sha512-cc4sOI722MVoCkGf/ZZybDVsjxvnH0giyDdA7wBJLTiMSFJ0eyxBMnr0JLYoClxftjnr75Xzl/VUB3HDrAx04Q==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.1",
"rc-util": "^5.0.0",
"resize-observer-polyfill": "^1.5.1"
},
"dependencies": {
"@babel/runtime": {
"version": "7.11.2",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.2.tgz",
"integrity": "sha512-TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw==",
"requires": {
"regenerator-runtime": "^0.13.4"
}
},
"regenerator-runtime": {
"version": "0.13.7",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz",
"integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew=="
}
}
},
"rc-textarea": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/rc-textarea/-/rc-textarea-0.3.0.tgz",
"integrity": "sha512-vrTPkPT6wrO7EI8ouLFZZLXA1pFVrVRCnkmyyf0yRComFbcH1ogmFEGu85CjVT96rQqAiQFOe0QV3nKopZOJow==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.1",
"omit.js": "^2.0.0",
"rc-resize-observer": "^0.2.3"
},
"dependencies": {
"@babel/runtime": {
"version": "7.11.2",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.2.tgz",
"integrity": "sha512-TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw==",
"requires": {
"regenerator-runtime": "^0.13.4"
}
},
"omit.js": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/omit.js/-/omit.js-2.0.2.tgz",
"integrity": "sha512-hJmu9D+bNB40YpL9jYebQl4lsTW6yEHRTroJzNLqQJYHm7c+NQnJGfZmIWh8S3q3KoaxV1aLhV6B3+0N0/kyJg=="
},
"regenerator-runtime": {
"version": "0.13.7",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz",
"integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew=="
}
}
},
"rc-util": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.2.1.tgz",
"integrity": "sha512-OnIKp4DsYZpT3St9LwiGARXyMR38wNbk7C4jXS6NGAGHZEQWck7W6qfiJwj+MUmhJiUisAknU6BUs65exbhFTw==",
"requires": {
"react-is": "^16.12.0",
"shallowequal": "^1.1.0"
}
},
"re-resizable": {
"version": "4.11.0",
"resolved": "https://registry.npmjs.org/re-resizable/-/re-resizable-4.11.0.tgz",
@ -1532,6 +1939,17 @@
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
"integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
},
"resize-observer-polyfill": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz",
"integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg=="
},
"resolve-from": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
"dev": true
},
"right-pad": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/right-pad/-/right-pad-1.0.1.tgz",
@ -1554,6 +1972,18 @@
"integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=",
"dev": true
},
"semver-compare": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz",
"integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=",
"dev": true
},
"semver-regex": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz",
"integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==",
"dev": true
},
"send": {
"version": "0.17.1",
"resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz",
@ -1607,6 +2037,12 @@
"resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz",
"integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ=="
},
"slash": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
"integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
"dev": true
},
"statuses": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
@ -1671,15 +2107,24 @@
}
}
},
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"requires": {
"has-flag": "^4.0.0"
}
},
"symbol-observable": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz",
"integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ=="
},
"tinper-bee-core": {
"version": "2.0.35",
"resolved": "https://registry.npmjs.org/tinper-bee-core/-/tinper-bee-core-2.0.35.tgz",
"integrity": "sha512-N8+E9q5S0Ul3Rb9Va39m7M691ExQdCcGfq9vb5wEUY/yXZJZvqHf651w+UIdjj3oxnVtLbIHBBQToMt8Gnhcyw==",
"version": "2.0.36",
"resolved": "https://registry.npmjs.org/tinper-bee-core/-/tinper-bee-core-2.0.36.tgz",
"integrity": "sha512-5g504liJ7eU7feajyzZUg99v/u/Ty2PWUnkpSvjOzOvgg+MHwQGosdTuqz0J7X8yQUxUKD6Iu7jPUvIPvksLMg==",
"requires": {
"add-dom-event-listener": "^1.0.1",
"component-classes": "^1.2.6",
@ -1770,11 +2215,23 @@
"resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz",
"integrity": "sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q=="
},
"which-pm-runs": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz",
"integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=",
"dev": true
},
"word-wrap": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
"dev": true
},
"yaml": {
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz",
"integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==",
"dev": true
}
}
}

View File

@ -1 +1,76 @@
{"name":"bee-transfer","version":"2.0.13","description":"Transfer ui component for react","keywords":["react","react-component","bee-transfer","iuap-design","tinper-bee","Transfer"],"engines":{"node":">=4.0.0"},"homepage":"https://github.com/tinper-bee/bee-transfer.git","author":"Yonyou FED","repository":"http://github.com/tinper-bee/bee-transfer","bugs":"https://github.com/tinper-bee/bee-transfer.git/issues","license":"MIT","main":"./build/index.js","config":{"port":3000,"commitizen":{"path":"./node_modules/cz-conventional-changelog"}},"scripts":{"dev":"bee-tools run start","build":"bee-tools run build","lint":"bee-tools-test run lint","test":"bee-tools-test run test","chrome":"bee-tools-test run chrome","coveralls":"bee-tools-test run coverage","browsers":"bee-tools-test run browsers","pub":"bee-tools run pub","version":"conventional-changelog -p angular -i CHANGELOG.md -s && git add CHANGELOG.md","postversion":"git push --follow-tags","prepublishOnly":"npm run build"},"dependencies":{"babel-runtime":"^6.23.0","bee-animate":"^1.0.0","bee-button":"latest","bee-checkbox":"latest","bee-form-control":"latest","bee-icon":"latest","classnames":"^2.2.5","react-beautiful-dnd":"^9.0.2","react-lazy-load":"^3.0.12","shallowequal":"^1.0.2","tinper-bee-core":"latest"},"peerDependencies":{"react":"^15.3.0 || ^16.0","react-dom":"^15.3.0 || ^16.0","prop-types":"15.6.0"},"devDependencies":{"bee-button":"latest","bee-clipboard":"^2.0.0","bee-drawer":"0.0.2","bee-layout":"latest","bee-panel":"latest","bee-tree":"^2.0.11","chai":"^3.5.0","console-polyfill":"~0.2.1","cz-conventional-changelog":"^2.1.0","enzyme":"^2.4.1","es5-shim":"~4.1.10","react":"15.3.2","react-addons-test-utils":"15.3.2","react-dom":"15.3.2","husky":"^4.2.5"}}
{
"name": "bee-transfer",
"version": "2.0.13",
"description": "Transfer ui component for react",
"keywords": [
"react",
"react-component",
"bee-transfer",
"iuap-design",
"tinper-bee",
"Transfer"
],
"engines": {
"node": ">=4.0.0"
},
"homepage": "https://github.com/tinper-bee/bee-transfer.git",
"author": "Yonyou FED",
"repository": "http://github.com/tinper-bee/bee-transfer",
"bugs": "https://github.com/tinper-bee/bee-transfer.git/issues",
"license": "MIT",
"main": "./build/index.js",
"config": {
"port": 3000,
"commitizen": {
"path": "./node_modules/cz-conventional-changelog"
}
},
"scripts": {
"dev": "bee-tools run start",
"build": "bee-tools run build",
"lint": "bee-tools-test run lint",
"test": "bee-tools-test run test",
"chrome": "bee-tools-test run chrome",
"coveralls": "bee-tools-test run coverage",
"browsers": "bee-tools-test run browsers",
"pub": "bee-tools run pub",
"version": "conventional-changelog -p angular -i CHANGELOG.md -s && git add CHANGELOG.md",
"postversion": "git push --follow-tags",
"prepublishOnly": "npm run build"
},
"dependencies": {
"babel-runtime": "^6.23.0",
"bee-animate": "^1.0.0",
"bee-button": "latest",
"bee-checkbox": "latest",
"bee-form-control": "latest",
"bee-icon": "latest",
"classnames": "^2.2.5",
"react-beautiful-dnd": "^9.0.2",
"react-lazy-load": "^3.0.12",
"shallowequal": "^1.0.2",
"tinper-bee-core": "latest"
},
"peerDependencies": {
"react": "^15.3.0 || ^16.0",
"react-dom": "^15.3.0 || ^16.0",
"prop-types": "15.6.0"
},
"devDependencies": {
"bee-button": "latest",
"bee-clipboard": "^2.0.0",
"bee-drawer": "0.0.2",
"bee-layout": "latest",
"bee-panel": "latest",
"bee-tree": "^2.0.11",
"chai": "^3.5.0",
"console-polyfill": "~0.2.1",
"cz-conventional-changelog": "^2.1.0",
"enzyme": "^2.4.1",
"es5-shim": "~4.1.10",
"react": "15.3.2",
"react-addons-test-utils": "15.3.2",
"react-dom": "15.3.2",
"husky": "^4.2.5"
}
}

View File

@ -59,7 +59,8 @@ class Transfer extends React.Component{
targetSelectedKeys: selectedKeys.filter(key => targetKeys.indexOf(key) > -1),
leftDataSource: [],
rightDataSource: [],
droppableId: ''
droppableId: '',
draggingItemId: ''
};
this.cacheTargetKeys = [...targetKeys];
}
@ -168,13 +169,12 @@ class Transfer extends React.Component{
let targetKeys = newTargetKeys || this.props.targetKeys;
//异步加载数据源时/移除已选时
let sourceDataSource = this.props.dataSource;
newDataSource = this.addUniqueKey(newDataSource);
sourceDataSource = this.addUniqueKey(sourceDataSource);
const leftDataSource = sourceDataSource.filter(({ key }) => targetKeys.indexOf(key) === -1);
const rightDataSource = newDataSource.filter(({key}) => targetKeys.indexOf(key) > -1);
const rightDataSource = targetKeys.map(key => {
return newDataSource.find(data => data.key === key)
})
this.splitedDataSource = {
leftDataSource,
rightDataSource,
@ -187,11 +187,20 @@ class Transfer extends React.Component{
return this.splitedDataSource;
}
moveTo = (direction) => {
moveTo = (direction, insertIndex) => {
const { targetKeys = [], onChange, appendToBottom } = this.props;
const { sourceSelectedKeys, targetSelectedKeys, leftDataSource, rightDataSource, droppableId } = this.state;
const moveKeys = direction === 'right' ? sourceSelectedKeys : targetSelectedKeys;
let temp = appendToBottom ? targetKeys.concat(moveKeys) : moveKeys.concat(targetKeys);
// let temp = appendToBottom ? targetKeys.concat(moveKeys) : moveKeys.concat(targetKeys); // 在这里
let temp = []
if (appendToBottom) {
temp = targetKeys.concat(moveKeys)
} else if (insertIndex) {
targetKeys.splice(insertIndex, 0, ...moveKeys)
temp = targetKeys
} else {
temp = moveKeys.concat(targetKeys);
}
// move items to target box
const newTargetKeys = direction === 'right'
? temp
@ -213,7 +222,7 @@ class Transfer extends React.Component{
}
moveToLeft = () => this.moveTo('left')
moveToRight = () => this.moveTo('right')
moveToRight = insertIndex => this.moveTo('right', insertIndex)
/**
* List中的item选中/未选中状态改变时触发
@ -341,6 +350,9 @@ class Transfer extends React.Component{
* 拖拽结束时触发
*/
onDragEnd = result => {
this.setState({
draggingItemId: ''
})
const { source, destination,draggableId } = result;
let { targetKeys, onChange } = this.props;
let sourceIndex = source ? source.index : ''; //初始位置
@ -377,14 +389,17 @@ class Transfer extends React.Component{
onChange(items.targetKeyArr, "", draggableId);
}
} else { // case5从左往右拖拽添加已选
const result = move(
if (this.state.sourceSelectedKeys.length > 1) {
return this.moveToRight(destination.index)
}
const result = move( // 一次移动的方法
this.getList(source.droppableId),
this.getList(destination.droppableId),
source,
destination,
targetKeys
)
if (onChange) {
if (onChange) { // onChange事件
onChange(result.newTargetKeys, "", draggableId);
}
this.setState({
@ -409,7 +424,8 @@ class Transfer extends React.Component{
this.handleRightSelect(selectedItem);
}
this.setState({
droppableId : source.droppableId
droppableId : source.droppableId,
draggingItemId: result.draggableId
})
}
@ -419,7 +435,7 @@ class Transfer extends React.Component{
searchPlaceholder, body, footer, listStyle, className = '',
filterOption, render, lazy, showCheckbox, draggable,renderOperation
} = this.props;
const { leftFilter, rightFilter, sourceSelectedKeys, targetSelectedKeys, leftDataSource, rightDataSource, droppableId } = this.state;
const { leftFilter, rightFilter, sourceSelectedKeys, targetSelectedKeys, leftDataSource, rightDataSource, droppableId, draggingItemId } = this.state;
// const { leftDataSource, rightDataSource } = this.splitDataSource(this.props);
const leftActive = targetSelectedKeys.length > 0;
@ -454,6 +470,7 @@ class Transfer extends React.Component{
draggable={draggable}
id={'1'}
droppableId={droppableId}
draggingItemId={draggingItemId}
/>
{!draggable?
<Operation

View File

@ -105,7 +105,8 @@
}
}
&-item {
overflow: hidden;
position: relative;
overflow: visible;
white-space: nowrap;
text-overflow: ellipsis;
padding: 7px 15px;
@ -115,6 +116,19 @@
.u-checkbox{
margin-right:0;
}
.multi-drag-count {
position: absolute;
right: -11px;
top: -8px;
z-index: 999;
width: 26px;
height: 26px;
line-height: 26px;
border-radius: 99px;
text-align: center;
background: #FFD700;
color: #999;
}
}
&-item:not(&-item-disabled):hover {
cursor: pointer;

View File

@ -22,11 +22,12 @@ class Item extends React.Component{
// return text.indexOf(filter) >= 0;
// }
render() {
const { render, filter, item, lazy, checked, prefixCls, onClick,renderedText,renderedEl, showCheckbox } = this.props;
const { render, filter, item, lazy, checked, prefixCls, onClick,renderedText,renderedEl, showCheckbox, checkedKeys, isMultiDragSource, draggingItemId } = this.props;
const isAttachedDraggingItem = checked && !isMultiDragSource && draggingItemId
const className = classNames({
[`${prefixCls}-content-item`]: true,
[`${prefixCls}-content-item-disabled`]: item.disabled,
[`${prefixCls}-content-item-selected`]: checked
[`${prefixCls}-content-item-disabled`]: item.disabled || isAttachedDraggingItem,
[`${prefixCls}-content-item-selected`]: checked && !isAttachedDraggingItem
});
const lazyProps = assign({
@ -41,7 +42,6 @@ class Item extends React.Component{
{
lazyFlag = false
}
if(!lazyFlag) {
return (
<li
@ -53,7 +53,7 @@ class Item extends React.Component{
<span>{renderedEl}</span>
</li>
)
}else {
} else {
return (
<Lazyload {...lazyProps}>
<li
@ -63,10 +63,14 @@ class Item extends React.Component{
>
{
showCheckbox?
<Checkbox checked={checked} disabled={item.disabled} onClick={item.disabled ? undefined : () => onClick(item)}/>
:''
<Checkbox
checked={checked && !isAttachedDraggingItem}
disabled={item.disabled || isAttachedDraggingItem}
onClick={item.disabled ? undefined : () => onClick(item)}
/> :''
}
<span>{renderedEl}</span>
{ (isMultiDragSource && checkedKeys.length > 1) && <span className="multi-drag-count">{checkedKeys.length}</span> }
</li>
</Lazyload>
);

View File

@ -149,8 +149,7 @@ class TransferList extends React.Component {
render() {
const { prefixCls, dataSource, titleText, filter, checkedKeys, lazy, filterOption,
body = noop, footer = noop, showSearch, render = noop, style, id, showCheckbox, draggable, droppableId } = this.props;
body = noop, footer = noop, showSearch, render = noop, style, id, showCheckbox, draggable, droppableId, draggingItemId } = this.props;
let { searchPlaceholder, notFoundContent } = this.props;
// Custom Layout
@ -205,9 +204,12 @@ class TransferList extends React.Component {
filter={filter}
filterOption={filterOption}
checked={checked}
checkedKeys={checkedKeys}
prefixCls={prefixCls}
onClick={this.handleSelect}
showCheckbox={showCheckbox}
isMultiDragSource={draggingItemId === item.key}
draggingItemId={draggingItemId}
/>
</div>
)}