@luck-design-biz/luckda 0.0.25-21 → 0.0.25-23

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.
Files changed (122) hide show
  1. package/es/components/LdAutoForm/index.js +1 -1
  2. package/es/lowcode/constants/api-url.js +25 -0
  3. package/es/lowcode/engine/meta/fieldcolor.props.default.json +3 -0
  4. package/es/lowcode/engine/meta/fieldcolor.props.json +13 -0
  5. package/es/lowcode/engine/meta/fieldcomplex.props.default.json +3 -0
  6. package/es/lowcode/engine/meta/fieldcomplex.props.json +13 -0
  7. package/es/lowcode/engine/meta/fielddate.props.default.json +3 -0
  8. package/es/lowcode/engine/meta/fielddate.props.json +13 -0
  9. package/es/lowcode/engine/meta/fielddict.props.default.json +3 -0
  10. package/es/lowcode/engine/meta/fielddict.props.json +13 -0
  11. package/es/lowcode/engine/meta/fieldeditor.props.default.json +3 -0
  12. package/es/lowcode/engine/meta/fieldeditor.props.json +13 -0
  13. package/es/lowcode/engine/meta/fieldgroup.props.default.json +3 -0
  14. package/es/lowcode/engine/meta/fieldgroup.props.json +13 -0
  15. package/es/lowcode/engine/meta/fieldnumber.props.default.json +3 -0
  16. package/es/lowcode/engine/meta/fieldnumber.props.json +13 -0
  17. package/es/lowcode/engine/meta/fieldradio.props.default.json +3 -0
  18. package/es/lowcode/engine/meta/fieldradio.props.json +13 -0
  19. package/es/lowcode/engine/meta/fieldregion.props.default.json +3 -0
  20. package/es/lowcode/engine/meta/fieldregion.props.json +13 -0
  21. package/es/lowcode/engine/meta/fieldselect.props.default.json +3 -0
  22. package/es/lowcode/engine/meta/fieldselect.props.json +13 -0
  23. package/es/lowcode/engine/meta/fieldstring.props.default.json +3 -0
  24. package/es/lowcode/engine/meta/fieldstring.props.json +13 -0
  25. package/es/lowcode/engine/meta/fieldswitch.props.default.json +3 -0
  26. package/es/lowcode/engine/meta/fieldswitch.props.json +13 -0
  27. package/es/lowcode/engine/meta/fieldtextarea.props.default.json +3 -0
  28. package/es/lowcode/engine/meta/fieldtextarea.props.json +13 -0
  29. package/es/lowcode/engine/meta/fieldupload.props.default.json +3 -0
  30. package/es/lowcode/engine/meta/fieldupload.props.json +13 -0
  31. package/es/lowcode/engine/meta/fielduser.props.default.json +3 -0
  32. package/es/lowcode/engine/meta/fielduser.props.json +13 -0
  33. package/es/lowcode/engine/meta/fieldyear.props.default.json +3 -0
  34. package/es/lowcode/engine/meta/fieldyear.props.json +13 -0
  35. package/es/lowcode/engine/provider/ContextProvider/index.js +14 -7
  36. package/es/lowcode/engine/provider/ContextProvider/usePageVar.js +38 -0
  37. package/es/lowcode/painter/DesignToolbar.js +7 -8
  38. package/es/lowcode/painter/Outline.js +2 -2
  39. package/es/lowcode/painter/components/code-editor/BaseEditor.js +22 -1
  40. package/es/lowcode/painter/panel-section/FieldState.js +62 -0
  41. package/es/lowcode/view/lc-components/Dialog/FunctionDesign.js +19 -4
  42. package/es/lowcode/view/lc-components/Dialog/index.js +3 -2
  43. package/es/lowcode/view/lc-components/Dialog/index.less +7 -2
  44. package/es/lowcode/view/lc-components/FieldColor/meta.json +11 -0
  45. package/es/lowcode/view/lc-components/FieldComplex/meta.json +11 -0
  46. package/es/lowcode/view/lc-components/FieldDate/meta.json +11 -0
  47. package/es/lowcode/view/lc-components/FieldDict/meta.json +11 -0
  48. package/es/lowcode/view/lc-components/FieldEditor/meta.json +11 -0
  49. package/es/lowcode/view/lc-components/FieldGroup/meta.json +11 -0
  50. package/es/lowcode/view/lc-components/FieldNumber/meta.json +11 -0
  51. package/es/lowcode/view/lc-components/FieldRadio/meta.json +11 -0
  52. package/es/lowcode/view/lc-components/FieldRegion/meta.json +11 -0
  53. package/es/lowcode/view/lc-components/FieldSelect/meta.json +11 -0
  54. package/es/lowcode/view/lc-components/FieldString/meta.json +11 -0
  55. package/es/lowcode/view/lc-components/FieldSwitch/meta.json +11 -0
  56. package/es/lowcode/view/lc-components/FieldTextarea/meta.json +11 -0
  57. package/es/lowcode/view/lc-components/FieldUpload/meta.json +11 -0
  58. package/es/lowcode/view/lc-components/FieldUser/meta.json +11 -0
  59. package/es/lowcode/view/lc-components/FieldYear/meta.json +11 -0
  60. package/es/lowcode/view/lc-components/Form/index.js +32 -10
  61. package/lib/components/LdAutoForm/index.js +1 -1
  62. package/lib/lowcode/constants/api-url.js +25 -0
  63. package/lib/lowcode/engine/meta/fieldcolor.props.default.json +3 -0
  64. package/lib/lowcode/engine/meta/fieldcolor.props.json +13 -0
  65. package/lib/lowcode/engine/meta/fieldcomplex.props.default.json +3 -0
  66. package/lib/lowcode/engine/meta/fieldcomplex.props.json +13 -0
  67. package/lib/lowcode/engine/meta/fielddate.props.default.json +3 -0
  68. package/lib/lowcode/engine/meta/fielddate.props.json +13 -0
  69. package/lib/lowcode/engine/meta/fielddict.props.default.json +3 -0
  70. package/lib/lowcode/engine/meta/fielddict.props.json +13 -0
  71. package/lib/lowcode/engine/meta/fieldeditor.props.default.json +3 -0
  72. package/lib/lowcode/engine/meta/fieldeditor.props.json +13 -0
  73. package/lib/lowcode/engine/meta/fieldgroup.props.default.json +3 -0
  74. package/lib/lowcode/engine/meta/fieldgroup.props.json +13 -0
  75. package/lib/lowcode/engine/meta/fieldnumber.props.default.json +3 -0
  76. package/lib/lowcode/engine/meta/fieldnumber.props.json +13 -0
  77. package/lib/lowcode/engine/meta/fieldradio.props.default.json +3 -0
  78. package/lib/lowcode/engine/meta/fieldradio.props.json +13 -0
  79. package/lib/lowcode/engine/meta/fieldregion.props.default.json +3 -0
  80. package/lib/lowcode/engine/meta/fieldregion.props.json +13 -0
  81. package/lib/lowcode/engine/meta/fieldselect.props.default.json +3 -0
  82. package/lib/lowcode/engine/meta/fieldselect.props.json +13 -0
  83. package/lib/lowcode/engine/meta/fieldstring.props.default.json +3 -0
  84. package/lib/lowcode/engine/meta/fieldstring.props.json +13 -0
  85. package/lib/lowcode/engine/meta/fieldswitch.props.default.json +3 -0
  86. package/lib/lowcode/engine/meta/fieldswitch.props.json +13 -0
  87. package/lib/lowcode/engine/meta/fieldtextarea.props.default.json +3 -0
  88. package/lib/lowcode/engine/meta/fieldtextarea.props.json +13 -0
  89. package/lib/lowcode/engine/meta/fieldupload.props.default.json +3 -0
  90. package/lib/lowcode/engine/meta/fieldupload.props.json +13 -0
  91. package/lib/lowcode/engine/meta/fielduser.props.default.json +3 -0
  92. package/lib/lowcode/engine/meta/fielduser.props.json +13 -0
  93. package/lib/lowcode/engine/meta/fieldyear.props.default.json +3 -0
  94. package/lib/lowcode/engine/meta/fieldyear.props.json +13 -0
  95. package/lib/lowcode/engine/provider/ContextProvider/index.js +14 -7
  96. package/lib/lowcode/engine/provider/ContextProvider/{usePageState.js → usePageVar.js} +21 -4
  97. package/lib/lowcode/painter/DesignToolbar.js +6 -7
  98. package/lib/lowcode/painter/Outline.js +2 -2
  99. package/lib/lowcode/painter/components/code-editor/BaseEditor.js +22 -1
  100. package/lib/lowcode/painter/panel-section/FieldState.js +70 -0
  101. package/lib/lowcode/view/lc-components/Dialog/FunctionDesign.js +20 -4
  102. package/lib/lowcode/view/lc-components/Dialog/index.js +3 -2
  103. package/lib/lowcode/view/lc-components/Dialog/index.less +7 -2
  104. package/lib/lowcode/view/lc-components/FieldColor/meta.json +11 -0
  105. package/lib/lowcode/view/lc-components/FieldComplex/meta.json +11 -0
  106. package/lib/lowcode/view/lc-components/FieldDate/meta.json +11 -0
  107. package/lib/lowcode/view/lc-components/FieldDict/meta.json +11 -0
  108. package/lib/lowcode/view/lc-components/FieldEditor/meta.json +11 -0
  109. package/lib/lowcode/view/lc-components/FieldGroup/meta.json +11 -0
  110. package/lib/lowcode/view/lc-components/FieldNumber/meta.json +11 -0
  111. package/lib/lowcode/view/lc-components/FieldRadio/meta.json +11 -0
  112. package/lib/lowcode/view/lc-components/FieldRegion/meta.json +11 -0
  113. package/lib/lowcode/view/lc-components/FieldSelect/meta.json +11 -0
  114. package/lib/lowcode/view/lc-components/FieldString/meta.json +11 -0
  115. package/lib/lowcode/view/lc-components/FieldSwitch/meta.json +11 -0
  116. package/lib/lowcode/view/lc-components/FieldTextarea/meta.json +11 -0
  117. package/lib/lowcode/view/lc-components/FieldUpload/meta.json +11 -0
  118. package/lib/lowcode/view/lc-components/FieldUser/meta.json +11 -0
  119. package/lib/lowcode/view/lc-components/FieldYear/meta.json +11 -0
  120. package/lib/lowcode/view/lc-components/Form/index.js +31 -9
  121. package/package.json +2 -2
  122. package/es/lowcode/engine/provider/ContextProvider/usePageState.js +0 -21
@@ -17,9 +17,8 @@ import JsonEditor from "../painter/components/code-editor/JsonEditor";
17
17
  import PreviewIframe from "./components/PreviewIframe";
18
18
  import { LC_BUILDIN_UNIT_KEY, COOKIE_VIRTUAL_ACCOUNT_KEY } from "../constants";
19
19
  import styles from "./style/design.less";
20
- import { fetchClearCache, fetchUpdatePageData } from "../constants/api-url";
20
+ import { fetchClearCache, fetchUpdatePageData, fetchSearchUser } from "../constants/api-url";
21
21
  import { getLDMetaAttr } from "../engine/tools/helper";
22
- import { readAllUser } from '@luck-design-biz/base/lib/sys/services';
23
22
  var DesignToolbar = function DesignToolbar(_ref) {
24
23
  var locale = _ref.locale,
25
24
  onLangChange = _ref.onLangChange;
@@ -168,19 +167,19 @@ var DesignToolbar = function DesignToolbar(_ref) {
168
167
  });
169
168
  var _useDebounceFn = useDebounceFn( /*#__PURE__*/function () {
170
169
  var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(value) {
171
- var _yield$readAllUser, code, list, detail;
170
+ var _yield$fetchSearchUse, code, list, detail;
172
171
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
173
172
  while (1) switch (_context2.prev = _context2.next) {
174
173
  case 0:
175
174
  _context2.next = 2;
176
- return readAllUser({
175
+ return fetchSearchUser({
177
176
  sname: value
178
177
  });
179
178
  case 2:
180
- _yield$readAllUser = _context2.sent;
181
- code = _yield$readAllUser.code;
182
- list = _yield$readAllUser.list;
183
- detail = _yield$readAllUser.detail;
179
+ _yield$fetchSearchUse = _context2.sent;
180
+ code = _yield$fetchSearchUse.code;
181
+ list = _yield$fetchSearchUse.list;
182
+ detail = _yield$fetchSearchUse.detail;
184
183
  if (code === 1) {
185
184
  setUserOptions(list.map(function (id) {
186
185
  var item = detail[id];
@@ -171,7 +171,6 @@ var Outline = function Outline(_ref) {
171
171
  handleSelect(null);
172
172
  } else {
173
173
  // 选中节点是模态视图下的子组件,则打开该组件的模态视图组件
174
- handleSelect(node.props.eventKey);
175
174
  var _split3 = split(getPathById(pageData, node.props.eventKey), '/'),
176
175
  _split4 = _slicedToArray(_split3, 1),
177
176
  parentModal = _split4[0];
@@ -179,6 +178,7 @@ var Outline = function Outline(_ref) {
179
178
  toggle: true,
180
179
  id: parentModal
181
180
  });
181
+ handleSelect(node.props.eventKey);
182
182
  }
183
183
  },
184
184
  expandedKeys: modalExpandedKeys,
@@ -186,11 +186,11 @@ var Outline = function Outline(_ref) {
186
186
  var expanded = _ref6.expanded,
187
187
  node = _ref6.node;
188
188
  if (expanded && node.props.pos.split('-').length === 2) {
189
- handleSelect(null);
190
189
  ctx.$publisher(ctx.topics.COMPONENT_MODAL_TOGGLE, {
191
190
  toggle: true,
192
191
  id: node.props.eventKey
193
192
  });
193
+ handleSelect(node.props.eventKey);
194
194
  }
195
195
  setModalExpandedKeys(_keys);
196
196
  }
@@ -4,7 +4,10 @@ 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';
7
8
  import * as monaco from 'monaco-editor';
9
+ import prettier from 'prettier/standalone';
10
+ import parserBabel from 'prettier/parser-babel';
8
11
 
9
12
  /**
10
13
  * BaseEditor 组件是一个封装了 monaco 编辑器的 React 组件,支持前向 ref 引用。
@@ -52,6 +55,14 @@ var BaseEditor = /*#__PURE__*/forwardRef(function (_ref, ref) {
52
55
  rest = _objectWithoutProperties(props, _excluded2);
53
56
  var editorRef = useRef(null);
54
57
  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
+ });
55
66
 
56
67
  // 初始化编辑器实例
57
68
  useEffect(function () {
@@ -60,7 +71,9 @@ var BaseEditor = /*#__PURE__*/forwardRef(function (_ref, ref) {
60
71
  editorInstance.current = monaco.editor.create(editorRef.current, _objectSpread({
61
72
  value: code,
62
73
  language: language,
63
- automaticLayout: true
74
+ automaticLayout: true,
75
+ autoIndent: true,
76
+ tabSize: 2
64
77
  }, options), {
65
78
  storageService: {
66
79
  get: function get() {},
@@ -74,6 +87,14 @@ var BaseEditor = /*#__PURE__*/forwardRef(function (_ref, ref) {
74
87
  onDidChangeStorage: function onDidChangeStorage() {}
75
88
  }
76
89
  });
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
+ });
77
98
  editorInstance.current.onDidChangeModelContent(function (event) {
78
99
  if (onChange) onChange(editorInstance.current.getValue(), event);
79
100
  });
@@ -0,0 +1,62 @@
1
+ import React, { useRef } from 'react';
2
+ import { useMemoizedFn } from 'ahooks';
3
+ import { Segmented, Icon } from 'luck-design/antd';
4
+ import styled from 'styled-components';
5
+ import PopConfirm from "../components/PopConfirm";
6
+ import FullScreenEditor from "../components/code-editor/FullScreenEditor";
7
+ import JSEditor from "../components/code-editor/JSEditor";
8
+ var _OPTIONS_ = [{
9
+ label: '普通',
10
+ value: 'normal'
11
+ }, {
12
+ label: '禁用',
13
+ value: 'disabled'
14
+ }, {
15
+ label: '只读',
16
+ value: 'readonly'
17
+ }, {
18
+ label: '隐藏',
19
+ value: 'hidden'
20
+ }];
21
+ var _DEFAULT_FUNC_ = 'function isTrue() {\n return true; \n}';
22
+ var Wrapper = styled.div.withConfig({
23
+ displayName: "Wrapper",
24
+ componentId: "luckda-6530__sc-xdk08r-0"
25
+ })(["width:100%;display:flex;justify-content:space-between;align-items:center;padding:0 16px;"]);
26
+ var FieldState = function FieldState(_ref) {
27
+ var defaultValue = _ref.defaultValue,
28
+ onChange = _ref.onChange;
29
+ var editorRef = useRef();
30
+ var handleChange = useMemoizedFn(function (key, val) {
31
+ var retVal = defaultValue || {};
32
+ retVal[key] = val;
33
+ onChange(retVal);
34
+ });
35
+ return /*#__PURE__*/React.createElement(Wrapper, null, /*#__PURE__*/React.createElement(Segmented, {
36
+ style: {
37
+ width: '90%'
38
+ },
39
+ options: _OPTIONS_,
40
+ defaultValue: (defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.value) || 'normal',
41
+ onChange: function onChange(val) {
42
+ return handleChange('value', val);
43
+ }
44
+ }), /*#__PURE__*/React.createElement(PopConfirm, {
45
+ placement: "left",
46
+ title: /*#__PURE__*/React.createElement(FullScreenEditor, {
47
+ ref: editorRef,
48
+ EditorComponent: JSEditor,
49
+ width: "600px",
50
+ height: "400px"
51
+ }, (defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.code) || _DEFAULT_FUNC_),
52
+ showBtn: true,
53
+ onConfirm: function onConfirm() {
54
+ var val = editorRef.current.editor.getValue();
55
+ editorRef.current.editor.setValue(val);
56
+ handleChange('code', val);
57
+ }
58
+ }, /*#__PURE__*/React.createElement(Icon, {
59
+ type: "code"
60
+ })));
61
+ };
62
+ export default FieldState;
@@ -3,20 +3,32 @@ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
3
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
5
  var _excluded = ["id", "children", "className"];
6
- import React from 'react';
6
+ import React, { useRef, useImperativeHandle } from 'react';
7
7
  import { useCreation } from 'ahooks';
8
8
  import Index from "./index";
9
9
  import { suid } from '@luck-design-biz/base/utils';
10
10
  import { useContext, addNode } from "../../../engine/provider/ContextProvider";
11
11
  import classNames from 'classnames';
12
- import styles from "./index.less";
12
+ import "./index.less";
13
13
  import boxDefaultMeta from "../../../engine/meta/box.props.default.json";
14
14
  var FunctionDesign = function FunctionDesign(_ref) {
15
15
  var id = _ref.id,
16
16
  children = _ref.children,
17
17
  className = _ref.className,
18
18
  props = _objectWithoutProperties(_ref, _excluded);
19
+ var apiRef = useRef();
19
20
  var ctx = useContext();
21
+ useImperativeHandle(apiRef, function () {
22
+ return {
23
+ open: true,
24
+ doOpen: function doOpen() {
25
+ ctx.componentMap.get(id).api.getSelfDom().closest('.ant-modal-root').style.display = 'block';
26
+ },
27
+ doClose: function doClose() {
28
+ ctx.componentMap.get(id).api.getSelfDom().closest('.ant-modal-root').style.display = 'none';
29
+ }
30
+ };
31
+ }, []);
20
32
  useCreation(function () {
21
33
  if (children !== null && children !== void 0 && children.length) return;
22
34
  ctx.$subscriber(ctx.topics.COMPONENT_APPEND).once(function (_ref2) {
@@ -29,11 +41,14 @@ var FunctionDesign = function FunctionDesign(_ref) {
29
41
  }, []);
30
42
  return /*#__PURE__*/React.createElement(Index, _extends({
31
43
  id: id,
32
- wrapClassName: classNames(styles['runtime-design'], _defineProperty({}, className, !!className)),
44
+ wrapClassName: classNames('runtime-design', _defineProperty({}, className, !!className)),
33
45
  getContainer: false,
34
46
  maskStyle: {
35
47
  position: 'absolute'
36
48
  }
37
- }, props), children);
49
+ }, props, {
50
+ defaultOpen: true,
51
+ $apiRef: apiRef
52
+ }), children);
38
53
  };
39
54
  export default FunctionDesign;
@@ -35,7 +35,8 @@ var LCDialog = function LCDialog(_ref) {
35
35
  destroyOnClose = _ref.destroyOnClose,
36
36
  footer = _ref.footer,
37
37
  btnGroup = _ref.btnGroup,
38
- advance = _ref.advance;
38
+ advance = _ref.advance,
39
+ $apiRef = _ref.$apiRef;
39
40
  var ctx = useContext();
40
41
  var apiRef = useRef();
41
42
  var domRef = useRef();
@@ -149,7 +150,7 @@ var LCDialog = function LCDialog(_ref) {
149
150
  id: id,
150
151
  displayName: "Dialog",
151
152
  getTargetDom: getTargetDom,
152
- api: apiRef
153
+ api: $apiRef || apiRef
153
154
  }, /*#__PURE__*/React.createElement(Modal, _extends({
154
155
  title: _title,
155
156
  visible: open,
@@ -1,3 +1,8 @@
1
- .lc-component-dialog-wrapper.runtime-design {
2
- position: absolute !important;
1
+ :global {
2
+ .runtime-design {
3
+ position: absolute !important;
4
+ }
5
+ div.ant-modal-root:has(> .runtime-design) {
6
+ display: none;
7
+ }
3
8
  }
@@ -113,6 +113,17 @@
113
113
  "type": "_I18nInput"
114
114
  }
115
115
  ]
116
+ },
117
+ {
118
+ "key": "state",
119
+ "name": "状态",
120
+ "desc": "表单项的初始化状态",
121
+ "type": "_FieldState",
122
+ "default": { "value": "normal" },
123
+ "wrapper": "collapse",
124
+ "wrapperProps": {
125
+ "suppressIcon": true
126
+ }
116
127
  }
117
128
  ],
118
129
  "advance": {
@@ -89,6 +89,17 @@
89
89
  "type": "_I18nInput"
90
90
  }
91
91
  ]
92
+ },
93
+ {
94
+ "key": "state",
95
+ "name": "状态",
96
+ "desc": "表单项的初始化状态",
97
+ "type": "_FieldState",
98
+ "default": { "value": "normal" },
99
+ "wrapper": "collapse",
100
+ "wrapperProps": {
101
+ "suppressIcon": true
102
+ }
92
103
  }
93
104
  ],
94
105
  "advance": {
@@ -107,6 +107,17 @@
107
107
  "type": "_I18nInput"
108
108
  }
109
109
  ]
110
+ },
111
+ {
112
+ "key": "state",
113
+ "name": "状态",
114
+ "desc": "表单项的初始化状态",
115
+ "type": "_FieldState",
116
+ "default": { "value": "normal" },
117
+ "wrapper": "collapse",
118
+ "wrapperProps": {
119
+ "suppressIcon": true
120
+ }
110
121
  }
111
122
  ],
112
123
  "advance": {
@@ -106,6 +106,17 @@
106
106
  "type": "_I18nInput"
107
107
  }
108
108
  ]
109
+ },
110
+ {
111
+ "key": "state",
112
+ "name": "状态",
113
+ "desc": "表单项的初始化状态",
114
+ "type": "_FieldState",
115
+ "default": { "value": "normal" },
116
+ "wrapper": "collapse",
117
+ "wrapperProps": {
118
+ "suppressIcon": true
119
+ }
109
120
  }
110
121
  ],
111
122
  "advance": {
@@ -100,6 +100,17 @@
100
100
  "type": "_I18nInput"
101
101
  }
102
102
  ]
103
+ },
104
+ {
105
+ "key": "state",
106
+ "name": "状态",
107
+ "desc": "表单项的初始化状态",
108
+ "type": "_FieldState",
109
+ "default": { "value": "normal" },
110
+ "wrapper": "collapse",
111
+ "wrapperProps": {
112
+ "suppressIcon": true
113
+ }
103
114
  }
104
115
  ],
105
116
  "advance": {
@@ -123,6 +123,17 @@
123
123
  "type": "_I18nInput"
124
124
  }
125
125
  ]
126
+ },
127
+ {
128
+ "key": "state",
129
+ "name": "状态",
130
+ "desc": "表单项的初始化状态",
131
+ "type": "_FieldState",
132
+ "default": { "value": "normal" },
133
+ "wrapper": "collapse",
134
+ "wrapperProps": {
135
+ "suppressIcon": true
136
+ }
126
137
  }
127
138
  ],
128
139
  "advance": {
@@ -110,6 +110,17 @@
110
110
  "type": "_I18nInput"
111
111
  }
112
112
  ]
113
+ },
114
+ {
115
+ "key": "state",
116
+ "name": "状态",
117
+ "desc": "表单项的初始化状态",
118
+ "type": "_FieldState",
119
+ "default": { "value": "normal" },
120
+ "wrapper": "collapse",
121
+ "wrapperProps": {
122
+ "suppressIcon": true
123
+ }
113
124
  }
114
125
  ],
115
126
  "advance": {
@@ -83,6 +83,17 @@
83
83
  "type": "_I18nInput"
84
84
  }
85
85
  ]
86
+ },
87
+ {
88
+ "key": "state",
89
+ "name": "状态",
90
+ "desc": "表单项的初始化状态",
91
+ "type": "_FieldState",
92
+ "default": { "value": "normal" },
93
+ "wrapper": "collapse",
94
+ "wrapperProps": {
95
+ "suppressIcon": true
96
+ }
86
97
  }
87
98
  ],
88
99
  "advance": {
@@ -83,6 +83,17 @@
83
83
  "type": "_I18nInput"
84
84
  }
85
85
  ]
86
+ },
87
+ {
88
+ "key": "state",
89
+ "name": "状态",
90
+ "desc": "表单项的初始化状态",
91
+ "type": "_FieldState",
92
+ "default": { "value": "normal" },
93
+ "wrapper": "collapse",
94
+ "wrapperProps": {
95
+ "suppressIcon": true
96
+ }
86
97
  }
87
98
  ],
88
99
  "advance": {
@@ -96,6 +96,17 @@
96
96
  "type": "_I18nInput"
97
97
  }
98
98
  ]
99
+ },
100
+ {
101
+ "key": "state",
102
+ "name": "状态",
103
+ "desc": "表单项的初始化状态",
104
+ "type": "_FieldState",
105
+ "default": { "value": "normal" },
106
+ "wrapper": "collapse",
107
+ "wrapperProps": {
108
+ "suppressIcon": true
109
+ }
99
110
  }
100
111
  ],
101
112
  "advance": {
@@ -108,6 +108,17 @@
108
108
  "type": "_I18nInput"
109
109
  }
110
110
  ]
111
+ },
112
+ {
113
+ "key": "state",
114
+ "name": "状态",
115
+ "desc": "表单项的初始化状态",
116
+ "type": "_FieldState",
117
+ "default": { "value": "normal" },
118
+ "wrapper": "collapse",
119
+ "wrapperProps": {
120
+ "suppressIcon": true
121
+ }
111
122
  }
112
123
  ],
113
124
  "advance": {
@@ -93,6 +93,17 @@
93
93
  "type": "_I18nInput"
94
94
  }
95
95
  ]
96
+ },
97
+ {
98
+ "key": "state",
99
+ "name": "状态",
100
+ "desc": "表单项的初始化状态",
101
+ "type": "_FieldState",
102
+ "default": { "value": "normal" },
103
+ "wrapper": "collapse",
104
+ "wrapperProps": {
105
+ "suppressIcon": true
106
+ }
96
107
  }
97
108
  ],
98
109
  "advance": {
@@ -99,6 +99,17 @@
99
99
  "type": "_I18nInput"
100
100
  }
101
101
  ]
102
+ },
103
+ {
104
+ "key": "state",
105
+ "name": "状态",
106
+ "desc": "表单项的初始化状态",
107
+ "type": "_FieldState",
108
+ "default": { "value": "normal" },
109
+ "wrapper": "collapse",
110
+ "wrapperProps": {
111
+ "suppressIcon": true
112
+ }
102
113
  }
103
114
  ],
104
115
  "advance": {
@@ -127,6 +127,17 @@
127
127
  "type": "_I18nInput"
128
128
  }
129
129
  ]
130
+ },
131
+ {
132
+ "key": "state",
133
+ "name": "状态",
134
+ "desc": "表单项的初始化状态",
135
+ "type": "_FieldState",
136
+ "default": { "value": "normal" },
137
+ "wrapper": "collapse",
138
+ "wrapperProps": {
139
+ "suppressIcon": true
140
+ }
130
141
  }
131
142
  ],
132
143
  "advance": {
@@ -132,6 +132,17 @@
132
132
  "type": "_I18nInput"
133
133
  }
134
134
  ]
135
+ },
136
+ {
137
+ "key": "state",
138
+ "name": "状态",
139
+ "desc": "表单项的初始化状态",
140
+ "type": "_FieldState",
141
+ "default": { "value": "normal" },
142
+ "wrapper": "collapse",
143
+ "wrapperProps": {
144
+ "suppressIcon": true
145
+ }
135
146
  }
136
147
  ],
137
148
  "advance": {
@@ -97,6 +97,17 @@
97
97
  "type": "_I18nInput"
98
98
  }
99
99
  ]
100
+ },
101
+ {
102
+ "key": "state",
103
+ "name": "状态",
104
+ "desc": "表单项的初始化状态",
105
+ "type": "_FieldState",
106
+ "default": { "value": "normal" },
107
+ "wrapper": "collapse",
108
+ "wrapperProps": {
109
+ "suppressIcon": true
110
+ }
100
111
  }
101
112
  ],
102
113
  "advance": {
@@ -3,8 +3,8 @@ import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
3
3
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
5
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
6
- var _excluded = ["advance"];
7
- import React, { useRef, forwardRef, Fragment, useImperativeHandle, useEffect } from 'react';
6
+ var _excluded = ["advance", "state"];
7
+ import React, { useRef, forwardRef, Fragment, useImperativeHandle } from 'react';
8
8
  import { useMemoizedFn, useCreation, useUnmount } from 'ahooks';
9
9
  import classNames from 'classnames';
10
10
  import { reduce, includes, isNil, cloneDeep, last, startsWith, isString } from 'lodash';
@@ -19,6 +19,7 @@ import buildUploadForm from "../../../../upload/Form";
19
19
  import RuntimeComp from "../JSX/RuntimeComp";
20
20
  import useCombinedRefs from "../../../engine/tools/useCombinedRefs";
21
21
  import defaultMeta from "../../../engine/meta/form.props.default.json";
22
+ import { RUNTIME } from "../../../constants";
22
23
  import styles from "./index.less";
23
24
  var _I18N_PREFIX_ = 'lc.form.validator';
24
25
  var Header = function Header(_ref2) {
@@ -319,10 +320,20 @@ var LCForm = /*#__PURE__*/forwardRef(function (_ref3, ref) {
319
320
  return props;
320
321
  };
321
322
  var transEventsInfields = function transEventsInfields(fields) {
322
- return (fields === null || fields === void 0 ? void 0 : fields.map(function (setting) {
323
+ return reduce(fields, function (result, setting) {
323
324
  var advance = setting.advance,
325
+ _state = setting.state,
324
326
  rest = _objectWithoutProperties(setting, _excluded);
325
- var props = reduce(rest, function (result, value, key) {
327
+ var isShow = true;
328
+ if (ctx.runtime !== RUNTIME.DESIGN && _state) {
329
+ if (_state.value === 'hidden') {
330
+ isShow = _state.code ? !executeCode(ctx, _state.code) : false;
331
+ }
332
+ if (_state.value === 'normal' && _state.code) {
333
+ isShow = executeCode(ctx, _state.code);
334
+ }
335
+ }
336
+ var _props = reduce(rest, function (result, value, key) {
326
337
  //处理方法
327
338
  result[key] = isString(value) && startsWith(value, 'function') ? function () {
328
339
  for (var _len = arguments.length, _props = new Array(_len), _key = 0; _key < _len; _key++) {
@@ -332,8 +343,19 @@ var LCForm = /*#__PURE__*/forwardRef(function (_ref3, ref) {
332
343
  } : value;
333
344
  return result;
334
345
  }, {});
335
- if (advance !== null && advance !== void 0 && advance.events) return _objectSpread(_objectSpread({}, props), {}, {
336
- events: reduce(advance.events, function (result, value, key) {
346
+ _props.isShow = isShow;
347
+ if ((_state === null || _state === void 0 ? void 0 : _state.value) === 'readonly') {
348
+ _props.config = {
349
+ readOnly: _state.code ? executeCode(ctx, _state.code) : true
350
+ };
351
+ }
352
+ if ((_state === null || _state === void 0 ? void 0 : _state.value) === 'disabled') {
353
+ _props.config = {
354
+ disabled: _state.code ? executeCode(ctx, _state.code) : true
355
+ };
356
+ }
357
+ result.push(_objectSpread(_objectSpread({}, _props), {}, {
358
+ events: advance !== null && advance !== void 0 && advance.events ? reduce(advance.events, function (result, value, key) {
337
359
  //处理事件
338
360
  result[key] = function () {
339
361
  for (var _len2 = arguments.length, props = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
@@ -345,10 +367,10 @@ var LCForm = /*#__PURE__*/forwardRef(function (_ref3, ref) {
345
367
  }, {}));
346
368
  };
347
369
  return result;
348
- }, {})
349
- });
350
- return props;
351
- })) || [];
370
+ }, {}) : null
371
+ }));
372
+ return result;
373
+ }, []);
352
374
  };
353
375
  var renderFormList = useMemoizedFn(function (formConfig) {
354
376
  return reduce(_blocks, function (result, item) {
@@ -81,7 +81,7 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
81
81
  result.push( /*#__PURE__*/_react.default.createElement(_luckDesign.BasicDivider, {
82
82
  title: setting === null || setting === void 0 ? void 0 : setting.fieldAliasName
83
83
  }));
84
- } else if (col !== null && col !== void 0 && col.isShowInForm) {
84
+ } else if (col !== null && col !== void 0 && col.isShowInForm && setting !== null && setting !== void 0 && setting.isShow) {
85
85
  var customFiled = filedsRewrite.find(function (_field) {
86
86
  return _field.name === col.aliaName;
87
87
  }) || {};