fastlion-amis
Version:
一种MIS页面生成工具
470 lines (469 loc) • 37.9 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var react_1 = tslib_1.__importStar(require("react"));
var checkbox_1 = (0, tslib_1.__importDefault)(require("antd/lib/checkbox"));
var message_1 = (0, tslib_1.__importDefault)(require("antd/lib/message"));
var button_1 = (0, tslib_1.__importDefault)(require("antd/lib/button"));
var select_1 = (0, tslib_1.__importDefault)(require("antd/lib/select"));
var input_number_1 = (0, tslib_1.__importDefault)(require("antd/lib/input-number"));
var helper_1 = require("../../utils/helper");
var input_1 = (0, tslib_1.__importDefault)(require("antd/lib/input"));
var lodash_1 = require("lodash");
var sortablejs_1 = (0, tslib_1.__importDefault)(require("sortablejs"));
var icons_1 = require("@ant-design/icons");
var icons_2 = require("../icons");
var CheckOption;
(function (CheckOption) {
CheckOption["SELECT_ALL"] = "\u5168\u9009";
CheckOption["SELECT_REVERSE"] = "\u53CD\u9009";
CheckOption["CLEAR_ALL"] = "\u5168\u6E05";
})(CheckOption || (CheckOption = {}));
var segmentStandardList = [
{ title: "年", value: "year" },
{ title: "季度", value: "quarter" },
{ title: "月", value: "month" },
{ title: "周", value: "week" },
{ title: "日", value: "day" },
{ title: "时", value: "hour" },
{ title: "分", value: "minute" },
{ title: "秒", value: "second" },
];
var OptionTransfer = (0, react_1.forwardRef)(function (props, ref) {
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
var allFields = props.allFields, defaultOptionsParam = props.defaultOptionsParam, onChange = props.onChange;
var segmentFields = allFields.filter(function (field) { return field.type == 'number' || field.type == 'date' || field.type == 'progress'; });
var _r = (0, react_1.useState)((_a = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.itemRepeat) !== null && _a !== void 0 ? _a : false), itemRepeat = _r[0], setItemRepeat = _r[1];
var _s = (0, react_1.useState)((_b = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.itemCount) !== null && _b !== void 0 ? _b : false), itemCount = _s[0], setItemCount = _s[1];
var _t = (0, react_1.useState)((_c = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.itemSumCount) !== null && _c !== void 0 ? _c : false), itemSumCount = _t[0], setItemSumCount = _t[1];
var _u = (0, react_1.useState)((_d = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.section) !== null && _d !== void 0 ? _d : false), showSegment = _u[0], setShowSegment = _u[1];
var _v = (0, react_1.useState)(allFields.map(function (field) {
var _a;
var checked = defaultOptionsParam ? (defaultOptionsParam.showFields.length == 0 ? true : defaultOptionsParam.showFields.includes(field.name)) : true;
var disabled = (_a = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.groupByFields.includes(field.name)) !== null && _a !== void 0 ? _a : false;
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: checked, disabled: disabled });
})), showFields = _v[0], setShowFields = _v[1];
(0, react_1.useEffect)(function () {
if (!!defaultOptionsParam)
handleReset();
}, [defaultOptionsParam]);
var _w = (0, react_1.useState)((_f = (0, lodash_1.flatMap)((_e = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sortFields) !== null && _e !== void 0 ? _e : [], function (field) {
var fields = field.split(',');
var fieldName = fields[0];
var order = fields.includes('desc') ? 1 : 0;
var targetField = allFields.find(function (item) { return item.name == fieldName; });
if (targetField) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, targetField), { order: order });
}
return [];
})) !== null && _f !== void 0 ? _f : []), sortFields = _w[0], setSortFields = _w[1];
var _x = (0, react_1.useState)(allFields.filter(function (field) { return defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.groupByFields.includes(field.name); })), groupByFields = _x[0], setGroupByFields = _x[1];
var _y = (0, react_1.useState)(), selectedShowField = _y[0], setSelectedShowField = _y[1];
var _z = (0, react_1.useState)((_g = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.leftOpenRightClose) !== null && _g !== void 0 ? _g : false), leftOpenRightClose = _z[0], setLeftOpenRightClose = _z[1];
var _0 = (0, react_1.useState)((_h = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.sectionField) !== null && _h !== void 0 ? _h : (_j = segmentFields[0]) === null || _j === void 0 ? void 0 : _j.name), sectionField = _0[0], setSectionField = _0[1];
var _1 = (0, react_1.useState)((_k = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.avgSection) !== null && _k !== void 0 ? _k : true), avgSection = _1[0], setAvgSection = _1[1];
var _2 = (0, react_1.useState)((_m = (_l = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.sections) === null || _l === void 0 ? void 0 : _l[0]) !== null && _m !== void 0 ? _m : 1), sectionWidthValue = _2[0], setSectionWidthValue = _2[1];
var _3 = (0, react_1.useState)(1), sectionValue = _3[0], setSectionValue = _3[1];
var _4 = (0, react_1.useState)((_o = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.sections) !== null && _o !== void 0 ? _o : []), sections = _4[0], setSections = _4[1];
var _5 = (0, react_1.useState)((_p = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.sectionNorm) !== null && _p !== void 0 ? _p : ''), sectionNorm = _5[0], setSectionNorm = _5[1];
var _6 = (0, react_1.useState)(''), searchValue = _6[0], setSearchValue = _6[1];
var innerRef = (0, react_1.useRef)(null);
var inputRef = (0, react_1.useRef)(null);
(0, react_1.useEffect)(function () {
var sortable = new sortablejs_1.default(document.getElementById("transfer-target-0"), {
group: '.transfer-target-content',
handle: '.item-label',
animation: 150,
onEnd: function (e) {
var oldIndex = e.oldIndex;
var newIndex = e.newIndex;
if (oldIndex != undefined && newIndex != undefined) {
setSortFields(function (fields) {
var newFields = (0, tslib_1.__spreadArray)([], fields, true);
var tempField = fields[oldIndex];
newFields[oldIndex] = newFields[newIndex];
newFields[newIndex] = tempField;
return newFields;
});
}
}
});
return function () {
sortable.destroy();
};
}, []);
(0, react_1.useEffect)(function () {
if (searchValue) {
debounceHandleSearch(searchValue);
}
}, [searchValue, showFields]);
var handleSearch = function (searchValue) {
var _a;
//匹配规则,1.全匹配 2.以关键字开头匹配 3.模糊匹配
var target = showFields.find(function (item) { return item.label === searchValue; });
!target && (target = showFields.find(function (item) { return item.label.startsWith(searchValue); }));
!target && (target = showFields.find(function (item) { var _a; return (_a = item.label) === null || _a === void 0 ? void 0 : _a.includes(searchValue); }));
if (target) {
setSelectedShowField(target);
if (target.name === (selectedShowField === null || selectedShowField === void 0 ? void 0 : selectedShowField.name)) {
var activeDom = (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.querySelector('.display-field-active');
activeDom === null || activeDom === void 0 ? void 0 : activeDom.scrollIntoView({ behavior: 'smooth', block: 'start' });
}
}
};
var debounceHandleSearch = (0, lodash_1.debounce)(handleSearch, 100);
(0, react_1.useEffect)(function () {
var _a;
if (selectedShowField && searchValue) {
var activeDom = (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.querySelector('.display-field-active');
activeDom === null || activeDom === void 0 ? void 0 : activeDom.scrollIntoView({ behavior: 'smooth', block: 'start' });
setSearchValue('');
}
}, [selectedShowField]);
(0, react_1.useEffect)(function () {
var show = showFields.filter(function (field) { return field.checked; }).map(function (field) { return field.name; });
var sort = sortFields.map(function (field) { return "" + field.name + (field.order === 1 ? ',desc' : ''); });
var group = groupByFields.map(function (field) { return field.name; });
var checkedAll = showFields.every(function (field) { return field.checked; });
var retShowField = (itemCount || itemRepeat || itemSumCount || groupByFields.length > 0) ? show : checkedAll ? [] : show;
var ellipsis = !itemRepeat && !itemCount && !itemSumCount && !showSegment && retShowField.length == 0 && sort.length == 0 && group.length == 0;
var options = {
itemRepeat: itemRepeat,
itemCount: itemCount,
itemSumCount: itemSumCount,
showFields: retShowField,
sortFields: sort,
groupByFields: group,
section: showSegment,
sectionParams: {
leftOpenRightClose: leftOpenRightClose,
sectionField: sectionField,
avgSection: avgSection,
sections: avgSection ? [sectionWidthValue] : sections,
sectionNorm: sectionNorm !== null && sectionNorm !== void 0 ? sectionNorm : ''
}
};
onChange({ rawShowFields: show, rawOptionsParams: options, optionsParam: !ellipsis ? options : undefined });
}, [itemRepeat, itemCount, itemSumCount, showFields, showSegment, sortFields, groupByFields, leftOpenRightClose, sectionField, avgSection, sectionWidthValue, sections, sectionNorm]);
(0, react_1.useImperativeHandle)(ref, function () { return ({ handleReset: handleReset }); });
var handleReset = function () {
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
setItemRepeat((_a = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.itemRepeat) !== null && _a !== void 0 ? _a : false);
setItemCount((_b = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.itemCount) !== null && _b !== void 0 ? _b : false);
setItemSumCount((_c = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.itemSumCount) !== null && _c !== void 0 ? _c : false);
setShowFields(allFields.map(function (field) {
var _a;
var checked = ((defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.itemCount) === true && !defaultOptionsParam.showFields.includes(field.name)) ? false : defaultOptionsParam ? (defaultOptionsParam.showFields.length == 0 ? true : defaultOptionsParam.showFields.includes(field.name)) : true;
var disabled = (_a = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.groupByFields.includes(field.name)) !== null && _a !== void 0 ? _a : false;
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: checked, disabled: disabled });
}));
setSortFields((_e = (0, lodash_1.flatMap)((_d = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sortFields) !== null && _d !== void 0 ? _d : [], function (field) {
var fields = field.split(',');
var fieldName = fields[0];
var order = fields.includes('desc') ? 1 : 0;
var targetField = allFields.find(function (item) { return item.name == fieldName; });
if (targetField) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, targetField), { order: order });
}
return [];
})) !== null && _e !== void 0 ? _e : []);
setGroupByFields((_g = (0, lodash_1.flatMap)((_f = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.groupByFields) !== null && _f !== void 0 ? _f : [], function (groupField) { var _a; return (_a = allFields.find(function (field) { return field.name == groupField; })) !== null && _a !== void 0 ? _a : []; })) !== null && _g !== void 0 ? _g : []);
setSelectedShowField(undefined);
setLeftOpenRightClose((_h = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.leftOpenRightClose) !== null && _h !== void 0 ? _h : false);
setSectionField((_j = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.sectionField) !== null && _j !== void 0 ? _j : (_k = segmentFields[0]) === null || _k === void 0 ? void 0 : _k.name);
setAvgSection((_l = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.avgSection) !== null && _l !== void 0 ? _l : true);
setSectionWidthValue((_o = (_m = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.sections) === null || _m === void 0 ? void 0 : _m[0]) !== null && _o !== void 0 ? _o : 1);
setSectionValue(1);
setSections((_p = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.sections) !== null && _p !== void 0 ? _p : []);
setSectionNorm((_q = defaultOptionsParam === null || defaultOptionsParam === void 0 ? void 0 : defaultOptionsParam.sectionParams.sectionNorm) !== null && _q !== void 0 ? _q : '');
};
var handleCheckedChange = function (showField, checked) {
var _a;
checked ? setSelectedShowField(showField) : setSelectedShowField(function (field) { return (field === null || field === void 0 ? void 0 : field.name) === showField.name ? undefined : field; });
var fields = showFields.map(function (field) {
if (field.name === showField.name) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: checked });
}
return field;
});
setShowFields(fields);
(_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
};
var handleCheckedOption = function (option) {
var fields;
switch (option) {
case CheckOption.SELECT_ALL:
fields = (itemRepeat || itemCount || itemSumCount) ? showFields.slice().map(function (field) {
if (field.comparable === true && !field.disabled) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: true });
}
return field;
}) : showFields.slice().map(function (field) { return ((0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: true })); });
break;
case CheckOption.CLEAR_ALL:
fields = showFields.slice().map(function (field) { return ((0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: field.disabled ? field.checked : (itemRepeat || itemCount || itemSumCount ? false : field.disabled) })); });
break;
case CheckOption.SELECT_REVERSE:
fields = showFields.slice().map(function (field) { return ((0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: !field.disabled ? !field.checked : field.checked })); });
break;
}
setShowFields(fields);
};
var handleAddField = function (type, fields) {
if (selectedShowField) {
if (type === 0) {
var tempFields = fields.slice();
if (itemCount || itemSumCount) {
message_1.default.warning('仅查项数,仅查总数不能使用字段排序');
return;
}
if (showSegment && (selectedShowField.type != 'number' && selectedShowField.type != 'date' && selectedShowField.type != 'progress')) {
message_1.default.warning('分段查询,非数字时间类型不能使用字段排序');
return;
}
if (!tempFields.some(function (field) { return field.name === selectedShowField.name; })) {
tempFields.push((0, tslib_1.__assign)((0, tslib_1.__assign)({}, selectedShowField), { order: 0 }));
setSortFields(tempFields);
}
else {
message_1.default.warning('已添加过该字段');
}
}
else {
var tempFields = fields.slice();
if (!tempFields.some(function (field) { return field.name === selectedShowField.name; })) {
tempFields.push(selectedShowField);
setGroupByFields(tempFields);
}
else {
message_1.default.warning('已添加过该字段');
return;
}
setShowFields(function (fields) { return fields.map(function (field) {
var _a;
if (field.name === selectedShowField.name) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: true, disabled: true });
}
if (fields.every(function (field) { return field.checked; })) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: (_a = field.isNumerical) !== null && _a !== void 0 ? _a : false });
}
return field;
}); });
}
}
};
var handleDeleteField = function (type, names, fields) {
if (type === 0) {
var tempFields = fields.slice();
setSortFields(tempFields.filter(function (field) { return !names.includes(field.name); }));
}
else {
var tempFields = fields.slice();
setGroupByFields(tempFields.filter(function (field) { return !names.includes(field.name); }));
var tempShowFields = showFields.slice().map(function (field) {
var target = names.find(function (name) { return name === field.name; });
if (target) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: false, disabled: false });
}
return field;
});
setShowFields(tempShowFields);
}
};
var handleSortFields = function (field, sortfields) {
var tempFields = sortfields.slice().map(function (sortField) {
if (field.name === sortField.name) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, sortField), { order: 1 ^ sortField.order });
}
return sortField;
});
setSortFields(tempFields);
};
// 勾选数据去重
var handleCheckedItemRepeat = function (checked) {
setItemRepeat(checked);
if (checked) {
setShowFields(function (fields) { return fields.map(function (field) {
if (field.comparable === false) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: false });
}
return field;
}); });
}
};
// 勾选仅查项数
var handleCheckedItemCount = function (checked) {
setItemCount(checked);
setSortFields([]);
if (checked && showFields.every(function (item) { return item.checked; })) {
setShowFields(function (fields) { return fields.map(function (field) { return ((0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: false })); }); });
}
};
//勾选仅查总数
var handleCheckedItemSumCount = function (checked) {
if (checked && showFields.every(function (item) { return item.checked; })) {
setGroupByFields([]);
setSortFields([]);
setShowFields(function (fields) { return fields.map(function (field) {
var isChecked = field.type == 'number' || field.type == 'progress';
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: isChecked });
}); });
}
setItemSumCount(checked);
};
//勾选分段字段
var handleCheckedSegment = function (checked) {
if (checked) {
setShowFields(function (fields) {
if (fields.every(function (field) { return field.checked; })) {
return fields.map(function (field) {
var isChecked = field.type == 'number' || field.type == 'date' || field.type == 'progress';
if (!field.disabled) {
return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, field), { checked: isChecked });
}
return field;
});
}
return fields;
});
}
setShowSegment(checked);
};
//修改分段字段
var handleChangeSectionField = function (value) {
var field = segmentFields.find(function (field) { return field.name == value; });
if ((field === null || field === void 0 ? void 0 : field.type) !== 'date') {
setSectionNorm('');
}
else {
setSectionNorm('year');
}
setSectionField(value);
};
//添加段位列表
var handleAddSections = function (section) {
if (!sections.includes(section)) {
setSections(function (sections) { return sections.concat(section); });
}
else {
message_1.default.info('已添加过该段位');
}
};
var renderTarget = function (type, fields) {
var sortDisabled = !!!(selectedShowField === null || selectedShowField === void 0 ? void 0 : selectedShowField.comparable) || itemSumCount || itemCount;
var groupDisabled = !!!(selectedShowField === null || selectedShowField === void 0 ? void 0 : selectedShowField.comparable) || itemSumCount;
// || fields.length >= 8
var disabledBtn = type == 0 ? sortDisabled : groupDisabled;
return (react_1.default.createElement("div", { className: "target-box" },
react_1.default.createElement("div", { className: "btn-group" },
react_1.default.createElement("div", { style: { cursor: disabledBtn ? 'not-allowed' : 'pointer' }, className: " btn", onClick: disabledBtn ? undefined : function () { return handleAddField(type, fields); } },
react_1.default.createElement("i", { className: 'fa fa-chevron-right' }))),
react_1.default.createElement("div", { className: "transfer-target" },
react_1.default.createElement("div", { className: "transfer-target-header" },
react_1.default.createElement("span", { className: "title" }, type === 0 ? '排序字段' : '分组字段'),
react_1.default.createElement(button_1.default, { type: 'link', onClick: function () { return handleDeleteField(type, fields.map(function (field) { return field.name; }), fields); } }, "\u6E05\u7A7A")),
react_1.default.createElement("div", { id: "transfer-target-" + type, className: "transfer-target-content" },
react_1.default.createElement("div", { className: 'option' },
type === 0 && fields.map(function (field, index) { return (react_1.default.createElement("span", { className: 'option-item', key: field.name },
react_1.default.createElement("span", { className: 'item-title' }, index + 1),
react_1.default.createElement("span", { onClick: function () { return handleSortFields(field, sortFields); } },
react_1.default.createElement(icons_2.Icon, { icon: "" + (field.order === 0 ? '#icon-toolshunxu' : '#icon-tooldaoxu'), symbol: true })),
react_1.default.createElement("span", { className: 'item-label' }, field.label),
react_1.default.createElement(icons_1.CloseOutlined, { onClick: function () { return handleDeleteField(type, [field.name], fields); } }))); }),
type === 1 && fields.map(function (field, index) { return (react_1.default.createElement("div", { className: 'option-item', key: field.name },
react_1.default.createElement("span", { className: 'item-title' }, index + 1),
react_1.default.createElement("span", { className: 'item-label' }, field.label),
react_1.default.createElement(icons_1.CloseOutlined, { onClick: function () { return handleDeleteField(type, [field.name], fields); } }))); })),
type === 1 && react_1.default.createElement("div", { className: 'transfer-target-footer' }, "\u5EFA\u8BAE\u9009\u62E9\u5C11\u4E8E8\u4E2A\u5206\u7EC4\u5B57\u6BB5 ")))));
};
return (react_1.default.createElement("div", { className: 'transfer-check' },
react_1.default.createElement("div", { className: 'transfer-check-group' }, (0, helper_1.isMobile)() ? react_1.default.createElement(react_1.default.Fragment, null,
react_1.default.createElement(button_1.default, { type: "text", className: "transfer-check-bat " + (itemRepeat ? 'transfer-check-bat-true' : ''), onClick: function () { return handleCheckedItemRepeat(!itemRepeat); } },
"\u6570\u636E\u53BB\u91CD",
itemRepeat && react_1.default.createElement("span", { className: 'transfer-check-bat-icon' })),
react_1.default.createElement(button_1.default, { type: "text", className: "transfer-check-bat " + (itemCount ? 'transfer-check-bat-true' : '') + "'", disabled: itemSumCount, onClick: function () { return handleCheckedItemCount(!itemCount); } },
"\u4EC5\u67E5\u9879\u6570",
itemCount && react_1.default.createElement("span", { className: 'transfer-check-bat-icon' })),
react_1.default.createElement(button_1.default, { type: "text", className: "transfer-check-bat " + (itemSumCount ? 'transfer-check-bat-true' : ''), disabled: itemCount, onClick: function () { return handleCheckedItemSumCount(!itemSumCount); } },
"\u4EC5\u67E5\u603B\u6570",
itemSumCount && react_1.default.createElement("span", { className: 'transfer-check-bat-icon' })))
:
react_1.default.createElement(react_1.default.Fragment, null,
react_1.default.createElement(checkbox_1.default, { checked: itemRepeat, onChange: function (e) { return handleCheckedItemRepeat(e.target.checked); } }, "\u6570\u636E\u53BB\u91CD"),
react_1.default.createElement(checkbox_1.default, { checked: itemCount, disabled: itemSumCount, onChange: function (e) { return handleCheckedItemCount(e.target.checked); } }, "\u4EC5\u67E5\u9879\u6570"),
react_1.default.createElement(checkbox_1.default, { checked: itemSumCount, disabled: itemCount, onChange: function (e) { return handleCheckedItemSumCount(e.target.checked); } }, "\u4EC5\u67E5\u603B\u6570"))),
react_1.default.createElement("div", { className: 'transfer-container' },
react_1.default.createElement("div", { className: 'transfer-source' },
react_1.default.createElement("div", { className: "transfer-source-header" },
react_1.default.createElement("span", { className: "title" }, "\u663E\u793A\u5B57\u6BB5"),
react_1.default.createElement("div", { className: "option-group" }, (0, helper_1.isMobile)() ? react_1.default.createElement(react_1.default.Fragment, null,
react_1.default.createElement("div", null,
react_1.default.createElement("span", { className: "option", onClick: function () {
handleCheckedOption(CheckOption.SELECT_REVERSE);
} }, CheckOption.SELECT_REVERSE)))
:
react_1.default.createElement(react_1.default.Fragment, null, Object.values(CheckOption).map(function (value, index) { return (react_1.default.createElement("div", { key: index },
react_1.default.createElement("span", { className: "option", onClick: function () { return handleCheckedOption(value); } }, value),
"\u00A0\u00A0")); })))),
react_1.default.createElement("div", { className: 'transfer-source-position' },
react_1.default.createElement(input_1.default, { disabled: (0, helper_1.isMobile)(), ref: inputRef, onKeyDown: function (e) {
//键盘事件后清空值,后续重新输入
e.stopPropagation();
if (e.key === 'Enter') {
setTimeout(function () {
setSearchValue('');
}, 500);
}
}, onCompositionEnd: function (e) {
setTimeout(function () {
setSearchValue('');
}, 500);
}, onBlur: function () { return setSearchValue(''); }, value: searchValue, onChange: function (e) { return setSearchValue(e.target.value); } })),
react_1.default.createElement("div", { className: "transfer-source-content" },
react_1.default.createElement("div", { className: "source-content-inner", ref: innerRef }, showFields.map(function (field) { return (react_1.default.createElement("section", { className: (selectedShowField === null || selectedShowField === void 0 ? void 0 : selectedShowField.name) === field.name ? 'display-field display-field-active' : 'display-field', key: field.name },
react_1.default.createElement(checkbox_1.default, { disabled: field.disabled, checked: field.checked, onChange: function (e) { return handleCheckedChange(field, e.target.checked); } }),
react_1.default.createElement("span", { className: 'display-field-label', onClick: function () {
var _a;
setSelectedShowField((selectedShowField === null || selectedShowField === void 0 ? void 0 : selectedShowField.name) === field.name ? undefined : field);
(_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
} }, field.label))); })))),
react_1.default.createElement("div", { className: 'transfer-target-group' },
renderTarget(0, sortFields),
renderTarget(1, groupByFields))),
react_1.default.createElement("div", { className: 'transfer-check-group' },
react_1.default.createElement(checkbox_1.default, { disabled: itemSumCount, checked: showSegment, onChange: function (e) { return handleCheckedSegment(e.target.checked); } }, "\u5206\u6BB5\u67E5\u8BE2"),
showSegment && react_1.default.createElement(checkbox_1.default, { checked: leftOpenRightClose, onChange: function (e) { return setLeftOpenRightClose(e.target.checked); } }, "\u533A\u95F4\u5DE6\u5F00\u53F3\u95ED")),
showSegment && (react_1.default.createElement("div", { className: 'transfer-segment-container' },
react_1.default.createElement("div", { className: 'left-content' },
react_1.default.createElement("div", { className: 'segment-select' },
react_1.default.createElement("div", { className: 'segment-select-item' },
react_1.default.createElement("span", null, "\u5206\u6BB5\u5B57\u6BB5"),
react_1.default.createElement(select_1.default, { value: sectionField, onChange: function (value) { return handleChangeSectionField(value); }, style: { width: 150, marginLeft: 10 }, dropdownClassName: "dropdown-select-style" }, segmentFields.map(function (field) { return (react_1.default.createElement(select_1.default.Option, { key: field.name, value: field.name }, field.label)); }))),
react_1.default.createElement("div", { className: 'segment-select-item' },
react_1.default.createElement("span", null, "\u7C7B\u578B"),
react_1.default.createElement(select_1.default, { style: { width: 150, marginLeft: 10 }, value: avgSection, onChange: function (value) { return setAvgSection(value); }, dropdownClassName: "dropdown-select-style" },
react_1.default.createElement(select_1.default.Option, { value: true }, "\u5E73\u5747\u6BB5\u4F4D"),
react_1.default.createElement(select_1.default.Option, { value: false }, "\u81EA\u5B9A\u4E49\u6BB5\u4F4D"))),
react_1.default.createElement("div", { className: 'segment-select-item' },
react_1.default.createElement("span", null, "\u5206\u6BB5\u6807\u51C6"),
react_1.default.createElement(select_1.default, { onChange: function (value) { return setSectionNorm(value); }, value: sectionNorm, disabled: ((_q = segmentFields.find(function (field) { return field.name == sectionField; })) === null || _q === void 0 ? void 0 : _q.type) !== 'date', style: { width: 150, marginLeft: 10 }, dropdownClassName: "dropdown-select-style" }, segmentStandardList.map(function (item) { return (react_1.default.createElement(select_1.default.Option, { key: item.value, value: item.value }, item.title)); }))),
react_1.default.createElement("div", { className: 'segment-select-item' },
react_1.default.createElement("span", null, avgSection ? '宽度' : '段位'),
avgSection ?
react_1.default.createElement(input_number_1.default, { value: sectionWidthValue, onChange: function (value) { return setSectionWidthValue(value !== null && value !== void 0 ? value : 0); }, min: 0, type: 'number', style: { width: 150, marginLeft: 10 } }) :
react_1.default.createElement(input_number_1.default, { value: sectionValue, onChange: function (value) { return setSectionValue(value !== null && value !== void 0 ? value : 0); }, type: 'number', style: { width: 150, marginLeft: 10 } })))),
!avgSection && (react_1.default.createElement("div", { className: 'right-content' },
react_1.default.createElement("div", { className: 'target-box' },
react_1.default.createElement("div", { className: "btn-group" },
react_1.default.createElement("div", { style: { cursor: false ? 'not-allowed' : 'pointer' }, className: "btn", onClick: function () { return handleAddSections(sectionValue); } },
react_1.default.createElement("i", { className: 'fa fa-chevron-right' }))),
react_1.default.createElement("div", { className: "transfer-target" },
react_1.default.createElement("div", { className: "transfer-target-header" },
react_1.default.createElement("span", { className: "title" }, "\u6BB5\u4F4D\u5217\u8868")),
react_1.default.createElement("div", { className: "transfer-target-content" },
react_1.default.createElement("div", { className: "target-content-inner" }, sections.map(function (section) { return (react_1.default.createElement("div", { className: 'option-item', key: section },
react_1.default.createElement("span", { className: 'item-label' }, section),
react_1.default.createElement("i", { className: 'fa fa-times', onClick: function () { return setSections(function (sections) { return sections.filter(function (item) { return item != section; }); }); } }))); })))))))))));
});
exports.default = OptionTransfer;
//# sourceMappingURL=./components/Lion/OptionTransfer.js.map
;