@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.
- package/dist/pro.css +1 -1
- package/dist/pro.js +832 -418
- package/dist/pro.min.css +1 -1
- package/dist/pro.min.js +1 -1
- package/es/actions/index.js +13 -8
- package/es/form/Components/ProField/index.d.ts +4 -0
- package/es/form/ProForm/index.js +2 -2
- package/es/form/ProForm/useFormDisplayValues.d.ts +6 -0
- package/es/form/ProForm/useFormDisplayValues.js +65 -0
- package/es/form/SchemaForm/adapterType.js +2 -1
- package/es/form/SchemaForm/initializeProField.js +1 -0
- package/es/form/SchemaForm/initializeReactions.js +82 -6
- package/es/form/index.d.ts +3 -3
- package/es/form/index.js +3 -3
- package/es/form/typing.d.ts +2 -2
- package/es/form/utils.d.ts +31 -8
- package/es/form/utils.js +27 -44
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/table/components/Filter/index.js +6 -2
- package/es/table/typing.d.ts +8 -4
- package/es/table/utils/columnRender.js +38 -11
- package/lib/actions/index.js +12 -7
- package/lib/form/Components/ProField/index.d.ts +4 -0
- package/lib/form/ProForm/index.js +1 -1
- package/lib/form/ProForm/useFormDisplayValues.d.ts +6 -0
- package/lib/form/ProForm/useFormDisplayValues.js +74 -0
- package/lib/form/SchemaForm/adapterType.js +2 -1
- package/lib/form/SchemaForm/initializeProField.js +1 -0
- package/lib/form/SchemaForm/initializeReactions.js +87 -7
- package/lib/form/index.d.ts +3 -3
- package/lib/form/index.js +15 -8
- package/lib/form/typing.d.ts +2 -2
- package/lib/form/utils.d.ts +31 -8
- package/lib/form/utils.js +28 -54
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/table/components/Filter/index.js +6 -2
- package/lib/table/typing.d.ts +8 -4
- package/lib/table/utils/columnRender.js +38 -11
- package/package.json +1 -1
@@ -57,7 +57,8 @@ export var renderCell = function renderCell(value, item, index, record, actionRe
|
|
57
57
|
valueType = _item$valueType === void 0 ? 'text' : _item$valueType,
|
58
58
|
render = item.render,
|
59
59
|
actionSchema = item.actionSchema,
|
60
|
-
dataIndex = item.dataIndex
|
60
|
+
dataIndex = item.dataIndex,
|
61
|
+
format = item.format; // 如果没传 dataIndex,返回 null
|
61
62
|
|
62
63
|
if (!dataIndex) {
|
63
64
|
value = null;
|
@@ -72,7 +73,8 @@ export var renderCell = function renderCell(value, item, index, record, actionRe
|
|
72
73
|
});
|
73
74
|
}
|
74
75
|
|
75
|
-
var newRender = null;
|
76
|
+
var newRender = null;
|
77
|
+
var newDataSource = null; // 如果 render 直接传函数
|
76
78
|
|
77
79
|
if (typeof render === 'function') {
|
78
80
|
newRender = function newRender() {
|
@@ -96,6 +98,29 @@ export var renderCell = function renderCell(value, item, index, record, actionRe
|
|
96
98
|
}, actionSchema), {}, {
|
97
99
|
context: _objectSpread(_objectSpread({}, defaultContext), actionSchema.context)
|
98
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
|
+
});
|
99
124
|
} // 渲染 ProField
|
100
125
|
|
101
126
|
|
@@ -103,7 +128,8 @@ export var renderCell = function renderCell(value, item, index, record, actionRe
|
|
103
128
|
type: valueType || 'text',
|
104
129
|
value: value,
|
105
130
|
render: newRender,
|
106
|
-
dataSource:
|
131
|
+
dataSource: newDataSource,
|
132
|
+
format: format
|
107
133
|
});
|
108
134
|
};
|
109
135
|
/**
|
@@ -121,10 +147,10 @@ var processRenderFunction = function processRenderFunction() {
|
|
121
147
|
var index = arguments.length > 2 ? arguments[2] : undefined;
|
122
148
|
var record = arguments.length > 3 ? arguments[3] : undefined;
|
123
149
|
var external = ['linkOnClick', 'link', 'value'];
|
124
|
-
return Object.fromEntries(Object.entries(render).map(function (
|
125
|
-
var
|
126
|
-
k =
|
127
|
-
v =
|
150
|
+
return Object.fromEntries(Object.entries(render).map(function (_ref3) {
|
151
|
+
var _ref4 = _slicedToArray(_ref3, 2),
|
152
|
+
k = _ref4[0],
|
153
|
+
v = _ref4[1];
|
128
154
|
|
129
155
|
if (typeof v === 'function') {
|
130
156
|
var _v;
|
@@ -159,10 +185,11 @@ var processBuriedPoint = function processBuriedPoint() {
|
|
159
185
|
var value = arguments.length > 2 ? arguments[2] : undefined;
|
160
186
|
var index = arguments.length > 3 ? arguments[3] : undefined;
|
161
187
|
return Object.fromEntries([// 默认 ellipsis、descriptionEllipsis 为 true
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
188
|
+
// emptyText 默认为 '-'
|
189
|
+
['ellipsis', true], ['descriptionEllipsis', true], ['emptyText', '-']].concat(_toConsumableArray(Object.entries(render).map(function (_ref5) {
|
190
|
+
var _ref6 = _slicedToArray(_ref5, 2),
|
191
|
+
k = _ref6[0],
|
192
|
+
v = _ref6[1];
|
166
193
|
|
167
194
|
return [k, getTargetValue(v, _objectSpread(_objectSpread({}, record), {}, {
|
168
195
|
record: record,
|
package/lib/actions/index.js
CHANGED
@@ -156,16 +156,18 @@ var useAction = function useAction(config, context) {
|
|
156
156
|
|
157
157
|
exports.useAction = useAction;
|
158
158
|
|
159
|
-
var buttonContent = function buttonContent(content, iconType, iconSize) {
|
159
|
+
var buttonContent = function buttonContent(content, iconType, iconSize, context) {
|
160
|
+
var renderedContent = typeof content === 'function' ? content(context) : content;
|
161
|
+
|
160
162
|
if (!iconType) {
|
161
|
-
return
|
163
|
+
return renderedContent;
|
162
164
|
}
|
163
165
|
|
164
166
|
return [/*#__PURE__*/_react.default.createElement(_icon.default, {
|
165
167
|
type: iconType,
|
166
168
|
size: iconSize,
|
167
169
|
key: "teamix-button-icon"
|
168
|
-
}),
|
170
|
+
}), renderedContent];
|
169
171
|
};
|
170
172
|
|
171
173
|
var ActionButton = function ActionButton(props) {
|
@@ -189,7 +191,7 @@ var ActionButton = function ActionButton(props) {
|
|
189
191
|
}) : _objectSpread(_objectSpread({}, actionProps), others);
|
190
192
|
return /*#__PURE__*/_react.default.createElement(_components.Button, _objectSpread({
|
191
193
|
type: type
|
192
|
-
}, buttonProps), buttonContent(children, icon, iconSize));
|
194
|
+
}, buttonProps), buttonContent(children, icon, iconSize, context));
|
193
195
|
};
|
194
196
|
|
195
197
|
exports.ActionButton = ActionButton;
|
@@ -210,7 +212,7 @@ function renderMenuButtonItem(item, key, context) {
|
|
210
212
|
}) : _objectSpread({}, menuItemProps);
|
211
213
|
return /*#__PURE__*/_react.default.createElement(_components.MenuButton.Item, _objectSpread({
|
212
214
|
key: key
|
213
|
-
}, buttonProps), buttonContent(item.children, item.icon));
|
215
|
+
}, buttonProps), buttonContent(item.children, item.icon, undefined, context));
|
214
216
|
}
|
215
217
|
|
216
218
|
function renderCommonActionButtonMenuItem(action, key, context) {
|
@@ -246,8 +248,11 @@ var ActionMenuButton = function ActionMenuButton(props) {
|
|
246
248
|
mode: 'popup',
|
247
249
|
triggerType: 'hover'
|
248
250
|
},
|
251
|
+
popupProps: {
|
252
|
+
shouldUpdatePosition: true
|
253
|
+
},
|
249
254
|
type: type,
|
250
|
-
label: buttonContent(label || children, icon, iconSize)
|
255
|
+
label: buttonContent(label || children, icon, iconSize, context)
|
251
256
|
}, others), actions.map(function (action, i) {
|
252
257
|
return renderCommonActionButtonMenuItem(action, i, context);
|
253
258
|
}));
|
@@ -295,7 +300,7 @@ function renderCommonActionButton(button, context, isTypeText) {
|
|
295
300
|
function getDefaultMoreButton(type, moreText) {
|
296
301
|
if (type === 'button') {
|
297
302
|
return {
|
298
|
-
label: moreText || '
|
303
|
+
label: moreText || (0, _utils.getMessage)('more')
|
299
304
|
};
|
300
305
|
}
|
301
306
|
|
@@ -143,6 +143,10 @@ declare const _default: React.ForwardRefExoticComponent<(Partial<import("@teamix
|
|
143
143
|
type: "tagFilter";
|
144
144
|
} & {
|
145
145
|
children?: React.ReactNode;
|
146
|
+
}> | Partial<import("@teamix/pro-field/lib/components/FieldTagFilter").IProFieldMultipleTagFilter & {
|
147
|
+
type: "multipleTagPicker";
|
148
|
+
} & {
|
149
|
+
children?: React.ReactNode;
|
146
150
|
}> | Partial<import("@teamix/pro-field/lib/components/FieldMenuSelect").IProFieldMenuSelect & {
|
147
151
|
type: "menuSelect";
|
148
152
|
} & {
|
@@ -98,7 +98,7 @@ var ProForm = /*#__PURE__*/(0, _react.memo)(function (_ref) {
|
|
98
98
|
form.addEffects('onChange', function () {
|
99
99
|
(0, _core.onFormValuesChange)(function (form) {
|
100
100
|
if (onChange) {
|
101
|
-
onChange((0, _reactive.toJS)(form.values)
|
101
|
+
onChange((0, _reactive.toJS)(form.values));
|
102
102
|
}
|
103
103
|
});
|
104
104
|
});
|
@@ -0,0 +1,74 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _react = require("@formily/react");
|
9
|
+
|
10
|
+
var _utils = require("@teamix/utils");
|
11
|
+
|
12
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
13
|
+
|
14
|
+
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."); }
|
15
|
+
|
16
|
+
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); }
|
17
|
+
|
18
|
+
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; }
|
19
|
+
|
20
|
+
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; }
|
21
|
+
|
22
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
23
|
+
|
24
|
+
/**
|
25
|
+
* 获取表单值的可显示值
|
26
|
+
* @returns 如果某字段有dataSource,则返回value对应label
|
27
|
+
*/
|
28
|
+
var useFormDisplayValues = function useFormDisplayValues() {
|
29
|
+
var form = (0, _react.useForm)();
|
30
|
+
var values = form.values; // 判断值的类型,递归获取每个值在该结构中的完整路径
|
31
|
+
|
32
|
+
var getDisplayValues = function getDisplayValues(values) {
|
33
|
+
var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
34
|
+
var displayValues;
|
35
|
+
|
36
|
+
if ((0, _utils.isPlainObj)(values)) {
|
37
|
+
displayValues = {};
|
38
|
+
Object.entries(values).forEach(function (_ref) {
|
39
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
40
|
+
key = _ref2[0],
|
41
|
+
value = _ref2[1];
|
42
|
+
|
43
|
+
var path = prefix ? "".concat(prefix, ".").concat(key) : "".concat(key);
|
44
|
+
displayValues[key] = getDisplayValues(value, path);
|
45
|
+
});
|
46
|
+
} else if ((0, _utils.isArr)(values)) {
|
47
|
+
displayValues = [];
|
48
|
+
values.map(function (value, index) {
|
49
|
+
var path = prefix ? "".concat(prefix, ".").concat(index) : "".concat(index);
|
50
|
+
displayValues[index] = getDisplayValues(value, path);
|
51
|
+
});
|
52
|
+
} else {
|
53
|
+
// 通过值的完整路径获取字段address(从form实例的indexes中),然后获取该字段的value在该字段dataSource中对应的label
|
54
|
+
var address = form.indexes[prefix];
|
55
|
+
var field = form.query(address).take();
|
56
|
+
displayValues = (0, _utils.getValueByValue)(field === null || field === void 0 ? void 0 : field.dataSource, values) || values;
|
57
|
+
}
|
58
|
+
|
59
|
+
return displayValues;
|
60
|
+
}; // 测试样例
|
61
|
+
// const example = {
|
62
|
+
// a: [
|
63
|
+
// [{ b: 'a.0.0.b', c: 'a.0.0.c' }, { d: 'a.0.1.d' }],
|
64
|
+
// { e: [{ f: { g: [{ h: 'a.1.e.0.f.g.0.h' }] } }, 'a.1.e.1'] },
|
65
|
+
// ],
|
66
|
+
// };
|
67
|
+
// console.log(getDisplayValues(example));
|
68
|
+
|
69
|
+
|
70
|
+
return getDisplayValues(values);
|
71
|
+
};
|
72
|
+
|
73
|
+
var _default = useFormDisplayValues;
|
74
|
+
exports.default = _default;
|
@@ -5,16 +5,96 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.default = void 0;
|
7
7
|
|
8
|
-
var _utils = require("
|
8
|
+
var _utils = require("@teamix/utils");
|
9
9
|
|
10
|
-
var
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
10
|
+
var _utils2 = require("../utils");
|
11
|
+
|
12
|
+
var _schemaNameMap = _interopRequireDefault(require("../schemaNameMap"));
|
13
|
+
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
|
+
|
16
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
17
|
+
|
18
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
19
|
+
|
20
|
+
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; }
|
21
|
+
|
22
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
23
|
+
|
24
|
+
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."); }
|
25
|
+
|
26
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
27
|
+
|
28
|
+
function _toArray(arr) { return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest(); }
|
29
|
+
|
30
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
31
|
+
|
32
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
33
|
+
|
34
|
+
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."); }
|
35
|
+
|
36
|
+
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); }
|
37
|
+
|
38
|
+
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; }
|
39
|
+
|
40
|
+
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; }
|
41
|
+
|
42
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
43
|
+
|
44
|
+
var mapSchemaName = function mapSchemaName(schema) {
|
45
|
+
if ((0, _utils.isPlainObj)(schema)) {
|
46
|
+
var newSchema = {};
|
47
|
+
Object.entries(schema).forEach(function (_ref) {
|
48
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
49
|
+
key = _ref2[0],
|
50
|
+
value = _ref2[1];
|
51
|
+
|
52
|
+
var _key$split = key.split('.'),
|
53
|
+
_key$split2 = _toArray(_key$split),
|
54
|
+
firstKey = _key$split2[0],
|
55
|
+
otherKey = _key$split2.slice(1);
|
56
|
+
|
57
|
+
var newFirstKey = (0, _utils.getValueByValue)(_schemaNameMap.default, firstKey, {
|
58
|
+
inputKey: 'proForm',
|
59
|
+
outputKey: 'formily'
|
60
|
+
}) || firstKey;
|
61
|
+
var newKey = [newFirstKey].concat(_toConsumableArray(otherKey)).join('.');
|
62
|
+
newSchema[newKey] = value;
|
63
|
+
});
|
64
|
+
return newSchema;
|
15
65
|
}
|
16
66
|
|
17
|
-
return
|
67
|
+
return schema;
|
68
|
+
};
|
69
|
+
|
70
|
+
var initializeReactions = function initializeReactions(reactions, innerReactions) {
|
71
|
+
var temp = innerReactions; // 合并reactions
|
72
|
+
|
73
|
+
if (reactions) {
|
74
|
+
temp = (0, _utils2.mergeArrayValue)(innerReactions, reactions);
|
75
|
+
} // schema名称映射,由ProFormSchema映射为formilySchema
|
76
|
+
|
77
|
+
|
78
|
+
temp = temp.map(function (item) {
|
79
|
+
var _item$fulfill, _item$otherwise;
|
80
|
+
|
81
|
+
var fulfillSchema = mapSchemaName(item === null || item === void 0 ? void 0 : (_item$fulfill = item.fulfill) === null || _item$fulfill === void 0 ? void 0 : _item$fulfill.schema);
|
82
|
+
var otherwiseSchema = mapSchemaName(item === null || item === void 0 ? void 0 : (_item$otherwise = item.otherwise) === null || _item$otherwise === void 0 ? void 0 : _item$otherwise.schema);
|
83
|
+
|
84
|
+
if (fulfillSchema || otherwiseSchema) {
|
85
|
+
return _objectSpread(_objectSpread({}, item), {}, {
|
86
|
+
fulfill: _objectSpread(_objectSpread({}, item === null || item === void 0 ? void 0 : item.fulfill), {}, {
|
87
|
+
schema: fulfillSchema
|
88
|
+
}),
|
89
|
+
otherwise: _objectSpread(_objectSpread({}, item === null || item === void 0 ? void 0 : item.otherwise), {}, {
|
90
|
+
schema: otherwiseSchema
|
91
|
+
})
|
92
|
+
});
|
93
|
+
}
|
94
|
+
|
95
|
+
return item;
|
96
|
+
});
|
97
|
+
return temp;
|
18
98
|
};
|
19
99
|
|
20
100
|
var _default = initializeReactions;
|
package/lib/form/index.d.ts
CHANGED
@@ -13,10 +13,10 @@ export * as formilyTeamix from '@teamix/formily';
|
|
13
13
|
* 导出常用formily内容,需谨慎限制
|
14
14
|
*/
|
15
15
|
import { createForm, registerValidateRules as registerRules, registerValidateFormats as registerFormats, registerValidateLocale, setValidateLanguage } from '@formily/core';
|
16
|
-
import { FormConsumer } from '@formily/react';
|
16
|
+
import { FormConsumer, useForm } from '@formily/react';
|
17
17
|
import { FormDialog, FormDrawer, FormStep, FormTab, FormCollapse } from '@teamix/formily';
|
18
|
-
import
|
19
|
-
export { createForm, FormConsumer, FormDialog, FormDrawer, FormStep, FormTab, FormCollapse, registerRules, registerFormats, registerValidateLocale, setValidateLanguage,
|
18
|
+
import useFormDisplayValues from './ProForm/useFormDisplayValues';
|
19
|
+
export { createForm, FormConsumer, FormDialog, FormDrawer, FormStep, FormTab, FormCollapse, registerRules, registerFormats, registerValidateLocale, setValidateLanguage, useForm, useFormDisplayValues, };
|
20
20
|
/**
|
21
21
|
* 导出 Filter 组件
|
22
22
|
*/
|
package/lib/form/index.js
CHANGED
@@ -13,6 +13,7 @@ var _exportNames = {
|
|
13
13
|
setValidateLanguage: true,
|
14
14
|
formilyCore: true,
|
15
15
|
FormConsumer: true,
|
16
|
+
useForm: true,
|
16
17
|
formilyReact: true,
|
17
18
|
formilyReactive: true,
|
18
19
|
FormDialog: true,
|
@@ -21,7 +22,7 @@ var _exportNames = {
|
|
21
22
|
FormTab: true,
|
22
23
|
FormCollapse: true,
|
23
24
|
formilyTeamix: true,
|
24
|
-
|
25
|
+
useFormDisplayValues: true,
|
25
26
|
AdvancedFilter: true,
|
26
27
|
SimpleFilter: true,
|
27
28
|
QueryFilter: true
|
@@ -87,12 +88,6 @@ Object.defineProperty(exports, "createForm", {
|
|
87
88
|
}
|
88
89
|
});
|
89
90
|
exports.formilyTeamix = exports.formilyReactive = exports.formilyReact = exports.formilyCore = exports.default = void 0;
|
90
|
-
Object.defineProperty(exports, "getDisplayValues", {
|
91
|
-
enumerable: true,
|
92
|
-
get: function get() {
|
93
|
-
return _utils.getDisplayValues;
|
94
|
-
}
|
95
|
-
});
|
96
91
|
Object.defineProperty(exports, "registerFormats", {
|
97
92
|
enumerable: true,
|
98
93
|
get: function get() {
|
@@ -117,6 +112,18 @@ Object.defineProperty(exports, "setValidateLanguage", {
|
|
117
112
|
return _formilyCore.setValidateLanguage;
|
118
113
|
}
|
119
114
|
});
|
115
|
+
Object.defineProperty(exports, "useForm", {
|
116
|
+
enumerable: true,
|
117
|
+
get: function get() {
|
118
|
+
return _formilyReact.useForm;
|
119
|
+
}
|
120
|
+
});
|
121
|
+
Object.defineProperty(exports, "useFormDisplayValues", {
|
122
|
+
enumerable: true,
|
123
|
+
get: function get() {
|
124
|
+
return _useFormDisplayValues.default;
|
125
|
+
}
|
126
|
+
});
|
120
127
|
|
121
128
|
var _typing = require("./typing");
|
122
129
|
|
@@ -148,7 +155,7 @@ var _formilyTeamix = _interopRequireWildcard(require("@teamix/formily"));
|
|
148
155
|
|
149
156
|
exports.formilyTeamix = _formilyTeamix;
|
150
157
|
|
151
|
-
var
|
158
|
+
var _useFormDisplayValues = _interopRequireDefault(require("./ProForm/useFormDisplayValues"));
|
152
159
|
|
153
160
|
var _Filter = require("./Filter");
|
154
161
|
|
package/lib/form/typing.d.ts
CHANGED
@@ -6,7 +6,7 @@ export interface anyObject {
|
|
6
6
|
[propName: string]: any;
|
7
7
|
}
|
8
8
|
declare type FieldDisplayTypes = 'none' | 'hidden' | 'visible';
|
9
|
-
export declare type IBaseComponent = 'Input' | 'Password' | 'TextArea' | 'NumberPicker' | 'Percent' | 'Money' | 'Select' | 'MultipleSelect' | 'TreeSelect' | 'Cascader' | 'MultipleCascader' | 'ArbitraryCascader' | 'Radio' | 'Checkbox' | 'Switch' | 'DatePicker' | 'TimePicker' | 'DateTimePicker' | 'WeekPicker' | 'MonthPicker' | 'YearPicker' | 'QuarterPicker' | 'DateRangePicker' | 'TimeRangePicker' | 'DateTimeRangePicker' | 'WeekRangePicker' | 'MonthRangePicker' | 'YearRangePicker' | 'QuarterRangePicker' | 'Transfer' | 'Upload' | 'ColorPicker' | 'ColorRadio' | 'IconPicker' | 'JsonInput' | 'TagPicker' | 'Range' | 'Search';
|
9
|
+
export declare type IBaseComponent = 'Input' | 'Password' | 'TextArea' | 'NumberPicker' | 'Percent' | 'Money' | 'Select' | 'MultipleSelect' | 'TreeSelect' | 'Cascader' | 'MultipleCascader' | 'ArbitraryCascader' | 'Radio' | 'Checkbox' | 'Switch' | 'DatePicker' | 'TimePicker' | 'DateTimePicker' | 'WeekPicker' | 'MonthPicker' | 'YearPicker' | 'QuarterPicker' | 'DateRangePicker' | 'TimeRangePicker' | 'DateTimeRangePicker' | 'WeekRangePicker' | 'MonthRangePicker' | 'YearRangePicker' | 'QuarterRangePicker' | 'Transfer' | 'Upload' | 'ColorPicker' | 'ColorRadio' | 'IconPicker' | 'JsonInput' | 'TagPicker' | 'MultipleTagPicker' | 'Range' | 'Search';
|
10
10
|
export declare type IButtonComponent = 'Submit' | 'Reset';
|
11
11
|
export declare type IComboComponent = 'ArrayCards' | 'ArrayCards.Addition' | 'ArrayCards.Remove' | 'ArrayCards.MoveUp' | 'ArrayCards.MoveDown' | 'ArrayCards.Index' | 'ArrayCollapse' | 'ArrayCollapse.CollapsePanel' | 'ArrayCollapse.Addition' | 'ArrayCollapse.Remove' | 'ArrayCollapse.MoveUp' | 'ArrayCollapse.MoveDown' | 'ArrayCollapse.Index' | 'ArrayTable' | 'ArrayTable.Column' | 'ArrayTable.SortHandle' | 'ArrayTable.Addition' | 'ArrayTable.Remove' | 'ArrayTable.MoveDown' | 'ArrayTable.MoveUp' | 'ArrayTable.Index' | 'ArrayItems' | 'ArrayItems.Item' | 'ArrayItems.SortHandle' | 'ArrayItems.Addition' | 'ArrayItems.Remove' | 'ArrayItems.MoveDown' | 'ArrayItems.MoveUp' | 'ArrayItems.Index' | 'Editable' | 'Editable.Popover' | 'Editable.Dialog' | 'Editable.Drawer';
|
12
12
|
export declare type ILayoutComponent = 'FormFlex' | 'FormGrid' | 'FormGroup' | 'FormGroup.GroupPanel' | 'Search' | 'Search.SearchPanel' | 'FormTab' | 'FormTab.TabPane' | 'FormStep' | 'FormStep.StepPane' | 'FormCollapse' | 'FormCollapse.CollapsePanel' | 'FormButtonGroup' | 'FormDialog' | 'FormDrawer' | 'FormDialog.Footer' | 'FormDrawer.Footer';
|
@@ -57,7 +57,7 @@ export interface IFormProps extends IFormLayoutProps {
|
|
57
57
|
initialValues?: anyObject;
|
58
58
|
initialRequest?: CommonRequestConfig;
|
59
59
|
previewTextPlaceholder?: ReactNode;
|
60
|
-
onChange?: (values: any, displayValues
|
60
|
+
onChange?: (values: any, displayValues?: any) => any;
|
61
61
|
onSubmit?: ((values: any) => any) | CommonRequestConfig;
|
62
62
|
onSubmitFailed?: (feedbacks: IFormFeedback[]) => void;
|
63
63
|
}
|
package/lib/form/utils.d.ts
CHANGED
@@ -1,14 +1,37 @@
|
|
1
|
-
|
1
|
+
/**
|
2
|
+
* 映射字段size,主要是default转medium
|
3
|
+
* @param props component的props
|
4
|
+
* @param field 当前字段实例
|
5
|
+
* @returns 映射后的字段属性
|
6
|
+
*/
|
7
|
+
declare const mapSize: (props: any, field: any) => any;
|
8
|
+
/**
|
9
|
+
* 映射字段state
|
10
|
+
* @param props component的props
|
11
|
+
* @param field 当前字段实例
|
12
|
+
* @returns 映射后的字段属性
|
13
|
+
*/
|
14
|
+
declare const mapStatus: (props: any, field: any) => any;
|
15
|
+
/**
|
16
|
+
* 为未配置name的字段添加随机字段名称
|
17
|
+
* @param prefix 随机字段名称前缀,默认为name
|
18
|
+
* @returns 随机字段名称
|
19
|
+
*/
|
2
20
|
interface IGetRandomName {
|
3
21
|
(prefix?: string): string;
|
4
22
|
}
|
5
|
-
declare const mapSize: (props: any, field: any) => any;
|
6
|
-
declare const mapStatus: (props: any, field: any) => any;
|
7
23
|
declare const getRandomName: IGetRandomName;
|
24
|
+
/**
|
25
|
+
* 将ProForm的key映射为formily的key,然后筛除掉无效的key/value
|
26
|
+
* @param obj
|
27
|
+
* @returns
|
28
|
+
*/
|
8
29
|
declare const mapSchemaName: (obj: any) => any;
|
30
|
+
/**
|
31
|
+
* 合并数组或非数组,不移除无效值
|
32
|
+
* @param arr 数组
|
33
|
+
* @param v 数组或其他
|
34
|
+
* @returns 合并数组或合并其他值
|
35
|
+
*/
|
9
36
|
declare const mergeArrayValue: (arr: any[], v?: any) => any[];
|
10
|
-
|
11
|
-
(form: any, values: any, prefix?: string): any;
|
12
|
-
}
|
13
|
-
declare const getDisplayValues: IGetDisplayValues;
|
14
|
-
export { getRandomName, getValueByValue, getDisplayValues, mapSize, mapStatus, mergeArrayValue, mapSchemaName, };
|
37
|
+
export { getRandomName, mapSize, mapStatus, mergeArrayValue, mapSchemaName };
|
package/lib/form/utils.js
CHANGED
@@ -3,14 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
4
4
|
value: true
|
5
5
|
});
|
6
|
-
exports.
|
7
|
-
Object.defineProperty(exports, "getValueByValue", {
|
8
|
-
enumerable: true,
|
9
|
-
get: function get() {
|
10
|
-
return _utils.getValueByValue;
|
11
|
-
}
|
12
|
-
});
|
13
|
-
exports.mergeArrayValue = exports.mapStatus = exports.mapSize = exports.mapSchemaName = void 0;
|
6
|
+
exports.mergeArrayValue = exports.mapStatus = exports.mapSize = exports.mapSchemaName = exports.getRandomName = void 0;
|
14
7
|
|
15
8
|
var _formily = require("@teamix/formily");
|
16
9
|
|
@@ -46,6 +39,12 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
46
39
|
|
47
40
|
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; }
|
48
41
|
|
42
|
+
/**
|
43
|
+
* 映射字段size,主要是default转medium
|
44
|
+
* @param props component的props
|
45
|
+
* @param field 当前字段实例
|
46
|
+
* @returns 映射后的字段属性
|
47
|
+
*/
|
49
48
|
var mapSize = function mapSize(props, field) {
|
50
49
|
var layout = _objectSpread(_objectSpread({}, (0, _formily.useFormShallowLayout)()), (0, _formily.useFormLayout)());
|
51
50
|
|
@@ -57,6 +56,13 @@ var mapSize = function mapSize(props, field) {
|
|
57
56
|
size: props.size || takeSize()
|
58
57
|
});
|
59
58
|
};
|
59
|
+
/**
|
60
|
+
* 映射字段state
|
61
|
+
* @param props component的props
|
62
|
+
* @param field 当前字段实例
|
63
|
+
* @returns 映射后的字段属性
|
64
|
+
*/
|
65
|
+
|
60
66
|
|
61
67
|
exports.mapSize = mapSize;
|
62
68
|
|
@@ -88,7 +94,12 @@ exports.mapStatus = mapStatus;
|
|
88
94
|
var getRandomName = function getRandomName() {
|
89
95
|
var prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'name';
|
90
96
|
return "".concat(prefix, "_").concat(Math.floor(Math.random() * Math.pow(10, 18)));
|
91
|
-
};
|
97
|
+
};
|
98
|
+
/**
|
99
|
+
* 将ProForm的key映射为formily的key,然后筛除掉无效的key/value
|
100
|
+
* @param obj
|
101
|
+
* @returns
|
102
|
+
*/
|
92
103
|
|
93
104
|
|
94
105
|
exports.getRandomName = getRandomName;
|
@@ -121,6 +132,13 @@ var mapSchemaName = function mapSchemaName(obj) {
|
|
121
132
|
});
|
122
133
|
return temp;
|
123
134
|
};
|
135
|
+
/**
|
136
|
+
* 合并数组或非数组,不移除无效值
|
137
|
+
* @param arr 数组
|
138
|
+
* @param v 数组或其他
|
139
|
+
* @returns 合并数组或合并其他值
|
140
|
+
*/
|
141
|
+
|
124
142
|
|
125
143
|
exports.mapSchemaName = mapSchemaName;
|
126
144
|
|
@@ -130,50 +148,6 @@ var mergeArrayValue = function mergeArrayValue(arr, v) {
|
|
130
148
|
}
|
131
149
|
|
132
150
|
return [].concat(_toConsumableArray(arr), [v]);
|
133
|
-
}; // 获取form的displayValues
|
134
|
-
|
135
|
-
|
136
|
-
exports.mergeArrayValue = mergeArrayValue;
|
137
|
-
|
138
|
-
var getDisplayValues = function getDisplayValues(form, values) {
|
139
|
-
var prefix = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
140
|
-
var displayValues = {}; // 在form实例中,通过name获取该field的值在dataSource对应的label
|
141
|
-
|
142
|
-
var getLabelByKey = function getLabelByKey(name, value) {
|
143
|
-
var address = form.indexes[name] || '';
|
144
|
-
var field = form.query(address).take() || {};
|
145
|
-
var dataSource = field.dataSource;
|
146
|
-
return (0, _utils.getValueByValue)(dataSource, value);
|
147
|
-
};
|
148
|
-
|
149
|
-
Object.entries(values).forEach(function (_ref3) {
|
150
|
-
var _ref4 = _slicedToArray(_ref3, 2),
|
151
|
-
key = _ref4[0],
|
152
|
-
value = _ref4[1];
|
153
|
-
|
154
|
-
var label;
|
155
|
-
|
156
|
-
if ((0, _utils.isArr)(value)) {
|
157
|
-
value.map(function (v, i) {
|
158
|
-
if ((0, _utils.isObj)(v)) {
|
159
|
-
// 值是对象数组
|
160
|
-
label = getDisplayValues(form, v, "".concat(prefix).concat(key, ".").concat(i, "."));
|
161
|
-
} else if ((0, _utils.isArr)(v)) {
|
162
|
-
// 值是多重数组
|
163
|
-
console.warn('Multiple array, Please dingding qilou.zhl.');
|
164
|
-
} else if (v !== undefined && v !== null) {
|
165
|
-
label = getLabelByKey("".concat(prefix).concat(key, ".").concat(i), value);
|
166
|
-
}
|
167
|
-
});
|
168
|
-
} else if ((0, _utils.isObj)(value)) {
|
169
|
-
label = getDisplayValues(form, value, "".concat(key, "."));
|
170
|
-
} else {
|
171
|
-
label = getLabelByKey("".concat(prefix).concat(key), value);
|
172
|
-
}
|
173
|
-
|
174
|
-
displayValues[key] = label;
|
175
|
-
});
|
176
|
-
return displayValues;
|
177
151
|
};
|
178
152
|
|
179
|
-
exports.
|
153
|
+
exports.mergeArrayValue = mergeArrayValue;
|
package/lib/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.1.
|
24
|
+
declare const version = "1.1.32";
|
25
25
|
export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, hooks, nocode, templates, utils, };
|
package/lib/index.js
CHANGED