@kp-ui/lowcode 1.0.41 → 1.0.43

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 (58) hide show
  1. package/_virtual/virtual_svg-icons-register.js +2 -2
  2. package/designer.js +13 -22
  3. package/index.js +6 -2
  4. package/package.json +28 -28
  5. package/render.js +58 -6
  6. package/src/components/form-designer/designer.js +16 -11
  7. package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue.js +1 -1
  8. package/src/components/form-designer/form-widget/container-widget/data-table-widget.vue2.js +0 -1
  9. package/src/components/form-designer/form-widget/field-widget/button-list-widget.vue.js +149 -0
  10. package/src/components/form-designer/form-widget/field-widget/index.js +1 -1
  11. package/src/components/form-designer/setting-panel/form-setting.vue.js +114 -152
  12. package/src/components/form-designer/setting-panel/property-editor/button-list-editor.vue.js +276 -11
  13. package/src/components/form-designer/setting-panel/property-editor/button-postion-editor.vue.js +23 -0
  14. package/src/components/form-designer/setting-panel/property-editor/button-postion-editor.vue2.js +16 -0
  15. package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-showButtonsColumn-editor.vue.js +5 -3
  16. package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-tableColumns-editor.vue.js +193 -223
  17. package/src/components/form-designer/setting-panel/property-editor/flex-editor.vue.js +64 -0
  18. package/src/components/form-designer/setting-panel/property-editor/index.js +3 -1
  19. package/src/components/form-designer/setting-panel/propertyRegister.js +3 -1
  20. package/src/components/form-designer/toolbar-panel/index.vue.js +2 -1
  21. package/src/components/form-designer/widget-panel/advancedFieldsEnums.js +0 -2
  22. package/src/components/form-designer/widget-panel/{advanced/toolbar.js → basicFields/buttonList.js} +5 -4
  23. package/src/components/form-designer/widget-panel/basicFieldsEnums.js +2 -0
  24. package/src/components/form-render/SubmitButtonRender.vue.js +108 -0
  25. package/src/components/form-render/SubmitButtonRender.vue2.js +4 -0
  26. package/src/components/form-render/container-item/data-table-item.vue.js +1 -2
  27. package/src/components/form-render/dynamic-dialog.vue.js +87 -33
  28. package/src/components/public/methoad-item.vue.js +132 -0
  29. package/src/components/public/methoad-item.vue2.js +4 -0
  30. package/src/constants/index.js +13 -0
  31. package/src/lang/en-US.js +1 -0
  32. package/src/lang/zh-CN.js +4 -0
  33. package/src/utils/i18n.js +2 -2
  34. package/src/utils/smart-vue-i18n/index.js +1 -1
  35. package/src/utils/util.js +6 -0
  36. package/styles/style.css +1 -1
  37. package/types/install.d.ts +3 -1
  38. package/types/install.d.ts.map +1 -1
  39. package/types/src/components/form-designer/index.d.ts +1 -3
  40. package/types/src/components/form-designer/index.d.ts.map +1 -1
  41. package/types/src/components/form-designer/setting-panel/index.d.ts +2 -0
  42. package/types/src/components/form-designer/widget-panel/advanced/index.d.ts +1 -1
  43. package/types/src/components/form-designer/widget-panel/advanced/index.d.ts.map +1 -1
  44. package/types/src/components/form-designer/widget-panel/advancedFieldsEnums.d.ts +0 -8
  45. package/types/src/components/form-designer/widget-panel/advancedFieldsEnums.d.ts.map +1 -1
  46. package/types/src/components/form-designer/widget-panel/{advanced/toolbar.d.ts → basicFields/buttonList.d.ts} +2 -2
  47. package/types/src/components/form-designer/widget-panel/basicFields/buttonList.d.ts.map +1 -0
  48. package/types/src/components/form-render/SubmitButtonRender.d.ts +58 -0
  49. package/types/src/components/form-render/SubmitButtonRender.d.ts.map +1 -0
  50. package/types/src/components/form-render/index.d.ts +15 -1
  51. package/types/src/components/form-render/index.d.ts.map +1 -1
  52. package/types/src/constants/index.d.ts +4 -0
  53. package/types/src/constants/index.d.ts.map +1 -1
  54. package/src/components/BtnListConfig/BtnListConfigDialog.vue.js +0 -80
  55. package/src/components/BtnListConfig/BtnListConfigDialog.vue2.js +0 -4
  56. package/src/components/form-designer/form-widget/field-widget/toolbar-widget.vue.js +0 -94
  57. package/src/utils/config.js +0 -4
  58. package/types/src/components/form-designer/widget-panel/advanced/toolbar.d.ts.map +0 -1
@@ -1,37 +1,74 @@
1
1
  import i18n from "../../../../utils/i18n.js";
2
- import _sfc_main$1 from "../../../BtnListConfig/BtnListConfigDialog.vue.js";
3
- import { resolveComponent, createElementBlock, openBlock, Fragment, createVNode, withCtx, createTextVNode } from "vue";
2
+ import CodeModalEditor from "../../../code-editor/code-modal-editor.vue.js";
3
+ import { generateId } from "../../../../utils/util.js";
4
+ import { cloneDeep } from "lodash-es";
5
+ import { resolveComponent, createElementBlock, openBlock, Fragment, createVNode, withCtx, createTextVNode, createElementVNode, normalizeClass, toDisplayString } from "vue";
4
6
  /* empty css */
5
7
  import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.js";
6
8
  const _sfc_main = {
7
9
  name: "button-list-editor",
8
10
  mixins: [i18n],
9
- components: { BtnListConfigDialog: _sfc_main$1 },
10
11
  props: {
11
12
  designer: Object,
12
13
  selectedWidget: Object,
13
14
  optionModel: Object
14
15
  },
16
+ components: {
17
+ CodeModalEditor
18
+ },
15
19
  data() {
16
20
  return {
21
+ buttonList: [],
22
+ currentEditEventName: "",
23
+ currentEditBtn: {},
17
24
  btnListConfigDialogVisible: false
18
25
  };
19
26
  },
20
- computed: {
21
- noLabelSetting() {
22
- return this.selectedWidget.type === "static-text" || this.selectedWidget.type === "html-text";
27
+ watch: {
28
+ buttonList() {
29
+ this.optionModel.buttonList = this.buttonList;
23
30
  }
24
31
  },
25
32
  methods: {
33
+ addOperationButton() {
34
+ this.buttonList.splice(0, 0, {
35
+ key: generateId(),
36
+ label: "new btn",
37
+ type: "primary",
38
+ danger: false,
39
+ icon: "",
40
+ onHidden: "",
41
+ onDisabled: "",
42
+ onClick: ""
43
+ });
44
+ },
45
+ editEvent(type, row) {
46
+ this.currentEditBtn = row;
47
+ this.currentEditEventName = type;
48
+ this.$refs.CodeModalEditorRef.open(row[type]);
49
+ },
26
50
  handleConfigBtn() {
51
+ this.buttonList = cloneDeep(this.optionModel.buttonList);
27
52
  this.btnListConfigDialogVisible = true;
53
+ },
54
+ handleCloseDialog() {
55
+ this.btnListConfigDialogVisible = false;
28
56
  }
29
57
  }
30
58
  };
59
+ const _hoisted_1 = { class: "btn-center" };
60
+ const _hoisted_2 = { class: "dialog-footer" };
31
61
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
32
62
  const _component_a_button = resolveComponent("a-button");
33
63
  const _component_a_form_item = resolveComponent("a-form-item");
34
- const _component_BtnListConfigDialog = resolveComponent("BtnListConfigDialog");
64
+ const _component_a_input = resolveComponent("a-input");
65
+ const _component_STableColumn = resolveComponent("STableColumn");
66
+ const _component_a_select_option = resolveComponent("a-select-option");
67
+ const _component_a_select = resolveComponent("a-select");
68
+ const _component_a_switch = resolveComponent("a-switch");
69
+ const _component_STable = resolveComponent("STable");
70
+ const _component_a_modal = resolveComponent("a-modal");
71
+ const _component_CodeModalEditor = resolveComponent("CodeModalEditor");
35
72
  return openBlock(), createElementBlock(Fragment, null, [
36
73
  createVNode(_component_a_form_item, {
37
74
  label: _ctx.i18nt("designer.setting.buttonList")
@@ -46,13 +83,241 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
46
83
  ]),
47
84
  _: 1
48
85
  }, 8, ["label"]),
49
- createVNode(_component_BtnListConfigDialog, {
86
+ createVNode(_component_a_modal, {
87
+ title: _ctx.i18nt("designer.setting.buttonsColumnEdit"),
50
88
  visible: $data.btnListConfigDialogVisible,
51
- "onUpdate:visible": _cache[0] || (_cache[0] = ($event) => $data.btnListConfigDialogVisible = $event)
52
- }, null, 8, ["visible"])
89
+ "onUpdate:visible": _cache[0] || (_cache[0] = ($event) => $data.btnListConfigDialogVisible = $event),
90
+ "show-close": true,
91
+ dialogClass: "drag-dialog",
92
+ "append-to-body": "",
93
+ "close-on-click-modal": false,
94
+ "close-on-press-escape": false,
95
+ "destroy-on-close": true,
96
+ width: "1250px"
97
+ }, {
98
+ footer: withCtx(() => [
99
+ createElementVNode("div", _hoisted_2, [
100
+ createVNode(_component_a_button, {
101
+ size: "default",
102
+ onClick: $options.handleCloseDialog
103
+ }, {
104
+ default: withCtx(() => [
105
+ createTextVNode(toDisplayString(_ctx.i18nt("designer.hint.closePreview")), 1)
106
+ ]),
107
+ _: 1
108
+ }, 8, ["onClick"])
109
+ ])
110
+ ]),
111
+ default: withCtx(() => [
112
+ createVNode(_component_STable, {
113
+ deepWatchDataSource: true,
114
+ "data-source": $data.buttonList,
115
+ pagination: false,
116
+ resizable: true
117
+ }, {
118
+ default: withCtx(() => [
119
+ createVNode(_component_STableColumn, {
120
+ rowDrag: true,
121
+ dataIndex: "name",
122
+ title: _ctx.i18nt("designer.setting.operationButtonLabel"),
123
+ width: 150
124
+ }, {
125
+ default: withCtx(({ index }) => [
126
+ createVNode(_component_a_input, {
127
+ value: $data.buttonList[index].label,
128
+ "onUpdate:value": ($event) => $data.buttonList[index].label = $event,
129
+ placeholder: _ctx.i18nt("designer.setting.operationButtonLabel")
130
+ }, null, 8, ["value", "onUpdate:value", "placeholder"])
131
+ ]),
132
+ _: 1
133
+ }, 8, ["title"]),
134
+ createVNode(_component_STableColumn, {
135
+ dataIndex: "type",
136
+ title: _ctx.i18nt("designer.setting.operationButtonType"),
137
+ width: 120
138
+ }, {
139
+ default: withCtx(({ index }) => [
140
+ createVNode(_component_a_select, {
141
+ value: $data.buttonList[index].type,
142
+ "onUpdate:value": ($event) => $data.buttonList[index].type = $event,
143
+ placeholder: _ctx.i18nt("designer.setting.operationButtonType"),
144
+ style: { "width": "100%" }
145
+ }, {
146
+ default: withCtx(() => [
147
+ createVNode(_component_a_select_option, { value: "primary" }, {
148
+ default: withCtx(() => [
149
+ createTextVNode("primary")
150
+ ]),
151
+ _: 1
152
+ }),
153
+ createVNode(_component_a_select_option, { value: "ghost" }, {
154
+ default: withCtx(() => [
155
+ createTextVNode("ghost")
156
+ ]),
157
+ _: 1
158
+ }),
159
+ createVNode(_component_a_select_option, { value: "dashed" }, {
160
+ default: withCtx(() => [
161
+ createTextVNode("dashed")
162
+ ]),
163
+ _: 1
164
+ }),
165
+ createVNode(_component_a_select_option, { value: "text" }, {
166
+ default: withCtx(() => [
167
+ createTextVNode("text")
168
+ ]),
169
+ _: 1
170
+ }),
171
+ createVNode(_component_a_select_option, { value: "link" }, {
172
+ default: withCtx(() => [
173
+ createTextVNode("link")
174
+ ]),
175
+ _: 1
176
+ }),
177
+ createVNode(_component_a_select_option, { value: "default" }, {
178
+ default: withCtx(() => [
179
+ createTextVNode("default")
180
+ ]),
181
+ _: 1
182
+ })
183
+ ]),
184
+ _: 2
185
+ }, 1032, ["value", "onUpdate:value", "placeholder"])
186
+ ]),
187
+ _: 1
188
+ }, 8, ["title"]),
189
+ createVNode(_component_STableColumn, {
190
+ dataIndex: "size",
191
+ title: _ctx.i18nt("designer.setting.danger"),
192
+ width: 120
193
+ }, {
194
+ default: withCtx(({ index }) => [
195
+ createVNode(_component_a_switch, {
196
+ checkedValue: 1,
197
+ unCheckedValue: 0,
198
+ checked: $data.buttonList[index].danger,
199
+ "onUpdate:checked": ($event) => $data.buttonList[index].danger = $event
200
+ }, null, 8, ["checked", "onUpdate:checked"])
201
+ ]),
202
+ _: 1
203
+ }, 8, ["title"]),
204
+ createVNode(_component_STableColumn, {
205
+ dataIndex: "size",
206
+ title: _ctx.i18nt("designer.setting.buttonIcon"),
207
+ width: 120
208
+ }, {
209
+ default: withCtx(({ index }) => [
210
+ createVNode(_component_a_input, {
211
+ type: "text",
212
+ value: $data.buttonList[index].icon,
213
+ "onUpdate:value": ($event) => $data.buttonList[index].icon = $event
214
+ }, null, 8, ["value", "onUpdate:value"])
215
+ ]),
216
+ _: 1
217
+ }, 8, ["title"]),
218
+ createVNode(_component_STableColumn, {
219
+ dataIndex: "onHidden",
220
+ title: _ctx.i18nt("designer.setting.operationButtonHidden"),
221
+ width: 100
222
+ }, {
223
+ default: withCtx(({ record }) => [
224
+ createVNode(_component_a_button, {
225
+ class: normalizeClass([{ "button-text-highlight": !!record.onHidden }]),
226
+ onClick: ($event) => $options.editEvent("onHidden", record),
227
+ size: "small"
228
+ }, {
229
+ default: withCtx(() => [
230
+ createTextVNode(toDisplayString(_ctx.i18nt("designer.setting.operationButtonHidden")), 1)
231
+ ]),
232
+ _: 2
233
+ }, 1032, ["class", "onClick"])
234
+ ]),
235
+ _: 1
236
+ }, 8, ["title"]),
237
+ createVNode(_component_STableColumn, {
238
+ dataIndex: "disabled",
239
+ title: _ctx.i18nt("designer.setting.operationButtonDisabled"),
240
+ width: 100
241
+ }, {
242
+ default: withCtx(({ record }) => [
243
+ createVNode(_component_a_button, {
244
+ class: normalizeClass([{ "button-text-highlight": !!record.onDisabled }]),
245
+ onClick: ($event) => $options.editEvent("onDisabled", record),
246
+ size: "small"
247
+ }, {
248
+ default: withCtx(() => [
249
+ createTextVNode(toDisplayString(_ctx.i18nt("designer.setting.operationButtonDisabled")), 1)
250
+ ]),
251
+ _: 2
252
+ }, 1032, ["class", "onClick"])
253
+ ]),
254
+ _: 1
255
+ }, 8, ["title"]),
256
+ createVNode(_component_STableColumn, {
257
+ dataIndex: "onClick",
258
+ title: "点击事件",
259
+ width: 100
260
+ }, {
261
+ default: withCtx(({ record }) => [
262
+ createVNode(_component_a_button, {
263
+ class: normalizeClass([{ "button-text-highlight": !!record.onClick }]),
264
+ onClick: ($event) => $options.editEvent("onClick", record),
265
+ size: "small"
266
+ }, {
267
+ default: withCtx(() => [
268
+ createTextVNode(" 点击事件 ")
269
+ ]),
270
+ _: 2
271
+ }, 1032, ["class", "onClick"])
272
+ ]),
273
+ _: 1
274
+ }),
275
+ createVNode(_component_STableColumn, {
276
+ dataIndex: "action",
277
+ title: "操作",
278
+ width: 80
279
+ }, {
280
+ default: withCtx(({ record, index }) => [
281
+ createVNode(_component_a_button, {
282
+ type: "link",
283
+ onClick: ($event) => _ctx.deleteOperationButton(index),
284
+ size: "small"
285
+ }, {
286
+ default: withCtx(() => [
287
+ createTextVNode(" 删除 ")
288
+ ]),
289
+ _: 2
290
+ }, 1032, ["onClick"])
291
+ ]),
292
+ _: 1
293
+ })
294
+ ]),
295
+ _: 1
296
+ }, 8, ["data-source"]),
297
+ createElementVNode("div", _hoisted_1, [
298
+ createVNode(_component_a_button, {
299
+ type: "primary",
300
+ size: "default",
301
+ onClick: $options.addOperationButton
302
+ }, {
303
+ default: withCtx(() => [
304
+ createTextVNode(toDisplayString(_ctx.i18nt("designer.setting.addOperationButton")), 1)
305
+ ]),
306
+ _: 1
307
+ }, 8, ["onClick"])
308
+ ])
309
+ ]),
310
+ _: 1
311
+ }, 8, ["title", "visible"]),
312
+ createVNode(_component_CodeModalEditor, {
313
+ modelValue: $data.currentEditBtn[$data.currentEditEventName],
314
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $data.currentEditBtn[$data.currentEditEventName] = $event),
315
+ ref: "CodeModalEditorRef",
316
+ "event-header": `${$data.currentEditBtn.label}.${$data.currentEditEventName}(){`
317
+ }, null, 8, ["modelValue", "event-header"])
53
318
  ], 64);
54
319
  }
55
- const buttonListEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-c439e9dc"]]);
320
+ const buttonListEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-77f39703"]]);
56
321
  export {
57
322
  buttonListEditor as default
58
323
  };
@@ -0,0 +1,23 @@
1
+ import _sfc_main from "./button-postion-editor.vue2.js";
2
+ import { resolveComponent, createBlock, openBlock, withCtx, createVNode } from "vue";
3
+ import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.js";
4
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
5
+ const _component_a_select = resolveComponent("a-select");
6
+ const _component_a_form_item = resolveComponent("a-form-item");
7
+ return openBlock(), createBlock(_component_a_form_item, {
8
+ label: _ctx.i18nt("designer.setting.buttonPosition")
9
+ }, {
10
+ default: withCtx(() => [
11
+ createVNode(_component_a_select, {
12
+ options: _ctx.BUTTON_POSITION,
13
+ value: _ctx.optionModel.buttonPosition,
14
+ "onUpdate:value": _cache[0] || (_cache[0] = ($event) => _ctx.optionModel.buttonPosition = $event)
15
+ }, null, 8, ["options", "value"])
16
+ ]),
17
+ _: 1
18
+ }, 8, ["label"]);
19
+ }
20
+ const buttonPostionEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
21
+ export {
22
+ buttonPostionEditor as default
23
+ };
@@ -0,0 +1,16 @@
1
+ import i18n from "../../../../utils/i18n.js";
2
+ import { BUTTON_POSITION } from "../../../../constants/index.js";
3
+ import { defineComponent } from "vue";
4
+ const _sfc_main = defineComponent({
5
+ name: "button-position-editor",
6
+ mixins: [i18n],
7
+ props: {
8
+ optionModel: Object
9
+ },
10
+ setup(props) {
11
+ return { BUTTON_POSITION };
12
+ }
13
+ });
14
+ export {
15
+ _sfc_main as default
16
+ };
@@ -50,7 +50,9 @@ const _sfc_main = {
50
50
  }
51
51
  });
52
52
  if (sameNameFlag) {
53
- this.$message.error(this.i18nt("designer.setting.operationButtonDuplicatedNameError"));
53
+ this.$message.error(
54
+ this.i18nt("designer.setting.operationButtonDuplicatedNameError")
55
+ );
54
56
  this.optionModel.operationButtons[btnIdx].name = this.oldButtonName;
55
57
  }
56
58
  },
@@ -71,7 +73,7 @@ const _sfc_main = {
71
73
  }
72
74
  }
73
75
  };
74
- const _withScopeId = (n) => (pushScopeId("data-v-c63d3314"), n = n(), popScopeId(), n);
76
+ const _withScopeId = (n) => (pushScopeId("data-v-2884d0b4"), n = n(), popScopeId(), n);
75
77
  const _hoisted_1 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("i", { class: "iconfont icon-drag drag-handler" }, null, -1));
76
78
  const _hoisted_2 = { class: "dialog-footer" };
77
79
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
@@ -539,7 +541,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
539
541
  }, null, 8, ["modelValue", "event-header"])
540
542
  ], 64);
541
543
  }
542
- const dataTableShowButtonsColumnEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-c63d3314"]]);
544
+ const dataTableShowButtonsColumnEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-2884d0b4"]]);
543
545
  export {
544
546
  dataTableShowButtonsColumnEditor as default
545
547
  };