ronds-metadata 1.0.26 → 1.0.30
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/es/comps/MetadataEdit/components/MetaFieldsEdit.js +1 -1
- package/es/comps/MetadataEdit/components/MetaPropsEdit.js +2 -1
- package/es/comps/MetadataEdit/index.js +14 -3
- package/es/comps/MetadataForm/DataCell/Input.js +0 -5
- package/es/comps/MetadataForm/DataCell/Ref.js +4 -15
- package/es/utils.d.ts +1 -0
- package/es/utils.js +27 -0
- package/package.json +1 -1
@@ -16,6 +16,7 @@ import React from 'react';
|
|
16
16
|
import { MinusCircleOutlined, PlusOutlined, ReloadOutlined } from '@ant-design/icons';
|
17
17
|
import { ARRAY_TYPES_OPTIONS, BASIC_TYPES_OPTIONS, NUMBER_FORMAT_OPTIONS } from '../constant';
|
18
18
|
import { useMetaType } from '../hooks';
|
19
|
+
import { guid } from '../../../utils';
|
19
20
|
|
20
21
|
var MetaPropsEdit = function MetaPropsEdit(props) {
|
21
22
|
var form = props.form,
|
@@ -52,7 +53,7 @@ var MetaPropsEdit = function MetaPropsEdit(props) {
|
|
52
53
|
remove = _ref.remove;
|
53
54
|
return /*#__PURE__*/React.createElement(React.Fragment, null, fields.map(function (field, index) {
|
54
55
|
return /*#__PURE__*/React.createElement("div", {
|
55
|
-
key:
|
56
|
+
key: guid()
|
56
57
|
}, /*#__PURE__*/React.createElement("div", {
|
57
58
|
style: {
|
58
59
|
display: 'flex',
|
@@ -42,6 +42,12 @@ var MetadataEdit = function MetadataEdit(props) {
|
|
42
42
|
metaSchema = _React$useState4[0],
|
43
43
|
setMetaSchema = _React$useState4[1];
|
44
44
|
|
45
|
+
var metaSchemaRef = React.useRef({
|
46
|
+
id: '',
|
47
|
+
type: 'object'
|
48
|
+
});
|
49
|
+
var firstLoadRef = React.useRef(true);
|
50
|
+
|
45
51
|
var _React$useState5 = React.useState(false),
|
46
52
|
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
47
53
|
isFields = _React$useState6[0],
|
@@ -66,15 +72,17 @@ var MetadataEdit = function MetadataEdit(props) {
|
|
66
72
|
});
|
67
73
|
}, [form]);
|
68
74
|
React.useEffect(function () {
|
69
|
-
if (initialValues) {
|
75
|
+
if (initialValues && firstLoadRef.current) {
|
70
76
|
form.setFieldsValue(_objectSpread({}, initialValues));
|
71
77
|
setMetaSchema(_objectSpread({}, initialValues));
|
78
|
+
metaSchemaRef.current = initialValues;
|
72
79
|
processFileds(initialValues);
|
80
|
+
firstLoadRef.current = false;
|
73
81
|
}
|
74
82
|
}, [form, initialValues]);
|
75
83
|
|
76
84
|
var onMyFinish = function onMyFinish(values) {
|
77
|
-
var _metaSchema =
|
85
|
+
var _metaSchema = metaSchemaRef.current;
|
78
86
|
_metaSchema.id = values.id;
|
79
87
|
_metaSchema.type = values.type;
|
80
88
|
|
@@ -93,10 +101,13 @@ var MetadataEdit = function MetadataEdit(props) {
|
|
93
101
|
}
|
94
102
|
|
95
103
|
setMetaSchema(_objectSpread({}, _metaSchema));
|
104
|
+
metaSchemaRef.current = _metaSchema;
|
96
105
|
onFinish && onFinish(JSON.stringify(_metaSchema));
|
97
106
|
};
|
98
107
|
|
99
108
|
var onAddFields = function onAddFields(index) {
|
109
|
+
debugger;
|
110
|
+
|
100
111
|
if (index === -1) {
|
101
112
|
var _id = form.getFieldValue('id');
|
102
113
|
|
@@ -112,7 +123,7 @@ var MetadataEdit = function MetadataEdit(props) {
|
|
112
123
|
return;
|
113
124
|
}
|
114
125
|
|
115
|
-
var _properties = form.getFieldValue('properties');
|
126
|
+
var _properties = metaSchemaRef.current.properties || form.getFieldValue('properties');
|
116
127
|
|
117
128
|
var _curFields = _properties[index];
|
118
129
|
|
@@ -33,11 +33,6 @@ function Index(props) {
|
|
33
33
|
color = _React$useState2[0],
|
34
34
|
setColor = _React$useState2[1];
|
35
35
|
|
36
|
-
var _React$useState3 = React.useState(null),
|
37
|
-
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
38
|
-
date = _React$useState4[0],
|
39
|
-
setDate = _React$useState4[1];
|
40
|
-
|
41
36
|
React.useEffect(function () {
|
42
37
|
if ((extraInfo === null || extraInfo === void 0 ? void 0 : extraInfo.type) === 'colorPicker') {
|
43
38
|
setColor(formContext.form.getFieldValue(id));
|
@@ -21,12 +21,12 @@ function Index(props) {
|
|
21
21
|
var _extraInfo$disabled, _extraInfo$disabled2;
|
22
22
|
|
23
23
|
var id = props.id,
|
24
|
-
idx = props.idx,
|
25
24
|
refId = props.refId,
|
26
25
|
disabled = props.disabled,
|
27
26
|
isRefForm = props.isRefForm,
|
28
27
|
initEnumValue = props.initEnumValue,
|
29
|
-
field = props.field
|
28
|
+
field = props.field,
|
29
|
+
name = props.name;
|
30
30
|
var formContext = React.useContext(MetadataFormContext) || {};
|
31
31
|
var extraInfo = useGetExtraInfo(formContext.fields, id, formContext.form);
|
32
32
|
|
@@ -105,7 +105,7 @@ function Index(props) {
|
|
105
105
|
disabled: disabled,
|
106
106
|
isRefForm: true,
|
107
107
|
isShowTypeInfo: formContext.isShowTypeInfo,
|
108
|
-
pName: [id],
|
108
|
+
pName: name || [id],
|
109
109
|
field: field ? field : undefined,
|
110
110
|
isObj: true,
|
111
111
|
initEnumValue: initEnumValue
|
@@ -129,18 +129,7 @@ function Index(props) {
|
|
129
129
|
}
|
130
130
|
});
|
131
131
|
}
|
132
|
-
}, [refId]);
|
133
|
-
// if (formContext.initialValues) {
|
134
|
-
// const _myFormValues = formContext.initialValues;
|
135
|
-
// console.log('idx===============', idx, id, _myFormValues);
|
136
|
-
// let myValue: any = _myFormValues[id];
|
137
|
-
// if (!myValue) return;
|
138
|
-
// if ((idx || idx === 0) && myValue?.length > 0) {
|
139
|
-
// myValue = myValue[idx];
|
140
|
-
// }
|
141
|
-
// }
|
142
|
-
// }, [formContext.initialValues, id, idx, onSearch]);
|
143
|
-
|
132
|
+
}, [refId]);
|
144
133
|
React.useEffect(function () {
|
145
134
|
if (refId) {
|
146
135
|
var arr = refId.split(':');
|
package/es/utils.d.ts
CHANGED
@@ -12,3 +12,4 @@ export declare function useDebounce(fn: Function, delay: number, dep?: Dependenc
|
|
12
12
|
*/
|
13
13
|
export declare function useThrottle(fn: Function, delay: number, dep?: DependencyList): (...args: any[]) => void;
|
14
14
|
export declare function deepClone<T = any>(target: T): T;
|
15
|
+
export declare function guid(): string;
|
package/es/utils.js
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
/*
|
2
|
+
* @Author: your name
|
3
|
+
* @Date: 2021-09-18 14:15:04
|
4
|
+
* @LastEditTime: 2021-12-22 14:10:34
|
5
|
+
* @LastEditors: your name
|
6
|
+
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
7
|
+
* @FilePath: \ronds.metadata\src\utils.ts
|
8
|
+
*/
|
1
9
|
import { useCallback, useEffect, useRef } from 'react';
|
2
10
|
/** 防抖 */
|
3
11
|
|
@@ -78,4 +86,23 @@ export function useThrottle(fn, delay) {
|
|
78
86
|
}
|
79
87
|
export function deepClone(target) {
|
80
88
|
return JSON.parse(JSON.stringify(target));
|
89
|
+
}
|
90
|
+
export function guid() {
|
91
|
+
var id = '',
|
92
|
+
i,
|
93
|
+
random,
|
94
|
+
chars = 'abcdef';
|
95
|
+
id += chars[Math.floor(Math.random() * Math.floor(chars.length))];
|
96
|
+
|
97
|
+
for (i = 1; i < 32; i++) {
|
98
|
+
random = Math.random() * 16 | 0;
|
99
|
+
|
100
|
+
if (i == 8 || i == 12 || i == 16 || i == 20) {
|
101
|
+
id += '-';
|
102
|
+
}
|
103
|
+
|
104
|
+
id += (i == 12 ? 4 : i == 16 ? random & 3 | 8 : random).toString(16);
|
105
|
+
}
|
106
|
+
|
107
|
+
return id;
|
81
108
|
}
|