@luck-design-biz/luckda 0.0.25-23 → 0.0.25-24
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/components/LdTree/index.js +36 -14
- package/es/lowcode/painter/DesignToolbar.js +1 -8
- package/es/lowcode/painter/Ribbon.js +1 -1
- package/es/lowcode/painter/components/ActionBindModal.js +1 -3
- package/es/lowcode/painter/components/DragDrop/DragDropContext.js +1 -1
- package/es/lowcode/painter/components/code-editor/BaseEditor.js +0 -19
- package/es/lowcode/painter/components/code-editor/JSEditor.js +26 -2
- package/es/lowcode/painter/components/field-setting/FieldAttrsModal.js +0 -2
- package/es/lowcode/painter/components/field-setting/FieldRulesModal.js +0 -1
- package/es/lowcode/painter/components/field-setting/SettingUI.js +0 -1
- package/es/lowcode/painter/panel-section/FieldsSetting.js +1 -2
- package/es/lowcode/painter/style/design.less +2 -2
- package/es/lowcode/view/lc-components/Dialog/FunctionDesign.js +7 -3
- package/es/lowcode/view/lc-components/Dialog/index.js +3 -2
- package/es/lowcode/view/lc-components/Tree/index.js +4 -4
- package/lib/components/LdTree/index.js +34 -12
- package/lib/lowcode/painter/DesignToolbar.js +1 -8
- package/lib/lowcode/painter/Ribbon.js +1 -1
- package/lib/lowcode/painter/components/ActionBindModal.js +1 -3
- package/lib/lowcode/painter/components/DragDrop/DragDropContext.js +1 -1
- package/lib/lowcode/painter/components/code-editor/BaseEditor.js +0 -19
- package/lib/lowcode/painter/components/code-editor/JSEditor.js +25 -1
- package/lib/lowcode/painter/components/field-setting/FieldAttrsModal.js +0 -2
- package/lib/lowcode/painter/components/field-setting/FieldRulesModal.js +0 -1
- package/lib/lowcode/painter/components/field-setting/SettingUI.js +0 -1
- package/lib/lowcode/painter/panel-section/FieldsSetting.js +1 -2
- package/lib/lowcode/painter/style/design.less +2 -2
- package/lib/lowcode/view/lc-components/Dialog/FunctionDesign.js +7 -3
- package/lib/lowcode/view/lc-components/Dialog/index.js +3 -2
- package/lib/lowcode/view/lc-components/Tree/index.js +4 -4
- package/package.json +1 -1
|
@@ -7,18 +7,29 @@ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutPr
|
|
|
7
7
|
var _excluded = ["columns", "resources", "actions", "doAction", "wrapperRef", "ldId", "dataSetKey", "defaultParmas", "moduleCode", "readOnly", "title", "rowKey", "treeNodeTitle", "unselectableNodes", "rightMenus", "defaultExpandDeep", "draggable", "onDrop", "className", "treeClassName", "rootAdd", "suppressInit", "afterQuery", "afterInit", "isTree", "service", "dataToTreeFormat", "boxRef", "doubleClickExpand", "onNodeDoubleClick", "width", "height", "treeNodeCheckable", "treeNodeDisableCheckbox", "treeNodeDisable", "treeNodeIcon", "asyncLoad", "parentKey", "onMount", "onUnmount", "onDataSetChange", "onTreeNodeRender", "onlyRoot"],
|
|
8
8
|
_excluded2 = ["onClick"];
|
|
9
9
|
import React, { useState, useRef, useImperativeHandle, forwardRef, useLayoutEffect } from 'react';
|
|
10
|
-
import { isFunction, isNumber, transform, includes, remove, cloneDeep, isNil, differenceBy } from 'lodash';
|
|
10
|
+
import { isFunction, isNumber, transform, includes, remove, cloneDeep, isNil, differenceBy, groupBy, forEach, assign } from 'lodash';
|
|
11
11
|
import { useRequest, useMemoizedFn, useCreation } from 'ahooks';
|
|
12
12
|
import PropTypes from 'prop-types';
|
|
13
13
|
import classNames from 'classnames';
|
|
14
14
|
import { Icon, Popover } from 'luck-design/antd';
|
|
15
15
|
import { LuckTree } from 'luck-design';
|
|
16
|
-
import { formatMessage, dataToTree, dragTreeData
|
|
16
|
+
import { formatMessage, dataToTree, dragTreeData } from '@luck-design-biz/base/utils';
|
|
17
17
|
import { TreeBox } from '@luck-design-biz/base';
|
|
18
18
|
import ldBuilder from "../../helper/ldBuilder";
|
|
19
19
|
import { behaviorCall } from "../../utils";
|
|
20
20
|
import styles from "./index.less";
|
|
21
|
-
var
|
|
21
|
+
var _window$appConfig$con = window.appConfig.constraintKeys,
|
|
22
|
+
PRIMARY = _window$appConfig$con.PRIMARY,
|
|
23
|
+
PARENT = _window$appConfig$con.PARENT;
|
|
24
|
+
var deepForEach = function deepForEach(children, deepForEachFn) {
|
|
25
|
+
forEach(children, function (child) {
|
|
26
|
+
var _child$children;
|
|
27
|
+
if (((_child$children = child.children) === null || _child$children === void 0 ? void 0 : _child$children.length) > 0) {
|
|
28
|
+
deepForEach(child.children, deepForEachFn);
|
|
29
|
+
}
|
|
30
|
+
deepForEachFn(child);
|
|
31
|
+
});
|
|
32
|
+
};
|
|
22
33
|
var LdTree = function LdTree(_ref) {
|
|
23
34
|
var columns = _ref.columns,
|
|
24
35
|
resources = _ref.resources,
|
|
@@ -128,26 +139,37 @@ var LdTree = function LdTree(_ref) {
|
|
|
128
139
|
run(_objectSpread(_objectSpread(_objectSpread({}, params[0]), _params), defaultParams[0]));
|
|
129
140
|
});
|
|
130
141
|
var handleUpdateTree = function handleUpdateTree(type, nodes) {
|
|
131
|
-
var data =
|
|
132
|
-
var
|
|
142
|
+
var data = cloneDeep(dataSource);
|
|
143
|
+
var nodesGroup = groupBy(nodes, PARENT);
|
|
133
144
|
switch (type) {
|
|
134
145
|
case 'delete':
|
|
135
|
-
data
|
|
146
|
+
deepForEach(data, function (child) {
|
|
147
|
+
if (nodesGroup[child[PRIMARY]]) {
|
|
148
|
+
var _child$children2;
|
|
149
|
+
if (((_child$children2 = child.children) === null || _child$children2 === void 0 ? void 0 : _child$children2.length) <= nodesGroup[child[PRIMARY]].length) child.isleaf = true;
|
|
150
|
+
child.children = differenceBy(child.children, nodesGroup[child[PRIMARY]], window.appConfig.constraintKeys.PRIMARY);
|
|
151
|
+
}
|
|
152
|
+
});
|
|
136
153
|
break;
|
|
137
154
|
case 'add':
|
|
138
|
-
data
|
|
155
|
+
deepForEach(data, function (child) {
|
|
156
|
+
if (nodesGroup[child[PRIMARY]]) {
|
|
157
|
+
child.isleaf = false;
|
|
158
|
+
child.children = [].concat(_toConsumableArray(child.children || []), _toConsumableArray(nodesGroup[child[PRIMARY]]));
|
|
159
|
+
}
|
|
160
|
+
});
|
|
139
161
|
break;
|
|
140
162
|
default:
|
|
141
|
-
data
|
|
163
|
+
deepForEach(data, function (child) {
|
|
142
164
|
var findNode = nodes.find(function (n) {
|
|
143
|
-
return n[PRIMARY] ===
|
|
165
|
+
return n[PRIMARY] === child[PRIMARY];
|
|
144
166
|
});
|
|
145
|
-
if (findNode)
|
|
146
|
-
|
|
167
|
+
if (findNode) {
|
|
168
|
+
assign(child, findNode);
|
|
169
|
+
}
|
|
147
170
|
});
|
|
148
171
|
}
|
|
149
|
-
|
|
150
|
-
setDataSource(treeData);
|
|
172
|
+
setDataSource(data);
|
|
151
173
|
};
|
|
152
174
|
useImperativeHandle(wrapperRef, function () {
|
|
153
175
|
return _objectSpread(_objectSpread({}, treeRef.current), {}, {
|
|
@@ -233,7 +255,7 @@ var LdTree = function LdTree(_ref) {
|
|
|
233
255
|
disabled: treeNodeDisable && treeNodeDisable(item)
|
|
234
256
|
};
|
|
235
257
|
if (treeNodeIcon && !isNil(treeNodeIcon(item))) props.icon = treeNodeIcon(item);
|
|
236
|
-
if (!item.isleaf) {
|
|
258
|
+
if (!item.isleaf && !isNil(item.isleaf)) {
|
|
237
259
|
return /*#__PURE__*/React.createElement(LuckTree.TreeNode, _extends({
|
|
238
260
|
isLeaf: false
|
|
239
261
|
}, props), renderTreeNodes(item.children || []));
|
|
@@ -143,7 +143,6 @@ var DesignToolbar = function DesignToolbar(_ref) {
|
|
|
143
143
|
getContainer: function getContainer() {
|
|
144
144
|
return document.getElementById('lc-design-workspace');
|
|
145
145
|
},
|
|
146
|
-
zIndex: 3000,
|
|
147
146
|
onOk: function onOk() {
|
|
148
147
|
return runClearCache({
|
|
149
148
|
moduleCode: getLDMetaAttr('moduleCode')
|
|
@@ -347,7 +346,6 @@ var DesignToolbar = function DesignToolbar(_ref) {
|
|
|
347
346
|
getContainer: function getContainer() {
|
|
348
347
|
return document.getElementById('lc-design-workspace');
|
|
349
348
|
},
|
|
350
|
-
zIndex: 3000,
|
|
351
349
|
onOk: handleOk,
|
|
352
350
|
onCancel: function onCancel() {
|
|
353
351
|
return setShow(false);
|
|
@@ -382,9 +380,6 @@ var DesignToolbar = function DesignToolbar(_ref) {
|
|
|
382
380
|
style: {
|
|
383
381
|
width: 180
|
|
384
382
|
},
|
|
385
|
-
dropdownStyle: {
|
|
386
|
-
zIndex: 3100
|
|
387
|
-
},
|
|
388
383
|
filterOption: false,
|
|
389
384
|
labelInValue: true,
|
|
390
385
|
showSearch: true,
|
|
@@ -410,9 +405,7 @@ var DesignToolbar = function DesignToolbar(_ref) {
|
|
|
410
405
|
})))),
|
|
411
406
|
placement: "bottom",
|
|
412
407
|
height: "94vh",
|
|
413
|
-
footer: false
|
|
414
|
-
// zIndex={3000}
|
|
415
|
-
,
|
|
408
|
+
footer: false,
|
|
416
409
|
headerStyle: {
|
|
417
410
|
padding: '0 48px 0 24px'
|
|
418
411
|
},
|
|
@@ -178,7 +178,6 @@ var ActionBindModal = function ActionBindModal(_ref) {
|
|
|
178
178
|
getContainer: function getContainer() {
|
|
179
179
|
return document.getElementById('lc-design-workspace');
|
|
180
180
|
},
|
|
181
|
-
zIndex: 3000,
|
|
182
181
|
onCancel: handleClose,
|
|
183
182
|
onOk: handleComfirm
|
|
184
183
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -278,8 +277,7 @@ var ActionBindModal = function ActionBindModal(_ref) {
|
|
|
278
277
|
}),
|
|
279
278
|
getPopupContainer: function getPopupContainer() {
|
|
280
279
|
return document.getElementById('lc-design-workspace');
|
|
281
|
-
}
|
|
282
|
-
zIndex: 3000
|
|
280
|
+
}
|
|
283
281
|
}, /*#__PURE__*/React.createElement(Icon, {
|
|
284
282
|
style: {
|
|
285
283
|
marginLeft: 4
|
|
@@ -54,7 +54,7 @@ export default function (_ref) {
|
|
|
54
54
|
onDragMove: handleDragMove
|
|
55
55
|
}, children, /*#__PURE__*/React.createElement(DragOverlay, {
|
|
56
56
|
style: {
|
|
57
|
-
zIndex:
|
|
57
|
+
zIndex: 21
|
|
58
58
|
},
|
|
59
59
|
dropAnimation: null
|
|
60
60
|
}, active && /*#__PURE__*/React.createElement(Overlay, null, active === null || active === void 0 || (_active$component = active.component) === null || _active$component === void 0 ? void 0 : _active$component.name))));
|
|
@@ -4,10 +4,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutPr
|
|
|
4
4
|
var _excluded = ["onChange", "isFullscreen", "style"],
|
|
5
5
|
_excluded2 = ["children", "language", "options"];
|
|
6
6
|
import React, { useEffect, useRef, useImperativeHandle, forwardRef } from 'react';
|
|
7
|
-
import { useMemoizedFn } from 'ahooks';
|
|
8
7
|
import * as monaco from 'monaco-editor';
|
|
9
|
-
import prettier from 'prettier/standalone';
|
|
10
|
-
import parserBabel from 'prettier/parser-babel';
|
|
11
8
|
|
|
12
9
|
/**
|
|
13
10
|
* BaseEditor 组件是一个封装了 monaco 编辑器的 React 组件,支持前向 ref 引用。
|
|
@@ -55,14 +52,6 @@ var BaseEditor = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
55
52
|
rest = _objectWithoutProperties(props, _excluded2);
|
|
56
53
|
var editorRef = useRef(null);
|
|
57
54
|
var editorInstance = useRef(null);
|
|
58
|
-
var prettierFormetter = useMemoizedFn(function (unformattedCode) {
|
|
59
|
-
return prettier.format(unformattedCode, {
|
|
60
|
-
parser: 'babel',
|
|
61
|
-
plugins: [parserBabel],
|
|
62
|
-
tabWidth: 2,
|
|
63
|
-
useTabs: false
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
55
|
|
|
67
56
|
// 初始化编辑器实例
|
|
68
57
|
useEffect(function () {
|
|
@@ -87,14 +76,6 @@ var BaseEditor = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
87
76
|
onDidChangeStorage: function onDidChangeStorage() {}
|
|
88
77
|
}
|
|
89
78
|
});
|
|
90
|
-
var originalGetValue = editorInstance.current.getValue.bind(editorInstance.current);
|
|
91
|
-
editorInstance.current.getValue = function () {
|
|
92
|
-
return prettierFormetter(originalGetValue());
|
|
93
|
-
};
|
|
94
|
-
editorInstance.current.addCommand(monaco.KeyMod.CtrlCmd | monaco.KeyMod.Shift | monaco.KeyCode.KeyF, function () {
|
|
95
|
-
var formattedCode = prettierFormetter(originalGetValue());
|
|
96
|
-
editorInstance.current.setValue(formattedCode);
|
|
97
|
-
});
|
|
98
79
|
editorInstance.current.onDidChangeModelContent(function (event) {
|
|
99
80
|
if (onChange) onChange(editorInstance.current.getValue(), event);
|
|
100
81
|
});
|
|
@@ -7,7 +7,9 @@ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
|
7
7
|
var _excluded = ["children", "keywords"];
|
|
8
8
|
import React, { useEffect, forwardRef } from 'react';
|
|
9
9
|
import * as monaco from 'monaco-editor';
|
|
10
|
-
import { isNil } from 'lodash';
|
|
10
|
+
import { isNil, uniqBy, compact } from 'lodash';
|
|
11
|
+
import prettier from 'prettier/standalone';
|
|
12
|
+
import parserBabel from 'prettier/parser-babel';
|
|
11
13
|
import BaseEditor from "./BaseEditor";
|
|
12
14
|
function capitalizeFirstLetter(string) {
|
|
13
15
|
if (isNil(string)) return null;
|
|
@@ -72,7 +74,7 @@ var setupAutocomplete = /*#__PURE__*/function () {
|
|
|
72
74
|
allCompletionItems = allCompletionItems.concat(items);
|
|
73
75
|
});
|
|
74
76
|
return {
|
|
75
|
-
suggestions: allCompletionItems
|
|
77
|
+
suggestions: uniqBy(compact(allCompletionItems), 'label')
|
|
76
78
|
};
|
|
77
79
|
},
|
|
78
80
|
triggerCharacters: ['.', "'", '"'] // 当用户输入点号时触发补全
|
|
@@ -87,6 +89,20 @@ var setupAutocomplete = /*#__PURE__*/function () {
|
|
|
87
89
|
return _ref.apply(this, arguments);
|
|
88
90
|
};
|
|
89
91
|
}();
|
|
92
|
+
var prettierFormetter = function prettierFormetter(unformattedCode) {
|
|
93
|
+
try {
|
|
94
|
+
var formattedCode = prettier.format(unformattedCode, {
|
|
95
|
+
parser: 'babel',
|
|
96
|
+
plugins: [parserBabel],
|
|
97
|
+
tabWidth: 2,
|
|
98
|
+
useTabs: false
|
|
99
|
+
});
|
|
100
|
+
return formattedCode;
|
|
101
|
+
} catch (e) {
|
|
102
|
+
console.error('Prettier formatting error:', e);
|
|
103
|
+
return unformattedCode;
|
|
104
|
+
}
|
|
105
|
+
};
|
|
90
106
|
|
|
91
107
|
/**
|
|
92
108
|
* JSEditor 组件是一个专为 JavaScript 编辑设计的 React 组件,它基于 BaseEditor 组件构建,并集成了自动完成功能。
|
|
@@ -114,6 +130,14 @@ var JSEditor = /*#__PURE__*/forwardRef(function (_ref2, ref) {
|
|
|
114
130
|
keywords = _ref2.keywords,
|
|
115
131
|
rest = _objectWithoutProperties(_ref2, _excluded);
|
|
116
132
|
useEffect(function () {
|
|
133
|
+
var originalGetValue = ref.current.editor.getValue.bind(ref.current.editor);
|
|
134
|
+
ref.current.editor.getValue = function () {
|
|
135
|
+
return prettierFormetter(originalGetValue());
|
|
136
|
+
};
|
|
137
|
+
ref.current.editor.addCommand(monaco.KeyMod.CtrlCmd | monaco.KeyMod.Shift | monaco.KeyCode.KeyF, function () {
|
|
138
|
+
var formattedCode = prettierFormetter(originalGetValue());
|
|
139
|
+
ref.current.editor.setValue(formattedCode);
|
|
140
|
+
});
|
|
117
141
|
setupAutocomplete(monaco, keywords);
|
|
118
142
|
}, []);
|
|
119
143
|
return /*#__PURE__*/React.createElement(BaseEditor, _extends({
|
|
@@ -200,7 +200,6 @@ var FieldAttrsModal = Form.create({
|
|
|
200
200
|
getContainer: function getContainer() {
|
|
201
201
|
return document.getElementById('lc-design-workspace');
|
|
202
202
|
},
|
|
203
|
-
zIndex: 1001,
|
|
204
203
|
onOk: function () {
|
|
205
204
|
var _onOk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
|
|
206
205
|
var subData, _yield$fetchDelAttrs, code;
|
|
@@ -253,7 +252,6 @@ var FieldAttrsModal = Form.create({
|
|
|
253
252
|
getContainer: function getContainer() {
|
|
254
253
|
return document.getElementById('lc-design-workspace');
|
|
255
254
|
},
|
|
256
|
-
zIndex: 1001,
|
|
257
255
|
destroyOnClose: true,
|
|
258
256
|
bodyStyle: {
|
|
259
257
|
marginTop: 0,
|
|
@@ -208,7 +208,6 @@ var SettingUI = function SettingUI(_ref) {
|
|
|
208
208
|
getContainer: function getContainer() {
|
|
209
209
|
return document.getElementById('lc-design-workspace');
|
|
210
210
|
},
|
|
211
|
-
zIndex: 1001,
|
|
212
211
|
onOk: function () {
|
|
213
212
|
var _onOk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
214
213
|
var success;
|
|
@@ -319,8 +319,7 @@ var FieldsSetting = function FieldsSetting(_ref) {
|
|
|
319
319
|
style: {
|
|
320
320
|
position: 'absolute',
|
|
321
321
|
transform: 'none',
|
|
322
|
-
right: 320
|
|
323
|
-
zIndex: 1001
|
|
322
|
+
right: 320
|
|
324
323
|
}
|
|
325
324
|
}, drawerType === 'single' ? /*#__PURE__*/React.createElement(FieldSetting, {
|
|
326
325
|
key: fieldId,
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
pointer-events: none;
|
|
8
8
|
cursor: pointer;
|
|
9
9
|
overflow: visible;
|
|
10
|
-
z-index:
|
|
10
|
+
z-index: 11;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
.selector-item {
|
|
@@ -142,7 +142,7 @@
|
|
|
142
142
|
}
|
|
143
143
|
|
|
144
144
|
.next-overlay-wrapper {
|
|
145
|
-
z-index:
|
|
145
|
+
z-index: 30;
|
|
146
146
|
display: flex;
|
|
147
147
|
flex-direction: column;
|
|
148
148
|
& > div > span {
|
|
@@ -20,7 +20,6 @@ var FunctionDesign = function FunctionDesign(_ref) {
|
|
|
20
20
|
var ctx = useContext();
|
|
21
21
|
useImperativeHandle(apiRef, function () {
|
|
22
22
|
return {
|
|
23
|
-
open: true,
|
|
24
23
|
doOpen: function doOpen() {
|
|
25
24
|
ctx.componentMap.get(id).api.getSelfDom().closest('.ant-modal-root').style.display = 'block';
|
|
26
25
|
},
|
|
@@ -47,8 +46,13 @@ var FunctionDesign = function FunctionDesign(_ref) {
|
|
|
47
46
|
position: 'absolute'
|
|
48
47
|
}
|
|
49
48
|
}, props, {
|
|
50
|
-
|
|
51
|
-
$
|
|
49
|
+
$apiRef: apiRef,
|
|
50
|
+
$designProps: {
|
|
51
|
+
closable: false,
|
|
52
|
+
maskClosable: false,
|
|
53
|
+
visible: true,
|
|
54
|
+
zIndex: 10
|
|
55
|
+
}
|
|
52
56
|
}), children);
|
|
53
57
|
};
|
|
54
58
|
export default FunctionDesign;
|
|
@@ -36,7 +36,8 @@ var LCDialog = function LCDialog(_ref) {
|
|
|
36
36
|
footer = _ref.footer,
|
|
37
37
|
btnGroup = _ref.btnGroup,
|
|
38
38
|
advance = _ref.advance,
|
|
39
|
-
$apiRef = _ref.$apiRef
|
|
39
|
+
$apiRef = _ref.$apiRef,
|
|
40
|
+
$designProps = _ref.$designProps;
|
|
40
41
|
var ctx = useContext();
|
|
41
42
|
var apiRef = useRef();
|
|
42
43
|
var domRef = useRef();
|
|
@@ -170,7 +171,7 @@ var LCDialog = function LCDialog(_ref) {
|
|
|
170
171
|
return setOpen(false);
|
|
171
172
|
},
|
|
172
173
|
destroyOnClose: destroyOnClose
|
|
173
|
-
}), /*#__PURE__*/React.createElement("div", {
|
|
174
|
+
}, $designProps), /*#__PURE__*/React.createElement("div", {
|
|
174
175
|
style: {
|
|
175
176
|
height: 0,
|
|
176
177
|
width: 0,
|
|
@@ -107,11 +107,11 @@ var LCTree = function LCTree(_ref) {
|
|
|
107
107
|
var handleSelect = useMemoizedFn(function (_selectedKeys, e) {
|
|
108
108
|
if (cancelSelect || e.selected) {
|
|
109
109
|
setSelectedKeys(_selectedKeys);
|
|
110
|
+
ctx.doAction(advance.events.onSelect, {
|
|
111
|
+
checkedKeys: _selectedKeys,
|
|
112
|
+
e: e
|
|
113
|
+
});
|
|
110
114
|
}
|
|
111
|
-
ctx.doAction(advance.events.onSelect, {
|
|
112
|
-
checkedKeys: _selectedKeys,
|
|
113
|
-
e: e
|
|
114
|
-
});
|
|
115
115
|
});
|
|
116
116
|
var afterInit = useMemoizedFn(function (treeData, data) {
|
|
117
117
|
var selected = !isNil(defaultSelect) ? executeCode(ctx, defaultSelect, ['treeData'], treeData) : null;
|
|
@@ -26,7 +26,18 @@ var _utils2 = require("../../utils");
|
|
|
26
26
|
var _index = _interopRequireDefault(require("./index.less"));
|
|
27
27
|
var _excluded = ["columns", "resources", "actions", "doAction", "wrapperRef", "ldId", "dataSetKey", "defaultParmas", "moduleCode", "readOnly", "title", "rowKey", "treeNodeTitle", "unselectableNodes", "rightMenus", "defaultExpandDeep", "draggable", "onDrop", "className", "treeClassName", "rootAdd", "suppressInit", "afterQuery", "afterInit", "isTree", "service", "dataToTreeFormat", "boxRef", "doubleClickExpand", "onNodeDoubleClick", "width", "height", "treeNodeCheckable", "treeNodeDisableCheckbox", "treeNodeDisable", "treeNodeIcon", "asyncLoad", "parentKey", "onMount", "onUnmount", "onDataSetChange", "onTreeNodeRender", "onlyRoot"],
|
|
28
28
|
_excluded2 = ["onClick"];
|
|
29
|
-
var
|
|
29
|
+
var _window$appConfig$con = window.appConfig.constraintKeys,
|
|
30
|
+
PRIMARY = _window$appConfig$con.PRIMARY,
|
|
31
|
+
PARENT = _window$appConfig$con.PARENT;
|
|
32
|
+
var deepForEach = function deepForEach(children, deepForEachFn) {
|
|
33
|
+
(0, _lodash.forEach)(children, function (child) {
|
|
34
|
+
var _child$children;
|
|
35
|
+
if (((_child$children = child.children) === null || _child$children === void 0 ? void 0 : _child$children.length) > 0) {
|
|
36
|
+
deepForEach(child.children, deepForEachFn);
|
|
37
|
+
}
|
|
38
|
+
deepForEachFn(child);
|
|
39
|
+
});
|
|
40
|
+
};
|
|
30
41
|
var LdTree = function LdTree(_ref) {
|
|
31
42
|
var columns = _ref.columns,
|
|
32
43
|
resources = _ref.resources,
|
|
@@ -136,26 +147,37 @@ var LdTree = function LdTree(_ref) {
|
|
|
136
147
|
run((0, _objectSpread3.default)((0, _objectSpread3.default)((0, _objectSpread3.default)({}, params[0]), _params), defaultParams[0]));
|
|
137
148
|
});
|
|
138
149
|
var handleUpdateTree = function handleUpdateTree(type, nodes) {
|
|
139
|
-
var data =
|
|
140
|
-
var
|
|
150
|
+
var data = (0, _lodash.cloneDeep)(dataSource);
|
|
151
|
+
var nodesGroup = (0, _lodash.groupBy)(nodes, PARENT);
|
|
141
152
|
switch (type) {
|
|
142
153
|
case 'delete':
|
|
143
|
-
data
|
|
154
|
+
deepForEach(data, function (child) {
|
|
155
|
+
if (nodesGroup[child[PRIMARY]]) {
|
|
156
|
+
var _child$children2;
|
|
157
|
+
if (((_child$children2 = child.children) === null || _child$children2 === void 0 ? void 0 : _child$children2.length) <= nodesGroup[child[PRIMARY]].length) child.isleaf = true;
|
|
158
|
+
child.children = (0, _lodash.differenceBy)(child.children, nodesGroup[child[PRIMARY]], window.appConfig.constraintKeys.PRIMARY);
|
|
159
|
+
}
|
|
160
|
+
});
|
|
144
161
|
break;
|
|
145
162
|
case 'add':
|
|
146
|
-
data
|
|
163
|
+
deepForEach(data, function (child) {
|
|
164
|
+
if (nodesGroup[child[PRIMARY]]) {
|
|
165
|
+
child.isleaf = false;
|
|
166
|
+
child.children = [].concat((0, _toConsumableArray2.default)(child.children || []), (0, _toConsumableArray2.default)(nodesGroup[child[PRIMARY]]));
|
|
167
|
+
}
|
|
168
|
+
});
|
|
147
169
|
break;
|
|
148
170
|
default:
|
|
149
|
-
data
|
|
171
|
+
deepForEach(data, function (child) {
|
|
150
172
|
var findNode = nodes.find(function (n) {
|
|
151
|
-
return n[PRIMARY] ===
|
|
173
|
+
return n[PRIMARY] === child[PRIMARY];
|
|
152
174
|
});
|
|
153
|
-
if (findNode)
|
|
154
|
-
|
|
175
|
+
if (findNode) {
|
|
176
|
+
(0, _lodash.assign)(child, findNode);
|
|
177
|
+
}
|
|
155
178
|
});
|
|
156
179
|
}
|
|
157
|
-
|
|
158
|
-
setDataSource(treeData);
|
|
180
|
+
setDataSource(data);
|
|
159
181
|
};
|
|
160
182
|
(0, _react.useImperativeHandle)(wrapperRef, function () {
|
|
161
183
|
return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, treeRef.current), {}, {
|
|
@@ -241,7 +263,7 @@ var LdTree = function LdTree(_ref) {
|
|
|
241
263
|
disabled: treeNodeDisable && treeNodeDisable(item)
|
|
242
264
|
};
|
|
243
265
|
if (treeNodeIcon && !(0, _lodash.isNil)(treeNodeIcon(item))) props.icon = treeNodeIcon(item);
|
|
244
|
-
if (!item.isleaf) {
|
|
266
|
+
if (!item.isleaf && !(0, _lodash.isNil)(item.isleaf)) {
|
|
245
267
|
return /*#__PURE__*/_react.default.createElement(_luckDesign.LuckTree.TreeNode, (0, _extends2.default)({
|
|
246
268
|
isLeaf: false
|
|
247
269
|
}, props), renderTreeNodes(item.children || []));
|
|
@@ -151,7 +151,6 @@ var DesignToolbar = function DesignToolbar(_ref) {
|
|
|
151
151
|
getContainer: function getContainer() {
|
|
152
152
|
return document.getElementById('lc-design-workspace');
|
|
153
153
|
},
|
|
154
|
-
zIndex: 3000,
|
|
155
154
|
onOk: function onOk() {
|
|
156
155
|
return runClearCache({
|
|
157
156
|
moduleCode: (0, _helper.getLDMetaAttr)('moduleCode')
|
|
@@ -355,7 +354,6 @@ var DesignToolbar = function DesignToolbar(_ref) {
|
|
|
355
354
|
getContainer: function getContainer() {
|
|
356
355
|
return document.getElementById('lc-design-workspace');
|
|
357
356
|
},
|
|
358
|
-
zIndex: 3000,
|
|
359
357
|
onOk: handleOk,
|
|
360
358
|
onCancel: function onCancel() {
|
|
361
359
|
return setShow(false);
|
|
@@ -390,9 +388,6 @@ var DesignToolbar = function DesignToolbar(_ref) {
|
|
|
390
388
|
style: {
|
|
391
389
|
width: 180
|
|
392
390
|
},
|
|
393
|
-
dropdownStyle: {
|
|
394
|
-
zIndex: 3100
|
|
395
|
-
},
|
|
396
391
|
filterOption: false,
|
|
397
392
|
labelInValue: true,
|
|
398
393
|
showSearch: true,
|
|
@@ -418,9 +413,7 @@ var DesignToolbar = function DesignToolbar(_ref) {
|
|
|
418
413
|
})))),
|
|
419
414
|
placement: "bottom",
|
|
420
415
|
height: "94vh",
|
|
421
|
-
footer: false
|
|
422
|
-
// zIndex={3000}
|
|
423
|
-
,
|
|
416
|
+
footer: false,
|
|
424
417
|
headerStyle: {
|
|
425
418
|
padding: '0 48px 0 24px'
|
|
426
419
|
},
|
|
@@ -185,7 +185,6 @@ var ActionBindModal = function ActionBindModal(_ref) {
|
|
|
185
185
|
getContainer: function getContainer() {
|
|
186
186
|
return document.getElementById('lc-design-workspace');
|
|
187
187
|
},
|
|
188
|
-
zIndex: 3000,
|
|
189
188
|
onCancel: handleClose,
|
|
190
189
|
onOk: handleComfirm
|
|
191
190
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -285,8 +284,7 @@ var ActionBindModal = function ActionBindModal(_ref) {
|
|
|
285
284
|
}),
|
|
286
285
|
getPopupContainer: function getPopupContainer() {
|
|
287
286
|
return document.getElementById('lc-design-workspace');
|
|
288
|
-
}
|
|
289
|
-
zIndex: 3000
|
|
287
|
+
}
|
|
290
288
|
}, /*#__PURE__*/_react.default.createElement(_antd.Icon, {
|
|
291
289
|
style: {
|
|
292
290
|
marginLeft: 4
|
|
@@ -63,7 +63,7 @@ function _default(_ref) {
|
|
|
63
63
|
onDragMove: handleDragMove
|
|
64
64
|
}, children, /*#__PURE__*/_react.default.createElement(_core.DragOverlay, {
|
|
65
65
|
style: {
|
|
66
|
-
zIndex:
|
|
66
|
+
zIndex: 21
|
|
67
67
|
},
|
|
68
68
|
dropAnimation: null
|
|
69
69
|
}, active && /*#__PURE__*/_react.default.createElement(_Overlay.default, null, active === null || active === void 0 || (_active$component = active.component) === null || _active$component === void 0 ? void 0 : _active$component.name))));
|
|
@@ -10,10 +10,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
10
10
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
11
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
12
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
-
var _ahooks = require("ahooks");
|
|
14
13
|
var monaco = _interopRequireWildcard(require("monaco-editor"));
|
|
15
|
-
var _standalone = _interopRequireDefault(require("prettier/standalone"));
|
|
16
|
-
var _parserBabel = _interopRequireDefault(require("prettier/parser-babel"));
|
|
17
14
|
var _excluded = ["onChange", "isFullscreen", "style"],
|
|
18
15
|
_excluded2 = ["children", "language", "options"];
|
|
19
16
|
/**
|
|
@@ -62,14 +59,6 @@ var BaseEditor = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
62
59
|
rest = (0, _objectWithoutProperties2.default)(props, _excluded2);
|
|
63
60
|
var editorRef = (0, _react.useRef)(null);
|
|
64
61
|
var editorInstance = (0, _react.useRef)(null);
|
|
65
|
-
var prettierFormetter = (0, _ahooks.useMemoizedFn)(function (unformattedCode) {
|
|
66
|
-
return _standalone.default.format(unformattedCode, {
|
|
67
|
-
parser: 'babel',
|
|
68
|
-
plugins: [_parserBabel.default],
|
|
69
|
-
tabWidth: 2,
|
|
70
|
-
useTabs: false
|
|
71
|
-
});
|
|
72
|
-
});
|
|
73
62
|
|
|
74
63
|
// 初始化编辑器实例
|
|
75
64
|
(0, _react.useEffect)(function () {
|
|
@@ -94,14 +83,6 @@ var BaseEditor = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
94
83
|
onDidChangeStorage: function onDidChangeStorage() {}
|
|
95
84
|
}
|
|
96
85
|
});
|
|
97
|
-
var originalGetValue = editorInstance.current.getValue.bind(editorInstance.current);
|
|
98
|
-
editorInstance.current.getValue = function () {
|
|
99
|
-
return prettierFormetter(originalGetValue());
|
|
100
|
-
};
|
|
101
|
-
editorInstance.current.addCommand(monaco.KeyMod.CtrlCmd | monaco.KeyMod.Shift | monaco.KeyCode.KeyF, function () {
|
|
102
|
-
var formattedCode = prettierFormetter(originalGetValue());
|
|
103
|
-
editorInstance.current.setValue(formattedCode);
|
|
104
|
-
});
|
|
105
86
|
editorInstance.current.onDidChangeModelContent(function (event) {
|
|
106
87
|
if (onChange) onChange(editorInstance.current.getValue(), event);
|
|
107
88
|
});
|
|
@@ -16,6 +16,8 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/obje
|
|
|
16
16
|
var _react = _interopRequireWildcard3(require("react"));
|
|
17
17
|
var monaco = _interopRequireWildcard3(require("monaco-editor"));
|
|
18
18
|
var _lodash = require("lodash");
|
|
19
|
+
var _standalone = _interopRequireDefault(require("prettier/standalone"));
|
|
20
|
+
var _parserBabel = _interopRequireDefault(require("prettier/parser-babel"));
|
|
19
21
|
var _BaseEditor = _interopRequireDefault(require("./BaseEditor"));
|
|
20
22
|
var _excluded = ["children", "keywords"];
|
|
21
23
|
function capitalizeFirstLetter(string) {
|
|
@@ -83,7 +85,7 @@ var setupAutocomplete = /*#__PURE__*/function () {
|
|
|
83
85
|
allCompletionItems = allCompletionItems.concat(items);
|
|
84
86
|
});
|
|
85
87
|
return {
|
|
86
|
-
suggestions: allCompletionItems
|
|
88
|
+
suggestions: (0, _lodash.uniqBy)((0, _lodash.compact)(allCompletionItems), 'label')
|
|
87
89
|
};
|
|
88
90
|
},
|
|
89
91
|
triggerCharacters: ['.', "'", '"'] // 当用户输入点号时触发补全
|
|
@@ -98,6 +100,20 @@ var setupAutocomplete = /*#__PURE__*/function () {
|
|
|
98
100
|
return _ref.apply(this, arguments);
|
|
99
101
|
};
|
|
100
102
|
}();
|
|
103
|
+
var prettierFormetter = function prettierFormetter(unformattedCode) {
|
|
104
|
+
try {
|
|
105
|
+
var formattedCode = _standalone.default.format(unformattedCode, {
|
|
106
|
+
parser: 'babel',
|
|
107
|
+
plugins: [_parserBabel.default],
|
|
108
|
+
tabWidth: 2,
|
|
109
|
+
useTabs: false
|
|
110
|
+
});
|
|
111
|
+
return formattedCode;
|
|
112
|
+
} catch (e) {
|
|
113
|
+
console.error('Prettier formatting error:', e);
|
|
114
|
+
return unformattedCode;
|
|
115
|
+
}
|
|
116
|
+
};
|
|
101
117
|
|
|
102
118
|
/**
|
|
103
119
|
* JSEditor 组件是一个专为 JavaScript 编辑设计的 React 组件,它基于 BaseEditor 组件构建,并集成了自动完成功能。
|
|
@@ -125,6 +141,14 @@ var JSEditor = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
|
|
|
125
141
|
keywords = _ref2.keywords,
|
|
126
142
|
rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
|
|
127
143
|
(0, _react.useEffect)(function () {
|
|
144
|
+
var originalGetValue = ref.current.editor.getValue.bind(ref.current.editor);
|
|
145
|
+
ref.current.editor.getValue = function () {
|
|
146
|
+
return prettierFormetter(originalGetValue());
|
|
147
|
+
};
|
|
148
|
+
ref.current.editor.addCommand(monaco.KeyMod.CtrlCmd | monaco.KeyMod.Shift | monaco.KeyCode.KeyF, function () {
|
|
149
|
+
var formattedCode = prettierFormetter(originalGetValue());
|
|
150
|
+
ref.current.editor.setValue(formattedCode);
|
|
151
|
+
});
|
|
128
152
|
setupAutocomplete(monaco, keywords);
|
|
129
153
|
}, []);
|
|
130
154
|
return /*#__PURE__*/_react.default.createElement(_BaseEditor.default, (0, _extends2.default)({
|
|
@@ -208,7 +208,6 @@ var FieldAttrsModal = _antd.Form.create({
|
|
|
208
208
|
getContainer: function getContainer() {
|
|
209
209
|
return document.getElementById('lc-design-workspace');
|
|
210
210
|
},
|
|
211
|
-
zIndex: 1001,
|
|
212
211
|
onOk: function () {
|
|
213
212
|
var _onOk = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee3() {
|
|
214
213
|
var subData, _yield$fetchDelAttrs, code;
|
|
@@ -261,7 +260,6 @@ var FieldAttrsModal = _antd.Form.create({
|
|
|
261
260
|
getContainer: function getContainer() {
|
|
262
261
|
return document.getElementById('lc-design-workspace');
|
|
263
262
|
},
|
|
264
|
-
zIndex: 1001,
|
|
265
263
|
destroyOnClose: true,
|
|
266
264
|
bodyStyle: {
|
|
267
265
|
marginTop: 0,
|
|
@@ -216,7 +216,6 @@ var SettingUI = function SettingUI(_ref) {
|
|
|
216
216
|
getContainer: function getContainer() {
|
|
217
217
|
return document.getElementById('lc-design-workspace');
|
|
218
218
|
},
|
|
219
|
-
zIndex: 1001,
|
|
220
219
|
onOk: function () {
|
|
221
220
|
var _onOk = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
|
|
222
221
|
var success;
|
|
@@ -327,8 +327,7 @@ var FieldsSetting = function FieldsSetting(_ref) {
|
|
|
327
327
|
style: {
|
|
328
328
|
position: 'absolute',
|
|
329
329
|
transform: 'none',
|
|
330
|
-
right: 320
|
|
331
|
-
zIndex: 1001
|
|
330
|
+
right: 320
|
|
332
331
|
}
|
|
333
332
|
}, drawerType === 'single' ? /*#__PURE__*/_react.default.createElement(_fieldSetting.default, {
|
|
334
333
|
key: fieldId,
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
pointer-events: none;
|
|
8
8
|
cursor: pointer;
|
|
9
9
|
overflow: visible;
|
|
10
|
-
z-index:
|
|
10
|
+
z-index: 11;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
.selector-item {
|
|
@@ -142,7 +142,7 @@
|
|
|
142
142
|
}
|
|
143
143
|
|
|
144
144
|
.next-overlay-wrapper {
|
|
145
|
-
z-index:
|
|
145
|
+
z-index: 30;
|
|
146
146
|
display: flex;
|
|
147
147
|
flex-direction: column;
|
|
148
148
|
& > div > span {
|
|
@@ -28,7 +28,6 @@ var FunctionDesign = function FunctionDesign(_ref) {
|
|
|
28
28
|
var ctx = (0, _ContextProvider.useContext)();
|
|
29
29
|
(0, _react.useImperativeHandle)(apiRef, function () {
|
|
30
30
|
return {
|
|
31
|
-
open: true,
|
|
32
31
|
doOpen: function doOpen() {
|
|
33
32
|
ctx.componentMap.get(id).api.getSelfDom().closest('.ant-modal-root').style.display = 'block';
|
|
34
33
|
},
|
|
@@ -55,8 +54,13 @@ var FunctionDesign = function FunctionDesign(_ref) {
|
|
|
55
54
|
position: 'absolute'
|
|
56
55
|
}
|
|
57
56
|
}, props, {
|
|
58
|
-
|
|
59
|
-
$
|
|
57
|
+
$apiRef: apiRef,
|
|
58
|
+
$designProps: {
|
|
59
|
+
closable: false,
|
|
60
|
+
maskClosable: false,
|
|
61
|
+
visible: true,
|
|
62
|
+
zIndex: 10
|
|
63
|
+
}
|
|
60
64
|
}), children);
|
|
61
65
|
};
|
|
62
66
|
var _default = exports.default = FunctionDesign;
|
|
@@ -44,7 +44,8 @@ var LCDialog = function LCDialog(_ref) {
|
|
|
44
44
|
footer = _ref.footer,
|
|
45
45
|
btnGroup = _ref.btnGroup,
|
|
46
46
|
advance = _ref.advance,
|
|
47
|
-
$apiRef = _ref.$apiRef
|
|
47
|
+
$apiRef = _ref.$apiRef,
|
|
48
|
+
$designProps = _ref.$designProps;
|
|
48
49
|
var ctx = (0, _ContextProvider.useContext)();
|
|
49
50
|
var apiRef = (0, _react.useRef)();
|
|
50
51
|
var domRef = (0, _react.useRef)();
|
|
@@ -178,7 +179,7 @@ var LCDialog = function LCDialog(_ref) {
|
|
|
178
179
|
return setOpen(false);
|
|
179
180
|
},
|
|
180
181
|
destroyOnClose: destroyOnClose
|
|
181
|
-
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
182
|
+
}, $designProps), /*#__PURE__*/_react.default.createElement("div", {
|
|
182
183
|
style: {
|
|
183
184
|
height: 0,
|
|
184
185
|
width: 0,
|
|
@@ -115,11 +115,11 @@ var LCTree = function LCTree(_ref) {
|
|
|
115
115
|
var handleSelect = (0, _ahooks.useMemoizedFn)(function (_selectedKeys, e) {
|
|
116
116
|
if (cancelSelect || e.selected) {
|
|
117
117
|
setSelectedKeys(_selectedKeys);
|
|
118
|
+
ctx.doAction(advance.events.onSelect, {
|
|
119
|
+
checkedKeys: _selectedKeys,
|
|
120
|
+
e: e
|
|
121
|
+
});
|
|
118
122
|
}
|
|
119
|
-
ctx.doAction(advance.events.onSelect, {
|
|
120
|
-
checkedKeys: _selectedKeys,
|
|
121
|
-
e: e
|
|
122
|
-
});
|
|
123
123
|
});
|
|
124
124
|
var afterInit = (0, _ahooks.useMemoizedFn)(function (treeData, data) {
|
|
125
125
|
var selected = !(0, _lodash.isNil)(defaultSelect) ? (0, _helper.executeCode)(ctx, defaultSelect, ['treeData'], treeData) : null;
|
package/package.json
CHANGED