xmirror-components 1.0.3 → 1.0.5
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/build/dist/xmirror-components.js +1313 -534
- package/build/dist/xmirror-components.umd.cjs +12 -12
- package/build/es/{IconFont → components/IconFont}/index.d.ts +1 -1
- package/build/es/components/index.d.ts +2 -0
- package/build/es/components/index.js +2 -0
- package/build/es/hooks/index.d.ts +1 -0
- package/build/es/hooks/index.js +1 -0
- package/build/es/hooks/useRequest/index.d.ts +19 -0
- package/build/es/hooks/useRequest/index.js +28 -0
- package/build/es/index.d.ts +2 -5
- package/build/es/index.js +2 -5
- package/build/lib/components/index.js +13 -0
- package/build/{es/Button → lib/hooks}/index.js +3 -2
- package/build/lib/hooks/useRequest/index.js +30 -0
- package/build/lib/index.js +15 -16
- package/build/package.json +1 -1
- package/package.json +1 -1
- package/build/es/Button/button.d.ts +0 -6
- package/build/es/Button/button.js +0 -22
- package/build/es/Button/index.d.ts +0 -3
- package/build/es/ChunkUploader/FileItem.d.ts +0 -13
- package/build/es/ChunkUploader/FileItem.js +0 -472
- package/build/es/ChunkUploader/UploaderContext.d.ts +0 -8
- package/build/es/ChunkUploader/UploaderContext.js +0 -65
- package/build/es/ChunkUploader/generateFileUniqueID.d.ts +0 -2
- package/build/es/ChunkUploader/generateFileUniqueID.js +0 -140
- package/build/es/ChunkUploader/index.d.ts +0 -4
- package/build/es/ChunkUploader/index.js +0 -259
- package/build/es/GlobalLoading/index.d.ts +0 -11
- package/build/es/GlobalLoading/index.js +0 -32
- package/build/es/LevelGroup/index.d.ts +0 -10
- package/build/es/LevelGroup/index.js +0 -33
- package/build/es/LevelTag/index.d.ts +0 -21
- package/build/es/LevelTag/index.js +0 -84
- package/build/es/SearchArea/Item/index.d.ts +0 -13
- package/build/es/SearchArea/Item/index.js +0 -38
- package/build/es/SearchArea/ToggleButton/index.d.ts +0 -9
- package/build/es/SearchArea/ToggleButton/index.js +0 -24
- package/build/es/SearchArea/index.d.ts +0 -13
- package/build/es/SearchArea/index.js +0 -153
- package/build/es/Table/Footer/index.d.ts +0 -3
- package/build/es/Table/Footer/index.js +0 -82
- package/build/es/Table/PopoverSetColumns/index.d.ts +0 -11
- package/build/es/Table/PopoverSetColumns/index.js +0 -164
- package/build/es/Table/index.d.ts +0 -4
- package/build/es/Table/index.js +0 -230
- package/build/es/Uploader/index.d.ts +0 -10
- package/build/es/Uploader/index.js +0 -175
- package/build/lib/Button/button.js +0 -22
- package/build/lib/Button/index.js +0 -7
- /package/build/es/{AntdApp → components/AntdApp}/index.d.ts +0 -0
- /package/build/es/{AntdApp → components/AntdApp}/index.js +0 -0
- /package/build/es/{CheckboxValue → components/CheckboxValue}/index.d.ts +0 -0
- /package/build/es/{CheckboxValue → components/CheckboxValue}/index.js +0 -0
- /package/build/es/{IconButton → components/IconButton}/index.d.ts +0 -0
- /package/build/es/{IconButton → components/IconButton}/index.js +0 -0
- /package/build/es/{IconFont → components/IconFont}/index.js +0 -0
- /package/build/es/{SwitchValue → components/SwitchValue}/index.d.ts +0 -0
- /package/build/es/{SwitchValue → components/SwitchValue}/index.js +0 -0
- /package/build/lib/{AntdApp → components/AntdApp}/index.js +0 -0
- /package/build/lib/{CheckboxValue → components/CheckboxValue}/index.js +0 -0
- /package/build/lib/{IconButton → components/IconButton}/index.js +0 -0
- /package/build/lib/{IconFont → components/IconFont}/index.js +0 -0
- /package/build/lib/{SwitchValue → components/SwitchValue}/index.js +0 -0
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var antd_1 = require("antd");
|
|
7
|
-
var icons_1 = require("@ant-design/icons");
|
|
8
|
-
var rc_tween_one_1 = __importDefault(require("rc-tween-one"));
|
|
9
|
-
/**
|
|
10
|
-
* 高级筛选触发按钮
|
|
11
|
-
* @return {JSX.Element}
|
|
12
|
-
* @constructor
|
|
13
|
-
*/
|
|
14
|
-
function ToggleButton(_a) {
|
|
15
|
-
var panel = _a.panel;
|
|
16
|
-
var show = panel.show, toggle = panel.toggle;
|
|
17
|
-
return (React.createElement(antd_1.Button, { type: "link", style: { paddingLeft: 0, paddingRight: 0 }, onClick: toggle },
|
|
18
|
-
"\u9AD8\u7EA7\u641C\u7D22",
|
|
19
|
-
React.createElement(rc_tween_one_1.default, { component: icons_1.CaretUpOutlined, animation: {
|
|
20
|
-
rotate: show ? 0 : 180,
|
|
21
|
-
duration: 300
|
|
22
|
-
} })));
|
|
23
|
-
}
|
|
24
|
-
exports.default = ToggleButton;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import Item from './Item';
|
|
3
|
-
import ToggleButton from './ToggleButton';
|
|
4
|
-
import './index.less';
|
|
5
|
-
declare const SearchArea: React.ForwardRefExoticComponent<any> & {
|
|
6
|
-
Item: typeof Item;
|
|
7
|
-
ToggleButton: typeof ToggleButton;
|
|
8
|
-
useSearchArea: (show: boolean) => {
|
|
9
|
-
show: boolean;
|
|
10
|
-
toggle: () => void;
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
export default SearchArea;
|
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
-
if (k2 === undefined) k2 = k;
|
|
15
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
-
}
|
|
19
|
-
Object.defineProperty(o, k2, desc);
|
|
20
|
-
}) : (function(o, m, k, k2) {
|
|
21
|
-
if (k2 === undefined) k2 = k;
|
|
22
|
-
o[k2] = m[k];
|
|
23
|
-
}));
|
|
24
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
-
}) : function(o, v) {
|
|
27
|
-
o["default"] = v;
|
|
28
|
-
});
|
|
29
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
30
|
-
var ownKeys = function(o) {
|
|
31
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
32
|
-
var ar = [];
|
|
33
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
34
|
-
return ar;
|
|
35
|
-
};
|
|
36
|
-
return ownKeys(o);
|
|
37
|
-
};
|
|
38
|
-
return function (mod) {
|
|
39
|
-
if (mod && mod.__esModule) return mod;
|
|
40
|
-
var result = {};
|
|
41
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
42
|
-
__setModuleDefault(result, mod);
|
|
43
|
-
return result;
|
|
44
|
-
};
|
|
45
|
-
})();
|
|
46
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
47
|
-
var t = {};
|
|
48
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
49
|
-
t[p] = s[p];
|
|
50
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
51
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
52
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
53
|
-
t[p[i]] = s[p[i]];
|
|
54
|
-
}
|
|
55
|
-
return t;
|
|
56
|
-
};
|
|
57
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
58
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
59
|
-
};
|
|
60
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
61
|
-
var react_1 = __importStar(require("react"));
|
|
62
|
-
var antd_1 = require("antd");
|
|
63
|
-
var ahooks_1 = require("ahooks");
|
|
64
|
-
var icons_1 = require("@ant-design/icons");
|
|
65
|
-
var rc_tween_one_1 = __importDefault(require("rc-tween-one"));
|
|
66
|
-
var Item_1 = __importDefault(require("./Item"));
|
|
67
|
-
var ToggleButton_1 = __importDefault(require("./ToggleButton"));
|
|
68
|
-
require("./index.less");
|
|
69
|
-
/**
|
|
70
|
-
* 高级筛选
|
|
71
|
-
* @param children 子元素
|
|
72
|
-
* @param onSearch {function} 接收函数,点筛选时执行,返回筛选数据
|
|
73
|
-
* @param col 与 Col 的配置相同,控制筛选项排版
|
|
74
|
-
* @param row Row 的配置相同,控制筛选项排版
|
|
75
|
-
* @param loading {boolean} 筛选加载状态
|
|
76
|
-
* @param props 多余参数,绑定至 Form 上
|
|
77
|
-
* @param ref
|
|
78
|
-
* @return {JSX.Element}
|
|
79
|
-
* @constructor
|
|
80
|
-
*/
|
|
81
|
-
function InternalSearchArea(_a, ref) {
|
|
82
|
-
var children = _a.children, _b = _a.onSearch, onSearch = _b === void 0 ? function (data) { } : _b, _c = _a.col, col = _c === void 0 ? {} : _c, _d = _a.row, row = _d === void 0 ? {} : _d, _e = _a.loading, loading = _e === void 0 ? false : _e, props = __rest(_a, ["children", "onSearch", "col", "row", "loading"]);
|
|
83
|
-
var show, toggle;
|
|
84
|
-
var form = antd_1.Form.useForm()[0];
|
|
85
|
-
if (ref) {
|
|
86
|
-
show = ref.show;
|
|
87
|
-
toggle = ref.toggle;
|
|
88
|
-
ref.form = form;
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
var _f = (0, ahooks_1.useSafeState)(false), _show = _f[0], _setShow_1 = _f[1];
|
|
92
|
-
show = _show;
|
|
93
|
-
toggle = function () { _setShow_1(function (v) { return !v; }); };
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* 提交搜索
|
|
97
|
-
*/
|
|
98
|
-
var submit = function () {
|
|
99
|
-
var data = form.getFieldsValue();
|
|
100
|
-
onSearch(data);
|
|
101
|
-
};
|
|
102
|
-
/**
|
|
103
|
-
* 重置
|
|
104
|
-
*/
|
|
105
|
-
var reset = function () {
|
|
106
|
-
form.resetFields();
|
|
107
|
-
submit();
|
|
108
|
-
};
|
|
109
|
-
/**
|
|
110
|
-
* 重置
|
|
111
|
-
*/
|
|
112
|
-
var close = function () {
|
|
113
|
-
toggle();
|
|
114
|
-
};
|
|
115
|
-
return (react_1.default.createElement(rc_tween_one_1.default, { className: "search-area-collapse", animation: {
|
|
116
|
-
maxHeight: show ? 450 : 0,
|
|
117
|
-
duration: 400
|
|
118
|
-
} },
|
|
119
|
-
react_1.default.createElement(antd_1.Form, __assign({ className: "search-area-container", form: form, labelCol: { flex: '70px' }, wrapperCol: { flex: '1', style: { maxWidth: '280px' } } }, props),
|
|
120
|
-
react_1.default.createElement(antd_1.Row, __assign({ gutter: 10, justify: "space-between" }, row),
|
|
121
|
-
Array.isArray(children)
|
|
122
|
-
? children.map(function (item) {
|
|
123
|
-
return (react_1.default.createElement(antd_1.Col, __assign({ span: 6, xxl: 6,
|
|
124
|
-
xl: 8,
|
|
125
|
-
lg: 12,
|
|
126
|
-
xs: 24, key: item.props.name || item.key || item.props.label }, col), item));
|
|
127
|
-
})
|
|
128
|
-
: children,
|
|
129
|
-
react_1.default.createElement(antd_1.Col, { flex: 1 },
|
|
130
|
-
react_1.default.createElement("div", { className: "search-area-handle" },
|
|
131
|
-
react_1.default.createElement(antd_1.Button, { loading: loading, type: "primary", onClick: submit }, "\u7B5B\u9009"),
|
|
132
|
-
react_1.default.createElement(antd_1.Button, { loading: loading, onClick: reset }, "\u91CD\u7F6E"),
|
|
133
|
-
react_1.default.createElement(antd_1.Button, { type: "link", style: {
|
|
134
|
-
paddingLeft: 0,
|
|
135
|
-
paddingRight: 0
|
|
136
|
-
}, onClick: close },
|
|
137
|
-
"\u6536\u8D77",
|
|
138
|
-
react_1.default.createElement(icons_1.UpOutlined, null))))))));
|
|
139
|
-
}
|
|
140
|
-
var SearchArea = (0, react_1.forwardRef)(InternalSearchArea);
|
|
141
|
-
SearchArea.Item = Item_1.default;
|
|
142
|
-
SearchArea.ToggleButton = ToggleButton_1.default;
|
|
143
|
-
SearchArea.useSearchArea = function useSearchArea() {
|
|
144
|
-
var _a = (0, ahooks_1.useSafeState)(false), show = _a[0], setShow = _a[1];
|
|
145
|
-
var toggle = function () {
|
|
146
|
-
setShow(function (value) { return !value; });
|
|
147
|
-
};
|
|
148
|
-
return {
|
|
149
|
-
show: show,
|
|
150
|
-
toggle: toggle
|
|
151
|
-
};
|
|
152
|
-
};
|
|
153
|
-
exports.default = SearchArea;
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var react_1 = require("react");
|
|
4
|
-
var react_intl_1 = require("react-intl");
|
|
5
|
-
var antd_1 = require("antd");
|
|
6
|
-
var react_transition_group_1 = require("react-transition-group");
|
|
7
|
-
var icons_1 = require("@ant-design/icons");
|
|
8
|
-
require("./index.less");
|
|
9
|
-
function Index(props) {
|
|
10
|
-
var transitionNodeRef = (0, react_1.useRef)(null);
|
|
11
|
-
var pagination = props.pagination, _a = props.rowSelection, rowSelection = _a === void 0 ? { selectedRowKeys: [] } : _a, dataSource = props.dataSource, _b = props.selectionPopover, selectionPopover = _b === void 0 ? false : _b;
|
|
12
|
-
/**
|
|
13
|
-
* 选中所有
|
|
14
|
-
* @param checked 选中状态
|
|
15
|
-
*/
|
|
16
|
-
var changeCheckAll = function (_a) {
|
|
17
|
-
var checked = _a.target.checked;
|
|
18
|
-
var _b = props.rowKey, rowKey = _b === void 0 ? 'id' : _b;
|
|
19
|
-
if (!rowSelection.onChange)
|
|
20
|
-
return;
|
|
21
|
-
if (checked) {
|
|
22
|
-
var getCheckboxProps_1 = rowSelection.getCheckboxProps;
|
|
23
|
-
var tableData = dataSource;
|
|
24
|
-
if (getCheckboxProps_1) {
|
|
25
|
-
tableData = dataSource.filter(function (item) {
|
|
26
|
-
var data = getCheckboxProps_1(item);
|
|
27
|
-
return !data.disabled;
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
rowSelection.onChange(tableData.map(function (item) { return item[rowKey]; }), tableData);
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
rowSelection.onChange([], []);
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
/**
|
|
37
|
-
* optionalNum 可选的数量
|
|
38
|
-
* @return {number}
|
|
39
|
-
*/
|
|
40
|
-
var optionalNum = (0, react_1.useMemo)(function () {
|
|
41
|
-
var getCheckboxProps = rowSelection.getCheckboxProps;
|
|
42
|
-
var tableData = dataSource;
|
|
43
|
-
if (getCheckboxProps) {
|
|
44
|
-
tableData = dataSource.filter(function (item) {
|
|
45
|
-
var data = getCheckboxProps(item);
|
|
46
|
-
return !data.disabled;
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
return tableData.length;
|
|
50
|
-
}, [dataSource]);
|
|
51
|
-
/**
|
|
52
|
-
* indeterminate 选了,但没全选
|
|
53
|
-
* @return {boolean}
|
|
54
|
-
*/
|
|
55
|
-
var indeterminate = (0, react_1.useMemo)(function () {
|
|
56
|
-
var _a = rowSelection.selectedRowKeys, selectedRowKeys = _a === void 0 ? [] : _a;
|
|
57
|
-
return !!(selectedRowKeys.length > 0 && selectedRowKeys.length < optionalNum);
|
|
58
|
-
}, [rowSelection.selectedRowKeys]);
|
|
59
|
-
/**
|
|
60
|
-
* checked 选中状态
|
|
61
|
-
* @return {boolean}
|
|
62
|
-
*/
|
|
63
|
-
var checked = (0, react_1.useMemo)(function () {
|
|
64
|
-
var _a = rowSelection.selectedRowKeys, selectedRowKeys = _a === void 0 ? [] : _a;
|
|
65
|
-
return !!(rowSelection.selectedRowKeys.length > 0 && selectedRowKeys.length === optionalNum);
|
|
66
|
-
}, [rowSelection.selectedRowKeys]);
|
|
67
|
-
return (React.createElement("div", { className: "table-footer" },
|
|
68
|
-
React.createElement(react_transition_group_1.CSSTransition, { in: (props.rowSelection && props.selectionPopover && (checked || indeterminate)), nodeRef: transitionNodeRef, classNames: "zoom", unmountOnExit: true, timeout: 300 }, function () {
|
|
69
|
-
return (React.createElement(antd_1.Row, { ref: transitionNodeRef, className: "table-batch-dialog", justify: "space-between" },
|
|
70
|
-
React.createElement(antd_1.Col, { style: { display: 'flex', alignItems: 'center' } },
|
|
71
|
-
React.createElement(antd_1.Checkbox, { checked: checked, indeterminate: indeterminate, onChange: changeCheckAll },
|
|
72
|
-
React.createElement(react_intl_1.FormattedMessage, { id: "component.table.selected", defaultMessage: '已选{length}条', values: {
|
|
73
|
-
length: rowSelection.selectedRowKeys.length
|
|
74
|
-
} }))),
|
|
75
|
-
React.createElement(antd_1.Col, { style: { display: 'flex', alignItems: 'center' } },
|
|
76
|
-
selectionPopover,
|
|
77
|
-
React.createElement("span", { className: "btn-close", onClick: function () { changeCheckAll({ target: { checked: false } }); } },
|
|
78
|
-
React.createElement(icons_1.CloseOutlined, null)))));
|
|
79
|
-
}),
|
|
80
|
-
pagination && (React.createElement("span", { className: "table-footer-total" }, pagination.showTotal(pagination.total)))));
|
|
81
|
-
}
|
|
82
|
-
exports.default = Index;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import './index.less';
|
|
2
|
-
declare function PopoverSetColumns({ order, visibleItems, columns, onChangeOrder, columnsVisible, columnsSort, onChangeVisible }: {
|
|
3
|
-
order: any;
|
|
4
|
-
visibleItems: any;
|
|
5
|
-
columns: any;
|
|
6
|
-
onChangeOrder: any;
|
|
7
|
-
columnsVisible: any;
|
|
8
|
-
columnsSort: any;
|
|
9
|
-
onChangeVisible: any;
|
|
10
|
-
}): import("react").JSX.Element;
|
|
11
|
-
export default PopoverSetColumns;
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
-
if (ar || !(i in from)) {
|
|
5
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
-
ar[i] = from[i];
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
var react_1 = require("react");
|
|
16
|
-
var antd_1 = require("antd");
|
|
17
|
-
var react_intl_1 = require("react-intl");
|
|
18
|
-
var icons_1 = require("@ant-design/icons");
|
|
19
|
-
var AntdApp_1 = require("@/components/public/AntdApp");
|
|
20
|
-
var IconFont_1 = __importDefault(require("@/components/public/IconFont"));
|
|
21
|
-
require("./index.less");
|
|
22
|
-
function PopoverSetColumns(_a) {
|
|
23
|
-
var order = _a.order, visibleItems = _a.visibleItems, columns = _a.columns, onChangeOrder = _a.onChangeOrder, columnsVisible = _a.columnsVisible, columnsSort = _a.columnsSort, onChangeVisible = _a.onChangeVisible;
|
|
24
|
-
var dragged = (0, react_1.useRef)(null);
|
|
25
|
-
var over = (0, react_1.useRef)(null);
|
|
26
|
-
/**
|
|
27
|
-
* 开始拖拽字段
|
|
28
|
-
* @param event{object}
|
|
29
|
-
* */
|
|
30
|
-
var dragStart = function (event) {
|
|
31
|
-
dragged.current = event.currentTarget;
|
|
32
|
-
};
|
|
33
|
-
/**
|
|
34
|
-
* 拖拽结束
|
|
35
|
-
* @param event{object}
|
|
36
|
-
* */
|
|
37
|
-
var dragEnd = function (event) {
|
|
38
|
-
if (!over.current) {
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
dragged.current.style.display = 'block';
|
|
42
|
-
event.target.classList.remove('drag-up');
|
|
43
|
-
over.current.classList.remove('drag-up');
|
|
44
|
-
event.target.classList.remove('drag-down');
|
|
45
|
-
over.current.classList.remove('drag-down');
|
|
46
|
-
var newOrder = __spreadArray([], order, true);
|
|
47
|
-
var from = Number(dragged.current.dataset.index);
|
|
48
|
-
var to = Number(over.current.dataset.index);
|
|
49
|
-
newOrder.splice(to, 0, newOrder.splice(from, 1)[0]);
|
|
50
|
-
onChangeOrder(newOrder);
|
|
51
|
-
};
|
|
52
|
-
/**
|
|
53
|
-
* 拖拽中
|
|
54
|
-
* @param event{object}
|
|
55
|
-
* */
|
|
56
|
-
var dragOver = function (event) {
|
|
57
|
-
event.preventDefault();
|
|
58
|
-
dragged.current.style.display = 'none';
|
|
59
|
-
if (event.target.tagName !== 'LI') {
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
var dgIndex = dragged.current.dataset.index;
|
|
63
|
-
var taIndex = event.target.dataset.index;
|
|
64
|
-
var id = event.target.dataset.id;
|
|
65
|
-
if (notDraggableIds.indexOf(id) !== -1) {
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
var animateName = dgIndex > taIndex ? 'drag-up' : 'drag-down';
|
|
69
|
-
if (over.current && event.target.dataset.index !== over.current.dataset.index) {
|
|
70
|
-
over.current.classList.remove('drag-up', 'drag-down');
|
|
71
|
-
}
|
|
72
|
-
if (!event.target.classList.contains(animateName)) {
|
|
73
|
-
event.target.classList.add(animateName);
|
|
74
|
-
over.current = event.target;
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
/**
|
|
78
|
-
* 拖拽中
|
|
79
|
-
* @param checked{boolean} 选中状态
|
|
80
|
-
* @param dataIndex{array|string} 列表字段(columns)的 dataIndex
|
|
81
|
-
* */
|
|
82
|
-
var changeVisible = function (_a, _b) {
|
|
83
|
-
var checked = _a.target.checked;
|
|
84
|
-
var dataIndex = _b.dataIndex;
|
|
85
|
-
if (visibleItems.length === 1 && !checked) {
|
|
86
|
-
AntdApp_1.message.error(React.createElement(react_intl_1.FormattedMessage, { id: "component.table.visibleError", defaultMessage: '列表最少保留一个字段' }));
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
var id = Array.isArray(dataIndex) ? dataIndex.join(',') : dataIndex;
|
|
90
|
-
var newVisibleItems = __spreadArray([], visibleItems, true);
|
|
91
|
-
if (checked) {
|
|
92
|
-
newVisibleItems.push(id);
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
newVisibleItems.splice(newVisibleItems.indexOf(id), 1);
|
|
96
|
-
}
|
|
97
|
-
onChangeVisible(newVisibleItems);
|
|
98
|
-
};
|
|
99
|
-
/**
|
|
100
|
-
* 不可拖拽字段的 dataIndex
|
|
101
|
-
* */
|
|
102
|
-
var notDraggableIds = (0, react_1.useMemo)(function () {
|
|
103
|
-
return columns.filter(function (item) {
|
|
104
|
-
return item.columnSortDisabled === true;
|
|
105
|
-
}).map(function (item) {
|
|
106
|
-
var dataIndex;
|
|
107
|
-
if (Array.isArray(item.dataIndex)) {
|
|
108
|
-
dataIndex = item.dataIndex.join(',');
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
dataIndex = item.dataIndex;
|
|
112
|
-
}
|
|
113
|
-
return dataIndex;
|
|
114
|
-
});
|
|
115
|
-
}, [columns]);
|
|
116
|
-
/**
|
|
117
|
-
* 渲染到页面上的列表
|
|
118
|
-
* */
|
|
119
|
-
var renderList = (0, react_1.useMemo)(function () {
|
|
120
|
-
return order.map(function (item, index) {
|
|
121
|
-
var column;
|
|
122
|
-
for (var i in columns) {
|
|
123
|
-
var dataIndex = void 0;
|
|
124
|
-
if (Array.isArray(columns[i].dataIndex)) {
|
|
125
|
-
dataIndex = columns[i].dataIndex.join(',');
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
dataIndex = columns[i].dataIndex;
|
|
129
|
-
}
|
|
130
|
-
if (item === dataIndex) {
|
|
131
|
-
column = columns[i];
|
|
132
|
-
break;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
var draggable = columnsSort && column.columnSortDisabled !== true;
|
|
136
|
-
var id;
|
|
137
|
-
if (Array.isArray(column.dataIndex)) {
|
|
138
|
-
id = column.dataIndex.join(',');
|
|
139
|
-
}
|
|
140
|
-
else {
|
|
141
|
-
id = column.dataIndex;
|
|
142
|
-
}
|
|
143
|
-
var checked = visibleItems.indexOf(id) !== -1;
|
|
144
|
-
return column
|
|
145
|
-
? (React.createElement("li", { key: column.dataIndex, draggable: draggable, onDragEnd: dragEnd, onDragStart: dragStart, "data-index": index, "data-id": column.dataIndex },
|
|
146
|
-
columnsSort && React.createElement(icons_1.HolderOutlined, { className: "icon-drag" }),
|
|
147
|
-
columnsVisible &&
|
|
148
|
-
React.createElement(antd_1.Checkbox, { style: { marginRight: '10px' }, checked: checked, disabled: column.columnVisibleDisabled, onChange: function (event) { changeVisible(event, column); } }),
|
|
149
|
-
column.title))
|
|
150
|
-
: '';
|
|
151
|
-
});
|
|
152
|
-
}, [order, visibleItems]);
|
|
153
|
-
return (React.createElement(antd_1.Popover, { overlayClassName: "table-columns-setting-popover", content: React.createElement("ul", { onDragOver: dragOver, className: "table-columns-setting-wrapper" }, renderList), trigger: "click", align: {
|
|
154
|
-
offset: [-60, -14]
|
|
155
|
-
} },
|
|
156
|
-
React.createElement(IconFont_1.default, { type: "icon-setting", style: {
|
|
157
|
-
float: 'right',
|
|
158
|
-
fontSize: '17px',
|
|
159
|
-
lineHeight: 1,
|
|
160
|
-
marginTop: '2px',
|
|
161
|
-
fontWeight: 500
|
|
162
|
-
} })));
|
|
163
|
-
}
|
|
164
|
-
exports.default = PopoverSetColumns;
|