@teamix/pro 1.5.33 → 1.5.34

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 (59) hide show
  1. package/dist/pro.all.min.css +1 -1
  2. package/dist/pro.css +1 -1
  3. package/dist/pro.js +755 -208
  4. package/dist/pro.min.css +1 -1
  5. package/dist/pro.min.js +1 -1
  6. package/dist/pro.xconsole.min.css +1 -1
  7. package/es/form/Components/FormItem2/index.js +0 -1
  8. package/es/form/Components/SelectTable2/index.d.ts +97 -0
  9. package/es/form/Components/SelectTable2/index.js +39 -0
  10. package/es/form/ProForm/index.js +3 -1
  11. package/es/form/SchemaForm/adapterDecorator.js +1 -1
  12. package/es/form/SchemaForm/adapterType.js +2 -1
  13. package/es/global.scss +9 -0
  14. package/es/index.d.ts +1 -1
  15. package/es/index.js +1 -1
  16. package/es/table/components/Cell/index.d.ts +17 -0
  17. package/es/table/components/Cell/index.js +219 -0
  18. package/es/table/components/Layout/index.js +9 -7
  19. package/es/table/components/Pagination/index.d.ts +5 -4
  20. package/es/table/components/Pagination/index.js +5 -3
  21. package/es/table/components/TableContent/index.d.ts +7 -0
  22. package/es/table/components/TableContent/index.js +23 -0
  23. package/es/table/index.js +118 -126
  24. package/es/table/index.scss +1 -1
  25. package/es/table/typing.d.ts +9 -2
  26. package/es/table/utils/genAutoWidthColumns.d.ts +2 -2
  27. package/es/table/utils/genAutoWidthColumns.js +65 -16
  28. package/es/table/utils/genProColumnToColumn.js +39 -4
  29. package/es/table/utils/processColumns.d.ts +8 -0
  30. package/es/table/utils/processColumns.js +39 -0
  31. package/es/table/utils/useTableSelection.js +54 -5
  32. package/es/xconsole.scss +4 -4
  33. package/lib/form/Components/FormItem2/index.js +0 -1
  34. package/lib/form/Components/SelectTable2/index.d.ts +97 -0
  35. package/lib/form/Components/SelectTable2/index.js +47 -0
  36. package/lib/form/ProForm/index.js +3 -1
  37. package/lib/form/SchemaForm/adapterDecorator.js +1 -1
  38. package/lib/form/SchemaForm/adapterType.js +2 -1
  39. package/lib/global.scss +9 -0
  40. package/lib/index.d.ts +1 -1
  41. package/lib/index.js +1 -1
  42. package/lib/table/components/Cell/index.d.ts +17 -0
  43. package/lib/table/components/Cell/index.js +224 -0
  44. package/lib/table/components/Layout/index.js +8 -6
  45. package/lib/table/components/Pagination/index.d.ts +5 -4
  46. package/lib/table/components/Pagination/index.js +4 -2
  47. package/lib/table/components/TableContent/index.d.ts +7 -0
  48. package/lib/table/components/TableContent/index.js +34 -0
  49. package/lib/table/index.js +120 -128
  50. package/lib/table/index.scss +1 -1
  51. package/lib/table/typing.d.ts +9 -2
  52. package/lib/table/utils/genAutoWidthColumns.d.ts +2 -2
  53. package/lib/table/utils/genAutoWidthColumns.js +64 -15
  54. package/lib/table/utils/genProColumnToColumn.js +38 -3
  55. package/lib/table/utils/processColumns.d.ts +8 -0
  56. package/lib/table/utils/processColumns.js +46 -0
  57. package/lib/table/utils/useTableSelection.js +57 -5
  58. package/lib/xconsole.scss +4 -4
  59. package/package.json +1 -1
@@ -78,7 +78,6 @@ var ICON_MAP = {
78
78
  };
79
79
  export var BaseItem = function BaseItem(props) {
80
80
  var _cls, _cls3, _cls4, _cls5, _cls6;
81
- console.log('FormItem2');
82
81
  var children = props.children,
83
82
  others = _objectWithoutProperties(props, _excluded);
84
83
  var _useState3 = useState(false),
@@ -0,0 +1,97 @@
1
+ import React from 'react';
2
+ declare const SelectTable2: React.ForwardRefExoticComponent<Partial<{
3
+ field: any;
4
+ } & {
5
+ autoWidth?: boolean | undefined;
6
+ columns: import("../../../table").ProTableColumnProps[];
7
+ url?: string | undefined;
8
+ method?: import("axios").Method | undefined;
9
+ params?: {
10
+ [propName: string]: any;
11
+ } | undefined;
12
+ formatSort?: ((sort: object) => object) | undefined;
13
+ formatParams?: string | ((params: any) => any) | undefined;
14
+ formatResult?: string | {
15
+ total?: string | number | undefined;
16
+ data?: any;
17
+ } | ((res: any) => {
18
+ total?: string | number | undefined;
19
+ data?: any;
20
+ }) | undefined;
21
+ onFormatResult?: ((data: any[]) => void) | undefined;
22
+ requestWhenMount?: boolean | undefined;
23
+ onSuccess?: ((res: any) => void) | undefined;
24
+ onError?: ((error: Error) => void) | undefined;
25
+ requestConfig?: import("axios").AxiosRequestConfig | undefined;
26
+ pageKey?: string | undefined;
27
+ pageSizeKey?: string | undefined;
28
+ pageSize?: number | undefined;
29
+ pageSizeList?: any[] | undefined;
30
+ paginationProps?: import("@alifd/next/types/pagination").PaginationProps | undefined;
31
+ showPagination?: boolean | undefined;
32
+ responsivePaginationType?: import("../../../table").responsivePaginationType | undefined;
33
+ useRowSelection?: boolean | undefined;
34
+ onChangeRowSelection?: ((selectedRowKeys: string[]) => void) | undefined;
35
+ getRowSelection?: ((rowSelection: import("../../../table").innerRowSelectionType) => void) | undefined;
36
+ footerAction?: React.ReactNode | import("../../..").ProActionGroupProps;
37
+ footer?: React.ReactNode;
38
+ filterDebounce?: number | undefined;
39
+ actionRef?: React.MutableRefObject<import("../../../table").ProTableActionType | undefined> | undefined;
40
+ showSkeleton?: boolean | undefined;
41
+ skeletonSize?: number | undefined;
42
+ tableClassName?: string | undefined;
43
+ footerSuction?: boolean | Element | undefined;
44
+ autoRefresh?: boolean | ((dataSource: any[]) => number | boolean) | undefined;
45
+ autoRefreshProps?: {
46
+ dataSource?: {
47
+ label?: React.ReactNode;
48
+ value?: number | undefined;
49
+ }[] | undefined;
50
+ } | undefined;
51
+ customRequest?: ((params: any) => Promise<{
52
+ success: boolean;
53
+ data: any[];
54
+ total?: number | undefined;
55
+ }>) | undefined;
56
+ reserveSelectedRecords?: boolean | undefined;
57
+ defaultFilterParams?: {
58
+ [key: string]: any;
59
+ } | undefined;
60
+ disableSelectAll?: boolean | undefined;
61
+ context?: any;
62
+ fixedTableBody?: boolean | undefined;
63
+ 'data-teamix-spm'?: string | undefined;
64
+ switchCardView?: boolean | undefined;
65
+ cardViewProps?: import("../../../table").ProTableCardProps | undefined;
66
+ defaultView?: "table" | "card" | undefined;
67
+ emptyProps?: import("@teamix/pro-field").EmptyContentProps | undefined;
68
+ bindUrl?: boolean | undefined;
69
+ bindUrlProps?: import("../../../table").ProTableBindUrlProps | undefined;
70
+ autoRedirect?: boolean | undefined;
71
+ useMaxData?: boolean | undefined;
72
+ rowSelection?: ({
73
+ getProps?: ((record: any, index: number) => any) | undefined;
74
+ onChange?: ((selectedRowKeys: any[], records: any[]) => void) | undefined;
75
+ onSelect?: ((selected: boolean, record: any, records: any[]) => void) | undefined;
76
+ onSelectAll?: ((selected: boolean, records: any[]) => void) | undefined;
77
+ selectedRowKeys?: any[] | undefined;
78
+ selectedRecords?: any[] | undefined;
79
+ mode?: "multiple" | "single" | undefined;
80
+ titleProps?: (() => any) | undefined;
81
+ columnProps?: (() => any) | undefined;
82
+ titleAddons?: (() => any) | undefined;
83
+ defaultSelectedRowKeys?: any[] | undefined;
84
+ defaultSelectedRecords?: any[] | undefined;
85
+ } & {
86
+ getProps?: ((record: any, index: number) => void) | undefined;
87
+ onChange?: ((selectedRowKeys: any[], records: any[]) => void) | undefined;
88
+ onSelect?: ((selected: boolean, record: any, records: any[]) => void) | undefined;
89
+ onSelectAll?: ((selected: boolean, records: any[]) => void) | undefined;
90
+ selectedRowKeys?: any[] | undefined;
91
+ mode?: "multiple" | "single" | undefined;
92
+ titleProps?: (() => any) | undefined;
93
+ columnProps?: (() => any) | undefined;
94
+ titleAddons?: (() => any) | undefined;
95
+ }) | undefined;
96
+ } & Omit<import("@alifd/next/types/table").TableProps, "rowSelection" | "columns"> & import("../../../table").ProTableTopAreaProps> & React.RefAttributes<unknown>>;
97
+ export default SelectTable2;
@@ -0,0 +1,39 @@
1
+ var _excluded = ["columns", "field"];
2
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ 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; }
5
+ 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; }
6
+ 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; }
7
+ import React from 'react';
8
+ import { connect, mapProps, observer } from '@formily/react';
9
+ import ProTable from '../../../table';
10
+ var Component = observer(function (props) {
11
+ var _props$columns = props.columns,
12
+ columns = _props$columns === void 0 ? [] : _props$columns,
13
+ field = props.field,
14
+ others = _objectWithoutProperties(props, _excluded);
15
+ var onChange = function onChange(value) {
16
+ field.setValue(value);
17
+ };
18
+ return /*#__PURE__*/React.createElement(ProTable, _objectSpread({
19
+ toolBar: false,
20
+ showPagination: false,
21
+ columns: columns,
22
+ useRowSelection: true,
23
+ rowSelection: {
24
+ defaultSelectedRowKeys: field.value
25
+ },
26
+ onChangeRowSelection: onChange,
27
+ loading: field.loading,
28
+ showSkeleton: false,
29
+ dataSource: field.dataSource
30
+ }, others));
31
+ });
32
+ var SelectTable2 = connect(Component, mapProps(function (props, field) {
33
+ var dataSource = field.dataSource;
34
+ return _objectSpread(_objectSpread({}, props), {}, {
35
+ dataSource: dataSource,
36
+ field: field
37
+ });
38
+ }));
39
+ export default SelectTable2;
@@ -23,6 +23,7 @@ import useInitialRequest from './useInitialRequest';
23
23
  import validateLocale from '../locales/validate';
24
24
  import './index.scss';
25
25
  import FormItem2 from '../Components/FormItem2';
26
+ import SelectTable2 from '../Components/SelectTable2';
26
27
  registerValidateLocale(validateLocale);
27
28
  var formilyComponents = {
28
29
  FormLayout: FormLayout,
@@ -51,7 +52,8 @@ var formilyComponents = {
51
52
  Affix: Affix,
52
53
  LightFilter: LightFilter,
53
54
  Text: Text,
54
- FormItem2: FormItem2
55
+ FormItem2: FormItem2,
56
+ SelectTable2: SelectTable2
55
57
  };
56
58
  var ProForm = /*#__PURE__*/memo(function (_ref) {
57
59
  var outerForm = _ref.form,
@@ -13,7 +13,7 @@ export default (function (decorator, component) {
13
13
  if (decorator !== undefined) {
14
14
  return decorator;
15
15
  }
16
- if ([].concat(_toConsumableArray(Object.keys(fieldTypeMap)), ['Upload', 'SelectTable', 'ArrayCards', 'ArrayCollapse', 'ArrayTable', 'ArrayItems']).includes(component)) {
16
+ if ([].concat(_toConsumableArray(Object.keys(fieldTypeMap)), ['Upload', 'SelectTable', 'SelectTable2', 'ArrayCards', 'ArrayCollapse', 'ArrayTable', 'ArrayItems']).includes(component)) {
17
17
  return 'FormItem';
18
18
  }
19
19
  return decorator;
@@ -48,7 +48,8 @@ var typeMap = (_typeMap = {
48
48
  Range: 'string',
49
49
  Search: 'array',
50
50
  SelectGroup: 'array',
51
- SelectTable: 'array'
51
+ SelectTable: 'array',
52
+ SelectTable2: 'array'
52
53
  }, _defineProperty(_typeMap, 'SelectTable.Column', 'string'), _defineProperty(_typeMap, "ArrayCollapse", 'array'), _defineProperty(_typeMap, "ArrayCards", 'array'), _defineProperty(_typeMap, "ArrayTable", 'array'), _defineProperty(_typeMap, "ArrayItems", 'array'), _defineProperty(_typeMap, 'Editable.Popover', 'object'), _defineProperty(_typeMap, 'Editable.Dialog', 'object'), _defineProperty(_typeMap, 'Editable.Drawer', 'object'), _typeMap);
53
54
  export default (function (type, component) {
54
55
  return type || typeMap[component] || 'void';
package/es/global.scss CHANGED
@@ -45,3 +45,12 @@ button.next-btn.next-medium.next-btn-normal {
45
45
  .next-tag.next-tag.next-tag.next-tag-closable.next-tag-level-normal.next-tag-closable {
46
46
  transition: color 0s;
47
47
  }
48
+
49
+ // 配置dialog弹窗内容可以换行
50
+ .next-message-content {
51
+ white-space: pre-wrap;
52
+ }
53
+ // table 锁列层级变高
54
+ .next-table-fix-left, .next-table-fix-right {
55
+ z-index: 5;
56
+ }
package/es/index.d.ts CHANGED
@@ -30,5 +30,5 @@ export * from './sidebar';
30
30
  export * from './utils';
31
31
  export * from './timeline';
32
32
  export * from './image';
33
- declare const version = "1.5.33";
33
+ declare const version = "1.5.34";
34
34
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, TeamixIcon, ProImage, hooks, nocode, templates, utils, };
package/es/index.js CHANGED
@@ -37,7 +37,7 @@ export * from './sidebar';
37
37
  export * from './utils';
38
38
  export * from './timeline';
39
39
  export * from './image';
40
- var version = '1.5.33';
40
+ var version = '1.5.34';
41
41
  // By TeamixTest
42
42
  window.postMessage({
43
43
  source: 'teamix-test-devtools',
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 渲染列的逻辑函数
3
+ */
4
+ import React from 'react';
5
+ import { ProTableColumnProps, ProTableActionType } from '../../typing';
6
+ interface ICellProps {
7
+ value: any;
8
+ item: ProTableColumnProps;
9
+ index: number;
10
+ record: any;
11
+ actionRef: React.MutableRefObject<ProTableActionType | undefined>;
12
+ /** 接收外部比如 dialog-table 传过来的 context,用于弹窗关闭等 */
13
+ context?: any;
14
+ dataTeamixSpm?: string;
15
+ }
16
+ declare const _default: React.MemoExoticComponent<(props: ICellProps) => JSX.Element>;
17
+ export default _default;
@@ -0,0 +1,219 @@
1
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
4
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
5
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
6
+ 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."); }
7
+ 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); }
8
+ 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; }
9
+ 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; }
10
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
12
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
13
+ 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; }
14
+ /**
15
+ * 渲染列的逻辑函数
16
+ */
17
+ import React from 'react';
18
+ import { getTargetValue } from '@teamix/utils';
19
+ import { ProActionGroup } from '../../../actions';
20
+ import ProField from '../../../field';
21
+ /**
22
+ * 负责单元格的具体渲染
23
+ */
24
+ var Cell = function Cell(props) {
25
+ var _actionSchema$actions;
26
+ var recordValue = props.value,
27
+ record = props.record,
28
+ index = props.index,
29
+ item = props.item,
30
+ actionRef = props.actionRef,
31
+ context = props.context,
32
+ dataTeamixSpm = props.dataTeamixSpm;
33
+ var _item$valueType = item.valueType,
34
+ valueType = _item$valueType === void 0 ? 'text' : _item$valueType,
35
+ render = item.render,
36
+ actionSchema = item.actionSchema,
37
+ dataIndex = item.dataIndex,
38
+ format = item.format;
39
+ var value = recordValue;
40
+ // return JSON.stringify(value)
41
+ // 如果没传 dataIndex,返回 null
42
+ if (!dataIndex) {
43
+ value = null;
44
+ }
45
+ // 处理 dataIndex 为数组的情况
46
+ if (Array.isArray(dataIndex)) {
47
+ value = dataIndex.map(function (item) {
48
+ return getTargetValue("{{".concat(item, "}}"), _objectSpread(_objectSpread({}, record), {}, {
49
+ record: record
50
+ }));
51
+ });
52
+ }
53
+ var newRender = null;
54
+ var newDataSource = null;
55
+ var itemProps = item.props;
56
+ // 如果 render 直接传函数
57
+ if (typeof render === 'function') {
58
+ newRender = function newRender() {
59
+ return render === null || render === void 0 ? void 0 : render(value, index, record);
60
+ };
61
+ } else {
62
+ newRender = processBuriedPoint(processRenderFunction(render, value, index, record), record, value, index, context);
63
+ if (valueType === 'selectGroup') {
64
+ newRender = _objectSpread(_objectSpread({
65
+ maxShowNumber: 'auto',
66
+ foldText: 'more',
67
+ editOnClick: function editOnClick() {},
68
+ edit: true
69
+ }, newRender), {}, {
70
+ ellipsis: false
71
+ });
72
+ itemProps = _objectSpread({
73
+ valueAlias: {
74
+ value: 'TagValue',
75
+ key: 'TagKey'
76
+ }
77
+ }, itemProps);
78
+ }
79
+ if ((render === null || render === void 0 ? void 0 : render.type) === 'step') {
80
+ newRender = _objectSpread(_objectSpread({}, newRender), {}, {
81
+ ellipsis: false
82
+ });
83
+ }
84
+ }
85
+ // 渲染操作组
86
+ if (actionSchema && ((_actionSchema$actions = actionSchema.actions) === null || _actionSchema$actions === void 0 ? void 0 : _actionSchema$actions.length)) {
87
+ // 默认 context
88
+ var defaultContext = _objectSpread({
89
+ value: value,
90
+ index: index,
91
+ record: record,
92
+ action: actionRef.current
93
+ }, context);
94
+ return /*#__PURE__*/React.createElement(ProActionGroup, _objectSpread(_objectSpread({
95
+ type: "text"
96
+ }, actionSchema), {}, {
97
+ context: _objectSpread(_objectSpread({}, defaultContext), actionSchema.context),
98
+ "data-teamix-spm": dataTeamixSpm ? "".concat(dataTeamixSpm, "-columnAction") : undefined
99
+ }));
100
+ }
101
+ // dataSource可传函数
102
+ if (typeof item.dataSource === 'function') {
103
+ var _item$dataSource;
104
+ newDataSource = (_item$dataSource = item.dataSource) === null || _item$dataSource === void 0 ? void 0 : _item$dataSource.call(item, value, index, record);
105
+ } else {
106
+ var _item$dataSource2;
107
+ newDataSource = ((_item$dataSource2 = item.dataSource) !== null && _item$dataSource2 !== void 0 ? _item$dataSource2 : []).map(function (item) {
108
+ return Object.fromEntries(Object.entries(item).map(function (_ref) {
109
+ var _ref2 = _slicedToArray(_ref, 2),
110
+ k = _ref2[0],
111
+ v = _ref2[1];
112
+ return [k, getTargetValue(v, _objectSpread(_objectSpread({}, record), {}, {
113
+ record: record,
114
+ value: value,
115
+ index: index
116
+ }))];
117
+ }));
118
+ });
119
+ }
120
+ // 渲染 ProField
121
+ return /*#__PURE__*/React.createElement(ProField, _objectSpread({
122
+ type: valueType || 'text',
123
+ value: value,
124
+ render: newRender,
125
+ dataSource: newDataSource,
126
+ format: format,
127
+ // 预留 context 位置
128
+ context: context
129
+ }, itemProps));
130
+ };
131
+ /**
132
+ * 处理 render 配置项是函数的情况
133
+ * @param render ProFieldRender
134
+ * @param value table cell value
135
+ * @param index table cell index
136
+ * @param record table cell record
137
+ * @returns
138
+ */
139
+ var processRenderFunction = function processRenderFunction() {
140
+ var render = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
141
+ var value = arguments.length > 1 ? arguments[1] : undefined;
142
+ var index = arguments.length > 2 ? arguments[2] : undefined;
143
+ var record = arguments.length > 3 ? arguments[3] : undefined;
144
+ // 当 ProField render 类型为 function 时。需要表格预先处理以塞入 record
145
+ var external = ['linkOnClick', 'link', 'value', 'renderEdit', 'descriptionRenderEdit', 'editPopConfirmProps', 'descriptionEditPopConfirmProps', 'editOnClick', 'descriptionEditOnClick', 'extra', 'prefixExtra'];
146
+ return Object.fromEntries(Object.entries(render).map(function (_ref3) {
147
+ var _ref4 = _slicedToArray(_ref3, 2),
148
+ k = _ref4[0],
149
+ v = _ref4[1];
150
+ if (typeof v === 'function') {
151
+ var _v;
152
+ if (external.includes(k)) {
153
+ return [k, function () {
154
+ for (var _len = arguments.length, others = new Array(_len), _key = 0; _key < _len; _key++) {
155
+ others[_key] = arguments[_key];
156
+ }
157
+ return v === null || v === void 0 ? void 0 : v.apply(void 0, [value, index, record].concat(others));
158
+ }];
159
+ }
160
+ return [k, (_v = v === null || v === void 0 ? void 0 : v(value, index, record)) !== null && _v !== void 0 ? _v : ''];
161
+ }
162
+ return [k, v];
163
+ }));
164
+ };
165
+ /**
166
+ * 处理 render 数据,取出 {{xxx}} 匹配值
167
+ * @param render ProFieldRender
168
+ * @param record table cell record
169
+ * @returns
170
+ */
171
+ var processBuriedPoint = function processBuriedPoint() {
172
+ var render = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
173
+ var record = arguments.length > 1 ? arguments[1] : undefined;
174
+ var value = arguments.length > 2 ? arguments[2] : undefined;
175
+ var index = arguments.length > 3 ? arguments[3] : undefined;
176
+ var context = arguments.length > 4 ? arguments[4] : undefined;
177
+ return Object.fromEntries([
178
+ // 默认 ellipsis、descriptionEllipsis 为 true
179
+ // emptyText 默认为 '-'
180
+ ['ellipsis', true], ['descriptionEllipsis', true], ['emptyText', '-']].concat(_toConsumableArray(Object.entries(render).map(function (_ref5) {
181
+ var _ref6 = _slicedToArray(_ref5, 2),
182
+ k = _ref6[0],
183
+ v = _ref6[1];
184
+ return [k, getTargetValue(v, _objectSpread(_objectSpread({}, record), {}, {
185
+ record: record,
186
+ value: value,
187
+ index: index
188
+ }, context))];
189
+ }))));
190
+ };
191
+ var equalColumns = function equalColumns(prevProps, nextProps) {
192
+ var preValue = prevProps.value;
193
+ var nextValue = nextProps.value;
194
+ // columns 强制更新参数
195
+ if (nextProps === null || nextProps === void 0 ? void 0 : nextProps.forcedUpdate) {
196
+ return false;
197
+ }
198
+ // 操作列的时候强制刷新
199
+ if (preValue === false && nextValue === false) {
200
+ return false;
201
+ }
202
+ if (preValue === nextValue) {
203
+ return true;
204
+ }
205
+ // 针对 value 是数组类型的判断 value 是否和原来相等,相等则不渲染
206
+ if (Array.isArray(nextValue) && Array.isArray(preValue)) {
207
+ var nextValueStr = nextValue.map(function (item) {
208
+ return item.TagValue;
209
+ });
210
+ var preValueStr = preValue.map(function (item) {
211
+ return item.TagValue;
212
+ });
213
+ if (nextValueStr.toString() === preValueStr.toString()) {
214
+ return true;
215
+ }
216
+ }
217
+ return false;
218
+ };
219
+ export default /*#__PURE__*/React.memo(Cell, equalColumns);
@@ -5,7 +5,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
5
5
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
6
6
  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; }
7
7
  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; }
8
- import React, { isValidElement } from 'react';
8
+ import React, { isValidElement, useMemo } from 'react';
9
9
  import { usePrefixCls } from '@teamix/utils';
10
10
  import { Header } from '../../../field';
11
11
  import { ProActionGroup } from '../../../actions';
@@ -66,7 +66,7 @@ var Layout = function Layout(props) {
66
66
  }, otherProps)));
67
67
  };
68
68
  // 渲染新版 QueryFilter
69
- var renderQueryFilter = function renderQueryFilter() {
69
+ var renderQueryFilter = useMemo(function () {
70
70
  var _dataFilter$schema;
71
71
  if (dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema = dataFilter.schema) === null || _dataFilter$schema === void 0 ? void 0 : _dataFilter$schema.length) {
72
72
  var _dataFilter$schema2;
@@ -128,7 +128,9 @@ var Layout = function Layout(props) {
128
128
  }, afterDataFilter) : null
129
129
  }));
130
130
  }
131
- };
131
+ }, [
132
+ //todo: 重复render 问题都在这里
133
+ dataFilter, mainAction, dataFilterFormRef, afterDataFilter]);
132
134
  // 区域组合渲染
133
135
  var renderLayout = function renderLayout() {
134
136
  if (header && mainAction) {
@@ -142,7 +144,7 @@ var Layout = function Layout(props) {
142
144
  actionRef: actionRef,
143
145
  quickAction: extra,
144
146
  rowSelection: rowSelection
145
- }))), renderQueryFilter());
147
+ }))), renderQueryFilter);
146
148
  } else if (header && !mainAction) {
147
149
  var _dataFilter$schema3, _dataFilter$schema4;
148
150
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
@@ -155,14 +157,14 @@ var Layout = function Layout(props) {
155
157
  actionRef: actionRef,
156
158
  quickAction: extra,
157
159
  rowSelection: rowSelection
158
- }), !(dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema3 = dataFilter.schema) === null || _dataFilter$schema3 === void 0 ? void 0 : _dataFilter$schema3.length) && renderQueryFilter())), (dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema4 = dataFilter.schema) === null || _dataFilter$schema4 === void 0 ? void 0 : _dataFilter$schema4.length) && renderQueryFilter());
160
+ }), !(dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema3 = dataFilter.schema) === null || _dataFilter$schema3 === void 0 ? void 0 : _dataFilter$schema3.length) && renderQueryFilter)), (dataFilter === null || dataFilter === void 0 ? void 0 : (_dataFilter$schema4 = dataFilter.schema) === null || _dataFilter$schema4 === void 0 ? void 0 : _dataFilter$schema4.length) && renderQueryFilter);
159
161
  } else if (!header && mainAction) {
160
- return /*#__PURE__*/React.createElement(React.Fragment, null, renderQueryFilter());
162
+ return /*#__PURE__*/React.createElement(React.Fragment, null, renderQueryFilter);
161
163
  } else if (!header && !mainAction) {
162
164
  if (!dataFilterFormRef && !extra) {
163
165
  return null;
164
166
  }
165
- return /*#__PURE__*/React.createElement(React.Fragment, null, renderQueryFilter());
167
+ return /*#__PURE__*/React.createElement(React.Fragment, null, renderQueryFilter);
166
168
  }
167
169
  };
168
170
  if ((dataFilter === null || dataFilter === void 0 ? void 0 : dataFilter.schema) || mainAction || header || extra || toolBar !== false) {
@@ -1,8 +1,9 @@
1
+ import React from 'react';
1
2
  import { PaginationProps } from '@alicloudfe/components/types/pagination';
2
3
  import { responsivePaginationType } from '../../typing';
3
4
  import './index.scss';
4
- declare const _default: (props: PaginationProps & {
5
- responsivePaginationType?: responsivePaginationType;
6
- useMaxData?: boolean;
7
- }) => JSX.Element;
5
+ declare const _default: React.MemoExoticComponent<(props: PaginationProps & {
6
+ responsivePaginationType?: responsivePaginationType | undefined;
7
+ useMaxData?: boolean | undefined;
8
+ }) => JSX.Element>;
8
9
  export default _default;
@@ -16,13 +16,14 @@ import { Pagination, Balloon, Select, Button, Input, Icon } from '@alicloudfe/co
16
16
  import { getMessage, cls, usePrefixCls } from '@teamix/utils';
17
17
  import { useResponsiveProps } from '@teamix/hooks';
18
18
  import './index.scss';
19
- export default (function (props) {
19
+ var ProPagination = function ProPagination(props) {
20
20
  var className = props.className,
21
21
  propsOnChange = props.onChange,
22
22
  total = props.total,
23
23
  pageSize = props.pageSize,
24
24
  current = props.current,
25
- pageSizeList = props.pageSizeList,
25
+ _props$pageSizeList = props.pageSizeList,
26
+ pageSizeList = _props$pageSizeList === void 0 ? [5, 10, 20, 50, 100] : _props$pageSizeList,
26
27
  pageSizeSelector = props.pageSizeSelector,
27
28
  onPageSizeChange = props.onPageSizeChange,
28
29
  responsivePaginationType = props.responsivePaginationType,
@@ -241,4 +242,5 @@ export default (function (props) {
241
242
  className: prefixCls('wrapper')
242
243
  }, renderPagination())
243
244
  );
244
- });
245
+ };
246
+ export default /*#__PURE__*/React.memo(ProPagination);
@@ -0,0 +1,7 @@
1
+ import { EmptyContentProps } from '@teamix/pro-field';
2
+ import { TableProps } from '@alicloudfe/components/types/table';
3
+ export interface ITableContentProps extends TableProps {
4
+ emptyProps?: EmptyContentProps;
5
+ }
6
+ declare const TableContent: (props: ITableContentProps) => JSX.Element;
7
+ export default TableContent;
@@ -0,0 +1,23 @@
1
+ var _excluded = ["emptyProps"];
2
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ 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; }
5
+ 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; }
6
+ 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; }
7
+ import React, { useMemo } from 'react';
8
+ import { Table } from '@alicloudfe/components';
9
+ import { EmptyContent } from '@teamix/pro-field';
10
+ import getTableSortIcons from '../../utils/getTableSortIcons';
11
+ var TableContent = function TableContent(props) {
12
+ var emptyProps = props.emptyProps,
13
+ rest = _objectWithoutProperties(props, _excluded);
14
+ var memorizedEmptyContent = useMemo(function () {
15
+ return /*#__PURE__*/React.createElement(EmptyContent, _objectSpread({}, emptyProps));
16
+ }, [emptyProps]);
17
+ var memorizedGetTableSortIcons = useMemo(getTableSortIcons, []);
18
+ return /*#__PURE__*/React.createElement(Table.StickyLock, _objectSpread({
19
+ sortIcons: memorizedGetTableSortIcons,
20
+ emptyContent: memorizedEmptyContent
21
+ }, rest));
22
+ };
23
+ export default TableContent;