xmirror-components 1.0.29 → 1.0.30-alpha.2
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/index.cjs +212 -16
- package/build/dist/index.mjs +2418 -2058
- package/build/es/components/SearchArea/Item/index.d.ts +10 -0
- package/build/es/components/SearchArea/Item/index.js +49 -0
- package/build/es/components/SearchArea/ToggleButton/index.d.ts +14 -0
- package/build/es/components/SearchArea/ToggleButton/index.js +25 -0
- package/build/es/components/SearchArea/index.d.ts +25 -0
- package/build/es/components/SearchArea/index.js +120 -0
- package/build/es/components/Table/Footer/index.d.ts +0 -1
- package/build/es/components/Table/Footer/index.js +20 -17
- package/build/es/components/Table/Footer/styles.d.ts +25 -0
- package/build/es/components/Table/Footer/styles.js +25 -0
- package/build/es/components/Table/PopoverSetColumns/index.d.ts +0 -1
- package/build/es/components/Table/PopoverSetColumns/index.js +2 -2
- package/build/es/components/Table/PopoverSetColumns/styles.d.ts +8 -0
- package/build/es/components/Table/PopoverSetColumns/styles.js +11 -0
- package/build/es/components/Table/index.d.ts +0 -1
- package/build/es/components/Table/index.js +2 -2
- package/build/es/components/Table/styles.d.ts +4 -0
- package/build/es/components/Table/styles.js +7 -0
- package/build/es/index.d.ts +1 -0
- package/build/es/index.js +1 -0
- package/build/lib/components/SearchArea/Item/index.js +54 -0
- package/build/lib/components/SearchArea/ToggleButton/index.js +30 -0
- package/build/lib/components/SearchArea/index.js +158 -0
- package/build/lib/components/Table/Footer/index.js +19 -16
- package/build/lib/components/Table/Footer/styles.js +31 -0
- package/build/lib/components/Table/PopoverSetColumns/index.js +2 -2
- package/build/lib/components/Table/PopoverSetColumns/styles.js +17 -0
- package/build/lib/components/Table/index.js +2 -2
- package/build/lib/components/Table/styles.js +13 -0
- package/build/lib/index.d.ts +49 -0
- package/build/lib/index.js +3 -1
- package/build/package.json +1 -1
- package/build/types/components/SearchArea/Item/index.d.ts +10 -0
- package/build/types/components/SearchArea/ToggleButton/index.d.ts +14 -0
- package/build/types/components/SearchArea/index.d.ts +25 -0
- package/build/types/components/Table/Footer/index.d.ts +0 -1
- package/build/types/components/Table/Footer/styles.d.ts +25 -0
- package/build/types/components/Table/PopoverSetColumns/index.d.ts +0 -1
- package/build/types/components/Table/PopoverSetColumns/styles.d.ts +8 -0
- package/build/types/components/Table/index.d.ts +0 -1
- package/build/types/components/Table/styles.d.ts +4 -0
- package/build/types/index.d.ts +1 -0
- package/package.json +1 -1
- package/build/dist/index.css +0 -1
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __assign = (this && this.__assign) || function () {
|
|
7
|
+
__assign = Object.assign || function(t) {
|
|
8
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
+
s = arguments[i];
|
|
10
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
+
t[p] = s[p];
|
|
12
|
+
}
|
|
13
|
+
return t;
|
|
14
|
+
};
|
|
15
|
+
return __assign.apply(this, arguments);
|
|
16
|
+
};
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
32
|
+
});
|
|
33
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
34
|
+
var ownKeys = function(o) {
|
|
35
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
36
|
+
var ar = [];
|
|
37
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
38
|
+
return ar;
|
|
39
|
+
};
|
|
40
|
+
return ownKeys(o);
|
|
41
|
+
};
|
|
42
|
+
return function (mod) {
|
|
43
|
+
if (mod && mod.__esModule) return mod;
|
|
44
|
+
var result = {};
|
|
45
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
46
|
+
__setModuleDefault(result, mod);
|
|
47
|
+
return result;
|
|
48
|
+
};
|
|
49
|
+
})();
|
|
50
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
51
|
+
var t = {};
|
|
52
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
53
|
+
t[p] = s[p];
|
|
54
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
55
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
56
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
57
|
+
t[p[i]] = s[p[i]];
|
|
58
|
+
}
|
|
59
|
+
return t;
|
|
60
|
+
};
|
|
61
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
62
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
63
|
+
};
|
|
64
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
65
|
+
var react_1 = __importStar(require("react"));
|
|
66
|
+
var antd_1 = require("antd");
|
|
67
|
+
var icons_1 = require("@ant-design/icons");
|
|
68
|
+
var styled_1 = __importDefault(require("@emotion/styled"));
|
|
69
|
+
var Item_1 = __importDefault(require("./Item"));
|
|
70
|
+
var ToggleButton_1 = __importDefault(require("./ToggleButton"));
|
|
71
|
+
var AnimatedContainer = (0, styled_1.default)('div', {
|
|
72
|
+
shouldForwardProp: function (prop) { return prop !== 'show'; },
|
|
73
|
+
})(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n overflow: hidden;\n transition: max-height 0.4s ease-in-out;\n max-height: ", ";\n"], ["\n overflow: hidden;\n transition: max-height 0.4s ease-in-out;\n max-height: ", ";\n"])), function (props) { return props.show ? '450px' : '0'; });
|
|
74
|
+
var StyledForm = (0, styled_1.default)(antd_1.Form)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n padding: 20px;\n padding-bottom: 0;\n margin-bottom: 20px;\n background: #F7FAFB;\n border: 1px solid #F3F3F4;\n\n .ant-form-item {\n margin-bottom: 20px;\n }\n"], ["\n padding: 20px;\n padding-bottom: 0;\n margin-bottom: 20px;\n background: #F7FAFB;\n border: 1px solid #F3F3F4;\n\n .ant-form-item {\n margin-bottom: 20px;\n }\n"])));
|
|
75
|
+
var SearchAreaHandle = styled_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n gap: 10px;\n display: flex;\n justify-content: flex-end;\n margin-bottom: 20px;\n"], ["\n gap: 10px;\n display: flex;\n justify-content: flex-end;\n margin-bottom: 20px;\n"])));
|
|
76
|
+
/**
|
|
77
|
+
* 高级筛选
|
|
78
|
+
* @param children 子元素
|
|
79
|
+
* @param onSearch {function} 接收函数,点筛选时执行,返回筛选数据
|
|
80
|
+
* @param col 与 Col 的配置相同,控制筛选项排版
|
|
81
|
+
* @param row Row 的配置相同,控制筛选项排版
|
|
82
|
+
* @param loading {boolean} 筛选加载状态
|
|
83
|
+
* @param props 多余参数,绑定至 Form 上
|
|
84
|
+
* @param ref
|
|
85
|
+
* @return {JSX.Element}
|
|
86
|
+
* @constructor
|
|
87
|
+
*/
|
|
88
|
+
function InternalSearchArea(_a) {
|
|
89
|
+
var children = _a.children, onSearch = _a.onSearch, _b = _a.col, col = _b === void 0 ? {} : _b, _c = _a.row, row = _c === void 0 ? {} : _c, _d = _a.loading, loading = _d === void 0 ? false : _d, ref = _a.ref, props = __rest(_a, ["children", "onSearch", "col", "row", "loading", "ref"]);
|
|
90
|
+
var form = antd_1.Form.useForm()[0];
|
|
91
|
+
var show, toggle;
|
|
92
|
+
if (ref && typeof ref === 'object') {
|
|
93
|
+
show = ref.show;
|
|
94
|
+
toggle = ref.toggle;
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
var _e = (0, react_1.useState)(false), _show = _e[0], _setShow_1 = _e[1];
|
|
98
|
+
show = _show;
|
|
99
|
+
toggle = function () { _setShow_1(function (v) { return !v; }); };
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* 提交搜索
|
|
103
|
+
*/
|
|
104
|
+
var submit = function () {
|
|
105
|
+
var data = form.getFieldsValue();
|
|
106
|
+
onSearch === null || onSearch === void 0 ? void 0 : onSearch(data);
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* 重置
|
|
110
|
+
*/
|
|
111
|
+
var reset = function () {
|
|
112
|
+
form.resetFields();
|
|
113
|
+
submit();
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* 重置
|
|
117
|
+
*/
|
|
118
|
+
var close = function () {
|
|
119
|
+
toggle();
|
|
120
|
+
};
|
|
121
|
+
return (react_1.default.createElement(AnimatedContainer, { show: show },
|
|
122
|
+
react_1.default.createElement(StyledForm, __assign({ form: form, labelCol: { flex: '70px' }, wrapperCol: { flex: '1', style: { maxWidth: '280px' } } }, props),
|
|
123
|
+
react_1.default.createElement(antd_1.Row, __assign({ gutter: 10, justify: "space-between" }, row),
|
|
124
|
+
Array.isArray(children)
|
|
125
|
+
? children.map(function (item) {
|
|
126
|
+
return (react_1.default.createElement(antd_1.Col, __assign({ span: 6, xxl: 6,
|
|
127
|
+
xl: 8,
|
|
128
|
+
lg: 12,
|
|
129
|
+
xs: 24, key: item.props.name || item.key || item.props.label }, col), item));
|
|
130
|
+
})
|
|
131
|
+
: children,
|
|
132
|
+
react_1.default.createElement(antd_1.Col, { flex: 1 },
|
|
133
|
+
react_1.default.createElement(SearchAreaHandle, null,
|
|
134
|
+
react_1.default.createElement(antd_1.Button, { loading: loading, type: "primary", onClick: submit }, "\u7B5B\u9009"),
|
|
135
|
+
react_1.default.createElement(antd_1.Button, { loading: loading, onClick: reset }, "\u91CD\u7F6E"),
|
|
136
|
+
react_1.default.createElement(antd_1.Button, { type: "link", style: {
|
|
137
|
+
paddingLeft: 0,
|
|
138
|
+
paddingRight: 0
|
|
139
|
+
}, onClick: close },
|
|
140
|
+
"\u6536\u8D77",
|
|
141
|
+
react_1.default.createElement(icons_1.UpOutlined, null))))))));
|
|
142
|
+
}
|
|
143
|
+
var SearchArea = InternalSearchArea;
|
|
144
|
+
function useSearchArea() {
|
|
145
|
+
var _a = (0, react_1.useState)(false), show = _a[0], setShow = _a[1];
|
|
146
|
+
var toggle = function () {
|
|
147
|
+
setShow(function (value) { return !value; });
|
|
148
|
+
};
|
|
149
|
+
return {
|
|
150
|
+
show: show,
|
|
151
|
+
toggle: toggle
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
SearchArea.useSearchArea = useSearchArea;
|
|
155
|
+
SearchArea.Item = Item_1.default;
|
|
156
|
+
SearchArea.ToggleButton = ToggleButton_1.default;
|
|
157
|
+
exports.default = SearchArea;
|
|
158
|
+
var templateObject_1, templateObject_2, templateObject_3;
|
|
@@ -38,7 +38,8 @@ var react_intl_1 = require("react-intl");
|
|
|
38
38
|
var antd_1 = require("antd");
|
|
39
39
|
var react_transition_group_1 = require("react-transition-group");
|
|
40
40
|
var icons_1 = require("@ant-design/icons");
|
|
41
|
-
require("
|
|
41
|
+
var react_2 = require("@emotion/react");
|
|
42
|
+
var styles_1 = require("./styles");
|
|
42
43
|
function Index(props) {
|
|
43
44
|
var _a;
|
|
44
45
|
var transitionNodeRef = (0, react_1.useRef)(null);
|
|
@@ -102,20 +103,22 @@ function Index(props) {
|
|
|
102
103
|
var selectedRowKeys = (_a = rowSelection.selectedRowKeys) !== null && _a !== void 0 ? _a : [];
|
|
103
104
|
return !!(selectedRowKeys.length > 0 && selectedRowKeys.length === optionalNum);
|
|
104
105
|
}, [rowSelection.selectedRowKeys, optionalNum]);
|
|
105
|
-
return (react_1.default.createElement(
|
|
106
|
-
react_1.default.createElement(
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
react_1.default.createElement(
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
106
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
107
|
+
react_1.default.createElement(react_2.Global, { styles: styles_1.globalStyles }),
|
|
108
|
+
react_1.default.createElement(styles_1.TableFooterWrapper, null,
|
|
109
|
+
react_1.default.createElement(react_transition_group_1.CSSTransition, { in: Boolean(props.rowSelection && props.selectionPopover && (checked || indeterminate)), nodeRef: transitionNodeRef, classNames: styles_1.zoomStyles, unmountOnExit: true, timeout: 300 }, function () {
|
|
110
|
+
var _a, _b;
|
|
111
|
+
return (react_1.default.createElement(styles_1.StyledRow, { ref: transitionNodeRef, justify: "space-between" },
|
|
112
|
+
react_1.default.createElement(antd_1.Col, { style: { display: 'flex', alignItems: 'center' } },
|
|
113
|
+
react_1.default.createElement(antd_1.Checkbox, { checked: checked, indeterminate: indeterminate, onChange: changeCheckAll },
|
|
114
|
+
react_1.default.createElement(react_intl_1.FormattedMessage, { id: "component.table.selected", defaultMessage: '已选{length}条', values: {
|
|
115
|
+
length: (_b = (_a = rowSelection.selectedRowKeys) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0
|
|
116
|
+
} }))),
|
|
117
|
+
react_1.default.createElement(antd_1.Col, { style: { display: 'flex', alignItems: 'center' } },
|
|
118
|
+
selectionPopover,
|
|
119
|
+
react_1.default.createElement(styles_1.CloseButton, { onClick: function () { changeCheckAll({ target: { checked: false } }); } },
|
|
120
|
+
react_1.default.createElement(icons_1.CloseOutlined, null)))));
|
|
121
|
+
}),
|
|
122
|
+
pagination && (react_1.default.createElement(styles_1.TableFooterTotal, null, pagination.showTotal ? pagination.showTotal((_a = pagination.total) !== null && _a !== void 0 ? _a : 0, [0, 0]) : null)))));
|
|
120
123
|
}
|
|
121
124
|
exports.default = Index;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.globalStyles = exports.zoomStyles = exports.CloseButton = exports.StyledRow = exports.TableBatchDialog = exports.TableFooterTotal = exports.TableFooterWrapper = void 0;
|
|
11
|
+
var styled_1 = __importDefault(require("@emotion/styled"));
|
|
12
|
+
var antd_1 = require("antd");
|
|
13
|
+
exports.TableFooterWrapper = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: absolute;\n left: 8px;\n"], ["\n position: absolute;\n left: 8px;\n"])));
|
|
14
|
+
exports.TableFooterTotal = styled_1.default.span(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n font-size: 14px;\n color: #666;\n"], ["\n font-size: 14px;\n color: #666;\n"])));
|
|
15
|
+
exports.TableBatchDialog = styled_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: fixed;\n right: 0;\n bottom: 30px;\n left: 0;\n z-index: 9;\n width: 600px;\n padding: 15px 20px;\n margin: auto;\n color: #fff;\n background-color: #666;\n border-radius: 5px;\n transition: all 0.5s;\n\n .ant-checkbox-wrapper {\n margin-right: 10px;\n color: #fff;\n\n .ant-checkbox-indeterminate .ant-checkbox-inner {\n background-color: transparent;\n border-color: #d9d9d9;\n }\n }\n"], ["\n position: fixed;\n right: 0;\n bottom: 30px;\n left: 0;\n z-index: 9;\n width: 600px;\n padding: 15px 20px;\n margin: auto;\n color: #fff;\n background-color: #666;\n border-radius: 5px;\n transition: all 0.5s;\n\n .ant-checkbox-wrapper {\n margin-right: 10px;\n color: #fff;\n\n .ant-checkbox-indeterminate .ant-checkbox-inner {\n background-color: transparent;\n border-color: #d9d9d9;\n }\n }\n"
|
|
16
|
+
// 包装 Row 组件的样式
|
|
17
|
+
])));
|
|
18
|
+
// 包装 Row 组件的样式
|
|
19
|
+
exports.StyledRow = (0, styled_1.default)(antd_1.Row)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n position: fixed;\n right: 0;\n bottom: 30px;\n left: 0;\n z-index: 9;\n width: 600px;\n padding: 15px 20px;\n margin: auto;\n color: #fff;\n background-color: #666;\n border-radius: 5px;\n transition: all 0.5s;\n\n .ant-checkbox-wrapper {\n margin-right: 10px;\n color: #fff;\n\n .ant-checkbox-indeterminate .ant-checkbox-inner {\n background-color: transparent;\n border-color: #d9d9d9;\n }\n }\n"], ["\n position: fixed;\n right: 0;\n bottom: 30px;\n left: 0;\n z-index: 9;\n width: 600px;\n padding: 15px 20px;\n margin: auto;\n color: #fff;\n background-color: #666;\n border-radius: 5px;\n transition: all 0.5s;\n\n .ant-checkbox-wrapper {\n margin-right: 10px;\n color: #fff;\n\n .ant-checkbox-indeterminate .ant-checkbox-inner {\n background-color: transparent;\n border-color: #d9d9d9;\n }\n }\n"])));
|
|
20
|
+
exports.CloseButton = styled_1.default.span(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n margin-left: 20px;\n cursor: pointer;\n opacity: 0.5;\n transition: all 0.5s;\n\n &:hover {\n opacity: 1;\n }\n"], ["\n margin-left: 20px;\n cursor: pointer;\n opacity: 0.5;\n transition: all 0.5s;\n\n &:hover {\n opacity: 1;\n }\n"
|
|
21
|
+
// 动画样式 - 使用 CSS 类名
|
|
22
|
+
])));
|
|
23
|
+
// 动画样式 - 使用 CSS 类名
|
|
24
|
+
exports.zoomStyles = {
|
|
25
|
+
enter: 'zoom-enter',
|
|
26
|
+
enterActive: 'zoom-enter-active',
|
|
27
|
+
leaveActive: 'zoom-leave-active'
|
|
28
|
+
};
|
|
29
|
+
// 全局样式注入
|
|
30
|
+
exports.globalStyles = "\n .zoom-enter {\n transform: scale(0);\n }\n\n .zoom-enter-active {\n transform: scale(1);\n }\n\n .zoom-leave-active {\n transform: scale(0);\n }\n";
|
|
31
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
@@ -52,7 +52,7 @@ var icons_1 = require("@ant-design/icons");
|
|
|
52
52
|
// import { message, IconFont } from 'xmirror-components'
|
|
53
53
|
var AntdApp_1 = require("../../AntdApp");
|
|
54
54
|
var IconFont_1 = __importDefault(require("../../IconFont"));
|
|
55
|
-
require("./
|
|
55
|
+
var styles_1 = require("./styles");
|
|
56
56
|
function PopoverSetColumns(_a) {
|
|
57
57
|
var order = _a.order, visibleItems = _a.visibleItems, _b = _a.columns, columns = _b === void 0 ? [] : _b, onChangeOrder = _a.onChangeOrder, columnsVisible = _a.columnsVisible, columnsSort = _a.columnsSort, onChangeVisible = _a.onChangeVisible;
|
|
58
58
|
var dragged = (0, react_1.useRef)(null);
|
|
@@ -198,7 +198,7 @@ function PopoverSetColumns(_a) {
|
|
|
198
198
|
: null;
|
|
199
199
|
});
|
|
200
200
|
}, [order, visibleItems, columns, columnsSort, columnsVisible]);
|
|
201
|
-
return (react_1.default.createElement(antd_1.Popover, { overlayClassName: "table-columns-setting-popover", content: react_1.default.createElement(
|
|
201
|
+
return (react_1.default.createElement(antd_1.Popover, { overlayClassName: "table-columns-setting-popover", content: react_1.default.createElement(styles_1.ColumnsSettingWrapper, { onDragOver: dragOver }, renderList), trigger: "click", align: {
|
|
202
202
|
offset: [-60, -14]
|
|
203
203
|
} },
|
|
204
204
|
react_1.default.createElement(IconFont_1.default, { type: "icon-setting", style: {
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.ColumnsSettingWrapper = exports.PopoverWrapper = void 0;
|
|
11
|
+
var styled_1 = __importDefault(require("@emotion/styled"));
|
|
12
|
+
var react_1 = require("@emotion/react");
|
|
13
|
+
var dragUpAnimation = (0, react_1.keyframes)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n from {\n margin-top: 0;\n }\n to {\n margin-top: 32px;\n }\n"], ["\n from {\n margin-top: 0;\n }\n to {\n margin-top: 32px;\n }\n"])));
|
|
14
|
+
var dragDownAnimation = (0, react_1.keyframes)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n from {\n margin-top: 32px;\n margin-bottom: 0;\n }\n to {\n margin-top: 0;\n margin-bottom: 32px;\n }\n"], ["\n from {\n margin-top: 32px;\n margin-bottom: 0;\n }\n to {\n margin-top: 0;\n margin-bottom: 32px;\n }\n"])));
|
|
15
|
+
exports.PopoverWrapper = styled_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n .ant-popover-inner-content {\n max-height: 360px;\n padding: 0;\n overflow-y: auto;\n }\n"], ["\n .ant-popover-inner-content {\n max-height: 360px;\n padding: 0;\n overflow-y: auto;\n }\n"])));
|
|
16
|
+
exports.ColumnsSettingWrapper = styled_1.default.ul(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n padding: 10px 0;\n\n .drag-up {\n border: solid 2px #ccc;\n animation: ", " ease 0.2s 1;\n animation-fill-mode: forwards;\n }\n\n .drag-down {\n border: solid 2px #ccc;\n animation: ", " ease 0.2s 1;\n animation-fill-mode: forwards;\n }\n\n li {\n width: 150px;\n padding: 5px 12px;\n overflow: hidden;\n text-overflow: ellipsis;\n word-break: keep-all;\n white-space: nowrap;\n user-select: none;\n transition: background-color 0.5s;\n\n .icon-drag {\n margin-right: 10px;\n color: #999;\n cursor: move;\n }\n\n &[draggable=\"false\"] {\n .icon-drag {\n cursor: no-drop;\n opacity: 0.2;\n }\n }\n\n &:hover {\n background-color: #f0f0f0;\n }\n }\n"], ["\n padding: 10px 0;\n\n .drag-up {\n border: solid 2px #ccc;\n animation: ", " ease 0.2s 1;\n animation-fill-mode: forwards;\n }\n\n .drag-down {\n border: solid 2px #ccc;\n animation: ", " ease 0.2s 1;\n animation-fill-mode: forwards;\n }\n\n li {\n width: 150px;\n padding: 5px 12px;\n overflow: hidden;\n text-overflow: ellipsis;\n word-break: keep-all;\n white-space: nowrap;\n user-select: none;\n transition: background-color 0.5s;\n\n .icon-drag {\n margin-right: 10px;\n color: #999;\n cursor: move;\n }\n\n &[draggable=\"false\"] {\n .icon-drag {\n cursor: no-drop;\n opacity: 0.2;\n }\n }\n\n &:hover {\n background-color: #f0f0f0;\n }\n }\n"])), dragUpAnimation, dragDownAnimation);
|
|
17
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
|
|
@@ -53,7 +53,7 @@ var ahooks_1 = require("ahooks");
|
|
|
53
53
|
var icons_1 = require("@ant-design/icons");
|
|
54
54
|
var PopoverSetColumns_1 = __importDefault(require("./PopoverSetColumns"));
|
|
55
55
|
var Footer_1 = __importDefault(require("./Footer"));
|
|
56
|
-
require("./
|
|
56
|
+
var styles_1 = require("./styles");
|
|
57
57
|
function Index(props, ref) {
|
|
58
58
|
var _a = props.columns, columns = _a === void 0 ? [] : _a, columnsSort = props.columnsSort, columnsVisible = props.columnsVisible, _b = props.tableId, tableId = _b === void 0 ? '' : _b, pagination = props.pagination, dataSource = props.dataSource;
|
|
59
59
|
var pathname = location.pathname;
|
|
@@ -219,7 +219,7 @@ function Index(props, ref) {
|
|
|
219
219
|
(0, react_1.useEffect)(function () {
|
|
220
220
|
initColumnsSort();
|
|
221
221
|
}, []);
|
|
222
|
-
return (react_1.default.createElement(
|
|
222
|
+
return (react_1.default.createElement(styles_1.TableWrapper, { ref: ref },
|
|
223
223
|
react_1.default.createElement(antd_1.Table, __assign({ ref: tableRef, scroll: {
|
|
224
224
|
x: 900
|
|
225
225
|
} }, props, { pagination: paginationProps, columns: renderColumns }))));
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.TableWrapper = void 0;
|
|
11
|
+
var styled_1 = __importDefault(require("@emotion/styled"));
|
|
12
|
+
exports.TableWrapper = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n\n .ant-pagination-options {\n .ant-select {\n width: auto !important;\n }\n }\n"], ["\n position: relative;\n\n .ant-pagination-options {\n .ant-select {\n width: auto !important;\n }\n }\n"])));
|
|
13
|
+
var templateObject_1;
|
package/build/lib/index.d.ts
CHANGED
|
@@ -2,14 +2,18 @@ import { AnyObject } from 'antd/es/_util/type';
|
|
|
2
2
|
import { AppProps } from 'antd';
|
|
3
3
|
import { Checkbox } from 'antd';
|
|
4
4
|
import { CheckboxChangeEvent } from 'antd/es/checkbox';
|
|
5
|
+
import { ColProps } from 'antd';
|
|
5
6
|
import { ColumnTitleProps } from 'antd/es/table/interface';
|
|
6
7
|
import { default as default_2 } from 'react';
|
|
8
|
+
import { FormItemProps } from 'antd';
|
|
9
|
+
import { FormProps } from 'antd';
|
|
7
10
|
import { MessageInstance } from 'antd/es/message/interface';
|
|
8
11
|
import { ModalStaticFunctions } from 'antd/es/modal/confirm';
|
|
9
12
|
import { NotificationInstance } from 'antd/es/notification/interface';
|
|
10
13
|
import { Options as Options_2 } from 'ahooks/lib/useRequest/src/types';
|
|
11
14
|
import { Plugin as Plugin_2 } from 'ahooks/lib/useRequest/src/types';
|
|
12
15
|
import { Result } from 'ahooks/lib/useRequest/src/types';
|
|
16
|
+
import { RowProps } from 'antd';
|
|
13
17
|
import { Service } from 'ahooks/lib/useRequest/src/types';
|
|
14
18
|
import { SwitchProps } from 'antd/es/switch';
|
|
15
19
|
import { TableColumnType } from 'antd';
|
|
@@ -201,6 +205,23 @@ declare type IconFontProps = (IconFontCommonProps & default_2.SVGProps<SVGSVGEle
|
|
|
201
205
|
symbol?: false;
|
|
202
206
|
});
|
|
203
207
|
|
|
208
|
+
/**
|
|
209
|
+
* 筛选项
|
|
210
|
+
* @param props
|
|
211
|
+
* @return {JSX.Element}
|
|
212
|
+
* @constructor
|
|
213
|
+
*/
|
|
214
|
+
declare function Index({ children, ...props }: FormItemProps): default_2.JSX.Element;
|
|
215
|
+
|
|
216
|
+
declare interface InternalSearchAreaProps extends FormProps<any> {
|
|
217
|
+
loading?: boolean;
|
|
218
|
+
onSearch?: (data: any) => void;
|
|
219
|
+
children?: default_2.ReactNode;
|
|
220
|
+
col?: ColProps;
|
|
221
|
+
row?: RowProps;
|
|
222
|
+
ref: SearchAreaRef;
|
|
223
|
+
}
|
|
224
|
+
|
|
204
225
|
export declare let message: MessageInstance;
|
|
205
226
|
|
|
206
227
|
export declare let modal: Omit<ModalStaticFunctions, 'warn'>;
|
|
@@ -215,6 +236,20 @@ declare interface Options<TData, TParams extends unknown[]> extends Options_2<TD
|
|
|
215
236
|
errorMessage?: boolean;
|
|
216
237
|
}
|
|
217
238
|
|
|
239
|
+
export declare const SearchArea: default_2.ForwardRefExoticComponent<InternalSearchAreaProps> & {
|
|
240
|
+
Item: typeof Index;
|
|
241
|
+
ToggleButton: typeof ToggleButton;
|
|
242
|
+
useSearchArea: () => {
|
|
243
|
+
show: boolean;
|
|
244
|
+
toggle: () => void;
|
|
245
|
+
};
|
|
246
|
+
};
|
|
247
|
+
|
|
248
|
+
declare interface SearchAreaRef {
|
|
249
|
+
show: boolean;
|
|
250
|
+
toggle: () => void;
|
|
251
|
+
}
|
|
252
|
+
|
|
218
253
|
export declare let setGlobalLoading: (_value: boolean) => void;
|
|
219
254
|
|
|
220
255
|
/**
|
|
@@ -271,6 +306,20 @@ declare interface TableComponentProps<RecordType = AnyObject> extends Omit<Table
|
|
|
271
306
|
selectionPopover?: default_2.ReactNode;
|
|
272
307
|
}
|
|
273
308
|
|
|
309
|
+
/**
|
|
310
|
+
* 高级筛选触发按钮
|
|
311
|
+
* @return {JSX.Element}
|
|
312
|
+
* @constructor
|
|
313
|
+
*/
|
|
314
|
+
declare function ToggleButton({ panel }: ToggleButtonProps): default_2.JSX.Element;
|
|
315
|
+
|
|
316
|
+
declare interface ToggleButtonProps {
|
|
317
|
+
panel: {
|
|
318
|
+
show: boolean;
|
|
319
|
+
toggle: () => void;
|
|
320
|
+
};
|
|
321
|
+
}
|
|
322
|
+
|
|
274
323
|
export declare function useRequest<TData, TParams extends unknown[]>(service: Service<TData, TParams>, options?: Options<TData, TParams>, plugins?: Array<Plugin_2<TData, TParams>>): WrappedResult<TData, TParams>;
|
|
275
324
|
|
|
276
325
|
declare interface WrappedResult<TData, TParams extends unknown[]> extends Omit<Result<TData, TParams>, 'data'> {
|
package/build/lib/index.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useRequest = exports.Table = exports.ConfigContext = exports.ConfigProvider = exports.setGlobalLoading = exports.GlobalLoading = exports.IconButton = exports.SwitchValue = exports.CheckboxValue = exports.IconFont = exports.modal = exports.notification = exports.message = exports.App = void 0;
|
|
6
|
+
exports.useRequest = exports.SearchArea = exports.Table = exports.ConfigContext = exports.ConfigProvider = exports.setGlobalLoading = exports.GlobalLoading = exports.IconButton = exports.SwitchValue = exports.CheckboxValue = exports.IconFont = exports.modal = exports.notification = exports.message = exports.App = void 0;
|
|
7
7
|
var AntdApp_1 = require("./components/AntdApp");
|
|
8
8
|
Object.defineProperty(exports, "App", { enumerable: true, get: function () { return __importDefault(AntdApp_1).default; } });
|
|
9
9
|
Object.defineProperty(exports, "message", { enumerable: true, get: function () { return AntdApp_1.message; } });
|
|
@@ -25,5 +25,7 @@ Object.defineProperty(exports, "ConfigProvider", { enumerable: true, get: functi
|
|
|
25
25
|
Object.defineProperty(exports, "ConfigContext", { enumerable: true, get: function () { return ConfigProvider_1.ConfigContext; } });
|
|
26
26
|
var Table_1 = require("./components/Table");
|
|
27
27
|
Object.defineProperty(exports, "Table", { enumerable: true, get: function () { return __importDefault(Table_1).default; } });
|
|
28
|
+
var SearchArea_1 = require("./components/SearchArea");
|
|
29
|
+
Object.defineProperty(exports, "SearchArea", { enumerable: true, get: function () { return __importDefault(SearchArea_1).default; } });
|
|
28
30
|
var useRequest_1 = require("./hooks/useRequest");
|
|
29
31
|
Object.defineProperty(exports, "useRequest", { enumerable: true, get: function () { return __importDefault(useRequest_1).default; } });
|
package/build/package.json
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface ToggleButtonProps {
|
|
3
|
+
panel: {
|
|
4
|
+
show: boolean;
|
|
5
|
+
toggle: () => void;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* 高级筛选触发按钮
|
|
10
|
+
* @return {JSX.Element}
|
|
11
|
+
* @constructor
|
|
12
|
+
*/
|
|
13
|
+
declare function ToggleButton({ panel }: ToggleButtonProps): React.JSX.Element;
|
|
14
|
+
export default ToggleButton;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type FormProps, type ColProps, type RowProps } from 'antd';
|
|
3
|
+
import Item from './Item';
|
|
4
|
+
import ToggleButton from './ToggleButton';
|
|
5
|
+
interface SearchAreaRef {
|
|
6
|
+
show: boolean;
|
|
7
|
+
toggle: () => void;
|
|
8
|
+
}
|
|
9
|
+
interface InternalSearchAreaProps extends FormProps<any> {
|
|
10
|
+
loading?: boolean;
|
|
11
|
+
onSearch?: (data: any) => void;
|
|
12
|
+
children?: React.ReactNode;
|
|
13
|
+
col?: ColProps;
|
|
14
|
+
row?: RowProps;
|
|
15
|
+
ref: SearchAreaRef;
|
|
16
|
+
}
|
|
17
|
+
declare const SearchArea: React.ForwardRefExoticComponent<InternalSearchAreaProps> & {
|
|
18
|
+
Item: typeof Item;
|
|
19
|
+
ToggleButton: typeof ToggleButton;
|
|
20
|
+
useSearchArea: () => {
|
|
21
|
+
show: boolean;
|
|
22
|
+
toggle: () => void;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
export default SearchArea;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare const TableFooterWrapper: import("@emotion/styled").StyledComponent<{
|
|
2
|
+
theme?: import("@emotion/react").Theme;
|
|
3
|
+
as?: React.ElementType;
|
|
4
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
5
|
+
export declare const TableFooterTotal: import("@emotion/styled").StyledComponent<{
|
|
6
|
+
theme?: import("@emotion/react").Theme;
|
|
7
|
+
as?: React.ElementType;
|
|
8
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
|
9
|
+
export declare const TableBatchDialog: import("@emotion/styled").StyledComponent<{
|
|
10
|
+
theme?: import("@emotion/react").Theme;
|
|
11
|
+
as?: React.ElementType;
|
|
12
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
13
|
+
export declare const StyledRow: import("@emotion/styled").StyledComponent<import("antd").RowProps & import("react").RefAttributes<HTMLDivElement> & {
|
|
14
|
+
theme?: import("@emotion/react").Theme;
|
|
15
|
+
}, {}, {}>;
|
|
16
|
+
export declare const CloseButton: import("@emotion/styled").StyledComponent<{
|
|
17
|
+
theme?: import("@emotion/react").Theme;
|
|
18
|
+
as?: React.ElementType;
|
|
19
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
|
20
|
+
export declare const zoomStyles: {
|
|
21
|
+
enter: string;
|
|
22
|
+
enterActive: string;
|
|
23
|
+
leaveActive: string;
|
|
24
|
+
};
|
|
25
|
+
export declare const globalStyles = "\n .zoom-enter {\n transform: scale(0);\n }\n\n .zoom-enter-active {\n transform: scale(1);\n }\n\n .zoom-leave-active {\n transform: scale(0);\n }\n";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const PopoverWrapper: import("@emotion/styled").StyledComponent<{
|
|
2
|
+
theme?: import("@emotion/react").Theme;
|
|
3
|
+
as?: React.ElementType;
|
|
4
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
5
|
+
export declare const ColumnsSettingWrapper: import("@emotion/styled").StyledComponent<{
|
|
6
|
+
theme?: import("@emotion/react").Theme;
|
|
7
|
+
as?: React.ElementType;
|
|
8
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLUListElement>, HTMLUListElement>, {}>;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { AnyObject, TableComponentProps } from './types';
|
|
3
|
-
import './index.less';
|
|
4
3
|
declare const _default: React.ForwardRefExoticComponent<TableComponentProps<AnyObject> & React.RefAttributes<HTMLDivElement>>;
|
|
5
4
|
export default _default;
|
package/build/types/index.d.ts
CHANGED
|
@@ -6,4 +6,5 @@ export { default as IconButton } from './components/IconButton';
|
|
|
6
6
|
export { default as GlobalLoading, setGlobalLoading } from './components/GlobalLoading';
|
|
7
7
|
export { default as ConfigProvider, ConfigContext } from './components/ConfigProvider';
|
|
8
8
|
export { default as Table } from './components/Table';
|
|
9
|
+
export { default as SearchArea } from './components/SearchArea';
|
|
9
10
|
export { default as useRequest } from './hooks/useRequest';
|
package/package.json
CHANGED
package/build/dist/index.css
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.table-columns-setting-popover .ant-popover-inner-content{max-height:360px;padding:0;overflow-y:auto}.table-columns-setting-popover .table-columns-setting-wrapper{padding:10px 0}.table-columns-setting-popover .table-columns-setting-wrapper .drag-up{border:solid 2px #ccc;animation:dragup ease .2s 1;animation-fill-mode:forwards}.table-columns-setting-popover .table-columns-setting-wrapper .drag-down{border:solid 2px #ccc;animation:dragdown ease .2s 1;animation-fill-mode:forwards}.table-columns-setting-popover .table-columns-setting-wrapper li{width:150px;padding:5px 12px;overflow:hidden;text-overflow:ellipsis;word-break:keep-all;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background-color .5s}.table-columns-setting-popover .table-columns-setting-wrapper li .icon-drag{margin-right:10px;color:#999;cursor:move}.table-columns-setting-popover .table-columns-setting-wrapper li[draggable=false] .icon-drag{cursor:no-drop;opacity:.2}.table-columns-setting-popover .table-columns-setting-wrapper li:hover{background-color:#f0f0f0}@keyframes dragup{0%{margin-top:0}to{margin-top:32px}}@keyframes dragdown{0%{margin-top:32px;margin-bottom:0}to{margin-top:0;margin-bottom:32px}}.table-wrapper .table-footer{position:absolute;left:8px}.table-wrapper .table-footer .table-footer-total{font-size:14px;color:#666}.table-wrapper .table-footer .table-batch-dialog{position:fixed;right:0;bottom:30px;left:0;z-index:9;width:600px;padding:15px 20px;margin:auto;color:#fff;background-color:#666;border-radius:5px;transition:all .5s}.table-wrapper .table-footer .table-batch-dialog .ant-checkbox-wrapper{margin-right:10px;color:#fff}.table-wrapper .table-footer .table-batch-dialog .ant-checkbox-wrapper .ant-checkbox-indeterminate .ant-checkbox-inner{background-color:transparent;border-color:#d9d9d9}.table-wrapper .table-footer .table-batch-dialog .btn-close{margin-left:20px;cursor:pointer;opacity:.5;transition:all .5s}.table-wrapper .table-footer .table-batch-dialog .btn-close:hover{opacity:1}.table-wrapper .table-footer .zoom-enter{transform:scale(0)}.table-wrapper .table-footer .zoom-enter-active{transform:scale(1)}.table-wrapper .table-footer .zoom-leave-active{transform:scale(0)}.table-wrapper{position:relative}.table-wrapper .ant-pagination-options .ant-select{width:auto!important}
|