@luck-design-biz/luckda 1.0.0-alpha → 1.0.1-2

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 (279) hide show
  1. package/es/components/Builder/index.js +15 -3
  2. package/es/components/ComplexItem/index.js +65 -49
  3. package/es/components/LdAutoForm/index.js +6 -4
  4. package/es/components/LdFormList/index.js +3 -6
  5. package/es/components/LdGridForm/index.js +2 -1
  6. package/es/helper/form.js +1 -0
  7. package/es/helper/ldBuilder.js +8 -3
  8. package/es/locales/zh-CN.js +41 -4
  9. package/es/lowcode/constants/event-topics.js +0 -2
  10. package/es/lowcode/engine/launcher.js +3 -1
  11. package/es/lowcode/engine/meta/box.props.json +3 -3
  12. package/es/lowcode/engine/meta/button.props.default.json +1 -1
  13. package/es/lowcode/engine/meta/button.props.json +2 -2
  14. package/es/lowcode/engine/meta/cardlist.props.default.json +1 -0
  15. package/es/lowcode/engine/meta/cardlist.props.json +1 -0
  16. package/es/lowcode/engine/meta/components-list.json +0 -132
  17. package/es/lowcode/engine/meta/dialog.props.json +2 -2
  18. package/es/lowcode/engine/meta/drawer.props.default.json +1 -0
  19. package/es/lowcode/engine/meta/drawer.props.json +1 -0
  20. package/es/lowcode/engine/meta/fieldcomplex.props.default.json +1 -0
  21. package/es/lowcode/engine/meta/fieldcomplex.props.json +7 -0
  22. package/es/lowcode/engine/meta/fielddate.props.default.json +2 -0
  23. package/es/lowcode/engine/meta/fielddate.props.json +4 -2
  24. package/es/lowcode/engine/meta/fieldnumber.props.default.json +1 -0
  25. package/es/lowcode/engine/meta/fieldnumber.props.json +3 -2
  26. package/es/lowcode/engine/meta/fielduser.props.default.json +1 -1
  27. package/es/lowcode/engine/meta/fielduser.props.json +1 -1
  28. package/es/lowcode/engine/meta/form.props.default.json +13 -4
  29. package/es/lowcode/engine/meta/form.props.json +51 -13
  30. package/es/lowcode/engine/meta/iframe.props.default.json +2 -1
  31. package/es/lowcode/engine/meta/iframe.props.json +2 -1
  32. package/es/lowcode/engine/meta/image.props.default.json +2 -1
  33. package/es/lowcode/engine/meta/image.props.json +2 -1
  34. package/es/lowcode/engine/meta/imex.props.default.json +2 -1
  35. package/es/lowcode/engine/meta/imex.props.json +26 -5
  36. package/es/lowcode/engine/meta/js-editor/auto-complete.json +38 -20
  37. package/es/lowcode/engine/meta/jsx.props.default.json +1 -1
  38. package/es/lowcode/engine/meta/jsx.props.json +1 -1
  39. package/es/lowcode/engine/meta/layout.props.default.json +1 -1
  40. package/es/lowcode/engine/meta/layout.props.json +5 -5
  41. package/es/lowcode/engine/meta/link.props.default.json +2 -1
  42. package/es/lowcode/engine/meta/link.props.json +2 -1
  43. package/es/lowcode/engine/meta/page.props.json +6 -0
  44. package/es/lowcode/engine/meta/pagelayout.props.default.json +1 -1
  45. package/es/lowcode/engine/meta/pagelayout.props.json +1 -1
  46. package/es/lowcode/engine/meta/section.props.json +2 -1
  47. package/es/lowcode/engine/meta/split.props.default.json +1 -1
  48. package/es/lowcode/engine/meta/split.props.json +1 -1
  49. package/es/lowcode/engine/meta/table.props.json +2 -2
  50. package/es/lowcode/engine/meta/text.props.default.json +4 -2
  51. package/es/lowcode/engine/meta/text.props.json +8 -6
  52. package/es/lowcode/engine/provider/ContextProvider/index.js +63 -46
  53. package/es/lowcode/engine/provider/ContextProvider/router.js +43 -0
  54. package/es/lowcode/engine/{tools → provider/ContextProvider}/usePageDataStore.js +9 -7
  55. package/es/lowcode/engine/provider/ContextProvider/usePageVar.js +38 -15
  56. package/es/lowcode/engine/{tools → provider/ContextProvider}/useTodo.js +5 -7
  57. package/es/lowcode/engine/provider/ContextProvider/utils.js +157 -0
  58. package/es/lowcode/engine/provider/RemoteSourceProvider.js +1 -2
  59. package/es/lowcode/engine/tools/helper.js +7 -2
  60. package/es/lowcode/engine/tools/initDS.js +263 -0
  61. package/es/lowcode/engine/tools/useCombinedRefs.js +3 -2
  62. package/es/lowcode/painter/DesignOperator.js +10 -1
  63. package/es/lowcode/painter/Panel.js +2 -2
  64. package/es/lowcode/painter/components/AdvancePanel.js +3 -3
  65. package/es/lowcode/painter/components/Collapse.js +5 -2
  66. package/es/lowcode/painter/components/TipIcon.js +16 -0
  67. package/es/lowcode/painter/components/VarEditor.js +456 -0
  68. package/es/lowcode/painter/components/code-editor/FullScreenEditor.js +2 -2
  69. package/es/lowcode/painter/components/code-editor/JSEditor.js +3 -1
  70. package/es/lowcode/painter/components/code-editor/VisionEditor.js +81 -0
  71. package/es/lowcode/painter/components/field-setting/SettingUI.js +43 -5
  72. package/es/lowcode/painter/components/field-setting/index.js +27 -13
  73. package/es/lowcode/painter/components/field-setting/meta/frontRules.js +2 -1
  74. package/es/lowcode/painter/index.js +1 -0
  75. package/es/lowcode/painter/panel-section/BlockEditor/index.js +20 -6
  76. package/es/lowcode/painter/panel-section/BlocksEditor/index.js +2 -2
  77. package/es/lowcode/painter/panel-section/ComplexPop.js +242 -0
  78. package/es/lowcode/painter/panel-section/DataSetSelector.js +8 -0
  79. package/es/lowcode/painter/panel-section/FieldsSetting.js +30 -4
  80. package/es/lowcode/painter/panel-section/I18nInput.js +4 -2
  81. package/es/lowcode/painter/panel-section/Icon.js +9 -4
  82. package/es/lowcode/painter/panel-section/IconConditionSelector.js +7 -7
  83. package/es/lowcode/painter/panel-section/IconSelector.js +1 -1
  84. package/es/lowcode/painter/panel-section/ImpExp.js +1 -27
  85. package/es/lowcode/painter/panel-section/ImpExpAlone.js +1 -2
  86. package/es/lowcode/painter/panel-section/LayoutRatio.js +1 -0
  87. package/es/lowcode/painter/panel-section/PageVars.js +300 -0
  88. package/es/lowcode/painter/panel-section/StylePanel/StyleContext.js +4 -3
  89. package/es/lowcode/painter/panel-section/TabItems.js +6 -42
  90. package/es/lowcode/painter/panel-section/TextContent.js +79 -0
  91. package/es/lowcode/painter/services/complexPop.js +21 -0
  92. package/es/lowcode/painter/style/design.less +1 -1
  93. package/es/lowcode/painter/style/page-vars.less +25 -0
  94. package/es/lowcode/preview/index.js +1 -0
  95. package/es/lowcode/view/Canvas.js +24 -22
  96. package/es/lowcode/view/Loading.js +5 -7
  97. package/es/lowcode/view/Page.js +37 -15
  98. package/es/lowcode/view/index.js +1 -0
  99. package/es/lowcode/view/lc-components/Box/index.js +18 -3
  100. package/es/lowcode/view/lc-components/Box/meta.json +3 -3
  101. package/es/lowcode/view/lc-components/Button/index.js +7 -7
  102. package/es/lowcode/view/lc-components/Button/meta.json +2 -2
  103. package/es/lowcode/view/lc-components/CardList/meta.json +1 -0
  104. package/es/lowcode/view/lc-components/Dialog/index.js +6 -7
  105. package/es/lowcode/view/lc-components/Dialog/meta.json +2 -2
  106. package/es/lowcode/view/lc-components/Drawer/meta.json +1 -0
  107. package/es/lowcode/view/lc-components/FieldComplex/meta.json +7 -0
  108. package/es/lowcode/view/lc-components/FieldDate/meta.json +4 -2
  109. package/es/lowcode/view/lc-components/FieldNumber/meta.json +3 -2
  110. package/es/lowcode/view/lc-components/FieldUser/meta.json +1 -1
  111. package/es/lowcode/view/lc-components/Form/index.js +37 -21
  112. package/es/lowcode/view/lc-components/Form/meta.json +46 -12
  113. package/es/lowcode/view/lc-components/Iframe/meta.json +2 -1
  114. package/es/lowcode/view/lc-components/ImEx/index.js +174 -103
  115. package/es/lowcode/view/lc-components/ImEx/meta.json +26 -5
  116. package/es/lowcode/view/lc-components/Image/meta.json +2 -1
  117. package/es/lowcode/view/lc-components/JSX/meta.json +1 -1
  118. package/es/lowcode/view/lc-components/Layout/index.js +22 -5
  119. package/es/lowcode/view/lc-components/Layout/meta.json +5 -5
  120. package/es/lowcode/view/lc-components/Link/meta.json +2 -1
  121. package/es/lowcode/view/lc-components/Page/meta.json +6 -0
  122. package/es/lowcode/view/lc-components/PageLayout/FunctionDesign.js +5 -1
  123. package/es/lowcode/view/lc-components/PageLayout/meta.json +1 -1
  124. package/es/lowcode/view/lc-components/Section/index.js +2 -6
  125. package/es/lowcode/view/lc-components/Section/meta.json +2 -1
  126. package/es/lowcode/view/lc-components/Split/index.js +19 -4
  127. package/es/lowcode/view/lc-components/Split/meta.json +1 -1
  128. package/es/lowcode/view/lc-components/Table/index.js +29 -3
  129. package/es/lowcode/view/lc-components/Table/meta.json +2 -2
  130. package/es/lowcode/view/lc-components/Tabs/index.js +19 -16
  131. package/es/lowcode/view/lc-components/Text/index.js +9 -2
  132. package/es/lowcode/view/lc-components/Text/meta.json +6 -6
  133. package/es/lowcode/view/lc-components/Wrapper.js +17 -2
  134. package/es/lowcode/view/style/loading.less +14 -0
  135. package/es/services.js +19 -0
  136. package/es/upload/Form/gridForm.js +17 -7
  137. package/es/upload/FormItem/index.js +6 -6
  138. package/es/utils/form.js +4 -4
  139. package/es/utils/grid.js +2 -1
  140. package/lib/components/Builder/index.js +13 -1
  141. package/lib/components/ComplexItem/index.js +62 -47
  142. package/lib/components/LdAutoForm/index.js +5 -3
  143. package/lib/components/LdFormList/index.js +5 -8
  144. package/lib/components/LdGridForm/index.js +2 -1
  145. package/lib/helper/form.js +1 -0
  146. package/lib/helper/ldBuilder.js +8 -3
  147. package/lib/locales/zh-CN.js +41 -4
  148. package/lib/lowcode/constants/event-topics.js +1 -3
  149. package/lib/lowcode/engine/launcher.js +3 -1
  150. package/lib/lowcode/engine/meta/box.props.json +3 -3
  151. package/lib/lowcode/engine/meta/button.props.default.json +1 -1
  152. package/lib/lowcode/engine/meta/button.props.json +2 -2
  153. package/lib/lowcode/engine/meta/cardlist.props.default.json +1 -0
  154. package/lib/lowcode/engine/meta/cardlist.props.json +1 -0
  155. package/lib/lowcode/engine/meta/components-list.json +0 -132
  156. package/lib/lowcode/engine/meta/dialog.props.json +2 -2
  157. package/lib/lowcode/engine/meta/drawer.props.default.json +1 -0
  158. package/lib/lowcode/engine/meta/drawer.props.json +1 -0
  159. package/lib/lowcode/engine/meta/fieldcomplex.props.default.json +1 -0
  160. package/lib/lowcode/engine/meta/fieldcomplex.props.json +7 -0
  161. package/lib/lowcode/engine/meta/fielddate.props.default.json +2 -0
  162. package/lib/lowcode/engine/meta/fielddate.props.json +4 -2
  163. package/lib/lowcode/engine/meta/fieldnumber.props.default.json +1 -0
  164. package/lib/lowcode/engine/meta/fieldnumber.props.json +3 -2
  165. package/lib/lowcode/engine/meta/fielduser.props.default.json +1 -1
  166. package/lib/lowcode/engine/meta/fielduser.props.json +1 -1
  167. package/lib/lowcode/engine/meta/form.props.default.json +13 -4
  168. package/lib/lowcode/engine/meta/form.props.json +51 -13
  169. package/lib/lowcode/engine/meta/iframe.props.default.json +2 -1
  170. package/lib/lowcode/engine/meta/iframe.props.json +2 -1
  171. package/lib/lowcode/engine/meta/image.props.default.json +2 -1
  172. package/lib/lowcode/engine/meta/image.props.json +2 -1
  173. package/lib/lowcode/engine/meta/imex.props.default.json +2 -1
  174. package/lib/lowcode/engine/meta/imex.props.json +26 -5
  175. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +38 -20
  176. package/lib/lowcode/engine/meta/jsx.props.default.json +1 -1
  177. package/lib/lowcode/engine/meta/jsx.props.json +1 -1
  178. package/lib/lowcode/engine/meta/layout.props.default.json +1 -1
  179. package/lib/lowcode/engine/meta/layout.props.json +5 -5
  180. package/lib/lowcode/engine/meta/link.props.default.json +2 -1
  181. package/lib/lowcode/engine/meta/link.props.json +2 -1
  182. package/lib/lowcode/engine/meta/page.props.json +6 -0
  183. package/lib/lowcode/engine/meta/pagelayout.props.default.json +1 -1
  184. package/lib/lowcode/engine/meta/pagelayout.props.json +1 -1
  185. package/lib/lowcode/engine/meta/section.props.json +2 -1
  186. package/lib/lowcode/engine/meta/split.props.default.json +1 -1
  187. package/lib/lowcode/engine/meta/split.props.json +1 -1
  188. package/lib/lowcode/engine/meta/table.props.json +2 -2
  189. package/lib/lowcode/engine/meta/text.props.default.json +4 -2
  190. package/lib/lowcode/engine/meta/text.props.json +8 -6
  191. package/lib/lowcode/engine/provider/ContextProvider/index.js +61 -44
  192. package/lib/lowcode/engine/provider/ContextProvider/router.js +57 -0
  193. package/lib/lowcode/engine/{tools → provider/ContextProvider}/usePageDataStore.js +9 -7
  194. package/lib/lowcode/engine/provider/ContextProvider/usePageVar.js +38 -16
  195. package/lib/lowcode/engine/{tools → provider/ContextProvider}/useTodo.js +5 -7
  196. package/lib/lowcode/engine/provider/ContextProvider/utils.js +170 -0
  197. package/lib/lowcode/engine/provider/RemoteSourceProvider.js +2 -3
  198. package/lib/lowcode/engine/tools/helper.js +7 -2
  199. package/lib/lowcode/engine/tools/initDS.js +270 -0
  200. package/lib/lowcode/engine/tools/useCombinedRefs.js +2 -1
  201. package/lib/lowcode/painter/DesignOperator.js +9 -0
  202. package/lib/lowcode/painter/Panel.js +2 -2
  203. package/lib/lowcode/painter/components/AdvancePanel.js +3 -3
  204. package/lib/lowcode/painter/components/Collapse.js +5 -2
  205. package/lib/lowcode/painter/components/TipIcon.js +23 -0
  206. package/lib/lowcode/painter/components/VarEditor.js +463 -0
  207. package/lib/lowcode/painter/components/code-editor/FullScreenEditor.js +2 -2
  208. package/lib/lowcode/painter/components/code-editor/JSEditor.js +3 -1
  209. package/lib/lowcode/painter/components/code-editor/VisionEditor.js +88 -0
  210. package/lib/lowcode/painter/components/field-setting/SettingUI.js +42 -4
  211. package/lib/lowcode/painter/components/field-setting/index.js +27 -13
  212. package/lib/lowcode/painter/components/field-setting/meta/frontRules.js +2 -1
  213. package/lib/lowcode/painter/index.js +1 -0
  214. package/lib/lowcode/painter/panel-section/BlockEditor/index.js +19 -5
  215. package/lib/lowcode/painter/panel-section/BlocksEditor/index.js +2 -2
  216. package/lib/lowcode/painter/panel-section/ComplexPop.js +250 -0
  217. package/lib/lowcode/painter/panel-section/DataSetSelector.js +8 -0
  218. package/lib/lowcode/painter/panel-section/FieldsSetting.js +30 -4
  219. package/lib/lowcode/painter/panel-section/I18nInput.js +4 -2
  220. package/lib/lowcode/painter/panel-section/Icon.js +8 -3
  221. package/lib/lowcode/painter/panel-section/IconConditionSelector.js +6 -6
  222. package/lib/lowcode/painter/panel-section/IconSelector.js +1 -1
  223. package/lib/lowcode/painter/panel-section/ImpExp.js +0 -26
  224. package/lib/lowcode/painter/panel-section/ImpExpAlone.js +0 -1
  225. package/lib/lowcode/painter/panel-section/LayoutRatio.js +1 -0
  226. package/lib/lowcode/painter/panel-section/PageVars.js +308 -0
  227. package/lib/lowcode/painter/panel-section/StylePanel/StyleContext.js +4 -3
  228. package/lib/lowcode/painter/panel-section/TabItems.js +6 -42
  229. package/lib/lowcode/painter/panel-section/TextContent.js +87 -0
  230. package/lib/lowcode/painter/services/complexPop.js +28 -0
  231. package/lib/lowcode/painter/style/design.less +1 -1
  232. package/lib/lowcode/painter/style/page-vars.less +25 -0
  233. package/lib/lowcode/preview/index.js +1 -0
  234. package/lib/lowcode/view/Canvas.js +24 -22
  235. package/lib/lowcode/view/Loading.js +5 -7
  236. package/lib/lowcode/view/Page.js +35 -13
  237. package/lib/lowcode/view/index.js +1 -0
  238. package/lib/lowcode/view/lc-components/Box/index.js +17 -2
  239. package/lib/lowcode/view/lc-components/Box/meta.json +3 -3
  240. package/lib/lowcode/view/lc-components/Button/index.js +5 -5
  241. package/lib/lowcode/view/lc-components/Button/meta.json +2 -2
  242. package/lib/lowcode/view/lc-components/CardList/meta.json +1 -0
  243. package/lib/lowcode/view/lc-components/Dialog/index.js +6 -7
  244. package/lib/lowcode/view/lc-components/Dialog/meta.json +2 -2
  245. package/lib/lowcode/view/lc-components/Drawer/meta.json +1 -0
  246. package/lib/lowcode/view/lc-components/FieldComplex/meta.json +7 -0
  247. package/lib/lowcode/view/lc-components/FieldDate/meta.json +4 -2
  248. package/lib/lowcode/view/lc-components/FieldNumber/meta.json +3 -2
  249. package/lib/lowcode/view/lc-components/FieldUser/meta.json +1 -1
  250. package/lib/lowcode/view/lc-components/Form/index.js +36 -20
  251. package/lib/lowcode/view/lc-components/Form/meta.json +46 -12
  252. package/lib/lowcode/view/lc-components/Iframe/meta.json +2 -1
  253. package/lib/lowcode/view/lc-components/ImEx/index.js +172 -101
  254. package/lib/lowcode/view/lc-components/ImEx/meta.json +26 -5
  255. package/lib/lowcode/view/lc-components/Image/meta.json +2 -1
  256. package/lib/lowcode/view/lc-components/JSX/meta.json +1 -1
  257. package/lib/lowcode/view/lc-components/Layout/index.js +21 -4
  258. package/lib/lowcode/view/lc-components/Layout/meta.json +5 -5
  259. package/lib/lowcode/view/lc-components/Link/meta.json +2 -1
  260. package/lib/lowcode/view/lc-components/Page/meta.json +6 -0
  261. package/lib/lowcode/view/lc-components/PageLayout/FunctionDesign.js +5 -1
  262. package/lib/lowcode/view/lc-components/PageLayout/meta.json +1 -1
  263. package/lib/lowcode/view/lc-components/Section/index.js +2 -6
  264. package/lib/lowcode/view/lc-components/Section/meta.json +2 -1
  265. package/lib/lowcode/view/lc-components/Split/index.js +18 -3
  266. package/lib/lowcode/view/lc-components/Split/meta.json +1 -1
  267. package/lib/lowcode/view/lc-components/Table/index.js +30 -4
  268. package/lib/lowcode/view/lc-components/Table/meta.json +2 -2
  269. package/lib/lowcode/view/lc-components/Tabs/index.js +17 -14
  270. package/lib/lowcode/view/lc-components/Text/index.js +8 -1
  271. package/lib/lowcode/view/lc-components/Text/meta.json +6 -6
  272. package/lib/lowcode/view/lc-components/Wrapper.js +16 -1
  273. package/lib/lowcode/view/style/loading.less +14 -0
  274. package/lib/services.js +20 -0
  275. package/lib/upload/Form/gridForm.js +17 -7
  276. package/lib/upload/FormItem/index.js +6 -6
  277. package/lib/utils/form.js +3 -3
  278. package/lib/utils/grid.js +2 -1
  279. package/package.json +3 -3
@@ -1,35 +1,45 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
5
  var _excluded = ["className"];
5
- import React, { useRef, forwardRef } from 'react';
6
- import { useMemoizedFn } from 'ahooks';
6
+ import React, { forwardRef, useRef, Suspense } from 'react';
7
+ import { useMemoizedFn, useCreation, useBoolean } from 'ahooks';
8
+ import { Skeleton } from 'luck-design/antd';
7
9
  import classNames from 'classnames';
8
- import styled from 'styled-components';
9
10
  import { useRemoteSource, useContext } from "../engine/provider/ContextProvider";
11
+ import initDS from "../engine/tools/initDS";
10
12
  import Loading from "./Loading";
11
13
  import Wrapper from "./lc-components/Wrapper";
12
14
  import Canvas from "./Canvas";
13
15
  import { LC_BUILDIN_UNIT_KEY } from "../constants";
16
+ import useCombinedRefs from "../engine/tools/useCombinedRefs";
14
17
  import ErrorBoundary from "./errorBoundary";
15
18
  import styles from "./style/page.less";
16
- var Masker = styled.div.withConfig({
17
- displayName: "Masker",
18
- componentId: "luckda-6530__sc-yswm45-0"
19
- })(["position:absolute;top:0;left:0;width:100%;height:100%;z-index:2400;background:rgba(0,0,0,0.45);cursor:none;"]);
20
- var LCPage = /*#__PURE__*/forwardRef(function (_ref2, ref) {
21
- var className = _ref2.className,
22
- props = _objectWithoutProperties(_ref2, _excluded);
23
- var _ref = useRef(null);
24
- var _rootRef = ref || _ref;
19
+ var LCPage = /*#__PURE__*/forwardRef(function (_ref, ref) {
20
+ var className = _ref.className,
21
+ props = _objectWithoutProperties(_ref, _excluded);
22
+ var _rootRef = useCombinedRefs(ref);
23
+ var _dsRef = useRef();
25
24
  var _useRemoteSource = useRemoteSource(),
26
25
  loading = _useRemoteSource.loading;
27
- var context = useContext();
26
+ var _useBoolean = useBoolean(false),
27
+ _useBoolean2 = _slicedToArray(_useBoolean, 2),
28
+ loadMount = _useBoolean2[0],
29
+ setTrue = _useBoolean2[1].setTrue;
30
+ var ctx = useContext();
31
+ var handlePageLoadMount = useMemoizedFn(function () {
32
+ _dsRef.current = initDS(ctx);
33
+ setTrue();
34
+ });
35
+ useCreation(function () {
36
+ ctx.$subscriber(ctx.topics.PAGE_LOAD_MOUNT).once(handlePageLoadMount).watch();
37
+ }, []);
28
38
  var getTargetDom = useMemoizedFn(function () {
29
39
  return _rootRef.current;
30
40
  });
31
41
  var handleClear = useMemoizedFn(function () {
32
- context.$publisher(context.topics.COMPONENT_ACTIVE, null);
42
+ ctx.$publisher(ctx.topics.COMPONENT_ACTIVE, null);
33
43
  });
34
44
  return /*#__PURE__*/React.createElement(ErrorBoundary, {
35
45
  onClear: handleClear
@@ -39,6 +49,18 @@ var LCPage = /*#__PURE__*/forwardRef(function (_ref2, ref) {
39
49
  }, /*#__PURE__*/React.createElement("div", _extends({
40
50
  ref: _rootRef,
41
51
  className: classNames(styles['lc-view-page'], _defineProperty(_defineProperty({}, styles.isloading, loading), className, !!className))
42
- }, props), /*#__PURE__*/React.createElement(Canvas, null), loading ? /*#__PURE__*/React.createElement(Masker, null, /*#__PURE__*/React.createElement(Loading, null)) : null)));
52
+ }, props), /*#__PURE__*/React.createElement(Suspense, {
53
+ fallback: /*#__PURE__*/React.createElement(Skeleton, {
54
+ active: true,
55
+ title: {
56
+ width: '70%'
57
+ },
58
+ paragraph: {
59
+ rows: 9
60
+ }
61
+ })
62
+ }, loadMount ? /*#__PURE__*/React.createElement(Canvas, {
63
+ dsRef: _dsRef
64
+ }) : null))), loading ? /*#__PURE__*/React.createElement(Loading, null) : null);
43
65
  });
44
66
  export default LCPage;
@@ -9,6 +9,7 @@ var View = function View(_ref) {
9
9
  var code = _ref.code,
10
10
  props = _objectWithoutProperties(_ref, _excluded);
11
11
  return /*#__PURE__*/React.createElement(EventBusProvider, {
12
+ key: code,
12
13
  runtime: RUNTIME.LIVE
13
14
  }, /*#__PURE__*/React.createElement(ContextProvider, {
14
15
  code: code
@@ -1,9 +1,10 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import React, { useRef } from 'react';
2
+ import React, { useRef, useEffect } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import { useMemoizedFn } from 'ahooks';
5
5
  import classNames from 'classnames';
6
6
  import styled from 'styled-components';
7
+ import { useContext } from "../../../engine/provider/ContextProvider";
7
8
  import Wrapper from "../Wrapper";
8
9
  import styles from "./index.less";
9
10
  import { omitBadProps } from "../../../engine/tools/helper";
@@ -19,8 +20,21 @@ var LCBox = function LCBox(_ref) {
19
20
  children = _ref.children,
20
21
  className = _ref.className,
21
22
  css = _ref.css,
22
- style = _ref.style;
23
+ style = _ref.style,
24
+ advance = _ref.advance;
23
25
  var ref = useRef();
26
+ var ctx = useContext();
27
+ useEffect(function () {
28
+ ctx.doAction(advance.events.onMount);
29
+ return function () {
30
+ return ctx.doAction(advance.events.onUnmount);
31
+ };
32
+ }, []);
33
+ var handleClick = useMemoizedFn(function (e) {
34
+ ctx.doAction(advance.events.onClick, {
35
+ e: e
36
+ });
37
+ });
24
38
  var getTargetDom = useMemoizedFn(function () {
25
39
  return ref.current;
26
40
  });
@@ -32,7 +46,8 @@ var LCBox = function LCBox(_ref) {
32
46
  ref: ref,
33
47
  className: classNames(styles['lc-component-box'], _defineProperty({}, className, !!className)),
34
48
  style: style,
35
- $css: css
49
+ $css: css,
50
+ onClick: handleClick
36
51
  }, children));
37
52
  };
38
53
  LCBox.propTypes = {
@@ -21,18 +21,18 @@
21
21
  "key": "onMount",
22
22
  "name": "组件首次渲染时",
23
23
  "desc": "在组件首次渲染时,执行方法",
24
- "func": "function onMount(params) {\n\t\n}"
24
+ "func": "function onMount() {\n\t\n}"
25
25
  },
26
26
  {
27
27
  "key": "onUnmount",
28
28
  "name": "组件卸载时",
29
29
  "desc": "在组件卸载时,执行方法。",
30
- "func": "function onUnmount(params) {\n\t\n}"
30
+ "func": "function onUnmount() {\n\t\n}"
31
31
  },
32
32
  {
33
33
  "key": "onClick",
34
34
  "name": "点击事件",
35
- "desc": "点击文本时,执行方法",
35
+ "desc": "点击组件时,执行方法",
36
36
  "func": "function onClick(e) {\n\t\n}"
37
37
  }
38
38
  ]
@@ -1,7 +1,7 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import React, { useRef } from 'react';
2
+ import React, { useRef, useEffect } from 'react';
3
3
  import PropTypes from 'prop-types';
4
- import { useMemoizedFn, useMount, useUnmount } from 'ahooks';
4
+ import { useMemoizedFn } from 'ahooks';
5
5
  import styled from 'styled-components';
6
6
  import classNames from 'classnames';
7
7
  import { useContext } from "../../../engine/provider/ContextProvider";
@@ -32,12 +32,12 @@ var LCButton = function LCButton(_ref) {
32
32
  advance = _ref.advance;
33
33
  var ref = useRef();
34
34
  var ctx = useContext();
35
- useMount(function () {
35
+ useEffect(function () {
36
36
  ctx.doAction(advance.events.onMount);
37
- });
38
- useUnmount(function () {
39
- ctx.doAction(advance.events.onUnmount);
40
- });
37
+ return function () {
38
+ return ctx.doAction(advance.events.onUnmount);
39
+ };
40
+ }, []);
41
41
  var handleClick = useMemoizedFn(function (e) {
42
42
  if (onClick) {
43
43
  onClick(e);
@@ -101,7 +101,7 @@
101
101
  "default": "hidden"
102
102
  }
103
103
  ],
104
- "css": {},
104
+ "css": "",
105
105
  "advance": {
106
106
  "events": [
107
107
  {
@@ -119,7 +119,7 @@
119
119
  {
120
120
  "key": "onClick",
121
121
  "name": "点击事件",
122
- "desc": "点击文本时,执行方法",
122
+ "desc": "点击按钮时,执行方法",
123
123
  "func": "function onClick(e) {\n\t\n}"
124
124
  }
125
125
  ]
@@ -5,6 +5,7 @@
5
5
  "icon": "icon-cardlist",
6
6
  "group": "advance",
7
7
  "groupName": "高级",
8
+ "hidden": true,
8
9
  "order": 1,
9
10
  "props": [
10
11
  {
@@ -8,6 +8,7 @@ import { useMemoizedFn, useUpdateEffect, useCreation } from 'ahooks';
8
8
  import { Modal, Button } from 'luck-design/antd';
9
9
  import classNames from 'classnames';
10
10
  import styled from 'styled-components';
11
+ import { isNil } from 'lodash';
11
12
  import { LDActions } from "../../../../index";
12
13
  import { useContext } from "../../../engine/provider/ContextProvider";
13
14
  import { omitBadProps } from "../../../engine/tools/helper";
@@ -86,13 +87,9 @@ var LCDialog = function LCDialog(_ref) {
86
87
  }, _callee);
87
88
  })));
88
89
  var _footer = useCreation(function () {
89
- var _btnGroup$todoList;
90
90
  if (!footer) return {
91
91
  footer: null
92
92
  };
93
- if (!(btnGroup !== null && btnGroup !== void 0 && (_btnGroup$todoList = btnGroup.todoList) !== null && _btnGroup$todoList !== void 0 && _btnGroup$todoList.length)) return {
94
- confirmLoading: loading
95
- };
96
93
  return {
97
94
  footer: /*#__PURE__*/React.createElement(Footer, null, /*#__PURE__*/React.createElement(LDActions, _extends({}, btnGroup, {
98
95
  doAction: function doAction(action) {
@@ -111,7 +108,7 @@ var LCDialog = function LCDialog(_ref) {
111
108
  onClick: handleOk
112
109
  }, okText))
113
110
  };
114
- }, [footer, btnGroup, loading]);
111
+ }, [footer, btnGroup, loading, cancelText, okText]);
115
112
  var getTargetDom = useMemoizedFn(function () {
116
113
  var _domRef$current;
117
114
  return (_domRef$current = domRef.current) === null || _domRef$current === void 0 ? void 0 : _domRef$current.closest('.ant-modal-content');
@@ -155,7 +152,6 @@ var LCDialog = function LCDialog(_ref) {
155
152
  }, /*#__PURE__*/React.createElement(Modal, _extends({
156
153
  title: _title,
157
154
  visible: open,
158
- getContainer: getContainer,
159
155
  width: width,
160
156
  mask: mask,
161
157
  maskStyle: maskStyle,
@@ -164,7 +160,10 @@ var LCDialog = function LCDialog(_ref) {
164
160
  overflowY: 'auto',
165
161
  marginTop: 0
166
162
  },
167
- wrapClassName: classNames(styles['lc-component-dialog-wrapper'], _defineProperty({}, wrapClassName, !!wrapClassName))
163
+ wrapClassName: classNames(styles['lc-component-dialog-wrapper'], _defineProperty({}, wrapClassName, !!wrapClassName)),
164
+ getContainer: isNil(getContainer) ? function () {
165
+ return document.getElementById('root') || document.getElementById('react-content') || document.body;
166
+ } : getContainer
168
167
  }, _footer, {
169
168
  onOk: handleOk,
170
169
  onCancel: function onCancel() {
@@ -106,7 +106,7 @@
106
106
  {
107
107
  "key": "btnGroup",
108
108
  "name": "按钮组",
109
- "desc": "底部按钮区域的按钮组(参考按钮配置)",
109
+ "desc": "底部按钮区域的按钮组",
110
110
  "type": "_ActionsEditor",
111
111
  "default": { "display": "button", "max": 2, "moreText": "操作", "todoList": [] },
112
112
  "wrapper": "collapse",
@@ -136,7 +136,7 @@
136
136
  {
137
137
  "key": "onClose",
138
138
  "name": "对话框关闭时",
139
- "desc": "在对话框打开时,执行方法,promise反馈false无法截断关闭",
139
+ "desc": "在对话框关闭时,执行方法",
140
140
  "func": "function onClose() {\n\t\n}"
141
141
  },
142
142
  {
@@ -5,6 +5,7 @@
5
5
  "icon": "icon-drawer",
6
6
  "group": "basic",
7
7
  "groupName": "基础",
8
+ "hidden": true,
8
9
  "order": 1,
9
10
  "props": [
10
11
  {
@@ -18,6 +18,13 @@
18
18
  "type": "switch",
19
19
  "default": true
20
20
  },
21
+ {
22
+ "key": "showPop",
23
+ "name": "辅助选择",
24
+ "type": "_ComplexPop",
25
+ "wrapper": "hidden",
26
+ "default": true
27
+ },
21
28
  {
22
29
  "key": "generalSetting",
23
30
  "name": "通用配置",
@@ -15,12 +15,14 @@
15
15
  {
16
16
  "key": "showTime",
17
17
  "name": "时间选择",
18
- "type": "switch"
18
+ "type": "switch",
19
+ "default": false
19
20
  },
20
21
  {
21
22
  "key": "allowClear",
22
23
  "name": "允许清除",
23
- "type": "switch"
24
+ "type": "switch",
25
+ "default": true
24
26
  },
25
27
  {
26
28
  "key": "format",
@@ -15,7 +15,8 @@
15
15
  {
16
16
  "key": "step",
17
17
  "name": "步数",
18
- "type": "number"
18
+ "type": "number",
19
+ "default": 1
19
20
  },
20
21
  {
21
22
  "key": "min",
@@ -25,7 +26,7 @@
25
26
  {
26
27
  "key": "max",
27
28
  "name": "最大值",
28
- "type": "string"
29
+ "type": "number"
29
30
  },
30
31
  {
31
32
  "key": "addonBefore",
@@ -22,7 +22,7 @@
22
22
  "key": "screenable",
23
23
  "name": "弹窗选择",
24
24
  "type": "switch",
25
- "default": "true"
25
+ "default": true
26
26
  },
27
27
  {
28
28
  "key": "mode",
@@ -3,11 +3,11 @@ 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", "state"];
6
+ var _excluded = ["advance", "state", "render"];
7
7
  import React, { useRef, forwardRef, Fragment, useImperativeHandle } from 'react';
8
8
  import { useMemoizedFn, useCreation, useUnmount } from 'ahooks';
9
9
  import classNames from 'classnames';
10
- import { reduce, includes, isNil, cloneDeep, last, startsWith, isString } from 'lodash';
10
+ import { reduce, includes, isNil, cloneDeep, last, startsWith, isString, xor } from 'lodash';
11
11
  import { BasicDivider } from 'luck-design';
12
12
  import { Collapse } from '@luck-design-biz/base';
13
13
  import { formatMessage, getPageQuery } from '@luck-design-biz/base/utils';
@@ -56,7 +56,7 @@ var getMthodParams = function getMthodParams(methodStr) {
56
56
  return [];
57
57
  };
58
58
  var LCForm = /*#__PURE__*/forwardRef(function (_ref3, ref) {
59
- var _ctx$state2;
59
+ var _ctx$state2, _promiseRef$current2;
60
60
  var id = _ref3.id,
61
61
  className = _ref3.className,
62
62
  blocks = _ref3.blocks,
@@ -228,9 +228,7 @@ var LCForm = /*#__PURE__*/forwardRef(function (_ref3, ref) {
228
228
  return wrapperRef.current;
229
229
  });
230
230
  var handleDefaultDataSourceFormat = useMemoizedFn(function (defaultDataSourceFormat, defaultValues) {
231
- if (isNil(defaultDataSourceFormat)) return function () {
232
- return defaultValues;
233
- };
231
+ if (isNil(defaultDataSourceFormat)) return function () {};
234
232
  return executeCode(ctx, defaultDataSourceFormat, ['defaultValues'], defaultValues);
235
233
  });
236
234
  var handleDataSourceFormat = useMemoizedFn(function (type, dataSourceFormat, dataSetKey, _ref6) {
@@ -323,6 +321,7 @@ var LCForm = /*#__PURE__*/forwardRef(function (_ref3, ref) {
323
321
  return reduce(fields, function (result, setting) {
324
322
  var advance = setting.advance,
325
323
  _state = setting.state,
324
+ render = setting.render,
326
325
  rest = _objectWithoutProperties(setting, _excluded);
327
326
  var isShow = true;
328
327
  if (ctx.runtime !== RUNTIME.DESIGN && _state) {
@@ -355,6 +354,14 @@ var LCForm = /*#__PURE__*/forwardRef(function (_ref3, ref) {
355
354
  };
356
355
  }
357
356
  result.push(_objectSpread(_objectSpread({}, _props), {}, {
357
+ render: render ? function (v, d, i, p) {
358
+ return /*#__PURE__*/React.createElement(RuntimeComp, {
359
+ value: v,
360
+ data: d,
361
+ rowIndex: i,
362
+ params: p
363
+ }, render.replace(/(function\s*\w*\s*)\([^)]*\)(\s*{)/, '$1()$2'));
364
+ } : null,
358
365
  events: advance !== null && advance !== void 0 && advance.events ? reduce(advance.events, function (result, value, key) {
359
366
  //处理事件
360
367
  result[key] = function () {
@@ -399,21 +406,29 @@ var LCForm = /*#__PURE__*/forwardRef(function (_ref3, ref) {
399
406
  };
400
407
  if (item.type === 'auto') data = _objectSpread(_objectSpread({}, data), {}, {
401
408
  col: item.cols
402
- });else data = _objectSpread(_objectSpread({}, data), {}, {
403
- suppressPreset: item.suppressPreset,
404
- height: item.height,
405
- bordered: item.bordered,
406
- draggable: item.draggable,
407
- orderByAdd: item.orderByAdd,
408
- hideActionsColumn: item.suppressActions,
409
- actionsWidth: item.actionsColumnWidth,
410
- columnsReset: function columnsReset(columns) {
411
- return handleColumnsReset(item.columnsReset, columns);
412
- },
413
- onGridFormReady: function onGridFormReady(_ref, params, gridForm) {
414
- return handleGridFormReady(item.onGridFormReady, _ref, params, gridForm);
409
+ });else {
410
+ data = _objectSpread(_objectSpread({}, data), {}, {
411
+ suppressPreset: item.suppressPreset,
412
+ height: item.height,
413
+ bordered: item.bordered,
414
+ draggable: item.draggable,
415
+ orderByAdd: item.orderByAdd,
416
+ hideActionsColumn: item.suppressActions,
417
+ actionsWidth: item.actionsColumnWidth,
418
+ operates: item.operates ? function (ops) {
419
+ return xor(ops, xor(['add', 'delete', 'update'], item.operates));
420
+ } : null,
421
+ columnsReset: function columnsReset(columns) {
422
+ return handleColumnsReset(item.columnsReset, columns);
423
+ },
424
+ onGridFormReady: function onGridFormReady(_ref, params, gridForm) {
425
+ return handleGridFormReady(item.onGridFormReady, _ref, params, gridForm);
426
+ }
427
+ });
428
+ if (item.suppressbatch) {
429
+ data.rowSelection = false;
415
430
  }
416
- });
431
+ }
417
432
  if (item.actionsColumnReset) data = _objectSpread(_objectSpread({}, data), {}, {
418
433
  resetActionsColumn: function resetActionsColumn(data, index, actions, params) {
419
434
  return handleResetActionsColumn(item.actionsColumnReset, data, index, actions, params);
@@ -577,7 +592,8 @@ var LCForm = /*#__PURE__*/forwardRef(function (_ref3, ref) {
577
592
  }
578
593
  return (_promiseRef$current = promiseRef.current) === null || _promiseRef$current === void 0 ? void 0 : _promiseRef$current.call.apply(_promiseRef$current, [promiseRef].concat(rest));
579
594
  },
580
- afterInit: afterInit
595
+ afterInit: afterInit,
596
+ validateErrorCallback: (_promiseRef$current2 = promiseRef.current) === null || _promiseRef$current2 === void 0 ? void 0 : _promiseRef$current2.call(promiseRef)
581
597
  }));
582
598
  });
583
599
  LCForm.defaultProps = omitBadProps(defaultMeta);
@@ -114,7 +114,7 @@
114
114
  {
115
115
  "key": "dataset",
116
116
  "name": "数据集",
117
- "desc": "选择系统中的可用树形数据集",
117
+ "desc": "选择系统中的可用数据集",
118
118
  "type": "_DataSetSelector",
119
119
  "component": "form",
120
120
  "next": {
@@ -203,13 +203,22 @@
203
203
  "type": "_BlockEditor",
204
204
  "wrapper": "hidden",
205
205
  "default": {
206
- "form": { "readOnly": false, "col": 4 },
207
- "table": {
206
+ "auto": { "readOnly": false, "cols": 4 },
207
+ "grid": {
208
+ "readOnly": false,
209
+ "suppressPreset": false,
210
+ "height": "100%",
211
+ "bordered": false,
212
+ "draggable": false,
213
+ "orderByAdd": "asc",
214
+ "suppressActions": false,
215
+ "actionsColumnWidth": 160
216
+ },
217
+ "writer": {
208
218
  "readOnly": false,
209
219
  "suppressPreset": false,
210
220
  "height": "100%",
211
221
  "bordered": false,
212
- "popTitleKey": "title",
213
222
  "draggable": false,
214
223
  "orderByAdd": "asc",
215
224
  "suppressActions": false,
@@ -245,7 +254,7 @@
245
254
  "name": "格式化默认数据",
246
255
  "desc": "格式化新增时默认数据",
247
256
  "type": "_JSEditor",
248
- "defaultCode": "function defaultDataSourceFormat(defaultValues) { \n return defaultValues; \n}",
257
+ "defaultCode": "function defaultDataSourceFormat(defaultValues) { \n return {}; \n}",
249
258
  "mustConfirm": true,
250
259
  "wrapper": "collapse",
251
260
  "wrapperProps": { "suppressIcon": true }
@@ -262,6 +271,11 @@
262
271
  }
263
272
  ],
264
273
  "_grid_props": [
274
+ {
275
+ "key": "height",
276
+ "name": "高度",
277
+ "type": "_WidthHeight"
278
+ },
265
279
  {
266
280
  "key": "readOnly",
267
281
  "name": "只读",
@@ -272,11 +286,6 @@
272
286
  "name": "关闭预设",
273
287
  "type": "switch"
274
288
  },
275
- {
276
- "key": "height",
277
- "name": "高度",
278
- "type": "_WidthHeight"
279
- },
280
289
  {
281
290
  "key": "bordered",
282
291
  "name": "边框线",
@@ -287,6 +296,11 @@
287
296
  "name": "拖拽排序",
288
297
  "type": "switch"
289
298
  },
299
+ {
300
+ "key": "suppressbatch",
301
+ "name": "关闭批量",
302
+ "type": "switch"
303
+ },
290
304
  {
291
305
  "key": "orderByAdd",
292
306
  "name": "排序方式",
@@ -302,6 +316,26 @@
302
316
  }
303
317
  ]
304
318
  },
319
+ {
320
+ "key": "operates",
321
+ "name": "基础操作",
322
+ "type": "checkbox",
323
+ "options": [
324
+ {
325
+ "label": "添加",
326
+ "value": "add"
327
+ },
328
+ {
329
+ "label": "删除",
330
+ "value": "delete"
331
+ },
332
+ {
333
+ "label": "修改",
334
+ "value": "update"
335
+ }
336
+ ],
337
+ "defaultValue": ["add", "delete", "update"]
338
+ },
305
339
  {
306
340
  "key": "actionsColumn",
307
341
  "name": "操作列",
@@ -336,7 +370,7 @@
336
370
  "name": "格式化默认数据",
337
371
  "desc": "格式化新增时默认数据",
338
372
  "type": "_JSEditor",
339
- "defaultCode": "function defaultDataSourceFormat(defaultValues) { \n return defaultValues; \n}",
373
+ "defaultCode": "function defaultDataSourceFormat(defaultValues) { \n return {}; \n}",
340
374
  "mustConfirm": true,
341
375
  "wrapper": "collapse",
342
376
  "wrapperProps": { "suppressIcon": true }
@@ -447,7 +481,7 @@
447
481
  "name": "格式化默认数据",
448
482
  "desc": "格式化新增时默认数据",
449
483
  "type": "_JSEditor",
450
- "defaultCode": "function defaultDataSourceFormat(defaultValues) { \n return defaultValues; \n}",
484
+ "defaultCode": "function defaultDataSourceFormat(defaultValues) { \n return {}; \n}",
451
485
  "mustConfirm": true,
452
486
  "wrapper": "collapse",
453
487
  "wrapperProps": { "suppressIcon": true }
@@ -5,6 +5,7 @@
5
5
  "icon": "icon-iframe",
6
6
  "group": "basic",
7
7
  "groupName": "基础",
8
+ "hidden": true,
8
9
  "order": 1,
9
10
  "props": [
10
11
  {
@@ -27,6 +28,6 @@
27
28
  "default": true
28
29
  }
29
30
  ],
30
- "css": {},
31
+ "css": "",
31
32
  "advance": {}
32
33
  }