@para-ui/core 4.0.19 → 4.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ComboSelect/index.js +147 -80
- package/ComboSelect/interface.d.ts +3 -0
- package/DragVerify/index.js +61 -37
- package/Form/index.js +1 -1
- package/FormItem/index.js +1 -1
- package/OperateBtn/index.js +5 -1
- package/README.md +6 -0
- package/Table/index.js +1 -1
- package/index.js +1 -1
- package/package.json +1 -1
- package/umd/ComboSelect.js +4 -4
- package/umd/DragVerify.js +4 -4
- package/umd/DynamicMultiBox.js +2 -2
- package/umd/Form.js +2 -2
- package/umd/FormItem.js +2 -2
- package/umd/OperateBtn.js +4 -4
- package/umd/Table.js +1 -1
- /package/_verture/{index-cb2c05c7.js → index-356d88fa.js} +0 -0
package/ComboSelect/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as __awaiter } from '../_verture/tslib.es6-55ed4bd2.js';
|
|
2
2
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
3
|
-
import React__default, { useRef, useState, useMemo, useImperativeHandle
|
|
3
|
+
import React__default, { useRef, useState, useEffect, useMemo, useImperativeHandle } from 'react';
|
|
4
4
|
import Down from '@para-ui/icons/Down';
|
|
5
5
|
import SearchIcon from '@para-ui/icons/Search';
|
|
6
6
|
import CloseIcon from '@para-ui/icons/Close';
|
|
@@ -96,7 +96,7 @@ var localeJson = {
|
|
|
96
96
|
en
|
|
97
97
|
};
|
|
98
98
|
|
|
99
|
-
var css_248z = "@charset \"UTF-8\";\n/**\n* @author Hanz\n* @date 2021/11/18 上午10:16\n* @description\n*/\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-comboselect .comboselect-wrapper {\n position: relative;\n display: flex;\n width: 100%;\n min-height: 32px;\n padding: 0 10px;\n font-size: 14px;\n border: 1px solid rgb(212, 218, 227);\n border-radius: 4px;\n background-color: rgb(255, 255, 255);\n cursor: pointer;\n transition: 0.3s;\n}\n.paraui-v4-comboselect .comboselect-wrapper:hover {\n border-color: rgb(87, 131, 235);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-placeholder {\n position: absolute;\n top: 50%;\n left: 12px;\n right: 42px;\n transform: translateY(-50%);\n font-size: 14px;\n color: rgb(161, 168, 179);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-arrow {\n position: absolute;\n top: 5px;\n right: 12px;\n line-height: 0;\n transition: 0.3s;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-arrow svg {\n color: rgb(92, 101, 115);\n font-size: 20px;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-clear {\n position: absolute;\n top: 7px;\n right: 12px;\n opacity: 0;\n line-height: 0;\n cursor: pointer;\n transition: 0.3s;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-clear svg {\n color: rgb(161, 168, 179);\n font-size: 16px;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-clear svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow {\n position: relative;\n display: flex;\n width: 100%;\n flex: auto;\n flex-wrap: wrap;\n padding: 3px 30px 0 0;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow {\n height: 30px;\n padding: 0 30px 0 0;\n align-items: center;\n overflow: hidden;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow .comboselect-single-content {\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 14px;\n color: rgb(29, 33, 38);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item {\n flex: none;\n max-width: 100%;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item {\n display: inline-flex;\n align-items: center;\n padding: 0 10px;\n height: 24px;\n margin: 0 4px 3px 0;\n max-width: 100%;\n color: rgb(29, 33, 38);\n line-height: 24px;\n background-color: rgb(234, 236, 241);\n border-radius: 2px;\n user-select: none;\n transition: 0.3s;\n cursor: default;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-content {\n display: inline-block;\n margin-right: 4px;\n overflow: hidden;\n font-size: 12px;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-remove {\n display: inline-flex;\n cursor: pointer;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-remove svg {\n font-size: 16px;\n color: inherit;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-remove svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item--disabled {\n color: rgb(161, 168, 179);\n background-color: rgb(212, 218, 227);\n cursor: not-allowed;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item--disabled .comboselect-item-remove {\n color: rgb(92, 101, 115);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item--unclosable .comboselect-item-content {\n margin-right: 0;\n}\n.paraui-v4-comboselect-focused .comboselect-wrapper {\n border-color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-focused .comboselect-wrapper .comboselect-arrow {\n transform: rotate(180deg);\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-focused .comboselect-wrapper .comboselect-arrow svg {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-disabled {\n cursor: not-allowed;\n}\n.paraui-v4-comboselect-disabled .comboselect-wrapper {\n background-color: rgb(247, 248, 250);\n border-color: rgb(212, 218, 227);\n pointer-events: none;\n}\n.paraui-v4-comboselect-disabled .comboselect-single-content {\n color: rgb(92, 101, 115) !important;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper, .paraui-v4-comboselect-medium .comboselect-wrapper {\n min-height: 28px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-overflow, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-overflow {\n padding-top: 3px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-overflow-item .comboselect-item, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-overflow-item .comboselect-item {\n height: 20px;\n margin-bottom: 3px;\n line-height: 20px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow {\n height: 26px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-arrow, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-arrow {\n top: 3px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-clear, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-clear {\n top: 5px;\n}\n.paraui-v4-comboselect-error .comboselect-wrapper {\n border-color: rgb(244, 66, 66);\n}\n.paraui-v4-comboselect-error .comboselect-wrapper:hover {\n border-color: rgb(244, 66, 66);\n}\n.paraui-v4-comboselect-clear .comboselect-wrapper:hover .comboselect-arrow {\n opacity: 0;\n}\n.paraui-v4-comboselect-clear .comboselect-wrapper:hover .comboselect-clear {\n opacity: 1;\n}\n.paraui-v4-comboselect-non-popup {\n border: 1px solid rgb(212, 218, 227);\n border-radius: 4px;\n background-color: rgb(255, 255, 255);\n}\n.paraui-v4-comboselect-non-popup .comboselect-wrapper {\n border: none;\n border-bottom: 1px solid rgb(212, 218, 227);\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n cursor: default;\n}\n.paraui-v4-comboselect-non-popup .comboselect-wrapper:hover {\n border-color: rgb(212, 218, 227);\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content {\n position: relative;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search {\n display: flex;\n align-items: center;\n height: 40px;\n border-bottom: 1px solid rgb(234, 236, 241);\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-icon {\n line-height: 0;\n cursor: pointer;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-icon svg {\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-input {\n width: 100%;\n flex: auto;\n border: none;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-input .text-field-content {\n border: unset;\n height: unset;\n border-radius: unset;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-input::placeholder {\n color: rgb(161, 168, 179);\n font-size: 14px;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search .comboselect-clear-icon {\n display: inline-flex;\n cursor: pointer;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search .comboselect-clear-icon svg {\n font-size: 16px;\n color: rgb(161, 168, 179);\n transition: all 0.3s;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search .comboselect-clear-icon svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-table {\n padding-bottom: 10px;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-table .table-pagination {\n height: 52px;\n padding-right: 20px;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-table .paraui-v4-table {\n box-shadow: none;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-tree {\n padding: 6px 7px;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-tree .paraui-v4-tree-empty {\n padding: 52px 0 73px 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-dropdown-wrapper {\n position: relative;\n color: initial;\n overflow: hidden;\n padding: 4px 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-dropdown-wrapper.show-search {\n padding-top: 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-dropdown-wrapper.mode-table {\n padding-top: 0;\n}\n.paraui-v4-comboselect-dropdown .dropdown-content {\n display: flex;\n flex-direction: column;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search {\n display: flex;\n align-items: center;\n height: 30px;\n min-height: 30px;\n border-bottom: 1px solid rgb(234, 236, 241);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-icon {\n line-height: 0;\n cursor: pointer;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-icon svg {\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input {\n width: 100%;\n flex: auto;\n border: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input .text-field-content {\n border: unset;\n height: unset;\n border-radius: unset;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::placeholder {\n color: rgb(161, 168, 179);\n font-size: 14px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search .comboselect-clear-icon {\n display: inline-flex;\n cursor: pointer;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search .comboselect-clear-icon svg {\n font-size: 16px;\n color: rgb(161, 168, 179);\n transition: all 0.3s;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search .comboselect-clear-icon svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-dropdown .comboselect-table {\n flex: 1 1;\n overflow-y: auto;\n height: 100%;\n padding-bottom: 2px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-table .paraui-v4-table {\n box-shadow: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-table .paraui-v4-table .table-pagination {\n height: 38px;\n padding-right: 10px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-table .paraui-v4-table .table-contain {\n height: calc(100% - 38px);\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree {\n flex: 1 1;\n overflow-y: auto;\n height: 100%;\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree .paraui-v4-tree-empty {\n height: 100%;\n padding: 52px 0 73px 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree .loading-node-content {\n display: flex;\n justify-content: center;\n}\n@keyframes rotateLoading {\n 0% {\n transformOrigin: 50% 50%;\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree .loading-node-content .loading-icon {\n margin-right: 4px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree .loading-node-content .loading-icon > svg {\n transition: all 0.3s ease-in-out;\n animation: rotateLoading 1s infinite linear;\n font-size: 20px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-actions {\n display: flex;\n align-items: center;\n padding: 8px 20px 8px 0;\n justify-content: flex-end;\n border-top: 1px solid rgb(234, 236, 241);\n}\n.paraui-v4-comboselect-dropdown .comboselect-actions button + button {\n margin-left: 10px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-fullPath {\n height: 34px;\n line-height: 34px;\n padding: 0 10px;\n border-top: 1px solid rgb(234, 236, 241);\n font-size: 14px;\n color: rgb(29, 33, 38);\n}\n.paraui-v4-comboselect-dropdown .comboselect-fullPath span {\n display: inline-block;\n height: 100%;\n padding-right: 10px;\n border-right: 1px solid rgb(234, 236, 241);\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-empty {\n padding: 50px 0 72px 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode {\n width: 100%;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode .paraui-v4-tree-switcher {\n display: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode .paraui-v4-tree-checkbox {\n display: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode .paraui-v4-tree-node-content-wrapper {\n width: 100%;\n margin: 0;\n padding: 3px 28px 3px 12px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode .paraui-v4-tree-node-content-wrapper:hover {\n background-color: rgb(247, 248, 250);\n border-radius: 0 !important;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode-checkbox-checked .paraui-v4-tree-node-content-wrapper {\n position: relative;\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode-checkbox-checked .paraui-v4-tree-node-content-wrapper::after {\n position: absolute;\n content: \" \";\n width: 15px;\n height: 10px;\n right: 12px;\n top: 50%;\n background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAVCAYAAABR915hAAAABHNCSVQICAgIfAhkiAAAAPhJREFUSEu91TsKwkAQANBZ0drOIjaWIkTiCcSbaLHgbTxAFPUGHkFvEAh4hASs7BXH3WBC/tmv24TAJG8/M7ME/jRcGq8JfnYIJAj3zor8w01QwGNqvaG/sA6XUUQ4sxWziVgcTSgnrcFtqDW4C7UCi6DGYVE0g2f04d39UaCTZzJoArs0urIMWyLgKfTHGxVcFk3gOY2e7DnkLyq4CvpbcbGryOCqaHbGlR8IbLsOWshqGVwXrZSTCG4Cra3jNtwU2thA6nCA3i1/taW3jEr5tXauMp4HdNHOllmHm0A7YR6Qx02hQjAPmm7jyeCFXnhwLqpnWv7uCxqa4b8ke3ZZAAAAAElFTkSuQmCC\");\n transform: translateY(-50%);\n background-size: 15px 10px;\n background-repeat: no-repeat;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode-disabled .paraui-v4-tree-node-content-wrapper:hover {\n background-color: transparent;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list-single .paraui-v4-tree-treenode-checkbox-checked .paraui-v4-tree-node-content-wrapper::after {\n display: none;\n}\n.paraui-v4-comboselect-more-popover {\n padding-left: 12px;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper {\n width: 300px;\n padding: 4px 0;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-title {\n display: flex;\n align-items: center;\n height: 30px;\n padding: 0 10px;\n font-size: 12px;\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-content {\n max-height: 300px;\n overflow-y: auto;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item {\n display: flex;\n align-items: center;\n height: 30px;\n font-size: 14px;\n color: rgb(29, 33, 38);\n padding: 0 10px;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item:hover {\n background-color: rgb(247, 248, 250);\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-text {\n display: inline-block;\n max-width: calc(100% - 25px);\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-remove {\n display: inline-flex;\n margin-left: auto;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-remove svg {\n font-size: 18px;\n color: rgb(92, 101, 115);\n cursor: pointer;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-remove svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::-ms-clear, .paraui-v4-comboselect-non-popup .comboselect-search-input::-ms-clear {\n display: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::-ms-reveal, .paraui-v4-comboselect-non-popup .comboselect-search-input::-ms-reveal {\n display: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input:-moz-placeholder, .paraui-v4-comboselect-non-popup .comboselect-search-input:-moz-placeholder {\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::-moz-placeholder, .paraui-v4-comboselect-non-popup .comboselect-search-input::-moz-placeholder {\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input:-ms-input-placeholder, .paraui-v4-comboselect-non-popup .comboselect-search-input:-ms-input-placeholder {\n /* Internet Explorer 10-11 */\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::-ms-input-placeholder, .paraui-v4-comboselect-non-popup .comboselect-search-input::-ms-input-placeholder {\n /* Microsoft Edge */\n color: rgb(161, 168, 179);\n}";
|
|
99
|
+
var css_248z = "@charset \"UTF-8\";\n/**\n* @author Hanz\n* @date 2021/11/18 上午10:16\n* @description\n*/\n/**\n* @author linhd\n* @date 2023/4/11 14:16\n* @description 最新色卡\n*/\n.paraui-v4-comboselect .comboselect-wrapper {\n position: relative;\n display: flex;\n width: 100%;\n min-height: 32px;\n padding: 0 10px;\n font-size: 14px;\n border: 1px solid rgb(212, 218, 227);\n border-radius: 4px;\n background-color: rgb(255, 255, 255);\n cursor: pointer;\n transition: 0.3s;\n}\n.paraui-v4-comboselect .comboselect-wrapper:hover {\n border-color: rgb(87, 131, 235);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-placeholder {\n position: absolute;\n top: 50%;\n left: 12px;\n right: 42px;\n transform: translateY(-50%);\n font-size: 14px;\n color: rgb(161, 168, 179);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-arrow {\n position: absolute;\n top: 5px;\n right: 12px;\n line-height: 0;\n transition: 0.3s;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-arrow svg {\n color: rgb(92, 101, 115);\n font-size: 20px;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-clear {\n position: absolute;\n top: 7px;\n right: 12px;\n opacity: 0;\n line-height: 0;\n cursor: pointer;\n transition: 0.3s;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-clear svg {\n color: rgb(161, 168, 179);\n font-size: 16px;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-clear svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow {\n position: relative;\n display: flex;\n width: 100%;\n flex: auto;\n flex-wrap: wrap;\n padding: 0 30px 0 0;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow {\n height: 30px;\n padding: 0 30px 0 0;\n align-items: center;\n overflow: hidden;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow .comboselect-single-content {\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 14px;\n color: rgb(29, 33, 38);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item {\n flex: none;\n max-width: 100%;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item {\n display: inline-flex;\n align-items: center;\n padding: 0 10px;\n height: 24px;\n margin: 3px 4px 0 0;\n max-width: 100%;\n color: rgb(29, 33, 38);\n line-height: 24px;\n background-color: rgb(234, 236, 241);\n border-radius: 2px;\n user-select: none;\n transition: 0.3s;\n cursor: default;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-content {\n display: inline-block;\n margin-right: 4px;\n overflow: hidden;\n font-size: 12px;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-remove {\n display: inline-flex;\n cursor: pointer;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-remove svg {\n font-size: 16px;\n color: inherit;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item .comboselect-item-remove svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item--disabled {\n color: rgb(161, 168, 179);\n background-color: rgb(212, 218, 227);\n cursor: not-allowed;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item--disabled .comboselect-item-remove {\n color: rgb(92, 101, 115);\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-item .comboselect-item--unclosable .comboselect-item-content {\n margin-right: 0;\n}\n.paraui-v4-comboselect .comboselect-wrapper .comboselect-overflow-list {\n overflow: hidden;\n height: 30px;\n display: flex;\n flex-wrap: wrap;\n}\n.paraui-v4-comboselect-focused .comboselect-wrapper {\n border-color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-focused .comboselect-wrapper .comboselect-arrow {\n transform: rotate(180deg);\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-focused .comboselect-wrapper .comboselect-arrow svg {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-disabled {\n cursor: not-allowed;\n}\n.paraui-v4-comboselect-disabled .comboselect-wrapper {\n background-color: rgb(247, 248, 250);\n border-color: rgb(212, 218, 227);\n pointer-events: none;\n}\n.paraui-v4-comboselect-disabled .comboselect-single-content {\n color: rgb(92, 101, 115) !important;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper, .paraui-v4-comboselect-medium .comboselect-wrapper {\n min-height: 28px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-overflow, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-overflow {\n padding-top: 3px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-overflow-item .comboselect-item, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-overflow-item .comboselect-item {\n height: 20px;\n margin-bottom: 3px;\n line-height: 20px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-overflow-single.comboselect-overflow {\n height: 26px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-arrow, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-arrow {\n top: 3px;\n}\n.paraui-v4-comboselect-small .comboselect-wrapper .comboselect-clear, .paraui-v4-comboselect-medium .comboselect-wrapper .comboselect-clear {\n top: 5px;\n}\n.paraui-v4-comboselect-error .comboselect-wrapper {\n border-color: rgb(244, 66, 66);\n}\n.paraui-v4-comboselect-error .comboselect-wrapper:hover {\n border-color: rgb(244, 66, 66);\n}\n.paraui-v4-comboselect-clear .comboselect-wrapper:hover .comboselect-arrow {\n opacity: 0;\n}\n.paraui-v4-comboselect-clear .comboselect-wrapper:hover .comboselect-clear {\n opacity: 1;\n}\n.paraui-v4-comboselect-non-popup {\n border: 1px solid rgb(212, 218, 227);\n border-radius: 4px;\n background-color: rgb(255, 255, 255);\n}\n.paraui-v4-comboselect-non-popup .comboselect-wrapper {\n border: none;\n border-bottom: 1px solid rgb(212, 218, 227);\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n cursor: default;\n}\n.paraui-v4-comboselect-non-popup .comboselect-wrapper:hover {\n border-color: rgb(212, 218, 227);\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content {\n position: relative;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search {\n display: flex;\n align-items: center;\n height: 40px;\n border-bottom: 1px solid rgb(234, 236, 241);\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-icon {\n line-height: 0;\n cursor: pointer;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-icon svg {\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-input {\n width: 100%;\n flex: auto;\n border: none;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-input .text-field-content {\n border: unset;\n height: unset;\n border-radius: unset;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search-input::placeholder {\n color: rgb(161, 168, 179);\n font-size: 14px;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search .comboselect-clear-icon {\n display: inline-flex;\n cursor: pointer;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search .comboselect-clear-icon svg {\n font-size: 16px;\n color: rgb(161, 168, 179);\n transition: all 0.3s;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-search .comboselect-clear-icon svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-table {\n padding-bottom: 10px;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-table .table-pagination {\n height: 52px;\n padding-right: 20px;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-table .paraui-v4-table {\n box-shadow: none;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-tree {\n padding: 6px 7px;\n}\n.paraui-v4-comboselect-non-popup .comboselect-non-popup-content .comboselect-tree .paraui-v4-tree-empty {\n padding: 52px 0 73px 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-dropdown-wrapper {\n position: relative;\n color: initial;\n overflow: hidden;\n padding: 4px 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-dropdown-wrapper.show-search {\n padding-top: 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-dropdown-wrapper.mode-table {\n padding-top: 0;\n}\n.paraui-v4-comboselect-dropdown .dropdown-content {\n display: flex;\n flex-direction: column;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search {\n display: flex;\n align-items: center;\n height: 30px;\n min-height: 30px;\n border-bottom: 1px solid rgb(234, 236, 241);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-icon {\n line-height: 0;\n cursor: pointer;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-icon svg {\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input {\n width: 100%;\n flex: auto;\n border: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input .text-field-content {\n border: unset;\n height: unset;\n border-radius: unset;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::placeholder {\n color: rgb(161, 168, 179);\n font-size: 14px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search .comboselect-clear-icon {\n display: inline-flex;\n cursor: pointer;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search .comboselect-clear-icon svg {\n font-size: 16px;\n color: rgb(161, 168, 179);\n transition: all 0.3s;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search .comboselect-clear-icon svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-dropdown .comboselect-table {\n flex: 1 1;\n overflow-y: auto;\n height: 100%;\n padding-bottom: 2px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-table .paraui-v4-table {\n box-shadow: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-table .paraui-v4-table .table-pagination {\n height: 38px;\n padding-right: 10px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-table .paraui-v4-table .table-contain {\n height: calc(100% - 38px);\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree {\n flex: 1 1;\n overflow-y: auto;\n height: 100%;\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree .paraui-v4-tree-empty {\n height: 100%;\n padding: 52px 0 73px 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree .loading-node-content {\n display: flex;\n justify-content: center;\n}\n@keyframes rotateLoading {\n 0% {\n transformOrigin: 50% 50%;\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree .loading-node-content .loading-icon {\n margin-right: 4px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-tree .loading-node-content .loading-icon > svg {\n transition: all 0.3s ease-in-out;\n animation: rotateLoading 1s infinite linear;\n font-size: 20px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-actions {\n display: flex;\n align-items: center;\n padding: 8px 20px 8px 0;\n justify-content: flex-end;\n border-top: 1px solid rgb(234, 236, 241);\n}\n.paraui-v4-comboselect-dropdown .comboselect-actions button + button {\n margin-left: 10px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-fullPath {\n height: 34px;\n line-height: 34px;\n padding: 0 10px;\n border-top: 1px solid rgb(234, 236, 241);\n font-size: 14px;\n color: rgb(29, 33, 38);\n}\n.paraui-v4-comboselect-dropdown .comboselect-fullPath span {\n display: inline-block;\n height: 100%;\n padding-right: 10px;\n border-right: 1px solid rgb(234, 236, 241);\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-empty {\n padding: 50px 0 72px 0;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode {\n width: 100%;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode .paraui-v4-tree-switcher {\n display: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode .paraui-v4-tree-checkbox {\n display: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode .paraui-v4-tree-node-content-wrapper {\n width: 100%;\n margin: 0;\n padding: 3px 28px 3px 12px;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode .paraui-v4-tree-node-content-wrapper:hover {\n background-color: rgb(247, 248, 250);\n border-radius: 0 !important;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode-checkbox-checked .paraui-v4-tree-node-content-wrapper {\n position: relative;\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode-checkbox-checked .paraui-v4-tree-node-content-wrapper::after {\n position: absolute;\n content: \" \";\n width: 15px;\n height: 10px;\n right: 12px;\n top: 50%;\n background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAVCAYAAABR915hAAAABHNCSVQICAgIfAhkiAAAAPhJREFUSEu91TsKwkAQANBZ0drOIjaWIkTiCcSbaLHgbTxAFPUGHkFvEAh4hASs7BXH3WBC/tmv24TAJG8/M7ME/jRcGq8JfnYIJAj3zor8w01QwGNqvaG/sA6XUUQ4sxWziVgcTSgnrcFtqDW4C7UCi6DGYVE0g2f04d39UaCTZzJoArs0urIMWyLgKfTHGxVcFk3gOY2e7DnkLyq4CvpbcbGryOCqaHbGlR8IbLsOWshqGVwXrZSTCG4Cra3jNtwU2thA6nCA3i1/taW3jEr5tXauMp4HdNHOllmHm0A7YR6Qx02hQjAPmm7jyeCFXnhwLqpnWv7uCxqa4b8ke3ZZAAAAAElFTkSuQmCC\");\n transform: translateY(-50%);\n background-size: 15px 10px;\n background-repeat: no-repeat;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list .paraui-v4-tree-treenode-disabled .paraui-v4-tree-node-content-wrapper:hover {\n background-color: transparent;\n}\n.paraui-v4-comboselect-dropdown .comboselect-list-single .paraui-v4-tree-treenode-checkbox-checked .paraui-v4-tree-node-content-wrapper::after {\n display: none;\n}\n.paraui-v4-comboselect-more-popover {\n padding-left: 12px;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper {\n width: 300px;\n padding: 4px 0;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-title {\n display: flex;\n align-items: center;\n height: 30px;\n padding: 0 10px;\n font-size: 12px;\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-content {\n max-height: 300px;\n overflow-y: auto;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item {\n display: flex;\n align-items: center;\n height: 30px;\n font-size: 14px;\n color: rgb(29, 33, 38);\n padding: 0 10px;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item:hover {\n background-color: rgb(247, 248, 250);\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-text {\n display: inline-block;\n max-width: calc(100% - 25px);\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-remove {\n display: inline-flex;\n margin-left: auto;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-remove svg {\n font-size: 18px;\n color: rgb(92, 101, 115);\n cursor: pointer;\n}\n.paraui-v4-comboselect-more-popover .comboselect-more-wrapper .comboselect-more-item-remove svg:hover {\n color: rgb(46, 101, 230);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::-ms-clear, .paraui-v4-comboselect-non-popup .comboselect-search-input::-ms-clear {\n display: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::-ms-reveal, .paraui-v4-comboselect-non-popup .comboselect-search-input::-ms-reveal {\n display: none;\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input:-moz-placeholder, .paraui-v4-comboselect-non-popup .comboselect-search-input:-moz-placeholder {\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::-moz-placeholder, .paraui-v4-comboselect-non-popup .comboselect-search-input::-moz-placeholder {\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input:-ms-input-placeholder, .paraui-v4-comboselect-non-popup .comboselect-search-input:-ms-input-placeholder {\n /* Internet Explorer 10-11 */\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect-dropdown .comboselect-search-input::-ms-input-placeholder, .paraui-v4-comboselect-non-popup .comboselect-search-input::-ms-input-placeholder {\n /* Microsoft Edge */\n color: rgb(161, 168, 179);\n}\n.paraui-v4-comboselect.paraui-v4-comboselect-overLine .comboselect-wrapper .comboselect-overflow-list {\n height: 100%;\n padding-bottom: 3px;\n}";
|
|
100
100
|
styleInject(css_248z);
|
|
101
101
|
|
|
102
102
|
//组合选择器
|
|
@@ -106,6 +106,7 @@ const ComboSelect = props => {
|
|
|
106
106
|
placeholder,
|
|
107
107
|
searchPlaceholder,
|
|
108
108
|
maxCount,
|
|
109
|
+
overLine = false,
|
|
109
110
|
disabled = false,
|
|
110
111
|
allowClear = false,
|
|
111
112
|
className,
|
|
@@ -182,7 +183,6 @@ const ComboSelect = props => {
|
|
|
182
183
|
const [hasAllClear, setHasAllClear] = useState(false); //显示清除按钮
|
|
183
184
|
const [inRefresh, setInRefresh] = useState(0); //内部刷新组件
|
|
184
185
|
const [openMore, setOpenMore] = useState(false); //显示更过选中
|
|
185
|
-
const [moreTagList, setMoreTagList] = useState([]); //更多tag列表
|
|
186
186
|
const originValueRef = useRef([]); // 保存value
|
|
187
187
|
const hasPopup = useRef(false); //显示弹框标识
|
|
188
188
|
const popUpNodeRef = useRef(); //popup dom
|
|
@@ -200,6 +200,63 @@ const ComboSelect = props => {
|
|
|
200
200
|
const intl = useFormatMessage('ComboSelect', localeJson);
|
|
201
201
|
const isRemoteLoadRef = useRef(isRemoteLoad(mode, mode === 'table' ? TableProps : TreeProps)); //是否远程加载数据
|
|
202
202
|
const [loadedKeys, setLoadKeys] = useState(); //加载过的key
|
|
203
|
+
const constData = useRef({
|
|
204
|
+
list: []
|
|
205
|
+
});
|
|
206
|
+
const [morePos, setMorePos] = useState(null); // 超出在原始位置
|
|
207
|
+
const currentDom = useRef(null); // 容器
|
|
208
|
+
constData.current.openMore = openMore;
|
|
209
|
+
constData.current.list = [...checkList];
|
|
210
|
+
// 关闭显示更多
|
|
211
|
+
const handleCloseMore = () => {
|
|
212
|
+
if (constData.current.openMore) setOpenMore(false);
|
|
213
|
+
};
|
|
214
|
+
/**
|
|
215
|
+
* 多选 不换行 计算
|
|
216
|
+
* @param index 数组下标
|
|
217
|
+
*/
|
|
218
|
+
const handMultiline = index => {
|
|
219
|
+
if (index === null || index === 0) return;
|
|
220
|
+
if (index === undefined) index = constData.current.list.length;
|
|
221
|
+
if (!currentDom.current) return;
|
|
222
|
+
const boxDom = currentDom.current.querySelector('.comboselect-overflow-list');
|
|
223
|
+
if (!boxDom) return;
|
|
224
|
+
if (boxDom.scrollHeight > boxDom.clientHeight) {
|
|
225
|
+
const num = Number(index) - 1;
|
|
226
|
+
// 超出
|
|
227
|
+
setMorePos(num);
|
|
228
|
+
handMultiline(num);
|
|
229
|
+
} else {
|
|
230
|
+
// 一行
|
|
231
|
+
if (constData.current.list.length <= index) handleCloseMore();
|
|
232
|
+
}
|
|
233
|
+
};
|
|
234
|
+
/** 改变屏幕大小 */
|
|
235
|
+
const changeSize = () => {
|
|
236
|
+
if (constData.current.list.length === 0) return setMorePos(null);
|
|
237
|
+
clearTimeout(constData.current.resizeTimer);
|
|
238
|
+
constData.current.resizeTimer = setTimeout(() => {
|
|
239
|
+
setMorePos(constData.current.list.length);
|
|
240
|
+
handMultiline();
|
|
241
|
+
}, 50);
|
|
242
|
+
};
|
|
243
|
+
useEffect(() => {
|
|
244
|
+
changeSize();
|
|
245
|
+
return () => {
|
|
246
|
+
clearTimeout(constData.current.resizeTimer);
|
|
247
|
+
};
|
|
248
|
+
}, [checkList]);
|
|
249
|
+
// 多选换行
|
|
250
|
+
useEffect(() => {
|
|
251
|
+
if (!overLine && checkable) {
|
|
252
|
+
window.addEventListener('resize', changeSize);
|
|
253
|
+
} else {
|
|
254
|
+
window.removeEventListener('resize', changeSize);
|
|
255
|
+
}
|
|
256
|
+
return () => {
|
|
257
|
+
window.removeEventListener('resize', changeSize);
|
|
258
|
+
};
|
|
259
|
+
}, [overLine, checkable]);
|
|
203
260
|
//选择框点击
|
|
204
261
|
const handleSelectorClick = event => {
|
|
205
262
|
if (disablePopup) return;
|
|
@@ -228,7 +285,6 @@ const ComboSelect = props => {
|
|
|
228
285
|
const clearSelectorData = () => {
|
|
229
286
|
setCheckKeys([]);
|
|
230
287
|
setCheckList([]);
|
|
231
|
-
setMoreTagList([]);
|
|
232
288
|
};
|
|
233
289
|
//处理选中
|
|
234
290
|
const handleChecked = (keys, values) => {
|
|
@@ -312,7 +368,8 @@ const ComboSelect = props => {
|
|
|
312
368
|
["".concat($prefixCls, "-comboselect-radioable")]: !checkable,
|
|
313
369
|
["".concat($prefixCls, "-comboselect-error")]: error,
|
|
314
370
|
["".concat($prefixCls, "-comboselect-clear")]: hasAllClear,
|
|
315
|
-
["".concat($prefixCls, "-comboselect-non-popup")]: disablePopup
|
|
371
|
+
["".concat($prefixCls, "-comboselect-non-popup")]: disablePopup,
|
|
372
|
+
["".concat($prefixCls, "-comboselect-overLine")]: overLine
|
|
316
373
|
}, "".concat($prefixCls, "-comboselect-").concat(size));
|
|
317
374
|
};
|
|
318
375
|
//格式化选中数据
|
|
@@ -559,35 +616,8 @@ const ComboSelect = props => {
|
|
|
559
616
|
})
|
|
560
617
|
}));
|
|
561
618
|
}
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
if (maxCount) {
|
|
565
|
-
if (checkList.length > maxCount) {
|
|
566
|
-
overList = checkList.slice(maxCount); //超出
|
|
567
|
-
realShowList = checkList.slice(0, maxCount);
|
|
568
|
-
setMoreTagList(overList);
|
|
569
|
-
} else {
|
|
570
|
-
setMoreTagList([]);
|
|
571
|
-
setOpenMore(false);
|
|
572
|
-
}
|
|
573
|
-
}
|
|
574
|
-
//超出tag渲染
|
|
575
|
-
const renderOverTag = () => {
|
|
576
|
-
return (overList === null || overList === void 0 ? void 0 : overList.length) ? jsx("div", Object.assign({
|
|
577
|
-
className: 'comboselect-overflow-item'
|
|
578
|
-
}, {
|
|
579
|
-
children: jsx("span", Object.assign({
|
|
580
|
-
className: 'comboselect-item',
|
|
581
|
-
onClick: handleOpenMore
|
|
582
|
-
}, {
|
|
583
|
-
children: jsx("span", Object.assign({
|
|
584
|
-
className: 'comboselect-item-content'
|
|
585
|
-
}, {
|
|
586
|
-
children: "+".concat(overList === null || overList === void 0 ? void 0 : overList.length)
|
|
587
|
-
}))
|
|
588
|
-
}))
|
|
589
|
-
})) : null;
|
|
590
|
-
};
|
|
619
|
+
// 多选
|
|
620
|
+
if (!checkList.length) return;
|
|
591
621
|
//渲染tag item
|
|
592
622
|
const renderTagItem = item => {
|
|
593
623
|
if (tagRender) return tagRender(item);
|
|
@@ -642,16 +672,40 @@ const ComboSelect = props => {
|
|
|
642
672
|
}))]
|
|
643
673
|
}));
|
|
644
674
|
};
|
|
645
|
-
|
|
646
|
-
|
|
675
|
+
//超出tag渲染
|
|
676
|
+
const renderOverTag = () => {
|
|
677
|
+
if (morePos !== null && constData.current.list.length > morePos) {
|
|
647
678
|
return jsx("div", Object.assign({
|
|
648
679
|
className: 'comboselect-overflow-item'
|
|
649
680
|
}, {
|
|
650
|
-
children:
|
|
651
|
-
|
|
652
|
-
|
|
681
|
+
children: jsx("span", Object.assign({
|
|
682
|
+
className: 'comboselect-item',
|
|
683
|
+
onClick: handleOpenMore
|
|
684
|
+
}, {
|
|
685
|
+
children: jsxs("span", Object.assign({
|
|
686
|
+
className: 'comboselect-item-content'
|
|
687
|
+
}, {
|
|
688
|
+
children: ["+", constData.current.list.length - morePos]
|
|
689
|
+
}))
|
|
690
|
+
}))
|
|
691
|
+
}));
|
|
692
|
+
}
|
|
693
|
+
return null;
|
|
694
|
+
};
|
|
695
|
+
const list = checkList.map((item, index) => {
|
|
696
|
+
if (morePos !== null && morePos <= index) return null;
|
|
697
|
+
return jsx("div", Object.assign({
|
|
698
|
+
className: 'comboselect-overflow-item'
|
|
699
|
+
}, {
|
|
700
|
+
children: renderTagItem(item)
|
|
701
|
+
}), index);
|
|
653
702
|
});
|
|
654
|
-
|
|
703
|
+
return jsxs("div", Object.assign({
|
|
704
|
+
className: "comboselect-overflow-list"
|
|
705
|
+
}, {
|
|
706
|
+
children: [list, renderOverTag()]
|
|
707
|
+
}));
|
|
708
|
+
}, [checkList, onChange, checkable, morePos, maxTagTextLength, outputTitle, tagRender, renderInputContent, overLine]);
|
|
655
709
|
//处理参数
|
|
656
710
|
const getParams = useMemo(() => {
|
|
657
711
|
let P = params || emptyParamsRef.current;
|
|
@@ -695,7 +749,8 @@ const ComboSelect = props => {
|
|
|
695
749
|
refresh: refresh !== null && refresh !== void 0 ? refresh : inRefresh,
|
|
696
750
|
autoSize: false,
|
|
697
751
|
refreshInside: false,
|
|
698
|
-
checkCount: false
|
|
752
|
+
checkCount: false,
|
|
753
|
+
paginationType: "simple"
|
|
699
754
|
}))
|
|
700
755
|
}));
|
|
701
756
|
}, [checkKeys, refresh, params, inRefresh, disablePopup, open, getParams, fieldKey, checkable]);
|
|
@@ -801,32 +856,34 @@ const ComboSelect = props => {
|
|
|
801
856
|
}));
|
|
802
857
|
}, [checkKeys, refresh, params, inRefresh, disablePopup, open, loadedKeys, mode, getParams, checkable]);
|
|
803
858
|
//组合选择器输入框
|
|
804
|
-
const comboSelectorInput =
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
children: [jsx("div", Object.assign({
|
|
810
|
-
className: clsx('comboselect-overflow', !checkable && 'comboselect-overflow-single')
|
|
811
|
-
}, {
|
|
812
|
-
children: tagMemo
|
|
813
|
-
})), !disablePopup && jsx("span", Object.assign({
|
|
814
|
-
className: 'comboselect-arrow'
|
|
815
|
-
}, {
|
|
816
|
-
children: jsx(Down, {})
|
|
817
|
-
})), hasAllClear && jsx("span", Object.assign({
|
|
818
|
-
className: 'comboselect-clear',
|
|
819
|
-
onClick: handleAllClear
|
|
820
|
-
}, {
|
|
821
|
-
children: jsx(CloseCircleF, {})
|
|
822
|
-
})), !(checkList === null || checkList === void 0 ? void 0 : checkList.length) && jsx("span", Object.assign({
|
|
823
|
-
className: 'comboselect-placeholder'
|
|
859
|
+
const comboSelectorInput = useMemo(() => {
|
|
860
|
+
return jsxs("div", Object.assign({
|
|
861
|
+
className: 'comboselect-wrapper',
|
|
862
|
+
ref: selectRef,
|
|
863
|
+
onClick: handleSelectorClick
|
|
824
864
|
}, {
|
|
825
|
-
children:
|
|
826
|
-
|
|
827
|
-
}
|
|
828
|
-
|
|
829
|
-
|
|
865
|
+
children: [jsx("div", Object.assign({
|
|
866
|
+
className: clsx('comboselect-overflow', !checkable && 'comboselect-overflow-single')
|
|
867
|
+
}, {
|
|
868
|
+
children: tagMemo
|
|
869
|
+
})), !disablePopup && jsx("span", Object.assign({
|
|
870
|
+
className: 'comboselect-arrow'
|
|
871
|
+
}, {
|
|
872
|
+
children: jsx(Down, {})
|
|
873
|
+
})), hasAllClear && jsx("span", Object.assign({
|
|
874
|
+
className: 'comboselect-clear',
|
|
875
|
+
onClick: handleAllClear
|
|
876
|
+
}, {
|
|
877
|
+
children: jsx(CloseCircleF, {})
|
|
878
|
+
})), !(checkList === null || checkList === void 0 ? void 0 : checkList.length) && jsx("span", Object.assign({
|
|
879
|
+
className: 'comboselect-placeholder'
|
|
880
|
+
}, {
|
|
881
|
+
children: placeholder !== null && placeholder !== void 0 ? placeholder : intl({
|
|
882
|
+
id: 'pleaseSelect'
|
|
883
|
+
})
|
|
884
|
+
}))]
|
|
885
|
+
}));
|
|
886
|
+
}, [checkList, tagMemo, checkable, hasAllClear, disablePopup, placeholder]);
|
|
830
887
|
//渲染label
|
|
831
888
|
const renderLabel = () => {
|
|
832
889
|
if (label || required) {
|
|
@@ -837,16 +894,6 @@ const ComboSelect = props => {
|
|
|
837
894
|
}
|
|
838
895
|
return null;
|
|
839
896
|
};
|
|
840
|
-
//非popover 模式
|
|
841
|
-
const nonPopoverMemo = useMemo(() => {
|
|
842
|
-
return jsxs(Fragment, {
|
|
843
|
-
children: [comboSelectorInput, jsxs("div", Object.assign({
|
|
844
|
-
className: 'comboselect-non-popup-content'
|
|
845
|
-
}, {
|
|
846
|
-
children: [showSearch && renderSearch(), mode === 'table' ? tableMemo : treeMemo, renderFullPath(), showPopoverActions && renderActions()]
|
|
847
|
-
}))]
|
|
848
|
-
});
|
|
849
|
-
}, [checkKeys, inputValue, refresh, params, fullPath, hasAllClear, helperText, language, locale, onChange, onClear]);
|
|
850
897
|
//popover 浮层
|
|
851
898
|
const renderOverlay = () => {
|
|
852
899
|
return jsx("div", Object.assign({
|
|
@@ -864,8 +911,8 @@ const ComboSelect = props => {
|
|
|
864
911
|
//popover 渲染更多节点
|
|
865
912
|
const renderPopoverMore = () => {
|
|
866
913
|
const generateMoreTag = () => {
|
|
867
|
-
|
|
868
|
-
|
|
914
|
+
return checkList.map((item, idx) => {
|
|
915
|
+
if (morePos !== null && morePos > idx) return null;
|
|
869
916
|
return jsxs("div", Object.assign({
|
|
870
917
|
className: "comboselect-more-item"
|
|
871
918
|
}, {
|
|
@@ -923,10 +970,30 @@ const ComboSelect = props => {
|
|
|
923
970
|
children: comboSelectorInput
|
|
924
971
|
}))
|
|
925
972
|
}));
|
|
926
|
-
}, [open, checkKeys, inputValue, refresh, params, fullPath, inRefresh, hasAllClear, helperText, language, locale, openMore,
|
|
973
|
+
}, [open, checkKeys, inputValue, refresh, params, fullPath, inRefresh, hasAllClear, helperText, language, locale, openMore, loadedKeys, onChange, onClear, comboSelectorInput, checkList]);
|
|
974
|
+
//非popover 模式
|
|
975
|
+
const nonPopoverMemo = useMemo(() => {
|
|
976
|
+
return jsxs(Fragment, {
|
|
977
|
+
children: [jsx(Popover, Object.assign({
|
|
978
|
+
visible: openMore,
|
|
979
|
+
destroyTooltipOnHide: true,
|
|
980
|
+
placement: "rightTop",
|
|
981
|
+
content: renderPopoverMore(),
|
|
982
|
+
onVisibleChange: () => setOpenMore(false),
|
|
983
|
+
overlayClassName: "".concat($prefixCls, "-comboselect-more-popover")
|
|
984
|
+
}, {
|
|
985
|
+
children: comboSelectorInput
|
|
986
|
+
})), jsxs("div", Object.assign({
|
|
987
|
+
className: 'comboselect-non-popup-content'
|
|
988
|
+
}, {
|
|
989
|
+
children: [showSearch && renderSearch(), mode === 'table' ? tableMemo : treeMemo, renderFullPath(), showPopoverActions && renderActions()]
|
|
990
|
+
}))]
|
|
991
|
+
});
|
|
992
|
+
}, [checkKeys, inputValue, refresh, params, fullPath, hasAllClear, helperText, language, locale, onChange, onClear, tableMemo, treeMemo, comboSelectorInput, openMore, checkList]);
|
|
927
993
|
return jsxs("div", Object.assign({
|
|
928
994
|
className: makeSelectCls(),
|
|
929
|
-
style: style
|
|
995
|
+
style: style,
|
|
996
|
+
ref: currentDom
|
|
930
997
|
}, {
|
|
931
998
|
children: [renderLabel(), disablePopup ? nonPopoverMemo : popoverMemo, !disablePopup ? jsx(HelperText, {
|
|
932
999
|
error: error,
|
|
@@ -35,7 +35,10 @@ export interface ComboSelectProps extends HelperTextDetailProps {
|
|
|
35
35
|
/**search 占位符*/
|
|
36
36
|
searchPlaceholder?: string;
|
|
37
37
|
/**最大显示数*/
|
|
38
|
+
/** @deprecated This attribute has been deprecated */
|
|
38
39
|
maxCount?: number;
|
|
40
|
+
/** 超出换行 */
|
|
41
|
+
overLine?: boolean;
|
|
39
42
|
/**禁用选择器*/
|
|
40
43
|
disabled?: boolean;
|
|
41
44
|
/** 支持清除 */
|
package/DragVerify/index.js
CHANGED
|
@@ -101,8 +101,8 @@ const DragVerify = props => {
|
|
|
101
101
|
imgBg.style.display = 'inline-block';
|
|
102
102
|
if (!refDom.current) return;
|
|
103
103
|
const sliderImgEle = refDom.current.querySelector('.slider-img');
|
|
104
|
-
const sliderImgEleRect = sliderImgEle
|
|
105
|
-
const b =
|
|
104
|
+
//const sliderImgEleRect = sliderImgEle?.getBoundingClientRect();
|
|
105
|
+
const b = sliderImgEle === null || sliderImgEle === void 0 ? void 0 : sliderImgEle.clientWidth;
|
|
106
106
|
constData.current.imgScale = a / b;
|
|
107
107
|
sliderImgEle === null || sliderImgEle === void 0 ? void 0 : sliderImgEle.append(imgMove);
|
|
108
108
|
imgMove.onload = () => {
|
|
@@ -129,50 +129,74 @@ const DragVerify = props => {
|
|
|
129
129
|
const moveDomRect = moveDom.getBoundingClientRect();
|
|
130
130
|
const moveDomWidth = moveDomRect.width; // 移动箭头的框
|
|
131
131
|
const moveSliderWidth = moveSliderRect.width; // 进度条的宽
|
|
132
|
+
// 移动
|
|
133
|
+
const moveFunc = (event, e) => {
|
|
134
|
+
let moveW = event.pageX - e.pageX; // 鼠标移动的距离
|
|
135
|
+
if (moveW < 0) moveW = 0;
|
|
136
|
+
if (moveW + moveDomWidth > imgBg.width) moveW = imgBg.width - moveDomWidth;
|
|
137
|
+
moveDom.style.left = "".concat(moveW - 1, "px");
|
|
138
|
+
// 加一防止滑块与进度条之间有间隙
|
|
139
|
+
moveProgress.style.width = "".concat(moveW < 2 ? 2 : moveW, "px");
|
|
140
|
+
// 进度条走过的比例
|
|
141
|
+
const ratio = moveW / (moveSliderWidth - moveDomWidth);
|
|
142
|
+
const imgMoveWidth = (imgBg.width - imgMove.width) * ratio;
|
|
143
|
+
imgMove.style.left = "".concat(imgMoveWidth, "px");
|
|
144
|
+
sliderText.innerHTML = '';
|
|
145
|
+
};
|
|
146
|
+
// 抬起
|
|
147
|
+
const endFunc = () => {
|
|
148
|
+
sliderBox.classList.remove("".concat(prefixCls, "-move"));
|
|
149
|
+
constData.current.padding = true;
|
|
150
|
+
const X = parseFloat(imgMove.style.left);
|
|
151
|
+
const handX = X * constData.current.imgScale;
|
|
152
|
+
sliderPosiCheck(handX, result => {
|
|
153
|
+
if (!result) {
|
|
154
|
+
// 错误
|
|
155
|
+
sliderBox.classList.add("".concat(prefixCls, "-error"));
|
|
156
|
+
constData.current.timerError = setTimeout(() => {
|
|
157
|
+
constData.current.padding = false;
|
|
158
|
+
reset();
|
|
159
|
+
sliderText.innerHTML = intl({
|
|
160
|
+
id: 'tryAgain'
|
|
161
|
+
}); // 再试一次
|
|
162
|
+
getImgInfoReq();
|
|
163
|
+
}, 1000);
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
sliderBox.classList.add("".concat(prefixCls, "-success"));
|
|
167
|
+
/*constData.current.timerSuccess = setTimeout(() => {
|
|
168
|
+
//constData.current.padding = false;
|
|
169
|
+
//sliderBox.classList.remove(prefixCls + '-success');
|
|
170
|
+
}, 1000);*/
|
|
171
|
+
});
|
|
172
|
+
};
|
|
132
173
|
moveDom.onmousedown = e => {
|
|
133
174
|
if (constData.current.padding) return;
|
|
134
175
|
sliderBox.classList.add("".concat(prefixCls, "-move"));
|
|
135
176
|
document.onmousemove = event => {
|
|
136
|
-
|
|
137
|
-
if (moveW < 0) moveW = 0;
|
|
138
|
-
if (moveW + moveDomWidth > imgBg.width) moveW = imgBg.width - moveDomWidth;
|
|
139
|
-
moveDom.style.left = "".concat(moveW - 1, "px");
|
|
140
|
-
// 加一防止滑块与进度条之间有间隙
|
|
141
|
-
moveProgress.style.width = "".concat(moveW < 2 ? 2 : moveW, "px");
|
|
142
|
-
// 进度条走过的比例
|
|
143
|
-
const ratio = moveW / (moveSliderWidth - moveDomWidth);
|
|
144
|
-
const imgMoveWidth = (imgBg.width - imgMove.width) * ratio;
|
|
145
|
-
imgMove.style.left = "".concat(imgMoveWidth, "px");
|
|
146
|
-
sliderText.innerHTML = '';
|
|
177
|
+
moveFunc(event, e);
|
|
147
178
|
};
|
|
148
179
|
// 鼠标抬起
|
|
149
180
|
document.onmouseup = () => {
|
|
150
181
|
document.onmousemove = null;
|
|
151
182
|
document.onmouseup = null;
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
}
|
|
170
|
-
sliderBox.classList.add("".concat(prefixCls, "-success"));
|
|
171
|
-
/*constData.current.timerSuccess = setTimeout(() => {
|
|
172
|
-
//constData.current.padding = false;
|
|
173
|
-
//sliderBox.classList.remove(prefixCls + '-success');
|
|
174
|
-
}, 1000);*/
|
|
175
|
-
});
|
|
183
|
+
endFunc();
|
|
184
|
+
};
|
|
185
|
+
};
|
|
186
|
+
moveDom.ontouchstart = touchE => {
|
|
187
|
+
if (constData.current.padding) return;
|
|
188
|
+
const e = touchE.touches[0];
|
|
189
|
+
sliderBox.classList.add("".concat(prefixCls, "-move"));
|
|
190
|
+
// 鼠标移动
|
|
191
|
+
document.ontouchmove = touchEvent => {
|
|
192
|
+
const event = touchEvent.touches[0];
|
|
193
|
+
moveFunc(event, e);
|
|
194
|
+
};
|
|
195
|
+
// 鼠标抬起
|
|
196
|
+
document.ontouchend = () => {
|
|
197
|
+
document.ontouchmove = null;
|
|
198
|
+
document.ontouchend = null;
|
|
199
|
+
endFunc();
|
|
176
200
|
};
|
|
177
201
|
};
|
|
178
202
|
};
|
package/Form/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { DeepClone } from '@paraview/lib';
|
|
3
3
|
import React__default from 'react';
|
|
4
|
-
import { F as FormItem, l as localeJson, v as validate } from '../_verture/index-
|
|
4
|
+
import { F as FormItem, l as localeJson, v as validate } from '../_verture/index-356d88fa.js';
|
|
5
5
|
import { $ as $prefixCls } from '../_verture/constant-5317fc89.js';
|
|
6
6
|
import { u as useFormatMessage } from '../_verture/useFormatMessage-eb13cf56.js';
|
|
7
7
|
import '../TextField/index.js';
|
package/FormItem/index.js
CHANGED
package/OperateBtn/index.js
CHANGED
|
@@ -62,6 +62,7 @@ const OperateBtn = props => {
|
|
|
62
62
|
const [loadingInside, setLoadingInside] = useState({}); // 内部loading
|
|
63
63
|
// 点击选项
|
|
64
64
|
const clickItem = (item, index) => e => __awaiter(void 0, void 0, void 0, function* () {
|
|
65
|
+
e.stopPropagation();
|
|
65
66
|
if (item.disabled || handLoadStatus(item, index)) return;
|
|
66
67
|
if (clickCloseMore) closeMore();
|
|
67
68
|
const handKey = item[key];
|
|
@@ -174,7 +175,10 @@ const OperateBtn = props => {
|
|
|
174
175
|
arrow: false
|
|
175
176
|
}}*/
|
|
176
177
|
//onClick={clickMore}
|
|
177
|
-
className: 'operate-btn-more'
|
|
178
|
+
className: 'operate-btn-more',
|
|
179
|
+
onClick: e => {
|
|
180
|
+
e.stopPropagation();
|
|
181
|
+
}
|
|
178
182
|
}, {
|
|
179
183
|
children: jsx(More, {})
|
|
180
184
|
}))
|
package/README.md
CHANGED
package/Table/index.js
CHANGED
|
@@ -2760,7 +2760,7 @@ const Table = propsInit => {
|
|
|
2760
2760
|
width: result.width
|
|
2761
2761
|
};
|
|
2762
2762
|
setHeadDataConfig(Object.assign({}, constData.current.headDataConfig)); // 设置表格列配置,被拖动的width
|
|
2763
|
-
handHeadDataCom([...
|
|
2763
|
+
handHeadDataCom([...headDataCom]); // 重新计算表格的最小宽度
|
|
2764
2764
|
// 本地记住拖动列宽度
|
|
2765
2765
|
setLocalStorageHeadCom({
|
|
2766
2766
|
headDataConfig: constData.current.headDataConfig,
|
package/index.js
CHANGED
|
@@ -25,7 +25,7 @@ export { D as Dropdown } from './_verture/index-389675ab.js';
|
|
|
25
25
|
export { default as DynamicMultiBox } from './DynamicMultiBox/index.js';
|
|
26
26
|
export { default as Empty } from './Empty/index.js';
|
|
27
27
|
export { default as Form } from './Form/index.js';
|
|
28
|
-
export { F as FormItem } from './_verture/index-
|
|
28
|
+
export { F as FormItem } from './_verture/index-356d88fa.js';
|
|
29
29
|
export { u as FunctionModal, F as FunctionModalProvider, a as useClose } from './_verture/modalContext-3ba6ca8f.js';
|
|
30
30
|
export { default as GlobalContext, changeConfirmLocale, getConfirmLocale } from './GlobalContext/index.js';
|
|
31
31
|
export { default as Help } from './Help/index.js';
|