@teamix/pro 1.2.21 → 1.2.22
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/dist/pro.css +1 -1
- package/dist/pro.js +1506 -334
- package/dist/pro.min.css +1 -1
- package/dist/pro.min.js +1 -1
- package/es/actions/dialog.js +10 -21
- package/es/actions/index.d.ts +10 -0
- package/es/actions/index.js +11 -16
- package/es/form/Filter/AdvancedFilter.js +1 -0
- package/es/form/ProForm/index.scss +37 -6
- package/es/form/global.scss +1 -0
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/table/components/Layout/index.js +21 -12
- package/es/table/components/Pagination/index.d.ts +1 -0
- package/es/table/components/Pagination/index.js +81 -9
- package/es/table/components/Pagination/index.scss +22 -0
- package/es/table/components/ToolBar/FilterColumnIcon.js +24 -3
- package/es/table/components/ToolBar/index.scss +9 -4
- package/es/table/index.js +72 -21
- package/es/table/index.scss +1 -1
- package/es/table/typing.d.ts +4 -2
- package/es/table/utils/columnRender.js +2 -1
- package/es/table/utils/index.d.ts +7 -0
- package/es/table/utils/index.js +38 -4
- package/lib/actions/dialog.js +9 -20
- package/lib/actions/index.d.ts +10 -0
- package/lib/actions/index.js +11 -16
- package/lib/form/Filter/AdvancedFilter.js +1 -0
- package/lib/form/ProForm/index.scss +37 -6
- package/lib/form/global.scss +1 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/table/components/Layout/index.js +20 -11
- package/lib/table/components/Pagination/index.d.ts +1 -0
- package/lib/table/components/Pagination/index.js +88 -9
- package/lib/table/components/Pagination/index.scss +22 -0
- package/lib/table/components/ToolBar/FilterColumnIcon.js +23 -2
- package/lib/table/components/ToolBar/index.scss +9 -4
- package/lib/table/index.js +71 -20
- package/lib/table/index.scss +1 -1
- package/lib/table/typing.d.ts +4 -2
- package/lib/table/utils/columnRender.js +2 -1
- package/lib/table/utils/index.d.ts +7 -0
- package/lib/table/utils/index.js +46 -4
- package/package.json +1 -1
package/es/actions/dialog.js
CHANGED
@@ -32,7 +32,7 @@ import classnames from 'classnames';
|
|
32
32
|
import { useHistory } from 'react-router-dom';
|
33
33
|
import { Dialog, Drawer } from '@alicloudfe/components';
|
34
34
|
import PopConfirm from '@teamix/pop-confirm';
|
35
|
-
import { getTargetValue, uuid,
|
35
|
+
import { getTargetValue, uuid, getMessage } from '@teamix/utils';
|
36
36
|
import ProForm, { createForm } from '../form';
|
37
37
|
import { renderProMessage } from '../utils/message';
|
38
38
|
import { eventHandler } from './base';
|
@@ -161,45 +161,34 @@ export function useDialogAction(action, actionContext) {
|
|
161
161
|
while (1) {
|
162
162
|
switch (_context.prev = _context.next) {
|
163
163
|
case 0:
|
164
|
-
if (!link) {
|
165
|
-
_context.next = 5;
|
166
|
-
break;
|
167
|
-
}
|
168
|
-
|
169
|
-
goToLink(link, history);
|
170
|
-
onFinish && onFinish();
|
171
|
-
resolve(true);
|
172
|
-
return _context.abrupt("return");
|
173
|
-
|
174
|
-
case 5:
|
175
164
|
setLoading(true);
|
176
165
|
footerDescriptionValues = Object.assign({}, footerDescriptionRef === null || footerDescriptionRef === void 0 ? void 0 : (_footerDescriptionRef = footerDescriptionRef.current) === null || _footerDescriptionRef === void 0 ? void 0 : _footerDescriptionRef.values);
|
177
|
-
_context.prev =
|
166
|
+
_context.prev = 2;
|
178
167
|
requestContext = Object.assign({
|
179
168
|
footer: footerDescriptionValues
|
180
169
|
}, context);
|
181
|
-
_context.next =
|
170
|
+
_context.next = 6;
|
182
171
|
return doRequest(action, requestContext, history, footerDescriptionValues);
|
183
172
|
|
184
|
-
case
|
173
|
+
case 6:
|
185
174
|
onFinish && onFinish();
|
186
175
|
resolve(true);
|
187
|
-
_context.next =
|
176
|
+
_context.next = 15;
|
188
177
|
break;
|
189
178
|
|
190
|
-
case
|
191
|
-
_context.prev =
|
192
|
-
_context.t0 = _context["catch"](
|
179
|
+
case 10:
|
180
|
+
_context.prev = 10;
|
181
|
+
_context.t0 = _context["catch"](2);
|
193
182
|
setLoading(false);
|
194
183
|
resolve(false);
|
195
184
|
return _context.abrupt("return");
|
196
185
|
|
197
|
-
case
|
186
|
+
case 15:
|
198
187
|
case "end":
|
199
188
|
return _context.stop();
|
200
189
|
}
|
201
190
|
}
|
202
|
-
}, _callee, null, [[
|
191
|
+
}, _callee, null, [[2, 10]]);
|
203
192
|
}));
|
204
193
|
|
205
194
|
return function (_x) {
|
package/es/actions/index.d.ts
CHANGED
@@ -46,11 +46,21 @@ export interface ProActionMenuButtonProps extends MenuButtonProps {
|
|
46
46
|
export declare const ProActionMenuButton: (props: ProActionMenuButtonProps) => JSX.Element;
|
47
47
|
export declare type ProActionProps = ProActionButtonProps | ProActionMenuButtonProps;
|
48
48
|
export declare type ProActionGroupProps = {
|
49
|
+
/** 操作组类型:按钮、文字按钮 */
|
49
50
|
type?: 'button' | 'text';
|
51
|
+
/** 上下文 */
|
50
52
|
context?: any;
|
53
|
+
/** 操作项配置 */
|
51
54
|
actions: ProActionProps[];
|
55
|
+
/** 操作按钮最长数量,超出后折叠,默认为4 */
|
52
56
|
max?: number;
|
57
|
+
/**
|
58
|
+
* @deprecated 建议使用 more 代替
|
59
|
+
*/
|
53
60
|
moreText?: string;
|
61
|
+
/** 更多按钮的配置,只有在actions数量超过max时才有效 */
|
62
|
+
more?: string | ProActionButtonProps;
|
63
|
+
/** 是否有分割线,只有type="text"时生效,默认有分割线 */
|
54
64
|
divider?: boolean;
|
55
65
|
} & React.HTMLAttributes<HTMLElement>;
|
56
66
|
export declare function ProActionGroup(props: ProActionGroupProps): JSX.Element;
|
package/es/actions/index.js
CHANGED
@@ -5,7 +5,7 @@ var _excluded = ["type"],
|
|
5
5
|
_excluded5 = ["context", "text"],
|
6
6
|
_excluded6 = ["key", "actions"],
|
7
7
|
_excluded7 = ["key", "config"],
|
8
|
-
_excluded8 = ["type", "divider", "max", "moreText", "context", "actions", "className"];
|
8
|
+
_excluded8 = ["type", "divider", "max", "moreText", "more", "context", "actions", "className"];
|
9
9
|
|
10
10
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
11
11
|
|
@@ -287,25 +287,19 @@ function renderCommonActionButton(button, context, isTypeText) {
|
|
287
287
|
return /*#__PURE__*/React.createElement(ProActionMenuButton, _objectSpread({}, buttonProps));
|
288
288
|
}
|
289
289
|
|
290
|
-
function getDefaultMoreButton(type,
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
if (moreText) {
|
298
|
-
return {
|
299
|
-
label: moreText
|
300
|
-
};
|
301
|
-
}
|
302
|
-
|
303
|
-
return {
|
290
|
+
function getDefaultMoreButton(type, more) {
|
291
|
+
var moreConfig = typeof more === 'string' ? {
|
292
|
+
children: more
|
293
|
+
} : more;
|
294
|
+
var defaultConfig = type === 'button' ? {
|
295
|
+
children: getMessage('more')
|
296
|
+
} : {
|
304
297
|
icon: 'more-line',
|
305
298
|
// iconSize: 'small',
|
306
299
|
autoWidth: false,
|
307
300
|
className: 'teamix-pro-actions-text-menu-btn-no-arrow'
|
308
301
|
};
|
302
|
+
return Object.assign(defaultConfig, moreConfig);
|
309
303
|
}
|
310
304
|
|
311
305
|
var MAX_ACTTIONS = 4;
|
@@ -350,6 +344,7 @@ export function ProActionGroup(props) {
|
|
350
344
|
_props$max = props.max,
|
351
345
|
max = _props$max === void 0 ? MAX_ACTTIONS : _props$max,
|
352
346
|
moreText = props.moreText,
|
347
|
+
more = props.more,
|
353
348
|
context = props.context,
|
354
349
|
_props$actions = props.actions,
|
355
350
|
actions = _props$actions === void 0 ? [] : _props$actions,
|
@@ -362,7 +357,7 @@ export function ProActionGroup(props) {
|
|
362
357
|
}).filter(function (action) {
|
363
358
|
return action.visible !== false;
|
364
359
|
});
|
365
|
-
var formatedActions = formatGroupActions(filteredActions, max, getDefaultMoreButton(type, moreText));
|
360
|
+
var formatedActions = formatGroupActions(filteredActions, max, getDefaultMoreButton(type, more || moreText));
|
366
361
|
return /*#__PURE__*/React.createElement("div", _objectSpread({
|
367
362
|
className: cls('teamix-pro-actions', "teamix-pro-actions-type-".concat(type), className, {
|
368
363
|
'teamix-pro-actions-divider': type === 'button' ? false : divider
|
@@ -186,13 +186,13 @@
|
|
186
186
|
}
|
187
187
|
|
188
188
|
// 数组类组件添加按钮
|
189
|
-
.#{$
|
189
|
+
.#{$form-array}-base-addition {
|
190
190
|
.#{$css-prefix}formily-icon {
|
191
191
|
margin-right: 4px;
|
192
192
|
}
|
193
193
|
}
|
194
194
|
// 数组类ArrayItem Icon 居中
|
195
|
-
.#{$
|
195
|
+
.#{$form-array}-items-item-inner {
|
196
196
|
> .#{$css-prefix}box {
|
197
197
|
> .#{$css-prefix}space-item {
|
198
198
|
> .#{$css-prefix}formily-icon {
|
@@ -209,7 +209,7 @@
|
|
209
209
|
|
210
210
|
// 折叠面板
|
211
211
|
.#{$css-prefix}formily-collapse,
|
212
|
-
.#{$
|
212
|
+
.#{$form-array}-collapse-item {
|
213
213
|
.#{$css-prefix}collapse-panel-hidden {
|
214
214
|
.#{$css-prefix}collapse-panel-content {
|
215
215
|
padding-top: 4px;
|
@@ -261,7 +261,7 @@
|
|
261
261
|
}
|
262
262
|
|
263
263
|
// ArrayItems
|
264
|
-
.#{$
|
264
|
+
.#{$form-array}-items {
|
265
265
|
.#{$css-prefix}formily-grid-layout {
|
266
266
|
> div:last-child {
|
267
267
|
display: flex;
|
@@ -269,8 +269,39 @@
|
|
269
269
|
align-items: center;
|
270
270
|
}
|
271
271
|
}
|
272
|
-
|
273
|
-
|
272
|
+
}
|
273
|
+
.#{$form-array}-base-remove,
|
274
|
+
.#{$form-array}-base-addition,
|
275
|
+
.#{$form-array}-base-move-down,
|
276
|
+
.#{$form-array}-base-move-up,
|
277
|
+
.#{$form-array}-base-sort-handle,
|
278
|
+
.form-array-base-icon {
|
279
|
+
color: var(--color-fill1-6, #848484);
|
280
|
+
&:hover {
|
281
|
+
color: var(--color-brand1-6, #0064c8);
|
282
|
+
}
|
283
|
+
}
|
284
|
+
.form-array-base-icon {
|
285
|
+
cursor: pointer;
|
286
|
+
}
|
287
|
+
|
288
|
+
// ArrayCard
|
289
|
+
.#{$form-array}-cards-item {
|
290
|
+
.#{$css-prefix}card-head {
|
291
|
+
padding: 16px 20px;
|
292
|
+
background-color: var(--color-fill1-2, #f7f7f7);
|
293
|
+
.#{$css-prefix}card-head-main {
|
294
|
+
margin-top: 0;
|
295
|
+
border-bottom: 0;
|
296
|
+
height: 22px;
|
297
|
+
line-height: 22px;
|
298
|
+
.#{$css-prefix}card-title {
|
299
|
+
padding-left: 0;
|
300
|
+
&::before {
|
301
|
+
display: none;
|
302
|
+
}
|
303
|
+
}
|
304
|
+
}
|
274
305
|
}
|
275
306
|
}
|
276
307
|
|
package/es/form/global.scss
CHANGED
package/es/index.d.ts
CHANGED
@@ -21,5 +21,5 @@ export * from './page-container';
|
|
21
21
|
export * from './page-header';
|
22
22
|
export * from './skeleton';
|
23
23
|
export * from './table';
|
24
|
-
declare const version = "1.2.
|
24
|
+
declare const version = "1.2.21";
|
25
25
|
export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, hooks, nocode, templates, utils, };
|
package/es/index.js
CHANGED
@@ -27,7 +27,7 @@ export * from './page-header';
|
|
27
27
|
export * from './skeleton';
|
28
28
|
export * from './table'; // export * from './sidebar';
|
29
29
|
|
30
|
-
var version = '1.2.
|
30
|
+
var version = '1.2.21';
|
31
31
|
export { version, ProAction, ProCard, ProField, ProForm, ProInfo, // ProLayout,
|
32
32
|
ProPageContainer, ProPageHeader, ProSkeleton, ProTable, // ProSidebar,
|
33
33
|
hooks, nocode, templates, utils };
|
@@ -24,7 +24,7 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
24
24
|
|
25
25
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
26
26
|
|
27
|
-
import React, { useEffect, useState } from 'react';
|
27
|
+
import React, { useEffect, useState, isValidElement } from 'react';
|
28
28
|
import { Header, baseClass } from '@teamix/utils';
|
29
29
|
import { Button, Badge } from '@alicloudfe/components';
|
30
30
|
import TeamixIcon from '@teamix/icon';
|
@@ -48,7 +48,7 @@ var Layout = function Layout(props) {
|
|
48
48
|
rowSelection = props.rowSelection,
|
49
49
|
otherProps = _objectWithoutProperties(props, _excluded);
|
50
50
|
|
51
|
-
var mode =
|
51
|
+
var mode = dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.mode;
|
52
52
|
|
53
53
|
var _useState = useState((dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.expand) || false),
|
54
54
|
_useState2 = _slicedToArray(_useState, 2),
|
@@ -107,17 +107,26 @@ var Layout = function Layout(props) {
|
|
107
107
|
|
108
108
|
|
109
109
|
var renderPanelFilter = function renderPanelFilter() {
|
110
|
-
|
110
|
+
if (dataFilter) {
|
111
|
+
var _dataFilter$schema2;
|
111
112
|
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
113
|
+
if ( /*#__PURE__*/isValidElement(dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.content)) {
|
114
|
+
return /*#__PURE__*/React.createElement("div", {
|
115
|
+
className: cls('panel-filter'),
|
116
|
+
style: {
|
117
|
+
display: expand ? 'block' : 'none'
|
118
|
+
}
|
119
|
+
}, dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.content);
|
120
|
+
} else if ((dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema2 = dataFilter.schema) === null || _dataFilter$schema2 === void 0 ? void 0 : _dataFilter$schema2.length) >= 0) {
|
121
|
+
return /*#__PURE__*/React.createElement("div", {
|
122
|
+
className: cls('panel-filter'),
|
123
|
+
style: {
|
124
|
+
display: expand ? 'block' : 'none'
|
125
|
+
}
|
126
|
+
}, /*#__PURE__*/React.createElement(AdvancedFilter, _objectSpread({
|
127
|
+
form: dataFilterForm
|
128
|
+
}, dataFilter)));
|
129
|
+
}
|
121
130
|
}
|
122
131
|
}; // 渲染过滤器按钮
|
123
132
|
|
@@ -6,14 +6,29 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
6
6
|
|
7
7
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
8
8
|
|
9
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
10
|
+
|
11
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
12
|
+
|
13
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
14
|
+
|
15
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
16
|
+
|
17
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
18
|
+
|
19
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
20
|
+
|
9
21
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
10
22
|
|
11
23
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
12
24
|
|
13
25
|
// 自适应宽度的翻页器
|
14
|
-
import React from 'react';
|
15
|
-
import { Pagination } from '@alicloudfe/components';
|
26
|
+
import React, { useState } from 'react';
|
27
|
+
import { Pagination, Balloon, Select, Button } from '@alicloudfe/components';
|
28
|
+
import { getMessage, baseClass } from '@teamix/utils';
|
16
29
|
import { useResponsiveProps } from '@teamix/hooks';
|
30
|
+
import './index.scss';
|
31
|
+
var cls = baseClass('teamix-pro-pagination');
|
17
32
|
export default (function (props) {
|
18
33
|
var className = props.className,
|
19
34
|
onChange = props.onChange,
|
@@ -27,16 +42,20 @@ export default (function (props) {
|
|
27
42
|
onPageSizeChange = props.onPageSizeChange,
|
28
43
|
otherProps = _objectWithoutProperties(props, _excluded);
|
29
44
|
|
30
|
-
var _useResponsiveProps = useResponsiveProps([480,
|
45
|
+
var _useResponsiveProps = useResponsiveProps([480, 590, 700], ['mini', 'small', 'simple', 'normal']),
|
31
46
|
responsiveProps = _useResponsiveProps.responsiveProps,
|
32
47
|
paginationWrapperRef = _useResponsiveProps.ref;
|
33
48
|
|
49
|
+
var _useState = useState(false),
|
50
|
+
_useState2 = _slicedToArray(_useState, 2),
|
51
|
+
visible = _useState2[0],
|
52
|
+
setVisible = _useState2[1];
|
53
|
+
|
34
54
|
var commonPaginationProps = {
|
35
55
|
className: className,
|
36
56
|
onChange: onChange,
|
37
57
|
total: total,
|
38
58
|
pageSize: pageSize,
|
39
|
-
current: current,
|
40
59
|
shape: 'arrow-only',
|
41
60
|
pageSizeList: pageSizeList,
|
42
61
|
pageSizeSelector: pageSizeSelector,
|
@@ -44,26 +63,79 @@ export default (function (props) {
|
|
44
63
|
onPageSizeChange: onPageSizeChange
|
45
64
|
};
|
46
65
|
|
66
|
+
var customTotalRender = function customTotalRender(total) {
|
67
|
+
return /*#__PURE__*/React.createElement(Balloon, {
|
68
|
+
visible: visible,
|
69
|
+
closable: false,
|
70
|
+
onVisibleChange: function onVisibleChange(visible) {
|
71
|
+
return setVisible(visible);
|
72
|
+
},
|
73
|
+
align: "t",
|
74
|
+
// triggerType="click"
|
75
|
+
trigger: /*#__PURE__*/React.createElement(Button, {
|
76
|
+
text: true,
|
77
|
+
onMouseEnter: function onMouseEnter() {
|
78
|
+
return setVisible(true);
|
79
|
+
}
|
80
|
+
}, getMessage('total', {
|
81
|
+
total: total
|
82
|
+
}))
|
83
|
+
}, /*#__PURE__*/React.createElement("div", {
|
84
|
+
className: cls('custom-total-content')
|
85
|
+
}, /*#__PURE__*/React.createElement("div", {
|
86
|
+
className: "title"
|
87
|
+
}, getMessage('pageSize')), /*#__PURE__*/React.createElement(Select, {
|
88
|
+
className: cls('custom-page-size-selector'),
|
89
|
+
dataSource: pageSizeList,
|
90
|
+
defaultValue: pageSize,
|
91
|
+
followTrigger: true,
|
92
|
+
menuProps: {
|
93
|
+
hasSelectedIcon: false
|
94
|
+
},
|
95
|
+
onChange: function onChange(value) {
|
96
|
+
setVisible(false);
|
97
|
+
onPageSizeChange === null || onPageSizeChange === void 0 ? void 0 : onPageSizeChange(value);
|
98
|
+
}
|
99
|
+
})));
|
100
|
+
};
|
101
|
+
|
47
102
|
var renderPagination = function renderPagination() {
|
48
103
|
switch (responsiveProps) {
|
49
104
|
case 'normal':
|
50
|
-
return /*#__PURE__*/React.createElement(Pagination, _objectSpread(_objectSpread({}, commonPaginationProps),
|
105
|
+
return /*#__PURE__*/React.createElement(Pagination, _objectSpread(_objectSpread({}, commonPaginationProps), {}, {
|
106
|
+
totalRender: function totalRender(total) {
|
107
|
+
return getMessage('total', {
|
108
|
+
total: total
|
109
|
+
});
|
110
|
+
}
|
111
|
+
}, otherProps));
|
51
112
|
|
52
113
|
case 'simple':
|
53
114
|
return /*#__PURE__*/React.createElement(Pagination, _objectSpread(_objectSpread({}, commonPaginationProps), {}, {
|
54
|
-
pageShowCount: 3
|
115
|
+
pageShowCount: 3,
|
116
|
+
totalRender: function totalRender(total) {
|
117
|
+
return getMessage('total', {
|
118
|
+
total: total
|
119
|
+
});
|
120
|
+
}
|
55
121
|
}, otherProps));
|
56
122
|
|
57
123
|
case 'small':
|
58
124
|
return /*#__PURE__*/React.createElement(Pagination, _objectSpread(_objectSpread({}, commonPaginationProps), {}, {
|
125
|
+
pageShowCount: 3,
|
59
126
|
pageSizeSelector: false,
|
60
|
-
|
127
|
+
totalRender: function totalRender(total) {
|
128
|
+
return customTotalRender(total);
|
129
|
+
}
|
61
130
|
}, otherProps));
|
62
131
|
|
63
132
|
case 'mini':
|
64
133
|
return /*#__PURE__*/React.createElement(Pagination, _objectSpread(_objectSpread({}, commonPaginationProps), {}, {
|
65
134
|
pageSizeSelector: false,
|
66
|
-
|
135
|
+
totalRender: function totalRender(total) {
|
136
|
+
return customTotalRender(total);
|
137
|
+
},
|
138
|
+
type: "simple"
|
67
139
|
}, otherProps));
|
68
140
|
|
69
141
|
default:
|
@@ -76,7 +148,7 @@ export default (function (props) {
|
|
76
148
|
// 用于获取翻页器响应式 ref
|
77
149
|
React.createElement("div", {
|
78
150
|
ref: paginationWrapperRef,
|
79
|
-
className:
|
151
|
+
className: cls('wrapper')
|
80
152
|
}, renderPagination())
|
81
153
|
);
|
82
154
|
});
|
@@ -0,0 +1,22 @@
|
|
1
|
+
$prefix: 'teamix-pro-pagination';
|
2
|
+
|
3
|
+
.#{$prefix} {
|
4
|
+
&-custom-total {
|
5
|
+
&-content {
|
6
|
+
display: flex;
|
7
|
+
align-items: center;
|
8
|
+
.next-menu {
|
9
|
+
min-width: 56px !important;
|
10
|
+
.next-menu-item.next-select-menu-item {
|
11
|
+
padding: 0 8px !important;
|
12
|
+
}
|
13
|
+
}
|
14
|
+
}
|
15
|
+
}
|
16
|
+
&-custom-page-size-selector.next-select-trigger {
|
17
|
+
min-width: 56px;
|
18
|
+
.next-select-inner {
|
19
|
+
min-width: 56px;
|
20
|
+
}
|
21
|
+
}
|
22
|
+
}
|
@@ -31,7 +31,7 @@ import { Button, Dropdown, Menu, Dialog, Grid, Checkbox } from '@alicloudfe/comp
|
|
31
31
|
import TeamixIcon from '@teamix/icon';
|
32
32
|
import { baseClass, getMessage } from '@teamix/utils';
|
33
33
|
import React, { useState, useEffect } from 'react';
|
34
|
-
import { cloneDeep } from '../../utils';
|
34
|
+
import { cloneDeep, off, on } from '../../utils';
|
35
35
|
import './index.scss';
|
36
36
|
import { Ellipsis } from '@teamix/utils';
|
37
37
|
var CheckboxItem = Menu.CheckboxItem;
|
@@ -85,6 +85,26 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
|
|
85
85
|
dropdownVisible = _useState10[0],
|
86
86
|
setDropdownVisible = _useState10[1];
|
87
87
|
|
88
|
+
useEffect(function () {
|
89
|
+
on === null || on === void 0 ? void 0 : on(function (stateFilterColumns) {
|
90
|
+
if (stateFilterColumns && stateFilterColumns.length > 0) {
|
91
|
+
var showDataIndex = stateFilterColumns.map(function (item) {
|
92
|
+
return item.dataIndex;
|
93
|
+
});
|
94
|
+
var stateColumns = cloneDeep(processColumns(columns)).map(function (item) {
|
95
|
+
if (!showDataIndex.includes(item.dataIndex)) {
|
96
|
+
item.columnFilters = false;
|
97
|
+
}
|
98
|
+
|
99
|
+
return item;
|
100
|
+
});
|
101
|
+
setNewColumns(stateColumns);
|
102
|
+
}
|
103
|
+
}, 'refreshFilterState');
|
104
|
+
return function () {
|
105
|
+
off('refreshFilterState');
|
106
|
+
};
|
107
|
+
});
|
88
108
|
useEffect(function () {
|
89
109
|
setNewColumns(processColumns(columns));
|
90
110
|
}, [columns]); // 全选
|
@@ -196,7 +216,7 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
|
|
196
216
|
|
197
217
|
calculateSelectAllState(columns);
|
198
218
|
setNewColumns(columns);
|
199
|
-
(_actionRef$current = actionRef.current) === null || _actionRef$current === void 0 ? void 0 : (_actionRef$current$se = _actionRef$current.setColumn) === null || _actionRef$current$se === void 0 ? void 0 : _actionRef$current$se.call(_actionRef$current, columns);
|
219
|
+
(_actionRef$current = actionRef.current) === null || _actionRef$current === void 0 ? void 0 : (_actionRef$current$se = _actionRef$current.setColumn) === null || _actionRef$current$se === void 0 ? void 0 : _actionRef$current$se.call(_actionRef$current, columns, false);
|
200
220
|
}; // 计算全选状态
|
201
221
|
|
202
222
|
|
@@ -317,7 +337,8 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
|
|
317
337
|
onOk: onChangeColumnsForDialog,
|
318
338
|
onCancel: dialogOnClose,
|
319
339
|
onClose: dialogOnClose,
|
320
|
-
width: 480
|
340
|
+
width: 480,
|
341
|
+
className: cls('dialog')
|
321
342
|
}, /*#__PURE__*/React.createElement(Row, {
|
322
343
|
gutter: 20,
|
323
344
|
wrap: true,
|
@@ -20,6 +20,12 @@
|
|
20
20
|
min-width: 180px;
|
21
21
|
box-shadow: var(--popup-local-shadow, 0px 6px 24px 0px rgba(0, 0, 0, 0.1));
|
22
22
|
background: var(--menu-background);
|
23
|
+
|
24
|
+
&-dialog {
|
25
|
+
.next-checkbox-label {
|
26
|
+
line-height: var(--checkbox-size,16px);
|
27
|
+
}
|
28
|
+
}
|
23
29
|
&-reset {
|
24
30
|
position: absolute;
|
25
31
|
right: 16px;
|
@@ -38,7 +44,6 @@
|
|
38
44
|
visibility: visible;
|
39
45
|
cursor: pointer;
|
40
46
|
}
|
41
|
-
|
42
47
|
}
|
43
48
|
}
|
44
49
|
.next-menu-item-text {
|
@@ -94,7 +99,7 @@
|
|
94
99
|
background-color: var(--balloon-tooltip-color-bg, #292929);
|
95
100
|
border-color: var(--balloon-tooltip-color-border, transparent);
|
96
101
|
box-shadow: var(--balloon-tooltip-shadow, none);
|
97
|
-
color: var(--balloon-tooltip-color, #
|
102
|
+
color: var(--balloon-tooltip-color, #ffffff);
|
98
103
|
display: flex;
|
99
104
|
align-items: center;
|
100
105
|
height: 36px;
|
@@ -105,7 +110,7 @@
|
|
105
110
|
display: none;
|
106
111
|
}
|
107
112
|
.next-message-content {
|
108
|
-
color: var(--balloon-tooltip-color, #
|
113
|
+
color: var(--balloon-tooltip-color, #ffffff);
|
109
114
|
padding: 0;
|
110
115
|
}
|
111
116
|
.teamix-pro-table-full-screen-message-esc {
|
@@ -114,7 +119,7 @@
|
|
114
119
|
padding: 0 2px;
|
115
120
|
position: relative;
|
116
121
|
// box-shadow: inset 0 0 1px 1px var(--color-fill1-1);
|
117
|
-
border: 1px solid var(--balloon-tooltip-color, #
|
122
|
+
border: 1px solid var(--balloon-tooltip-color, #ffffff);
|
118
123
|
display: inline-block;
|
119
124
|
line-height: 1;
|
120
125
|
&-title {
|