@ganwei-web/gw-base-components-plus 1.0.30 → 1.0.31
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/formdesigner/assets/img/fixedTableForm.png +0 -0
- package/formdesigner/assets/img/groupForm.png +0 -0
- package/formdesigner/assets/img/masterSlaveForm.png +0 -0
- package/formdesigner/assets/img/multiColumnForm.png +0 -0
- package/formdesigner/assets/img/questionnaire.png +0 -0
- package/formdesigner/assets/img/responsiveForm.png +0 -0
- package/formdesigner/assets/img/singleExampleForm.png +0 -0
- package/formdesigner/assets/img/tabForm.png +0 -0
- package/formdesigner/assets/img/user.jpeg +0 -0
- package/formdesigner/assets/json/fixedTableForm.json +4616 -0
- package/formdesigner/assets/json/groupForm.json +875 -0
- package/formdesigner/assets/json/masterSlaveForm.json +1072 -0
- package/formdesigner/assets/json/multiColumnForm.json +1 -0
- package/formdesigner/assets/json/questionnaire.json +574 -0
- package/formdesigner/assets/json/responsiveForm.json +814 -0
- package/formdesigner/assets/json/singleExampleForm.json +536 -0
- package/formdesigner/assets/json/tabForm.json +585 -0
- package/formdesigner/formdesigner.scss +134 -0
- package/formdesigner/formdesigner.vue +59 -0
- package/formdesigner/templatesConfig.js +79 -0
- package/formdesigner/vform/designer.style.css +12072 -0
- package/formdesigner/vform/designer.umd.js +263878 -0
- package/package.json +1 -1
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
.designer {
|
|
2
|
+
margin-top: 10px;
|
|
3
|
+
height: 100%;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
::v-deep .el-container.center-layout-container {
|
|
7
|
+
border: none !important;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
::v-deep .el-header.toolbar-header {
|
|
11
|
+
background-color: var(--frame-main-background-2);
|
|
12
|
+
border-bottom: none !important;
|
|
13
|
+
border-left: 1px solid var(--frame-main-border1);
|
|
14
|
+
border-right: 1px solid var(--frame-main-border1);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
::v-deep .form-widget-container {
|
|
18
|
+
background-color: var(--frame-main-background-4) !important;
|
|
19
|
+
padding: 11px;
|
|
20
|
+
|
|
21
|
+
.el-form.full-height-width {
|
|
22
|
+
background-color: var(--frame-main-background-2) !important;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
::v-deep .el-container.main-container {
|
|
28
|
+
background-color: var(--frame-main-background-2) !important;
|
|
29
|
+
|
|
30
|
+
.widget-collapse {
|
|
31
|
+
.el-collapse-item__header {
|
|
32
|
+
margin-left: 0;
|
|
33
|
+
padding-left: 8px;
|
|
34
|
+
background-color: var(--frame-main-background-2);
|
|
35
|
+
color: var(--frame-main-color);
|
|
36
|
+
border-color: var(--frame-main-border1);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.el-collapse-item__content ul .container-widget-item {
|
|
41
|
+
box-sizing: content-box;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.el-collapse-item__header.is-active {
|
|
45
|
+
border-bottom-color: transparent;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.el-collapse-item__wrap {
|
|
49
|
+
background-color: var(--frame-main-background-2);
|
|
50
|
+
color: var(--frame-main-color);
|
|
51
|
+
border-color: var(--frame-main-border1);
|
|
52
|
+
|
|
53
|
+
.el-collapse-item__content {
|
|
54
|
+
color: var(--frame-main-color);
|
|
55
|
+
|
|
56
|
+
ul>li {
|
|
57
|
+
background-color: var(--frame-main-background-2);
|
|
58
|
+
border-color: var(--frame-main-border1);
|
|
59
|
+
box-sizing: content-box;
|
|
60
|
+
|
|
61
|
+
&:hover {
|
|
62
|
+
color: var(--select-dropdown-item-background__hover);
|
|
63
|
+
border-color: #409eff;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
::v-deep .left-aside-toggle-bar {
|
|
72
|
+
background: var(--frame-main-background-2) !important;
|
|
73
|
+
box-sizing: content-box;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
::v-deep .right-aside-toggle-bar {
|
|
77
|
+
background: var(--frame-main-background-2) !important;
|
|
78
|
+
box-sizing: content-box;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
::v-deep .right-toolbar .el-button {
|
|
82
|
+
background-color: transparent !important;
|
|
83
|
+
border: none !important;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
::v-deep .el-collapse-item__header {
|
|
87
|
+
background-color: var(--frame-main-background-2);
|
|
88
|
+
color: var(--frame-main-color);
|
|
89
|
+
border-color: var(--frame-main-border1)
|
|
90
|
+
}
|
|
91
|
+
::v-deep .el-divider__text {
|
|
92
|
+
background-color: var(--frame-main-background-2);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
::v-deep .el-switch .el-switch__core:after {
|
|
97
|
+
left: 1px;
|
|
98
|
+
top: 1px;
|
|
99
|
+
width: 16px;
|
|
100
|
+
height: 16px;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
::v-deep .el-switch.is-checked .el-switch__core:after {
|
|
104
|
+
left: 100%;
|
|
105
|
+
margin-left: -17px;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
::v-deep .el-switch .el-switch__core {
|
|
109
|
+
height: 20px;
|
|
110
|
+
width: 40px !important
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
::v-deep .el-descriptions {
|
|
114
|
+
background-color: var(--frame-main-background-2);
|
|
115
|
+
color: var(--frame-main-color);
|
|
116
|
+
}
|
|
117
|
+
::v-deep .el-descriptions__title {
|
|
118
|
+
color: var(--frame-main-color);
|
|
119
|
+
}
|
|
120
|
+
::v-deep .el-descriptions__label.el-descriptions__cell.is-bordered-label {
|
|
121
|
+
background-color: var(--frame-main-background-2);
|
|
122
|
+
color: var(--frame-main-color)
|
|
123
|
+
}
|
|
124
|
+
::v-deep .ds-list .el-descriptions__content {
|
|
125
|
+
background-color: var(--frame-main-background-2);
|
|
126
|
+
color: var(--frame-main-color);
|
|
127
|
+
}
|
|
128
|
+
::v-deep .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell {
|
|
129
|
+
border-color: var(--frame-main-border1)
|
|
130
|
+
}
|
|
131
|
+
::v-deep .dialog-footer-center {
|
|
132
|
+
padding-bottom: 15px;
|
|
133
|
+
|
|
134
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="designer">
|
|
3
|
+
<v-form-designer
|
|
4
|
+
ref="vFormRef"
|
|
5
|
+
:field-list-data="fieldListData"
|
|
6
|
+
:designer-config="designerConfig"
|
|
7
|
+
:form-templates="modal"
|
|
8
|
+
:showType="designerType"
|
|
9
|
+
></v-form-designer>
|
|
10
|
+
|
|
11
|
+
</div>
|
|
12
|
+
</template>
|
|
13
|
+
|
|
14
|
+
<script>
|
|
15
|
+
import formTemplates from './templatesConfig.js'
|
|
16
|
+
|
|
17
|
+
export default {
|
|
18
|
+
props: ['fieldListData'],
|
|
19
|
+
data() {
|
|
20
|
+
return {
|
|
21
|
+
designerType: 'PC',
|
|
22
|
+
designerConfig: {
|
|
23
|
+
languageMenu: true,
|
|
24
|
+
externalLink: false,
|
|
25
|
+
eventCollapse: true,
|
|
26
|
+
formTemplates: true,
|
|
27
|
+
logoHeader: false,
|
|
28
|
+
exportCodeButton: false,
|
|
29
|
+
generateSFCButton: false,
|
|
30
|
+
chartLib: true,
|
|
31
|
+
resetFormJson: true
|
|
32
|
+
},
|
|
33
|
+
modal: formTemplates,
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
created() {},
|
|
37
|
+
beforeUnmount() {
|
|
38
|
+
this.clearDesigner();
|
|
39
|
+
},
|
|
40
|
+
methods: {
|
|
41
|
+
// 设置表单数据
|
|
42
|
+
setDesignerData(data) {
|
|
43
|
+
this.$refs.vFormRef.setFormJson(data)
|
|
44
|
+
},
|
|
45
|
+
// 获取表单设计
|
|
46
|
+
getDesignerData() {
|
|
47
|
+
return this.$refs.vFormRef.getFormJson()
|
|
48
|
+
},
|
|
49
|
+
getFieldWidgets() {
|
|
50
|
+
return this.$refs.vFormRef.getFieldWidgets()
|
|
51
|
+
},
|
|
52
|
+
clearDesigner() {
|
|
53
|
+
return this.$refs.vFormRef.clearDesigner()
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
}
|
|
57
|
+
</script>
|
|
58
|
+
|
|
59
|
+
<style lang="scss" scoped src="./formdesigner.scss"></style>
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import fixedTableForm from './assets/json/fixedTableForm.json'
|
|
2
|
+
import questionnaire from './assets/json/questionnaire.json'
|
|
3
|
+
import singleExampleForm from './assets/json/singleExampleForm.json'
|
|
4
|
+
import multiColumnForm from './assets/json/multiColumnForm.json'
|
|
5
|
+
import groupForm from './assets/json/groupForm.json'
|
|
6
|
+
import tabForm from './assets/json/tabForm.json'
|
|
7
|
+
import masterSlaveForm from './assets/json/masterSlaveForm.json'
|
|
8
|
+
import responsiveForm from './assets/json/responsiveForm.json'
|
|
9
|
+
import fixedTableFormImg from './assets/img/fixedTableForm.png'
|
|
10
|
+
import questionnaireImg from './assets/img/questionnaire.png'
|
|
11
|
+
import singleExampleFormImg from './assets/img/singleExampleForm.png'
|
|
12
|
+
import multiColumnFormImg from './assets/img/multiColumnForm.png'
|
|
13
|
+
import groupFormImg from './assets/img/groupForm.png'
|
|
14
|
+
import tabFormImg from './assets/img/tabForm.png'
|
|
15
|
+
import masterSlaveFormImg from './assets/img/masterSlaveForm.png'
|
|
16
|
+
import responsiveFormImg from './assets/img/responsiveForm.png'
|
|
17
|
+
const formTemplates = [
|
|
18
|
+
{
|
|
19
|
+
title: '单列表单',
|
|
20
|
+
imgUrl: singleExampleFormImg,
|
|
21
|
+
jsonStr: JSON.stringify(singleExampleForm),
|
|
22
|
+
},
|
|
23
|
+
|
|
24
|
+
{
|
|
25
|
+
title: '多列表单',
|
|
26
|
+
imgUrl: multiColumnFormImg,
|
|
27
|
+
jsonStr: JSON.stringify(multiColumnForm),
|
|
28
|
+
},
|
|
29
|
+
|
|
30
|
+
{
|
|
31
|
+
title: '分组表单',
|
|
32
|
+
imgUrl: groupFormImg,
|
|
33
|
+
jsonStr: JSON.stringify(groupForm),
|
|
34
|
+
},
|
|
35
|
+
|
|
36
|
+
{
|
|
37
|
+
title: '标签页表单',
|
|
38
|
+
imgUrl: tabFormImg,
|
|
39
|
+
jsonStr: JSON.stringify(tabForm),
|
|
40
|
+
},
|
|
41
|
+
|
|
42
|
+
{
|
|
43
|
+
title: '主从表单',
|
|
44
|
+
imgUrl: masterSlaveFormImg,
|
|
45
|
+
jsonStr: JSON.stringify(masterSlaveForm),
|
|
46
|
+
},
|
|
47
|
+
|
|
48
|
+
{
|
|
49
|
+
title: '响应式表单',
|
|
50
|
+
imgUrl: responsiveFormImg,
|
|
51
|
+
jsonStr: JSON.stringify(responsiveForm),
|
|
52
|
+
},
|
|
53
|
+
|
|
54
|
+
{
|
|
55
|
+
title: '问卷调查表',
|
|
56
|
+
imgUrl: questionnaireImg,
|
|
57
|
+
jsonStr: JSON.stringify(questionnaire),
|
|
58
|
+
},
|
|
59
|
+
|
|
60
|
+
{
|
|
61
|
+
title: '固定表格表单',
|
|
62
|
+
imgUrl: fixedTableFormImg,
|
|
63
|
+
jsonStr: JSON.stringify(fixedTableForm),
|
|
64
|
+
},
|
|
65
|
+
]
|
|
66
|
+
|
|
67
|
+
export default formTemplates;
|
|
68
|
+
|
|
69
|
+
// export function clearFormTemplates() {
|
|
70
|
+
// formTemplates.splice(0, formTemplates.length)
|
|
71
|
+
// }
|
|
72
|
+
|
|
73
|
+
// export function addFormTemplate(newFormTemplate) {
|
|
74
|
+
// formTemplates.push(newFormTemplate)
|
|
75
|
+
// }
|
|
76
|
+
|
|
77
|
+
// export function getAllFormTemplates() {
|
|
78
|
+
// return formTemplates
|
|
79
|
+
// }
|