tianheng-ui 0.1.77 → 0.1.79
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/theme-chalk/images/json0.png +0 -0
- package/lib/theme-chalk/images/json1.png +0 -0
- package/lib/theme-chalk/images/json3.png +0 -0
- package/lib/theme-chalk/images/json6.png +0 -0
- package/lib/theme-chalk/styles/feature.scss +6 -0
- package/lib/tianheng-ui.js +13 -13
- package/package.json +1 -1
- package/packages/FormMaking/WidgetConfig.vue +2 -2
- package/packages/FormMaking/WidgetGuide.vue +176 -23
- package/packages/FormMaking/WidgetTools.vue +70 -15
- package/packages/FormMaking/assets/templates/empty.json +39 -0
- package/packages/FormMaking/assets/templates/general.json +347 -0
- package/packages/FormMaking/assets/templates/personalDetails.json +884 -0
- package/packages/FormMaking/assets/templates/table.json +349 -0
- package/packages/FormMaking/index.vue +9 -4
- package/packages/TableMaking/widgetConfig.vue +1 -1
- package/packages/TableMaking/widgetGuide.vue +23 -26
package/package.json
CHANGED
@@ -181,7 +181,7 @@
|
|
181
181
|
<el-tooltip
|
182
182
|
slot="label"
|
183
183
|
effect="light"
|
184
|
-
content="
|
184
|
+
content="使用该接口的出参配置可选字段"
|
185
185
|
placement="top"
|
186
186
|
>
|
187
187
|
<span style="color: #409EFF;">字段接口</span>
|
@@ -217,7 +217,7 @@
|
|
217
217
|
<el-tooltip
|
218
218
|
slot="label"
|
219
219
|
effect="light"
|
220
|
-
content="开启后,选择数据接口会触发 remote-params
|
220
|
+
content="开启后,选择数据接口会触发 remote-params 回调,用于从服务器获取字段"
|
221
221
|
placement="top"
|
222
222
|
>
|
223
223
|
<span style="color: #409EFF;">远程字段</span>
|
@@ -3,14 +3,94 @@
|
|
3
3
|
<el-steps :active="step" finish-status="success" simple>
|
4
4
|
<el-step title="表单配置" icon="el-icon-s-operation" description="">
|
5
5
|
</el-step>
|
6
|
-
<el-step
|
6
|
+
<el-step
|
7
|
+
title="选择初始模板"
|
8
|
+
icon="el-icon-set-up"
|
9
|
+
description=""
|
10
|
+
></el-step>
|
11
|
+
<!-- <el-step
|
12
|
+
title="选择初始模板"
|
13
|
+
icon="el-icon-set-up"
|
14
|
+
description=""
|
15
|
+
></el-step> -->
|
7
16
|
</el-steps>
|
8
17
|
<div class="content">
|
9
|
-
<
|
10
|
-
<div
|
11
|
-
|
12
|
-
|
13
|
-
|
18
|
+
<el-form :model="config" label-width="80px" size="small">
|
19
|
+
<div v-show="step === 0">
|
20
|
+
<el-form-item>
|
21
|
+
<el-tooltip
|
22
|
+
slot="label"
|
23
|
+
effect="light"
|
24
|
+
content="字段的配置方式"
|
25
|
+
placement="top"
|
26
|
+
>
|
27
|
+
<span style="color: #409EFF;">字段类型</span>
|
28
|
+
</el-tooltip>
|
29
|
+
<el-radio-group v-model="config.config.fields.type">
|
30
|
+
<el-radio-button label="custom">自定义</el-radio-button>
|
31
|
+
<el-radio-button label="api">接口导入</el-radio-button>
|
32
|
+
</el-radio-group>
|
33
|
+
</el-form-item>
|
34
|
+
<el-form-item v-if="config.config.fields.type === 'api'">
|
35
|
+
<el-tooltip
|
36
|
+
slot="label"
|
37
|
+
effect="light"
|
38
|
+
content="使用该接口的出参配置可选字段"
|
39
|
+
placement="top"
|
40
|
+
>
|
41
|
+
<span style="color: #409EFF;">字段接口</span>
|
42
|
+
</el-tooltip>
|
43
|
+
<el-select
|
44
|
+
v-model="config.config.fields.api"
|
45
|
+
style="width:100%"
|
46
|
+
clearable
|
47
|
+
placeholder="请选择"
|
48
|
+
no-data-text="暂无接口,请前往【接口模块】创建"
|
49
|
+
filterable
|
50
|
+
>
|
51
|
+
<el-option
|
52
|
+
v-for="item in apiOptions"
|
53
|
+
:key="item.id"
|
54
|
+
:label="item.name"
|
55
|
+
:value="item.id"
|
56
|
+
>
|
57
|
+
</el-option>
|
58
|
+
</el-select>
|
59
|
+
</el-form-item>
|
60
|
+
<el-form-item label="表单名称">
|
61
|
+
<el-input
|
62
|
+
v-model="config.config.title"
|
63
|
+
placeholder="请输入"
|
64
|
+
></el-input>
|
65
|
+
</el-form-item>
|
66
|
+
<el-form-item>
|
67
|
+
<el-tooltip
|
68
|
+
slot="label"
|
69
|
+
effect="light"
|
70
|
+
content="开启后,选择数据接口会触发 remote-params 回调,用于从服务器获取字段"
|
71
|
+
placement="top"
|
72
|
+
>
|
73
|
+
<span style="color: #409EFF;">远程字段</span>
|
74
|
+
</el-tooltip>
|
75
|
+
<el-switch v-model="config.config.fields.remote"> </el-switch>
|
76
|
+
</el-form-item>
|
77
|
+
</div>
|
78
|
+
<div v-show="step === 1" class="formTemplates">
|
79
|
+
<div
|
80
|
+
:class="
|
81
|
+
`formTemplates-item th-border th-hover_boxShadow_light ${
|
82
|
+
formTemplateActive === index ? 'th-active' : ''
|
83
|
+
}`
|
84
|
+
"
|
85
|
+
v-for="(item, index) in formTemplates"
|
86
|
+
:key="index"
|
87
|
+
@click="handleFormTemplateClick(index)"
|
88
|
+
>
|
89
|
+
<img :src="item.img" alt="" />
|
90
|
+
<div>{{ item.name }}</div>
|
91
|
+
</div>
|
92
|
+
</div>
|
93
|
+
</el-form>
|
14
94
|
</div>
|
15
95
|
<div class="footer">
|
16
96
|
<div></div>
|
@@ -23,31 +103,43 @@
|
|
23
103
|
@click="handleBack"
|
24
104
|
>上一步</el-button
|
25
105
|
>
|
26
|
-
<el-button
|
27
|
-
|
28
|
-
|
106
|
+
<el-button
|
107
|
+
v-if="step !== 1"
|
108
|
+
type="primary"
|
109
|
+
size="small"
|
110
|
+
@click="handleNext"
|
111
|
+
>
|
112
|
+
下一步<i class="el-icon-right el-icon--right"></i>
|
113
|
+
</el-button>
|
114
|
+
<el-button v-else type="success" size="small" @click="handleSave">
|
115
|
+
完 成<i class="el-icon-finished el-icon--right"></i>
|
116
|
+
</el-button>
|
29
117
|
</div>
|
30
118
|
</div>
|
31
119
|
</div>
|
32
120
|
</template>
|
33
121
|
|
34
122
|
<script>
|
123
|
+
import EmptyTemplateJson from "./assets/templates/empty.json";
|
124
|
+
import GeneralTemplateJson from "./assets/templates/general.json";
|
125
|
+
import PersonalDetailsTemplateJson from "./assets/templates/personalDetails.json";
|
126
|
+
import TableTemplateJson from "./assets/templates/table.json";
|
127
|
+
import { deepClone } from "./util";
|
35
128
|
export default {
|
36
|
-
props: {
|
129
|
+
props: { config: Object, apiOptions: Array },
|
37
130
|
data() {
|
38
131
|
return {
|
39
|
-
|
40
|
-
|
132
|
+
step: 0,
|
133
|
+
formTemplates: [
|
134
|
+
EmptyTemplateJson,
|
135
|
+
GeneralTemplateJson,
|
136
|
+
PersonalDetailsTemplateJson,
|
137
|
+
TableTemplateJson
|
138
|
+
],
|
139
|
+
formTemplateActive: null
|
41
140
|
};
|
42
141
|
},
|
43
|
-
|
44
|
-
visible(val) {
|
45
|
-
this.show = val;
|
46
|
-
},
|
47
|
-
show(val) {
|
48
|
-
this.$emit("update:visible", val);
|
49
|
-
}
|
50
|
-
},
|
142
|
+
computed: {},
|
51
143
|
created() {},
|
52
144
|
mounted() {},
|
53
145
|
methods: {
|
@@ -57,8 +149,15 @@ export default {
|
|
57
149
|
handleNext() {
|
58
150
|
this.step++;
|
59
151
|
},
|
60
|
-
|
61
|
-
this.
|
152
|
+
handleSave() {
|
153
|
+
if (this.formTemplateActive !== null) {
|
154
|
+
const list = this.formTemplates[this.formTemplateActive].data.list;
|
155
|
+
this.config.list = deepClone(list);
|
156
|
+
}
|
157
|
+
this.$emit("save");
|
158
|
+
},
|
159
|
+
handleFormTemplateClick(index) {
|
160
|
+
this.formTemplateActive = index;
|
62
161
|
}
|
63
162
|
}
|
64
163
|
};
|
@@ -70,7 +169,13 @@ export default {
|
|
70
169
|
height: 100%;
|
71
170
|
|
72
171
|
.content {
|
73
|
-
height: calc(100% -
|
172
|
+
height: calc(100% - 96px);
|
173
|
+
padding-top: 10px;
|
174
|
+
overflow-y: scroll;
|
175
|
+
|
176
|
+
.tools-item {
|
177
|
+
margin-bottom: 10px;
|
178
|
+
}
|
74
179
|
}
|
75
180
|
.footer {
|
76
181
|
height: 50px;
|
@@ -78,9 +183,57 @@ export default {
|
|
78
183
|
align-items: center;
|
79
184
|
justify-content: space-between;
|
80
185
|
box-sizing: border-box;
|
186
|
+
background-color: white;
|
81
187
|
|
82
188
|
.stepView {
|
83
189
|
}
|
84
190
|
}
|
191
|
+
.fields-item {
|
192
|
+
span {
|
193
|
+
padding: 0px 8px 2px 8px;
|
194
|
+
border-radius: 4px;
|
195
|
+
}
|
196
|
+
span:nth-child(1) {
|
197
|
+
color: #1890ff;
|
198
|
+
background-color: #e8f4ff;
|
199
|
+
}
|
200
|
+
span:nth-child(2) {
|
201
|
+
color: #13ce66;
|
202
|
+
background-color: #e7faf0;
|
203
|
+
}
|
204
|
+
span:nth-child(3) {
|
205
|
+
color: #909399;
|
206
|
+
background-color: #f4f4f5;
|
207
|
+
}
|
208
|
+
}
|
209
|
+
.formTemplates {
|
210
|
+
.formTemplates-item {
|
211
|
+
display: inline-block;
|
212
|
+
margin: 10px;
|
213
|
+
padding: 10px;
|
214
|
+
width: 230px;
|
215
|
+
border-radius: 4px;
|
216
|
+
transition: 0.25s;
|
217
|
+
box-sizing: border-box;
|
218
|
+
|
219
|
+
img {
|
220
|
+
width: 100%;
|
221
|
+
height: 230px;
|
222
|
+
object-fit: contain;
|
223
|
+
}
|
224
|
+
}
|
225
|
+
}
|
226
|
+
}
|
227
|
+
</style>
|
228
|
+
|
229
|
+
<style lang="scss">
|
230
|
+
.widgetGuide {
|
231
|
+
.el-transfer {
|
232
|
+
display: flex;
|
233
|
+
align-items: center;
|
234
|
+
}
|
235
|
+
.el-transfer-panel {
|
236
|
+
flex: 1;
|
237
|
+
}
|
85
238
|
}
|
86
239
|
</style>
|
@@ -74,7 +74,6 @@
|
|
74
74
|
<el-button
|
75
75
|
type="text"
|
76
76
|
size="medium"
|
77
|
-
disabled
|
78
77
|
@click="handleDialogOpen('importTemplate')"
|
79
78
|
>导入模板
|
80
79
|
</el-button>
|
@@ -120,7 +119,8 @@
|
|
120
119
|
:showFooter="
|
121
120
|
dialog.action === 'previewPc' ||
|
122
121
|
dialog.action === 'previewH5' ||
|
123
|
-
dialog.action === 'importJson'
|
122
|
+
dialog.action === 'importJson' ||
|
123
|
+
dialog.action === 'importTemplate'
|
124
124
|
"
|
125
125
|
@on-close="handleDialogClose"
|
126
126
|
@on-affirm="handleDialogAffirm"
|
@@ -133,7 +133,21 @@
|
|
133
133
|
></el-alert>
|
134
134
|
<th-code-editor v-model="dialog.data" ref="codeEditor"></th-code-editor>
|
135
135
|
</template>
|
136
|
-
<
|
136
|
+
<div v-if="dialog.action === 'importTemplate'" class="formTemplates">
|
137
|
+
<div
|
138
|
+
:class="
|
139
|
+
`formTemplates-item th-border th-hover_boxShadow_light ${
|
140
|
+
formTemplateActive === index ? 'th-active' : ''
|
141
|
+
}`
|
142
|
+
"
|
143
|
+
v-for="(item, index) in formTemplates"
|
144
|
+
:key="index"
|
145
|
+
@click="handleFormTemplateClick(index)"
|
146
|
+
>
|
147
|
+
<img :src="item.img" alt="" />
|
148
|
+
<div>{{ item.name }}</div>
|
149
|
+
</div>
|
150
|
+
</div>
|
137
151
|
<template v-if="dialog.action === 'generateJson'">
|
138
152
|
<th-code-editor v-model="dialog.data" ref="codeEditor"></th-code-editor>
|
139
153
|
</template>
|
@@ -164,7 +178,7 @@
|
|
164
178
|
<template v-if="dialog.action === 'previewPc'">
|
165
179
|
<generate-form
|
166
180
|
v-if="dialog.show"
|
167
|
-
:config="
|
181
|
+
:config="formConfig"
|
168
182
|
:oauthConfig="oauthConfig"
|
169
183
|
:slotKeys="slotKeys"
|
170
184
|
@change="handleDataChange"
|
@@ -188,7 +202,7 @@
|
|
188
202
|
<generate-form
|
189
203
|
v-if="dialog.show"
|
190
204
|
class="box"
|
191
|
-
:config="
|
205
|
+
:config="formConfig"
|
192
206
|
:oauthConfig="oauthConfig"
|
193
207
|
@change="handleDataChange"
|
194
208
|
@button-submit="handleButtonSubmit"
|
@@ -230,13 +244,17 @@ import { deepClone } from "./util/index";
|
|
230
244
|
import * as XLSX from "xlsx/xlsx.mjs";
|
231
245
|
import generateCode from "./util/generateCode.js";
|
232
246
|
import GenerateForm from "./GenerateForm";
|
247
|
+
import EmptyTemplateJson from "./assets/templates/empty.json";
|
248
|
+
import GeneralTemplateJson from "./assets/templates/general.json";
|
249
|
+
import PersonalDetailsTemplateJson from "./assets/templates/personalDetails.json";
|
250
|
+
import TableTemplateJson from "./assets/templates/table.json";
|
233
251
|
export default {
|
234
252
|
props: {
|
235
253
|
baseConfig: Object,
|
236
254
|
permissions: Array,
|
237
255
|
basicComponents: Array,
|
238
256
|
layoutComponents: Array,
|
239
|
-
|
257
|
+
formConfig: Object,
|
240
258
|
oauthConfig: Object,
|
241
259
|
apiOptions: Array
|
242
260
|
},
|
@@ -249,7 +267,6 @@ export default {
|
|
249
267
|
data: null
|
250
268
|
},
|
251
269
|
dialogResultData: { show: false, data: null },
|
252
|
-
|
253
270
|
dialogTitles: {
|
254
271
|
previewPc: "预览-电脑端",
|
255
272
|
previewH5: "预览-移动端",
|
@@ -258,7 +275,14 @@ export default {
|
|
258
275
|
generateJson: "生成JSON",
|
259
276
|
generateCode: "生成代码"
|
260
277
|
},
|
261
|
-
|
278
|
+
formTemplates: [
|
279
|
+
EmptyTemplateJson,
|
280
|
+
GeneralTemplateJson,
|
281
|
+
PersonalDetailsTemplateJson,
|
282
|
+
TableTemplateJson
|
283
|
+
],
|
284
|
+
formTemplateActive: null,
|
285
|
+
slotKeys: []
|
262
286
|
};
|
263
287
|
},
|
264
288
|
created() {},
|
@@ -418,13 +442,13 @@ export default {
|
|
418
442
|
let data = "";
|
419
443
|
switch (action) {
|
420
444
|
case "generateJson":
|
421
|
-
data = JSON.stringify(this.
|
445
|
+
data = JSON.stringify(this.formConfig, null, 2);
|
422
446
|
break;
|
423
447
|
case "generateCode":
|
424
448
|
data = {
|
425
449
|
generate: generateCode(
|
426
450
|
{
|
427
|
-
formConfig: JSON.stringify(this.
|
451
|
+
formConfig: JSON.stringify(this.formConfig, null, 2),
|
428
452
|
apiOptions: JSON.stringify(this.apiOptions, null, 2),
|
429
453
|
oauthConfig: JSON.stringify(this.oauthConfig, null, 2)
|
430
454
|
},
|
@@ -432,7 +456,7 @@ export default {
|
|
432
456
|
),
|
433
457
|
making: generateCode(
|
434
458
|
{
|
435
|
-
formConfig: JSON.stringify(this.
|
459
|
+
formConfig: JSON.stringify(this.formConfig, null, 2),
|
436
460
|
apiOptions: JSON.stringify(this.apiOptions, null, 2),
|
437
461
|
oauthConfig: JSON.stringify(this.oauthConfig, null, 2)
|
438
462
|
},
|
@@ -440,6 +464,9 @@ export default {
|
|
440
464
|
)
|
441
465
|
};
|
442
466
|
break;
|
467
|
+
case "importTemplate":
|
468
|
+
this.formTemplateActive = null;
|
469
|
+
break;
|
443
470
|
|
444
471
|
default:
|
445
472
|
break;
|
@@ -453,6 +480,14 @@ export default {
|
|
453
480
|
if (this.dialog.action === "importJson") {
|
454
481
|
this.handleClick("import-json", JSON.parse(this.dialog.data));
|
455
482
|
}
|
483
|
+
if (
|
484
|
+
this.dialog.action === "importTemplate" &&
|
485
|
+
this.formTemplateActive !== null
|
486
|
+
) {
|
487
|
+
const list = this.formTemplates[this.formTemplateActive].data.list;
|
488
|
+
this.formConfig.list = deepClone(list);
|
489
|
+
this.$emit("importTemplate");
|
490
|
+
}
|
456
491
|
this.handleDialogClose();
|
457
492
|
},
|
458
493
|
handleDialogFullscreen() {
|
@@ -472,8 +507,8 @@ export default {
|
|
472
507
|
},
|
473
508
|
handleNetworkConfig() {
|
474
509
|
const fieldsApi = {
|
475
|
-
fields: this.
|
476
|
-
mounted: this.
|
510
|
+
fields: this.formConfig.config.fields.api,
|
511
|
+
mounted: this.formConfig.config.mounted.api
|
477
512
|
};
|
478
513
|
const initList = list => {
|
479
514
|
for (const item of list) {
|
@@ -490,13 +525,16 @@ export default {
|
|
490
525
|
}
|
491
526
|
}
|
492
527
|
};
|
493
|
-
initList(this.
|
528
|
+
initList(this.formConfig.list);
|
494
529
|
const apis = Object.values(fieldsApi);
|
495
530
|
const network = {};
|
496
531
|
this.apiOptions.map(item => {
|
497
532
|
if (apis.includes(item.id)) network[item.id] = item;
|
498
533
|
});
|
499
|
-
this.
|
534
|
+
this.formConfig.config.network = network;
|
535
|
+
},
|
536
|
+
handleFormTemplateClick(index) {
|
537
|
+
this.formTemplateActive = index;
|
500
538
|
}
|
501
539
|
}
|
502
540
|
};
|
@@ -520,6 +558,23 @@ export default {
|
|
520
558
|
justify-content: right;
|
521
559
|
}
|
522
560
|
|
561
|
+
.formTemplates {
|
562
|
+
.formTemplates-item {
|
563
|
+
display: inline-block;
|
564
|
+
margin: 10px;
|
565
|
+
padding: 10px;
|
566
|
+
width: 230px;
|
567
|
+
border-radius: 4px;
|
568
|
+
transition: 0.25s;
|
569
|
+
|
570
|
+
img {
|
571
|
+
width: 100%;
|
572
|
+
height: 230px;
|
573
|
+
object-fit: contain;
|
574
|
+
}
|
575
|
+
}
|
576
|
+
}
|
577
|
+
|
523
578
|
.previewH5 {
|
524
579
|
width: 300px;
|
525
580
|
height: 649px;
|
@@ -0,0 +1,39 @@
|
|
1
|
+
{
|
2
|
+
"name": "空白表单",
|
3
|
+
"data": {
|
4
|
+
"list": [],
|
5
|
+
"config": {
|
6
|
+
"fields": {
|
7
|
+
"type": "api",
|
8
|
+
"api": "",
|
9
|
+
"remote": true
|
10
|
+
},
|
11
|
+
"ui": "element",
|
12
|
+
"title": "",
|
13
|
+
"width": "",
|
14
|
+
"labelWidth": 100,
|
15
|
+
"labelPosition": "right",
|
16
|
+
"labelSuffix": ":",
|
17
|
+
"size": "small",
|
18
|
+
"disabled": false,
|
19
|
+
"hideLabel": false,
|
20
|
+
"mounted": {
|
21
|
+
"api": ""
|
22
|
+
},
|
23
|
+
"eventScript": [
|
24
|
+
{
|
25
|
+
"id": "mounted",
|
26
|
+
"label": "mounted",
|
27
|
+
"value": ""
|
28
|
+
},
|
29
|
+
{
|
30
|
+
"id": "refresh",
|
31
|
+
"label": "refresh",
|
32
|
+
"value": ""
|
33
|
+
}
|
34
|
+
],
|
35
|
+
"network": {}
|
36
|
+
}
|
37
|
+
},
|
38
|
+
"img": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAlgAAAJXCAYAAABPMCoJAAABSGlDQ1BJQ0MgUHJvZmlsZQAAKJFjYGASSSwoyGFhYGDIzSspCnJ3UoiIjFJgf8bAwiDFwMmgwGCcmFxc4BgQ4ANUwgCjUcG3awyMIPqyLsisbp07V2MmPjdxvXLacUqm13NM9SiAKyW1OBlI/wHi9OSCohIGBsYUIFu5vKQAxO4AskWKgI4CsueA2OkQ9gYQOwnCPgJWExLkDGTfALIFkjMSgWYwvgCydZKQxNOR2FB7QYDXxdXHRyHUyMTQ0iOYgHtJBiWpFSUg2jm/oLIoMz2jRMERGEqpCp55yXo6CkYGRkYMDKAwh6j+HAQOS0axfQix/CUMDBbfGBiYJyLEkqYwMGxvY2CQuIUQU5nHwMDfwsCw7VBBYlEi3AGM31iK04yNIGweewYG1rv//3/WYGBgn8jA8Hfi//+/F////3cx0PzbDAwHKgHHO2Hu23HkSwAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAACWKADAAQAAAABAAACVwAAAAAOBDdzAAA0sUlEQVR4Ae3d6ZPcRnon4Oybl6TR3N4dhx22Y73+4v2y//zu2juxozk8OkYj6qLucySNRIni0VddvcgqFbtJkwTRnVWJTDyI6GGzgUq8+bwQ59coFLBx0izBQoAAAQIECBAgkExgM9lIBiJAgAABAgQIEJgLCFgOBAIECBAgQIBAYgEBKzGo4QgQIECAAAECApZjgAABAgQIECCQWEDASgxqOAIECBAgQICAgOUYIECAAAECBAgkFhCwEoMajgABAgQIECAgYDkGCBAgQIAAAQKJBQSsxKCGI0CAAAECBAgIWI4BAgQIECBAgEBiAQErMajhCBAgQIAAAQIClmOAAAECBAgQIJBYQMBKDGo4AgQIECBAgICA5RggQIAAAQIECCQWELASgxqOAAECBAgQICBgOQYIECBAgAABAokFBKzEoIYjQIAAAQIECAhYjgECBAgQIECAQGIBASsxqOEIECBAgAABAgKWY4AAAQIECBAgkFhAwEoMajgCBAgQIECAgIDlGCBAgAABAgQIJBYQsBKDGo4AAQIECBAgIGA5BggQIECAAAECiQUErMSghiNAgAABAgQICFiOAQIECBAgQIBAYgEBKzGo4QgQIECAAAECApZjgAABAgQIECCQWEDASgxqOAIECBAgQICAgOUYIECAAAECBAgkFhCwEoMajgABAgQIECAgYDkGCBAgQIAAAQKJBQSsxKCGI0CAAAECBAgIWI4BAgQIECBAgEBiAQErMajhCBAgQIAAAQIClmOAAAECBAgQIJBYQMBKDGo4AgQIECBAgICA5RggQIAAAQIECCQWELASgxqOAAECBAgQICBgOQYIECBAgAABAokFBKzEoIYjQIAAAQIECAhYjgECBAgQIECAQGIBASsxqOEIECBAgAABAgKWY4AAAQIECBAgkFhAwEoMajgCBAgQIECAgIDlGCBAgAABAgQIJBYQsBKDGo4AAQIECBAgIGA5BggQIECAAAECiQUErMSghiNAgAABAgQICFiOAQIECBAgQIBAYgEBKzGo4QgQIECAAAECApZjgAABAgQIECCQWEDASgxqOAIECBAgQICAgOUYIECAAAECBAgkFhCwEoMajgABAgQIECAgYDkGCBAgQIAAAQKJBQSsxKCGI0CAAAECBAgIWI4BAgQIECBAgEBiAQErMajhCBAgQIAAAQIClmOAAAECBAgQIJBYQMBKDGo4AgQIECBAgICA5RggQIAAAQIECCQWELASgxqOAAECBAgQICBgOQYIECBAgAABAokFBKzEoIYjQIAAAQIECAhYjgECBAgQIECAQGIBASsxqOEIECBAgAABAgKWY4AAAQIECBAgkFhAwEoMajgCBAgQIECAgIDlGCBAgAABAgQIJBYQsBKDGo4AAQIECBAgIGA5BggQIECAAAECiQUErMSghiNAgAABAgQICFiOAQIECBAgQIBAYgEBKzGo4QgQIECAAAECApZjgAABAgQIECCQWEDASgxqOAIECBAgQICAgOUYIECAAAECBAgkFhCwEoMajgABAgQIECAgYDkGCBAgQIAAAQKJBQSsxKCGI0CAAAECBAgIWI4BAgQIECBAgEBiAQErMajhCBAgQIAAAQIClmOAAAECBAgQIJBYQMBKDGo4AgQIECBAgICA5RggQIAAAQIECCQWELASgxqOAAECBAgQICBgOQYIECBAgAABAokFBKzEoIYjQIAAAQIECAhYjgECBAgQIECAQGIBASsxqOEIECBAgAABAgKWY4AAAQIECBAgkFhAwEoMajgCBAgQIECAgIDlGCBAgAAB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J0CAAAECBAi0CQhYbULWEyBAgAABAgQ6CghYHcFsToAAAQIECBBoExCw2oSsJ0CAAAECBAh0FBCwOoLZnAABAgQIECDQJiBgtQlZT4AAAQIECBDoKCBgdQSzOQECBAgQIECgTUDAahOyngABAgQIECDQUUDA6ghmcwIECBAgQIBAm4CA1SZkPQECBAgQIECgo4CA1RHM5gQIECBAgACBNgEBq03IegIECBAgQIBARwEBqyOYzQkQIECAAAECbQICVpuQ9QQIECBAgACBjgICVkcwmxMgQIAAAQIE2gQErDYh6wkQIECAAAECHQUErI5gNidAgAABAgQItAkIWG1C1hMgQIAAAQIEOgoIWB3BbE6AAAECBAgQaBMQsNqErCdAgAABAgQIdBQQsDqC2ZwAAQIECBAg0CYgYLUJWU+AAAECBAgQ6CggYHUEszkBAgQIECBAoE1AwGoTsp4AAQIECBAg0FFAwOoIZnMCBAgQIECAQJuAgNUmZD0BAgQIECBAoKOAgNURzOYECBAgQIAAgTYBAatNyHoCBAgQIECAQEcBAasjmM0JECBAgAABAm0C/x9YvWPWbALEKQAAAABJRU5ErkJggg=="
|
39
|
+
}
|