@teamix/pro 1.1.32 → 1.1.33

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 (41) hide show
  1. package/dist/pro.css +1 -1
  2. package/dist/pro.js +832 -418
  3. package/dist/pro.min.css +1 -1
  4. package/dist/pro.min.js +1 -1
  5. package/es/actions/index.js +13 -8
  6. package/es/form/Components/ProField/index.d.ts +4 -0
  7. package/es/form/ProForm/index.js +2 -2
  8. package/es/form/ProForm/useFormDisplayValues.d.ts +6 -0
  9. package/es/form/ProForm/useFormDisplayValues.js +65 -0
  10. package/es/form/SchemaForm/adapterType.js +2 -1
  11. package/es/form/SchemaForm/initializeProField.js +1 -0
  12. package/es/form/SchemaForm/initializeReactions.js +82 -6
  13. package/es/form/index.d.ts +3 -3
  14. package/es/form/index.js +3 -3
  15. package/es/form/typing.d.ts +2 -2
  16. package/es/form/utils.d.ts +31 -8
  17. package/es/form/utils.js +27 -44
  18. package/es/index.d.ts +1 -1
  19. package/es/index.js +1 -1
  20. package/es/table/components/Filter/index.js +6 -2
  21. package/es/table/typing.d.ts +8 -4
  22. package/es/table/utils/columnRender.js +38 -11
  23. package/lib/actions/index.js +12 -7
  24. package/lib/form/Components/ProField/index.d.ts +4 -0
  25. package/lib/form/ProForm/index.js +1 -1
  26. package/lib/form/ProForm/useFormDisplayValues.d.ts +6 -0
  27. package/lib/form/ProForm/useFormDisplayValues.js +74 -0
  28. package/lib/form/SchemaForm/adapterType.js +2 -1
  29. package/lib/form/SchemaForm/initializeProField.js +1 -0
  30. package/lib/form/SchemaForm/initializeReactions.js +87 -7
  31. package/lib/form/index.d.ts +3 -3
  32. package/lib/form/index.js +15 -8
  33. package/lib/form/typing.d.ts +2 -2
  34. package/lib/form/utils.d.ts +31 -8
  35. package/lib/form/utils.js +28 -54
  36. package/lib/index.d.ts +1 -1
  37. package/lib/index.js +1 -1
  38. package/lib/table/components/Filter/index.js +6 -2
  39. package/lib/table/typing.d.ts +8 -4
  40. package/lib/table/utils/columnRender.js +38 -11
  41. package/package.json +1 -1
@@ -106,9 +106,11 @@ var Filter = function Filter(props) {
106
106
 
107
107
  var renderSingle = function renderSingle() {
108
108
  return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref3) {
109
+ var _value$toString;
110
+
109
111
  var label = _ref3.label,
110
112
  value = _ref3.value;
111
- var valueStr = value.toString();
113
+ var valueStr = (_value$toString = value === null || value === void 0 ? void 0 : value.toString()) !== null && _value$toString !== void 0 ? _value$toString : '';
112
114
  return /*#__PURE__*/_react.default.createElement(RadioItem, {
113
115
  id: valueStr,
114
116
  checked: selected.includes(valueStr),
@@ -123,9 +125,11 @@ var Filter = function Filter(props) {
123
125
 
124
126
  var renderMultiple = function renderMultiple() {
125
127
  return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref4) {
128
+ var _value$toString2;
129
+
126
130
  var label = _ref4.label,
127
131
  value = _ref4.value;
128
- var valueStr = value.toString();
132
+ var valueStr = (_value$toString2 = value === null || value === void 0 ? void 0 : value.toString()) !== null && _value$toString2 !== void 0 ? _value$toString2 : '';
129
133
  return /*#__PURE__*/_react.default.createElement(CheckboxItem, {
130
134
  key: valueStr,
131
135
  checked: selected.includes(valueStr),
@@ -11,8 +11,10 @@ import { Method } from 'axios';
11
11
  import React from 'react';
12
12
  import type { Form as FormType } from '@formily/core';
13
13
  declare type IFieldRenderProps = keyof IProFieldFormatterProps;
14
+ /** 列record函数 */
15
+ declare type ProTableCellFunProp = (value: any, index: number, record: any) => any;
14
16
  declare type ITableCellRender = {
15
- [key in IFieldRenderProps]?: IProFieldFormatterProps[key] | ((...props: any) => void);
17
+ [key in IFieldRenderProps]?: IProFieldFormatterProps[key] | ProTableCellFunProp;
16
18
  } | ((...other: any) => React.ReactNode);
17
19
  declare type TDataService = {
18
20
  /** 翻页器总数 */
@@ -31,14 +33,14 @@ export declare type ProColumnProps = {
31
33
  tooltipIcon?: React.ReactNode;
32
34
  /** 对应 ProField 里面的 type */
33
35
  valueType?: IProFieldType;
34
- /** 是否默认隐藏列 */
36
+ /** 【列配置】是否默认隐藏列 */
35
37
  columnFilters?: boolean;
36
- /** 是否禁用隐藏列 */
38
+ /** 【列配置】是否禁用隐藏列 */
37
39
  columnFiltersDisabled?: boolean;
38
40
  /** 渲染单元格内容字段 */
39
41
  render?: ITableCellRender;
40
42
  /** 枚举值 */
41
- dataSource?: IProFieldOptionItem[];
43
+ dataSource?: IProFieldOptionItem[] | ProTableCellFunProp;
42
44
  /** 表头的过滤菜单项,当值为 true 时,自动使用 dataSource 生成 */
43
45
  filters?: boolean | ProTableColumnsFilterItemProps[];
44
46
  /** 表头的过滤菜单项过滤方式 single 单选 multiple 多选 */
@@ -49,6 +51,8 @@ export declare type ProColumnProps = {
49
51
  actionSchema?: ActionGroupProps;
50
52
  /** 指定列对应的字段,支持`a.b`形式的快速取值 和 数组取值 */
51
53
  dataIndex?: string | string[];
54
+ /** 指定 valueType 为日期时间格式时,可以格式化日期时间 */
55
+ format?: string;
52
56
  } & Omit<ColumnProps, 'filters' | 'dataIndex' | 'filtersMode'>;
53
57
  export declare type ProTableProps = {
54
58
  /** ProColums 定义,取代 Table 的 columns */
@@ -70,7 +70,8 @@ var renderCell = function renderCell(value, item, index, record, actionRef) {
70
70
  valueType = _item$valueType === void 0 ? 'text' : _item$valueType,
71
71
  render = item.render,
72
72
  actionSchema = item.actionSchema,
73
- dataIndex = item.dataIndex; // 如果没传 dataIndex,返回 null
73
+ dataIndex = item.dataIndex,
74
+ format = item.format; // 如果没传 dataIndex,返回 null
74
75
 
75
76
  if (!dataIndex) {
76
77
  value = null;
@@ -85,7 +86,8 @@ var renderCell = function renderCell(value, item, index, record, actionRef) {
85
86
  });
86
87
  }
87
88
 
88
- var newRender = null; // 如果 render 直接传函数
89
+ var newRender = null;
90
+ var newDataSource = null; // 如果 render 直接传函数
89
91
 
90
92
  if (typeof render === 'function') {
91
93
  newRender = function newRender() {
@@ -109,6 +111,29 @@ var renderCell = function renderCell(value, item, index, record, actionRef) {
109
111
  }, actionSchema), {}, {
110
112
  context: _objectSpread(_objectSpread({}, defaultContext), actionSchema.context)
111
113
  }));
114
+ } // dataSource可传函数
115
+
116
+
117
+ if (typeof item.dataSource === 'function') {
118
+ var _item$dataSource;
119
+
120
+ newDataSource = (_item$dataSource = item.dataSource) === null || _item$dataSource === void 0 ? void 0 : _item$dataSource.call(item, value, index, record);
121
+ } else {
122
+ var _item$dataSource2;
123
+
124
+ newDataSource = ((_item$dataSource2 = item.dataSource) !== null && _item$dataSource2 !== void 0 ? _item$dataSource2 : []).map(function (item) {
125
+ return Object.fromEntries(Object.entries(item).map(function (_ref) {
126
+ var _ref2 = _slicedToArray(_ref, 2),
127
+ k = _ref2[0],
128
+ v = _ref2[1];
129
+
130
+ return [k, (0, _utils.getTargetValue)(v, _objectSpread(_objectSpread({}, record), {}, {
131
+ record: record,
132
+ value: value,
133
+ index: index
134
+ }))];
135
+ }));
136
+ });
112
137
  } // 渲染 ProField
113
138
 
114
139
 
@@ -116,7 +141,8 @@ var renderCell = function renderCell(value, item, index, record, actionRef) {
116
141
  type: valueType || 'text',
117
142
  value: value,
118
143
  render: newRender,
119
- dataSource: item.dataSource
144
+ dataSource: newDataSource,
145
+ format: format
120
146
  });
121
147
  };
122
148
  /**
@@ -137,10 +163,10 @@ var processRenderFunction = function processRenderFunction() {
137
163
  var index = arguments.length > 2 ? arguments[2] : undefined;
138
164
  var record = arguments.length > 3 ? arguments[3] : undefined;
139
165
  var external = ['linkOnClick', 'link', 'value'];
140
- return Object.fromEntries(Object.entries(render).map(function (_ref) {
141
- var _ref2 = _slicedToArray(_ref, 2),
142
- k = _ref2[0],
143
- v = _ref2[1];
166
+ return Object.fromEntries(Object.entries(render).map(function (_ref3) {
167
+ var _ref4 = _slicedToArray(_ref3, 2),
168
+ k = _ref4[0],
169
+ v = _ref4[1];
144
170
 
145
171
  if (typeof v === 'function') {
146
172
  var _v;
@@ -175,10 +201,11 @@ var processBuriedPoint = function processBuriedPoint() {
175
201
  var value = arguments.length > 2 ? arguments[2] : undefined;
176
202
  var index = arguments.length > 3 ? arguments[3] : undefined;
177
203
  return Object.fromEntries([// 默认 ellipsis、descriptionEllipsis 为 true
178
- ['ellipsis', true], ['descriptionEllipsis', true]].concat(_toConsumableArray(Object.entries(render).map(function (_ref3) {
179
- var _ref4 = _slicedToArray(_ref3, 2),
180
- k = _ref4[0],
181
- v = _ref4[1];
204
+ // emptyText 默认为 '-'
205
+ ['ellipsis', true], ['descriptionEllipsis', true], ['emptyText', '-']].concat(_toConsumableArray(Object.entries(render).map(function (_ref5) {
206
+ var _ref6 = _slicedToArray(_ref5, 2),
207
+ k = _ref6[0],
208
+ v = _ref6[1];
182
209
 
183
210
  return [k, (0, _utils.getTargetValue)(v, _objectSpread(_objectSpread({}, record), {}, {
184
211
  record: record,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teamix/pro",
3
- "version": "1.1.32",
3
+ "version": "1.1.33",
4
4
  "description": "TeamixPro大包",
5
5
  "repository": "http://gitlab.alibaba-inc.com/teamix/pro",
6
6
  "author": "Velociraptor(迅猛龙)",