cloud-web-corejs 1.0.54-dev.781 → 1.0.54-dev.783
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.
- package/package.json +1 -1
- package/src/components/VabUpload/index.vue +242 -242
- package/src/components/VabUpload/mixins.js +1971 -1971
- package/src/components/VabUpload/privateProfileDialog.vue +2 -2
- package/src/components/hiprint/view/design/index.vue +7 -2
- package/src/components/obsUpload/index.vue +234 -234
- package/src/components/obsUpload/mixins.js +1542 -1542
- package/src/components/vb-tabs/x-tabs.vue +7 -3
- package/src/components/xform/docs//346/240/221/350/241/250rowField/346/224/266/346/225/233-/350/220/275/345/234/260/346/226/207/346/241/243.md +1427 -0
- package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +2 -2
- package/src/components/xform/form-designer/form-widget/dialog/formDrawer.vue +2 -2
- package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +2 -2
- package/src/components/xform/form-designer/form-widget/field-widget/copy_button-widget.vue +11 -2
- package/src/components/xform/form-designer/form-widget/field-widget/vabUpload-widget.vue +369 -369
- package/src/components/xform/form-designer/setting-panel/property-editor/fileTypesSelect.vue +69 -23
- package/src/components/xform/form-render/container-item/data-table-item.vue +1 -1
- package/src/components/xform/form-render/container-item/data-table-mixin.js +1469 -428
- package/src/components/xform/form-render/indexMixin.js +379 -263
- package/src/components/xform/mixins/defaultHandle.js +234 -28
- package/src/components/xform/mixins/scriptHttp.js +4 -4
- package/src/components/xform/utils/treeTableUtil.js +1265 -0
- package/src/components/xform/utils/util.js +29 -14
- package/src/microRouter/index.js +3 -0
- package/src/mixins/tableTree/index.js +77 -14
- package/src/store/config/index.js +28 -28
- package/src/utils/menuAdapter.js +277 -277
- package/src/utils/resolveViewComponent.js +203 -203
- package/src/utils/vab.js +6 -3
- package/src/views/bd/setting/formVersion/ftHistoryDialog.vue +9 -2
- package/src/views/user/common_attribute/list.vue +1 -1
- package/src/views/user/form/vform/render.vue +17 -2
- package/src/views/user/form/view/list.vue +11 -10
- package/src/views/user/wf/wfReport/index.vue +625 -625
package/src/components/xform/form-designer/setting-panel/property-editor/fileTypesSelect.vue
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
</div>
|
|
15
15
|
<div class="file-types-select">
|
|
16
16
|
<el-select ref="fileTypesSelect" multiple allow-create filterable default-first-option clearable
|
|
17
|
+
popper-class="file-types-select-dropdown"
|
|
17
18
|
:placeholder="i18nt('designer.setting.fileTypesPlaceholder')"
|
|
18
19
|
v-model="selectedFileTypes" style="width: 100%">
|
|
19
20
|
<el-option-group v-for="category in fileTypeCategories"
|
|
@@ -41,17 +42,47 @@
|
|
|
41
42
|
optionModel: Object,
|
|
42
43
|
},
|
|
43
44
|
mounted() {
|
|
45
|
+
this.syncSelectLayout()
|
|
46
|
+
},
|
|
47
|
+
watch: {
|
|
48
|
+
selectedFileTypes() {
|
|
49
|
+
this.syncSelectLayout()
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
methods: {
|
|
44
53
|
/*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
54
|
+
* 两处都是 element 用 JS 量出来再写成内联样式的尺寸,在这里都不成立:
|
|
55
|
+
* 1. 标签区的 max-width 按挂载那一刻的控件宽度算,而本编辑器挂载在还没完成
|
|
56
|
+
* 布局的属性弹窗里,量到的值偏小;
|
|
57
|
+
* 2. 输入框高度由 resetInputHeight() 写成内联样式,但全局样式表里
|
|
58
|
+
* body .el-input .el-input__inner 把 height 写死成 28px !important,
|
|
59
|
+
* 内联样式压不过它,标签一换行就溢出到框外,展开的下拉面板还会盖住溢出部分。
|
|
60
|
+
* 所以这里等布局稳定后让宽度重算,并用同等优先级把高度补回去。
|
|
48
61
|
*/
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
select.
|
|
53
|
-
|
|
54
|
-
|
|
62
|
+
syncSelectLayout() {
|
|
63
|
+
this.$nextTick(() => {
|
|
64
|
+
let select = this.$refs.fileTypesSelect
|
|
65
|
+
if (!select || !select.$refs.reference) {
|
|
66
|
+
return
|
|
67
|
+
}
|
|
68
|
+
if (!!select.resetInputWidth) {
|
|
69
|
+
select.resetInputWidth()
|
|
70
|
+
}
|
|
71
|
+
let input = select.$refs.reference.$el.querySelector("input.el-input__inner")
|
|
72
|
+
let tags = select.$refs.tags
|
|
73
|
+
if (!input || !tags) {
|
|
74
|
+
return
|
|
75
|
+
}
|
|
76
|
+
let minHeight = select.initialInputHeight || input.offsetHeight
|
|
77
|
+
let tagsHeight = Math.round(tags.getBoundingClientRect().height)
|
|
78
|
+
let height = Math.max(tagsHeight > minHeight ? tagsHeight + 6 : tagsHeight, minHeight)
|
|
79
|
+
input.style.setProperty("height", height + "px", "important")
|
|
80
|
+
/* 高度变了要让下拉面板重新定位,否则还是按旧高度贴在原处 */
|
|
81
|
+
if (!!select.broadcast) {
|
|
82
|
+
select.broadcast("ElSelectDropdown", "updatePopper")
|
|
83
|
+
}
|
|
84
|
+
})
|
|
85
|
+
},
|
|
55
86
|
},
|
|
56
87
|
}
|
|
57
88
|
</script>
|
|
@@ -73,10 +104,9 @@
|
|
|
73
104
|
}
|
|
74
105
|
|
|
75
106
|
/*
|
|
76
|
-
* 全局样式表 src/resources/css/style.scss
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* 于是标签溢出到框外。这里从内容区一路 !important 压到最内层的 input。
|
|
107
|
+
* 全局样式表 src/resources/css/style.scss 在 body 作用域下写了
|
|
108
|
+
* .el-input{width:148px !important},画边框的 .el-input__inner 也跟着只有 148px,
|
|
109
|
+
* 所以这里必须从内容区一路 !important 压到最内层的 input 才能铺满。
|
|
80
110
|
*/
|
|
81
111
|
.file-types-item ::v-deep .el-form-item__content {
|
|
82
112
|
display: block !important;
|
|
@@ -101,19 +131,14 @@
|
|
|
101
131
|
}
|
|
102
132
|
|
|
103
133
|
/*
|
|
104
|
-
*
|
|
105
|
-
*
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
*
|
|
134
|
+
* 标签区是绝对定位盖在输入框上的兄弟节点:
|
|
135
|
+
* max-width 是挂载时按控件宽度算出的内联值,弹窗里量到的偏小,用 !important 盖掉,
|
|
136
|
+
* 并和 element 一样留出右侧 32px 的图标位;
|
|
137
|
+
* pointer-events 置空则是因为清空按钮的显隐挂在 el-input 的 mouseenter/mouseleave 上,
|
|
138
|
+
* 标签层盖住的地方 hover 都算不到 el-input 头上,按钮就只在图标区才出现。
|
|
109
139
|
*/
|
|
110
140
|
.file-types-select ::v-deep .el-select__tags {
|
|
111
141
|
max-width: calc(100% - 32px) !important;
|
|
112
|
-
/*
|
|
113
|
-
* 标签层整体对鼠标透明:清空按钮的显隐挂在 el-input 的 mouseenter/mouseleave 上,
|
|
114
|
-
* 而标签层是盖在输入框上的兄弟节点,凡是它盖住的地方 hover 都算不到 el-input 头上,
|
|
115
|
-
* 清空按钮就只在没被盖住的图标区才出现。
|
|
116
|
-
*/
|
|
117
142
|
pointer-events: none;
|
|
118
143
|
}
|
|
119
144
|
|
|
@@ -127,4 +152,25 @@
|
|
|
127
152
|
.file-types-select ::v-deep .el-select__input {
|
|
128
153
|
max-width: calc(100% - 42px) !important;
|
|
129
154
|
}
|
|
155
|
+
|
|
156
|
+
/*
|
|
157
|
+
* 全局样式表有 :focus-visible{outline:2px solid 主题色},展开下拉时焦点落在这个
|
|
158
|
+
* 内联输入框上,Chrome 对文本框恒判定 focus-visible,于是框里又套出一圈蓝边。
|
|
159
|
+
* 外层输入框自己已有聚焦态边框,这圈去掉。
|
|
160
|
+
*/
|
|
161
|
+
.file-types-select ::v-deep .el-select__input:focus,
|
|
162
|
+
.file-types-select ::v-deep .el-select__input:focus-visible {
|
|
163
|
+
outline: none;
|
|
164
|
+
}
|
|
165
|
+
</style>
|
|
166
|
+
|
|
167
|
+
<style>
|
|
168
|
+
/*
|
|
169
|
+
* 下拉面板是挂到 body 上的,scoped 样式够不到,只能靠 popper-class 做全局约束。
|
|
170
|
+
* 全局样式表把 .el-select-dropdown__wrap 的 max-height 放大到了 474px,
|
|
171
|
+
* 而这里有 9 个分组共 27 个后缀,面板会高到底部放不下、翻上来盖住整块属性面板。
|
|
172
|
+
*/
|
|
173
|
+
.file-types-select-dropdown .el-select-dropdown__wrap {
|
|
174
|
+
max-height: 320px;
|
|
175
|
+
}
|
|
130
176
|
</style>
|