ronds-metadata 1.2.38 → 1.2.39
Sign up to get free protection for your applications and to get access to all the features.
- package/es/api/index.js +83 -131
- package/es/comps/DynamicPorts/comps/ContextMenu.js +3 -11
- package/es/comps/DynamicPorts/comps/DragNode.js +2 -7
- package/es/comps/DynamicPorts/comps/GraphHandler/index.js +4 -5
- package/es/comps/DynamicPorts/comps/NodeElement.js +1 -4
- package/es/comps/DynamicPorts/comps/contextMenu/EdgeContextMenu/index.js +3 -6
- package/es/comps/DynamicPorts/comps/contextMenu/GraphContextMenu/index.js +3 -7
- package/es/comps/DynamicPorts/comps/contextMenu/NodeContextMenu/index.js +18 -21
- package/es/comps/DynamicPorts/comps/shape/edge.js +5 -18
- package/es/comps/DynamicPorts/comps/shape/node.js +4 -17
- package/es/comps/DynamicPorts/constant/index.js +2 -5
- package/es/comps/DynamicPorts/graph.d.ts +2 -2
- package/es/comps/DynamicPorts/graph.js +228 -312
- package/es/comps/DynamicPorts/index.js +39 -58
- package/es/comps/DynamicPorts/utils.js +21 -25
- package/es/comps/Editable/DataCell/ButtonCell.js +4 -10
- package/es/comps/Editable/DataCell/ColorPicker.js +2 -7
- package/es/comps/Editable/DataCell/Input.js +5 -14
- package/es/comps/Editable/DataCell/Number.js +3 -10
- package/es/comps/Editable/DataCell/Select.js +7 -14
- package/es/comps/Editable/DataCell/Switch.js +2 -7
- package/es/comps/Editable/comps/EditableAction.js +8 -12
- package/es/comps/Editable/comps/EditableCell.js +16 -26
- package/es/comps/Editable/comps/EditableHeardCell.js +21 -34
- package/es/comps/Editable/comps/EditableRow.js +49 -59
- package/es/comps/Editable/comps/Texty.js +36 -72
- package/es/comps/Editable/index.js +67 -112
- package/es/comps/Editable/interface.d.ts +1 -1
- package/es/comps/Editable/utils.js +0 -1
- package/es/comps/FileView/index.js +65 -101
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Checkbox.js +8 -13
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Color.js +8 -4
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Date.js +6 -2
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Input.js +8 -4
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/List.js +6 -11
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/MutiSelect.js +6 -10
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Number.js +6 -2
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Obj.js +6 -11
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Password.js +8 -4
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Radio.js +8 -13
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Select.js +6 -10
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Switch.js +6 -2
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Table.js +6 -11
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/TextArea.js +6 -3
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/Cell/Upload.js +2 -5
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/HOC/index.js +86 -109
- package/es/comps/FormGenerator/comps/Canvas/core/RenderField/index.js +3 -7
- package/es/comps/FormGenerator/comps/Canvas/core/index.js +54 -91
- package/es/comps/FormGenerator/comps/Canvas/core/index.less +23 -23
- package/es/comps/FormGenerator/comps/Canvas/index.js +8 -15
- package/es/comps/FormGenerator/comps/Settings/index.js +16 -30
- package/es/comps/FormGenerator/comps/Sidebar/Elements.js +23 -22
- package/es/comps/FormGenerator/comps/Sidebar/index.js +6 -2
- package/es/comps/FormGenerator/index.js +3 -9
- package/es/comps/FormGenerator/interface.d.ts +1 -1
- package/es/comps/FormGenerator/settings/index.js +12 -11
- package/es/comps/FormGenerator/settings/ruleConfig.js +0 -1
- package/es/comps/FormGenerator/transformer.js +40 -105
- package/es/comps/Icons/index.js +4 -7
- package/es/comps/JsonEdit/index.js +25 -50
- package/es/comps/JsonView/index.js +7 -21
- package/es/comps/JsonView/index.less +41 -41
- package/es/comps/MdEdit/index.js +7 -10
- package/es/comps/MdEdit/index.less +6 -6
- package/es/comps/MdEditPro/index.d.ts +10 -0
- package/es/comps/MdEditPro/index.js +22 -0
- package/es/comps/MdEditPro/index.less +74 -0
- package/es/comps/MdNavbar/index.js +17 -40
- package/es/comps/MdNavbar/utils.js +0 -4
- package/es/comps/MdView/index.js +7 -11
- package/es/comps/MdView/index.less +353 -353
- package/es/comps/MetadataEdit/components/MetaFieldsEdit.js +129 -183
- package/es/comps/MetadataEdit/components/MetaPropsEdit.js +11 -27
- package/es/comps/MetadataEdit/hooks/index.js +3 -11
- package/es/comps/MetadataEdit/index.js +25 -58
- package/es/comps/MetadataEdit/index.less +10 -10
- package/es/comps/MetadataEdit/type.d.ts +20 -20
- package/es/comps/MetadataEditV2/components/MetaFieldsEdit.js +17 -33
- package/es/comps/MetadataEditV2/components/MetaPropsEdit.js +15 -29
- package/es/comps/MetadataEditV2/hooks/index.js +5 -12
- package/es/comps/MetadataEditV2/index.js +30 -65
- package/es/comps/MetadataForm/DataCell/Array.js +12 -23
- package/es/comps/MetadataForm/DataCell/Input.js +12 -32
- package/es/comps/MetadataForm/DataCell/Number.js +10 -21
- package/es/comps/MetadataForm/DataCell/Ref.js +87 -121
- package/es/comps/MetadataForm/DataCell/Select.js +127 -222
- package/es/comps/MetadataForm/DataCell/Switch.js +7 -14
- package/es/comps/MetadataForm/DataCell/layout/TableArray.js +93 -164
- package/es/comps/MetadataForm/HOC/index.js +20 -37
- package/es/comps/MetadataForm/HOC/index.less +41 -41
- package/es/comps/MetadataForm/hooks/index.js +12 -38
- package/es/comps/MetadataForm/index.js +37 -72
- package/es/comps/MetadataForm/interface.d.ts +3 -3
- package/es/comps/MetadataForm/utils.js +0 -14
- package/es/comps/Split/index.js +20 -22
- package/es/config.js +0 -4
- package/es/framework/RxStore/demo/index.js +9 -10
- package/es/framework/RxStore/hooks.d.ts +9 -9
- package/es/framework/RxStore/hooks.js +10 -35
- package/es/framework/RxStore/store.d.ts +4 -4
- package/es/framework/RxStore/store.js +0 -10
- package/es/framework/fg/index.js +18 -80
- package/es/framework/fg/interface.d.ts +2 -2
- package/es/framework/fg/utils.js +0 -10
- package/es/framework/graph/index.d.ts +2 -2
- package/es/framework/graph/index.js +55 -110
- package/es/framework/hooks/use-async-memo.js +3 -7
- package/es/framework/hooks/use-sync-scroll.js +2 -15
- package/es/framework/http/cache.js +25 -32
- package/es/framework/http/cancel.js +1 -7
- package/es/framework/http/index.js +22 -82
- package/es/framework/http/msgpack.js +0 -4
- package/es/framework/http/msgpack5/index.js +2 -12
- package/es/framework/http/msgpack5/lib/codecs/DateCodec.js +1 -13
- package/es/framework/http/msgpack5/lib/decoder.js +10 -68
- package/es/framework/http/msgpack5/lib/encoder.js +8 -36
- package/es/framework/http/msgpack5/lib/helpers.js +3 -2
- package/es/framework/http/msgpack5/lib/streams.js +0 -18
- package/es/framework/libs/jquery.min.js +1009 -1696
- package/es/framework/locale/dil8/di18n.js +4 -15
- package/es/framework/locale/dil8/translate.js +0 -14
- package/es/framework/locale/dil8/util.js +0 -3
- package/es/framework/locale/index.js +2 -3
- package/es/framework/metadata/MetadataService.js +39 -78
- package/es/framework/metadata/index.js +4 -70
- package/es/framework/metadata/types.d.ts +98 -98
- package/es/framework/rxjs-hooks/useMemoSubject.js +0 -2
- package/es/framework/rxjs-hooks/useObservable.js +2 -4
- package/es/framework/rxjs-hooks/useObservableState.js +8 -14
- package/es/index.d.ts +1 -0
- package/es/index.js +2 -1
- package/es/theme.less +79 -79
- package/es/utils.js +58 -97
- package/package.json +104 -102
@@ -1,6 +1,5 @@
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
2
2
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
3
|
-
|
4
3
|
/*
|
5
4
|
* @Author: wangxian
|
6
5
|
* @Date: 2023-02-08 14:45:46
|
@@ -29,20 +28,16 @@ var EMPTY_PROP = {
|
|
29
28
|
value: {}
|
30
29
|
}]
|
31
30
|
};
|
32
|
-
|
33
31
|
var renderProp = function renderProp(node, setting) {
|
34
32
|
var _prop = deepClone(EMPTY_PROP);
|
35
|
-
|
36
33
|
var _setting = setting && deepClone(setting) || {};
|
37
|
-
|
38
34
|
_prop.id = (_setting === null || _setting === void 0 ? void 0 : _setting.id) || node.id;
|
39
|
-
_prop.type = node.param.type;
|
40
|
-
|
35
|
+
_prop.type = node.param.type;
|
36
|
+
// ref类型加上refId
|
41
37
|
if (node.param.type === 'ref') {
|
42
38
|
_prop.refId = "".concat(_prop.id, "_ref");
|
43
|
-
}
|
44
|
-
|
45
|
-
|
39
|
+
}
|
40
|
+
// array类型加上 items
|
46
41
|
if (node.param.type === 'array') {
|
47
42
|
var _items = {
|
48
43
|
type: 'ref',
|
@@ -50,7 +45,6 @@ var renderProp = function renderProp(node, setting) {
|
|
50
45
|
};
|
51
46
|
_prop.items = _items;
|
52
47
|
}
|
53
|
-
|
54
48
|
var typeValue = _setting[node.param.type];
|
55
49
|
delete _setting[node.param.type];
|
56
50
|
_prop.fields[0].value = _defineProperty({
|
@@ -59,257 +53,199 @@ var renderProp = function renderProp(node, setting) {
|
|
59
53
|
})
|
60
54
|
}, node.param.type, _objectSpread(_objectSpread({}, node.param.rule || {}), typeValue));
|
61
55
|
return _prop;
|
62
|
-
};
|
63
|
-
|
64
|
-
|
56
|
+
};
|
57
|
+
// FG配置生成 metedata
|
65
58
|
export var transFG2Schema = function transFG2Schema(nodes, settings, _types, schemaId) {
|
66
59
|
try {
|
67
60
|
var schema = deepClone(EMPTY_OBJ);
|
68
|
-
|
69
61
|
if (schemaId) {
|
70
62
|
schema[0].id = schemaId;
|
71
63
|
}
|
72
|
-
|
73
64
|
var __types__ = _types || {};
|
74
|
-
|
75
65
|
var props = [];
|
76
66
|
var types = [];
|
77
|
-
|
78
67
|
for (var i = 0; i < nodes.length; i++) {
|
79
68
|
var _nodes$i, _nodes$i$param;
|
80
|
-
|
81
69
|
if ((_nodes$i = nodes[i]) === null || _nodes$i === void 0 ? void 0 : (_nodes$i$param = _nodes$i.param) === null || _nodes$i$param === void 0 ? void 0 : _nodes$i$param.types) {
|
82
70
|
__types__[nodes[i].id] = {
|
83
71
|
id: nodes[i].id,
|
84
72
|
nodes: nodes[i].param.types
|
85
73
|
};
|
86
74
|
}
|
87
|
-
|
88
75
|
var _prop = renderProp(nodes[i], settings && settings[nodes[i].id] ? settings[nodes[i].id] : nodes[i].param.setting);
|
89
|
-
|
90
76
|
props.push(_prop);
|
91
77
|
}
|
92
|
-
|
93
|
-
|
94
|
-
|
78
|
+
schema[0].properties = [].concat(props);
|
79
|
+
// 整个表格的扩展规则
|
95
80
|
if (settings && (settings === null || settings === void 0 ? void 0 : settings.formSetting)) {
|
96
81
|
schema[0].fields[0].value = deepClone(settings.formSetting);
|
97
82
|
} else {
|
98
83
|
delete schema[0].fields;
|
99
84
|
}
|
100
|
-
|
101
85
|
if (__types__) {
|
102
86
|
var typeKeys = Object.keys(__types__);
|
103
|
-
|
104
87
|
for (var _i = 0; _i < typeKeys.length; _i++) {
|
105
|
-
var _type = transFG2Schema(__types__[typeKeys[_i]].nodes,
|
88
|
+
var _type = transFG2Schema(__types__[typeKeys[_i]].nodes,
|
89
|
+
// 没有传入内部类的情况 不需要传
|
106
90
|
_types && settings["".concat(typeKeys[_i], "_ref")], undefined, "".concat(__types__[typeKeys[_i]].id, "_ref"));
|
107
|
-
|
108
91
|
if (_type) {
|
109
92
|
types.push(_type[0]);
|
110
93
|
}
|
111
94
|
}
|
112
95
|
}
|
113
|
-
|
114
96
|
if (types.length > 0) {
|
115
97
|
schema[0].types = [].concat(types);
|
116
98
|
}
|
117
|
-
|
118
99
|
return schema;
|
119
100
|
} catch (error) {
|
120
101
|
console.warn('transFG2Schema.err', error);
|
121
102
|
}
|
122
103
|
};
|
123
|
-
|
124
104
|
var renderJson = function renderJson(comps, type, id, field) {
|
125
105
|
var _comps = deepClone(comps);
|
126
|
-
|
127
106
|
var node = _comps.find(function (it) {
|
128
107
|
return it.type === type;
|
129
108
|
});
|
130
|
-
|
131
109
|
if (node) {
|
132
110
|
var _field$common;
|
133
|
-
|
134
111
|
node.id = id;
|
135
112
|
node.name = (field === null || field === void 0 ? void 0 : (_field$common = field.common) === null || _field$common === void 0 ? void 0 : _field$common.label) || node.name;
|
136
113
|
}
|
137
|
-
|
138
114
|
var setting = {};
|
139
|
-
|
140
115
|
if (field) {
|
141
116
|
var _field = deepClone(field);
|
142
|
-
|
143
117
|
_field = _objectSpread(_objectSpread({}, _field), _field.common);
|
144
118
|
_field.id = id;
|
145
119
|
delete _field.common;
|
146
120
|
setting = _defineProperty({}, id, _objectSpread({}, _field));
|
147
121
|
}
|
148
|
-
|
149
122
|
return {
|
150
123
|
node: node,
|
151
124
|
setting: setting
|
152
125
|
};
|
153
126
|
};
|
154
|
-
|
155
127
|
var getTypeJson = function getTypeJson(id, type, field) {
|
156
128
|
/* */
|
157
129
|
var res = {
|
158
130
|
node: {},
|
159
131
|
setting: {}
|
160
132
|
};
|
161
|
-
|
162
133
|
if (type === 'text') {
|
163
134
|
var _field$text, _field$text2, _field$text4, _field$text6, _field$text8, _field$text10;
|
164
|
-
|
165
135
|
// input
|
166
136
|
if (!(field === null || field === void 0 ? void 0 : (_field$text = field.text) === null || _field$text === void 0 ? void 0 : _field$text.type)) {
|
167
137
|
res = renderJson(basicComps, 'input', id, field);
|
168
|
-
}
|
169
|
-
|
170
|
-
|
138
|
+
}
|
139
|
+
// textarea
|
171
140
|
if ((field === null || field === void 0 ? void 0 : (_field$text2 = field.text) === null || _field$text2 === void 0 ? void 0 : _field$text2.type) === 'textarea') {
|
172
141
|
var _field$text3;
|
173
|
-
|
174
142
|
field === null || field === void 0 ? true : (_field$text3 = field.text) === null || _field$text3 === void 0 ? true : delete _field$text3.type;
|
175
143
|
res = renderJson(basicComps, 'textarea', id, field);
|
176
|
-
}
|
177
|
-
|
178
|
-
|
144
|
+
}
|
145
|
+
// date
|
179
146
|
if ((field === null || field === void 0 ? void 0 : (_field$text4 = field.text) === null || _field$text4 === void 0 ? void 0 : _field$text4.type) === 'datePicker') {
|
180
147
|
var _field$text5;
|
181
|
-
|
182
148
|
field === null || field === void 0 ? true : (_field$text5 = field.text) === null || _field$text5 === void 0 ? true : delete _field$text5.type;
|
183
149
|
res = renderJson(basicComps, 'date', id, field);
|
184
|
-
}
|
185
|
-
|
186
|
-
|
150
|
+
}
|
151
|
+
// color
|
187
152
|
if ((field === null || field === void 0 ? void 0 : (_field$text6 = field.text) === null || _field$text6 === void 0 ? void 0 : _field$text6.type) === 'colorPicker') {
|
188
153
|
var _field$text7;
|
189
|
-
|
190
154
|
field === null || field === void 0 ? true : (_field$text7 = field.text) === null || _field$text7 === void 0 ? true : delete _field$text7.type;
|
191
155
|
res = renderJson(complexComps, 'color', id, field);
|
192
|
-
}
|
193
|
-
|
194
|
-
|
156
|
+
}
|
157
|
+
// password
|
195
158
|
if ((field === null || field === void 0 ? void 0 : (_field$text8 = field.text) === null || _field$text8 === void 0 ? void 0 : _field$text8.type) === 'password') {
|
196
159
|
var _field$text9;
|
197
|
-
|
198
160
|
field === null || field === void 0 ? true : (_field$text9 = field.text) === null || _field$text9 === void 0 ? true : delete _field$text9.type;
|
199
161
|
res = renderJson(complexComps, 'password', id, field);
|
200
|
-
}
|
201
|
-
|
202
|
-
|
162
|
+
}
|
163
|
+
// upload
|
203
164
|
if ((field === null || field === void 0 ? void 0 : (_field$text10 = field.text) === null || _field$text10 === void 0 ? void 0 : _field$text10.type) === 'upload') {
|
204
165
|
var _field$text11;
|
205
|
-
|
206
166
|
field === null || field === void 0 ? true : (_field$text11 = field.text) === null || _field$text11 === void 0 ? true : delete _field$text11.type;
|
207
167
|
res = renderJson(complexComps, 'upload', id, field);
|
208
168
|
}
|
209
|
-
}
|
210
|
-
|
211
|
-
|
169
|
+
}
|
170
|
+
// number
|
212
171
|
if (type === 'number') {
|
213
172
|
res = renderJson(basicComps, 'number', id, field);
|
214
|
-
}
|
215
|
-
|
216
|
-
|
173
|
+
}
|
174
|
+
// switch
|
217
175
|
if (type === 'bool') {
|
218
176
|
res = renderJson(basicComps, 'switch', id, field);
|
219
|
-
}
|
220
|
-
|
221
|
-
|
177
|
+
}
|
178
|
+
// enum
|
222
179
|
if (type === 'enum') {
|
223
180
|
var _field$enum, _field$enum2, _field$enum3, _field$enum4, _field$enum5, _field$enum6, _field$enum7, _field$enum8;
|
224
|
-
|
225
181
|
// select
|
226
182
|
if ((field === null || field === void 0 ? void 0 : (_field$enum = field.enum) === null || _field$enum === void 0 ? void 0 : _field$enum.type) !== 'checkbox' && !((_field$enum2 = field.enum) === null || _field$enum2 === void 0 ? void 0 : _field$enum2.isMutiple)) {
|
227
183
|
res = renderJson(basicComps, 'select', id, field);
|
228
|
-
}
|
229
|
-
|
230
|
-
|
184
|
+
}
|
185
|
+
// mutiSelect
|
231
186
|
if ((field === null || field === void 0 ? void 0 : (_field$enum3 = field.enum) === null || _field$enum3 === void 0 ? void 0 : _field$enum3.type) !== 'checkbox' && ((_field$enum4 = field.enum) === null || _field$enum4 === void 0 ? void 0 : _field$enum4.isMutiple)) {
|
232
187
|
res = renderJson(basicComps, 'mutiSelect', id, field);
|
233
|
-
}
|
234
|
-
|
235
|
-
|
188
|
+
}
|
189
|
+
// checkbox
|
236
190
|
if ((field === null || field === void 0 ? void 0 : (_field$enum5 = field.enum) === null || _field$enum5 === void 0 ? void 0 : _field$enum5.type) === 'checkbox' && ((_field$enum6 = field.enum) === null || _field$enum6 === void 0 ? void 0 : _field$enum6.isMutiple)) {
|
237
191
|
res = renderJson(complexComps, 'checkbox', id, field);
|
238
|
-
}
|
239
|
-
|
240
|
-
|
192
|
+
}
|
193
|
+
// radio
|
241
194
|
if ((field === null || field === void 0 ? void 0 : (_field$enum7 = field.enum) === null || _field$enum7 === void 0 ? void 0 : _field$enum7.type) === 'checkbox' && !((_field$enum8 = field.enum) === null || _field$enum8 === void 0 ? void 0 : _field$enum8.isMutiple)) {
|
242
195
|
res = renderJson(complexComps, 'radio', id, field);
|
243
196
|
}
|
244
|
-
}
|
245
|
-
|
246
|
-
|
197
|
+
}
|
198
|
+
// obj
|
247
199
|
if (type === 'ref') {
|
248
200
|
res = renderJson(layoutComps, 'obj', id, field);
|
249
|
-
}
|
250
|
-
|
251
|
-
|
201
|
+
}
|
202
|
+
// list
|
252
203
|
if (type === 'array') {
|
253
204
|
res = renderJson(layoutComps, 'list', id, field);
|
254
205
|
}
|
255
|
-
|
256
206
|
return res;
|
257
207
|
};
|
258
|
-
|
259
208
|
var processProps = function processProps(prop) {
|
260
209
|
// 获取是什么类型的组件
|
261
210
|
var obj = getTypeJson(prop.id, prop.type, (prop === null || prop === void 0 ? void 0 : prop.fields) && (prop === null || prop === void 0 ? void 0 : prop.fields[0].value));
|
262
211
|
return obj;
|
263
212
|
};
|
264
|
-
|
265
213
|
var getTypeParent = function getTypeParent(refId, _props) {
|
266
214
|
var _ = _props.find(function (it) {
|
267
215
|
var _it$items;
|
268
|
-
|
269
216
|
return (it === null || it === void 0 ? void 0 : it.refId) === refId || (it === null || it === void 0 ? void 0 : (_it$items = it.items) === null || _it$items === void 0 ? void 0 : _it$items.refId) === refId;
|
270
217
|
});
|
271
|
-
|
272
218
|
return _;
|
273
|
-
};
|
274
|
-
|
275
|
-
|
219
|
+
};
|
220
|
+
// metadata 生成FG配置
|
276
221
|
export var transSchema2FG = function transSchema2FG(schema) {
|
277
222
|
var _schema$, _schema$2;
|
278
|
-
|
279
223
|
var res = {
|
280
224
|
nodes: [],
|
281
225
|
settings: {},
|
282
226
|
types: {}
|
283
227
|
};
|
284
|
-
var _props = schema[0].properties;
|
285
|
-
|
228
|
+
var _props = schema[0].properties;
|
229
|
+
// 表单扩展规则
|
286
230
|
var _formFields = (_schema$ = schema[0]) === null || _schema$ === void 0 ? void 0 : _schema$.fields;
|
287
|
-
|
288
231
|
if (_formFields) {
|
289
232
|
res.settings = _objectSpread(_objectSpread({}, res.settings), {}, {
|
290
233
|
formSetting: _formFields[0].value
|
291
234
|
});
|
292
235
|
}
|
293
|
-
|
294
236
|
for (var i = 0; i < _props.length; i++) {
|
295
237
|
var obj = processProps(_props[i]);
|
296
238
|
res.nodes.push(obj.node);
|
297
239
|
res.settings = _objectSpread(_objectSpread({}, res.settings), obj.setting);
|
298
240
|
}
|
299
|
-
|
300
241
|
var _types = (_schema$2 = schema[0]) === null || _schema$2 === void 0 ? void 0 : _schema$2.types;
|
301
|
-
|
302
242
|
if (_types && _types.length > 0) {
|
303
243
|
for (var _i2 = 0; _i2 < _types.length; _i2++) {
|
304
244
|
var _parent = getTypeParent(_types[_i2].id, _props);
|
305
|
-
|
306
245
|
if (_parent) {
|
307
246
|
var _schema = deepClone(_types[_i2]);
|
308
|
-
|
309
247
|
_schema.id = "".concat(_parent.id, "_ref");
|
310
|
-
|
311
248
|
var _ = transSchema2FG([_schema]);
|
312
|
-
|
313
249
|
res.types[_parent.id] = {
|
314
250
|
id: _parent.id,
|
315
251
|
nodes: _.nodes
|
@@ -318,6 +254,5 @@ export var transSchema2FG = function transSchema2FG(schema) {
|
|
318
254
|
}
|
319
255
|
}
|
320
256
|
}
|
321
|
-
|
322
257
|
return res;
|
323
258
|
};
|
package/es/comps/Icons/index.js
CHANGED
@@ -1,23 +1,20 @@
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
2
2
|
import React from "react";
|
3
|
-
|
4
3
|
/*
|
5
4
|
* @Author: wangxian
|
6
5
|
* @Date: 2022-05-28 11:04:20
|
7
6
|
* @LastEditTime: 2023-02-24 09:09:51
|
8
7
|
*/
|
9
8
|
import '../../framework/libs/iconfont/iconfont.css';
|
10
|
-
|
11
9
|
var Icon = function Icon(props) {
|
12
10
|
var type = props.type,
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
11
|
+
_props$className = props.className,
|
12
|
+
className = _props$className === void 0 ? '' : _props$className,
|
13
|
+
_props$style = props.style,
|
14
|
+
style = _props$style === void 0 ? {} : _props$style;
|
17
15
|
return /*#__PURE__*/React.createElement("span", {
|
18
16
|
className: "mt mt-".concat(type, " ").concat(className),
|
19
17
|
style: _objectSpread({}, style)
|
20
18
|
});
|
21
19
|
};
|
22
|
-
|
23
20
|
export default Icon;
|
@@ -24,26 +24,25 @@ import 'codemirror/addon/edit/closebrackets.js';
|
|
24
24
|
import 'codemirror/addon/edit/matchbrackets.js';
|
25
25
|
import './index.less';
|
26
26
|
import { SQL_DICO } from './constant';
|
27
|
-
|
28
27
|
var SqlEdit = function SqlEdit(props) {
|
29
28
|
var _props$theme = props.theme,
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
29
|
+
theme = _props$theme === void 0 ? 'idea' : _props$theme,
|
30
|
+
_props$extraDico = props.extraDico,
|
31
|
+
extraDico = _props$extraDico === void 0 ? [] : _props$extraDico,
|
32
|
+
_props$mode = props.mode,
|
33
|
+
mode = _props$mode === void 0 ? 'text/x-mysql' : _props$mode,
|
34
|
+
_props$isLineNumbers = props.isLineNumbers,
|
35
|
+
isLineNumbers = _props$isLineNumbers === void 0 ? true : _props$isLineNumbers,
|
36
|
+
_props$isGutters = props.isGutters,
|
37
|
+
isGutters = _props$isGutters === void 0 ? true : _props$isGutters,
|
38
|
+
_props$readOnly = props.readOnly,
|
39
|
+
readOnly = _props$readOnly === void 0 ? false : _props$readOnly,
|
40
|
+
_props$styleActiveLin = props.styleActiveLine,
|
41
|
+
styleActiveLine = _props$styleActiveLin === void 0 ? false : _props$styleActiveLin,
|
42
|
+
value = props.value,
|
43
|
+
onChange = props.onChange,
|
44
|
+
onSelectChange = props.onSelectChange,
|
45
|
+
onReWriteEnter = props.onReWriteEnter;
|
47
46
|
var textareaRef = React.useRef(null);
|
48
47
|
var firstLoadRef = React.useRef(true);
|
49
48
|
var editorRef = React.useRef();
|
@@ -57,10 +56,8 @@ var SqlEdit = function SqlEdit(props) {
|
|
57
56
|
F7: function F7(__editor) {
|
58
57
|
var textJson = JSON.parse(__editor.getValue());
|
59
58
|
var result = JSON.stringify(textJson, undefined, 2);
|
60
|
-
|
61
59
|
__editor.setValue(result);
|
62
60
|
} // 代码格式化
|
63
|
-
|
64
61
|
};
|
65
62
|
|
66
63
|
if (onReWriteEnter) {
|
@@ -68,22 +65,18 @@ var SqlEdit = function SqlEdit(props) {
|
|
68
65
|
onReWriteEnter();
|
69
66
|
};
|
70
67
|
}
|
71
|
-
|
72
68
|
return _extraKeys;
|
73
69
|
}, [mode, onReWriteEnter]);
|
74
70
|
var dico = React.useMemo(function () {
|
75
71
|
var res = SQL_DICO;
|
76
|
-
|
77
72
|
if (extraDico.length > 0) {
|
78
73
|
res = [].concat(_toConsumableArray(SQL_DICO), _toConsumableArray(extraDico));
|
79
74
|
}
|
80
|
-
|
81
75
|
return res;
|
82
76
|
}, [extraDico]);
|
83
77
|
var initEdit = React.useCallback(function () {
|
84
78
|
if (textareaRef.current === null) return;
|
85
79
|
if (!firstLoadRef.current) return;
|
86
|
-
|
87
80
|
var _editor = CodeMirror.fromTextArea(textareaRef.current, {
|
88
81
|
value: value,
|
89
82
|
tabSize: 4,
|
@@ -105,21 +98,17 @@ var SqlEdit = function SqlEdit(props) {
|
|
105
98
|
styleActiveLine: styleActiveLine,
|
106
99
|
extraKeys: extraKeys
|
107
100
|
});
|
108
|
-
|
109
101
|
_editor.on('keypress', function (__editor) {
|
110
102
|
if (mode === 'text/x-mysql') {
|
111
103
|
__editor.showHint();
|
112
104
|
}
|
113
105
|
});
|
114
|
-
|
115
106
|
_editor.on('change', function (__editor) {
|
116
107
|
onChange && onChange(__editor.getValue());
|
117
108
|
});
|
118
|
-
|
119
109
|
_editor.on('cursorActivity', function (__editor) {
|
120
110
|
onSelectChange && onSelectChange(__editor.getSelection());
|
121
111
|
});
|
122
|
-
|
123
112
|
editorRef.current = _editor;
|
124
113
|
firstLoadRef.current = false;
|
125
114
|
}, [dico, isGutters, readOnly, isLineNumbers]);
|
@@ -129,7 +118,6 @@ var SqlEdit = function SqlEdit(props) {
|
|
129
118
|
}, [textareaRef, initEdit]);
|
130
119
|
React.useEffect(function () {
|
131
120
|
if (!editorRef.current) return;
|
132
|
-
|
133
121
|
if (value || value === '') {
|
134
122
|
editorRef.current.setValue(value);
|
135
123
|
editorRef.current.focus();
|
@@ -142,12 +130,9 @@ var SqlEdit = function SqlEdit(props) {
|
|
142
130
|
editorRef.current.setOption('lineNumbers', isLineNumbers);
|
143
131
|
editorRef.current.setOption('gutters', isGutters ? ['CodeMirror-linenumbers', 'CodeMirror-foldgutter', 'CodeMirror-lint-markers'] : []);
|
144
132
|
}, [readOnly, isLineNumbers, isGutters]);
|
145
|
-
|
146
133
|
var hint = function hint(__editor) {
|
147
134
|
var cur = __editor.getCursor();
|
148
|
-
|
149
135
|
var token = __editor.getTokenAt(cur);
|
150
|
-
|
151
136
|
var searchString = token.string;
|
152
137
|
return {
|
153
138
|
list: suggest(searchString),
|
@@ -155,33 +140,28 @@ var SqlEdit = function SqlEdit(props) {
|
|
155
140
|
to: CodeMirror.Pos(cur.line, token.end)
|
156
141
|
};
|
157
142
|
};
|
158
|
-
|
159
143
|
var suggest = function suggest(searchString) {
|
160
144
|
/*
|
161
145
|
we will score which suggesion should appears first, the higer the score, the higer is the appearance order
|
162
146
|
*/
|
163
147
|
var token = searchString;
|
164
148
|
var isDot = false;
|
165
|
-
|
166
149
|
if (searchString.startsWith('.')) {
|
167
150
|
token = searchString.substring(1);
|
168
151
|
isDot = true;
|
169
152
|
}
|
170
|
-
|
171
153
|
token = searchString.toLowerCase();
|
172
154
|
var resu = [];
|
173
|
-
var N = dico.length;
|
174
|
-
|
155
|
+
var N = dico.length;
|
156
|
+
// init scoring: only retains and score suggestions which contain the searchString
|
175
157
|
for (var i = 0; i < N; i++) {
|
176
|
-
var suggestion = null;
|
177
|
-
|
158
|
+
var suggestion = null;
|
159
|
+
// 支持.之后联想
|
178
160
|
var _suggestion = {
|
179
161
|
className: dico[i].className,
|
180
162
|
text: "".concat(isDot ? '.' : '').concat(dico[i].text)
|
181
163
|
};
|
182
|
-
|
183
164
|
var keyword = _suggestion.text.toLowerCase();
|
184
|
-
|
185
165
|
if (keyword.startsWith(token)) {
|
186
166
|
// add N to the score of keywords which begin with the token to make them raise up in the suggestion list
|
187
167
|
suggestion = _objectSpread(_objectSpread({}, {
|
@@ -192,30 +172,25 @@ var SqlEdit = function SqlEdit(props) {
|
|
192
172
|
score: N - i
|
193
173
|
}), _suggestion);
|
194
174
|
}
|
195
|
-
|
196
175
|
if (suggestion) resu.push(suggestion);
|
197
|
-
}
|
198
|
-
|
199
|
-
|
176
|
+
}
|
177
|
+
// case suggestion for "."
|
200
178
|
if (searchString.startsWith('.')) {
|
201
179
|
// raise score of columns, decrease the score of sql keyword
|
202
180
|
resu.forEach(function (s) {
|
203
181
|
if (s.className === 'column') s.score += N;else if (s.className === 'sql') s.score -= N;
|
204
182
|
return s;
|
205
183
|
});
|
206
|
-
}
|
207
|
-
|
208
|
-
|
184
|
+
}
|
185
|
+
// console.log(searchString);
|
209
186
|
return resu.sort(function (a, b) {
|
210
187
|
return b.score - a.score;
|
211
188
|
});
|
212
189
|
};
|
213
|
-
|
214
190
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("textarea", {
|
215
191
|
ref: textareaRef,
|
216
192
|
defaultValue: value,
|
217
193
|
className: "my-txt"
|
218
194
|
}));
|
219
195
|
};
|
220
|
-
|
221
196
|
export default SqlEdit;
|
@@ -1,15 +1,12 @@
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
2
2
|
import React from 'react';
|
3
3
|
import './index.less';
|
4
|
-
|
5
4
|
var JsonView = function JsonView(props) {
|
6
5
|
var json = props.json;
|
7
|
-
|
8
6
|
var _React$useState = React.useState(''),
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
7
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
8
|
+
myJson = _React$useState2[0],
|
9
|
+
setMyJson = _React$useState2[1];
|
13
10
|
React.useEffect(function () {
|
14
11
|
try {
|
15
12
|
var textJson = JSON.parse(json);
|
@@ -17,20 +14,18 @@ var JsonView = function JsonView(props) {
|
|
17
14
|
setMyJson(result);
|
18
15
|
} catch (e) {
|
19
16
|
setMyJson('This is not right JSON');
|
20
|
-
}
|
21
|
-
|
22
|
-
}, [json]);
|
23
|
-
|
17
|
+
}
|
18
|
+
// eslint-disable-next-line
|
19
|
+
}, [json]);
|
20
|
+
// JSON格式转化
|
24
21
|
var syntaxHighlight = function syntaxHighlight(_json) {
|
25
22
|
if (typeof json != 'string') {
|
26
23
|
_json = JSON.stringify(json, undefined, 2);
|
27
24
|
}
|
28
|
-
|
29
25
|
var index = 0;
|
30
26
|
_json = _json.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
|
31
27
|
return _json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+-]?\d+)?|{|}|\[|\])/g, function (match) {
|
32
28
|
var cls = 'number';
|
33
|
-
|
34
29
|
if (/^"/.test(match)) {
|
35
30
|
if (/:$/.test(match)) {
|
36
31
|
cls = 'key';
|
@@ -51,36 +46,29 @@ var JsonView = function JsonView(props) {
|
|
51
46
|
} else if (/\]/.test(match)) {
|
52
47
|
return "".concat(match, "</span>");
|
53
48
|
}
|
54
|
-
|
55
49
|
return "<span class='".concat(cls, "'>").concat(match, "</span>");
|
56
50
|
});
|
57
51
|
};
|
58
|
-
|
59
52
|
var onClickDom = function onClickDom(e) {
|
60
53
|
var target = e.target;
|
61
|
-
|
62
54
|
if (target.nodeName === 'I') {
|
63
55
|
if (target.className === 'open') {
|
64
56
|
target.className = 'close';
|
65
57
|
var dom = e.target.nextSibling;
|
66
58
|
dom.style.display = 'none';
|
67
59
|
var childNode = document.createElement('em');
|
68
|
-
|
69
60
|
if (dom.className === 'Array') {
|
70
61
|
var childrenList = dom.children;
|
71
62
|
var newList = [];
|
72
|
-
|
73
63
|
for (var i = 0; i < childrenList.length; i++) {
|
74
64
|
if (childrenList[i].nodeName === 'SPAN') {
|
75
65
|
newList.push(childrenList[i]);
|
76
66
|
}
|
77
67
|
}
|
78
|
-
|
79
68
|
childNode.innerHTML = "".concat(dom.className, "[<em style=\"color:#25aae2;\">").concat(newList.length, "</em>]");
|
80
69
|
} else {
|
81
70
|
childNode.innerHTML = dom.className;
|
82
71
|
}
|
83
|
-
|
84
72
|
e.target.parentNode.insertBefore(childNode, e.target.nextSibling);
|
85
73
|
} else if (target.className === 'close') {
|
86
74
|
e.target.parentNode.removeChild(e.target.nextSibling);
|
@@ -90,7 +78,6 @@ var JsonView = function JsonView(props) {
|
|
90
78
|
}
|
91
79
|
}
|
92
80
|
};
|
93
|
-
|
94
81
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
95
82
|
style: {
|
96
83
|
height: '100%',
|
@@ -105,5 +92,4 @@ var JsonView = function JsonView(props) {
|
|
105
92
|
}
|
106
93
|
})));
|
107
94
|
};
|
108
|
-
|
109
95
|
export default JsonView;
|