@luck-design-biz/luckda 1.0.6-13tl → 1.0.7

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 (169) hide show
  1. package/es/components/Builder/index.js +37 -27
  2. package/es/components/ComplexItem/index.js +5 -3
  3. package/es/components/ComplexItem/service.js +6 -3
  4. package/es/components/LdAutoForm/index.js +25 -12
  5. package/es/components/LdCard/index.js +10 -8
  6. package/es/components/LdCom/index.js +3 -2
  7. package/es/components/LdFormList/index.js +5 -4
  8. package/es/components/LdGrid/index.js +29 -20
  9. package/es/components/LdGridForm/index.js +16 -7
  10. package/es/components/LdInfoPanel/index.js +16 -10
  11. package/es/helper/FromItems.js +64 -5
  12. package/es/helper/form.js +8 -2
  13. package/es/helper/ldBuilder.js +9 -5
  14. package/es/helper/ldComBuild.js +16 -11
  15. package/es/locales/zh-CN.js +40 -4
  16. package/es/lowcode/constants/api-url.js +202 -175
  17. package/es/lowcode/constants/event-topics.js +2 -0
  18. package/es/lowcode/constants/index.js +5 -4
  19. package/es/lowcode/engine/meta/components-list.json +6 -0
  20. package/es/lowcode/engine/meta/fielddate.props.default.json +1 -0
  21. package/es/lowcode/engine/meta/fielddate.props.json +48 -0
  22. package/es/lowcode/engine/meta/js-editor/auto-complete.json +5 -0
  23. package/es/lowcode/engine/meta/pagecomponent.props.default.json +8 -0
  24. package/es/lowcode/engine/meta/pagecomponent.props.json +41 -0
  25. package/es/lowcode/engine/meta/proxy.props.default.json +15 -0
  26. package/es/lowcode/engine/meta/proxy.props.json +66 -0
  27. package/es/lowcode/engine/provider/ContextProvider/index.js +45 -9
  28. package/es/lowcode/engine/provider/ContextProvider/usePageDataStore.js +36 -30
  29. package/es/lowcode/engine/provider/ContextProvider/usePageVar.js +11 -5
  30. package/es/lowcode/engine/provider/ContextProvider/useTodo.js +2 -4
  31. package/es/lowcode/engine/provider/EventBusProvider.js +14 -4
  32. package/es/lowcode/engine/provider/PageProxyProvider.js +95 -0
  33. package/es/lowcode/engine/provider/RemoteSourceProvider.js +10 -12
  34. package/es/lowcode/engine/tools/helper.js +44 -5
  35. package/es/lowcode/engine/tools/initDS.js +4 -4
  36. package/es/lowcode/painter/Design.js +1 -0
  37. package/es/lowcode/painter/DesignOperator.js +129 -27
  38. package/es/lowcode/painter/DesignToolbar.js +88 -173
  39. package/es/lowcode/painter/components/AdvancePanel.js +28 -10
  40. package/es/lowcode/painter/components/TipIcon.js +12 -4
  41. package/es/lowcode/painter/components/field-setting/SettingUI.js +56 -4
  42. package/es/lowcode/painter/components/field-setting/index.js +24 -1
  43. package/es/lowcode/painter/components/shortcut-modal/KeyIcon.js +11 -0
  44. package/es/lowcode/painter/components/shortcut-modal/index.js +208 -0
  45. package/es/lowcode/painter/panel-section/BlockEditor/index.js +10 -19
  46. package/es/lowcode/painter/panel-section/BlocksEditor/index.js +4 -1
  47. package/es/lowcode/painter/panel-section/ConditionCheck.js +0 -1
  48. package/es/lowcode/painter/panel-section/DataSetSelector.js +6 -3
  49. package/es/lowcode/painter/panel-section/FieldsSetting.js +1 -1
  50. package/es/lowcode/painter/panel-section/IconConditionSelector.js +2 -1
  51. package/es/lowcode/painter/panel-section/JSEditor/ToolBar.js +7 -4
  52. package/es/lowcode/painter/panel-section/JSEditor/index.js +15 -5
  53. package/es/lowcode/painter/panel-section/JSEditor/index.less +4 -0
  54. package/es/lowcode/painter/panel-section/ProxyLinker.js +137 -0
  55. package/es/lowcode/painter/panel-section/ProxyParams.js +28 -0
  56. package/es/lowcode/painter/panel-section/ProxyParamsSetter.js +240 -0
  57. package/es/lowcode/painter/style/panel-item.less +1 -0
  58. package/es/lowcode/preview/DebugTool.js +78 -0
  59. package/es/lowcode/preview/DebugToolDetail.js +103 -0
  60. package/es/lowcode/preview/index.js +10 -17
  61. package/es/lowcode/preview/useDebugSettings.js +62 -0
  62. package/es/lowcode/view/Canvas.js +5 -1
  63. package/es/lowcode/view/Page.js +8 -3
  64. package/es/lowcode/view/lc-components/CardList/index.js +3 -0
  65. package/es/lowcode/view/lc-components/Dialog/index.js +9 -7
  66. package/es/lowcode/view/lc-components/Drawer/index.js +2 -0
  67. package/es/lowcode/view/lc-components/FieldDate/meta.json +48 -0
  68. package/es/lowcode/view/lc-components/Form/index.js +3 -0
  69. package/es/lowcode/view/lc-components/Proxy/FunctionDesign.js +17 -0
  70. package/es/lowcode/view/lc-components/Proxy/FunctionLive.js +23 -0
  71. package/es/lowcode/view/lc-components/Proxy/FunctionPreview.js +23 -0
  72. package/es/lowcode/view/lc-components/Proxy/index.js +42 -0
  73. package/es/lowcode/view/lc-components/Proxy/index.less +5 -0
  74. package/es/lowcode/view/lc-components/Proxy/meta.json +66 -0
  75. package/es/lowcode/view/lc-components/Table/components/TopImex.js +5 -23
  76. package/es/lowcode/view/lc-components/Table/index.js +12 -6
  77. package/es/lowcode/view/lc-components/Tabs/index.js +6 -2
  78. package/es/lowcode/view/lc-components/Tree/index.js +3 -0
  79. package/es/lowcode/view/lc-components/Wrapper.js +7 -1
  80. package/es/services.js +25 -7
  81. package/es/utils/action.js +3 -2
  82. package/es/utils/form.js +37 -4
  83. package/es/utils/grid.js +2 -1
  84. package/lib/components/Builder/index.js +36 -26
  85. package/lib/components/ComplexItem/index.js +5 -3
  86. package/lib/components/ComplexItem/service.js +6 -3
  87. package/lib/components/LdAutoForm/index.js +22 -9
  88. package/lib/components/LdCard/index.js +10 -8
  89. package/lib/components/LdCom/index.js +3 -2
  90. package/lib/components/LdFormList/index.js +4 -3
  91. package/lib/components/LdGrid/index.js +29 -20
  92. package/lib/components/LdGridForm/index.js +13 -4
  93. package/lib/components/LdInfoPanel/index.js +15 -9
  94. package/lib/helper/FromItems.js +64 -5
  95. package/lib/helper/form.js +8 -2
  96. package/lib/helper/ldBuilder.js +8 -5
  97. package/lib/helper/ldComBuild.js +14 -9
  98. package/lib/locales/zh-CN.js +40 -4
  99. package/lib/lowcode/constants/api-url.js +204 -175
  100. package/lib/lowcode/constants/event-topics.js +3 -1
  101. package/lib/lowcode/constants/index.js +6 -5
  102. package/lib/lowcode/engine/meta/components-list.json +6 -0
  103. package/lib/lowcode/engine/meta/fielddate.props.default.json +1 -0
  104. package/lib/lowcode/engine/meta/fielddate.props.json +48 -0
  105. package/lib/lowcode/engine/meta/js-editor/auto-complete.json +5 -0
  106. package/lib/lowcode/engine/meta/pagecomponent.props.default.json +8 -0
  107. package/lib/lowcode/engine/meta/pagecomponent.props.json +41 -0
  108. package/lib/lowcode/engine/meta/proxy.props.default.json +15 -0
  109. package/lib/lowcode/engine/meta/proxy.props.json +66 -0
  110. package/lib/lowcode/engine/provider/ContextProvider/index.js +50 -13
  111. package/lib/lowcode/engine/provider/ContextProvider/usePageDataStore.js +37 -31
  112. package/lib/lowcode/engine/provider/ContextProvider/usePageVar.js +10 -4
  113. package/lib/lowcode/engine/provider/ContextProvider/useTodo.js +1 -3
  114. package/lib/lowcode/engine/provider/EventBusProvider.js +14 -4
  115. package/lib/lowcode/engine/provider/PageProxyProvider.js +103 -0
  116. package/lib/lowcode/engine/provider/RemoteSourceProvider.js +10 -12
  117. package/lib/lowcode/engine/tools/helper.js +44 -4
  118. package/lib/lowcode/engine/tools/initDS.js +4 -4
  119. package/lib/lowcode/painter/Design.js +1 -0
  120. package/lib/lowcode/painter/DesignOperator.js +126 -24
  121. package/lib/lowcode/painter/DesignToolbar.js +84 -169
  122. package/lib/lowcode/painter/components/AdvancePanel.js +27 -9
  123. package/lib/lowcode/painter/components/TipIcon.js +12 -4
  124. package/lib/lowcode/painter/components/field-setting/SettingUI.js +55 -3
  125. package/lib/lowcode/painter/components/field-setting/index.js +24 -1
  126. package/lib/lowcode/painter/components/shortcut-modal/KeyIcon.js +18 -0
  127. package/lib/lowcode/painter/components/shortcut-modal/index.js +215 -0
  128. package/lib/lowcode/painter/panel-section/BlockEditor/index.js +9 -18
  129. package/lib/lowcode/painter/panel-section/BlocksEditor/index.js +4 -1
  130. package/lib/lowcode/painter/panel-section/ConditionCheck.js +0 -1
  131. package/lib/lowcode/painter/panel-section/DataSetSelector.js +6 -3
  132. package/lib/lowcode/painter/panel-section/FieldsSetting.js +1 -1
  133. package/lib/lowcode/painter/panel-section/IconConditionSelector.js +2 -1
  134. package/lib/lowcode/painter/panel-section/JSEditor/ToolBar.js +7 -4
  135. package/lib/lowcode/painter/panel-section/JSEditor/index.js +14 -4
  136. package/lib/lowcode/painter/panel-section/JSEditor/index.less +4 -0
  137. package/lib/lowcode/painter/panel-section/ProxyLinker.js +145 -0
  138. package/lib/lowcode/painter/panel-section/ProxyParams.js +35 -0
  139. package/lib/lowcode/painter/panel-section/ProxyParamsSetter.js +248 -0
  140. package/lib/lowcode/painter/style/panel-item.less +1 -0
  141. package/lib/lowcode/preview/DebugTool.js +86 -0
  142. package/lib/lowcode/preview/DebugToolDetail.js +111 -0
  143. package/lib/lowcode/preview/index.js +10 -18
  144. package/lib/lowcode/preview/useDebugSettings.js +69 -0
  145. package/lib/lowcode/view/Canvas.js +5 -1
  146. package/lib/lowcode/view/Page.js +8 -3
  147. package/lib/lowcode/view/lc-components/CardList/index.js +3 -0
  148. package/lib/lowcode/view/lc-components/Dialog/index.js +9 -7
  149. package/lib/lowcode/view/lc-components/Drawer/index.js +2 -0
  150. package/lib/lowcode/view/lc-components/FieldDate/meta.json +48 -0
  151. package/lib/lowcode/view/lc-components/Form/index.js +3 -0
  152. package/lib/lowcode/view/lc-components/Proxy/FunctionDesign.js +24 -0
  153. package/lib/lowcode/view/lc-components/Proxy/FunctionLive.js +30 -0
  154. package/lib/lowcode/view/lc-components/Proxy/FunctionPreview.js +30 -0
  155. package/lib/lowcode/view/lc-components/Proxy/index.js +50 -0
  156. package/lib/lowcode/view/lc-components/Proxy/index.less +5 -0
  157. package/lib/lowcode/view/lc-components/Proxy/meta.json +66 -0
  158. package/lib/lowcode/view/lc-components/Table/components/TopImex.js +4 -22
  159. package/lib/lowcode/view/lc-components/Table/index.js +12 -6
  160. package/lib/lowcode/view/lc-components/Tabs/index.js +5 -1
  161. package/lib/lowcode/view/lc-components/Tree/index.js +3 -0
  162. package/lib/lowcode/view/lc-components/Wrapper.js +6 -0
  163. package/lib/services.js +26 -7
  164. package/lib/utils/action.js +6 -0
  165. package/lib/utils/form.js +38 -4
  166. package/lib/utils/grid.js +2 -1
  167. package/package.json +1 -1
  168. package/es/lowcode/engine/meta/button.api.json +0 -0
  169. package/lib/lowcode/engine/meta/button.api.json +0 -0
@@ -0,0 +1,248 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _ahooks = require("ahooks");
14
+ var _antd = require("luck-design/antd");
15
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
16
+ var _utils = require("@luck-design-biz/base/utils");
17
+ var SmallForm = (0, _styledComponents.default)(_antd.Form).withConfig({
18
+ displayName: "SmallForm",
19
+ componentId: "luckda-6530__sc-1aq87r3-0"
20
+ })(["font-size:12px;padding-top:8px;.ant-form-item{font-size:12px;margin-bottom:8px;.ant-form-item-label,.ant-form-item-control{height:24px;line-height:24px !important;}.ant-form-item-control.has-error{height:36px;.ant-form-explain{font-size:12px;}}label{font-size:12px;}}"]);
21
+ var SmallCollapse = (0, _styledComponents.default)(_antd.Collapse).withConfig({
22
+ displayName: "SmallCollapse",
23
+ componentId: "luckda-6530__sc-1aq87r3-1"
24
+ })(["font-size:12px;margin-bottom:8px;& > .ant-collapse-item > .ant-collapse-header{padding:4px 8px 4px 36px;}.ant-collapse-content > .ant-collapse-content-box{padding:4px 8px;}"]);
25
+ var ButtonWrapper = _styledComponents.default.div.withConfig({
26
+ displayName: "ButtonWrapper",
27
+ componentId: "luckda-6530__sc-1aq87r3-2"
28
+ })(["display:grid;grid-template-columns:1fr 1fr;gap:8px;"]);
29
+ var _I18N_PREFIX_ = 'luckda.lowcode.painter.panel-section.proxy-params-setter';
30
+ var _OPTIONS_ = [{
31
+ label: (0, _utils.formatMessage)({
32
+ id: "".concat(_I18N_PREFIX_, ".param-origin.state"),
33
+ label: '页面全局状态'
34
+ }),
35
+ value: 'state'
36
+ }, {
37
+ label: (0, _utils.formatMessage)({
38
+ id: "".concat(_I18N_PREFIX_, ".param-origin.global"),
39
+ label: '页面全局变量'
40
+ }),
41
+ value: 'global'
42
+ }, {
43
+ label: (0, _utils.formatMessage)({
44
+ id: "".concat(_I18N_PREFIX_, ".param-origin.url"),
45
+ label: '页面URL参数'
46
+ }),
47
+ value: 'url'
48
+ }, {
49
+ label: (0, _utils.formatMessage)({
50
+ id: "".concat(_I18N_PREFIX_, ".param-origin.string"),
51
+ label: '字符串常量'
52
+ }),
53
+ value: 'string'
54
+ }, {
55
+ label: (0, _utils.formatMessage)({
56
+ id: "".concat(_I18N_PREFIX_, ".param-origin.num"),
57
+ label: '数字常量'
58
+ }),
59
+ value: 'num'
60
+ }, {
61
+ label: (0, _utils.formatMessage)({
62
+ id: "".concat(_I18N_PREFIX_, ".param-origin.bool"),
63
+ label: '布尔常量'
64
+ }),
65
+ value: 'bool'
66
+ }];
67
+ var ParamForm = _antd.Form.create({
68
+ name: 'param_form',
69
+ onValuesChange: function onValuesChange(props, _, allValues) {
70
+ props.onChange(props.id, allValues);
71
+ }
72
+ })(function (_ref) {
73
+ var form = _ref.form,
74
+ getForm = _ref.getForm,
75
+ defaultValue = _ref.defaultValue;
76
+ (0, _react.useEffect)(function () {
77
+ getForm(form);
78
+ }, []);
79
+ var formItemCol = {
80
+ labelCol: {
81
+ span: 8
82
+ },
83
+ wrapperCol: {
84
+ span: 16
85
+ }
86
+ };
87
+ return /*#__PURE__*/_react.default.createElement(SmallForm, {
88
+ hideRequiredMark: true,
89
+ layout: "horizontal"
90
+ }, /*#__PURE__*/_react.default.createElement(_antd.Form.Item, (0, _extends2.default)({
91
+ label: (0, _utils.formatMessage)({
92
+ id: "".concat(_I18N_PREFIX_, ".param-name"),
93
+ label: '参数名称'
94
+ })
95
+ }, formItemCol), form.getFieldDecorator('name', {
96
+ initialValue: defaultValue.name,
97
+ rules: [{
98
+ required: true,
99
+ message: (0, _utils.formatMessage)({
100
+ id: "".concat(_I18N_PREFIX_, ".warn.param-name"),
101
+ label: '请输入参数名称'
102
+ })
103
+ }]
104
+ })( /*#__PURE__*/_react.default.createElement(_antd.Input, {
105
+ size: "small"
106
+ }))), /*#__PURE__*/_react.default.createElement(_antd.Form.Item, (0, _extends2.default)({
107
+ label: (0, _utils.formatMessage)({
108
+ id: "".concat(_I18N_PREFIX_, ".param-origin"),
109
+ label: '参数来源'
110
+ })
111
+ }, formItemCol), form.getFieldDecorator('origin', {
112
+ initialValue: defaultValue.origin || 'state'
113
+ })( /*#__PURE__*/_react.default.createElement(_antd.Select, {
114
+ size: "small"
115
+ }, _OPTIONS_.map(function (item) {
116
+ return /*#__PURE__*/_react.default.createElement(_antd.Select.Option, {
117
+ key: item.value,
118
+ value: item.value
119
+ }, item.label);
120
+ })))), ['state', 'global', 'url', 'string'].includes(form.getFieldValue('origin')) && /*#__PURE__*/_react.default.createElement(_antd.Form.Item, (0, _extends2.default)({
121
+ label: (0, _utils.formatMessage)({
122
+ id: "".concat(_I18N_PREFIX_, ".param-value"),
123
+ label: '值或变量名'
124
+ })
125
+ }, formItemCol), form.getFieldDecorator('value', {
126
+ initialValue: defaultValue.value,
127
+ rules: [{
128
+ required: true,
129
+ message: (0, _utils.formatMessage)({
130
+ id: "".concat(_I18N_PREFIX_, ".warn.param-value"),
131
+ label: '请输入参数值或变量名'
132
+ })
133
+ }]
134
+ })( /*#__PURE__*/_react.default.createElement(_antd.Input, {
135
+ size: "small"
136
+ }))), form.getFieldValue('origin') === 'num' && /*#__PURE__*/_react.default.createElement(_antd.Form.Item, (0, _extends2.default)({
137
+ label: (0, _utils.formatMessage)({
138
+ id: "".concat(_I18N_PREFIX_, ".param-value"),
139
+ label: '值或变量名'
140
+ })
141
+ }, formItemCol), form.getFieldDecorator('value', {
142
+ initialValue: defaultValue.value || 0
143
+ })( /*#__PURE__*/_react.default.createElement(_antd.InputNumber, {
144
+ size: "small"
145
+ }))), form.getFieldValue('origin') === 'bool' && /*#__PURE__*/_react.default.createElement(_antd.Form.Item, (0, _extends2.default)({
146
+ label: (0, _utils.formatMessage)({
147
+ id: "".concat(_I18N_PREFIX_, ".param-value"),
148
+ label: '值或变量名'
149
+ })
150
+ }, formItemCol), form.getFieldDecorator('value', {
151
+ initialValue: defaultValue.value || false,
152
+ valuePropName: 'checked'
153
+ })( /*#__PURE__*/_react.default.createElement(_antd.Switch, {
154
+ size: "small"
155
+ }))));
156
+ });
157
+ var ProxyParamsSetter = function ProxyParamsSetter(_ref2) {
158
+ var defaultValue = _ref2.defaultValue,
159
+ onChange = _ref2.onChange;
160
+ var formsRef = (0, _react.useRef)([]);
161
+ var _useMap = (0, _ahooks.useMap)(defaultValue.map(function (item) {
162
+ return [item.id, item];
163
+ })),
164
+ _useMap2 = (0, _slicedToArray2.default)(_useMap, 2),
165
+ map = _useMap2[0],
166
+ _useMap2$ = _useMap2[1],
167
+ set = _useMap2$.set,
168
+ remove = _useMap2$.remove;
169
+ var handleAdd = (0, _ahooks.useMemoizedFn)(function () {
170
+ var _id = (0, _utils.suid)();
171
+ set(_id, {
172
+ id: _id,
173
+ origin: 'state'
174
+ });
175
+ });
176
+ var handleSave = (0, _ahooks.useMemoizedFn)(function () {
177
+ var isValid = true;
178
+ formsRef.current.some(function (_form) {
179
+ _form.validateFields(function (err, val) {
180
+ isValid = !err;
181
+ });
182
+ return !isValid;
183
+ });
184
+ if (!isValid) return;
185
+ onChange(Array.from(map).map(function (_ref3) {
186
+ var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
187
+ id = _ref4[0],
188
+ item = _ref4[1];
189
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, {
190
+ id: id
191
+ });
192
+ }));
193
+ });
194
+ var handleChange = (0, _ahooks.useMemoizedFn)(function (id, val) {
195
+ set(id, val);
196
+ });
197
+ var handleDelete = (0, _ahooks.useMemoizedFn)(function (id, index) {
198
+ formsRef.current = [];
199
+ remove(id);
200
+ });
201
+ return /*#__PURE__*/_react.default.createElement("div", null, Array.from(map).map(function (_ref5, index) {
202
+ var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
203
+ id = _ref6[0],
204
+ item = _ref6[1];
205
+ return /*#__PURE__*/_react.default.createElement(SmallCollapse, {
206
+ key: id,
207
+ activeKey: "panel"
208
+ }, /*#__PURE__*/_react.default.createElement(_antd.Collapse.Panel, {
209
+ header: "".concat((0, _utils.formatMessage)({
210
+ id: "".concat(_I18N_PREFIX_, ".param"),
211
+ label: "\u9875\u9762\u53C2\u6570"
212
+ })).concat(index + 1),
213
+ key: "panel",
214
+ extra: /*#__PURE__*/_react.default.createElement(_antd.Icon, {
215
+ type: "minus-circle",
216
+ style: {
217
+ color: 'var(--luck-color-danger)'
218
+ },
219
+ onClick: function onClick() {
220
+ return handleDelete(id);
221
+ }
222
+ })
223
+ }, /*#__PURE__*/_react.default.createElement(ParamForm, {
224
+ id: id,
225
+ defaultValue: item,
226
+ getForm: function getForm(_form) {
227
+ return formsRef.current[index] = _form;
228
+ },
229
+ onChange: handleChange
230
+ })));
231
+ }), /*#__PURE__*/_react.default.createElement(ButtonWrapper, null, /*#__PURE__*/_react.default.createElement(_antd.Button, {
232
+ size: "small",
233
+ block: true,
234
+ onClick: handleAdd
235
+ }, (0, _utils.formatMessage)({
236
+ id: "".concat(_I18N_PREFIX_, ".add"),
237
+ label: '添加参数'
238
+ })), /*#__PURE__*/_react.default.createElement(_antd.Button, {
239
+ size: "small",
240
+ block: true,
241
+ type: "primary",
242
+ onClick: handleSave
243
+ }, (0, _utils.formatMessage)({
244
+ id: "".concat(_I18N_PREFIX_, ".save"),
245
+ label: '保存并返回'
246
+ }))));
247
+ };
248
+ var _default = exports.default = ProxyParamsSetter;
@@ -19,6 +19,7 @@
19
19
  align-items: center;
20
20
  gap: 4px;
21
21
  user-select: none;
22
+ flex-shrink: 0;
22
23
  }
23
24
 
24
25
  .item-component {
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _ahooks = require("ahooks");
12
+ var _antd = require("luck-design/antd");
13
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
14
+ var _utils = require("@luck-design-biz/base/utils");
15
+ var _DebugToolDetail = _interopRequireDefault(require("./DebugToolDetail"));
16
+ var Wrapper = _styledComponents.default.div.withConfig({
17
+ displayName: "Wrapper",
18
+ componentId: "luckda-6530__sc-1x7h5jv-0"
19
+ })(["position:fixed;border-top-left-radius:16px;border-bottom-left-radius:16px;cursor:pointer;z-index:1000;background:rgba(40,40,40,0.5);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;transition:right 0.4s ease-in-out;"]);
20
+ var MoveIcon = _styledComponents.default.div.withConfig({
21
+ displayName: "MoveIcon",
22
+ componentId: "luckda-6530__sc-1x7h5jv-1"
23
+ })(["height:46px;border-left:1px solid rgb(191,191,191,0.4);cursor:move;&:hover{background:transparent;backdrop-filter:blur(6px);}"]);
24
+ var DebugTool = function DebugTool() {
25
+ var dragRef = (0, _react.useRef)();
26
+ var _useState = (0, _react.useState)([-32, 100]),
27
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
28
+ _useState2$ = (0, _slicedToArray2.default)(_useState2[0], 2),
29
+ right = _useState2$[0],
30
+ top = _useState2$[1],
31
+ setPostion = _useState2[1];
32
+ var _useBoolean = (0, _ahooks.useBoolean)(false),
33
+ _useBoolean2 = (0, _slicedToArray2.default)(_useBoolean, 2),
34
+ show = _useBoolean2[0],
35
+ _useBoolean2$ = _useBoolean2[1],
36
+ setTrue = _useBoolean2$.setTrue,
37
+ setFalse = _useBoolean2$.setFalse;
38
+ var handleMouseEnter = (0, _ahooks.useMemoizedFn)(function () {
39
+ setPostion([0, top]);
40
+ });
41
+ var handleMouseLeave = (0, _ahooks.useMemoizedFn)(function () {
42
+ setPostion([-32, top]);
43
+ });
44
+ var handleDragEnd = (0, _ahooks.useMemoizedFn)(function (event) {
45
+ setPostion([right, event.y]);
46
+ });
47
+ (0, _ahooks.useDrag)('', dragRef, {
48
+ onDragEnd: handleDragEnd
49
+ });
50
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Wrapper, {
51
+ style: {
52
+ right: right,
53
+ top: "".concat(top, "px")
54
+ },
55
+ onMouseEnter: handleMouseEnter,
56
+ onMouseLeave: handleMouseLeave
57
+ }, /*#__PURE__*/_react.default.createElement(_antd.Icon, {
58
+ type: "bug",
59
+ style: {
60
+ padding: '16px 8px 16px 16px'
61
+ },
62
+ onClick: setTrue
63
+ }), /*#__PURE__*/_react.default.createElement(MoveIcon, {
64
+ ref: dragRef
65
+ }, /*#__PURE__*/_react.default.createElement("svg", {
66
+ viewBox: "0 0 1024 1024",
67
+ width: "20",
68
+ height: "46"
69
+ }, /*#__PURE__*/_react.default.createElement("path", {
70
+ d: "M320 64a64 64 0 1 0 0 128 64 64 0 0 0 0-128zM704 64a64 64 0 1 0 0 128 64 64 0 0 0 0-128zM256 384a64 64 0 1 1 128 0 64 64 0 0 1-128 0zM704 320a64 64 0 1 0 0 128 64 64 0 0 0 0-128zM256 640a64 64 0 1 1 128 0 64 64 0 0 1-128 0zM320 832a64 64 0 1 0 0 128 64 64 0 0 0 0-128zM640 640a64 64 0 1 1 128 0 64 64 0 0 1-128 0zM704 832a64 64 0 1 0 0 128 64 64 0 0 0 0-128z",
71
+ fill: "#bfbfbf"
72
+ })))), /*#__PURE__*/_react.default.createElement(_antd.Drawer, {
73
+ title: (0, _utils.formatMessage)({
74
+ id: 'luckda.lowcode.design.toolbar.debugTool',
75
+ label: '调试工具'
76
+ }),
77
+ visible: show,
78
+ onClose: setFalse,
79
+ footer: false,
80
+ mask: false,
81
+ bodyStyle: {
82
+ padding: '4px 16px'
83
+ }
84
+ }, /*#__PURE__*/_react.default.createElement(_DebugToolDetail.default, null)));
85
+ };
86
+ var _default = exports.default = DebugTool;
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+ var _react = _interopRequireWildcard(require("react"));
14
+ var _ahooks = require("ahooks");
15
+ var _antd = require("luck-design/antd");
16
+ var _utils = require("@luck-design-biz/base/utils");
17
+ var _useDebugSettings3 = _interopRequireDefault(require("./useDebugSettings"));
18
+ var _apiUrl = require("../constants/api-url");
19
+ var DebugToolDetail = function DebugToolDetail(_ref) {
20
+ var form = _ref.form;
21
+ var _useDebugSettings = (0, _useDebugSettings3.default)(),
22
+ _useDebugSettings2 = (0, _slicedToArray2.default)(_useDebugSettings, 2),
23
+ debugSettings = _useDebugSettings2[0],
24
+ setDebugSetting = _useDebugSettings2[1];
25
+ var _useState = (0, _react.useState)([]),
26
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
27
+ userOptions = _useState2[0],
28
+ setUserOptions = _useState2[1];
29
+ var _useDebounceFn = (0, _ahooks.useDebounceFn)( /*#__PURE__*/function () {
30
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(value) {
31
+ var _yield$fetchSearchUse, code, list, detail;
32
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
33
+ while (1) switch (_context.prev = _context.next) {
34
+ case 0:
35
+ _context.next = 2;
36
+ return (0, _apiUrl.fetchSearchUser)({
37
+ sname: value
38
+ });
39
+ case 2:
40
+ _yield$fetchSearchUse = _context.sent;
41
+ code = _yield$fetchSearchUse.code;
42
+ list = _yield$fetchSearchUse.list;
43
+ detail = _yield$fetchSearchUse.detail;
44
+ if (code === 1) {
45
+ setUserOptions(list.map(function (id) {
46
+ var item = detail[id];
47
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, {
48
+ key: "".concat(item.sloginid),
49
+ label: item.sname
50
+ });
51
+ }));
52
+ }
53
+ case 7:
54
+ case "end":
55
+ return _context.stop();
56
+ }
57
+ }, _callee);
58
+ }));
59
+ return function (_x) {
60
+ return _ref2.apply(this, arguments);
61
+ };
62
+ }(), {
63
+ wait: 500
64
+ }),
65
+ handleSearch = _useDebounceFn.run;
66
+ return /*#__PURE__*/_react.default.createElement(_antd.Form, {
67
+ layout: "vertical"
68
+ }, /*#__PURE__*/_react.default.createElement(_antd.Form.Item, {
69
+ label: (0, _utils.formatMessage)({
70
+ id: 'luckda.lowcode.design.toolbar.selectUser',
71
+ label: '模拟登录人'
72
+ })
73
+ }, form.getFieldDecorator('account')( /*#__PURE__*/_react.default.createElement(_antd.Select, {
74
+ placeholder: (0, _utils.formatMessage)({
75
+ id: 'luckda.lowcode.design.toolbar.placeholder.selectUser',
76
+ label: '请选择模拟登录人'
77
+ }),
78
+ allowClear: true,
79
+ size: "small",
80
+ style: {
81
+ width: '100%'
82
+ },
83
+ filterOption: false,
84
+ labelInValue: true,
85
+ defaultValue: debugSettings.account ? {
86
+ value: debugSettings.account,
87
+ label: debugSettings.accountName
88
+ } : void 0,
89
+ showSearch: true,
90
+ onSearch: handleSearch,
91
+ onChange: function onChange(_opt) {
92
+ if (_opt) {
93
+ setDebugSetting('account', _opt.key);
94
+ setDebugSetting('accountName', _opt.label);
95
+ } else {
96
+ setDebugSetting('account', void 0);
97
+ setDebugSetting('accountName', void 0);
98
+ }
99
+ }
100
+ }, userOptions.map(function (_ref3) {
101
+ var key = _ref3.key,
102
+ label = _ref3.label;
103
+ return /*#__PURE__*/_react.default.createElement(_antd.Select.Option, {
104
+ key: key,
105
+ value: key
106
+ }, label);
107
+ })))));
108
+ };
109
+ var _default = exports.default = _antd.Form.create({
110
+ name: 'debug_tool'
111
+ })(DebugToolDetail);
@@ -1,36 +1,28 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _react = _interopRequireWildcard(require("react"));
11
- var _ahooks = require("ahooks");
9
+ var _react = _interopRequireDefault(require("react"));
12
10
  var _EventBusProvider = _interopRequireDefault(require("../engine/provider/EventBusProvider"));
13
11
  var _ContextProvider = _interopRequireDefault(require("../engine/provider/ContextProvider"));
14
12
  var _Page = _interopRequireDefault(require("../view/Page"));
15
13
  var _index = require("../constants/index");
14
+ var _DebugTool = _interopRequireDefault(require("./DebugTool"));
15
+ var _useDebugSettings3 = _interopRequireDefault(require("./useDebugSettings"));
16
16
  var Preview = function Preview(_ref) {
17
- var code = _ref.code,
18
- userId = _ref.userId;
19
- var _useState = (0, _react.useState)(userId),
20
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
21
- currentKey = _useState2[0],
22
- setCurrentKey = _useState2[1];
23
- (0, _ahooks.useUpdateEffect)(function () {
24
- setCurrentKey(void 0);
25
- setTimeout(function () {
26
- setCurrentKey(userId);
27
- });
28
- }, [userId]);
29
- return code && currentKey ? /*#__PURE__*/_react.default.createElement(_EventBusProvider.default, {
30
- key: code,
17
+ var code = _ref.code;
18
+ var _useDebugSettings = (0, _useDebugSettings3.default)(),
19
+ _useDebugSettings2 = (0, _slicedToArray2.default)(_useDebugSettings, 1),
20
+ debugSettings = _useDebugSettings2[0];
21
+ return /*#__PURE__*/_react.default.createElement(_EventBusProvider.default, {
22
+ key: "".concat(code, ":").concat(debugSettings.account),
31
23
  runtime: _index.RUNTIME.PREVIEW
32
24
  }, /*#__PURE__*/_react.default.createElement(_ContextProvider.default, {
33
25
  code: code
34
- }, /*#__PURE__*/_react.default.createElement(_Page.default, null))) : null;
26
+ }, /*#__PURE__*/_react.default.createElement(_Page.default, null), /*#__PURE__*/_react.default.createElement(_DebugTool.default, null)));
35
27
  };
36
28
  var _default = exports.default = Preview;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useDebugSettingsStore = exports.default = void 0;
8
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
9
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
+ var _zustand = require("zustand");
11
+ var _immer = require("zustand/middleware/immer");
12
+ var _middleware = require("zustand/middleware");
13
+ var _ahooks = require("ahooks");
14
+ var _lodash = require("lodash");
15
+ var _constants = require("../constants");
16
+ var _apiUrl = require("../constants/api-url");
17
+ var useDebugSettingsStore = exports.useDebugSettingsStore = (0, _zustand.create)()((0, _immer.immer)((0, _middleware.subscribeWithSelector)(function () {
18
+ return {
19
+ account: window.cookie.get(_constants.COOKIE_VIRTUAL_ACCOUNT_KEY)
20
+ };
21
+ })));
22
+ var useDebugSettings = function useDebugSettings() {
23
+ var debugSettings = useDebugSettingsStore(function (store) {
24
+ return store;
25
+ });
26
+ (0, _ahooks.useAsyncEffect)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
27
+ var _yield$fetchSearchUse, code, list, detail;
28
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
29
+ while (1) switch (_context.prev = _context.next) {
30
+ case 0:
31
+ if (!(debugSettings.account && (0, _lodash.isNil)(debugSettings.accountName))) {
32
+ _context.next = 8;
33
+ break;
34
+ }
35
+ _context.next = 3;
36
+ return (0, _apiUrl.fetchSearchUser)({
37
+ sloginidListIn: [debugSettings.account]
38
+ });
39
+ case 3:
40
+ _yield$fetchSearchUse = _context.sent;
41
+ code = _yield$fetchSearchUse.code;
42
+ list = _yield$fetchSearchUse.list;
43
+ detail = _yield$fetchSearchUse.detail;
44
+ if (code === 1) {
45
+ useDebugSettingsStore.setState(function (store) {
46
+ store.accountName = detail[list[0]].sname;
47
+ });
48
+ }
49
+ case 8:
50
+ case "end":
51
+ return _context.stop();
52
+ }
53
+ }, _callee);
54
+ })), []);
55
+ var setDebugSetting = (0, _ahooks.useMemoizedFn)(function (key, value) {
56
+ useDebugSettingsStore.setState(function (store) {
57
+ if (key === 'account') {
58
+ window.cookie.set(_constants.COOKIE_VIRTUAL_ACCOUNT_KEY, value);
59
+ }
60
+ if ((0, _lodash.isNil)(value)) {
61
+ delete store[key];
62
+ } else {
63
+ store[key] = value;
64
+ }
65
+ });
66
+ });
67
+ return [debugSettings, setDebugSetting];
68
+ };
69
+ var _default = exports.default = useDebugSettings;
@@ -56,7 +56,11 @@ var Canvas = function Canvas(_ref) {
56
56
  return function () {
57
57
  var _advance$events3;
58
58
  unsub();
59
- _usePageVar.useStateStore.getState().clear();
59
+ var varKeys = (pageVars || []).map(function (v) {
60
+ return v.name;
61
+ });
62
+ _usePageVar.useStateStore.getState().clear(varKeys);
63
+ ctx._deleteRemoteApis(varKeys);
60
64
  ctx.doAction(advance === null || advance === void 0 || (_advance$events3 = advance.events) === null || _advance$events3 === void 0 ? void 0 : _advance$events3.onPageUnmount);
61
65
  };
62
66
  }, []);
@@ -15,6 +15,7 @@ var _ahooks = require("ahooks");
15
15
  var _antd = require("luck-design/antd");
16
16
  var _classnames = _interopRequireDefault(require("classnames"));
17
17
  var _ContextProvider = require("../engine/provider/ContextProvider");
18
+ var _PageProxyProvider = require("../engine/provider/PageProxyProvider");
18
19
  var _initDS = _interopRequireDefault(require("../engine/tools/initDS"));
19
20
  var _Loading = _interopRequireDefault(require("./Loading"));
20
21
  var _Wrapper = _interopRequireDefault(require("./lc-components/Wrapper"));
@@ -36,12 +37,16 @@ var LCPage = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
36
37
  loadMount = _useBoolean2[0],
37
38
  setTrue = _useBoolean2[1].setTrue;
38
39
  var ctx = (0, _ContextProvider.useContext)();
39
- var handlePageLoadMount = (0, _ahooks.useMemoizedFn)(function () {
40
- _dsRef.current = (0, _initDS.default)(ctx);
40
+ var ppCtx = (0, _PageProxyProvider.usePageProxyContext)();
41
+ var handlePageLoadMount = (0, _ahooks.useMemoizedFn)(function (_ref2, topId) {
42
+ var proxyCode = _ref2.proxyCode;
43
+ if ((ppCtx === null || ppCtx === void 0 ? void 0 : ppCtx.proxyCode) !== proxyCode) return;
44
+ _dsRef.current = (0, _initDS.default)(ctx, ppCtx === null || ppCtx === void 0 ? void 0 : ppCtx.proxyCode);
41
45
  setTrue();
46
+ ctx.$unsubscriber(ctx.topics.PAGE_LOAD_MOUNT, topId);
42
47
  });
43
48
  (0, _ahooks.useCreation)(function () {
44
- ctx.$subscriber(ctx.topics.PAGE_LOAD_MOUNT).once(handlePageLoadMount).watch();
49
+ ctx.$subscriber(ctx.topics.PAGE_LOAD_MOUNT).on(handlePageLoadMount).watch();
45
50
  }, []);
46
51
  var getTargetDom = (0, _ahooks.useMemoizedFn)(function () {
47
52
  return _rootRef.current;
@@ -15,6 +15,7 @@ var _classnames = _interopRequireDefault(require("classnames"));
15
15
  var _lodash = require("lodash");
16
16
  var _base = require("@luck-design-biz/base");
17
17
  var _ContextProvider = require("../../../engine/provider/ContextProvider");
18
+ var _PageProxyProvider = require("../../../engine/provider/PageProxyProvider");
18
19
  var _Wrapper = _interopRequireDefault(require("../Wrapper"));
19
20
  var _index = require("../../../../index");
20
21
  var _TopFilter = _interopRequireDefault(require("../Table/components/TopFilter"));
@@ -53,6 +54,7 @@ var LCCardList = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
53
54
  renderContent = _ref.renderContent,
54
55
  describeLines = _ref.describeLines;
55
56
  var ctx = (0, _ContextProvider.useContext)();
57
+ var ppCtx = (0, _PageProxyProvider.usePageProxyContext)();
56
58
  var apiRef = (0, _react.useRef)();
57
59
  var wrapperRef = (0, _react.useRef)();
58
60
  var instanceRef = (0, _useCombinedRefs.default)(ref);
@@ -261,6 +263,7 @@ var LCCardList = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
261
263
  ref: instanceRef,
262
264
  wrapper: wrapperRef,
263
265
  wrapperProps: _wrapperProps,
266
+ pageProxy: ppCtx,
264
267
  _loading: ctx.loading,
265
268
  className: (0, _classnames.default)((0, _defineProperty2.default)({}, className, !!className)),
266
269
  ldId: id,
@@ -79,6 +79,7 @@ var LCDialog = function LCDialog(_ref) {
79
79
  if (open) {
80
80
  ctx.doAction(advance.events.onOpen);
81
81
  } else {
82
+ _setTitle(title);
82
83
  ctx.doAction(advance.events.onClose);
83
84
  setLoading(false);
84
85
  }
@@ -90,18 +91,19 @@ var LCDialog = function LCDialog(_ref) {
90
91
  return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
91
92
  while (1) switch (_context.prev = _context.next) {
92
93
  case 0:
93
- _context.prev = 0;
94
- _context.next = 3;
94
+ setLoading(true);
95
+ _context.prev = 1;
96
+ _context.next = 4;
95
97
  return ctx.doAction(advance.events.onOk);
96
- case 3:
97
- _context.prev = 3;
98
+ case 4:
99
+ _context.prev = 4;
98
100
  setLoading(false);
99
- return _context.finish(3);
100
- case 6:
101
+ return _context.finish(4);
102
+ case 7:
101
103
  case "end":
102
104
  return _context.stop();
103
105
  }
104
- }, _callee, null, [[0,, 3, 6]]);
106
+ }, _callee, null, [[1,, 4, 7]]);
105
107
  })));
106
108
  var _footer = (0, _ahooks.useCreation)(function () {
107
109
  if ((0, _lodash.isBoolean)(footer) && !footer || (0, _lodash.isObject)(footer) && !footer.checked || (0, _lodash.isObject)(footer) && footer.code && !(0, _helper.executeCode)(ctx, footer.code)) return {