@teamix/pro 1.3.13 → 1.3.14
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 +632 -185
- package/dist/pro.min.css +1 -1
- package/dist/pro.min.js +1 -1
- package/es/actions/index.js +40 -4
- package/es/form/Filter/LightFilter.js +7 -5
- package/es/form/Filter/index.js +2 -2
- package/es/form/ProForm/index.d.ts +2 -3
- package/es/form/ProForm/index.js +47 -8
- package/es/form/ProForm/index.scss +7 -0
- package/es/form/ProForm/useFieldSchema.d.ts +7 -0
- package/es/form/ProForm/useFieldSchema.js +88 -0
- package/es/form/SchemaForm/index.js +2 -38
- package/es/form/SchemaForm/initializeSelectTable.js +80 -6
- package/es/form/typing.d.ts +4 -1
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/table/components/ToolBar/Fullscreen.d.ts +1 -1
- package/es/table/utils/pureColumnRender.d.ts +9 -0
- package/es/table/utils/pureColumnRender.js +201 -0
- package/es/table/utils/pureGenProColumnToColumn.d.ts +7 -0
- package/es/table/utils/pureGenProColumnToColumn.js +36 -0
- package/es/timeline/ProTimeLineItem/index.js +8 -5
- package/es/timeline/typing.d.ts +5 -0
- package/lib/actions/index.js +40 -4
- package/lib/form/Filter/LightFilter.js +7 -6
- package/lib/form/Filter/index.js +2 -2
- package/lib/form/ProForm/index.d.ts +2 -3
- package/lib/form/ProForm/index.js +53 -7
- package/lib/form/ProForm/index.scss +7 -0
- package/lib/form/ProForm/useFieldSchema.d.ts +7 -0
- package/lib/form/ProForm/useFieldSchema.js +97 -0
- package/lib/form/SchemaForm/index.js +2 -45
- package/lib/form/SchemaForm/initializeSelectTable.js +85 -6
- package/lib/form/typing.d.ts +4 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/table/components/ToolBar/Fullscreen.d.ts +1 -1
- package/lib/table/utils/pureColumnRender.d.ts +9 -0
- package/lib/table/utils/pureColumnRender.js +215 -0
- package/lib/table/utils/pureGenProColumnToColumn.d.ts +7 -0
- package/lib/table/utils/pureGenProColumnToColumn.js +43 -0
- package/lib/timeline/ProTimeLineItem/index.js +8 -5
- package/lib/timeline/typing.d.ts +5 -0
- package/package.json +1 -1
@@ -0,0 +1,201 @@
|
|
1
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
2
|
+
|
3
|
+
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."); }
|
4
|
+
|
5
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
6
|
+
|
7
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
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
|
+
|
21
|
+
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; }
|
22
|
+
|
23
|
+
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; }
|
24
|
+
|
25
|
+
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; }
|
26
|
+
|
27
|
+
/**
|
28
|
+
* 渲染列的逻辑函数,用于非 ProTable 比如 selectTable
|
29
|
+
*/
|
30
|
+
import React from 'react';
|
31
|
+
import { getTargetValue, LabelIconTip } from '@teamix/utils';
|
32
|
+
import ProField from '../../field';
|
33
|
+
/**
|
34
|
+
* 增加了 icon 的功能 render title
|
35
|
+
*/
|
36
|
+
|
37
|
+
export var renderColumnsTitle = function renderColumnsTitle(item) {
|
38
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(LabelIconTip, {
|
39
|
+
label: item.title,
|
40
|
+
tooltip: item.tooltip,
|
41
|
+
icon: item.tooltipIcon
|
42
|
+
}));
|
43
|
+
};
|
44
|
+
/**
|
45
|
+
* 负责单元格的具体渲染
|
46
|
+
*/
|
47
|
+
|
48
|
+
export var renderCell = function renderCell(value, item, index, record) {
|
49
|
+
var _item$valueType = item.valueType,
|
50
|
+
valueType = _item$valueType === void 0 ? 'text' : _item$valueType,
|
51
|
+
render = item.render,
|
52
|
+
dataIndex = item.dataIndex,
|
53
|
+
format = item.format; // 如果没传 dataIndex,返回 null
|
54
|
+
|
55
|
+
if (!dataIndex) {
|
56
|
+
value = null;
|
57
|
+
} // 处理 dataIndex 为数组的情况
|
58
|
+
|
59
|
+
|
60
|
+
if (Array.isArray(dataIndex)) {
|
61
|
+
value = dataIndex.map(function (item) {
|
62
|
+
return getTargetValue("{{".concat(item, "}}"), _objectSpread(_objectSpread({}, record), {}, {
|
63
|
+
record: record
|
64
|
+
}));
|
65
|
+
});
|
66
|
+
}
|
67
|
+
|
68
|
+
var newRender = null;
|
69
|
+
var newDataSource = null;
|
70
|
+
var props = item.props; // 如果 render 直接传函数
|
71
|
+
|
72
|
+
if (typeof render === 'function') {
|
73
|
+
newRender = function newRender() {
|
74
|
+
return render === null || render === void 0 ? void 0 : render(value, index, record);
|
75
|
+
};
|
76
|
+
} else {
|
77
|
+
newRender = processBuriedPoint(processRenderFunction(render, value, index, record), record, value, index);
|
78
|
+
|
79
|
+
if (valueType === 'selectGroup') {
|
80
|
+
newRender = _objectSpread(_objectSpread({
|
81
|
+
maxShowNumber: 'auto',
|
82
|
+
foldText: 'more',
|
83
|
+
editOnClick: function editOnClick() {},
|
84
|
+
edit: true
|
85
|
+
}, newRender), {}, {
|
86
|
+
ellipsis: false
|
87
|
+
});
|
88
|
+
props = _objectSpread({
|
89
|
+
valueAlias: {
|
90
|
+
value: 'TagValue',
|
91
|
+
key: 'TagKey'
|
92
|
+
}
|
93
|
+
}, props);
|
94
|
+
}
|
95
|
+
|
96
|
+
if ((render === null || render === void 0 ? void 0 : render.type) === 'step') {
|
97
|
+
newRender = _objectSpread(_objectSpread({}, newRender), {}, {
|
98
|
+
ellipsis: false
|
99
|
+
});
|
100
|
+
}
|
101
|
+
} // dataSource可传函数
|
102
|
+
|
103
|
+
|
104
|
+
if (typeof item.dataSource === 'function') {
|
105
|
+
var _item$dataSource;
|
106
|
+
|
107
|
+
newDataSource = (_item$dataSource = item.dataSource) === null || _item$dataSource === void 0 ? void 0 : _item$dataSource.call(item, value, index, record);
|
108
|
+
} else {
|
109
|
+
var _item$dataSource2;
|
110
|
+
|
111
|
+
newDataSource = ((_item$dataSource2 = item.dataSource) !== null && _item$dataSource2 !== void 0 ? _item$dataSource2 : []).map(function (item) {
|
112
|
+
return Object.fromEntries(Object.entries(item).map(function (_ref) {
|
113
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
114
|
+
k = _ref2[0],
|
115
|
+
v = _ref2[1];
|
116
|
+
|
117
|
+
return [k, getTargetValue(v, _objectSpread(_objectSpread({}, record), {}, {
|
118
|
+
record: record,
|
119
|
+
value: value,
|
120
|
+
index: index
|
121
|
+
}))];
|
122
|
+
}));
|
123
|
+
});
|
124
|
+
} // 渲染 ProField
|
125
|
+
|
126
|
+
|
127
|
+
return /*#__PURE__*/React.createElement(ProField, _objectSpread({
|
128
|
+
type: valueType || 'text',
|
129
|
+
value: value,
|
130
|
+
render: newRender,
|
131
|
+
dataSource: newDataSource,
|
132
|
+
format: format
|
133
|
+
}, props));
|
134
|
+
};
|
135
|
+
/**
|
136
|
+
* 处理 render 配置项是函数的情况
|
137
|
+
* @param render ProFieldRender
|
138
|
+
* @param value table cell value
|
139
|
+
* @param index table cell index
|
140
|
+
* @param record table cell record
|
141
|
+
* @returns
|
142
|
+
*/
|
143
|
+
|
144
|
+
var processRenderFunction = function processRenderFunction() {
|
145
|
+
var render = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
146
|
+
var value = arguments.length > 1 ? arguments[1] : undefined;
|
147
|
+
var index = arguments.length > 2 ? arguments[2] : undefined;
|
148
|
+
var record = arguments.length > 3 ? arguments[3] : undefined;
|
149
|
+
// 当 ProField render 类型为 function 时。需要表格预先处理以塞入 record
|
150
|
+
var external = ['linkOnClick', 'link', 'value', 'renderEdit', 'descriptionRenderEdit', 'editPopConfirmProps', 'descriptionEditPopConfirmProps', 'editOnClick', 'descriptionEditOnClick', 'extra', 'prefixExtra'];
|
151
|
+
return Object.fromEntries(Object.entries(render).map(function (_ref3) {
|
152
|
+
var _ref4 = _slicedToArray(_ref3, 2),
|
153
|
+
k = _ref4[0],
|
154
|
+
v = _ref4[1];
|
155
|
+
|
156
|
+
if (typeof v === 'function') {
|
157
|
+
var _v;
|
158
|
+
|
159
|
+
if (external.includes(k)) {
|
160
|
+
return [k, function () {
|
161
|
+
for (var _len = arguments.length, others = new Array(_len), _key = 0; _key < _len; _key++) {
|
162
|
+
others[_key] = arguments[_key];
|
163
|
+
}
|
164
|
+
|
165
|
+
return v === null || v === void 0 ? void 0 : v.apply(void 0, [value, index, record].concat(others));
|
166
|
+
}];
|
167
|
+
}
|
168
|
+
|
169
|
+
return [k, (_v = v === null || v === void 0 ? void 0 : v(value, index, record)) !== null && _v !== void 0 ? _v : ''];
|
170
|
+
}
|
171
|
+
|
172
|
+
return [k, v];
|
173
|
+
}));
|
174
|
+
};
|
175
|
+
/**
|
176
|
+
* 处理 render 数据,取出 {{xxx}} 匹配值
|
177
|
+
* @param render ProFieldRender
|
178
|
+
* @param record table cell record
|
179
|
+
* @returns
|
180
|
+
*/
|
181
|
+
|
182
|
+
|
183
|
+
var processBuriedPoint = function processBuriedPoint() {
|
184
|
+
var render = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
185
|
+
var record = arguments.length > 1 ? arguments[1] : undefined;
|
186
|
+
var value = arguments.length > 2 ? arguments[2] : undefined;
|
187
|
+
var index = arguments.length > 3 ? arguments[3] : undefined;
|
188
|
+
return Object.fromEntries([// 默认 ellipsis、descriptionEllipsis 为 true
|
189
|
+
// emptyText 默认为 '-'
|
190
|
+
['ellipsis', true], ['descriptionEllipsis', true], ['emptyText', '-']].concat(_toConsumableArray(Object.entries(render).map(function (_ref5) {
|
191
|
+
var _ref6 = _slicedToArray(_ref5, 2),
|
192
|
+
k = _ref6[0],
|
193
|
+
v = _ref6[1];
|
194
|
+
|
195
|
+
return [k, getTargetValue(v, _objectSpread(_objectSpread({}, record), {}, {
|
196
|
+
record: record,
|
197
|
+
value: value,
|
198
|
+
index: index
|
199
|
+
}))];
|
200
|
+
}))));
|
201
|
+
};
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { ProTableColumnProps } from '../typing';
|
2
|
+
import { ColumnProps } from '@alicloudfe/components/types/table';
|
3
|
+
/**
|
4
|
+
* ProColumn => Column,去掉操作列,过滤器相关逻辑
|
5
|
+
* 用于非 ProTable 比如 selectTable
|
6
|
+
*/
|
7
|
+
export default function genProColumnToColumn(columns: ProTableColumnProps[]): ColumnProps[];
|
@@ -0,0 +1,36 @@
|
|
1
|
+
var _excluded = ["filters", "dataIndex"];
|
2
|
+
|
3
|
+
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; }
|
4
|
+
|
5
|
+
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; }
|
6
|
+
|
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
|
+
|
9
|
+
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
|
+
|
11
|
+
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
|
+
|
13
|
+
import { renderColumnsTitle, renderCell } from './pureColumnRender';
|
14
|
+
/**
|
15
|
+
* ProColumn => Column,去掉操作列,过滤器相关逻辑
|
16
|
+
* 用于非 ProTable 比如 selectTable
|
17
|
+
*/
|
18
|
+
|
19
|
+
export default function genProColumnToColumn(columns) {
|
20
|
+
return columns.map(function (columnProps) {
|
21
|
+
var filters = columnProps.filters,
|
22
|
+
dataIndex = columnProps.dataIndex,
|
23
|
+
others = _objectWithoutProperties(columnProps, _excluded);
|
24
|
+
|
25
|
+
return _objectSpread(_objectSpread({
|
26
|
+
// 金钱样式默认右对齐
|
27
|
+
align: columnProps.valueType === 'money' ? 'right' : 'left'
|
28
|
+
}, others), {}, {
|
29
|
+
dataIndex: dataIndex === null || dataIndex === void 0 ? void 0 : dataIndex.toString(),
|
30
|
+
title: renderColumnsTitle(columnProps),
|
31
|
+
cell: function cell(value, index, record) {
|
32
|
+
return renderCell(value, columnProps, index, record);
|
33
|
+
}
|
34
|
+
});
|
35
|
+
});
|
36
|
+
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["_comment", "_shape", "status", "image", "icon", "title", "subTitle", "timeLeft", "content", "animation", "discription", "tags", "collapsible", "defaultCollapsed", "collapsed", "onCollapse", "dotRender"];
|
1
|
+
var _excluded = ["_comment", "_shape", "status", "image", "icon", "title", "subTitle", "time", "timeLeft", "content", "animation", "discription", "tags", "collapsible", "defaultCollapsed", "collapsed", "onCollapse", "dotRender"];
|
2
2
|
|
3
3
|
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; }
|
4
4
|
|
@@ -43,6 +43,7 @@ var ProTimeLineItem = function ProTimeLineItem(props) {
|
|
43
43
|
icon = props.icon,
|
44
44
|
title = props.title,
|
45
45
|
subTitle = props.subTitle,
|
46
|
+
time = props.time,
|
46
47
|
timeLeft = props.timeLeft,
|
47
48
|
content = props.content,
|
48
49
|
animation = props.animation,
|
@@ -54,8 +55,10 @@ var ProTimeLineItem = function ProTimeLineItem(props) {
|
|
54
55
|
onCollapse = props.onCollapse,
|
55
56
|
dotRender = props.dotRender,
|
56
57
|
others = _objectWithoutProperties(props, _excluded);
|
57
|
-
/** 内容去折叠相关 */
|
58
58
|
|
59
|
+
var timeRight = time !== null && time !== void 0 ? time : subTitle; // 兼容 subTitle
|
60
|
+
|
61
|
+
/** 内容去折叠相关 */
|
59
62
|
|
60
63
|
var _useState = useState(defaultCollapsed !== undefined ? defaultCollapsed : false),
|
61
64
|
_useState2 = _slicedToArray(_useState, 2),
|
@@ -165,9 +168,9 @@ var ProTimeLineItem = function ProTimeLineItem(props) {
|
|
165
168
|
}))
|
166
169
|
}, title), tags && /*#__PURE__*/React.createElement("div", {
|
167
170
|
className: classnames(cls('wrapper-right-top-tag-info'))
|
168
|
-
}, renderTag()),
|
171
|
+
}, renderTag()), timeRight && /*#__PURE__*/React.createElement("div", {
|
169
172
|
className: classnames(cls('wrapper-right-top-subTitle-info'))
|
170
|
-
}, formatTime(
|
173
|
+
}, formatTime(timeRight))), discription && /*#__PURE__*/React.createElement("div", {
|
171
174
|
className: classnames(cls('wrapper-right-discribe-info'))
|
172
175
|
}, discription), /*#__PURE__*/React.createElement("div", {
|
173
176
|
className: classnames(cls('wrapper-right-content-info'))
|
@@ -177,7 +180,7 @@ var ProTimeLineItem = function ProTimeLineItem(props) {
|
|
177
180
|
'wrapper-right-content-info-open': showContent
|
178
181
|
}))
|
179
182
|
}, content))));
|
180
|
-
}, [_shape, timeLeft, image, title, tags,
|
183
|
+
}, [_shape, timeLeft, image, title, tags, timeRight, discription, content, collapsible, collapsed, defaultCollapsed, onCollapseChanged]);
|
181
184
|
/**
|
182
185
|
* 重新渲染 timeline 节点
|
183
186
|
* */
|
package/es/timeline/typing.d.ts
CHANGED
@@ -60,8 +60,13 @@ export declare type ProTimeLineItemProps = {
|
|
60
60
|
dotRender?: (index?: number, status?: string) => ReactNode;
|
61
61
|
/**
|
62
62
|
* 节点副标题
|
63
|
+
* @deprecated 弃用,请使用 `time`
|
63
64
|
*/
|
64
65
|
subTitle?: ReactNode;
|
66
|
+
/**
|
67
|
+
* 右侧时间
|
68
|
+
*/
|
69
|
+
time?: ReactNode;
|
65
70
|
/**
|
66
71
|
* 节点对应描述
|
67
72
|
*/
|
package/lib/actions/index.js
CHANGED
@@ -231,8 +231,18 @@ var ProActionButton = function ProActionButton(props) {
|
|
231
231
|
}, tooltipProps);
|
232
232
|
|
233
233
|
if (tooltip || disabledTooltip) {
|
234
|
-
|
235
|
-
|
234
|
+
if (tooltip && !disabledTooltip) {
|
235
|
+
if (!disabled) {
|
236
|
+
content = /*#__PURE__*/_react.default.createElement(_components.Balloon.Tooltip, _objectSpread({}, baseToolTipProps), tooltip);
|
237
|
+
}
|
238
|
+
} else if (!tooltip && disabledTooltip) {
|
239
|
+
if (disabled) {
|
240
|
+
content = /*#__PURE__*/_react.default.createElement(_components.Balloon.Tooltip, _objectSpread({}, baseToolTipProps), disabledTooltip);
|
241
|
+
}
|
242
|
+
} else if (tooltip && disabledTooltip) {
|
243
|
+
var showToolTip = disabled ? disabledTooltip : tooltip;
|
244
|
+
content = /*#__PURE__*/_react.default.createElement(_components.Balloon.Tooltip, _objectSpread({}, baseToolTipProps), showToolTip);
|
245
|
+
}
|
236
246
|
}
|
237
247
|
|
238
248
|
return content;
|
@@ -248,7 +258,10 @@ var ProActionMenuButtonItem = function ProActionMenuButtonItem(props) {
|
|
248
258
|
_onClick2 = action.onClick,
|
249
259
|
children = action.children,
|
250
260
|
icon = action.icon,
|
251
|
-
disabled = action.disabled
|
261
|
+
disabled = action.disabled,
|
262
|
+
tooltip = action.tooltip,
|
263
|
+
disabledTooltip = action.disabledTooltip,
|
264
|
+
tooltipProps = action.tooltipProps;
|
252
265
|
var menuItemActionConfig = Object.assign({}, config, {
|
253
266
|
trigger: 'onClick'
|
254
267
|
});
|
@@ -262,9 +275,32 @@ var ProActionMenuButtonItem = function ProActionMenuButtonItem(props) {
|
|
262
275
|
return _onClick2(e, context);
|
263
276
|
}
|
264
277
|
}) : _objectSpread({}, menuItemProps);
|
278
|
+
var content = buttonContent(children, icon, undefined, context);
|
279
|
+
|
280
|
+
var baseToolTipProps = _objectSpread({
|
281
|
+
triggerType: 'hover',
|
282
|
+
align: 't',
|
283
|
+
trigger: content
|
284
|
+
}, tooltipProps);
|
285
|
+
|
286
|
+
if (tooltip || disabledTooltip) {
|
287
|
+
if (tooltip && !disabledTooltip) {
|
288
|
+
if (!disabled) {
|
289
|
+
content = /*#__PURE__*/_react.default.createElement(_components.Balloon.Tooltip, _objectSpread({}, baseToolTipProps), tooltip);
|
290
|
+
}
|
291
|
+
} else if (!tooltip && disabledTooltip) {
|
292
|
+
if (disabled) {
|
293
|
+
content = /*#__PURE__*/_react.default.createElement(_components.Balloon.Tooltip, _objectSpread({}, baseToolTipProps), disabledTooltip);
|
294
|
+
}
|
295
|
+
} else if (tooltip && disabledTooltip) {
|
296
|
+
var showToolTip = disabled ? disabledTooltip : tooltip;
|
297
|
+
content = /*#__PURE__*/_react.default.createElement(_components.Balloon.Tooltip, _objectSpread({}, baseToolTipProps), showToolTip);
|
298
|
+
}
|
299
|
+
}
|
300
|
+
|
265
301
|
return /*#__PURE__*/_react.default.createElement("div", _objectSpread({
|
266
302
|
className: (0, _classnames.default)('teamix-pro-action-menu-item', "".concat((0, _utils.usePrefixCls)(), "menu-item"), _defineProperty({}, "".concat((0, _utils.usePrefixCls)(), "disabled"), disabled))
|
267
|
-
}, buttonProps),
|
303
|
+
}, buttonProps), content);
|
268
304
|
};
|
269
305
|
|
270
306
|
function renderCommonActionButtonMenuItem(action, key, context) {
|
@@ -35,13 +35,9 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
35
35
|
|
36
36
|
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; }
|
37
37
|
|
38
|
-
var lightFilterObs = (0, _reactive.observable)({
|
39
|
-
onFilter: function onFilter() {}
|
40
|
-
});
|
41
38
|
/**
|
42
39
|
* 轻量筛选
|
43
40
|
*/
|
44
|
-
|
45
41
|
var LightFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
46
42
|
var _schema$;
|
47
43
|
|
@@ -54,10 +50,15 @@ var LightFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
54
50
|
activeFilterValueRef = props.activeFilterValueRef,
|
55
51
|
otherProps = _objectWithoutProperties(props, _excluded);
|
56
52
|
|
57
|
-
var filterValue = (0, _react.useRef)(defaultFilterValue || ((_schema$ = schema[0]) === null || _schema$ === void 0 ? void 0 : _schema$.name));
|
53
|
+
var filterValue = (0, _react.useRef)(defaultFilterValue || (schema === null || schema === void 0 ? void 0 : (_schema$ = schema[0]) === null || _schema$ === void 0 ? void 0 : _schema$.name));
|
58
54
|
var prefixCls = (0, _utils.usePrefixCls)('', {
|
59
55
|
prefix: 'teamix-pro-form-query-filter-light'
|
60
56
|
});
|
57
|
+
var lightFilterObs = (0, _react.useMemo)(function () {
|
58
|
+
return (0, _reactive.observable)({
|
59
|
+
onFilter: function onFilter() {}
|
60
|
+
});
|
61
|
+
}, []);
|
61
62
|
(0, _react.useEffect)(function () {
|
62
63
|
if (activeFilterValueRef) {
|
63
64
|
activeFilterValueRef.current = filterValue.current;
|
@@ -108,7 +109,7 @@ var LightFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
108
109
|
}, [schema, onFilterChange, defaultFilterValue]);
|
109
110
|
(0, _react.useEffect)(function () {
|
110
111
|
lightFilterObs.onFilter = onFilter;
|
111
|
-
}, [
|
112
|
+
}, [onFilter]);
|
112
113
|
return /*#__PURE__*/_react.default.createElement(_ProForm.default, _objectSpread(_objectSpread({}, otherProps), {}, {
|
113
114
|
scope: _objectSpread(_objectSpread({}, otherProps === null || otherProps === void 0 ? void 0 : otherProps.scope), {}, {
|
114
115
|
lightFilterObs: lightFilterObs
|
package/lib/form/Filter/index.js
CHANGED
@@ -349,7 +349,7 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
349
349
|
debounceFun(onSimpleFilter, values);
|
350
350
|
}
|
351
351
|
}
|
352
|
-
}, [onChange]); // 轻量搜索Filter
|
352
|
+
}, [onChange, onSimpleFilter]); // 轻量搜索Filter
|
353
353
|
|
354
354
|
var onLightFilter = (0, _react.useCallback)(function (values) {
|
355
355
|
var _Object$keys;
|
@@ -374,7 +374,7 @@ var QueryFilter = /*#__PURE__*/(0, _react.memo)(function (props) {
|
|
374
374
|
debounceFun(onLightFilter, values);
|
375
375
|
}
|
376
376
|
}
|
377
|
-
}, [onChange]); // 高级搜索Filter
|
377
|
+
}, [onChange, onLightFilter]); // 高级搜索Filter
|
378
378
|
|
379
379
|
var onAdvancedFilter = (0, _react.useCallback)(function (values) {
|
380
380
|
setCurrentForm('advanced');
|
@@ -1,5 +1,4 @@
|
|
1
|
-
import
|
2
|
-
import type { ProFormProps } from '../typing';
|
1
|
+
import type { ComposedProForm } from '../typing';
|
3
2
|
import './index.scss';
|
4
|
-
declare const ProForm:
|
3
|
+
declare const ProForm: ComposedProForm;
|
5
4
|
export default ProForm;
|
@@ -11,13 +11,25 @@ var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
|
12
12
|
var _classnames = _interopRequireDefault(require("classnames"));
|
13
13
|
|
14
|
+
var _utils = require("@teamix/utils");
|
15
|
+
|
14
16
|
var _core = require("@formily/core");
|
15
17
|
|
16
18
|
var _reactive = require("@formily/reactive");
|
17
19
|
|
18
20
|
var _formily = require("@teamix/formily");
|
19
21
|
|
20
|
-
var
|
22
|
+
var _components = require("@alicloudfe/components");
|
23
|
+
|
24
|
+
var _ProField = _interopRequireDefault(require("../Components/ProField"));
|
25
|
+
|
26
|
+
var _Editable = require("../Components/Editable");
|
27
|
+
|
28
|
+
var _FormGroup = _interopRequireDefault(require("../Components/FormGroup"));
|
29
|
+
|
30
|
+
var _LightFilter = _interopRequireDefault(require("../Components/LightFilter"));
|
31
|
+
|
32
|
+
var _index = _interopRequireDefault(require("../Components/Text/index"));
|
21
33
|
|
22
34
|
var _SchemaForm = _interopRequireDefault(require("../SchemaForm"));
|
23
35
|
|
@@ -27,11 +39,13 @@ var _useAutoSubmit = _interopRequireDefault(require("./useAutoSubmit"));
|
|
27
39
|
|
28
40
|
var _useInitialRequest = _interopRequireDefault(require("./useInitialRequest"));
|
29
41
|
|
42
|
+
var _useFieldSchema = _interopRequireDefault(require("./useFieldSchema"));
|
43
|
+
|
30
44
|
var _validate = _interopRequireDefault(require("../locales/validate"));
|
31
45
|
|
32
46
|
require("./index.scss");
|
33
47
|
|
34
|
-
var _excluded = ["form", "initialValues", "initialRequest", "
|
48
|
+
var _excluded = ["form", "initialValues", "initialRequest", "scope", "context", "components", "layout", "labelAlign", "wrapperAlign", "labelCol", "wrapperCol", "breakpoints", "onChange", "onChangeType", "onSubmit", "onSubmitFailed", "onInitialComplete", "className", "validateFirst"];
|
35
49
|
|
36
50
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
37
51
|
|
@@ -50,15 +64,41 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
50
64
|
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; }
|
51
65
|
|
52
66
|
(0, _core.registerValidateLocale)(_validate.default);
|
67
|
+
var formilyComponents = {
|
68
|
+
FormLayout: _formily.FormLayout,
|
69
|
+
FormItem: _formily.FormItem,
|
70
|
+
ArrayCollapse: _formily.ArrayCollapse,
|
71
|
+
ArrayCards: _formily.ArrayCards,
|
72
|
+
ArrayItems: _formily.ArrayItems,
|
73
|
+
ArrayTable: _formily.ArrayTable,
|
74
|
+
Space: _formily.Space,
|
75
|
+
FormGrid: _formily.FormGrid,
|
76
|
+
FormTab: _formily.FormTab,
|
77
|
+
FormCollapse: _formily.FormCollapse,
|
78
|
+
FormStep: _formily.FormStep,
|
79
|
+
Editable: _formily.Editable,
|
80
|
+
FormDialogFooter: _formily.FormDialog.Footer,
|
81
|
+
FormDrawerFooter: _formily.FormDrawer.Footer,
|
82
|
+
FormButtonGroup: _formily.FormButtonGroup,
|
83
|
+
Submit: _formily.Submit,
|
84
|
+
Reset: _formily.Reset,
|
85
|
+
EditableDialog: _Editable.EditableDialog,
|
86
|
+
EditableDrawer: _Editable.EditableDrawer,
|
87
|
+
EditablePopover: _Editable.EditablePopover,
|
88
|
+
FormGroup: _FormGroup.default,
|
89
|
+
Upload: _formily.Upload,
|
90
|
+
SelectTable: _formily.SelectTable,
|
91
|
+
Affix: _components.Affix,
|
92
|
+
LightFilter: _LightFilter.default,
|
93
|
+
Text: _index.default
|
94
|
+
};
|
53
95
|
var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
54
96
|
var outerForm = _ref.form,
|
55
97
|
initialValues = _ref.initialValues,
|
56
98
|
initialRequest = _ref.initialRequest,
|
57
|
-
schema = _ref.schema,
|
58
99
|
scope = _ref.scope,
|
59
100
|
context = _ref.context,
|
60
101
|
components = _ref.components,
|
61
|
-
children = _ref.children,
|
62
102
|
layout = _ref.layout,
|
63
103
|
labelAlign = _ref.labelAlign,
|
64
104
|
wrapperAlign = _ref.wrapperAlign,
|
@@ -93,7 +133,7 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
93
133
|
}); // context需要实名不能解构
|
94
134
|
|
95
135
|
|
96
|
-
var mergedComponents = _objectSpread(_objectSpread({}, globalComponents), components);
|
136
|
+
var mergedComponents = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, globalComponents), components), formilyComponents), _ProField.default);
|
97
137
|
|
98
138
|
var onAutoSubmit = (0, _useAutoSubmit.default)(onSubmit); // todo 需要formily支持断点下的属性更新
|
99
139
|
|
@@ -114,6 +154,7 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
114
154
|
wrapperCol: (0, _utils2.mergeArrayValue)([24], wrapperCol)
|
115
155
|
};
|
116
156
|
}, [breakpoints, layout, labelAlign, wrapperAlign, labelCol, wrapperCol]);
|
157
|
+
var schema = (0, _useFieldSchema.default)(otherProps);
|
117
158
|
(0, _react.useMemo)(function () {
|
118
159
|
// 配置表单默认值
|
119
160
|
if (initialValues) {
|
@@ -157,12 +198,17 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
157
198
|
form: form,
|
158
199
|
onAutoSubmit: onAutoSubmit,
|
159
200
|
onAutoSubmitFailed: onSubmitFailed
|
160
|
-
}), /*#__PURE__*/_react.default.createElement(_SchemaForm.default, {
|
201
|
+
}), schema ? /*#__PURE__*/_react.default.createElement(_SchemaForm.default, {
|
161
202
|
schema: schema,
|
162
203
|
scope: mergedScope,
|
163
204
|
components: mergedComponents
|
164
|
-
}), children);
|
205
|
+
}) : null, otherProps === null || otherProps === void 0 ? void 0 : otherProps.children);
|
165
206
|
});
|
207
|
+
|
208
|
+
ProForm.Field = function () {
|
209
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
|
210
|
+
};
|
211
|
+
|
166
212
|
ProForm.defaultProps = {
|
167
213
|
colon: false,
|
168
214
|
labelAlign: 'left',
|
@@ -317,6 +317,13 @@
|
|
317
317
|
}
|
318
318
|
}
|
319
319
|
|
320
|
+
// SelectTable
|
321
|
+
.#{$teamix-pro-form}-select-table-column-tree
|
322
|
+
> .#{$css-prefix}table-cell-wrapper {
|
323
|
+
display: flex;
|
324
|
+
align-items: center;
|
325
|
+
}
|
326
|
+
|
320
327
|
/* hack todo remove */
|
321
328
|
.#{$form-item-cls}-control-content-component {
|
322
329
|
.#{$teamix-pro-field}-tooltip.#{$teamix-pro-field}-checkbox {
|