eoss-ui 0.4.17 → 0.4.19
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/lib/button-group.js +88 -88
- package/lib/button.js +90 -90
- package/lib/card.js +2 -2
- package/lib/cascader.js +2 -2
- package/lib/checkbox-group.js +89 -89
- package/lib/clients.js +2 -2
- package/lib/data-table-form.js +870 -198
- package/lib/data-table.js +91 -91
- package/lib/date-picker.js +90 -90
- package/lib/dialog.js +144 -105
- package/lib/enterprise.js +2 -2
- package/lib/eoss-ui.common.js +1518 -671
- package/lib/error-page.js +2 -2
- package/lib/flow-group.js +112 -95
- package/lib/flow-list.js +92 -92
- package/lib/flow.js +187 -173
- package/lib/form.js +183 -102
- package/lib/handle-user.js +91 -91
- package/lib/handler.js +91 -91
- package/lib/index.js +1 -1
- package/lib/input-number.js +90 -90
- package/lib/input.js +90 -90
- package/lib/label.js +2 -2
- package/lib/login.js +174 -131
- package/lib/main.js +114 -113
- package/lib/mainComp.js +107 -106
- package/lib/menu.js +2 -2
- package/lib/nav.js +90 -90
- package/lib/notify.js +95 -95
- package/lib/page.js +90 -90
- package/lib/pagination.js +2 -2
- package/lib/player.js +90 -90
- package/lib/qr-code.js +97 -97
- package/lib/radio-group.js +91 -91
- package/lib/select-ganged.js +90 -90
- package/lib/select.js +101 -101
- package/lib/selector-panel.js +115 -108
- package/lib/selector.js +97 -95
- package/lib/sizer.js +92 -92
- package/lib/steps.js +90 -90
- package/lib/switch.js +90 -90
- package/lib/table-form.js +97 -97
- package/lib/tabs-panel.js +2 -2
- package/lib/tabs.js +113 -94
- package/lib/theme-chalk/data-table-form.css +1 -1
- package/lib/theme-chalk/flow.css +1 -1
- package/lib/theme-chalk/index.css +1 -1
- package/lib/theme-chalk/tree.css +1 -1
- package/lib/theme-chalk/upload.css +1 -1
- package/lib/tips.js +91 -91
- package/lib/toolbar.js +2 -2
- package/lib/tree-group.js +105 -95
- package/lib/tree.js +104 -94
- package/lib/upload.js +175 -125
- package/lib/wujie.js +90 -90
- package/lib/wxlogin.js +90 -90
- package/package.json +2 -2
- package/packages/data-table-form/src/checkbox.vue +101 -0
- package/packages/data-table-form/src/radio.vue +65 -0
- package/packages/data-table-form/src/table.vue +34 -6
- package/packages/data-table-form/src/tbody.vue +139 -25
- package/packages/dialog/src/main.vue +35 -4
- package/packages/flow/src/main.vue +103 -87
- package/packages/flow/src/selectUser.vue +13 -12
- package/packages/flow-group/src/main.vue +22 -13
- package/packages/form/src/main.vue +563 -470
- package/packages/login/src/main.vue +79 -34
- package/packages/main/src/main.vue +6 -6
- package/packages/select/src/main.vue +20 -20
- package/packages/selector/src/main.vue +9 -9
- package/packages/selector-panel/src/main.vue +27 -17
- package/packages/tabs/src/main.vue +20 -12
- package/packages/theme-chalk/lib/data-table-form.css +1 -1
- package/packages/theme-chalk/lib/flow.css +1 -1
- package/packages/theme-chalk/lib/index.css +1 -1
- package/packages/theme-chalk/lib/tree.css +1 -1
- package/packages/theme-chalk/lib/upload.css +1 -1
- package/packages/theme-chalk/src/data-table-form.scss +7 -6
- package/packages/theme-chalk/src/flow.scss +10 -20
- package/packages/theme-chalk/src/index.scss +0 -1
- package/packages/theme-chalk/src/tree.scss +1 -1
- package/packages/theme-chalk/src/upload.scss +10 -3
- package/packages/tree/src/main.vue +20 -13
- package/packages/tree-group/src/main.vue +7 -4
- package/packages/upload/src/main.vue +77 -20
- package/src/index.js +1 -4
- package/lib/ca-login.js +0 -326
- package/lib/theme-chalk/ca-login.css +0 -1
- package/packages/ca-login/index.js +0 -5
- package/packages/ca-login/src/main.vue +0 -62
- package/packages/theme-chalk/lib/ca-login.css +0 -1
- package/packages/theme-chalk/src/ca-login.scss +0 -4
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="el-radio-group">
|
|
3
|
+
<label
|
|
4
|
+
class="el-radio"
|
|
5
|
+
v-for="(item, index) in options"
|
|
6
|
+
:key="index"
|
|
7
|
+
@change="handeChange(item)"
|
|
8
|
+
>
|
|
9
|
+
<input type="radio" :name="_name" :checked="isChecked(item)" />{{
|
|
10
|
+
labelKey ? item[labelKey] : item.name || item.label
|
|
11
|
+
}}
|
|
12
|
+
</label>
|
|
13
|
+
</div>
|
|
14
|
+
</template>
|
|
15
|
+
<script>
|
|
16
|
+
export default {
|
|
17
|
+
name: 'EoRadio',
|
|
18
|
+
props: {
|
|
19
|
+
field: {
|
|
20
|
+
required: true,
|
|
21
|
+
type: String
|
|
22
|
+
},
|
|
23
|
+
prop: String,
|
|
24
|
+
index: Number,
|
|
25
|
+
labelKey: String,
|
|
26
|
+
valueKey: String,
|
|
27
|
+
data: {
|
|
28
|
+
type: Object,
|
|
29
|
+
default() {
|
|
30
|
+
return {};
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
options: {
|
|
34
|
+
type: Array,
|
|
35
|
+
default() {
|
|
36
|
+
return [];
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
value: {}
|
|
40
|
+
},
|
|
41
|
+
data() {
|
|
42
|
+
return {
|
|
43
|
+
_value: this.value
|
|
44
|
+
};
|
|
45
|
+
},
|
|
46
|
+
computed: {
|
|
47
|
+
_name() {
|
|
48
|
+
if (this.index !== undefined) {
|
|
49
|
+
return `${this.field || this.prop}[${this.index}]`;
|
|
50
|
+
}
|
|
51
|
+
return this.field || this.prop;
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
methods: {
|
|
55
|
+
isChecked(res) {
|
|
56
|
+
return this.valueKey
|
|
57
|
+
? this.value == res[this.valueKey]
|
|
58
|
+
: this.value == res.value;
|
|
59
|
+
},
|
|
60
|
+
handeChange(res) {
|
|
61
|
+
this.$emit('input', this.valueKey ? res[this.valueKey] : res.value);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
</script>
|
|
@@ -29,8 +29,25 @@
|
|
|
29
29
|
></es-pagination>
|
|
30
30
|
<template v-if="types && options">
|
|
31
31
|
<template v-for="(item, index) in types">
|
|
32
|
+
<es-dialog
|
|
33
|
+
v-if="item.type === 'selector' && selectorShow"
|
|
34
|
+
:title="item.title || '公用选择器'"
|
|
35
|
+
:visible.sync="selectorShow"
|
|
36
|
+
:css="false"
|
|
37
|
+
:append-to-body="true"
|
|
38
|
+
:close-on-click-modal="false"
|
|
39
|
+
class="es-selector-dialog"
|
|
40
|
+
>
|
|
41
|
+
<es-selector-panel
|
|
42
|
+
v-model="selectorValue"
|
|
43
|
+
v-bind="exclAttribute({ data: item, attrs: 'type' })"
|
|
44
|
+
width="100%"
|
|
45
|
+
height="100%"
|
|
46
|
+
@confirm="handleConfirm"
|
|
47
|
+
></es-selector-panel>
|
|
48
|
+
</es-dialog>
|
|
32
49
|
<es-select
|
|
33
|
-
v-if="item.type === 'select' && selectShow"
|
|
50
|
+
v-else-if="item.type === 'select' && selectShow"
|
|
34
51
|
class="es-data-table-form-handle"
|
|
35
52
|
v-bind="exclAttribute({ data: item, attrs: 'width' })"
|
|
36
53
|
v-model="selectValue"
|
|
@@ -39,8 +56,8 @@
|
|
|
39
56
|
:data="options[item.field || item.prop]"
|
|
40
57
|
@hide-menu="selectShow = false"
|
|
41
58
|
@change="
|
|
42
|
-
value => {
|
|
43
|
-
handleChange('
|
|
59
|
+
(value) => {
|
|
60
|
+
handleChange('select', value);
|
|
44
61
|
}
|
|
45
62
|
"
|
|
46
63
|
></es-select>
|
|
@@ -59,7 +76,7 @@
|
|
|
59
76
|
item.type == 'monthrange' ||
|
|
60
77
|
item.type == 'quarter' ||
|
|
61
78
|
item.type == 'halfyear') &&
|
|
62
|
-
|
|
79
|
+
dateShow
|
|
63
80
|
"
|
|
64
81
|
class="es-data-table-form-handle"
|
|
65
82
|
v-bind="exclAttribute({ data: item, attrs: 'width' })"
|
|
@@ -68,7 +85,7 @@
|
|
|
68
85
|
:style="style"
|
|
69
86
|
@hidePicker="dateShow = false"
|
|
70
87
|
@change="
|
|
71
|
-
value => {
|
|
88
|
+
(value) => {
|
|
72
89
|
handleChange('date', value);
|
|
73
90
|
}
|
|
74
91
|
"
|
|
@@ -127,7 +144,9 @@ export default {
|
|
|
127
144
|
field: null,
|
|
128
145
|
style: {},
|
|
129
146
|
dateValue: '',
|
|
130
|
-
dateShow: false
|
|
147
|
+
dateShow: false,
|
|
148
|
+
selectorShow: false,
|
|
149
|
+
selectorValue: ''
|
|
131
150
|
};
|
|
132
151
|
},
|
|
133
152
|
watch: {
|
|
@@ -160,6 +179,10 @@ export default {
|
|
|
160
179
|
this.dateValue = value;
|
|
161
180
|
this.dateShow = true;
|
|
162
181
|
break;
|
|
182
|
+
case 'selector':
|
|
183
|
+
this.selectorValue = value;
|
|
184
|
+
this.selectorShow = true;
|
|
185
|
+
break;
|
|
163
186
|
}
|
|
164
187
|
},
|
|
165
188
|
setStyle(res, data, field) {
|
|
@@ -183,6 +206,11 @@ export default {
|
|
|
183
206
|
break;
|
|
184
207
|
}
|
|
185
208
|
},
|
|
209
|
+
handleConfirm(res) {
|
|
210
|
+
this.selectorValue = '';
|
|
211
|
+
this.selectorShow = false;
|
|
212
|
+
this.target[this.field] = res;
|
|
213
|
+
},
|
|
186
214
|
sizeChange() {},
|
|
187
215
|
currentChange() {},
|
|
188
216
|
preClick() {},
|
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
<template
|
|
7
7
|
v-if="
|
|
8
8
|
readonly ||
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
items.canEdit === false ||
|
|
10
|
+
(items.cantEditKey &&
|
|
11
|
+
items.cantEditKey.indexOf(item.field || item.prop) > -1)
|
|
12
12
|
"
|
|
13
13
|
>
|
|
14
14
|
<expand-dom
|
|
@@ -28,17 +28,31 @@
|
|
|
28
28
|
</div>
|
|
29
29
|
</template>
|
|
30
30
|
<template v-else>
|
|
31
|
+
<eo-radio
|
|
32
|
+
v-if="item.type === 'radio'"
|
|
33
|
+
v-bind="item"
|
|
34
|
+
v-model="items[item.field || item.prop]"
|
|
35
|
+
:index="indexs"
|
|
36
|
+
:options="options[item.field || item.prop]"
|
|
37
|
+
></eo-radio>
|
|
38
|
+
<eo-checkbox
|
|
39
|
+
v-if="item.type === 'checkbox'"
|
|
40
|
+
v-bind="item"
|
|
41
|
+
v-model="items[item.field || item.prop]"
|
|
42
|
+
:index="indexs"
|
|
43
|
+
:options="options[item.field || item.prop]"
|
|
44
|
+
></eo-checkbox>
|
|
31
45
|
<textarea
|
|
32
|
-
v-if="item.type === 'textarea'"
|
|
46
|
+
v-else-if="item.type === 'textarea'"
|
|
33
47
|
class="el-textarea__inner"
|
|
34
48
|
v-model.lazy="items[item.field]"
|
|
35
49
|
@blur="
|
|
36
|
-
event => {
|
|
50
|
+
(event) => {
|
|
37
51
|
handleBlur({ item: item, event: event, data: items });
|
|
38
52
|
}
|
|
39
53
|
"
|
|
40
54
|
@focus="
|
|
41
|
-
event => {
|
|
55
|
+
(event) => {
|
|
42
56
|
handleFocus({
|
|
43
57
|
item: item,
|
|
44
58
|
event: event,
|
|
@@ -47,7 +61,7 @@
|
|
|
47
61
|
}
|
|
48
62
|
"
|
|
49
63
|
@change="
|
|
50
|
-
value => {
|
|
64
|
+
(value) => {
|
|
51
65
|
handleChange({
|
|
52
66
|
name: item.field || item.prop,
|
|
53
67
|
value: value,
|
|
@@ -58,27 +72,90 @@
|
|
|
58
72
|
></textarea>
|
|
59
73
|
<div v-else class="es-input-box">
|
|
60
74
|
<div
|
|
61
|
-
v-if="item.type === 'select'"
|
|
62
|
-
class="el-input__inner
|
|
75
|
+
v-if="item.type === 'select' || item.type === 'selector'"
|
|
76
|
+
class="el-input__inner es-select"
|
|
77
|
+
:class="{
|
|
78
|
+
'es-select-multiple':
|
|
79
|
+
item.type === 'select'
|
|
80
|
+
? item.multiple
|
|
81
|
+
: item.multiple !== false
|
|
82
|
+
}"
|
|
83
|
+
@click="
|
|
84
|
+
(event) => {
|
|
85
|
+
handeClick({ item: item, event: event, data: items });
|
|
86
|
+
}
|
|
87
|
+
"
|
|
63
88
|
>
|
|
64
|
-
|
|
89
|
+
<template
|
|
90
|
+
v-if="
|
|
91
|
+
item.type === 'select'
|
|
92
|
+
? item.multiple
|
|
93
|
+
: item.multiple !== false
|
|
94
|
+
"
|
|
95
|
+
>
|
|
96
|
+
<template v-if="item.collapseTags">
|
|
97
|
+
<span class="el-tag el-tag--info el-tag--small el-tag--light">
|
|
98
|
+
<span class="el-select__tags-text">{{
|
|
99
|
+
showLabel(getLabels(items, item, true)[0], item.labelKey)
|
|
100
|
+
}}</span>
|
|
101
|
+
<i
|
|
102
|
+
class="el-tag__close el-icon-close"
|
|
103
|
+
@click.stop="
|
|
104
|
+
handleDelete(
|
|
105
|
+
items,
|
|
106
|
+
item,
|
|
107
|
+
0,
|
|
108
|
+
getLabels(items, item, true)[0]
|
|
109
|
+
)
|
|
110
|
+
"
|
|
111
|
+
></i
|
|
112
|
+
></span>
|
|
113
|
+
<span
|
|
114
|
+
class="el-tag el-tag--info el-tag--small el-tag--light"
|
|
115
|
+
v-if="getLabels(items, item, true).length > 1"
|
|
116
|
+
>
|
|
117
|
+
<span class="el-select__tags-text"
|
|
118
|
+
>+ {{ getLabels(items, item, true).length - 1 }}</span
|
|
119
|
+
></span
|
|
120
|
+
>
|
|
121
|
+
</template>
|
|
122
|
+
<template v-else>
|
|
123
|
+
<span
|
|
124
|
+
class="el-tag el-tag--info el-tag--small el-tag--light"
|
|
125
|
+
v-for="(ele, x) in getLabels(items, item, true)"
|
|
126
|
+
:key="x"
|
|
127
|
+
>
|
|
128
|
+
<span class="el-select__tags-text">{{
|
|
129
|
+
showLabel(ele, item.labelKey)
|
|
130
|
+
}}</span>
|
|
131
|
+
<i
|
|
132
|
+
class="el-tag__close el-icon-close"
|
|
133
|
+
@click.stop="handleDelete(items, item, x, ele)"
|
|
134
|
+
></i>
|
|
135
|
+
</span>
|
|
136
|
+
</template>
|
|
137
|
+
</template>
|
|
138
|
+
<template v-else>
|
|
139
|
+
{{ getLabels(items, item) }}
|
|
140
|
+
</template>
|
|
65
141
|
</div>
|
|
66
142
|
<input
|
|
143
|
+
v-else
|
|
67
144
|
class="el-input__inner"
|
|
68
145
|
:readonly="item.type && item.type !== 'text'"
|
|
69
146
|
v-model.lazy="items[item.field]"
|
|
70
147
|
@click="
|
|
71
|
-
event => {
|
|
148
|
+
(event) => {
|
|
72
149
|
handeClick({ item: item, event: event, data: items });
|
|
73
150
|
}
|
|
74
151
|
"
|
|
75
152
|
@blur="
|
|
76
|
-
event => {
|
|
153
|
+
(event) => {
|
|
77
154
|
handleBlur({ item: item, event: event, data: items });
|
|
78
155
|
}
|
|
79
156
|
"
|
|
80
157
|
@focus="
|
|
81
|
-
event => {
|
|
158
|
+
(event) => {
|
|
82
159
|
handleFocus({
|
|
83
160
|
item: item,
|
|
84
161
|
event: event,
|
|
@@ -87,7 +164,7 @@
|
|
|
87
164
|
}
|
|
88
165
|
"
|
|
89
166
|
@change="
|
|
90
|
-
value => {
|
|
167
|
+
(value) => {
|
|
91
168
|
handleChange({
|
|
92
169
|
name: item.field || item.prop,
|
|
93
170
|
value: value,
|
|
@@ -105,10 +182,14 @@
|
|
|
105
182
|
<script>
|
|
106
183
|
// import rules from 'eoss-ui/src/utils/rules.js';
|
|
107
184
|
import util from 'eoss-ui/src/utils/util';
|
|
185
|
+
import eoRadio from './radio.vue';
|
|
186
|
+
import eoCheckbox from './checkbox.vue';
|
|
108
187
|
export default {
|
|
109
188
|
name: 'EoTbody',
|
|
110
189
|
inject: ['eoTable'],
|
|
111
190
|
components: {
|
|
191
|
+
[eoRadio.name]: eoRadio,
|
|
192
|
+
[eoCheckbox.name]: eoCheckbox,
|
|
112
193
|
expandDom: {
|
|
113
194
|
functional: true,
|
|
114
195
|
props: {
|
|
@@ -166,25 +247,34 @@ export default {
|
|
|
166
247
|
: item.type;
|
|
167
248
|
this.eoTable.changeData(type, data[item.field || item.prop]);
|
|
168
249
|
},
|
|
169
|
-
getLabels(data, col) {
|
|
250
|
+
getLabels(data, col, multiple) {
|
|
170
251
|
let value = data[col.field || col.prop];
|
|
171
252
|
if (col.label === false) {
|
|
172
253
|
return Array.isArray(value) ? value.join(',') : value;
|
|
173
254
|
}
|
|
174
255
|
let option = this.options[col.field || col.prop];
|
|
175
256
|
if (util.isObject(value)) {
|
|
257
|
+
if (multiple) {
|
|
258
|
+
return [value];
|
|
259
|
+
}
|
|
176
260
|
return (
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
261
|
+
value[col.labelKey] ||
|
|
262
|
+
value['name'] ||
|
|
263
|
+
value['label'] ||
|
|
264
|
+
value['showname']
|
|
180
265
|
);
|
|
181
266
|
} else if (Array.isArray(value)) {
|
|
182
|
-
let label = value.map(item => {
|
|
267
|
+
let label = value.map((item) => {
|
|
183
268
|
if (util.isObject(item)) {
|
|
184
|
-
|
|
269
|
+
if (multiple) {
|
|
270
|
+
return item;
|
|
271
|
+
}
|
|
272
|
+
return (
|
|
273
|
+
item[col.labelKey] || item.name || item.label || item.showname
|
|
274
|
+
);
|
|
185
275
|
} else {
|
|
186
276
|
if (option) {
|
|
187
|
-
let str = this.getLabel(item, option, col);
|
|
277
|
+
let str = this.getLabel(item, option, col, multiple);
|
|
188
278
|
if (str) {
|
|
189
279
|
return str;
|
|
190
280
|
}
|
|
@@ -193,26 +283,50 @@ export default {
|
|
|
193
283
|
}
|
|
194
284
|
}
|
|
195
285
|
});
|
|
196
|
-
return label.join(',');
|
|
286
|
+
return multiple ? label : label.join(',');
|
|
197
287
|
} else {
|
|
198
288
|
if (option) {
|
|
199
|
-
return this.getLabel(value, option, col);
|
|
289
|
+
return this.getLabel(value, option, col, multiple);
|
|
200
290
|
} else {
|
|
291
|
+
if (multiple) {
|
|
292
|
+
return [value];
|
|
293
|
+
}
|
|
201
294
|
return value;
|
|
202
295
|
}
|
|
203
296
|
}
|
|
204
297
|
},
|
|
205
|
-
getLabel(value, option, col) {
|
|
298
|
+
getLabel(value, option, col, multiple) {
|
|
206
299
|
for (let i = 0; i < option.length; i++) {
|
|
207
300
|
let item = option[i];
|
|
208
301
|
if (value == item) {
|
|
209
302
|
return value;
|
|
210
303
|
}
|
|
211
304
|
if (value == item[col.valueKey] || value == item.value) {
|
|
212
|
-
|
|
305
|
+
if (multiple) {
|
|
306
|
+
return item;
|
|
307
|
+
}
|
|
308
|
+
return item[col.labelKey] || item.name || item.label || item.showname;
|
|
213
309
|
}
|
|
214
310
|
}
|
|
215
311
|
return '';
|
|
312
|
+
},
|
|
313
|
+
showLabel(res, labelKey) {
|
|
314
|
+
return typeof res === 'string'
|
|
315
|
+
? res
|
|
316
|
+
: res[labelKey] || res.name || res.label || res.showname;
|
|
317
|
+
},
|
|
318
|
+
handleDelete(data, col, index, res) {
|
|
319
|
+
let value = data[col.field];
|
|
320
|
+
value = value.filter((item) => {
|
|
321
|
+
let target = util.isObject(item)
|
|
322
|
+
? item[col.labelKey] || item.name || item.label || item.showname
|
|
323
|
+
: item;
|
|
324
|
+
let val = util.isObject(res)
|
|
325
|
+
? res[col.labelKey] || res.name || res.label || res.showname
|
|
326
|
+
: res;
|
|
327
|
+
return target != val;
|
|
328
|
+
});
|
|
329
|
+
data[col.field] = value;
|
|
216
330
|
}
|
|
217
331
|
}
|
|
218
332
|
};
|
|
@@ -8,12 +8,15 @@
|
|
|
8
8
|
:close-on-click-modal="shadeClose"
|
|
9
9
|
:fullscreen="full"
|
|
10
10
|
:drag="drag"
|
|
11
|
+
:modal-append-to-body="modalAppendToBody"
|
|
11
12
|
v-bind="$attrs"
|
|
12
13
|
v-on="$listeners"
|
|
13
14
|
:class="{ 'is-middle': middle }"
|
|
14
15
|
:append-to-body="appendToBody"
|
|
15
16
|
:id="wujieName"
|
|
16
17
|
:ref="wujieName"
|
|
18
|
+
@close="handleClosed"
|
|
19
|
+
@scale="handleScale"
|
|
17
20
|
>
|
|
18
21
|
<slot></slot>
|
|
19
22
|
<template v-if="contents">
|
|
@@ -28,6 +31,7 @@
|
|
|
28
31
|
attrs: ['events', 'visible', 'type', 'model']
|
|
29
32
|
})
|
|
30
33
|
"
|
|
34
|
+
:zoom="zoom"
|
|
31
35
|
:model.sync="item.model"
|
|
32
36
|
v-on="{ ...item.events }"
|
|
33
37
|
></es-form>
|
|
@@ -40,6 +44,7 @@
|
|
|
40
44
|
attrs: ['events', 'visible', 'type']
|
|
41
45
|
})
|
|
42
46
|
"
|
|
47
|
+
:zoom="zoom"
|
|
43
48
|
v-on="item.events"
|
|
44
49
|
>
|
|
45
50
|
<template v-if="item.dialog" slot="dialog">
|
|
@@ -83,6 +88,7 @@
|
|
|
83
88
|
attrs: ['events', 'visible', 'type']
|
|
84
89
|
})
|
|
85
90
|
"
|
|
91
|
+
:zoom="zoom"
|
|
86
92
|
v-on="{ ...item.events }"
|
|
87
93
|
></es-tree-group>
|
|
88
94
|
<es-flow-group
|
|
@@ -106,6 +112,7 @@
|
|
|
106
112
|
attrs: ['events', 'visible', 'type']
|
|
107
113
|
})
|
|
108
114
|
"
|
|
115
|
+
:zoom="zoom"
|
|
109
116
|
v-on="{ ...item.events }"
|
|
110
117
|
></es-tabs>
|
|
111
118
|
<es-dialog
|
|
@@ -156,6 +163,7 @@
|
|
|
156
163
|
attrs: ['events', 'visible', 'type', 'model']
|
|
157
164
|
})
|
|
158
165
|
"
|
|
166
|
+
:zoom="zoom"
|
|
159
167
|
:model.sync="contents.model"
|
|
160
168
|
v-on="{ ...contents.events }"
|
|
161
169
|
></es-form>
|
|
@@ -167,6 +175,7 @@
|
|
|
167
175
|
attrs: ['events', 'visible', 'type']
|
|
168
176
|
})
|
|
169
177
|
"
|
|
178
|
+
:zoom="zoom"
|
|
170
179
|
v-on="contents.events"
|
|
171
180
|
>
|
|
172
181
|
<template v-if="contents.dialog" slot="dialog">
|
|
@@ -209,6 +218,7 @@
|
|
|
209
218
|
attrs: ['events', 'visible', 'type']
|
|
210
219
|
})
|
|
211
220
|
"
|
|
221
|
+
:zoom="zoom"
|
|
212
222
|
v-on="{ ...contents.events }"
|
|
213
223
|
></es-tree-group>
|
|
214
224
|
<es-flow-group
|
|
@@ -219,6 +229,7 @@
|
|
|
219
229
|
attrs: ['events', 'visible', 'type']
|
|
220
230
|
})
|
|
221
231
|
"
|
|
232
|
+
:zoom="zoom"
|
|
222
233
|
v-on="{ ...contents.events }"
|
|
223
234
|
></es-flow-group>
|
|
224
235
|
<es-tabs
|
|
@@ -230,6 +241,7 @@
|
|
|
230
241
|
attrs: ['events', 'visible', 'type']
|
|
231
242
|
})
|
|
232
243
|
"
|
|
244
|
+
:zoom="zoom"
|
|
233
245
|
v-on="{ ...contents.events }"
|
|
234
246
|
></es-tabs>
|
|
235
247
|
<iframe
|
|
@@ -268,7 +280,8 @@ export default {
|
|
|
268
280
|
inheritAttrs: false,
|
|
269
281
|
provide() {
|
|
270
282
|
return {
|
|
271
|
-
esDialog: this
|
|
283
|
+
esDialog: this,
|
|
284
|
+
scale: this.zoom
|
|
272
285
|
};
|
|
273
286
|
},
|
|
274
287
|
inject: {
|
|
@@ -307,6 +320,10 @@ export default {
|
|
|
307
320
|
type: Boolean,
|
|
308
321
|
default: true
|
|
309
322
|
},
|
|
323
|
+
modalAppendToBody: {
|
|
324
|
+
type: Boolean,
|
|
325
|
+
default: true
|
|
326
|
+
},
|
|
310
327
|
appendToBody: {
|
|
311
328
|
type: [Boolean, String],
|
|
312
329
|
default: true
|
|
@@ -325,7 +342,8 @@ export default {
|
|
|
325
342
|
drag: {
|
|
326
343
|
type: Boolean,
|
|
327
344
|
default: true
|
|
328
|
-
}
|
|
345
|
+
},
|
|
346
|
+
closeParent: Boolean
|
|
329
347
|
},
|
|
330
348
|
computed: {
|
|
331
349
|
wujieName() {
|
|
@@ -357,7 +375,9 @@ export default {
|
|
|
357
375
|
show: this.visible,
|
|
358
376
|
defaultProps: {},
|
|
359
377
|
wd: '',
|
|
360
|
-
ht: ''
|
|
378
|
+
ht: '',
|
|
379
|
+
zoom: 1,
|
|
380
|
+
scale: {}
|
|
361
381
|
};
|
|
362
382
|
},
|
|
363
383
|
created() {
|
|
@@ -376,7 +396,7 @@ export default {
|
|
|
376
396
|
this.ht = this.height ? this.height : this.sizes[this.size]['height'];
|
|
377
397
|
}
|
|
378
398
|
if (this.busEvent) {
|
|
379
|
-
mbus.$on(this.busEvent, async res => {
|
|
399
|
+
mbus.$on(this.busEvent, async (res) => {
|
|
380
400
|
this.titles = res.title;
|
|
381
401
|
this.handler && (await this.handler(res, this));
|
|
382
402
|
this.handleShow();
|
|
@@ -425,6 +445,13 @@ export default {
|
|
|
425
445
|
handleShow() {
|
|
426
446
|
this.show = true;
|
|
427
447
|
},
|
|
448
|
+
handleClosed(res) {
|
|
449
|
+
this.show = false;
|
|
450
|
+
this.$emit('close', res, this);
|
|
451
|
+
if (this.closeParent && this.esDialog) {
|
|
452
|
+
this.esDialog.handleClosed(res);
|
|
453
|
+
}
|
|
454
|
+
},
|
|
428
455
|
handleClose(reload = true) {
|
|
429
456
|
this.$refs[this.wujieName].hide();
|
|
430
457
|
if (this.isReload !== false && reload !== 0 && reload !== false) {
|
|
@@ -436,6 +463,10 @@ export default {
|
|
|
436
463
|
}
|
|
437
464
|
}
|
|
438
465
|
}
|
|
466
|
+
},
|
|
467
|
+
handleScale(res) {
|
|
468
|
+
this.zoom = res;
|
|
469
|
+
this.$emit('scale', res);
|
|
439
470
|
}
|
|
440
471
|
}
|
|
441
472
|
};
|