@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.
Files changed (45) hide show
  1. package/dist/pro.css +1 -1
  2. package/dist/pro.js +1506 -334
  3. package/dist/pro.min.css +1 -1
  4. package/dist/pro.min.js +1 -1
  5. package/es/actions/dialog.js +10 -21
  6. package/es/actions/index.d.ts +10 -0
  7. package/es/actions/index.js +11 -16
  8. package/es/form/Filter/AdvancedFilter.js +1 -0
  9. package/es/form/ProForm/index.scss +37 -6
  10. package/es/form/global.scss +1 -0
  11. package/es/index.d.ts +1 -1
  12. package/es/index.js +1 -1
  13. package/es/table/components/Layout/index.js +21 -12
  14. package/es/table/components/Pagination/index.d.ts +1 -0
  15. package/es/table/components/Pagination/index.js +81 -9
  16. package/es/table/components/Pagination/index.scss +22 -0
  17. package/es/table/components/ToolBar/FilterColumnIcon.js +24 -3
  18. package/es/table/components/ToolBar/index.scss +9 -4
  19. package/es/table/index.js +72 -21
  20. package/es/table/index.scss +1 -1
  21. package/es/table/typing.d.ts +4 -2
  22. package/es/table/utils/columnRender.js +2 -1
  23. package/es/table/utils/index.d.ts +7 -0
  24. package/es/table/utils/index.js +38 -4
  25. package/lib/actions/dialog.js +9 -20
  26. package/lib/actions/index.d.ts +10 -0
  27. package/lib/actions/index.js +11 -16
  28. package/lib/form/Filter/AdvancedFilter.js +1 -0
  29. package/lib/form/ProForm/index.scss +37 -6
  30. package/lib/form/global.scss +1 -0
  31. package/lib/index.d.ts +1 -1
  32. package/lib/index.js +1 -1
  33. package/lib/table/components/Layout/index.js +20 -11
  34. package/lib/table/components/Pagination/index.d.ts +1 -0
  35. package/lib/table/components/Pagination/index.js +88 -9
  36. package/lib/table/components/Pagination/index.scss +22 -0
  37. package/lib/table/components/ToolBar/FilterColumnIcon.js +23 -2
  38. package/lib/table/components/ToolBar/index.scss +9 -4
  39. package/lib/table/index.js +71 -20
  40. package/lib/table/index.scss +1 -1
  41. package/lib/table/typing.d.ts +4 -2
  42. package/lib/table/utils/columnRender.js +2 -1
  43. package/lib/table/utils/index.d.ts +7 -0
  44. package/lib/table/utils/index.js +46 -4
  45. package/package.json +1 -1
@@ -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, goToLink, getMessage } from '@teamix/utils';
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 = 7;
166
+ _context.prev = 2;
178
167
  requestContext = Object.assign({
179
168
  footer: footerDescriptionValues
180
169
  }, context);
181
- _context.next = 11;
170
+ _context.next = 6;
182
171
  return doRequest(action, requestContext, history, footerDescriptionValues);
183
172
 
184
- case 11:
173
+ case 6:
185
174
  onFinish && onFinish();
186
175
  resolve(true);
187
- _context.next = 20;
176
+ _context.next = 15;
188
177
  break;
189
178
 
190
- case 15:
191
- _context.prev = 15;
192
- _context.t0 = _context["catch"](7);
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 20:
186
+ case 15:
198
187
  case "end":
199
188
  return _context.stop();
200
189
  }
201
190
  }
202
- }, _callee, null, [[7, 15]]);
191
+ }, _callee, null, [[2, 10]]);
203
192
  }));
204
193
 
205
194
  return function (_x) {
@@ -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;
@@ -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, moreText) {
291
- if (type === 'button') {
292
- return {
293
- label: moreText || getMessage('more')
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
@@ -53,6 +53,7 @@ var AdvancedFilter = /*#__PURE__*/memo(function (props) {
53
53
  props: {
54
54
  breakpoints: [480, 720, 990, 1200, Infinity],
55
55
  maxColumns: [1, 2, 3, 3, 4],
56
+ maxWidth: [480, 360, 330, 330, 300],
56
57
  columnGap: 16,
57
58
  rowGap: 12
58
59
  },
@@ -186,13 +186,13 @@
186
186
  }
187
187
 
188
188
  // 数组类组件添加按钮
189
- .#{$css-prefix}formily-array-base-addition {
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
- .#{$css-prefix}formily-array-items-item-inner {
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
- .#{$css-prefix}formily-array-collapse-item {
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
- .#{$css-prefix}formily-array-items {
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
- .#{$css-prefix}formily-array-base-remove {
273
- cursor: pointer;
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
 
@@ -1,6 +1,7 @@
1
1
  @import '~@alicloudfe/components/lib/common-var.scss';
2
2
 
3
3
  $form-item-cls: #{$css-prefix}formily-item;
4
+ $form-array: #{$css-prefix}formily-array;
4
5
  $teamix-pro-form: teamix-pro-form;
5
6
  $teamix-pro-field: teamix-pro-field;
6
7
 
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.20";
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.20';
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 = (dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.mode) || 'inline';
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
- var _dataFilter$schema2;
110
+ if (dataFilter) {
111
+ var _dataFilter$schema2;
111
112
 
112
- if (dataFilter && (dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema2 = dataFilter.schema) === null || _dataFilter$schema2 === void 0 ? void 0 : _dataFilter$schema2.length) >= 0) {
113
- return /*#__PURE__*/React.createElement("div", {
114
- className: cls('panel-filter'),
115
- style: {
116
- display: expand ? 'block' : 'none'
117
- }
118
- }, /*#__PURE__*/React.createElement(AdvancedFilter, _objectSpread({
119
- form: dataFilterForm
120
- }, dataFilter)));
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
 
@@ -1,3 +1,4 @@
1
1
  import { PaginationProps } from '@alicloudfe/components/types/pagination';
2
+ import './index.scss';
2
3
  declare const _default: (props: PaginationProps) => JSX.Element;
3
4
  export default _default;
@@ -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, 580, 680], ['mini', 'small', 'simple', 'normal']),
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), otherProps));
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
- type: "simple"
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
- type: "mini"
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: "pagination-wrapper"
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, #FFFFFF);
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, #FFFFFF);
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, #FFFFFF);
122
+ border: 1px solid var(--balloon-tooltip-color, #ffffff);
118
123
  display: inline-block;
119
124
  line-height: 1;
120
125
  &-title {