@fecp/designer 5.4.5 → 5.4.6

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 (31) hide show
  1. package/es/designer/package.json.mjs +1 -1
  2. package/es/designer/src/components/ParamsConfig.vue2.mjs +1 -1
  3. package/es/designer/src/layout/aside/HiddenFieldDialog.vue.mjs +1 -1
  4. package/es/designer/src/packages/advancedFilter/ValueInput.vue2.mjs +1 -1
  5. package/es/designer/src/packages/dataLinkage/index.vue.mjs +1 -1
  6. package/es/designer/src/packages/dialogGlobal/index.vue.mjs +1 -1
  7. package/es/designer/src/packages/form/property/approvalHistory.vue.mjs +1 -1
  8. package/es/designer/src/packages/form/property/subForm.vue.mjs +1 -1
  9. package/es/designer/src/packages/prod/index.vue.mjs +1 -1
  10. package/es/designer/src/packages/table/headerBtn.vue.mjs +1 -1
  11. package/es/designer/src/packages/table/index.vue.mjs +1 -1
  12. package/es/designer.css +75 -69
  13. package/es/packages/vue/src/components/forms/form/Form.vue.mjs +11 -4
  14. package/es/packages/vue/src/components/forms/formItem/FormItem.vue.mjs +1 -2
  15. package/es/packages/vue/src/components/forms/subForm/SubForm.vue.mjs +8 -2
  16. package/lib/designer/package.json.js +1 -1
  17. package/lib/designer/src/components/ParamsConfig.vue2.js +1 -1
  18. package/lib/designer/src/layout/aside/HiddenFieldDialog.vue.js +1 -1
  19. package/lib/designer/src/packages/advancedFilter/ValueInput.vue2.js +1 -1
  20. package/lib/designer/src/packages/dataLinkage/index.vue.js +1 -1
  21. package/lib/designer/src/packages/dialogGlobal/index.vue.js +1 -1
  22. package/lib/designer/src/packages/form/property/approvalHistory.vue.js +1 -1
  23. package/lib/designer/src/packages/form/property/subForm.vue.js +1 -1
  24. package/lib/designer/src/packages/prod/index.vue.js +1 -1
  25. package/lib/designer/src/packages/table/headerBtn.vue.js +1 -1
  26. package/lib/designer/src/packages/table/index.vue.js +1 -1
  27. package/lib/designer.css +75 -69
  28. package/lib/packages/vue/src/components/forms/form/Form.vue.js +10 -3
  29. package/lib/packages/vue/src/components/forms/formItem/FormItem.vue.js +1 -2
  30. package/lib/packages/vue/src/components/forms/subForm/SubForm.vue.js +7 -1
  31. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- const version = "5.4.5";
1
+ const version = "5.4.6";
2
2
  const packageJson = {
3
3
  version
4
4
  };
@@ -4,7 +4,7 @@ import "../../../node_modules/element-plus/es/index.mjs";
4
4
  /* empty css */
5
5
  import { computed, createElementBlock, openBlock, createBlock, unref, withCtx, createTextVNode, createElementVNode, Fragment, renderList, createVNode } from "vue";
6
6
  import { Plus as plus_default, Delete as delete_default } from "../../../node_modules/@element-plus/icons-vue/dist/index.mjs";
7
- import ValueSelector from "./ValueSelector.vue2.mjs";
7
+ import ValueSelector from "./ValueSelector.vue.mjs";
8
8
  /* empty css */
9
9
  import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
10
10
  import { ElButton } from "../../../node_modules/element-plus/es/components/button/index.mjs";
@@ -16,7 +16,7 @@ import { Plus as plus_default, RefreshRight as refresh_right_default, Delete as
16
16
  import { getEditConfigData, getEditingType, cloneDeep, getEditConfigDataFields } from "../../packages/utils/common.mjs";
17
17
  import { defaultProperty } from "../../packages/form/aside/index.mjs";
18
18
  import { defaultProperty as defaultProperty$1 } from "../../packages/table/aside/index.mjs";
19
- import ValueSelector from "../../components/ValueSelector.vue2.mjs";
19
+ import ValueSelector from "../../components/ValueSelector.vue.mjs";
20
20
  /* empty css */
21
21
  import _export_sfc from "../../../../_virtual/_plugin-vue_export-helper.mjs";
22
22
  import { ElDialog } from "../../../../node_modules/element-plus/es/components/dialog/index.mjs";
@@ -14,7 +14,7 @@ import "../../../../node_modules/element-plus/theme-chalk/el-tooltip.css.mjs";
14
14
  import "../../../../node_modules/element-plus/theme-chalk/el-date-picker.css.mjs";
15
15
  import { computed, watch, ref, createElementBlock, unref, openBlock, createBlock, isRef, createVNode, createElementVNode, withCtx, Fragment, renderList } from "vue";
16
16
  import { useVModel } from "../../../../node_modules/@vueuse/core/dist/index.mjs";
17
- import ValueSelector from "../../components/ValueSelector.vue2.mjs";
17
+ import ValueSelector from "../../components/ValueSelector.vue.mjs";
18
18
  import api from "../../api/index.mjs";
19
19
  import { getEditConfigDataSources } from "../utils/common.mjs";
20
20
  import { createDataSource } from "../utils/datasource.mjs";
@@ -30,7 +30,7 @@ import "../../../../node_modules/element-plus/theme-chalk/el-date-picker.css.mjs
30
30
  /* empty css */
31
31
  /* empty css */
32
32
  import _export_sfc from "../../../../_virtual/_plugin-vue_export-helper.mjs";
33
- /* empty css */
33
+ /* empty css */
34
34
  import "../../axios/config.mjs";
35
35
  import "../../../../_virtual/FileSaver.min.mjs";
36
36
  import "../../../../_virtual/index.mjs";
@@ -79,7 +79,7 @@ import "../../../../node_modules/element-plus/theme-chalk/el-date-picker.css.mjs
79
79
  import "../../../../node_modules/element-plus/theme-chalk/el-tab-pane.css.mjs";
80
80
  /* empty css */
81
81
  /* empty css */
82
- /* empty css */
82
+ /* empty css */
83
83
  import "../../axios/config.mjs";
84
84
  /* empty css */
85
85
  /* empty css */
@@ -11,7 +11,7 @@ import "../../../../../node_modules/element-plus/es/index.mjs";
11
11
  import { computed, ref, watch, createBlock, openBlock, unref, isRef, withCtx, createVNode, createElementBlock, createCommentVNode, createTextVNode, Fragment } from "vue";
12
12
  import { getCurrentItem, getEditConfigData } from "../../utils/common.mjs";
13
13
  import emitter from "../../utils/eventBus.mjs";
14
- import ValueSelector from "../../../components/ValueSelector.vue2.mjs";
14
+ import ValueSelector from "../../../components/ValueSelector.vue.mjs";
15
15
  import { ElCollapse, ElCollapseItem } from "../../../../../node_modules/element-plus/es/components/collapse/index.mjs";
16
16
  import { ElForm, ElFormItem } from "../../../../../node_modules/element-plus/es/components/form/index.mjs";
17
17
  import { ElInput } from "../../../../../node_modules/element-plus/es/components/input/index.mjs";
@@ -13,7 +13,7 @@ import { computed, ref, createBlock, openBlock, unref, isRef, withCtx, createVNo
13
13
  import { getCurrentItem, getEditConfigData } from "../../utils/common.mjs";
14
14
  import TemplateSelector from "../../../components/TemplateSelector.vue.mjs";
15
15
  import emitter from "../../utils/eventBus.mjs";
16
- import ValueSelector from "../../../components/ValueSelector.vue2.mjs";
16
+ import ValueSelector from "../../../components/ValueSelector.vue.mjs";
17
17
  import { ElCollapse, ElCollapseItem } from "../../../../../node_modules/element-plus/es/components/collapse/index.mjs";
18
18
  import { ElForm, ElFormItem } from "../../../../../node_modules/element-plus/es/components/form/index.mjs";
19
19
  import { ElInput } from "../../../../../node_modules/element-plus/es/components/input/index.mjs";
@@ -14,7 +14,7 @@ import "../../../../node_modules/element-plus/es/index.mjs";
14
14
  import { useModel, ref, watch, computed, createBlock, openBlock, withCtx, createVNode, createElementVNode, createElementBlock, Fragment, renderList, createTextVNode, unref } from "vue";
15
15
  import { Plus as plus_default } from "../../../../node_modules/@element-plus/icons-vue/dist/index.mjs";
16
16
  import { getEditConfigData, getEditConfigDataFields, setEditConfigData } from "../utils/common.mjs";
17
- import ValueSelector from "../../components/ValueSelector.vue2.mjs";
17
+ import ValueSelector from "../../components/ValueSelector.vue.mjs";
18
18
  import api from "../../api/index.mjs";
19
19
  /* empty css */
20
20
  import _export_sfc from "../../../../_virtual/_plugin-vue_export-helper.mjs";
@@ -45,7 +45,7 @@ import { Connection as connection_default, Grid as grid_default, ChatLineSquare
45
45
  /* empty css */
46
46
  import "../../store/index.mjs";
47
47
  /* empty css */
48
- /* empty css */
48
+ /* empty css */
49
49
  /* empty css */
50
50
  /* empty css */
51
51
  /* empty css */
@@ -472,7 +472,7 @@ const _sfc_main = {
472
472
  };
473
473
  }
474
474
  };
475
- const tableWorkArea = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-271403ad"]]);
475
+ const tableWorkArea = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-55479df2"]]);
476
476
  export {
477
477
  tableWorkArea as default
478
478
  };
package/es/designer.css CHANGED
@@ -3956,7 +3956,7 @@ to {
3956
3956
  color: #606266;
3957
3957
  margin-right: 4px;
3958
3958
  }
3959
- .table-work-area[data-v-271403ad] {
3959
+ .table-work-area[data-v-55479df2] {
3960
3960
  display: flex;
3961
3961
  border-left: 1px solid #ebeef5;
3962
3962
  position: relative;
@@ -3964,26 +3964,32 @@ to {
3964
3964
  border-radius: 4px;
3965
3965
  overflow: hidden;
3966
3966
  margin: 8px 16px;
3967
+ border-bottom-left-radius: 0;
3968
+ border-bottom-right-radius: 0;
3967
3969
  }
3968
- .table-work-area .widgets-opt-tools[data-v-271403ad] {
3970
+ .table-work-area .widgets-opt-tools[data-v-55479df2] {
3969
3971
  height: 150px;
3970
3972
  width: 100%;
3971
3973
  }
3972
- .edit-table-draggable[data-v-271403ad] {
3974
+ .table-work-area[data-v-55479df2] .el-scrollbar .is-horizontal {
3975
+ height: 8px;
3976
+ bottom: 4px;
3977
+ }
3978
+ .edit-table-draggable[data-v-55479df2] {
3973
3979
  display: flex;
3974
3980
  font-size: 14px;
3975
3981
  }
3976
- .edit-table-draggable .table-item[data-v-271403ad] {
3982
+ .edit-table-draggable .table-item[data-v-55479df2] {
3977
3983
  flex: none;
3978
3984
  border: 1px solid #ebeef5;
3979
3985
  border-left: none;
3980
3986
  min-width: 80px;
3981
3987
  position: relative;
3982
3988
  }
3983
- .edit-table-draggable .table-item.flex-auto[data-v-271403ad] {
3989
+ .edit-table-draggable .table-item.flex-auto[data-v-55479df2] {
3984
3990
  flex: 1;
3985
3991
  }
3986
- .edit-table-draggable .table-item .widgets[data-v-271403ad] {
3992
+ .edit-table-draggable .table-item .widgets[data-v-55479df2] {
3987
3993
  color: #1a1a1a;
3988
3994
  height: 40px;
3989
3995
  border: 2px solid transparent;
@@ -3998,35 +4004,35 @@ to {
3998
4004
  display: flex;
3999
4005
  align-items: center;
4000
4006
  }
4001
- .edit-table-draggable .table-item .widgets[data-v-271403ad] .el-icon {
4007
+ .edit-table-draggable .table-item .widgets[data-v-55479df2] .el-icon {
4002
4008
  color: #909399;
4003
4009
  margin-left: 2px;
4004
4010
  }
4005
- .edit-table-draggable .table-item.align-header-left .widgets[data-v-271403ad] {
4011
+ .edit-table-draggable .table-item.align-header-left .widgets[data-v-55479df2] {
4006
4012
  text-align: left;
4007
4013
  justify-content: flex-start;
4008
4014
  }
4009
- .edit-table-draggable .table-item.align-header-center .widgets[data-v-271403ad] {
4015
+ .edit-table-draggable .table-item.align-header-center .widgets[data-v-55479df2] {
4010
4016
  text-align: center;
4011
4017
  justify-content: center;
4012
4018
  }
4013
- .edit-table-draggable .table-item.align-header-right .widgets[data-v-271403ad] {
4019
+ .edit-table-draggable .table-item.align-header-right .widgets[data-v-55479df2] {
4014
4020
  text-align: right;
4015
4021
  justify-content: flex-end;
4016
4022
  }
4017
- .edit-table-draggable .table-item.align-left .field-label[data-v-271403ad] {
4023
+ .edit-table-draggable .table-item.align-left .field-label[data-v-55479df2] {
4018
4024
  text-align: left;
4019
4025
  justify-content: flex-start;
4020
4026
  }
4021
- .edit-table-draggable .table-item.align-center .field-label[data-v-271403ad] {
4027
+ .edit-table-draggable .table-item.align-center .field-label[data-v-55479df2] {
4022
4028
  text-align: center;
4023
4029
  justify-content: center;
4024
4030
  }
4025
- .edit-table-draggable .table-item.align-right .field-label[data-v-271403ad] {
4031
+ .edit-table-draggable .table-item.align-right .field-label[data-v-55479df2] {
4026
4032
  text-align: right;
4027
4033
  justify-content: flex-end;
4028
4034
  }
4029
- .edit-table-draggable .table-item .widgets-tools[data-v-271403ad] {
4035
+ .edit-table-draggable .table-item .widgets-tools[data-v-55479df2] {
4030
4036
  position: absolute;
4031
4037
  top: -30px;
4032
4038
  width: 100%;
@@ -4037,18 +4043,18 @@ to {
4037
4043
  height: 30px;
4038
4044
  color: #121c2e;
4039
4045
  }
4040
- .edit-table-draggable .table-item .widgets-tools .icon[data-v-271403ad] {
4046
+ .edit-table-draggable .table-item .widgets-tools .icon[data-v-55479df2] {
4041
4047
  cursor: pointer;
4042
4048
  font-size: 16px;
4043
4049
  margin-left: 8px;
4044
4050
  }
4045
- .edit-table-draggable .table-item .widgets-tools .icon[data-v-271403ad]:hover {
4051
+ .edit-table-draggable .table-item .widgets-tools .icon[data-v-55479df2]:hover {
4046
4052
  opacity: 0.7;
4047
4053
  }
4048
- .edit-table-draggable .table-item .widgets-tools .delete[data-v-271403ad] {
4054
+ .edit-table-draggable .table-item .widgets-tools .delete[data-v-55479df2] {
4049
4055
  color: #d9534f;
4050
4056
  }
4051
- .edit-table-draggable .table-item .field-label[data-v-271403ad] {
4057
+ .edit-table-draggable .table-item .field-label[data-v-55479df2] {
4052
4058
  border-top: 1px solid #ebeef5;
4053
4059
  height: 40px;
4054
4060
  padding: 0 8px;
@@ -4056,11 +4062,11 @@ to {
4056
4062
  display: flex;
4057
4063
  align-items: center;
4058
4064
  }
4059
- .edit-table-draggable .table-item .field-label[data-v-271403ad] .el-icon {
4065
+ .edit-table-draggable .table-item .field-label[data-v-55479df2] .el-icon {
4060
4066
  color: #909399;
4061
4067
  margin-left: 2px;
4062
4068
  }
4063
- .edit-table-draggable .table-item .quick-operation[data-v-271403ad] {
4069
+ .edit-table-draggable .table-item .quick-operation[data-v-55479df2] {
4064
4070
  display: none;
4065
4071
  align-items: center;
4066
4072
  gap: 4px;
@@ -4069,7 +4075,7 @@ to {
4069
4075
  width: 100%;
4070
4076
  padding-top: 3px;
4071
4077
  }
4072
- .edit-table-draggable .table-item .quick-operation .setting-icon[data-v-271403ad] {
4078
+ .edit-table-draggable .table-item .quick-operation .setting-icon[data-v-55479df2] {
4073
4079
  color: #909399;
4074
4080
  cursor: pointer;
4075
4081
  font-size: 16px;
@@ -4077,11 +4083,11 @@ to {
4077
4083
  border-radius: 4px;
4078
4084
  transition: all 0.3s;
4079
4085
  }
4080
- .edit-table-draggable .table-item .quick-operation .setting-icon[data-v-271403ad]:hover, .edit-table-draggable .table-item .quick-operation .setting-icon.is-active[data-v-271403ad] {
4086
+ .edit-table-draggable .table-item .quick-operation .setting-icon[data-v-55479df2]:hover, .edit-table-draggable .table-item .quick-operation .setting-icon.is-active[data-v-55479df2] {
4081
4087
  color: #409eff;
4082
4088
  background-color: #ecf5ff;
4083
4089
  }
4084
- .edit-table-draggable .table-item .quick-operation .icon-action[data-v-271403ad] {
4090
+ .edit-table-draggable .table-item .quick-operation .icon-action[data-v-55479df2] {
4085
4091
  color: #606266;
4086
4092
  cursor: pointer;
4087
4093
  font-size: 16px;
@@ -4089,33 +4095,33 @@ to {
4089
4095
  border-radius: 4px;
4090
4096
  transition: all 0.3s;
4091
4097
  }
4092
- .edit-table-draggable .table-item .quick-operation .icon-action[data-v-271403ad]:hover {
4098
+ .edit-table-draggable .table-item .quick-operation .icon-action[data-v-55479df2]:hover {
4093
4099
  color: #409eff;
4094
4100
  background-color: #ecf5ff;
4095
4101
  }
4096
- .edit-table-draggable .table-item .quick-operation .icon-action.delete[data-v-271403ad] {
4102
+ .edit-table-draggable .table-item .quick-operation .icon-action.delete[data-v-55479df2] {
4097
4103
  color: #f56c6c;
4098
4104
  }
4099
- .edit-table-draggable .table-item .quick-operation .icon-action.delete[data-v-271403ad]:hover {
4105
+ .edit-table-draggable .table-item .quick-operation .icon-action.delete[data-v-55479df2]:hover {
4100
4106
  color: #fff;
4101
4107
  background-color: #f56c6c;
4102
4108
  }
4103
- .edit-table-draggable .table-item[data-v-271403ad]:last-child {
4109
+ .edit-table-draggable .table-item[data-v-55479df2]:last-child {
4104
4110
  border-right: none;
4105
4111
  }
4106
- .edit-table-draggable .table-item.is-hover .widgets[data-v-271403ad] {
4112
+ .edit-table-draggable .table-item.is-hover .widgets[data-v-55479df2] {
4107
4113
  border: 2px dashed #7b99cb !important;
4108
4114
  }
4109
- .edit-table-draggable .table-item.is-hover .quick-operation[data-v-271403ad] {
4115
+ .edit-table-draggable .table-item.is-hover .quick-operation[data-v-55479df2] {
4110
4116
  display: flex;
4111
4117
  }
4112
- .edit-table-draggable .table-item.is-select .widgets[data-v-271403ad] {
4118
+ .edit-table-draggable .table-item.is-select .widgets[data-v-55479df2] {
4113
4119
  border: 2px dashed #f0ad4e !important;
4114
4120
  }
4115
- .edit-table-draggable .table-item.is-select .quick-operation[data-v-271403ad] {
4121
+ .edit-table-draggable .table-item.is-select .quick-operation[data-v-55479df2] {
4116
4122
  display: flex;
4117
4123
  }
4118
- .table-btn[data-v-271403ad] {
4124
+ .table-btn[data-v-55479df2] {
4119
4125
  font-size: 14px;
4120
4126
  width: 220px;
4121
4127
  flex: none;
@@ -4123,7 +4129,7 @@ to {
4123
4129
  border-right: 1px solid #ebeef5 !important;
4124
4130
  border-bottom: none;
4125
4131
  }
4126
- .table-btn .widgets[data-v-271403ad] {
4132
+ .table-btn .widgets[data-v-55479df2] {
4127
4133
  text-align: center;
4128
4134
  position: relative;
4129
4135
  border-bottom: 1px solid #ebeef5;
@@ -4134,34 +4140,34 @@ to {
4134
4140
  align-items: center;
4135
4141
  justify-content: center;
4136
4142
  }
4137
- .table-btn .widgets .isOptBtns[data-v-271403ad] {
4143
+ .table-btn .widgets .isOptBtns[data-v-55479df2] {
4138
4144
  position: absolute;
4139
4145
  left: 5px;
4140
4146
  margin: 0;
4141
4147
  top: 5px;
4142
4148
  }
4143
- .table-btn .widgets .addLink[data-v-271403ad] {
4149
+ .table-btn .widgets .addLink[data-v-55479df2] {
4144
4150
  position: absolute;
4145
4151
  right: 10px;
4146
4152
  }
4147
- .table-btn .widgets-tools[data-v-271403ad] {
4153
+ .table-btn .widgets-tools[data-v-55479df2] {
4148
4154
  display: flex;
4149
4155
  }
4150
- .table-btn.close[data-v-271403ad] {
4156
+ .table-btn.close[data-v-55479df2] {
4151
4157
  width: 80px;
4152
4158
  }
4153
- .table-btn.close .addLink[data-v-271403ad],
4154
- .table-btn.close .table-btn-option[data-v-271403ad] {
4159
+ .table-btn.close .addLink[data-v-55479df2],
4160
+ .table-btn.close .table-btn-option[data-v-55479df2] {
4155
4161
  display: none;
4156
4162
  }
4157
- .table-selectMode[data-v-271403ad],
4158
- .table-indexMode[data-v-271403ad] {
4163
+ .table-selectMode[data-v-55479df2],
4164
+ .table-indexMode[data-v-55479df2] {
4159
4165
  width: 42px;
4160
4166
  flex: none;
4161
4167
  border-right: 1px solid #ebeef5 !important;
4162
4168
  }
4163
- .table-selectMode .widgets[data-v-271403ad],
4164
- .table-indexMode .widgets[data-v-271403ad] {
4169
+ .table-selectMode .widgets[data-v-55479df2],
4170
+ .table-indexMode .widgets[data-v-55479df2] {
4165
4171
  color: #1a1a1a;
4166
4172
  font-weight: bold;
4167
4173
  font-size: 14px;
@@ -4174,8 +4180,8 @@ to {
4174
4180
  align-items: center;
4175
4181
  justify-content: center;
4176
4182
  }
4177
- .table-selectMode .field-label[data-v-271403ad],
4178
- .table-indexMode .field-label[data-v-271403ad] {
4183
+ .table-selectMode .field-label[data-v-55479df2],
4184
+ .table-indexMode .field-label[data-v-55479df2] {
4179
4185
  border-bottom: 1px solid #ebeef5;
4180
4186
  height: 40px;
4181
4187
  padding: 0 8px;
@@ -4183,16 +4189,16 @@ to {
4183
4189
  font-size: 14px;
4184
4190
  text-align: center;
4185
4191
  }
4186
- .table-selectMode[data-v-271403ad] .el-radio__label,
4187
- .table-indexMode[data-v-271403ad] .el-radio__label {
4192
+ .table-selectMode[data-v-55479df2] .el-radio__label,
4193
+ .table-indexMode[data-v-55479df2] .el-radio__label {
4188
4194
  display: none;
4189
4195
  }
4190
- .table-btn-option[data-v-271403ad] {
4196
+ .table-btn-option[data-v-55479df2] {
4191
4197
  padding: 8px;
4192
4198
  display: flex;
4193
4199
  flex-wrap: wrap;
4194
4200
  }
4195
- .table-btn-option .opt-btn[data-v-271403ad] {
4201
+ .table-btn-option .opt-btn[data-v-55479df2] {
4196
4202
  min-width: 52px;
4197
4203
  height: 28px;
4198
4204
  margin-right: 8px;
@@ -4200,42 +4206,42 @@ to {
4200
4206
  border: 2px solid transparent;
4201
4207
  border-radius: 2px;
4202
4208
  }
4203
- .table-btn-option .opt-btn.is-hover[data-v-271403ad] {
4209
+ .table-btn-option .opt-btn.is-hover[data-v-55479df2] {
4204
4210
  border: 2px dashed #7b99cb !important;
4205
4211
  }
4206
- .table-btn-option .opt-btn.is-select[data-v-271403ad] {
4212
+ .table-btn-option .opt-btn.is-select[data-v-55479df2] {
4207
4213
  border: 2px dashed #efa53a !important;
4208
4214
  }
4209
- .quick-setting-panel[data-v-271403ad] {
4215
+ .quick-setting-panel[data-v-55479df2] {
4210
4216
  padding: 8px;
4211
4217
  min-width: 160px;
4212
4218
  }
4213
- .quick-setting-panel .setting-row[data-v-271403ad] {
4219
+ .quick-setting-panel .setting-row[data-v-55479df2] {
4214
4220
  display: flex;
4215
4221
  align-items: center;
4216
4222
  justify-content: space-between;
4217
4223
  margin-bottom: 8px;
4218
4224
  }
4219
- .quick-setting-panel .setting-row[data-v-271403ad]:last-child {
4225
+ .quick-setting-panel .setting-row[data-v-55479df2]:last-child {
4220
4226
  margin-bottom: 0;
4221
4227
  }
4222
- .quick-setting-panel .setting-row .setting-label[data-v-271403ad] {
4228
+ .quick-setting-panel .setting-row .setting-label[data-v-55479df2] {
4223
4229
  font-size: 12px;
4224
4230
  color: #606266;
4225
4231
  min-width: 35px;
4226
4232
  }
4227
- .quick-setting-panel .setting-row .setting-select[data-v-271403ad] {
4233
+ .quick-setting-panel .setting-row .setting-select[data-v-55479df2] {
4228
4234
  flex: 1;
4229
4235
  width: 90px;
4230
4236
  }
4231
- .quick-setting-panel .setting-row .setting-input[data-v-271403ad] {
4237
+ .quick-setting-panel .setting-row .setting-input[data-v-55479df2] {
4232
4238
  flex: 1;
4233
4239
  width: 90px;
4234
4240
  }
4235
- .quick-setting-panel .setting-row[data-v-271403ad] .el-checkbox {
4241
+ .quick-setting-panel .setting-row[data-v-55479df2] .el-checkbox {
4236
4242
  margin-right: 5px;
4237
4243
  }
4238
- .quick-setting-panel .setting-row[data-v-271403ad] .el-checkbox .el-checkbox__label {
4244
+ .quick-setting-panel .setting-row[data-v-55479df2] .el-checkbox .el-checkbox__label {
4239
4245
  padding-left: 5px;
4240
4246
  }.form-setting[data-v-cc559ca7] {
4241
4247
  display: flex;
@@ -5599,21 +5605,21 @@ body,
5599
5605
  outline: none;
5600
5606
  box-shadow: 0 1px 0 0 #c0c4cc inset, 0 -1px 0 0 #c0c4cc inset, -1px 0 0 0 #c0c4cc inset;
5601
5607
  }
5602
- .info-icon[data-v-f41d58fe] {
5608
+ .info-icon[data-v-df2a70b8] {
5603
5609
  margin-left: 4px;
5604
5610
  color: #f5b041;
5605
5611
  cursor: help;
5606
5612
  font-size: 14px;
5607
5613
  }
5608
- .credit-icon[data-v-f41d58fe] {
5614
+ .credit-icon[data-v-df2a70b8] {
5609
5615
  color: #2e8bff;
5610
5616
  margin-right: 2px;
5611
5617
  }
5612
- .regulation-icon[data-v-f41d58fe] {
5618
+ .regulation-icon[data-v-df2a70b8] {
5613
5619
  color: #f56c6c;
5614
5620
  margin-right: 2px;
5615
5621
  }
5616
- [data-v-f41d58fe] .el-form-item__label {
5622
+ [data-v-df2a70b8] .el-form-item__label {
5617
5623
  padding: 0 8px 0 0;
5618
5624
  }
5619
5625
  .el-page-header.is-contentful .el-page-header__main{border-top:1px solid var(--el-border-color-light);margin-top:16px}.el-page-header__header{justify-content:space-between;align-items:center;line-height:24px;display:flex}.el-page-header__left{align-items:center;margin-right:40px;display:flex;position:relative}.el-page-header__back{cursor:pointer;align-items:center;display:flex}.el-page-header__left .el-divider--vertical{margin:0 16px}.el-page-header__icon{align-items:center;margin-right:10px;font-size:16px;display:flex}.el-page-header__icon .el-icon{font-size:inherit}.el-page-header__title{font-size:14px;font-weight:500}.el-page-header__content{color:var(--el-text-color-primary);font-size:18px}.el-page-header__breadcrumb{margin-bottom:16px}.fec-header[data-v-b7c0507e] {
@@ -5670,27 +5676,27 @@ body,
5670
5676
  width: 80px;
5671
5677
  font-size: var(--el-font-size-extra-small);
5672
5678
  }
5673
- .fec-form[data-v-c9bc9779] {
5679
+ .fec-form[data-v-18adf51b] {
5674
5680
  height: 100%;
5675
5681
  }
5676
- [data-v-c9bc9779] .vgl-item {
5682
+ [data-v-18adf51b] .vgl-item {
5677
5683
  transition: none;
5678
5684
  }
5679
- [data-v-c9bc9779] .vgl-item > .el-form-item {
5685
+ [data-v-18adf51b] .vgl-item > .el-form-item {
5680
5686
  width: 100%;
5681
5687
  padding: 12px 8px 0 8px;
5682
5688
  height: calc(100% - 15px);
5683
5689
  display: flex;
5684
5690
  }
5685
- [data-v-c9bc9779] .vgl-item > .el-form-item.el-form-item--label-top {
5691
+ [data-v-18adf51b] .vgl-item > .el-form-item.el-form-item--label-top {
5686
5692
  flex-direction: column;
5687
5693
  }
5688
- [data-v-c9bc9779] .vgl-item > .el-form-item .el-form-item__label {
5694
+ [data-v-18adf51b] .vgl-item > .el-form-item .el-form-item__label {
5689
5695
  line-height: 20px;
5690
5696
  display: flex;
5691
5697
  align-items: center;
5692
5698
  }
5693
- [data-v-c9bc9779] .vgl-item > .el-container {
5699
+ [data-v-18adf51b] .vgl-item > .el-container {
5694
5700
  height: auto !important;
5695
5701
  }.cell-content .cell-text[data-v-3e5372d4] {
5696
5702
  display: inline-block;
@@ -14,7 +14,7 @@ import _FormItem from "../formItem/FormItem.vue.mjs";
14
14
  import { createDataSource } from "../../../utils/datasource.mjs";
15
15
  import { generateFieldRules } from "./validation.mjs";
16
16
  import { parseSingleParamValue } from "../../../utils/parseRouteParams.mjs";
17
- import { cloneDeep } from "../../../utils/common.mjs";
17
+ import { cloneDeep, removeEmptyValues } from "../../../utils/common.mjs";
18
18
  /* empty css */
19
19
  /* empty css */
20
20
  /* empty css */
@@ -597,7 +597,14 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
597
597
  };
598
598
  const validate = () => {
599
599
  var _a;
600
- return (_a = formRef.value) == null ? void 0 : _a.validate();
600
+ const subFormComps = gridLayoutFieldsData.value.filter((item) => item.component.fieldType == "subForm").map((item) => item.component);
601
+ const subFormPromises = subFormComps.map((subForm) => {
602
+ var _a2, _b;
603
+ const subFormRef = getFormItemRef(String(subForm.id));
604
+ return ((_b = (_a2 = subFormRef == null ? void 0 : subFormRef.subFormRef) == null ? void 0 : _a2.validate) == null ? void 0 : _b.call(_a2)) || Promise.resolve();
605
+ });
606
+ subFormPromises.push((_a = formRef.value) == null ? void 0 : _a.validate());
607
+ return Promise.all(subFormPromises);
601
608
  };
602
609
  const resetFields = () => {
603
610
  var _a, _b;
@@ -711,7 +718,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
711
718
  });
712
719
  }
713
720
  if (flag) {
714
- return processedData;
721
+ return removeEmptyValues(processedData);
715
722
  }
716
723
  Object.assign(formData.value, processedData);
717
724
  };
@@ -1027,7 +1034,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
1027
1034
  };
1028
1035
  }
1029
1036
  });
1030
- const _Form = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-c9bc9779"]]);
1037
+ const _Form = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-18adf51b"]]);
1031
1038
  export {
1032
1039
  _Form as default
1033
1040
  };
@@ -100,7 +100,6 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
100
100
  }
101
101
  });
102
102
  const getInnerComponentRef = () => {
103
- debugger;
104
103
  return innerComponentRef.value;
105
104
  };
106
105
  __expose({
@@ -189,7 +188,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
189
188
  };
190
189
  }
191
190
  });
192
- const _FormItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-f41d58fe"]]);
191
+ const _FormItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-df2a70b8"]]);
193
192
  export {
194
193
  _FormItem as default
195
194
  };
@@ -1,4 +1,4 @@
1
- import { inject, computed, createElementBlock, openBlock, Fragment, createCommentVNode, createVNode, createBlock, unref, isRef } from "vue";
1
+ import { inject, computed, ref, createElementBlock, openBlock, Fragment, createCommentVNode, createVNode, createBlock, unref, isRef } from "vue";
2
2
  import { Form } from "../form/index.mjs";
3
3
  import { SubTitle } from "../subTitle/index.mjs";
4
4
  import { H2 } from "../h2/index.mjs";
@@ -45,7 +45,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
45
45
  // default: false,
46
46
  // },
47
47
  },
48
- setup(__props) {
48
+ setup(__props, { expose: __expose }) {
49
49
  const props = __props;
50
50
  const formData = inject("formData");
51
51
  inject("rowHeight");
@@ -105,6 +105,10 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
105
105
  setFormItemHeight(props.config.id, true, maxY + maxYH + titleHeight);
106
106
  }
107
107
  }
108
+ const formRef = ref();
109
+ __expose({
110
+ subFormRef: formRef
111
+ });
108
112
  return (_ctx, _cache) => {
109
113
  return openBlock(), createElementBlock(Fragment, null, [
110
114
  __props.config.titleMode != "none" ? (openBlock(), createElementBlock("div", _hoisted_1, [
@@ -117,6 +121,8 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
117
121
  }, null, 8, ["config"])) : createCommentVNode("", true)
118
122
  ])) : createCommentVNode("", true),
119
123
  createVNode(unref(Form), {
124
+ ref_key: "formRef",
125
+ ref: formRef,
120
126
  templateKey: unref(templateKey),
121
127
  isSubForm: "",
122
128
  onLayoutUpdated: subFormLoaded,
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const version = "5.4.5";
3
+ const version = "5.4.6";
4
4
  const packageJson = {
5
5
  version
6
6
  };
@@ -6,7 +6,7 @@ require("../../../node_modules/element-plus/es/index.js");
6
6
  ;/* empty css */
7
7
  const vue = require("vue");
8
8
  const index$1 = require("../../../node_modules/@element-plus/icons-vue/dist/index.js");
9
- const ValueSelector = require("./ValueSelector.vue2.js");
9
+ const ValueSelector = require("./ValueSelector.vue.js");
10
10
  ;/* empty css */
11
11
  const _pluginVue_exportHelper = require("../../../_virtual/_plugin-vue_export-helper.js");
12
12
  const index = require("../../../node_modules/element-plus/es/components/button/index.js");
@@ -18,7 +18,7 @@ const index$2 = require("../../../../node_modules/@element-plus/icons-vue/dist/i
18
18
  const common = require("../../packages/utils/common.js");
19
19
  const index$5 = require("../../packages/form/aside/index.js");
20
20
  const index$6 = require("../../packages/table/aside/index.js");
21
- const ValueSelector = require("../../components/ValueSelector.vue2.js");
21
+ const ValueSelector = require("../../components/ValueSelector.vue.js");
22
22
  ;/* empty css */
23
23
  const _pluginVue_exportHelper = require("../../../../_virtual/_plugin-vue_export-helper.js");
24
24
  const index = require("../../../../node_modules/element-plus/es/components/dialog/index.js");
@@ -16,7 +16,7 @@ require("../../../../node_modules/element-plus/theme-chalk/el-tooltip.css.js");
16
16
  require("../../../../node_modules/element-plus/theme-chalk/el-date-picker.css.js");
17
17
  const vue = require("vue");
18
18
  const index = require("../../../../node_modules/@vueuse/core/dist/index.js");
19
- const ValueSelector = require("../../components/ValueSelector.vue2.js");
19
+ const ValueSelector = require("../../components/ValueSelector.vue.js");
20
20
  const index$1 = require("../../api/index.js");
21
21
  const common = require("../utils/common.js");
22
22
  const datasource = require("../utils/datasource.js");
@@ -32,7 +32,7 @@ require("../../../../node_modules/element-plus/theme-chalk/el-date-picker.css.js
32
32
  ;/* empty css */
33
33
  ;/* empty css */
34
34
  const _pluginVue_exportHelper = require("../../../../_virtual/_plugin-vue_export-helper.js");
35
- ;/* empty css */
35
+ ;/* empty css */
36
36
  require("../../axios/config.js");
37
37
  require("../../../../_virtual/FileSaver.min.js");
38
38
  require("../../../../_virtual/index.js");
@@ -81,7 +81,7 @@ require("../../../../node_modules/element-plus/theme-chalk/el-date-picker.css.js
81
81
  require("../../../../node_modules/element-plus/theme-chalk/el-tab-pane.css.js");
82
82
  ;/* empty css */
83
83
  ;/* empty css */
84
- ;/* empty css */
84
+ ;/* empty css */
85
85
  require("../../axios/config.js");
86
86
  ;/* empty css */
87
87
  ;/* empty css */
@@ -13,7 +13,7 @@ require("../../../../../node_modules/element-plus/es/index.js");
13
13
  const vue = require("vue");
14
14
  const common = require("../../utils/common.js");
15
15
  const eventBus = require("../../utils/eventBus.js");
16
- const ValueSelector = require("../../../components/ValueSelector.vue2.js");
16
+ const ValueSelector = require("../../../components/ValueSelector.vue.js");
17
17
  const index = require("../../../../../node_modules/element-plus/es/components/collapse/index.js");
18
18
  const index$1 = require("../../../../../node_modules/element-plus/es/components/form/index.js");
19
19
  const index$2 = require("../../../../../node_modules/element-plus/es/components/input/index.js");
@@ -15,7 +15,7 @@ const vue = require("vue");
15
15
  const common = require("../../utils/common.js");
16
16
  const TemplateSelector = require("../../../components/TemplateSelector.vue.js");
17
17
  const eventBus = require("../../utils/eventBus.js");
18
- const ValueSelector = require("../../../components/ValueSelector.vue2.js");
18
+ const ValueSelector = require("../../../components/ValueSelector.vue.js");
19
19
  const index = require("../../../../../node_modules/element-plus/es/components/collapse/index.js");
20
20
  const index$1 = require("../../../../../node_modules/element-plus/es/components/form/index.js");
21
21
  const index$2 = require("../../../../../node_modules/element-plus/es/components/input/index.js");
@@ -16,7 +16,7 @@ require("../../../../node_modules/element-plus/es/index.js");
16
16
  const vue = require("vue");
17
17
  const index$6 = require("../../../../node_modules/@element-plus/icons-vue/dist/index.js");
18
18
  const common = require("../utils/common.js");
19
- const ValueSelector = require("../../components/ValueSelector.vue2.js");
19
+ const ValueSelector = require("../../components/ValueSelector.vue.js");
20
20
  const index = require("../../api/index.js");
21
21
  ;/* empty css */
22
22
  const _pluginVue_exportHelper = require("../../../../_virtual/_plugin-vue_export-helper.js");
@@ -47,7 +47,7 @@ const index$1 = require("../../../../node_modules/@element-plus/icons-vue/dist/i
47
47
  ;/* empty css */
48
48
  require("../../store/index.js");
49
49
  ;/* empty css */
50
- ;/* empty css */
50
+ ;/* empty css */
51
51
  ;/* empty css */
52
52
  ;/* empty css */
53
53
  ;/* empty css */
@@ -474,5 +474,5 @@ const _sfc_main = {
474
474
  };
475
475
  }
476
476
  };
477
- const tableWorkArea = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-271403ad"]]);
477
+ const tableWorkArea = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-55479df2"]]);
478
478
  exports.default = tableWorkArea;
package/lib/designer.css CHANGED
@@ -3956,7 +3956,7 @@ to {
3956
3956
  color: #606266;
3957
3957
  margin-right: 4px;
3958
3958
  }
3959
- .table-work-area[data-v-271403ad] {
3959
+ .table-work-area[data-v-55479df2] {
3960
3960
  display: flex;
3961
3961
  border-left: 1px solid #ebeef5;
3962
3962
  position: relative;
@@ -3964,26 +3964,32 @@ to {
3964
3964
  border-radius: 4px;
3965
3965
  overflow: hidden;
3966
3966
  margin: 8px 16px;
3967
+ border-bottom-left-radius: 0;
3968
+ border-bottom-right-radius: 0;
3967
3969
  }
3968
- .table-work-area .widgets-opt-tools[data-v-271403ad] {
3970
+ .table-work-area .widgets-opt-tools[data-v-55479df2] {
3969
3971
  height: 150px;
3970
3972
  width: 100%;
3971
3973
  }
3972
- .edit-table-draggable[data-v-271403ad] {
3974
+ .table-work-area[data-v-55479df2] .el-scrollbar .is-horizontal {
3975
+ height: 8px;
3976
+ bottom: 4px;
3977
+ }
3978
+ .edit-table-draggable[data-v-55479df2] {
3973
3979
  display: flex;
3974
3980
  font-size: 14px;
3975
3981
  }
3976
- .edit-table-draggable .table-item[data-v-271403ad] {
3982
+ .edit-table-draggable .table-item[data-v-55479df2] {
3977
3983
  flex: none;
3978
3984
  border: 1px solid #ebeef5;
3979
3985
  border-left: none;
3980
3986
  min-width: 80px;
3981
3987
  position: relative;
3982
3988
  }
3983
- .edit-table-draggable .table-item.flex-auto[data-v-271403ad] {
3989
+ .edit-table-draggable .table-item.flex-auto[data-v-55479df2] {
3984
3990
  flex: 1;
3985
3991
  }
3986
- .edit-table-draggable .table-item .widgets[data-v-271403ad] {
3992
+ .edit-table-draggable .table-item .widgets[data-v-55479df2] {
3987
3993
  color: #1a1a1a;
3988
3994
  height: 40px;
3989
3995
  border: 2px solid transparent;
@@ -3998,35 +4004,35 @@ to {
3998
4004
  display: flex;
3999
4005
  align-items: center;
4000
4006
  }
4001
- .edit-table-draggable .table-item .widgets[data-v-271403ad] .el-icon {
4007
+ .edit-table-draggable .table-item .widgets[data-v-55479df2] .el-icon {
4002
4008
  color: #909399;
4003
4009
  margin-left: 2px;
4004
4010
  }
4005
- .edit-table-draggable .table-item.align-header-left .widgets[data-v-271403ad] {
4011
+ .edit-table-draggable .table-item.align-header-left .widgets[data-v-55479df2] {
4006
4012
  text-align: left;
4007
4013
  justify-content: flex-start;
4008
4014
  }
4009
- .edit-table-draggable .table-item.align-header-center .widgets[data-v-271403ad] {
4015
+ .edit-table-draggable .table-item.align-header-center .widgets[data-v-55479df2] {
4010
4016
  text-align: center;
4011
4017
  justify-content: center;
4012
4018
  }
4013
- .edit-table-draggable .table-item.align-header-right .widgets[data-v-271403ad] {
4019
+ .edit-table-draggable .table-item.align-header-right .widgets[data-v-55479df2] {
4014
4020
  text-align: right;
4015
4021
  justify-content: flex-end;
4016
4022
  }
4017
- .edit-table-draggable .table-item.align-left .field-label[data-v-271403ad] {
4023
+ .edit-table-draggable .table-item.align-left .field-label[data-v-55479df2] {
4018
4024
  text-align: left;
4019
4025
  justify-content: flex-start;
4020
4026
  }
4021
- .edit-table-draggable .table-item.align-center .field-label[data-v-271403ad] {
4027
+ .edit-table-draggable .table-item.align-center .field-label[data-v-55479df2] {
4022
4028
  text-align: center;
4023
4029
  justify-content: center;
4024
4030
  }
4025
- .edit-table-draggable .table-item.align-right .field-label[data-v-271403ad] {
4031
+ .edit-table-draggable .table-item.align-right .field-label[data-v-55479df2] {
4026
4032
  text-align: right;
4027
4033
  justify-content: flex-end;
4028
4034
  }
4029
- .edit-table-draggable .table-item .widgets-tools[data-v-271403ad] {
4035
+ .edit-table-draggable .table-item .widgets-tools[data-v-55479df2] {
4030
4036
  position: absolute;
4031
4037
  top: -30px;
4032
4038
  width: 100%;
@@ -4037,18 +4043,18 @@ to {
4037
4043
  height: 30px;
4038
4044
  color: #121c2e;
4039
4045
  }
4040
- .edit-table-draggable .table-item .widgets-tools .icon[data-v-271403ad] {
4046
+ .edit-table-draggable .table-item .widgets-tools .icon[data-v-55479df2] {
4041
4047
  cursor: pointer;
4042
4048
  font-size: 16px;
4043
4049
  margin-left: 8px;
4044
4050
  }
4045
- .edit-table-draggable .table-item .widgets-tools .icon[data-v-271403ad]:hover {
4051
+ .edit-table-draggable .table-item .widgets-tools .icon[data-v-55479df2]:hover {
4046
4052
  opacity: 0.7;
4047
4053
  }
4048
- .edit-table-draggable .table-item .widgets-tools .delete[data-v-271403ad] {
4054
+ .edit-table-draggable .table-item .widgets-tools .delete[data-v-55479df2] {
4049
4055
  color: #d9534f;
4050
4056
  }
4051
- .edit-table-draggable .table-item .field-label[data-v-271403ad] {
4057
+ .edit-table-draggable .table-item .field-label[data-v-55479df2] {
4052
4058
  border-top: 1px solid #ebeef5;
4053
4059
  height: 40px;
4054
4060
  padding: 0 8px;
@@ -4056,11 +4062,11 @@ to {
4056
4062
  display: flex;
4057
4063
  align-items: center;
4058
4064
  }
4059
- .edit-table-draggable .table-item .field-label[data-v-271403ad] .el-icon {
4065
+ .edit-table-draggable .table-item .field-label[data-v-55479df2] .el-icon {
4060
4066
  color: #909399;
4061
4067
  margin-left: 2px;
4062
4068
  }
4063
- .edit-table-draggable .table-item .quick-operation[data-v-271403ad] {
4069
+ .edit-table-draggable .table-item .quick-operation[data-v-55479df2] {
4064
4070
  display: none;
4065
4071
  align-items: center;
4066
4072
  gap: 4px;
@@ -4069,7 +4075,7 @@ to {
4069
4075
  width: 100%;
4070
4076
  padding-top: 3px;
4071
4077
  }
4072
- .edit-table-draggable .table-item .quick-operation .setting-icon[data-v-271403ad] {
4078
+ .edit-table-draggable .table-item .quick-operation .setting-icon[data-v-55479df2] {
4073
4079
  color: #909399;
4074
4080
  cursor: pointer;
4075
4081
  font-size: 16px;
@@ -4077,11 +4083,11 @@ to {
4077
4083
  border-radius: 4px;
4078
4084
  transition: all 0.3s;
4079
4085
  }
4080
- .edit-table-draggable .table-item .quick-operation .setting-icon[data-v-271403ad]:hover, .edit-table-draggable .table-item .quick-operation .setting-icon.is-active[data-v-271403ad] {
4086
+ .edit-table-draggable .table-item .quick-operation .setting-icon[data-v-55479df2]:hover, .edit-table-draggable .table-item .quick-operation .setting-icon.is-active[data-v-55479df2] {
4081
4087
  color: #409eff;
4082
4088
  background-color: #ecf5ff;
4083
4089
  }
4084
- .edit-table-draggable .table-item .quick-operation .icon-action[data-v-271403ad] {
4090
+ .edit-table-draggable .table-item .quick-operation .icon-action[data-v-55479df2] {
4085
4091
  color: #606266;
4086
4092
  cursor: pointer;
4087
4093
  font-size: 16px;
@@ -4089,33 +4095,33 @@ to {
4089
4095
  border-radius: 4px;
4090
4096
  transition: all 0.3s;
4091
4097
  }
4092
- .edit-table-draggable .table-item .quick-operation .icon-action[data-v-271403ad]:hover {
4098
+ .edit-table-draggable .table-item .quick-operation .icon-action[data-v-55479df2]:hover {
4093
4099
  color: #409eff;
4094
4100
  background-color: #ecf5ff;
4095
4101
  }
4096
- .edit-table-draggable .table-item .quick-operation .icon-action.delete[data-v-271403ad] {
4102
+ .edit-table-draggable .table-item .quick-operation .icon-action.delete[data-v-55479df2] {
4097
4103
  color: #f56c6c;
4098
4104
  }
4099
- .edit-table-draggable .table-item .quick-operation .icon-action.delete[data-v-271403ad]:hover {
4105
+ .edit-table-draggable .table-item .quick-operation .icon-action.delete[data-v-55479df2]:hover {
4100
4106
  color: #fff;
4101
4107
  background-color: #f56c6c;
4102
4108
  }
4103
- .edit-table-draggable .table-item[data-v-271403ad]:last-child {
4109
+ .edit-table-draggable .table-item[data-v-55479df2]:last-child {
4104
4110
  border-right: none;
4105
4111
  }
4106
- .edit-table-draggable .table-item.is-hover .widgets[data-v-271403ad] {
4112
+ .edit-table-draggable .table-item.is-hover .widgets[data-v-55479df2] {
4107
4113
  border: 2px dashed #7b99cb !important;
4108
4114
  }
4109
- .edit-table-draggable .table-item.is-hover .quick-operation[data-v-271403ad] {
4115
+ .edit-table-draggable .table-item.is-hover .quick-operation[data-v-55479df2] {
4110
4116
  display: flex;
4111
4117
  }
4112
- .edit-table-draggable .table-item.is-select .widgets[data-v-271403ad] {
4118
+ .edit-table-draggable .table-item.is-select .widgets[data-v-55479df2] {
4113
4119
  border: 2px dashed #f0ad4e !important;
4114
4120
  }
4115
- .edit-table-draggable .table-item.is-select .quick-operation[data-v-271403ad] {
4121
+ .edit-table-draggable .table-item.is-select .quick-operation[data-v-55479df2] {
4116
4122
  display: flex;
4117
4123
  }
4118
- .table-btn[data-v-271403ad] {
4124
+ .table-btn[data-v-55479df2] {
4119
4125
  font-size: 14px;
4120
4126
  width: 220px;
4121
4127
  flex: none;
@@ -4123,7 +4129,7 @@ to {
4123
4129
  border-right: 1px solid #ebeef5 !important;
4124
4130
  border-bottom: none;
4125
4131
  }
4126
- .table-btn .widgets[data-v-271403ad] {
4132
+ .table-btn .widgets[data-v-55479df2] {
4127
4133
  text-align: center;
4128
4134
  position: relative;
4129
4135
  border-bottom: 1px solid #ebeef5;
@@ -4134,34 +4140,34 @@ to {
4134
4140
  align-items: center;
4135
4141
  justify-content: center;
4136
4142
  }
4137
- .table-btn .widgets .isOptBtns[data-v-271403ad] {
4143
+ .table-btn .widgets .isOptBtns[data-v-55479df2] {
4138
4144
  position: absolute;
4139
4145
  left: 5px;
4140
4146
  margin: 0;
4141
4147
  top: 5px;
4142
4148
  }
4143
- .table-btn .widgets .addLink[data-v-271403ad] {
4149
+ .table-btn .widgets .addLink[data-v-55479df2] {
4144
4150
  position: absolute;
4145
4151
  right: 10px;
4146
4152
  }
4147
- .table-btn .widgets-tools[data-v-271403ad] {
4153
+ .table-btn .widgets-tools[data-v-55479df2] {
4148
4154
  display: flex;
4149
4155
  }
4150
- .table-btn.close[data-v-271403ad] {
4156
+ .table-btn.close[data-v-55479df2] {
4151
4157
  width: 80px;
4152
4158
  }
4153
- .table-btn.close .addLink[data-v-271403ad],
4154
- .table-btn.close .table-btn-option[data-v-271403ad] {
4159
+ .table-btn.close .addLink[data-v-55479df2],
4160
+ .table-btn.close .table-btn-option[data-v-55479df2] {
4155
4161
  display: none;
4156
4162
  }
4157
- .table-selectMode[data-v-271403ad],
4158
- .table-indexMode[data-v-271403ad] {
4163
+ .table-selectMode[data-v-55479df2],
4164
+ .table-indexMode[data-v-55479df2] {
4159
4165
  width: 42px;
4160
4166
  flex: none;
4161
4167
  border-right: 1px solid #ebeef5 !important;
4162
4168
  }
4163
- .table-selectMode .widgets[data-v-271403ad],
4164
- .table-indexMode .widgets[data-v-271403ad] {
4169
+ .table-selectMode .widgets[data-v-55479df2],
4170
+ .table-indexMode .widgets[data-v-55479df2] {
4165
4171
  color: #1a1a1a;
4166
4172
  font-weight: bold;
4167
4173
  font-size: 14px;
@@ -4174,8 +4180,8 @@ to {
4174
4180
  align-items: center;
4175
4181
  justify-content: center;
4176
4182
  }
4177
- .table-selectMode .field-label[data-v-271403ad],
4178
- .table-indexMode .field-label[data-v-271403ad] {
4183
+ .table-selectMode .field-label[data-v-55479df2],
4184
+ .table-indexMode .field-label[data-v-55479df2] {
4179
4185
  border-bottom: 1px solid #ebeef5;
4180
4186
  height: 40px;
4181
4187
  padding: 0 8px;
@@ -4183,16 +4189,16 @@ to {
4183
4189
  font-size: 14px;
4184
4190
  text-align: center;
4185
4191
  }
4186
- .table-selectMode[data-v-271403ad] .el-radio__label,
4187
- .table-indexMode[data-v-271403ad] .el-radio__label {
4192
+ .table-selectMode[data-v-55479df2] .el-radio__label,
4193
+ .table-indexMode[data-v-55479df2] .el-radio__label {
4188
4194
  display: none;
4189
4195
  }
4190
- .table-btn-option[data-v-271403ad] {
4196
+ .table-btn-option[data-v-55479df2] {
4191
4197
  padding: 8px;
4192
4198
  display: flex;
4193
4199
  flex-wrap: wrap;
4194
4200
  }
4195
- .table-btn-option .opt-btn[data-v-271403ad] {
4201
+ .table-btn-option .opt-btn[data-v-55479df2] {
4196
4202
  min-width: 52px;
4197
4203
  height: 28px;
4198
4204
  margin-right: 8px;
@@ -4200,42 +4206,42 @@ to {
4200
4206
  border: 2px solid transparent;
4201
4207
  border-radius: 2px;
4202
4208
  }
4203
- .table-btn-option .opt-btn.is-hover[data-v-271403ad] {
4209
+ .table-btn-option .opt-btn.is-hover[data-v-55479df2] {
4204
4210
  border: 2px dashed #7b99cb !important;
4205
4211
  }
4206
- .table-btn-option .opt-btn.is-select[data-v-271403ad] {
4212
+ .table-btn-option .opt-btn.is-select[data-v-55479df2] {
4207
4213
  border: 2px dashed #efa53a !important;
4208
4214
  }
4209
- .quick-setting-panel[data-v-271403ad] {
4215
+ .quick-setting-panel[data-v-55479df2] {
4210
4216
  padding: 8px;
4211
4217
  min-width: 160px;
4212
4218
  }
4213
- .quick-setting-panel .setting-row[data-v-271403ad] {
4219
+ .quick-setting-panel .setting-row[data-v-55479df2] {
4214
4220
  display: flex;
4215
4221
  align-items: center;
4216
4222
  justify-content: space-between;
4217
4223
  margin-bottom: 8px;
4218
4224
  }
4219
- .quick-setting-panel .setting-row[data-v-271403ad]:last-child {
4225
+ .quick-setting-panel .setting-row[data-v-55479df2]:last-child {
4220
4226
  margin-bottom: 0;
4221
4227
  }
4222
- .quick-setting-panel .setting-row .setting-label[data-v-271403ad] {
4228
+ .quick-setting-panel .setting-row .setting-label[data-v-55479df2] {
4223
4229
  font-size: 12px;
4224
4230
  color: #606266;
4225
4231
  min-width: 35px;
4226
4232
  }
4227
- .quick-setting-panel .setting-row .setting-select[data-v-271403ad] {
4233
+ .quick-setting-panel .setting-row .setting-select[data-v-55479df2] {
4228
4234
  flex: 1;
4229
4235
  width: 90px;
4230
4236
  }
4231
- .quick-setting-panel .setting-row .setting-input[data-v-271403ad] {
4237
+ .quick-setting-panel .setting-row .setting-input[data-v-55479df2] {
4232
4238
  flex: 1;
4233
4239
  width: 90px;
4234
4240
  }
4235
- .quick-setting-panel .setting-row[data-v-271403ad] .el-checkbox {
4241
+ .quick-setting-panel .setting-row[data-v-55479df2] .el-checkbox {
4236
4242
  margin-right: 5px;
4237
4243
  }
4238
- .quick-setting-panel .setting-row[data-v-271403ad] .el-checkbox .el-checkbox__label {
4244
+ .quick-setting-panel .setting-row[data-v-55479df2] .el-checkbox .el-checkbox__label {
4239
4245
  padding-left: 5px;
4240
4246
  }.form-setting[data-v-cc559ca7] {
4241
4247
  display: flex;
@@ -5599,21 +5605,21 @@ body,
5599
5605
  outline: none;
5600
5606
  box-shadow: 0 1px 0 0 #c0c4cc inset, 0 -1px 0 0 #c0c4cc inset, -1px 0 0 0 #c0c4cc inset;
5601
5607
  }
5602
- .info-icon[data-v-f41d58fe] {
5608
+ .info-icon[data-v-df2a70b8] {
5603
5609
  margin-left: 4px;
5604
5610
  color: #f5b041;
5605
5611
  cursor: help;
5606
5612
  font-size: 14px;
5607
5613
  }
5608
- .credit-icon[data-v-f41d58fe] {
5614
+ .credit-icon[data-v-df2a70b8] {
5609
5615
  color: #2e8bff;
5610
5616
  margin-right: 2px;
5611
5617
  }
5612
- .regulation-icon[data-v-f41d58fe] {
5618
+ .regulation-icon[data-v-df2a70b8] {
5613
5619
  color: #f56c6c;
5614
5620
  margin-right: 2px;
5615
5621
  }
5616
- [data-v-f41d58fe] .el-form-item__label {
5622
+ [data-v-df2a70b8] .el-form-item__label {
5617
5623
  padding: 0 8px 0 0;
5618
5624
  }
5619
5625
  .el-page-header.is-contentful .el-page-header__main{border-top:1px solid var(--el-border-color-light);margin-top:16px}.el-page-header__header{justify-content:space-between;align-items:center;line-height:24px;display:flex}.el-page-header__left{align-items:center;margin-right:40px;display:flex;position:relative}.el-page-header__back{cursor:pointer;align-items:center;display:flex}.el-page-header__left .el-divider--vertical{margin:0 16px}.el-page-header__icon{align-items:center;margin-right:10px;font-size:16px;display:flex}.el-page-header__icon .el-icon{font-size:inherit}.el-page-header__title{font-size:14px;font-weight:500}.el-page-header__content{color:var(--el-text-color-primary);font-size:18px}.el-page-header__breadcrumb{margin-bottom:16px}.fec-header[data-v-b7c0507e] {
@@ -5670,27 +5676,27 @@ body,
5670
5676
  width: 80px;
5671
5677
  font-size: var(--el-font-size-extra-small);
5672
5678
  }
5673
- .fec-form[data-v-c9bc9779] {
5679
+ .fec-form[data-v-18adf51b] {
5674
5680
  height: 100%;
5675
5681
  }
5676
- [data-v-c9bc9779] .vgl-item {
5682
+ [data-v-18adf51b] .vgl-item {
5677
5683
  transition: none;
5678
5684
  }
5679
- [data-v-c9bc9779] .vgl-item > .el-form-item {
5685
+ [data-v-18adf51b] .vgl-item > .el-form-item {
5680
5686
  width: 100%;
5681
5687
  padding: 12px 8px 0 8px;
5682
5688
  height: calc(100% - 15px);
5683
5689
  display: flex;
5684
5690
  }
5685
- [data-v-c9bc9779] .vgl-item > .el-form-item.el-form-item--label-top {
5691
+ [data-v-18adf51b] .vgl-item > .el-form-item.el-form-item--label-top {
5686
5692
  flex-direction: column;
5687
5693
  }
5688
- [data-v-c9bc9779] .vgl-item > .el-form-item .el-form-item__label {
5694
+ [data-v-18adf51b] .vgl-item > .el-form-item .el-form-item__label {
5689
5695
  line-height: 20px;
5690
5696
  display: flex;
5691
5697
  align-items: center;
5692
5698
  }
5693
- [data-v-c9bc9779] .vgl-item > .el-container {
5699
+ [data-v-18adf51b] .vgl-item > .el-container {
5694
5700
  height: auto !important;
5695
5701
  }.cell-content .cell-text[data-v-3e5372d4] {
5696
5702
  display: inline-block;
@@ -599,7 +599,14 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
599
599
  };
600
600
  const validate = () => {
601
601
  var _a;
602
- return (_a = formRef.value) == null ? void 0 : _a.validate();
602
+ const subFormComps = gridLayoutFieldsData.value.filter((item) => item.component.fieldType == "subForm").map((item) => item.component);
603
+ const subFormPromises = subFormComps.map((subForm) => {
604
+ var _a2, _b;
605
+ const subFormRef = getFormItemRef(String(subForm.id));
606
+ return ((_b = (_a2 = subFormRef == null ? void 0 : subFormRef.subFormRef) == null ? void 0 : _a2.validate) == null ? void 0 : _b.call(_a2)) || Promise.resolve();
607
+ });
608
+ subFormPromises.push((_a = formRef.value) == null ? void 0 : _a.validate());
609
+ return Promise.all(subFormPromises);
603
610
  };
604
611
  const resetFields = () => {
605
612
  var _a, _b;
@@ -713,7 +720,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
713
720
  });
714
721
  }
715
722
  if (flag) {
716
- return processedData;
723
+ return common.removeEmptyValues(processedData);
717
724
  }
718
725
  Object.assign(formData.value, processedData);
719
726
  };
@@ -1029,5 +1036,5 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
1029
1036
  };
1030
1037
  }
1031
1038
  });
1032
- const _Form = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-c9bc9779"]]);
1039
+ const _Form = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-18adf51b"]]);
1033
1040
  exports.default = _Form;
@@ -102,7 +102,6 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
102
102
  }
103
103
  });
104
104
  const getInnerComponentRef = () => {
105
- debugger;
106
105
  return innerComponentRef.value;
107
106
  };
108
107
  __expose({
@@ -191,5 +190,5 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
191
190
  };
192
191
  }
193
192
  });
194
- const _FormItem = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-f41d58fe"]]);
193
+ const _FormItem = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-df2a70b8"]]);
195
194
  exports.default = _FormItem;
@@ -47,7 +47,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
47
47
  // default: false,
48
48
  // },
49
49
  },
50
- setup(__props) {
50
+ setup(__props, { expose: __expose }) {
51
51
  const props = __props;
52
52
  const formData = vue.inject("formData");
53
53
  vue.inject("rowHeight");
@@ -107,6 +107,10 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
107
107
  setFormItemHeight(props.config.id, true, maxY + maxYH + titleHeight);
108
108
  }
109
109
  }
110
+ const formRef = vue.ref();
111
+ __expose({
112
+ subFormRef: formRef
113
+ });
110
114
  return (_ctx, _cache) => {
111
115
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
112
116
  __props.config.titleMode != "none" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
@@ -119,6 +123,8 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
119
123
  }, null, 8, ["config"])) : vue.createCommentVNode("", true)
120
124
  ])) : vue.createCommentVNode("", true),
121
125
  vue.createVNode(vue.unref(index$2.Form), {
126
+ ref_key: "formRef",
127
+ ref: formRef,
122
128
  templateKey: vue.unref(templateKey),
123
129
  isSubForm: "",
124
130
  onLayoutUpdated: subFormLoaded,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fecp/designer",
3
- "version": "5.4.5",
3
+ "version": "5.4.6",
4
4
  "main": "lib/designer/index.js",
5
5
  "module": "es/designer/index.mjs",
6
6
  "files": [