@zat-design/sisyphus-react 4.0.0-beta.3 → 4.0.0-beta.4
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/babel.config.js +7 -30
- package/dist/esm/index.d.ts +5 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/regExp/index.d.ts +19 -0
- package/dist/esm/regExp/index.js +73 -0
- package/dist/esm/tools/calc/index.d.ts +4 -0
- package/dist/esm/tools/calc/index.js +67 -0
- package/dist/esm/tools/dateUtils.d.ts +7 -0
- package/dist/esm/tools/dateUtils.js +23 -0
- package/dist/esm/tools/disableDate/index.d.ts +9 -0
- package/dist/esm/tools/disableDate/index.js +43 -0
- package/dist/esm/tools/disableTimeRange/index.d.ts +9 -0
- package/dist/esm/tools/disableTimeRange/index.js +121 -0
- package/dist/esm/tools/formatAmount/index.d.ts +7 -0
- package/dist/esm/tools/formatAmount/index.js +14 -0
- package/dist/esm/tools/formatPerMill/index.d.ts +7 -0
- package/dist/esm/tools/formatPerMill/index.js +11 -0
- package/dist/esm/tools/formatPercent/index.d.ts +7 -0
- package/dist/esm/tools/formatPercent/index.js +11 -0
- package/dist/esm/tools/getDataByIdCard/index.d.ts +16 -0
- package/dist/esm/tools/getDataByIdCard/index.js +65 -0
- package/dist/esm/tools/index.d.ts +12 -0
- package/dist/esm/tools/index.js +14 -0
- package/dist/esm/tools/sumAmount/index.d.ts +16 -0
- package/dist/esm/tools/sumAmount/index.js +40 -0
- package/dist/esm/tools/toChineseNum/index.d.ts +7 -0
- package/dist/esm/tools/toChineseNum/index.js +103 -0
- package/dist/esm/tools/toFixed/index.d.ts +2 -0
- package/dist/esm/tools/toFixed/index.js +5 -0
- package/dist/esm/tools/transformDataName/index.d.ts +12 -0
- package/dist/esm/tools/transformDataName/index.js +37 -0
- package/dist/esm/transforms/dateTransformer/index.d.ts +24 -0
- package/dist/esm/transforms/dateTransformer/index.js +67 -0
- package/dist/esm/transforms/index.d.ts +6 -0
- package/dist/esm/transforms/index.js +6 -0
- package/dist/esm/transforms/propTypes.d.ts +7 -0
- package/dist/esm/transforms/propTypes.js +1 -0
- package/dist/esm/transforms/transformDate/index.d.ts +21 -0
- package/dist/esm/transforms/transformDate/index.js +141 -0
- package/dist/esm/transforms/transformDatePicker/index.d.ts +12 -0
- package/dist/esm/transforms/transformDatePicker/index.js +24 -0
- package/dist/esm/transforms/transformRangePicker/index.d.ts +29 -0
- package/dist/esm/transforms/transformRangePicker/index.js +61 -0
- package/dist/esm/transforms/transformSwitch/index.d.ts +13 -0
- package/dist/esm/transforms/transformSwitch/index.js +35 -0
- package/dist/esm/transforms/utils.d.ts +2 -0
- package/dist/esm/transforms/utils.js +8 -0
- package/dist/esm/validate/index.d.ts +107 -0
- package/dist/esm/validate/index.js +284 -0
- package/es/ProAction/index.less +0 -2
- package/es/ProConfigProvider/index.d.ts +1 -0
- package/es/ProConfigProvider/index.js +4 -5
- package/es/ProDownload/style/index.less +0 -2
- package/es/ProDrawerForm/index.js +33 -29
- package/es/ProDrawerForm/style/index.less +0 -2
- package/es/ProEditLabel/style/index.less +0 -2
- package/es/ProEditTable/components/RcTable/DraggableTable.js +1 -1
- package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +14 -2
- package/es/ProEditTable/propsType.d.ts +1 -1
- package/es/ProEditTable/style/index.less +2 -4
- package/es/ProEditTable/utils/diffOriginal.d.ts +1 -0
- package/es/ProEditTable/utils/diffOriginal.js +68 -1
- package/es/ProEnum/hooks/useEnum.js +5 -0
- package/es/ProEnum/style/index.less +0 -2
- package/es/ProForm/components/FormFooter/index.js +6 -6
- package/es/ProForm/components/base/DatePicker/index.js +19 -34
- package/es/ProForm/components/base/SwitchCheckbox/style/index.less +0 -2
- package/es/ProForm/components/base/TextArea/index.less +0 -2
- package/es/ProForm/components/base/TimePicker/style/index.less +0 -2
- package/es/ProForm/components/combination/Container/style/index.less +0 -2
- package/es/ProForm/components/combination/FormList/style/index.less +0 -2
- package/es/ProForm/components/combination/Group/component/ComRender.js +9 -8
- package/es/ProForm/components/combination/Group/hooks/index.js +17 -4
- package/es/ProForm/components/combination/Group/index.d.ts +8 -2
- package/es/ProForm/components/combination/Group/index.js +10 -16
- package/es/ProForm/components/combination/ProCascader/index.js +106 -52
- package/es/ProForm/components/combination/ProCascader/propsType.d.ts +12 -4
- package/es/ProForm/components/combination/ProCascader/style/index.less +1 -3
- package/es/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +2 -4
- package/es/ProForm/components/combination/ProModalSelect/index.js +38 -64
- package/es/ProForm/components/combination/ProModalSelect/propsType.d.ts +7 -3
- package/es/ProForm/components/combination/ProModalSelect/style/index.less +1 -4
- package/es/ProForm/components/combination/ProNumberRange/style/index.less +4 -3
- package/es/ProForm/components/combination/ProTimeLimit/style/index.less +0 -2
- package/es/ProForm/components/render/ChangedWrapper.js +2 -2
- package/es/ProForm/components/render/Render.js +17 -5
- package/es/ProForm/components/render/RenderFields.d.ts +1 -0
- package/es/ProForm/components/render/RenderFields.js +4 -2
- package/es/ProForm/components/render/propsType.d.ts +1 -0
- package/es/ProForm/index.d.ts +2 -2
- package/es/ProForm/index.js +5 -2
- package/es/ProForm/propsType.d.ts +2 -0
- package/es/ProForm/style/index.less +0 -2
- package/es/ProForm/utils/diffOriginal.d.ts +1 -0
- package/es/ProForm/utils/diffOriginal.js +66 -1
- package/es/ProForm/utils/index.js +1 -1
- package/es/ProForm/utils/useShouldUpdate.d.ts +1 -0
- package/es/ProForm/utils/useShouldUpdate.js +89 -3
- package/es/ProIcon/style/index.less +0 -2
- package/es/ProLayout/components/Layout/Menu/FoldMenu/index.js +60 -8
- package/es/ProLayout/components/Layout/Menu/FoldMenu/style/index.less +0 -2
- package/es/ProLayout/components/Layout/Menu/OpenMenu/index.js +25 -3
- package/es/ProLayout/components/Layout/Menu/SideMenu/index.js +3 -1
- package/es/ProLayout/components/Layout/Menu/SideMenu/style/index.less +0 -2
- package/es/ProLayout/components/Layout/Menu/index.js +4 -1
- package/es/ProLayout/components/Layout/Menu/style/index.less +0 -2
- package/es/ProLayout/components/Layout/Notice/style/index.less +0 -2
- package/es/ProLayout/components/ProCollapse/PropTypes.d.ts +8 -3
- package/es/ProLayout/components/ProCollapse/index.js +27 -3
- package/es/ProLayout/components/ProCollapse/style/index.less +148 -4
- package/es/ProLayout/components/ProFooter/style/index.less +0 -2
- package/es/ProLayout/components/ProHeader/components/ProBackBtn/style/index.less +0 -2
- package/es/ProLayout/components/ProHeader/style/index.less +0 -2
- package/es/ProLayout/index.d.ts +0 -11
- package/es/ProLayout/index.js +60 -32
- package/es/ProLayout/propTypes.d.ts +9 -0
- package/es/ProLayout/style/index.less +0 -2
- package/es/ProLayout/utils/index.d.ts +7 -0
- package/es/ProLayout/utils/index.js +30 -0
- package/es/ProSelect/index.less +0 -2
- package/es/ProSelect/utils/index.js +62 -1
- package/es/ProStep/components/Item/index.js +1 -2
- package/es/ProStep/style/index.less +0 -2
- package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +1 -1
- package/es/ProTable/hooks/useAntdTable.d.ts +3 -0
- package/es/ProTable/hooks/useAntdTable.js +92 -64
- package/es/ProTable/index.d.ts +3 -7
- package/es/ProTable/index.js +14 -14
- package/es/ProTable/propsType.d.ts +3 -2
- package/es/ProTable/style/index.less +4 -6
- package/es/ProTabs/style/index.less +0 -2
- package/es/ProThemeTools/index.d.ts +0 -7
- package/es/ProThemeTools/index.js +10 -12
- package/es/ProThemeTools/style/index.less +0 -2
- package/es/ProTooltip/style/index.less +0 -2
- package/es/ProTree/components/ProTreeSelect/style/index.less +0 -2
- package/es/ProTree/style/index.less +0 -2
- package/es/ProTreeModal/style/index.less +0 -2
- package/es/ProUpload/style/index.less +0 -2
- package/es/ProViewer/style/index.less +0 -2
- package/es/style/theme/antd.less +0 -2
- package/jest.config.js +46 -4
- package/lib/ProAction/index.less +0 -2
- package/lib/ProConfigProvider/index.d.ts +1 -0
- package/lib/ProConfigProvider/index.js +4 -3
- package/lib/ProDownload/style/index.less +0 -2
- package/lib/ProDrawerForm/index.js +25 -28
- package/lib/ProDrawerForm/style/index.less +0 -2
- package/lib/ProEditLabel/style/index.less +0 -2
- package/lib/ProEditTable/components/RcTable/DraggableTable.js +1 -1
- package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +10 -2
- package/lib/ProEditTable/propsType.d.ts +1 -1
- package/lib/ProEditTable/style/index.less +2 -4
- package/lib/ProEditTable/utils/diffOriginal.d.ts +1 -0
- package/lib/ProEditTable/utils/diffOriginal.js +48 -1
- package/lib/ProEnum/hooks/useEnum.js +3 -0
- package/lib/ProEnum/style/index.less +0 -2
- package/lib/ProForm/components/FormFooter/index.js +6 -5
- package/lib/ProForm/components/base/DatePicker/index.js +21 -33
- package/lib/ProForm/components/base/SwitchCheckbox/style/index.less +0 -2
- package/lib/ProForm/components/base/TextArea/index.less +0 -2
- package/lib/ProForm/components/base/TimePicker/style/index.less +0 -2
- package/lib/ProForm/components/combination/Container/style/index.less +0 -2
- package/lib/ProForm/components/combination/FormList/style/index.less +0 -2
- package/lib/ProForm/components/combination/Group/component/ComRender.js +8 -7
- package/lib/ProForm/components/combination/Group/hooks/index.js +8 -2
- package/lib/ProForm/components/combination/Group/index.d.ts +8 -2
- package/lib/ProForm/components/combination/Group/index.js +8 -13
- package/lib/ProForm/components/combination/ProCascader/index.js +73 -16
- package/lib/ProForm/components/combination/ProCascader/propsType.d.ts +12 -4
- package/lib/ProForm/components/combination/ProCascader/style/index.less +1 -3
- package/lib/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +2 -2
- package/lib/ProForm/components/combination/ProModalSelect/index.js +26 -52
- package/lib/ProForm/components/combination/ProModalSelect/propsType.d.ts +7 -3
- package/lib/ProForm/components/combination/ProModalSelect/style/index.less +1 -4
- package/lib/ProForm/components/combination/ProNumberRange/style/index.less +4 -3
- package/lib/ProForm/components/combination/ProTimeLimit/style/index.less +0 -2
- package/lib/ProForm/components/render/ChangedWrapper.js +2 -2
- package/lib/ProForm/components/render/Render.js +11 -3
- package/lib/ProForm/components/render/RenderFields.d.ts +1 -0
- package/lib/ProForm/components/render/RenderFields.js +4 -2
- package/lib/ProForm/components/render/propsType.d.ts +1 -0
- package/lib/ProForm/index.d.ts +2 -2
- package/lib/ProForm/index.js +3 -1
- package/lib/ProForm/propsType.d.ts +2 -0
- package/lib/ProForm/style/index.less +0 -2
- package/lib/ProForm/utils/diffOriginal.d.ts +1 -0
- package/lib/ProForm/utils/diffOriginal.js +48 -1
- package/lib/ProForm/utils/index.js +1 -1
- package/lib/ProForm/utils/useShouldUpdate.d.ts +1 -0
- package/lib/ProForm/utils/useShouldUpdate.js +50 -1
- package/lib/ProIcon/style/index.less +0 -2
- package/lib/ProLayout/components/Layout/Menu/FoldMenu/index.js +33 -4
- package/lib/ProLayout/components/Layout/Menu/FoldMenu/style/index.less +0 -2
- package/lib/ProLayout/components/Layout/Menu/OpenMenu/index.js +7 -2
- package/lib/ProLayout/components/Layout/Menu/SideMenu/index.js +2 -1
- package/lib/ProLayout/components/Layout/Menu/SideMenu/style/index.less +0 -2
- package/lib/ProLayout/components/Layout/Menu/index.js +4 -1
- package/lib/ProLayout/components/Layout/Menu/style/index.less +0 -2
- package/lib/ProLayout/components/Layout/Notice/style/index.less +0 -2
- package/lib/ProLayout/components/ProCollapse/PropTypes.d.ts +8 -3
- package/lib/ProLayout/components/ProCollapse/index.js +27 -3
- package/lib/ProLayout/components/ProCollapse/style/index.less +148 -4
- package/lib/ProLayout/components/ProFooter/style/index.less +0 -2
- package/lib/ProLayout/components/ProHeader/components/ProBackBtn/style/index.less +0 -2
- package/lib/ProLayout/components/ProHeader/style/index.less +0 -2
- package/lib/ProLayout/index.d.ts +0 -11
- package/lib/ProLayout/index.js +51 -32
- package/lib/ProLayout/propTypes.d.ts +9 -0
- package/lib/ProLayout/style/index.less +0 -2
- package/lib/ProLayout/utils/index.d.ts +7 -0
- package/lib/ProLayout/utils/index.js +15 -0
- package/lib/ProSelect/index.less +0 -2
- package/lib/ProSelect/utils/index.js +34 -5
- package/lib/ProStep/components/Item/index.js +1 -2
- package/lib/ProStep/style/index.less +0 -2
- package/lib/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +1 -1
- package/lib/ProTable/hooks/useAntdTable.d.ts +3 -0
- package/lib/ProTable/hooks/useAntdTable.js +71 -36
- package/lib/ProTable/index.d.ts +3 -7
- package/lib/ProTable/index.js +8 -13
- package/lib/ProTable/propsType.d.ts +3 -2
- package/lib/ProTable/style/index.less +4 -6
- package/lib/ProTabs/style/index.less +0 -2
- package/lib/ProThemeTools/index.d.ts +0 -7
- package/lib/ProThemeTools/index.js +5 -12
- package/lib/ProThemeTools/style/index.less +0 -2
- package/lib/ProTooltip/style/index.less +0 -2
- package/lib/ProTree/components/ProTreeSelect/style/index.less +0 -2
- package/lib/ProTree/style/index.less +0 -2
- package/lib/ProTreeModal/style/index.less +0 -2
- package/lib/ProUpload/style/index.less +0 -2
- package/lib/ProViewer/style/index.less +0 -2
- package/lib/style/theme/antd.less +0 -2
- package/package.json +7 -6
- package/tests/__mocks__/fileMock.js +1 -0
- package/tests/__mocks__/zatUtils.js +27 -0
- package/tests/setup.ts +484 -0
- package/tests/test-utils.tsx +81 -0
- package/dist/index.esm.css +0 -6445
- package/dist/index.esm.js +0 -3
- package/dist/less.esm.css +0 -5871
- package/dist/less.esm.js +0 -3
@@ -1,5 +1,3 @@
|
|
1
|
-
/* @root-entry-name: 'default'; */
|
2
|
-
/* @import (reference) '~antd/es/style/themes/index.less'; */
|
3
1
|
|
4
2
|
.pro-edit-table {
|
5
3
|
td[rowspan]{
|
@@ -81,7 +79,7 @@
|
|
81
79
|
}
|
82
80
|
}
|
83
81
|
|
84
|
-
.drag-wrapper {
|
82
|
+
.pro-edit-table-drag-wrapper {
|
85
83
|
display: flex;
|
86
84
|
justify-content: flex-end;
|
87
85
|
.anticon {
|
@@ -90,7 +88,7 @@
|
|
90
88
|
cursor: pointer;
|
91
89
|
}
|
92
90
|
}
|
93
|
-
.drag-wrapper.no-check {
|
91
|
+
.pro-edit-table-drag-wrapper.no-check {
|
94
92
|
.anticon {
|
95
93
|
margin-right: 0;
|
96
94
|
}
|
@@ -1,6 +1,64 @@
|
|
1
1
|
import { isEqual, isFunction, isObject } from 'lodash';
|
2
2
|
import { validate } from '@zat-design/utils';
|
3
3
|
var isEmpty = validate.isEmpty;
|
4
|
+
|
5
|
+
// 比较策略接口
|
6
|
+
|
7
|
+
// 数字类型标准化函数
|
8
|
+
var normalizeNumberValue = function normalizeNumberValue(value) {
|
9
|
+
if (value === null || value === undefined || value === '') return null;
|
10
|
+
var num = Number(value);
|
11
|
+
return Number.isNaN(num) ? null : num;
|
12
|
+
};
|
13
|
+
|
14
|
+
// InputNumber 比较策略
|
15
|
+
var inputNumberStrategy = {
|
16
|
+
compare: function compare(val1, val2) {
|
17
|
+
var num1 = normalizeNumberValue(val1);
|
18
|
+
var num2 = normalizeNumberValue(val2);
|
19
|
+
return num1 === num2;
|
20
|
+
}
|
21
|
+
};
|
22
|
+
|
23
|
+
// ProNumberRange 比较策略
|
24
|
+
var proNumberRangeStrategy = {
|
25
|
+
compare: function compare(val1, val2) {
|
26
|
+
if (!Array.isArray(val1) || !Array.isArray(val2)) return false;
|
27
|
+
if (val1.length !== val2.length) return false;
|
28
|
+
return val1.every(function (item, index) {
|
29
|
+
var num1 = normalizeNumberValue(item);
|
30
|
+
var num2 = normalizeNumberValue(val2[index]);
|
31
|
+
return num1 === num2;
|
32
|
+
});
|
33
|
+
}
|
34
|
+
};
|
35
|
+
|
36
|
+
// 数字类型处理函数
|
37
|
+
var handleNumberTypeDiff = function handleNumberTypeDiff(params) {
|
38
|
+
var originalValue = params.originalValue,
|
39
|
+
value = params.value,
|
40
|
+
type = params.type;
|
41
|
+
var isEmptyVal = isEmpty(value);
|
42
|
+
var isEmptyOrg = isEmpty(originalValue);
|
43
|
+
|
44
|
+
// 都为空视为相等
|
45
|
+
if (isEmptyOrg && isEmptyVal) return 'same';
|
46
|
+
|
47
|
+
// 如果原始值为空 且当前有值的话 视为新增
|
48
|
+
if (isEmptyOrg && !isEmptyVal) return 'add';
|
49
|
+
|
50
|
+
// 根据类型选择对应的比较策略
|
51
|
+
var compareStrategy;
|
52
|
+
if (type === 'InputNumber') {
|
53
|
+
compareStrategy = inputNumberStrategy;
|
54
|
+
} else if (type === 'ProNumberRange') {
|
55
|
+
compareStrategy = proNumberRangeStrategy;
|
56
|
+
} else {
|
57
|
+
return 'changed'; // 未知类型视为已改变
|
58
|
+
}
|
59
|
+
return compareStrategy.compare(value, originalValue) ? 'same' : 'changed';
|
60
|
+
};
|
61
|
+
|
4
62
|
// 过滤对象中undefined字段
|
5
63
|
// 防止{a: '1'} {a: '1', b: undefined | null}被认为不相等
|
6
64
|
var filterObject = function filterObject(data) {
|
@@ -36,7 +94,9 @@ export var diffOriginal = function diffOriginal(params) {
|
|
36
94
|
onDiff = params.onDiff,
|
37
95
|
originRecord = params.originRecord,
|
38
96
|
record = params.record,
|
39
|
-
index = params.index
|
97
|
+
index = params.index,
|
98
|
+
type = params.type;
|
99
|
+
|
40
100
|
// 支持传入自定义比较事件
|
41
101
|
if (isFunction(onDiff)) {
|
42
102
|
var diffRes = onDiff({
|
@@ -54,6 +114,13 @@ export var diffOriginal = function diffOriginal(params) {
|
|
54
114
|
return diffRes;
|
55
115
|
}
|
56
116
|
}
|
117
|
+
|
118
|
+
// 数字类型特殊处理
|
119
|
+
if (['InputNumber', 'ProNumberRange'].includes(type)) {
|
120
|
+
return handleNumberTypeDiff(params);
|
121
|
+
}
|
122
|
+
|
123
|
+
// 其他类型使用原有逻辑
|
57
124
|
var _value = filterObject(value);
|
58
125
|
var _originalValue = filterObject(originalValue);
|
59
126
|
var isEmptyVal = isEmpty(_value);
|
@@ -42,6 +42,11 @@ function useEnum(codes, value, compose) {
|
|
42
42
|
fieldNames = _ref3$fieldNames === void 0 ? {} : _ref3$fieldNames,
|
43
43
|
_ref3$clear = _ref3.clear,
|
44
44
|
clear = _ref3$clear === void 0 ? true : _ref3$clear;
|
45
|
+
|
46
|
+
// 存在子应用自管理枚举时,需要根据其指定的cacheKey进行缓存
|
47
|
+
if (cacheKey !== 'zat-design-pro-component-cacheKey') {
|
48
|
+
baseEnumStorage = null;
|
49
|
+
}
|
45
50
|
var catchData = getEnumData(storage, cacheKey, baseEnumStorage);
|
46
51
|
|
47
52
|
// 默认枚举缓存数据
|
@@ -38,7 +38,7 @@ var FormFooter = function FormFooter(props) {
|
|
38
38
|
form.setFieldsValue(searchCache[formId]);
|
39
39
|
}
|
40
40
|
}, [formId]);
|
41
|
-
var
|
41
|
+
var nextOnOk = function nextOnOk() {
|
42
42
|
var _modifiedForm$__INTER;
|
43
43
|
if (formId) {
|
44
44
|
var values = form.getFieldsValue();
|
@@ -53,14 +53,14 @@ var FormFooter = function FormFooter(props) {
|
|
53
53
|
// 使用自定义验证逻辑
|
54
54
|
form.validateFields().then(function () {
|
55
55
|
onOk();
|
56
|
-
}).catch(function () {
|
57
|
-
|
56
|
+
}).catch(function (error) {
|
57
|
+
console.warn('ProForm validateFields error', error);
|
58
58
|
});
|
59
59
|
} else {
|
60
60
|
onOk();
|
61
61
|
}
|
62
62
|
};
|
63
|
-
var
|
63
|
+
var nextOnCancel = function nextOnCancel() {
|
64
64
|
if (formId && searchCache[formId]) {
|
65
65
|
delete searchCache[formId];
|
66
66
|
window.sessionStorage.setItem(PRO_FORM_CACHE, JSON.stringify(searchCache));
|
@@ -71,13 +71,13 @@ var FormFooter = function FormFooter(props) {
|
|
71
71
|
children: [/*#__PURE__*/_jsx(Button, _objectSpread(_objectSpread({
|
72
72
|
type: "primary",
|
73
73
|
htmlType: onOk ? 'button' : 'submit',
|
74
|
-
onClick:
|
74
|
+
onClick: nextOnOk,
|
75
75
|
disabled: confirmLoading,
|
76
76
|
loading: confirmLoading
|
77
77
|
}, okButtonProps), {}, {
|
78
78
|
children: okChildren || okText || "".concat(locale.ProForm.search)
|
79
79
|
})), /*#__PURE__*/_jsx(Button, _objectSpread(_objectSpread({
|
80
|
-
onClick:
|
80
|
+
onClick: nextOnCancel
|
81
81
|
}, cancelButtonProps), {}, {
|
82
82
|
children: cancelChildren || cancelText || "".concat(locale.ProForm.reset)
|
83
83
|
})), children]
|
@@ -1,10 +1,9 @@
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
2
|
-
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
3
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
4
3
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
5
4
|
var _excluded = ["className", "format"];
|
6
5
|
import { DatePicker as AntDatePicker } from 'antd';
|
7
|
-
import { isFunction, isString, isObject,
|
6
|
+
import { isFunction, isString, isObject, omit } from 'lodash';
|
8
7
|
import classNames from 'classnames';
|
9
8
|
import dayjs from 'dayjs';
|
10
9
|
import React from 'react';
|
@@ -23,64 +22,50 @@ var DatePicker = function DatePicker(props) {
|
|
23
22
|
valueType = _ref.valueType;
|
24
23
|
var isView = typeof props.isView === 'boolean' ? props.isView : isViewCon; // 组件可直接接收isView参数, 优先级高
|
25
24
|
|
26
|
-
var initialConfig = useProConfig('DatePicker');
|
27
|
-
var
|
25
|
+
var initialConfig = useProConfig('DatePicker') || {};
|
26
|
+
var nextFormat = format;
|
27
|
+
var nextClassName = classNames(_defineProperty({
|
28
28
|
'full-form-item': true
|
29
29
|
}, className, !!className));
|
30
|
-
var _viewFormat = Array.isArray(format) ? format[0] : format;
|
31
|
-
var tempFormat = Array.isArray(format) ? format : [format];
|
32
|
-
if (isFunction(format)) {
|
33
|
-
tempFormat = [];
|
34
|
-
}
|
35
|
-
var _format = uniq([].concat(_toConsumableArray(tempFormat), ['YYYY-MM-DD', 'YYYYMMDD', 'YYYY/MM/DD', 'YYYY_MM_DD', 'YYYY.MM.DD'])).filter(function (formatKey) {
|
36
|
-
return !!formatKey;
|
37
|
-
});
|
38
30
|
if (isView) {
|
39
31
|
var value = rest.value;
|
40
32
|
var viewChildren = null;
|
41
33
|
if (!value) {
|
42
34
|
viewChildren = null;
|
43
35
|
} else if (typeof format === 'string' && isObject(value)) {
|
44
|
-
var
|
45
|
-
viewChildren = ((
|
36
|
+
var _format, _ref2;
|
37
|
+
viewChildren = ((_format = (_ref2 = value).format) === null || _format === void 0 ? void 0 : _format.call(_ref2, format)) || value;
|
46
38
|
} else if (isFunction(format)) {
|
47
39
|
viewChildren = format(value);
|
48
40
|
} else if (isString(value)) {
|
49
|
-
viewChildren = dayjs(value).format(
|
41
|
+
viewChildren = dayjs(value).format(format);
|
50
42
|
}
|
51
43
|
return /*#__PURE__*/_jsx(Container, {
|
52
44
|
viewEmpty: viewEmpty,
|
53
45
|
children: viewChildren
|
54
46
|
});
|
55
47
|
}
|
56
|
-
var _defaultShowTime = {
|
57
|
-
format: 'HH:mm:ss'
|
58
|
-
};
|
59
48
|
|
60
49
|
// dateTime模式下默认开启time选择
|
61
|
-
var
|
50
|
+
var restProps = _objectSpread({}, rest);
|
62
51
|
|
63
52
|
// showTime默认值受valueType属性影响
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
53
|
+
|
54
|
+
if (restProps.showTime === false) {
|
55
|
+
restProps.showTime = false;
|
56
|
+
} else if (valueType === 'dateTime') {
|
57
|
+
restProps.showTime = true;
|
58
|
+
nextFormat = 'YYYY-MM-DD HH:mm:ss';
|
68
59
|
}
|
69
60
|
|
70
61
|
// 字符串时间格式兼容
|
71
|
-
if (isString(
|
72
|
-
|
73
|
-
}
|
74
|
-
if (_rest.showTime === true) {
|
75
|
-
_rest.showTime = _objectSpread({}, _defaultShowTime);
|
76
|
-
}
|
77
|
-
if (isObject(_rest.showTime)) {
|
78
|
-
_rest.showTime = Object.assign(_defaultShowTime, _rest.showTime);
|
62
|
+
if (isString(restProps.value)) {
|
63
|
+
restProps.value = dayjs(restProps.value);
|
79
64
|
}
|
80
65
|
return /*#__PURE__*/_jsx(AntDatePicker, _objectSpread(_objectSpread(_objectSpread({}, initialConfig), {}, {
|
81
|
-
format:
|
82
|
-
},
|
83
|
-
className:
|
66
|
+
format: nextFormat
|
67
|
+
}, omit(restProps, ['otherProps'])), {}, {
|
68
|
+
className: nextClassName
|
84
69
|
}));
|
85
70
|
};
|
86
71
|
export default DatePicker;
|
@@ -3,6 +3,7 @@ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
3
3
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
4
4
|
var _excluded = ["type", "confirm", "component", "fieldProps", "contextProps", "before", "after", "getValueProps", "valuePropName", "valueType", "isView", "viewRender"];
|
5
5
|
import React from 'react';
|
6
|
+
import { omit } from 'lodash';
|
6
7
|
import ConfirmWrapper from "../../../../components/render/ConfirmWrapper";
|
7
8
|
import { FieldProvider } from "../../../../utils/useFieldProps";
|
8
9
|
import * as componentMap from "../../../../../index";
|
@@ -20,16 +21,16 @@ var wrapperMap = {
|
|
20
21
|
// 增加middleware根据配置增加多层包裹
|
21
22
|
var getComRender = function getComRender(component, props, componentProps) {
|
22
23
|
var wrappers = Object.keys(wrapperMap);
|
23
|
-
var
|
24
|
+
var renderComponent = component;
|
24
25
|
wrappers.forEach(function (item) {
|
25
26
|
if (item in props) {
|
26
27
|
var Wrapper = wrapperMap[item];
|
27
|
-
|
28
|
-
children:
|
28
|
+
renderComponent = /*#__PURE__*/_jsx(Wrapper, _objectSpread(_objectSpread(_objectSpread({}, componentProps), _defineProperty({}, item, props[item])), {}, {
|
29
|
+
children: renderComponent
|
29
30
|
}));
|
30
31
|
}
|
31
32
|
});
|
32
|
-
return
|
33
|
+
return renderComponent;
|
33
34
|
};
|
34
35
|
|
35
36
|
/** 渲染组件 */
|
@@ -53,8 +54,8 @@ var ComRender = function ComRender(props) {
|
|
53
54
|
var mergedGetValueProps = getValueProps || function (val) {
|
54
55
|
return _defineProperty({}, valuePropName, val);
|
55
56
|
};
|
56
|
-
var
|
57
|
-
var componentProps = _objectSpread(_objectSpread(_objectSpread({}, fieldProps), rest),
|
57
|
+
var nextProps = mergedGetValueProps(fieldProps.value);
|
58
|
+
var componentProps = omit(_objectSpread(_objectSpread(_objectSpread({}, fieldProps), rest), nextProps), ['onFieldChange']);
|
58
59
|
var isSeparator = (props === null || props === void 0 || (_props$component = props.component) === null || _props$component === void 0 || (_props$component = _props$component.props) === null || _props$component === void 0 ? void 0 : _props$component.className) === 'group-separator';
|
59
60
|
if (isSeparator && isView) {
|
60
61
|
var _props$component2;
|
@@ -73,14 +74,14 @@ var ComRender = function ComRender(props) {
|
|
73
74
|
});
|
74
75
|
}
|
75
76
|
var Component = component ? ( /*#__PURE__*/React.cloneElement(component, _objectSpread({}, componentProps))) : /*#__PURE__*/_jsx(TypeComponent, _objectSpread({}, componentProps));
|
76
|
-
var
|
77
|
+
var renderComponent = getComRender(Component, props, componentProps);
|
77
78
|
return /*#__PURE__*/_jsx(FieldProvider, {
|
78
79
|
value: _objectSpread(_objectSpread({}, contextProps), {}, {
|
79
80
|
valueType: valueType,
|
80
81
|
type: type,
|
81
82
|
isView: isView
|
82
83
|
}),
|
83
|
-
children:
|
84
|
+
children: renderComponent
|
84
85
|
});
|
85
86
|
};
|
86
87
|
export default ComRender;
|
@@ -36,9 +36,7 @@ export var useTransformColumns = function useTransformColumns(params) {
|
|
36
36
|
var _ref = fieldProps || {},
|
37
37
|
mode = _ref.mode,
|
38
38
|
onChange = _ref.onChange,
|
39
|
-
|
40
|
-
comDisabled = _ref.disabled,
|
41
|
-
onBlur = _ref.onBlur;
|
39
|
+
comDisabled = _ref.disabled;
|
42
40
|
var _disabled = disabled || comDisabled;
|
43
41
|
var columnName = names ? names[index] : [].concat(name, index);
|
44
42
|
|
@@ -79,6 +77,11 @@ export var useTransformColumns = function useTransformColumns(params) {
|
|
79
77
|
desensitization: desensitization
|
80
78
|
});
|
81
79
|
}, changedCallback, [value, show, fieldProps, _disabled, columnName, type]);
|
80
|
+
|
81
|
+
// 从处理后的fieldProps中获取事件处理器
|
82
|
+
var _ref2 = reactiveProps.fieldProps || {},
|
83
|
+
onFieldChange = _ref2.onFieldChange,
|
84
|
+
onBlur = _ref2.onBlur;
|
82
85
|
if (reactiveProps.show === false) {
|
83
86
|
return [];
|
84
87
|
}
|
@@ -103,7 +106,17 @@ export var useTransformColumns = function useTransformColumns(params) {
|
|
103
106
|
// @ts-ignore
|
104
107
|
newValue = normalize === null || normalize === void 0 ? void 0 : normalize(newValue);
|
105
108
|
}
|
106
|
-
|
109
|
+
|
110
|
+
// 根据模式选择值管理方式
|
111
|
+
if (names) {
|
112
|
+
// 独立字段模式:设置单个字段值 + 触发整体校验
|
113
|
+
form.setFieldValue(columnName, newValue);
|
114
|
+
// 确保触发Group整体的校验
|
115
|
+
internalChange === null || internalChange === void 0 || internalChange(newValue, args[1], index);
|
116
|
+
} else {
|
117
|
+
// 数组值模式
|
118
|
+
internalChange === null || internalChange === void 0 || internalChange(newValue, args[1], index);
|
119
|
+
}
|
107
120
|
var values = form.getFieldValue(namePath);
|
108
121
|
var originRow = namePath !== null && namePath !== void 0 && namePath.length ? cloneDeep(values) : undefined;
|
109
122
|
onChange === null || onChange === void 0 || onChange.apply(void 0, args);
|
@@ -1,4 +1,10 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import type { GroupType } from './propsType';
|
3
|
-
|
4
|
-
|
3
|
+
/**
|
4
|
+
* 1. 外层过滤FormItem相关属性, 但是子元素上的 required [disabled] [show] rules [fieldProps] [component] 需要取到并
|
5
|
+
* 2.
|
6
|
+
*
|
7
|
+
* render内部能力 show, component, value, onChange, disabled, clearNotShow, fieldProps
|
8
|
+
*/
|
9
|
+
declare const Group: React.FC<GroupType>;
|
10
|
+
export default Group;
|
@@ -2,8 +2,8 @@ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
3
3
|
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
4
4
|
import { Space } from 'antd';
|
5
|
-
import React
|
6
|
-
import {
|
5
|
+
import React from 'react';
|
6
|
+
import { omit } from 'lodash';
|
7
7
|
import classnames from 'classnames';
|
8
8
|
import { insertSeparator } from "./utils";
|
9
9
|
import { useTransformColumns } from "./hooks";
|
@@ -39,14 +39,14 @@ var Group = function Group(props) {
|
|
39
39
|
namePath = contextProps.namePath,
|
40
40
|
index = contextProps.index,
|
41
41
|
isView = contextProps.isView;
|
42
|
-
var
|
42
|
+
var nextOption = React.useRef([]);
|
43
43
|
|
44
44
|
// 组合onChange
|
45
45
|
var handleChange = function handleChange(value, option, index) {
|
46
|
-
var
|
47
|
-
|
48
|
-
|
49
|
-
onChange(
|
46
|
+
var nextValue = props.value ? _toConsumableArray(props.value) : [];
|
47
|
+
nextValue[index] = value;
|
48
|
+
nextOption.current[index] = option;
|
49
|
+
onChange(nextValue, nextOption.current);
|
50
50
|
};
|
51
51
|
var columnsProps = useTransformColumns({
|
52
52
|
columns: children,
|
@@ -62,7 +62,7 @@ var Group = function Group(props) {
|
|
62
62
|
desensitizationKey: desensitizationKey
|
63
63
|
});
|
64
64
|
var columns = insertSeparator(columnsProps, space);
|
65
|
-
var
|
65
|
+
var nextClassName = classnames(_defineProperty({
|
66
66
|
'pro-group': true,
|
67
67
|
'pro-group-diy-width': columns.some(function (item) {
|
68
68
|
var _item$fieldProps;
|
@@ -73,7 +73,7 @@ var Group = function Group(props) {
|
|
73
73
|
})
|
74
74
|
}, "".concat(className), className));
|
75
75
|
return /*#__PURE__*/_jsx("div", {
|
76
|
-
className:
|
76
|
+
className: nextClassName,
|
77
77
|
id: id,
|
78
78
|
children: space.compact || space !== null && space !== void 0 && space.separator ? /*#__PURE__*/_jsx(Space.Compact, {
|
79
79
|
children: columns.map(function (column, index) {
|
@@ -105,10 +105,4 @@ var Group = function Group(props) {
|
|
105
105
|
}))
|
106
106
|
});
|
107
107
|
};
|
108
|
-
export default
|
109
|
-
// 基本props比较 只比较关键的
|
110
|
-
if (!isEqual(prevProps === null || prevProps === void 0 ? void 0 : prevProps.value, nextProps === null || nextProps === void 0 ? void 0 : nextProps.value) || (prevProps === null || prevProps === void 0 ? void 0 : prevProps.disabled) !== (nextProps === null || nextProps === void 0 ? void 0 : nextProps.disabled) || !isEqual(prevProps === null || prevProps === void 0 ? void 0 : prevProps.children, nextProps === null || nextProps === void 0 ? void 0 : nextProps.children)) {
|
111
|
-
return false;
|
112
|
-
}
|
113
|
-
return true;
|
114
|
-
});
|
108
|
+
export default Group;
|