@newview/file-ui 0.0.1
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/dist/file-ui.js +780 -0
- package/dist/file-ui.umd.cjs +1 -0
- package/dist/style.css +1 -0
- package/package.json +57 -0
- package/tsconfig.json +19 -0
- package/tsconfig.node.json +9 -0
- package/types/FilePreview.d.ts +5 -0
- package/types/FilePreviewInstance.d.ts +9 -0
- package/types/UploadFile.d.ts +5 -0
- package/types/UploadFileInstance.d.ts +5 -0
- package/types/index.d.ts +5 -0
- package/vite.config.ts +50 -0
package/dist/file-ui.js
ADDED
|
@@ -0,0 +1,780 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => {
|
|
4
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
return value;
|
|
6
|
+
};
|
|
7
|
+
import { BaseInstance } from "@newview/base-vue";
|
|
8
|
+
import { defineComponent, ref, watch, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, createElementVNode, reactive, normalizeStyle, renderList, createBlock, createSlots, normalizeClass, withModifiers, createCommentVNode, createTextVNode, toDisplayString } from "vue";
|
|
9
|
+
import { QueryWrapper } from "@newview/infrastructure";
|
|
10
|
+
import { OSSFileApi, FileApi, UploadApi, FileInfoApi } from "@newview/fileservice-api";
|
|
11
|
+
const propDefine$1 = {
|
|
12
|
+
modelValue: {
|
|
13
|
+
// 是否显示
|
|
14
|
+
type: Boolean,
|
|
15
|
+
default: false
|
|
16
|
+
},
|
|
17
|
+
fileInfo: {
|
|
18
|
+
// 带入的参数
|
|
19
|
+
type: Object,
|
|
20
|
+
default: () => {
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
previewList: {
|
|
24
|
+
// 按钮权限码
|
|
25
|
+
type: Array,
|
|
26
|
+
default: () => []
|
|
27
|
+
},
|
|
28
|
+
previewIndex: {
|
|
29
|
+
// 预览Index
|
|
30
|
+
type: Number,
|
|
31
|
+
default: 0
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
const _sfc_main$1 = defineComponent({
|
|
35
|
+
name: "FilePreview",
|
|
36
|
+
components: {},
|
|
37
|
+
emits: ["update:modelValue"],
|
|
38
|
+
// 例如: ['clearRadioRow', 'change', 'delete', 'addchild']
|
|
39
|
+
props: propDefine$1,
|
|
40
|
+
setup(props, ctx) {
|
|
41
|
+
return new FilePreviewInstance(props, ctx);
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
class FilePreviewInstance extends BaseInstance {
|
|
45
|
+
// 全局属性
|
|
46
|
+
constructor(props, ctx) {
|
|
47
|
+
super();
|
|
48
|
+
__publicField(this, "props");
|
|
49
|
+
__publicField(this, "ctx");
|
|
50
|
+
// API实例化
|
|
51
|
+
__publicField(this, "ossFileApi", new OSSFileApi());
|
|
52
|
+
__publicField(this, "fileApi", new FileApi());
|
|
53
|
+
//#region 业务逻辑 - 文件预览
|
|
54
|
+
// 私有属性 | private
|
|
55
|
+
// 响应属性 | ref、reactive、computed
|
|
56
|
+
__publicField(this, "previewImage", ref(false));
|
|
57
|
+
__publicField(this, "previewIfr", ref(false));
|
|
58
|
+
__publicField(this, "ifrUrl", ref(""));
|
|
59
|
+
// 响应式方法 | xxx = () => {}
|
|
60
|
+
/**
|
|
61
|
+
* 关闭预览
|
|
62
|
+
*/
|
|
63
|
+
__publicField(this, "doClose", (value) => {
|
|
64
|
+
if (value) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
this.ctx.emit("update:modelValue", false);
|
|
68
|
+
});
|
|
69
|
+
this.props = props;
|
|
70
|
+
this.ctx = ctx;
|
|
71
|
+
this.useFilePreview();
|
|
72
|
+
}
|
|
73
|
+
// 私有方法 | private 方法名() {}
|
|
74
|
+
/**
|
|
75
|
+
* 初始化
|
|
76
|
+
*/
|
|
77
|
+
useFilePreview() {
|
|
78
|
+
watch(() => this.props["modelValue"], () => {
|
|
79
|
+
if (this.props["modelValue"]) {
|
|
80
|
+
this.doView(this.props.fileInfo);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
if (this.props["modelValue"]) {
|
|
84
|
+
this.doView(this.props.fileInfo);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* 预览文件
|
|
89
|
+
*/
|
|
90
|
+
async doView(fileInfo) {
|
|
91
|
+
const fileUrl = await this.ossFileApi.getSignatureUrlByFileInfo(fileInfo);
|
|
92
|
+
if (this.isImage(fileInfo)) {
|
|
93
|
+
this.previewImage.value = true;
|
|
94
|
+
} else if (this.isOffice(fileInfo)) {
|
|
95
|
+
this.ifrUrl.value = `https://view.officeapps.live.com/op/embed.aspx?src=${encodeURIComponent(fileUrl)}`;
|
|
96
|
+
this.previewIfr.value = true;
|
|
97
|
+
} else if (this.isVedio(fileInfo)) {
|
|
98
|
+
this.ifrUrl.value = `${fileUrl}`;
|
|
99
|
+
this.previewIfr.value = true;
|
|
100
|
+
} else if (this.isPDF(fileInfo)) {
|
|
101
|
+
this.ifrUrl.value = `/static/pdfjs-dist/web/viewer.html?file=${encodeURIComponent(fileUrl)}`;
|
|
102
|
+
this.previewIfr.value = true;
|
|
103
|
+
} else {
|
|
104
|
+
const downloadUrl = this.fileApi.getFileUrl(fileInfo.Token, fileInfo.Id);
|
|
105
|
+
console.log("downloadUrl", downloadUrl);
|
|
106
|
+
window.open(downloadUrl);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* 是否为Office
|
|
111
|
+
* @param fileInfo
|
|
112
|
+
*/
|
|
113
|
+
isOffice(fileInfo) {
|
|
114
|
+
const ext = fileInfo.FileExt;
|
|
115
|
+
return ext == "doc" || ext == "docx" || ext == "ppt" || ext == "pptx" || ext == "xls" || ext == "xlsx";
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* 是否为Vedio
|
|
119
|
+
* @param fileInfo
|
|
120
|
+
*/
|
|
121
|
+
isVedio(fileInfo) {
|
|
122
|
+
const ext = fileInfo.FileExt;
|
|
123
|
+
return ext == "mov" || ext == "mp3" || ext == "mp4";
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* 是否为PDF
|
|
127
|
+
* @param fileInfo
|
|
128
|
+
*/
|
|
129
|
+
isPDF(fileInfo) {
|
|
130
|
+
const ext = fileInfo.FileExt;
|
|
131
|
+
return ext == "pdf";
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* 是否为图片
|
|
135
|
+
* @param fileInfo
|
|
136
|
+
* @returns
|
|
137
|
+
*/
|
|
138
|
+
isImage(fileInfo) {
|
|
139
|
+
const ext = fileInfo.FileExt;
|
|
140
|
+
return ext == "jpg" || ext == "png" || ext == "jpeg" || ext == "gif" || ext == "svg";
|
|
141
|
+
}
|
|
142
|
+
//#endregion 业务逻辑 - 文件预览 END
|
|
143
|
+
}
|
|
144
|
+
const FilePreview_vue_vue_type_style_index_0_scoped_071f536d_lang = "";
|
|
145
|
+
const _export_sfc = (sfc, props) => {
|
|
146
|
+
const target = sfc.__vccOpts || sfc;
|
|
147
|
+
for (const [key, val] of props) {
|
|
148
|
+
target[key] = val;
|
|
149
|
+
}
|
|
150
|
+
return target;
|
|
151
|
+
};
|
|
152
|
+
const _hoisted_1$1 = { class: "ifr-container" };
|
|
153
|
+
const _hoisted_2$1 = ["src", "title"];
|
|
154
|
+
function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
155
|
+
const _component_ImagePreview = resolveComponent("ImagePreview");
|
|
156
|
+
const _component_Modal = resolveComponent("Modal");
|
|
157
|
+
return openBlock(), createElementBlock(Fragment, null, [
|
|
158
|
+
createVNode(_component_ImagePreview, {
|
|
159
|
+
modelValue: _ctx.previewImage,
|
|
160
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.previewImage = $event),
|
|
161
|
+
"preview-list": _ctx.previewList,
|
|
162
|
+
"initial-index": _ctx.previewIndex,
|
|
163
|
+
onOnClose: _ctx.doClose
|
|
164
|
+
}, null, 8, ["modelValue", "preview-list", "initial-index", "onOnClose"]),
|
|
165
|
+
createVNode(_component_Modal, {
|
|
166
|
+
modelValue: _ctx.previewIfr,
|
|
167
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.previewIfr = $event),
|
|
168
|
+
fullscreen: "",
|
|
169
|
+
mask: true,
|
|
170
|
+
"mask-closable": false,
|
|
171
|
+
width: 1e3,
|
|
172
|
+
"footer-hide": "",
|
|
173
|
+
title: "文件预览 - " + _ctx.fileInfo.FileName,
|
|
174
|
+
onOnVisibleChange: _ctx.doClose
|
|
175
|
+
}, {
|
|
176
|
+
default: withCtx(() => [
|
|
177
|
+
createElementVNode("div", _hoisted_1$1, [
|
|
178
|
+
createElementVNode("iframe", {
|
|
179
|
+
src: _ctx.ifrUrl,
|
|
180
|
+
class: "ifr-content",
|
|
181
|
+
title: _ctx.fileInfo.fileInfo
|
|
182
|
+
}, " ", 8, _hoisted_2$1)
|
|
183
|
+
])
|
|
184
|
+
]),
|
|
185
|
+
_: 1
|
|
186
|
+
}, 8, ["modelValue", "title", "onOnVisibleChange"])
|
|
187
|
+
], 64);
|
|
188
|
+
}
|
|
189
|
+
const filePreview = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v-071f536d"]]);
|
|
190
|
+
const propDefine = {
|
|
191
|
+
linkParam: {
|
|
192
|
+
// 带入的参数
|
|
193
|
+
type: String,
|
|
194
|
+
default: ""
|
|
195
|
+
},
|
|
196
|
+
operates: {
|
|
197
|
+
// 按钮权限码
|
|
198
|
+
type: String,
|
|
199
|
+
default: "-"
|
|
200
|
+
},
|
|
201
|
+
token: {
|
|
202
|
+
// Token
|
|
203
|
+
type: String,
|
|
204
|
+
default: ""
|
|
205
|
+
},
|
|
206
|
+
catalog: {
|
|
207
|
+
// 目录
|
|
208
|
+
type: String,
|
|
209
|
+
default: "root"
|
|
210
|
+
},
|
|
211
|
+
groups: {
|
|
212
|
+
// 文件分组列表
|
|
213
|
+
type: Array,
|
|
214
|
+
default: () => ["默认"]
|
|
215
|
+
},
|
|
216
|
+
extraInfo: {
|
|
217
|
+
// 扩展信息
|
|
218
|
+
type: String,
|
|
219
|
+
default: ""
|
|
220
|
+
},
|
|
221
|
+
isCompress: {
|
|
222
|
+
// 是否压缩
|
|
223
|
+
type: Boolean,
|
|
224
|
+
default: false
|
|
225
|
+
},
|
|
226
|
+
format: {
|
|
227
|
+
// 允许上传格式
|
|
228
|
+
type: Array,
|
|
229
|
+
default: () => []
|
|
230
|
+
},
|
|
231
|
+
maxSize: {
|
|
232
|
+
// 文件大小限制,单位 kb
|
|
233
|
+
type: Number,
|
|
234
|
+
default: 0
|
|
235
|
+
},
|
|
236
|
+
multiple: {
|
|
237
|
+
// 是否支持多选文件
|
|
238
|
+
type: Boolean,
|
|
239
|
+
default: false
|
|
240
|
+
},
|
|
241
|
+
readonly: {
|
|
242
|
+
// 是否只读
|
|
243
|
+
type: Boolean,
|
|
244
|
+
default: false
|
|
245
|
+
},
|
|
246
|
+
single: {
|
|
247
|
+
// 单文件
|
|
248
|
+
type: Boolean,
|
|
249
|
+
default: false
|
|
250
|
+
}
|
|
251
|
+
};
|
|
252
|
+
const _sfc_main = defineComponent({
|
|
253
|
+
name: "UploadFile",
|
|
254
|
+
components: { filePreview },
|
|
255
|
+
emits: ["success"],
|
|
256
|
+
// 例如: ['clearRadioRow', 'change', 'delete', 'addchild']
|
|
257
|
+
props: propDefine,
|
|
258
|
+
setup(props, ctx) {
|
|
259
|
+
return new UploadFileInstance(props, ctx);
|
|
260
|
+
}
|
|
261
|
+
});
|
|
262
|
+
class UploadFileInstance extends BaseInstance {
|
|
263
|
+
// 全局属性
|
|
264
|
+
constructor(props, ctx) {
|
|
265
|
+
super();
|
|
266
|
+
__publicField(this, "props");
|
|
267
|
+
__publicField(this, "ctx");
|
|
268
|
+
// API实例化
|
|
269
|
+
__publicField(this, "uploadApi", new UploadApi());
|
|
270
|
+
__publicField(this, "fileInfoApi", new FileInfoApi());
|
|
271
|
+
__publicField(this, "fileApi", new FileApi());
|
|
272
|
+
//#region 业务逻辑 - 文件上传
|
|
273
|
+
// 私有属性 | private
|
|
274
|
+
__publicField(this, "currentToken", "");
|
|
275
|
+
// 当前Token
|
|
276
|
+
// 响应属性 | ref、reactive、computed
|
|
277
|
+
__publicField(this, "fileList", ref([]));
|
|
278
|
+
__publicField(this, "uploading", ref(false));
|
|
279
|
+
__publicField(this, "uploadFilePos", reactive({}));
|
|
280
|
+
// 文件上传参数
|
|
281
|
+
__publicField(this, "action", ref(""));
|
|
282
|
+
// 请求 Url
|
|
283
|
+
__publicField(this, "headers", ref({
|
|
284
|
+
Authorization: ""
|
|
285
|
+
}));
|
|
286
|
+
// 响应式方法 | xxx = () => {}
|
|
287
|
+
/**
|
|
288
|
+
* 上传成功
|
|
289
|
+
* @param res
|
|
290
|
+
* @param file
|
|
291
|
+
* @param fileList
|
|
292
|
+
* @returns
|
|
293
|
+
*/
|
|
294
|
+
__publicField(this, "doSuccess", (res, file, fileList) => {
|
|
295
|
+
const result = this.utilities.parseApiResult(res);
|
|
296
|
+
this.uploading.value = false;
|
|
297
|
+
if (result.Code != "0") {
|
|
298
|
+
this.message.error(result.Msg);
|
|
299
|
+
return;
|
|
300
|
+
}
|
|
301
|
+
this.message.success("上传成功");
|
|
302
|
+
this.ctx.emit("success", { token: result.Token, fileId: result.FileId });
|
|
303
|
+
this.loadFileList();
|
|
304
|
+
});
|
|
305
|
+
/**
|
|
306
|
+
* 文件格式错误
|
|
307
|
+
*/
|
|
308
|
+
__publicField(this, "doFormatError", () => {
|
|
309
|
+
this.message.warning("当前上传的文件格式不正确,请重新上传");
|
|
310
|
+
this.uploading.value = false;
|
|
311
|
+
});
|
|
312
|
+
/**
|
|
313
|
+
* 文件超过上传限制
|
|
314
|
+
*/
|
|
315
|
+
__publicField(this, "doMaxSize", () => {
|
|
316
|
+
if (this.props.maxSize / 1024 >= 1) {
|
|
317
|
+
this.message.warning(
|
|
318
|
+
"文件太大超出上传限制,文件大小不得大于" + (this.props.maxSize / 1024).toFixed(1) + "M"
|
|
319
|
+
);
|
|
320
|
+
} else {
|
|
321
|
+
this.message.warning(
|
|
322
|
+
"文件太大超出上传限制,文件大小不得大于" + this.props.maxSize + "KB"
|
|
323
|
+
);
|
|
324
|
+
}
|
|
325
|
+
this.uploading.value = false;
|
|
326
|
+
});
|
|
327
|
+
/**
|
|
328
|
+
* 上传之前
|
|
329
|
+
*/
|
|
330
|
+
__publicField(this, "doBeforeUpload", () => {
|
|
331
|
+
this.message.info("文件上传中,请稍等");
|
|
332
|
+
this.uploading.value = true;
|
|
333
|
+
});
|
|
334
|
+
/**
|
|
335
|
+
* 移除
|
|
336
|
+
* @param fileInfo
|
|
337
|
+
*/
|
|
338
|
+
__publicField(this, "doRemove", (fileInfo) => {
|
|
339
|
+
this.modal.confirm({
|
|
340
|
+
title: "提示",
|
|
341
|
+
content: `数据删除后不可恢复,<br/>确定要删除 ${fileInfo.FileName} 文件吗?`,
|
|
342
|
+
onOk: async () => {
|
|
343
|
+
this.uploading.value = true;
|
|
344
|
+
const apiResult = await this.fileApi.deleteFile(fileInfo.Token, fileInfo.Id);
|
|
345
|
+
const result = this.utilities.parseApiResult(apiResult);
|
|
346
|
+
if (result <= 0) {
|
|
347
|
+
this.message.warning("删除失败,请稍后重试!");
|
|
348
|
+
this.uploading.value = false;
|
|
349
|
+
} else {
|
|
350
|
+
this.loadFileList();
|
|
351
|
+
this.message.success("删除成功");
|
|
352
|
+
this.uploading.value = false;
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
});
|
|
356
|
+
});
|
|
357
|
+
/**
|
|
358
|
+
* 下载文件
|
|
359
|
+
* @param fileInfo
|
|
360
|
+
*/
|
|
361
|
+
__publicField(this, "doDwonload", (fileInfo) => {
|
|
362
|
+
const downloadUrl = this.fileApi.getFileUrl(fileInfo.Token, fileInfo.Id);
|
|
363
|
+
window.open(downloadUrl);
|
|
364
|
+
});
|
|
365
|
+
/**
|
|
366
|
+
* 获取当前组文件
|
|
367
|
+
*/
|
|
368
|
+
__publicField(this, "getGroupFiles", (groupName) => {
|
|
369
|
+
if (groupName == "默认") {
|
|
370
|
+
return this.fileList.value;
|
|
371
|
+
} else {
|
|
372
|
+
return this.fileList.value.filter((item) => item.GroupName == groupName);
|
|
373
|
+
}
|
|
374
|
+
});
|
|
375
|
+
/**
|
|
376
|
+
* 获取单文件
|
|
377
|
+
* @param groupName
|
|
378
|
+
*/
|
|
379
|
+
__publicField(this, "getSingle", (groupName) => {
|
|
380
|
+
const groupFiles = this.getGroupFiles(groupName);
|
|
381
|
+
return this.props.single && groupFiles.length > 0;
|
|
382
|
+
});
|
|
383
|
+
/**
|
|
384
|
+
* 获取第一个文件
|
|
385
|
+
* @param groupName
|
|
386
|
+
* @returns
|
|
387
|
+
*/
|
|
388
|
+
__publicField(this, "getFirstFile", (groupName) => {
|
|
389
|
+
const groupFiles = this.getGroupFiles(groupName);
|
|
390
|
+
if (groupFiles.length == 0) {
|
|
391
|
+
return void 0;
|
|
392
|
+
} else {
|
|
393
|
+
return groupFiles[0];
|
|
394
|
+
}
|
|
395
|
+
});
|
|
396
|
+
//#endregion 业务逻辑 - 文件上传 END
|
|
397
|
+
//#region 业务逻辑 文件预览
|
|
398
|
+
// 私有属性 | private
|
|
399
|
+
// 响应属性 | ref、reactive、computed、watch
|
|
400
|
+
__publicField(this, "previewVisible", ref(false));
|
|
401
|
+
__publicField(this, "previewList", ref([]));
|
|
402
|
+
__publicField(this, "previewIndex", ref(0));
|
|
403
|
+
__publicField(this, "previewFileInfo", ref({}));
|
|
404
|
+
// 响应式方法 | xxx = () => {}
|
|
405
|
+
/**
|
|
406
|
+
* 是否为图片
|
|
407
|
+
* @param fileInfo
|
|
408
|
+
* @returns
|
|
409
|
+
*/
|
|
410
|
+
__publicField(this, "isImage", (fileInfo) => {
|
|
411
|
+
const ext = fileInfo.FileExt;
|
|
412
|
+
return ext == "jpg" || ext == "png" || ext == "jpeg" || ext == "gif" || ext == "svg";
|
|
413
|
+
});
|
|
414
|
+
/**
|
|
415
|
+
* 获取文件预览Url
|
|
416
|
+
* @param fileInfo 文件信息
|
|
417
|
+
*/
|
|
418
|
+
__publicField(this, "getImgUrl", (fileInfo) => {
|
|
419
|
+
return this.fileApi.getFileUrl(fileInfo.Token, fileInfo.Id);
|
|
420
|
+
});
|
|
421
|
+
/**
|
|
422
|
+
* 获取缩略图Url
|
|
423
|
+
* @param fileInfo
|
|
424
|
+
* @returns
|
|
425
|
+
*/
|
|
426
|
+
__publicField(this, "getThumbnailUrl", (fileInfo) => {
|
|
427
|
+
return this.isImage(fileInfo) ? this.getImgUrl(fileInfo) : this.getFileIcon(fileInfo.FileExt);
|
|
428
|
+
});
|
|
429
|
+
/**
|
|
430
|
+
* 获取文件图片
|
|
431
|
+
* @param fileType
|
|
432
|
+
* @returns
|
|
433
|
+
*/
|
|
434
|
+
__publicField(this, "getFileIcon", (fileType) => {
|
|
435
|
+
const fileicons = {
|
|
436
|
+
DOCX: {
|
|
437
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjRCOTIzMDEwNzE5RTExRTdBOEQ5Q0NFM0IyNDAxOEEyIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjRCOTIzMDExNzE5RTExRTdBOEQ5Q0NFM0IyNDAxOEEyIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NEI5MjMwMEU3MTlFMTFFN0E4RDlDQ0UzQjI0MDE4QTIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NEI5MjMwMEY3MTlFMTFFN0E4RDlDQ0UzQjI0MDE4QTIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz60rcnLAAAEVklEQVR42uzcS2gbRxgA4H9XlmTLr0W2W6mJUeIaG7sxdWkdGkOoqQOJk4ZACPhQkxSVJIccTEvdUw+l7aVQeumxPZRQmxhCDkkpDcSUQOI4+BKDrYvTJCj4iSw/JD8k7Wozs1RivGhXK2ur7I7nh0G70qwtffz/r1m9OFmWIRMcxwEZc3NzlejidzTeQ6MCbBIul0ssLy8PVldXjxV6LOmhmGgBIRy8M47Gh2CzQDggCIK0tbV1slAkNRCvM/cMmvw+2DR4nnd4PJ67sVist6i/o3VDOp0+gzLKCTYOM5A0gdbX1xuAgigWSRMokUi4gZIoBkmvxDigKPaKxMM+ir0glZE7LZ8OC5ntjS3JWbMtmnCnOPC4HVZEMrQE2LUOah0Ykc2+Q2/7q+C3Lz4o+TrI6/XqzkEtJOc6qZB1ECs3WoHUWVAMEpVAyWQSJEkyBYnaDIpGo6YglWkd9FV/J1w+265sD/7yAP5+HIZ3Dnvh1vensnN+vROCn0afKNv4enw7jq6rN2FjM/lakVKpFCwvL+Mze4jH40awHCj+qKqq8hsCmn4RzW4fOeRVgLqP+HbNUfZHAWoqXVmcmefR145DZhI6I1C2MVY+JITpCQQCxkpsfHpxN8R/UGRgFIxDwpHHWSWcTif4/X5cSvmyzmW4B+EswNmgBUHikXBk5tkRqaAm/XI5nt3u/7hZQVIHxrF6BhElVDCS7kwyG6580p4TAcNZsf+YhaQ7i4Qgs2f0n6dZCPJ6K2fPXpF0Z2hlBIaYfh7VzThakPISqrMigzaTA8guGUQi+Xw+XaS8QGSjJhHU2WKH/pMr3G63LlJeIDVEZl+dLXbLHqNIZfkOxivo1scjOddJrQMj1Jy/YSRBEMR9cbK611C/s8yAil0HsWBAeWNXk97e2X4KICuFWF/j9vnqaiuL/QeNb3joAVqKLH6LLq7jzCqTPRt//tDLSozcSd7/ZhhdXEQjzYpLowdlkHgOZMaj0aQx0pfn26cZj86z2NGWujXGw57mGRADKuU6qBQxHlqBvyYXLPHgT3f5obu9zlpA8yvb8HAmYgmgziaBlRjrQbT1oAbBDe8aSO1S3RfLAX3U0aAMVmKsBzEgFoX2oM9/noSltQQ1D/5yXxOcO/aWeUCbCQk2d0RqgFJimpUY60FW6kGXTgRQiUnUPHgjC9aCgPq6/KzEWDCg/68HhcIbkEzR85bZgfoKaKh1mwf03XAIllZ3qAG6drYZLhw/yEqM9SAGZJMm/WOwA1ISPW/Z19ea/Ipi4M1KVmIsGBADKgmQLMsi49EBmp+fD+03jEQikTQMNDQ0dDsSiazvF5x0Oi1PTU09Mww0Ozv7YnBw8O7CwsKqKIoSzTjxeHxnYmLi32AweEd9G6fzK3h452ue55t6enrq29raah0OB0cbTiwWS42NjS2Fw2H8kcMbyOORUSAceKn5GRqNaODvXtL6yVf8pbh7aDxS/+7HKwEGAHtEw4kCzabCAAAAAElFTkSuQmCC"
|
|
438
|
+
},
|
|
439
|
+
XLSX: {
|
|
440
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjNGRUQ5RDNFNzE5RTExRTdBRDQ5QkIzRUIxN0U2M0RGIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjNGRUQ5RDNGNzE5RTExRTdBRDQ5QkIzRUIxN0U2M0RGIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6M0ZFRDlEM0M3MTlFMTFFN0FENDlCQjNFQjE3RTYzREYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6M0ZFRDlEM0Q3MTlFMTFFN0FENDlCQjNFQjE3RTYzREYiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6ifpPZAAAFr0lEQVR42uyce0xbVRzHf32Xlo6utKVlPGoAwSjZkKDEKIkQZzKWLLroNItjU2JEF6NO98j8Q+eGSzQRZnD6h7rh9oe6RKNosrjtD/ERQ4AQBI08xkjrBFtefUDfnt91ZYXQcm5plvZyvsnN7Snn13v45Hd+v985vbeicDgMEYlEIoiWzWZTk9MZclSQIwPSRHK5PKBUKp/WaDSX+dpG8+CYxAJE4GDjF3JUQ5qJwAGtVhv0eDwP84W0HJA4Tt960rkS0lRisViiUqkuOp3OujV9ThyS9cSjZJDGSgakmIBcLpcBBKC1QooJyOfzKUAgWgukeFNMBAJSopDEsI6UCCRpdKPg5Ye0kdezCy6Z0qta+6BEYlDJlakIiaoEWFIHFb6yNZzsAZUY8qG94a1bXgfpdLq4fUKh0Ip1Ep86iE03oQJa7gVrgSRIQKREgWAwmBRIgvWgqamppECSxjO8//a74fxzJxfbz589Dt/1/Xhzsba5Bj5oeH2xvfvDw/DTXz0pAcnv98Pk5CSu7HFVQANLQnQuMzPTTA0I/9mTHR/D4e3PcO23H38J+q1DMO64DgXZZq4dEfZLFTjRnuT1ernXCGs1SAqFQlVYWMhvip2+8vmi12RlZHIehXDQc7AdAYn9UlUymQzMZjNOpbj9AoGAPKEYdOSLFs5ruGKSwOk8ehbK80r+LyjnXXDky9aUj0u0kBIChBAw/qwGL9WF8YgvJOqeGHuWxxh8LzpoCxESNaCm2l1cVosWTjN8P93EBxIVIAQRyWSo6CmF70fikRAhrQoIM1V0rYPT6oETDdw5ouiMlm6QTCZTXEirAsJaBzNXxHN2nz60WDRi8I5ktqa69JtqN2qfuJDEq8UdrJajK+kIFISFGSxWX6FAEuR+UKJyu92ukpISDdsPiqHl3ywzQMmsgxggphW1ZLvD6/QMw43vw4wbdCajwahe6wUKdGbhAJoetb1BTu3oWWp9aK791Y/YFItu+K6MnSenPeQIsckVIwZFIIlE4jDDEyNII6SDO5/9neGJk8WqSytmGB6W5hkgBuhW1kHxNOdxwax7Di73/kz94feUbgajVg8dv9HfaFqWXwR3WUrhQuf31DaGrGyo3XIfuc4lcC/MU9molRnwWM325AHyB/zwt2MC3vyshXrg779wjKyQxbxsXnxkHxTnWnjZVN9RAVsra+DUV2fAaqf7hiVPb6YCxKYYA8QAMUBpkcVABKCQybngRqsMhRJkUikvmw0qDbd5zscGsxjulpp0Rmob2r4xH2bp6+vr0Ov19TfTvBOkEilcm7BRD2KT3sRBHb0+Tm2jz9LBxswsGLJdpbZRkZRdYMiFEXIdzLY0kkllJFsuvdXF4/G4iouLNQmm+QD8MT4MT5zYzyvNF5FBbDvawCvNP1X3KC8bTPPtB1tg3zsHeKX5zvcusBjEgjQDxAAxQOks6jQ/63aCmPx9cHyI+sOLN1kgQ66E/qt/8ioNcrQG6Bnu51E7ZUJZfjH0jQ6C1++jssHyY0vRnclL88FQEMbt/8Cxc/Q3bB7a1QT5BjMvmycf3AH199bysim/rQyO730NTn39KUxM26lscjbq4ZMD7yavkkZP83jnYfAavQfNuV2wkOXjZfPvrIO7n5mPDXoQjm/IOkZdB+HYWAxiQZoBYoAEs90hJ2kxNzsH9u+gX0RaTHlg1GbzsqksKQe1UsXLJp+s5MPhEOzZupMEXyddYFdrklsHrQetVAexKcZiEAPEAKUkIBK8AwxPHEB2u31wvcHw4fPktIDa2tq+mZmZmV0vcMiMCY2MjIxSA7JarWOtra0XHQ7HdJD2AfT0rX8WBgYGRpubm7/lU0lP9Pb29jQ2Ns5UVFToLRZLlkQiEQkNjtvt9nd3d08Q4S2HP1BX0qiqqir8Faq9WM3jagM9UaBOhJtDl7q6un5d/rsf/wkwAFAlV79aj4H7AAAAAElFTkSuQmCC"
|
|
441
|
+
},
|
|
442
|
+
PPTX: {
|
|
443
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjM5MkNCQTUzNzE5RTExRTdBMzlEQzM4NjVBNUE0QTRBIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjM5MkNCQTU0NzE5RTExRTdBMzlEQzM4NjVBNUE0QTRBIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzkyQ0JBNTE3MTlFMTFFN0EzOURDMzg2NUE1QTRBNEEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MzkyQ0JBNTI3MTlFMTFFN0EzOURDMzg2NUE1QTRBNEEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4VZwdsAAAF20lEQVR42uyc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"
|
|
444
|
+
},
|
|
445
|
+
PDF: {
|
|
446
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjI2NTUyNzkzNzE5RTExRTdBQUJEQjIxM0Q0NDhBMzlFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjI2NTUyNzk0NzE5RTExRTdBQUJEQjIxM0Q0NDhBMzlFIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjY1NTI3OTE3MTlFMTFFN0FBQkRCMjEzRDQ0OEEzOUUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MjY1NTI3OTI3MTlFMTFFN0FBQkRCMjEzRDQ0OEEzOUUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4PCmoWAAAHzUlEQVR42uybC0xTVxjH/31AeZWWlxZEO0EFFGEoDjaHaOZgStySacyc7mWimXu5JZPFxSzL5nTPZNmmc3PvadRpfDGdMMmCcQricyoKDEd59CVQCoW0pY+dc10drRRLW7Qt95+c3N7e08f99f995zv33HKsVits4nA46K/W1tZwsvmBtCzSQuEnCg4ONoWEhCwXCoXlQ31tfx4ME2eACBy68ydp98PPROBALBabe3t7C4cKyREQd5C+RaRzNvxUXC6XFxYWVtrd3f2QR+/j7IDFYikijgqCH8sbkJwC0mq1cQgAeQrJKSCDwSBAgMgTSIOFGAcBJHchcTGC5A4kfv+dzaOlYtvjvk5tUJ8w0udPOiginNYn7kByqQSwq4O+lNxj9TdXzK8oQ5Aw4pY6KDo6etDXkRQyYJ00lDqIDbdABeToAk8gBSQgo9EIs9nsFUgB66COjg6vQOIP9cMTZz0IgUj0f0Gp1aLl2HGnx6nocdrPJnqc9nNUQ8khr0Hq6+uDWq2mM3vodDpXYPGItkVERMR7BCh33RuIy5hq91yXrAllK17E9b8uDnjcdvIVr7/JgKJwCrZuuqXPdyn2IL3hJDIjYB5TWLeDRGCGSaVSzxxkU+X6DxgwyY/OR/KCIuR/vAF7ChbYHacnG5eRTvoUMX2oc0oWL7vZhwI99/kWOzcOS60UFIT4+HjI5XI6vA/mumCPQ6y/a6grGEjk5Klr+oeW7fgN9xzGgl+2Mc5xDC1vhpUrkBQKxaCQvJ6k4zKn3gTizAE0B1G3MP0dwo/CpW2gnORt0XxEIZGk7PJr3HZQ1svPM812wue+2HJbxzEuE5Ppiww3YdlyEQW4p+D4HYPkqpP4nn4gDZGGg4dvGyqR0nH/gWoeMAcNV/7xFJLbgOiJuZo/sl5axbiFQmg4eMgunO5UDnIXEn+4vgAd3RJnzWRylC0MbSObr4hCkkgkUCqVTiENHyCSeG2hQ11S8/MOu4LSVyQQCG5CGmgO59blDjqcD+YEx0rbnffw5HKHO6IFpUql0ufm5oZ67KDbnZgrJ+5LoWZzklgsNo2Iyaq74gxwZZIFNNyVNAtohMsuSbcbTX+TQY0JxPBRsRLJ6Nhwn88bXO6dA3RW0/M22fxEnRUVIep6YudPbIj139mHzu1k8zRpFja4nOQgGyQy5FlZPE6SNIVUWPzyJRbPIKPY+NzpnSwedpj3L0Bdfzeg7VINs2Tjk3XQ3dSFjR+jcffeG/XYhPHIKH4N2dnZrIOYmX2HhoGjSk9F9MLHEPNPEyorjrEhZpOpp4fZ9sRGI7nwYcBshkGtZtbYWUBEofES8EIECOnsQnt7O5ukb/kSfD7icu5DrLoNjRdvlF8coZC5ZswC+k/jFsxDsFyJzhOV9BYxiIirWAf1kyQ/D6EJ8YhsbIZOJGSWZFhA/S9b8HhIXfEc87g3WozExEQWkKPCpWOZbaRChdqrV1lAjlKUV9DVPGY06zhciqs+AMlnAFktFrQc+R0d0kSEz8mD5HIdynfsZO4OYwERtVWfgYHUQJrEeMxYW4zwsYkYXXEC+3ftGtL9PAELqOW3MliiRJBMz4IoNgY5H22AwEgmrXtLUHakdGQD6uvqRkvpUVxPkCAzM5N5Tpg8HjM2vAOh8jrk3/+MqqqqkQuocd8BWMwmGNPTkJqa+n9tNDuPmdXHNDTi4qdf4OzZsyPvcoeVTEyv7dwD7dgxuHfmA/ReXLvjo0kBGVNxHKg8hctvrUfzqDhwTCZYSPhZBcHgiSIRlpwEaeFcTEhJGXD52K8BKf44Br1KjfaH87Fo2jToGmWoP1IGFQGir2sAR6+/AZLHhZDURyDTkV6xCPyYKPB0fTDLmtFzvBKnDx2BrPhVzJ07N4AAWa2o/eYHGKNI5aw3onzRUliUKliIi/RxMQiekYWY9MmIz8zAmMlp0NfWo+qNdRB066BNkmLKksWYNGUKzq99C5baOubu+oAKsWbyq3fV1YPO2c1Vp6EllXTsvGVIm1+IcUlJt4RLBBnhCvbvwuUvt0K29wDka9ZBTp638HlQz3oAj8+Z4/0pkLP/zVdXV/+akJBQNBxg1CR8zn3yGfQN12CIFMJ8fzayli7BpMmTXb5F10xCT3nqDJSyRoSkTMQEMvrRe3w8UXd3ty4lJUV41xzU2ypH9dvvofPMOdsvAvmD92Hlm2sRFhY2pPfihYRgzKyZGIOZgTHMy/aV4OjCJ9F2uQba7HvBIb92B8kjOUXzhwwn4OqgK5u+wvl3N6JzVAzCX38FSVw+zCSUzCRv5OTkwJc17IBk+0tQ9+2PUGWkYfrGd5Ck0aL91Gm0TktH0aKFQ/pbQEACqv36O2gmjkfmqpUQyVpwZfNWtE1MQu4zT/nMVcO7OsxzSIEX2q5By+dboKypheaesZj0wgqfWBT0CQfNeH89oqKiwFFfh/6Rh5D34XvIy8+Hv2jYHSSekoaC3dvhr+I6nwVYTWDlHJBcLq8ZaTAMBoPRZUBr1qw52NbWph0pcCwWi/XChQvXXAZUX1/fuHr16lKFQqExmUzmQIaj0+n0VVVVDcuXLy9xebJKd0krJoVc0uzZs2PT0tJEPB6PE2hwyAS1r7y8XNXU1KQhu7sIj5OuAqKi0+NnSaMrevSqRKDe+UrXlo6SdtLxP2P/CjAA8XRVjAP7dCsAAAAASUVORK5CYII="
|
|
447
|
+
},
|
|
448
|
+
PNG: {
|
|
449
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjQ2MEYwMzIxNzE5RTExRTc5Nzk1RTY2REQxNzA5MUM2IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjQ2MEYwMzIyNzE5RTExRTc5Nzk1RTY2REQxNzA5MUM2Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NDYwRjAzMUY3MTlFMTFFNzk3OTVFNjZERDE3MDkxQzYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NDYwRjAzMjA3MTlFMTFFNzk3OTVFNjZERDE3MDkxQzYiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7MA++rAAAG1ElEQVR42uyc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"
|
|
450
|
+
},
|
|
451
|
+
RAR: {
|
|
452
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJFNDM2NDhBNzE5RTExRTc4MTQ0QTI5QjhEN0YwRTg3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJFNDM2NDhCNzE5RTExRTc4MTQ0QTI5QjhEN0YwRTg3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkU0MzY0ODg3MTlFMTFFNzgxNDRBMjlCOEQ3RjBFODciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkU0MzY0ODk3MTlFMTFFNzgxNDRBMjlCOEQ3RjBFODciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7A+Lq9AAAFaElEQVR42uycb0wbZRzHf9e/x9FCLXTQUVamITNzC6vahJhlm/+ji4sajcYYsxlezRfOmJj4xj+J4a3jBS4xMVuMvjNkiomZSra9mBg77GZW3gjIsFBGS9dC29E/1/P5XSgplZZeexx3x33J5bknPA+555Pfv+eOO4rjOCiIoigo1uzsbCNpLpDDQ44GUIhMJlOOpum3rVbriNC5xTx4JuUAETjY+Y0cvaAwEThgs9nYVCr1rFBIpYB0FcYeJ4MfAYVKp9PpGYa5tLy8/GRdf6cCyePEooygYIkBqSygRCLhABWoXkhlAWUyGTOoRPVAquRiFKhItULSwQ5SLZAMxR3bFzdthfO7WTCas5y86x09gFlH1QqpqhJgXR1037m/OCVZxOl9DLzzILNhHWS32yvOzefzG9ZJQuogzd3UCqjUCuqBpEpApEQBlmVFgaRaC4pGo6JAMqg1xmSzWVhYWMCdPe4KqoGlJ/rGYrE4RQF0zGUBm1m/4e9uhO9BLM3yY7C9EkzwY7FfOm56KbOllpROp/lzhLUZJLPZzLjdbnEs6ONeJxxybHyL6NPfQ/zCzz/j5iFc+e5vHg72S3VhPArvXQ1uqTUZjUZwOp0wNzeH6b3suFwuZxLNxRBCsQUddVnh5H47DwYXXWotxVYz4F+AriYTvOvZxc+5GU7xc6SAFAqFKkISDRC6zVoFTkB9ftTFn6M1oFtV0sXJON/2OBh48YFmcDdJsy/GeCQUkihZDF0HIZ31h9eB20xoRah4Oifd9mQVEslcW2tBxbEI3QnBoNtVA+XyK908UDxHl0Owku7hBFhSXRaE7nHG4+Bd6tTPtwXNxTkI9KXhqe3Z6FZpSTVbUHHcwYVuFncKwiD+OMlqsrgbQCC1t7fD/Px8WUuqGRDCQUi4YAyy6GoFYVZSikjtswZJNEAIBt2rEFPQzYqFMUWJkMLhsHj3g8pV0YX4UhhT7Hql/a26H1Srkslkoru72yqKi1Wz0NIxYsLZCpU+WVbtbl5MaYA0QPVpXQxi52YmYPV5mKOJbne4OhrlfPGttE5aQOmR4U9I8zVvWY7mpaFzZzQXK+5kRr/8ljRvkSOvOVeZGFSARFIep+EpE6QR0gevH7ml4amQxXr3d8Y0PCI+1chks3A7Eoc8J0/PNOko2Nveuj2AJhYT8Jk/Br4kjQW7bK3hZfu/8L6nBWwWpn4XE6KvAtFVOPLWULQBLk4KixyiAPonwSompkwLvNYdt9UQGiK1vZgGSAaAGINyODMGSnpATzlNioBj0bHwhMAbFKLUQW8cdEJHYgzuzUyAjpVnRmNNNLQdOAQPd7ZJDyhy/Rp4h86CIZ2UtQWtjLsgfupDaO7cK62L5Ud/kj0cFB0JQsZ3WfoYxCXiyqmDBF6rluY1QBog+QOirHbFLJhqsksPyHTsBOQYq+zhrDjvh8bHnpa+DmL2HYSrb74KM8vjZLcsz0LRoDfDgZbD8Oiu3dIDGpn+Hn7MnZf9i+PXE9fAGGyAHpdXWhe7tfSHMmog8hNY8kkfgzLcimKCdIZLa2leq4MUVwcpiLPQaxVlZU7arRhATnqP9ICe3/MaPETJ+xsopjwNh80vwJHO56Svg9qaOuB0z0cQCs/xyVSWgIxmaLFt06PnNfN17Aa1SctitQLiOC6n4akAKBKJjO80GBl8n7xaQIODgz/EYrH4ToFDPCY/OTk5VTWgYDA4PTAwcGlxcfEuy7KsmuGkUqmVQCAw1d/fPywki93x+/1/9vX1xTweT2tXV1ezXq+n1AYnmUxmx8bG7hDhPw798r/Ku9JnAr1eL75te5IcnVhKyLbIqV/4ou2vPp9vtPS7H/8JMACCejtl/KmtzgAAAABJRU5ErkJggg=="
|
|
453
|
+
},
|
|
454
|
+
DWG: {
|
|
455
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjMzRDdCMUUxNzE5RTExRTc5RDY3OTkxN0RFOEQyQTUwIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjMzRDdCMUUyNzE5RTExRTc5RDY3OTkxN0RFOEQyQTUwIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzNEN0IxREY3MTlFMTFFNzlENjc5OTE3REU4RDJBNTAiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MzNEN0IxRTA3MTlFMTFFNzlENjc5OTE3REU4RDJBNTAiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz51XZ5UAAAGNUlEQVR42uyc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"
|
|
456
|
+
},
|
|
457
|
+
MOV: {
|
|
458
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBCODZGMjg0NzE5RTExRTc4REI0OTBDODFEQkVCQUU5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBCODZGMjg1NzE5RTExRTc4REI0OTBDODFEQkVCQUU5Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEI4NkYyODI3MTlFMTFFNzhEQjQ5MEM4MURCRUJBRTkiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MEI4NkYyODM3MTlFMTFFNzhEQjQ5MEM4MURCRUJBRTkiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4BPIErAAALQUlEQVR42uxc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"
|
|
459
|
+
},
|
|
460
|
+
MP3: {
|
|
461
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjE4NUIxMTQyNzE5RTExRTc5MkREQTRGMDA4OTFBOEI4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjE4NUIxMTQzNzE5RTExRTc5MkREQTRGMDA4OTFBOEI4Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTg1QjExNDA3MTlFMTFFNzkyRERBNEYwMDg5MUE4QjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTg1QjExNDE3MTlFMTFFNzkyRERBNEYwMDg5MUE4QjgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz69naflAAAK3klEQVR42uyb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"
|
|
462
|
+
},
|
|
463
|
+
MP4: {
|
|
464
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBCODZGMjg0NzE5RTExRTc4REI0OTBDODFEQkVCQUU5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBCODZGMjg1NzE5RTExRTc4REI0OTBDODFEQkVCQUU5Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEI4NkYyODI3MTlFMTFFNzhEQjQ5MEM4MURCRUJBRTkiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MEI4NkYyODM3MTlFMTFFNzhEQjQ5MEM4MURCRUJBRTkiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4BPIErAAALQUlEQVR42uxc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"
|
|
465
|
+
},
|
|
466
|
+
HTML: {
|
|
467
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjAzMjkzMkRFNzE5RTExRTdBMkJFODdBOUUwQjFGRTUyIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjAzMjkzMkRGNzE5RTExRTdBMkJFODdBOUUwQjFGRTUyIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MDMyOTMyREM3MTlFMTFFN0EyQkU4N0E5RTBCMUZFNTIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDMyOTMyREQ3MTlFMTFFN0EyQkU4N0E5RTBCMUZFNTIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6xFdZcAAAGTElEQVR42uyc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"
|
|
468
|
+
},
|
|
469
|
+
NONE: {
|
|
470
|
+
img: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjIwQ0VDMEY0NzE5RTExRTc5QkRGRDJEMjlGQjM1MkE0IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjIwQ0VDMEY1NzE5RTExRTc5QkRGRDJEMjlGQjM1MkE0Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjBDRUMwRjI3MTlFMTFFNzlCREZEMkQyOUZCMzUyQTQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MjBDRUMwRjM3MTlFMTFFNzlCREZEMkQyOUZCMzUyQTQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5KbLK5AAAGIklEQVR42uyc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"
|
|
471
|
+
}
|
|
472
|
+
};
|
|
473
|
+
let src = "";
|
|
474
|
+
switch (fileType) {
|
|
475
|
+
case "rar":
|
|
476
|
+
case "zip":
|
|
477
|
+
src = fileicons.RAR.img;
|
|
478
|
+
break;
|
|
479
|
+
case "doc":
|
|
480
|
+
case "docx":
|
|
481
|
+
src = fileicons.DOCX.img;
|
|
482
|
+
break;
|
|
483
|
+
case "xls":
|
|
484
|
+
case "xlsx":
|
|
485
|
+
src = fileicons.XLSX.img;
|
|
486
|
+
break;
|
|
487
|
+
case "pdf":
|
|
488
|
+
src = fileicons.PDF.img;
|
|
489
|
+
break;
|
|
490
|
+
case "ppt":
|
|
491
|
+
case "pptx":
|
|
492
|
+
src = fileicons.PPTX.img;
|
|
493
|
+
break;
|
|
494
|
+
case "png":
|
|
495
|
+
case "jpg":
|
|
496
|
+
src = fileicons.PNG.img;
|
|
497
|
+
break;
|
|
498
|
+
case "mov":
|
|
499
|
+
src = fileicons.MOV.img;
|
|
500
|
+
break;
|
|
501
|
+
case "mp3":
|
|
502
|
+
src = fileicons.MP3.img;
|
|
503
|
+
break;
|
|
504
|
+
case "mp4":
|
|
505
|
+
src = fileicons.MP4.img;
|
|
506
|
+
break;
|
|
507
|
+
case "html":
|
|
508
|
+
case "htm":
|
|
509
|
+
src = fileicons.HTML.img;
|
|
510
|
+
break;
|
|
511
|
+
default:
|
|
512
|
+
src = fileicons.NONE.img;
|
|
513
|
+
break;
|
|
514
|
+
}
|
|
515
|
+
return src;
|
|
516
|
+
});
|
|
517
|
+
/**
|
|
518
|
+
* 预览文件
|
|
519
|
+
* @param fileInfo
|
|
520
|
+
*/
|
|
521
|
+
__publicField(this, "doView", (fileInfo) => {
|
|
522
|
+
this.previewFileInfo = fileInfo;
|
|
523
|
+
this.previewVisible.value = true;
|
|
524
|
+
this.previewIndex.value = fileInfo.PreviewIndex;
|
|
525
|
+
});
|
|
526
|
+
this.props = props;
|
|
527
|
+
this.ctx = ctx;
|
|
528
|
+
this.useUploadFile();
|
|
529
|
+
}
|
|
530
|
+
// 私有方法 | private 方法名() {}
|
|
531
|
+
/**
|
|
532
|
+
* 初始化文件上传附件
|
|
533
|
+
*/
|
|
534
|
+
async useUploadFile() {
|
|
535
|
+
watch(() => this.props.token, (newToken, oldToken) => {
|
|
536
|
+
this.setCurrentToken();
|
|
537
|
+
this.setUploadFilePos();
|
|
538
|
+
});
|
|
539
|
+
this.setCurrentToken();
|
|
540
|
+
this.setUploadFilePos();
|
|
541
|
+
this.headers.value.Authorization = `Bearer ${this.storageInfo.getToken()}`;
|
|
542
|
+
this.action.value = this.uploadApi.getUploadFileUrl();
|
|
543
|
+
}
|
|
544
|
+
/**
|
|
545
|
+
* 设置当前Token
|
|
546
|
+
*/
|
|
547
|
+
setCurrentToken() {
|
|
548
|
+
this.currentToken = this.utilities.getValueNotNull(this.props.token, this.utilities.getUniqueCode().replaceAll("-", ""));
|
|
549
|
+
this.loadFileList();
|
|
550
|
+
}
|
|
551
|
+
/**
|
|
552
|
+
* 设置文件上传参数
|
|
553
|
+
*/
|
|
554
|
+
setUploadFilePos() {
|
|
555
|
+
for (const groupName of this.props.groups) {
|
|
556
|
+
const uploadFilePo = this.getUploadFilePo(groupName);
|
|
557
|
+
this.uploadFilePos[groupName] = uploadFilePo;
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
/**
|
|
561
|
+
* 获取文件上传参数
|
|
562
|
+
* @param groupName
|
|
563
|
+
*/
|
|
564
|
+
getUploadFilePo(groupName) {
|
|
565
|
+
return this.uploadApi.getBaseFilePo(this.currentToken, this.props.catalog, groupName, this.props.extraInfo, this.props.isCompress);
|
|
566
|
+
}
|
|
567
|
+
/**
|
|
568
|
+
* 获取文件列表
|
|
569
|
+
* @returns
|
|
570
|
+
*/
|
|
571
|
+
async loadFileList() {
|
|
572
|
+
this.uploading.value = true;
|
|
573
|
+
const apiResult = await this.fileInfoApi.getEntities(QueryWrapper.create().eq("Token", this.currentToken));
|
|
574
|
+
this.fileList.value = this.utilities.parseApiResult(apiResult);
|
|
575
|
+
this.uploading.value = false;
|
|
576
|
+
this.setPreviewList();
|
|
577
|
+
}
|
|
578
|
+
// 私有方法 | private 方法名() {}
|
|
579
|
+
/**
|
|
580
|
+
* 设置预览列表
|
|
581
|
+
*/
|
|
582
|
+
setPreviewList() {
|
|
583
|
+
let index = 0;
|
|
584
|
+
for (const fileInfo of this.fileList.value) {
|
|
585
|
+
if (this.isImage(fileInfo)) {
|
|
586
|
+
fileInfo.PreviewIndex = index;
|
|
587
|
+
this.previewList.value.push(this.getImgUrl(fileInfo));
|
|
588
|
+
index++;
|
|
589
|
+
}
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
//#endregion 业务逻辑 文件预览 END
|
|
593
|
+
}
|
|
594
|
+
const UploadFile_vue_vue_type_style_index_0_scoped_8a539c5e_lang = "";
|
|
595
|
+
const _hoisted_1 = ["onClick", "title"];
|
|
596
|
+
const _hoisted_2 = { class: "file-upload-list-cover" };
|
|
597
|
+
const _hoisted_3 = { class: "file-upload-btn" };
|
|
598
|
+
const _hoisted_4 = { class: "file-upload-list-cover" };
|
|
599
|
+
const _hoisted_5 = { class: "file-upload-btn" };
|
|
600
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
601
|
+
const _component_Image = resolveComponent("Image");
|
|
602
|
+
const _component_Icon = resolveComponent("Icon");
|
|
603
|
+
const _component_Space = resolveComponent("Space");
|
|
604
|
+
const _component_Upload = resolveComponent("Upload");
|
|
605
|
+
const _component_Card = resolveComponent("Card");
|
|
606
|
+
const _component_Spin = resolveComponent("Spin");
|
|
607
|
+
const _component_filePreview = resolveComponent("filePreview");
|
|
608
|
+
return openBlock(), createElementBlock("div", {
|
|
609
|
+
class: "uploadFile",
|
|
610
|
+
style: normalizeStyle(_ctx.single ? { padding: "0px" } : { padding: "8px" })
|
|
611
|
+
}, [
|
|
612
|
+
!_ctx.single ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(_ctx.groups, (groupName) => {
|
|
613
|
+
return openBlock(), createBlock(_component_Card, {
|
|
614
|
+
"dis-hover": "",
|
|
615
|
+
style: { "margin-bottom": "8px" }
|
|
616
|
+
}, createSlots({
|
|
617
|
+
default: withCtx(() => [
|
|
618
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.getGroupFiles(groupName), (item, index) => {
|
|
619
|
+
return openBlock(), createElementBlock("div", {
|
|
620
|
+
class: normalizeClass(_ctx.isImage(item) ? "file-upload-list file-upload-list-bs" : "file-upload-list")
|
|
621
|
+
}, [
|
|
622
|
+
createElementVNode("div", {
|
|
623
|
+
class: "file-upload-list-content",
|
|
624
|
+
onClick: ($event) => _ctx.doView(item),
|
|
625
|
+
title: item.FileName
|
|
626
|
+
}, [
|
|
627
|
+
createVNode(_component_Image, {
|
|
628
|
+
src: _ctx.getThumbnailUrl(item),
|
|
629
|
+
fit: "cover",
|
|
630
|
+
width: "100%",
|
|
631
|
+
height: "100%"
|
|
632
|
+
}, null, 8, ["src"]),
|
|
633
|
+
createElementVNode("div", _hoisted_2, [
|
|
634
|
+
createVNode(_component_Space, null, {
|
|
635
|
+
default: withCtx(() => [
|
|
636
|
+
createVNode(_component_Icon, {
|
|
637
|
+
type: "md-download",
|
|
638
|
+
onClick: withModifiers(($event) => _ctx.doDwonload(item), ["stop"]),
|
|
639
|
+
title: "下载"
|
|
640
|
+
}, null, 8, ["onClick"]),
|
|
641
|
+
!_ctx.readonly ? (openBlock(), createBlock(_component_Icon, {
|
|
642
|
+
key: 0,
|
|
643
|
+
type: "md-trash",
|
|
644
|
+
onClick: withModifiers(($event) => _ctx.doRemove(item), ["stop"]),
|
|
645
|
+
title: "删除"
|
|
646
|
+
}, null, 8, ["onClick"])) : createCommentVNode("", true)
|
|
647
|
+
]),
|
|
648
|
+
_: 2
|
|
649
|
+
}, 1024)
|
|
650
|
+
])
|
|
651
|
+
], 8, _hoisted_1)
|
|
652
|
+
], 2);
|
|
653
|
+
}), 256)),
|
|
654
|
+
!_ctx.readonly ? (openBlock(), createBlock(_component_Upload, {
|
|
655
|
+
key: 0,
|
|
656
|
+
ref_for: true,
|
|
657
|
+
ref: "uploadRef",
|
|
658
|
+
type: "drag",
|
|
659
|
+
name: "FormFile",
|
|
660
|
+
multiple: _ctx.multiple,
|
|
661
|
+
"show-upload-list": false,
|
|
662
|
+
format: _ctx.format,
|
|
663
|
+
"max-size": _ctx.maxSize,
|
|
664
|
+
action: _ctx.action,
|
|
665
|
+
headers: _ctx.headers,
|
|
666
|
+
data: _ctx.uploadFilePos[groupName],
|
|
667
|
+
"on-success": _ctx.doSuccess,
|
|
668
|
+
"on-format-error": _ctx.doFormatError,
|
|
669
|
+
"on-exceeded-size": _ctx.doMaxSize,
|
|
670
|
+
"before-upload": _ctx.doBeforeUpload,
|
|
671
|
+
style: { "display": "inline-block", "width": "78px" }
|
|
672
|
+
}, {
|
|
673
|
+
default: withCtx(() => [
|
|
674
|
+
createElementVNode("div", _hoisted_3, [
|
|
675
|
+
createVNode(_component_Icon, {
|
|
676
|
+
type: "ios-camera",
|
|
677
|
+
size: "20"
|
|
678
|
+
})
|
|
679
|
+
])
|
|
680
|
+
]),
|
|
681
|
+
_: 2
|
|
682
|
+
}, 1032, ["multiple", "format", "max-size", "action", "headers", "data", "on-success", "on-format-error", "on-exceeded-size", "before-upload"])) : createCommentVNode("", true)
|
|
683
|
+
]),
|
|
684
|
+
_: 2
|
|
685
|
+
}, [
|
|
686
|
+
groupName != "默认" ? {
|
|
687
|
+
name: "title",
|
|
688
|
+
fn: withCtx(() => [
|
|
689
|
+
createTextVNode(toDisplayString(groupName), 1)
|
|
690
|
+
]),
|
|
691
|
+
key: "0"
|
|
692
|
+
} : void 0
|
|
693
|
+
]), 1024);
|
|
694
|
+
}), 256)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
695
|
+
_ctx.getFirstFile(_ctx.groups[0]) ? (openBlock(), createElementBlock("div", {
|
|
696
|
+
key: 0,
|
|
697
|
+
class: "file-upload-list-content",
|
|
698
|
+
onClick: _cache[2] || (_cache[2] = ($event) => _ctx.doView(_ctx.getFirstFile(_ctx.groups[0]))),
|
|
699
|
+
style: { "width": "100%", "height": "100%" }
|
|
700
|
+
}, [
|
|
701
|
+
createVNode(_component_Image, {
|
|
702
|
+
src: _ctx.getThumbnailUrl(_ctx.getFirstFile(_ctx.groups[0])),
|
|
703
|
+
fit: "fill",
|
|
704
|
+
width: "100%",
|
|
705
|
+
height: "100%"
|
|
706
|
+
}, null, 8, ["src"]),
|
|
707
|
+
createElementVNode("div", _hoisted_4, [
|
|
708
|
+
createVNode(_component_Space, null, {
|
|
709
|
+
default: withCtx(() => [
|
|
710
|
+
createVNode(_component_Icon, {
|
|
711
|
+
type: "md-download",
|
|
712
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.doDwonload(_ctx.getFirstFile(_ctx.groups[0])), ["stop"])),
|
|
713
|
+
title: "下载"
|
|
714
|
+
}),
|
|
715
|
+
!_ctx.readonly ? (openBlock(), createBlock(_component_Icon, {
|
|
716
|
+
key: 0,
|
|
717
|
+
type: "md-trash",
|
|
718
|
+
onClick: _cache[1] || (_cache[1] = withModifiers(($event) => _ctx.doRemove(_ctx.getFirstFile(_ctx.groups[0])), ["stop"])),
|
|
719
|
+
title: "删除"
|
|
720
|
+
})) : createCommentVNode("", true)
|
|
721
|
+
]),
|
|
722
|
+
_: 1
|
|
723
|
+
})
|
|
724
|
+
])
|
|
725
|
+
])) : createCommentVNode("", true),
|
|
726
|
+
!_ctx.readonly && !_ctx.getSingle(_ctx.groups[0]) ? (openBlock(), createBlock(_component_Card, {
|
|
727
|
+
key: 1,
|
|
728
|
+
"dis-hover": "",
|
|
729
|
+
style: { "margin-bottom": "8px" }
|
|
730
|
+
}, {
|
|
731
|
+
default: withCtx(() => [
|
|
732
|
+
createVNode(_component_Upload, {
|
|
733
|
+
ref: "uploadRef",
|
|
734
|
+
type: "drag",
|
|
735
|
+
name: "FormFile",
|
|
736
|
+
multiple: _ctx.multiple,
|
|
737
|
+
"show-upload-list": false,
|
|
738
|
+
format: _ctx.format,
|
|
739
|
+
"max-size": _ctx.maxSize,
|
|
740
|
+
action: _ctx.action,
|
|
741
|
+
headers: _ctx.headers,
|
|
742
|
+
data: _ctx.uploadFilePos[_ctx.groups[0]],
|
|
743
|
+
"on-success": _ctx.doSuccess,
|
|
744
|
+
"on-format-error": _ctx.doFormatError,
|
|
745
|
+
"on-exceeded-size": _ctx.doMaxSize,
|
|
746
|
+
"before-upload": _ctx.doBeforeUpload,
|
|
747
|
+
style: { "display": "inline-block", "width": "78px" }
|
|
748
|
+
}, {
|
|
749
|
+
default: withCtx(() => [
|
|
750
|
+
createElementVNode("div", _hoisted_5, [
|
|
751
|
+
createVNode(_component_Icon, {
|
|
752
|
+
type: "ios-camera",
|
|
753
|
+
size: "20"
|
|
754
|
+
})
|
|
755
|
+
])
|
|
756
|
+
]),
|
|
757
|
+
_: 1
|
|
758
|
+
}, 8, ["multiple", "format", "max-size", "action", "headers", "data", "on-success", "on-format-error", "on-exceeded-size", "before-upload"])
|
|
759
|
+
]),
|
|
760
|
+
_: 1
|
|
761
|
+
})) : createCommentVNode("", true)
|
|
762
|
+
], 64)),
|
|
763
|
+
_ctx.uploading ? (openBlock(), createBlock(_component_Spin, {
|
|
764
|
+
key: 2,
|
|
765
|
+
fix: ""
|
|
766
|
+
})) : createCommentVNode("", true),
|
|
767
|
+
createVNode(_component_filePreview, {
|
|
768
|
+
modelValue: _ctx.previewVisible,
|
|
769
|
+
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => _ctx.previewVisible = $event),
|
|
770
|
+
"preview-list": _ctx.previewList,
|
|
771
|
+
"preview-index": _ctx.previewIndex,
|
|
772
|
+
"file-info": _ctx.previewFileInfo
|
|
773
|
+
}, null, 8, ["modelValue", "preview-list", "preview-index", "file-info"])
|
|
774
|
+
], 4);
|
|
775
|
+
}
|
|
776
|
+
const UploadFile = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-8a539c5e"]]);
|
|
777
|
+
export {
|
|
778
|
+
filePreview as FilePreview,
|
|
779
|
+
UploadFile
|
|
780
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports,require("@newview/base-vue"),require("vue"),require("@newview/infrastructure"),require("@newview/fileservice-api")):"function"==typeof define&&define.amd?define(["exports","@newview/base-vue","vue","@newview/infrastructure","@newview/fileservice-api"],i):i((e="undefined"!=typeof globalThis?globalThis:e||self).fileui={},e.baseVue,e.Vue,e.infrastructure,e.fileserviceApi)}(this,(function(e,i,l,t,A){"use strict";var o=Object.defineProperty,s=(e,i,l)=>(((e,i,l)=>{i in e?o(e,i,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[i]=l})(e,"symbol"!=typeof i?i+"":i,l),l);const a={modelValue:{type:Boolean,default:!1},fileInfo:{type:Object,default:()=>{}},previewList:{type:Array,default:()=>[]},previewIndex:{type:Number,default:0}},I=l.defineComponent({name:"FilePreview",components:{},emits:["update:modelValue"],props:a,setup:(e,i)=>new d(e,i)});class d extends i.BaseInstance{constructor(e,i){super(),s(this,"props"),s(this,"ctx"),s(this,"ossFileApi",new A.OSSFileApi),s(this,"fileApi",new A.FileApi),s(this,"previewImage",l.ref(!1)),s(this,"previewIfr",l.ref(!1)),s(this,"ifrUrl",l.ref("")),s(this,"doClose",(e=>{e||this.ctx.emit("update:modelValue",!1)})),this.props=e,this.ctx=i,this.useFilePreview()}useFilePreview(){l.watch((()=>this.props.modelValue),(()=>{this.props.modelValue&&this.doView(this.props.fileInfo)})),this.props.modelValue&&this.doView(this.props.fileInfo)}async doView(e){const i=await this.ossFileApi.getSignatureUrlByFileInfo(e);if(this.isImage(e))this.previewImage.value=!0;else if(this.isOffice(e))this.ifrUrl.value=`https://view.officeapps.live.com/op/embed.aspx?src=${encodeURIComponent(i)}`,this.previewIfr.value=!0;else if(this.isVedio(e))this.ifrUrl.value=`${i}`,this.previewIfr.value=!0;else if(this.isPDF(e))this.ifrUrl.value=`/static/pdfjs-dist/web/viewer.html?file=${encodeURIComponent(i)}`,this.previewIfr.value=!0;else{const i=this.fileApi.getFileUrl(e.Token,e.Id);window.open(i)}}isOffice(e){const i=e.FileExt;return"doc"==i||"docx"==i||"ppt"==i||"pptx"==i||"xls"==i||"xlsx"==i}isVedio(e){const i=e.FileExt;return"mov"==i||"mp3"==i||"mp4"==i}isPDF(e){return"pdf"==e.FileExt}isImage(e){const i=e.FileExt;return"jpg"==i||"png"==i||"jpeg"==i||"gif"==i||"svg"==i}}const g=(e,i)=>{const l=e.__vccOpts||e;for(const[t,A]of i)l[t]=A;return l},n={class:"ifr-container"},c=["src","title"];const p=g(I,[["render",function(e,i,t,A,o,s){const a=l.resolveComponent("ImagePreview"),I=l.resolveComponent("Modal");return l.openBlock(),l.createElementBlock(l.Fragment,null,[l.createVNode(a,{modelValue:e.previewImage,"onUpdate:modelValue":i[0]||(i[0]=i=>e.previewImage=i),"preview-list":e.previewList,"initial-index":e.previewIndex,onOnClose:e.doClose},null,8,["modelValue","preview-list","initial-index","onOnClose"]),l.createVNode(I,{modelValue:e.previewIfr,"onUpdate:modelValue":i[1]||(i[1]=i=>e.previewIfr=i),fullscreen:"",mask:!0,"mask-closable":!1,width:1e3,"footer-hide":"",title:"文件预览 - "+e.fileInfo.FileName,onOnVisibleChange:e.doClose},{default:l.withCtx((()=>[l.createElementVNode("div",n,[l.createElementVNode("iframe",{src:e.ifrUrl,class:"ifr-content",title:e.fileInfo.fileInfo}," ",8,c)])])),_:1},8,["modelValue","title","onOnVisibleChange"])],64)}],["__scopeId","data-v-071f536d"]]),m={linkParam:{type:String,default:""},operates:{type:String,default:"-"},token:{type:String,default:""},catalog:{type:String,default:"root"},groups:{type:Array,default:()=>["默认"]},extraInfo:{type:String,default:""},isCompress:{type:Boolean,default:!1},format:{type:Array,default:()=>[]},maxSize:{type:Number,default:0},multiple:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},single:{type:Boolean,default:!1}},E=l.defineComponent({name:"UploadFile",components:{filePreview:p},emits:["success"],props:m,setup:(e,i)=>new R(e,i)});class R extends i.BaseInstance{constructor(e,i){super(),s(this,"props"),s(this,"ctx"),s(this,"uploadApi",new A.UploadApi),s(this,"fileInfoApi",new A.FileInfoApi),s(this,"fileApi",new A.FileApi),s(this,"currentToken",""),s(this,"fileList",l.ref([])),s(this,"uploading",l.ref(!1)),s(this,"uploadFilePos",l.reactive({})),s(this,"action",l.ref("")),s(this,"headers",l.ref({Authorization:""})),s(this,"doSuccess",((e,i,l)=>{const t=this.utilities.parseApiResult(e);this.uploading.value=!1,"0"==t.Code?(this.message.success("上传成功"),this.ctx.emit("success",{token:t.Token,fileId:t.FileId}),this.loadFileList()):this.message.error(t.Msg)})),s(this,"doFormatError",(()=>{this.message.warning("当前上传的文件格式不正确,请重新上传"),this.uploading.value=!1})),s(this,"doMaxSize",(()=>{this.props.maxSize/1024>=1?this.message.warning("文件太大超出上传限制,文件大小不得大于"+(this.props.maxSize/1024).toFixed(1)+"M"):this.message.warning("文件太大超出上传限制,文件大小不得大于"+this.props.maxSize+"KB"),this.uploading.value=!1})),s(this,"doBeforeUpload",(()=>{this.message.info("文件上传中,请稍等"),this.uploading.value=!0})),s(this,"doRemove",(e=>{this.modal.confirm({title:"提示",content:`数据删除后不可恢复,<br/>确定要删除 ${e.FileName} 文件吗?`,onOk:async()=>{this.uploading.value=!0;const i=await this.fileApi.deleteFile(e.Token,e.Id);this.utilities.parseApiResult(i)<=0?(this.message.warning("删除失败,请稍后重试!"),this.uploading.value=!1):(this.loadFileList(),this.message.success("删除成功"),this.uploading.value=!1)}})})),s(this,"doDwonload",(e=>{const i=this.fileApi.getFileUrl(e.Token,e.Id);window.open(i)})),s(this,"getGroupFiles",(e=>"默认"==e?this.fileList.value:this.fileList.value.filter((i=>i.GroupName==e)))),s(this,"getSingle",(e=>{const i=this.getGroupFiles(e);return this.props.single&&i.length>0})),s(this,"getFirstFile",(e=>{const i=this.getGroupFiles(e);return 0==i.length?void 0:i[0]})),s(this,"previewVisible",l.ref(!1)),s(this,"previewList",l.ref([])),s(this,"previewIndex",l.ref(0)),s(this,"previewFileInfo",l.ref({})),s(this,"isImage",(e=>{const i=e.FileExt;return"jpg"==i||"png"==i||"jpeg"==i||"gif"==i||"svg"==i})),s(this,"getImgUrl",(e=>this.fileApi.getFileUrl(e.Token,e.Id))),s(this,"getThumbnailUrl",(e=>this.isImage(e)?this.getImgUrl(e):this.getFileIcon(e.FileExt))),s(this,"getFileIcon",(e=>{const i={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjRCOTIzMDEwNzE5RTExRTdBOEQ5Q0NFM0IyNDAxOEEyIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjRCOTIzMDExNzE5RTExRTdBOEQ5Q0NFM0IyNDAxOEEyIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NEI5MjMwMEU3MTlFMTFFN0E4RDlDQ0UzQjI0MDE4QTIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NEI5MjMwMEY3MTlFMTFFN0E4RDlDQ0UzQjI0MDE4QTIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz60rcnLAAAEVklEQVR42uzcS2gbRxgA4H9XlmTLr0W2W6mJUeIaG7sxdWkdGkOoqQOJk4ZACPhQkxSVJIccTEvdUw+l7aVQeumxPZRQmxhCDkkpDcSUQOI4+BKDrYvTJCj4iSw/JD8k7Wozs1RivGhXK2ur7I7nh0G70qwtffz/r1m9OFmWIRMcxwEZc3NzlejidzTeQ6MCbBIul0ssLy8PVldXjxV6LOmhmGgBIRy8M47Gh2CzQDggCIK0tbV1slAkNRCvM/cMmvw+2DR4nnd4PJ67sVist6i/o3VDOp0+gzLKCTYOM5A0gdbX1xuAgigWSRMokUi4gZIoBkmvxDigKPaKxMM+ir0glZE7LZ8OC5ntjS3JWbMtmnCnOPC4HVZEMrQE2LUOah0Ykc2+Q2/7q+C3Lz4o+TrI6/XqzkEtJOc6qZB1ECs3WoHUWVAMEpVAyWQSJEkyBYnaDIpGo6YglWkd9FV/J1w+265sD/7yAP5+HIZ3Dnvh1vensnN+vROCn0afKNv4enw7jq6rN2FjM/lakVKpFCwvL+Mze4jH40awHCj+qKqq8hsCmn4RzW4fOeRVgLqP+HbNUfZHAWoqXVmcmefR145DZhI6I1C2MVY+JITpCQQCxkpsfHpxN8R/UGRgFIxDwpHHWSWcTif4/X5cSvmyzmW4B+EswNmgBUHikXBk5tkRqaAm/XI5nt3u/7hZQVIHxrF6BhElVDCS7kwyG6580p4TAcNZsf+YhaQ7i4Qgs2f0n6dZCPJ6K2fPXpF0Z2hlBIaYfh7VzThakPISqrMigzaTA8guGUQi+Xw+XaS8QGSjJhHU2WKH/pMr3G63LlJeIDVEZl+dLXbLHqNIZfkOxivo1scjOddJrQMj1Jy/YSRBEMR9cbK611C/s8yAil0HsWBAeWNXk97e2X4KICuFWF/j9vnqaiuL/QeNb3joAVqKLH6LLq7jzCqTPRt//tDLSozcSd7/ZhhdXEQjzYpLowdlkHgOZMaj0aQx0pfn26cZj86z2NGWujXGw57mGRADKuU6qBQxHlqBvyYXLPHgT3f5obu9zlpA8yvb8HAmYgmgziaBlRjrQbT1oAbBDe8aSO1S3RfLAX3U0aAMVmKsBzEgFoX2oM9/noSltQQ1D/5yXxOcO/aWeUCbCQk2d0RqgFJimpUY60FW6kGXTgRQiUnUPHgjC9aCgPq6/KzEWDCg/68HhcIbkEzR85bZgfoKaKh1mwf03XAIllZ3qAG6drYZLhw/yEqM9SAGZJMm/WOwA1ISPW/Z19ea/Ipi4M1KVmIsGBADKgmQLMsi49EBmp+fD+03jEQikTQMNDQ0dDsSiazvF5x0Oi1PTU09Mww0Ozv7YnBw8O7CwsKqKIoSzTjxeHxnYmLi32AweEd9G6fzK3h452ue55t6enrq29raah0OB0cbTiwWS42NjS2Fw2H8kcMbyOORUSAceKn5GRqNaODvXtL6yVf8pbh7aDxS/+7HKwEGAHtEw4kCzabCAAAAAElFTkSuQmCC"},l={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjNGRUQ5RDNFNzE5RTExRTdBRDQ5QkIzRUIxN0U2M0RGIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjNGRUQ5RDNGNzE5RTExRTdBRDQ5QkIzRUIxN0U2M0RGIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6M0ZFRDlEM0M3MTlFMTFFN0FENDlCQjNFQjE3RTYzREYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6M0ZFRDlEM0Q3MTlFMTFFN0FENDlCQjNFQjE3RTYzREYiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6ifpPZAAAFr0lEQVR42uyce0xbVRzHf32Xlo6utKVlPGoAwSjZkKDEKIkQZzKWLLroNItjU2JEF6NO98j8Q+eGSzQRZnD6h7rh9oe6RKNosrjtD/ERQ4AQBI08xkjrBFtefUDfnt91ZYXQcm5plvZyvsnN7Snn13v45Hd+v985vbeicDgMEYlEIoiWzWZTk9MZclSQIwPSRHK5PKBUKp/WaDSX+dpG8+CYxAJE4GDjF3JUQ5qJwAGtVhv0eDwP84W0HJA4Tt960rkS0lRisViiUqkuOp3OujV9ThyS9cSjZJDGSgakmIBcLpcBBKC1QooJyOfzKUAgWgukeFNMBAJSopDEsI6UCCRpdKPg5Ye0kdezCy6Z0qta+6BEYlDJlakIiaoEWFIHFb6yNZzsAZUY8qG94a1bXgfpdLq4fUKh0Ip1Ep86iE03oQJa7gVrgSRIQKREgWAwmBRIgvWgqamppECSxjO8//a74fxzJxfbz589Dt/1/Xhzsba5Bj5oeH2xvfvDw/DTXz0pAcnv98Pk5CSu7HFVQANLQnQuMzPTTA0I/9mTHR/D4e3PcO23H38J+q1DMO64DgXZZq4dEfZLFTjRnuT1ernXCGs1SAqFQlVYWMhvip2+8vmi12RlZHIehXDQc7AdAYn9UlUymQzMZjNOpbj9AoGAPKEYdOSLFs5ruGKSwOk8ehbK80r+LyjnXXDky9aUj0u0kBIChBAw/qwGL9WF8YgvJOqeGHuWxxh8LzpoCxESNaCm2l1cVosWTjN8P93EBxIVIAQRyWSo6CmF70fikRAhrQoIM1V0rYPT6oETDdw5ouiMlm6QTCZTXEirAsJaBzNXxHN2nz60WDRi8I5ktqa69JtqN2qfuJDEq8UdrJajK+kIFISFGSxWX6FAEuR+UKJyu92ukpISDdsPiqHl3ywzQMmsgxggphW1ZLvD6/QMw43vw4wbdCajwahe6wUKdGbhAJoetb1BTu3oWWp9aK791Y/YFItu+K6MnSenPeQIsckVIwZFIIlE4jDDEyNII6SDO5/9neGJk8WqSytmGB6W5hkgBuhW1kHxNOdxwax7Di73/kz94feUbgajVg8dv9HfaFqWXwR3WUrhQuf31DaGrGyo3XIfuc4lcC/MU9molRnwWM325AHyB/zwt2MC3vyshXrg779wjKyQxbxsXnxkHxTnWnjZVN9RAVsra+DUV2fAaqf7hiVPb6YCxKYYA8QAMUBpkcVABKCQybngRqsMhRJkUikvmw0qDbd5zscGsxjulpp0Rmob2r4xH2bp6+vr0Ov19TfTvBOkEilcm7BRD2KT3sRBHb0+Tm2jz9LBxswsGLJdpbZRkZRdYMiFEXIdzLY0kkllJFsuvdXF4/G4iouLNQmm+QD8MT4MT5zYzyvNF5FBbDvawCvNP1X3KC8bTPPtB1tg3zsHeKX5zvcusBjEgjQDxAAxQOks6jQ/63aCmPx9cHyI+sOLN1kgQ66E/qt/8ioNcrQG6Bnu51E7ZUJZfjH0jQ6C1++jssHyY0vRnclL88FQEMbt/8Cxc/Q3bB7a1QT5BjMvmycf3AH199bysim/rQyO730NTn39KUxM26lscjbq4ZMD7yavkkZP83jnYfAavQfNuV2wkOXjZfPvrIO7n5mPDXoQjm/IOkZdB+HYWAxiQZoBYoAEs90hJ2kxNzsH9u+gX0RaTHlg1GbzsqksKQe1UsXLJp+s5MPhEOzZupMEXyddYFdrklsHrQetVAexKcZiEAPEAKUkIBK8AwxPHEB2u31wvcHw4fPktIDa2tq+mZmZmV0vcMiMCY2MjIxSA7JarWOtra0XHQ7HdJD2AfT0rX8WBgYGRpubm7/lU0lP9Pb29jQ2Ns5UVFToLRZLlkQiEQkNjtvt9nd3d08Q4S2HP1BX0qiqqir8Faq9WM3jagM9UaBOhJtDl7q6un5d/rsf/wkwAFAlV79aj4H7AAAAAElFTkSuQmCC"},t={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjM5MkNCQTUzNzE5RTExRTdBMzlEQzM4NjVBNUE0QTRBIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjM5MkNCQTU0NzE5RTExRTdBMzlEQzM4NjVBNUE0QTRBIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MzkyQ0JBNTE3MTlFMTFFN0EzOURDMzg2NUE1QTRBNEEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MzkyQ0JBNTI3MTlFMTFFN0EzOURDMzg2NUE1QTRBNEEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4VZwdsAAAF20lEQVR42uyc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"},A={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjI2NTUyNzkzNzE5RTExRTdBQUJEQjIxM0Q0NDhBMzlFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjI2NTUyNzk0NzE5RTExRTdBQUJEQjIxM0Q0NDhBMzlFIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjY1NTI3OTE3MTlFMTFFN0FBQkRCMjEzRDQ0OEEzOUUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MjY1NTI3OTI3MTlFMTFFN0FBQkRCMjEzRDQ0OEEzOUUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4PCmoWAAAHzUlEQVR42uybC0xTVxjH/31AeZWWlxZEO0EFFGEoDjaHaOZgStySacyc7mWimXu5JZPFxSzL5nTPZNmmc3PvadRpfDGdMMmCcQricyoKDEd59CVQCoW0pY+dc10drRRLW7Qt95+c3N7e08f99f995zv33HKsVits4nA46K/W1tZwsvmBtCzSQuEnCg4ONoWEhCwXCoXlQ31tfx4ME2eACBy68ydp98PPROBALBabe3t7C4cKyREQd5C+RaRzNvxUXC6XFxYWVtrd3f2QR+/j7IDFYikijgqCH8sbkJwC0mq1cQgAeQrJKSCDwSBAgMgTSIOFGAcBJHchcTGC5A4kfv+dzaOlYtvjvk5tUJ8w0udPOiginNYn7kByqQSwq4O+lNxj9TdXzK8oQ5Aw4pY6KDo6etDXkRQyYJ00lDqIDbdABeToAk8gBSQgo9EIs9nsFUgB66COjg6vQOIP9cMTZz0IgUj0f0Gp1aLl2HGnx6nocdrPJnqc9nNUQ8khr0Hq6+uDWq2mM3vodDpXYPGItkVERMR7BCh33RuIy5hq91yXrAllK17E9b8uDnjcdvIVr7/JgKJwCrZuuqXPdyn2IL3hJDIjYB5TWLeDRGCGSaVSzxxkU+X6DxgwyY/OR/KCIuR/vAF7ChbYHacnG5eRTvoUMX2oc0oWL7vZhwI99/kWOzcOS60UFIT4+HjI5XI6vA/mumCPQ6y/a6grGEjk5Klr+oeW7fgN9xzGgl+2Mc5xDC1vhpUrkBQKxaCQvJ6k4zKn3gTizAE0B1G3MP0dwo/CpW2gnORt0XxEIZGk7PJr3HZQ1svPM812wue+2HJbxzEuE5Ppiww3YdlyEQW4p+D4HYPkqpP4nn4gDZGGg4dvGyqR0nH/gWoeMAcNV/7xFJLbgOiJuZo/sl5axbiFQmg4eMgunO5UDnIXEn+4vgAd3RJnzWRylC0MbSObr4hCkkgkUCqVTiENHyCSeG2hQ11S8/MOu4LSVyQQCG5CGmgO59blDjqcD+YEx0rbnffw5HKHO6IFpUql0ufm5oZ67KDbnZgrJ+5LoWZzklgsNo2Iyaq74gxwZZIFNNyVNAtohMsuSbcbTX+TQY0JxPBRsRLJ6Nhwn88bXO6dA3RW0/M22fxEnRUVIep6YudPbIj139mHzu1k8zRpFja4nOQgGyQy5FlZPE6SNIVUWPzyJRbPIKPY+NzpnSwedpj3L0Bdfzeg7VINs2Tjk3XQ3dSFjR+jcffeG/XYhPHIKH4N2dnZrIOYmX2HhoGjSk9F9MLHEPNPEyorjrEhZpOpp4fZ9sRGI7nwYcBshkGtZtbYWUBEofES8EIECOnsQnt7O5ukb/kSfD7icu5DrLoNjRdvlF8coZC5ZswC+k/jFsxDsFyJzhOV9BYxiIirWAf1kyQ/D6EJ8YhsbIZOJGSWZFhA/S9b8HhIXfEc87g3WozExEQWkKPCpWOZbaRChdqrV1lAjlKUV9DVPGY06zhciqs+AMlnAFktFrQc+R0d0kSEz8mD5HIdynfsZO4OYwERtVWfgYHUQJrEeMxYW4zwsYkYXXEC+3ftGtL9PAELqOW3MliiRJBMz4IoNgY5H22AwEgmrXtLUHakdGQD6uvqRkvpUVxPkCAzM5N5Tpg8HjM2vAOh8jrk3/+MqqqqkQuocd8BWMwmGNPTkJqa+n9tNDuPmdXHNDTi4qdf4OzZsyPvcoeVTEyv7dwD7dgxuHfmA/ReXLvjo0kBGVNxHKg8hctvrUfzqDhwTCZYSPhZBcHgiSIRlpwEaeFcTEhJGXD52K8BKf44Br1KjfaH87Fo2jToGmWoP1IGFQGir2sAR6+/AZLHhZDURyDTkV6xCPyYKPB0fTDLmtFzvBKnDx2BrPhVzJ07N4AAWa2o/eYHGKNI5aw3onzRUliUKliIi/RxMQiekYWY9MmIz8zAmMlp0NfWo+qNdRB066BNkmLKksWYNGUKzq99C5baOubu+oAKsWbyq3fV1YPO2c1Vp6EllXTsvGVIm1+IcUlJt4RLBBnhCvbvwuUvt0K29wDka9ZBTp638HlQz3oAj8+Z4/0pkLP/zVdXV/+akJBQNBxg1CR8zn3yGfQN12CIFMJ8fzayli7BpMmTXb5F10xCT3nqDJSyRoSkTMQEMvrRe3w8UXd3ty4lJUV41xzU2ypH9dvvofPMOdsvAvmD92Hlm2sRFhY2pPfihYRgzKyZGIOZgTHMy/aV4OjCJ9F2uQba7HvBIb92B8kjOUXzhwwn4OqgK5u+wvl3N6JzVAzCX38FSVw+zCSUzCRv5OTkwJc17IBk+0tQ9+2PUGWkYfrGd5Ck0aL91Gm0TktH0aKFQ/pbQEACqv36O2gmjkfmqpUQyVpwZfNWtE1MQu4zT/nMVcO7OsxzSIEX2q5By+dboKypheaesZj0wgqfWBT0CQfNeH89oqKiwFFfh/6Rh5D34XvIy8+Hv2jYHSSekoaC3dvhr+I6nwVYTWDlHJBcLq8ZaTAMBoPRZUBr1qw52NbWph0pcCwWi/XChQvXXAZUX1/fuHr16lKFQqExmUzmQIaj0+n0VVVVDcuXLy9xebJKd0krJoVc0uzZs2PT0tJEPB6PE2hwyAS1r7y8XNXU1KQhu7sIj5OuAqKi0+NnSaMrevSqRKDe+UrXlo6SdtLxP2P/CjAA8XRVjAP7dCsAAAAASUVORK5CYII="},o={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjQ2MEYwMzIxNzE5RTExRTc5Nzk1RTY2REQxNzA5MUM2IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjQ2MEYwMzIyNzE5RTExRTc5Nzk1RTY2REQxNzA5MUM2Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NDYwRjAzMUY3MTlFMTFFNzk3OTVFNjZERDE3MDkxQzYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NDYwRjAzMjA3MTlFMTFFNzk3OTVFNjZERDE3MDkxQzYiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7MA++rAAAG1ElEQVR42uyc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"},s={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJFNDM2NDhBNzE5RTExRTc4MTQ0QTI5QjhEN0YwRTg3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJFNDM2NDhCNzE5RTExRTc4MTQ0QTI5QjhEN0YwRTg3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkU0MzY0ODg3MTlFMTFFNzgxNDRBMjlCOEQ3RjBFODciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkU0MzY0ODk3MTlFMTFFNzgxNDRBMjlCOEQ3RjBFODciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7A+Lq9AAAFaElEQVR42uycb0wbZRzHf9e/x9FCLXTQUVamITNzC6vahJhlm/+ji4sajcYYsxlezRfOmJj4xj+J4a3jBS4xMVuMvjNkiomZSra9mBg77GZW3gjIsFBGS9dC29E/1/P5XSgplZZeexx3x33J5bknPA+555Pfv+eOO4rjOCiIoigo1uzsbCNpLpDDQ44GUIhMJlOOpum3rVbriNC5xTx4JuUAETjY+Y0cvaAwEThgs9nYVCr1rFBIpYB0FcYeJ4MfAYVKp9PpGYa5tLy8/GRdf6cCyePEooygYIkBqSygRCLhABWoXkhlAWUyGTOoRPVAquRiFKhItULSwQ5SLZAMxR3bFzdthfO7WTCas5y86x09gFlH1QqpqhJgXR1037m/OCVZxOl9DLzzILNhHWS32yvOzefzG9ZJQuogzd3UCqjUCuqBpEpApEQBlmVFgaRaC4pGo6JAMqg1xmSzWVhYWMCdPe4KqoGlJ/rGYrE4RQF0zGUBm1m/4e9uhO9BLM3yY7C9EkzwY7FfOm56KbOllpROp/lzhLUZJLPZzLjdbnEs6ONeJxxybHyL6NPfQ/zCzz/j5iFc+e5vHg72S3VhPArvXQ1uqTUZjUZwOp0wNzeH6b3suFwuZxLNxRBCsQUddVnh5H47DwYXXWotxVYz4F+AriYTvOvZxc+5GU7xc6SAFAqFKkISDRC6zVoFTkB9ftTFn6M1oFtV0sXJON/2OBh48YFmcDdJsy/GeCQUkihZDF0HIZ31h9eB20xoRah4Oifd9mQVEslcW2tBxbEI3QnBoNtVA+XyK908UDxHl0Owku7hBFhSXRaE7nHG4+Bd6tTPtwXNxTkI9KXhqe3Z6FZpSTVbUHHcwYVuFncKwiD+OMlqsrgbQCC1t7fD/Px8WUuqGRDCQUi4YAyy6GoFYVZSikjtswZJNEAIBt2rEFPQzYqFMUWJkMLhsHj3g8pV0YX4UhhT7Hql/a26H1Srkslkoru72yqKi1Wz0NIxYsLZCpU+WVbtbl5MaYA0QPVpXQxi52YmYPV5mKOJbne4OhrlfPGttE5aQOmR4U9I8zVvWY7mpaFzZzQXK+5kRr/8ljRvkSOvOVeZGFSARFIep+EpE6QR0gevH7ml4amQxXr3d8Y0PCI+1chks3A7Eoc8J0/PNOko2Nveuj2AJhYT8Jk/Br4kjQW7bK3hZfu/8L6nBWwWpn4XE6KvAtFVOPLWULQBLk4KixyiAPonwSompkwLvNYdt9UQGiK1vZgGSAaAGINyODMGSnpATzlNioBj0bHwhMAbFKLUQW8cdEJHYgzuzUyAjpVnRmNNNLQdOAQPd7ZJDyhy/Rp4h86CIZ2UtQWtjLsgfupDaO7cK62L5Ud/kj0cFB0JQsZ3WfoYxCXiyqmDBF6rluY1QBog+QOirHbFLJhqsksPyHTsBOQYq+zhrDjvh8bHnpa+DmL2HYSrb74KM8vjZLcsz0LRoDfDgZbD8Oiu3dIDGpn+Hn7MnZf9i+PXE9fAGGyAHpdXWhe7tfSHMmog8hNY8kkfgzLcimKCdIZLa2leq4MUVwcpiLPQaxVlZU7arRhATnqP9ICe3/MaPETJ+xsopjwNh80vwJHO56Svg9qaOuB0z0cQCs/xyVSWgIxmaLFt06PnNfN17Aa1SctitQLiOC6n4akAKBKJjO80GBl8n7xaQIODgz/EYrH4ToFDPCY/OTk5VTWgYDA4PTAwcGlxcfEuy7KsmuGkUqmVQCAw1d/fPywki93x+/1/9vX1xTweT2tXV1ezXq+n1AYnmUxmx8bG7hDhPw798r/Ku9JnAr1eL75te5IcnVhKyLbIqV/4ou2vPp9vtPS7H/8JMACCejtl/KmtzgAAAABJRU5ErkJggg=="},a={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBCODZGMjg0NzE5RTExRTc4REI0OTBDODFEQkVCQUU5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBCODZGMjg1NzE5RTExRTc4REI0OTBDODFEQkVCQUU5Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEI4NkYyODI3MTlFMTFFNzhEQjQ5MEM4MURCRUJBRTkiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MEI4NkYyODM3MTlFMTFFNzhEQjQ5MEM4MURCRUJBRTkiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4BPIErAAALQUlEQVR42uxc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"},I={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjE4NUIxMTQyNzE5RTExRTc5MkREQTRGMDA4OTFBOEI4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjE4NUIxMTQzNzE5RTExRTc5MkREQTRGMDA4OTFBOEI4Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTg1QjExNDA3MTlFMTFFNzkyRERBNEYwMDg5MUE4QjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTg1QjExNDE3MTlFMTFFNzkyRERBNEYwMDg5MUE4QjgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz69naflAAAK3klEQVR42uyb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"},d={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjBCODZGMjg0NzE5RTExRTc4REI0OTBDODFEQkVCQUU5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjBCODZGMjg1NzE5RTExRTc4REI0OTBDODFEQkVCQUU5Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MEI4NkYyODI3MTlFMTFFNzhEQjQ5MEM4MURCRUJBRTkiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MEI4NkYyODM3MTlFMTFFNzhEQjQ5MEM4MURCRUJBRTkiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4BPIErAAALQUlEQVR42uxc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"},g={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjAzMjkzMkRFNzE5RTExRTdBMkJFODdBOUUwQjFGRTUyIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjAzMjkzMkRGNzE5RTExRTdBMkJFODdBOUUwQjFGRTUyIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MDMyOTMyREM3MTlFMTFFN0EyQkU4N0E5RTBCMUZFNTIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDMyOTMyREQ3MTlFMTFFN0EyQkU4N0E5RTBCMUZFNTIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6xFdZcAAAGTElEQVR42uyc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"},n={img:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjIwQ0VDMEY0NzE5RTExRTc5QkRGRDJEMjlGQjM1MkE0IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjIwQ0VDMEY1NzE5RTExRTc5QkRGRDJEMjlGQjM1MkE0Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MjBDRUMwRjI3MTlFMTFFNzlCREZEMkQyOUZCMzUyQTQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MjBDRUMwRjM3MTlFMTFFNzlCREZEMkQyOUZCMzUyQTQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5KbLK5AAAGIklEQVR42uyc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"};let c="";switch(e){case"rar":case"zip":c=s.img;break;case"doc":case"docx":c=i.img;break;case"xls":case"xlsx":c=l.img;break;case"pdf":c=A.img;break;case"ppt":case"pptx":c=t.img;break;case"png":case"jpg":c=o.img;break;case"mov":c=a.img;break;case"mp3":c=I.img;break;case"mp4":c=d.img;break;case"html":case"htm":c=g.img;break;default:c=n.img}return c})),s(this,"doView",(e=>{this.previewFileInfo=e,this.previewVisible.value=!0,this.previewIndex.value=e.PreviewIndex})),this.props=e,this.ctx=i,this.useUploadFile()}async useUploadFile(){l.watch((()=>this.props.token),((e,i)=>{this.setCurrentToken(),this.setUploadFilePos()})),this.setCurrentToken(),this.setUploadFilePos(),this.headers.value.Authorization=`Bearer ${this.storageInfo.getToken()}`,this.action.value=this.uploadApi.getUploadFileUrl()}setCurrentToken(){this.currentToken=this.utilities.getValueNotNull(this.props.token,this.utilities.getUniqueCode().replaceAll("-","")),this.loadFileList()}setUploadFilePos(){for(const e of this.props.groups){const i=this.getUploadFilePo(e);this.uploadFilePos[e]=i}}getUploadFilePo(e){return this.uploadApi.getBaseFilePo(this.currentToken,this.props.catalog,e,this.props.extraInfo,this.props.isCompress)}async loadFileList(){this.uploading.value=!0;const e=await this.fileInfoApi.getEntities(t.QueryWrapper.create().eq("Token",this.currentToken));this.fileList.value=this.utilities.parseApiResult(e),this.uploading.value=!1,this.setPreviewList()}setPreviewList(){let e=0;for(const i of this.fileList.value)this.isImage(i)&&(i.PreviewIndex=e,this.previewList.value.push(this.getImgUrl(i)),e++)}}const h=["onClick","title"],r={class:"file-upload-list-cover"},N={class:"file-upload-btn"},M={class:"file-upload-list-cover"},B={class:"file-upload-btn"};const b=g(E,[["render",function(e,i,t,A,o,s){const a=l.resolveComponent("Image"),I=l.resolveComponent("Icon"),d=l.resolveComponent("Space"),g=l.resolveComponent("Upload"),n=l.resolveComponent("Card"),c=l.resolveComponent("Spin"),p=l.resolveComponent("filePreview");return l.openBlock(),l.createElementBlock("div",{class:"uploadFile",style:l.normalizeStyle(e.single?{padding:"0px"}:{padding:"8px"})},[e.single?(l.openBlock(),l.createElementBlock(l.Fragment,{key:1},[e.getFirstFile(e.groups[0])?(l.openBlock(),l.createElementBlock("div",{key:0,class:"file-upload-list-content",onClick:i[2]||(i[2]=i=>e.doView(e.getFirstFile(e.groups[0]))),style:{width:"100%",height:"100%"}},[l.createVNode(a,{src:e.getThumbnailUrl(e.getFirstFile(e.groups[0])),fit:"fill",width:"100%",height:"100%"},null,8,["src"]),l.createElementVNode("div",M,[l.createVNode(d,null,{default:l.withCtx((()=>[l.createVNode(I,{type:"md-download",onClick:i[0]||(i[0]=l.withModifiers((i=>e.doDwonload(e.getFirstFile(e.groups[0]))),["stop"])),title:"下载"}),e.readonly?l.createCommentVNode("",!0):(l.openBlock(),l.createBlock(I,{key:0,type:"md-trash",onClick:i[1]||(i[1]=l.withModifiers((i=>e.doRemove(e.getFirstFile(e.groups[0]))),["stop"])),title:"删除"}))])),_:1})])])):l.createCommentVNode("",!0),e.readonly||e.getSingle(e.groups[0])?l.createCommentVNode("",!0):(l.openBlock(),l.createBlock(n,{key:1,"dis-hover":"",style:{"margin-bottom":"8px"}},{default:l.withCtx((()=>[l.createVNode(g,{ref:"uploadRef",type:"drag",name:"FormFile",multiple:e.multiple,"show-upload-list":!1,format:e.format,"max-size":e.maxSize,action:e.action,headers:e.headers,data:e.uploadFilePos[e.groups[0]],"on-success":e.doSuccess,"on-format-error":e.doFormatError,"on-exceeded-size":e.doMaxSize,"before-upload":e.doBeforeUpload,style:{display:"inline-block",width:"78px"}},{default:l.withCtx((()=>[l.createElementVNode("div",B,[l.createVNode(I,{type:"ios-camera",size:"20"})])])),_:1},8,["multiple","format","max-size","action","headers","data","on-success","on-format-error","on-exceeded-size","before-upload"])])),_:1}))],64)):(l.openBlock(!0),l.createElementBlock(l.Fragment,{key:0},l.renderList(e.groups,(i=>(l.openBlock(),l.createBlock(n,{"dis-hover":"",style:{"margin-bottom":"8px"}},l.createSlots({default:l.withCtx((()=>[(l.openBlock(!0),l.createElementBlock(l.Fragment,null,l.renderList(e.getGroupFiles(i),((i,t)=>(l.openBlock(),l.createElementBlock("div",{class:l.normalizeClass(e.isImage(i)?"file-upload-list file-upload-list-bs":"file-upload-list")},[l.createElementVNode("div",{class:"file-upload-list-content",onClick:l=>e.doView(i),title:i.FileName},[l.createVNode(a,{src:e.getThumbnailUrl(i),fit:"cover",width:"100%",height:"100%"},null,8,["src"]),l.createElementVNode("div",r,[l.createVNode(d,null,{default:l.withCtx((()=>[l.createVNode(I,{type:"md-download",onClick:l.withModifiers((l=>e.doDwonload(i)),["stop"]),title:"下载"},null,8,["onClick"]),e.readonly?l.createCommentVNode("",!0):(l.openBlock(),l.createBlock(I,{key:0,type:"md-trash",onClick:l.withModifiers((l=>e.doRemove(i)),["stop"]),title:"删除"},null,8,["onClick"]))])),_:2},1024)])],8,h)],2)))),256)),e.readonly?l.createCommentVNode("",!0):(l.openBlock(),l.createBlock(g,{key:0,ref_for:!0,ref:"uploadRef",type:"drag",name:"FormFile",multiple:e.multiple,"show-upload-list":!1,format:e.format,"max-size":e.maxSize,action:e.action,headers:e.headers,data:e.uploadFilePos[i],"on-success":e.doSuccess,"on-format-error":e.doFormatError,"on-exceeded-size":e.doMaxSize,"before-upload":e.doBeforeUpload,style:{display:"inline-block",width:"78px"}},{default:l.withCtx((()=>[l.createElementVNode("div",N,[l.createVNode(I,{type:"ios-camera",size:"20"})])])),_:2},1032,["multiple","format","max-size","action","headers","data","on-success","on-format-error","on-exceeded-size","before-upload"]))])),_:2},["默认"!=i?{name:"title",fn:l.withCtx((()=>[l.createTextVNode(l.toDisplayString(i),1)])),key:"0"}:void 0]),1024)))),256)),e.uploading?(l.openBlock(),l.createBlock(c,{key:2,fix:""})):l.createCommentVNode("",!0),l.createVNode(p,{modelValue:e.previewVisible,"onUpdate:modelValue":i[3]||(i[3]=i=>e.previewVisible=i),"preview-list":e.previewList,"preview-index":e.previewIndex,"file-info":e.previewFileInfo},null,8,["modelValue","preview-list","preview-index","file-info"])],4)}],["__scopeId","data-v-8a539c5e"]]);e.FilePreview=p,e.UploadFile=b,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
|
package/dist/style.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ifr-container[data-v-071f536d]{height:calc(100% + 32px);margin:-16px}.ifr-content[data-v-071f536d]{height:100%;width:100%;border:0px;padding:0;margin:0}.uploadFile[data-v-8a539c5e]{display:inline-block;width:auto}.uploadFile[data-v-8a539c5e] .ivu-upload-drag{border:1px dashed #dcdee2;border-radius:2px}.uploadFile[data-v-8a539c5e] .ivu-upload-drag:hover{border:1px dashed #2d8cf0;border-radius:2px;color:#2d8cf0}.uploadFile .file-upload-btn[data-v-8a539c5e]{width:78px;height:78px;line-height:78px;text-align:center}.uploadFile .file-upload-list-bs[data-v-8a539c5e]{box-shadow:0 1px 1px #0003}.uploadFile .file-upload-list[data-v-8a539c5e]{display:inline-block;width:80px;height:80px;text-align:center;line-height:80px;overflow:hidden;background:#fff;margin-right:12px;border-radius:4px}.uploadFile .file-upload-list-content[data-v-8a539c5e]{position:relative;width:100%;height:100%;cursor:pointer}.uploadFile img[data-v-8a539c5e]{width:100%;height:100%}.uploadFile .file-upload-list-cover[data-v-8a539c5e]{display:none;background:rgba(0,0,0,.7);position:absolute;top:0;left:0;right:0;line-height:18px}.uploadFile .file-upload-list-content:hover .file-upload-list-cover[data-v-8a539c5e]{display:block}.uploadFile .file-upload-list-cover i[data-v-8a539c5e]{color:#ccc;font-size:18px;cursor:pointer}.uploadFile .file-upload-list-cover i[data-v-8a539c5e]:hover{color:#fff}
|
package/package.json
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@newview/file-ui",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"author": "newview",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/file-ui.umd.cjs",
|
|
8
|
+
"module": "./dist/file-ui.js",
|
|
9
|
+
"typings": "types/index.d.ts",
|
|
10
|
+
"files": [
|
|
11
|
+
"dist",
|
|
12
|
+
"types",
|
|
13
|
+
"package.json",
|
|
14
|
+
"tsconfig.json",
|
|
15
|
+
"tsconfig.node.json",
|
|
16
|
+
"vite.config.ts"
|
|
17
|
+
],
|
|
18
|
+
"exports": {
|
|
19
|
+
"./dist/style.css": "./dist/style.css",
|
|
20
|
+
"./css": "./dist/style.css",
|
|
21
|
+
".": {
|
|
22
|
+
"import": "./dist/file-ui.js",
|
|
23
|
+
"require": "./dist/file-ui.umd.cjs"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"scripts": {
|
|
27
|
+
"dev": "vite",
|
|
28
|
+
"build": "run-p type-check build-only",
|
|
29
|
+
"preview": "vite preview",
|
|
30
|
+
"build-only": "vite build --watch",
|
|
31
|
+
"type-check": "vue-tsc --noEmit",
|
|
32
|
+
"p": "npm publish --access public"
|
|
33
|
+
},
|
|
34
|
+
"keywords": [],
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"@newview/base-vue": "^0.0.3",
|
|
37
|
+
"@newview/fileservice-api": "^0.0.1",
|
|
38
|
+
"@newview/infrastructure": "^0.0.4",
|
|
39
|
+
"@newview/tools": "^0.0.1",
|
|
40
|
+
"@newview/ui": "^0.0.3",
|
|
41
|
+
"sass": "^1.65.1",
|
|
42
|
+
"view-ui-plus": "^1.3.14",
|
|
43
|
+
"vue": "^3.3.4",
|
|
44
|
+
"vue-router": "^4.2.4"
|
|
45
|
+
},
|
|
46
|
+
"devDependencies": {
|
|
47
|
+
"@types/file-saver": "^2.0.5",
|
|
48
|
+
"@types/node": "^20.5.0",
|
|
49
|
+
"@vitejs/plugin-vue": "^4.2.3",
|
|
50
|
+
"file-saver": "^2.0.5",
|
|
51
|
+
"npm-run-all": "^4.1.5",
|
|
52
|
+
"terser": "^5.19.2",
|
|
53
|
+
"typescript": "^4.9.5",
|
|
54
|
+
"vite": "^4.4.9",
|
|
55
|
+
"vue-tsc": "1.0.11"
|
|
56
|
+
}
|
|
57
|
+
}
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ESNext",
|
|
4
|
+
"useDefineForClassFields": true,
|
|
5
|
+
"module": "ESNext",
|
|
6
|
+
"moduleResolution": "Node",
|
|
7
|
+
"strict": true,
|
|
8
|
+
"jsx": "preserve",
|
|
9
|
+
"resolveJsonModule": true,
|
|
10
|
+
"isolatedModules": true,
|
|
11
|
+
"esModuleInterop": true,
|
|
12
|
+
"lib": ["ESNext", "DOM"],
|
|
13
|
+
"skipLibCheck": true,
|
|
14
|
+
"noEmit": true,
|
|
15
|
+
"noImplicitAny": false
|
|
16
|
+
},
|
|
17
|
+
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],
|
|
18
|
+
"references": [{ "path": "./tsconfig.node.json" }]
|
|
19
|
+
}
|
package/types/index.d.ts
ADDED
package/vite.config.ts
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { defineConfig } from 'vite'
|
|
2
|
+
import vue from '@vitejs/plugin-vue'
|
|
3
|
+
import path from 'path';
|
|
4
|
+
|
|
5
|
+
// https://vitejs.dev/config/
|
|
6
|
+
export default defineConfig({
|
|
7
|
+
plugins: [vue()],
|
|
8
|
+
build: {
|
|
9
|
+
lib: {
|
|
10
|
+
entry: path.resolve(__dirname, './src/index.ts'),
|
|
11
|
+
name: 'fileui',
|
|
12
|
+
fileName: 'file-ui'
|
|
13
|
+
},
|
|
14
|
+
rollupOptions: {
|
|
15
|
+
// 确保外部化处理那些你不想打包进库的依赖
|
|
16
|
+
external: [
|
|
17
|
+
"@newview/base-vue",
|
|
18
|
+
"@newview/fileservice-api",
|
|
19
|
+
"@newview/infrastructure",
|
|
20
|
+
"@newview/tools",
|
|
21
|
+
"@newview/ui",
|
|
22
|
+
"sass",
|
|
23
|
+
"view-ui-plus",
|
|
24
|
+
"vue",
|
|
25
|
+
"vue-router"
|
|
26
|
+
],
|
|
27
|
+
output: {
|
|
28
|
+
globals: {
|
|
29
|
+
vue: "Vue",
|
|
30
|
+
'vue-router': 'VueRouter',
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
minify: 'terser',
|
|
35
|
+
terserOptions: { // 在打包代码时移除 console、debugger 和 注释
|
|
36
|
+
compress: {
|
|
37
|
+
/* (default: false) -- Pass true to discard calls to console.* functions.
|
|
38
|
+
If you wish to drop a specific function call such as console.info and/or
|
|
39
|
+
retain side effects from function arguments after dropping the function
|
|
40
|
+
call then use pure_funcs instead
|
|
41
|
+
*/
|
|
42
|
+
drop_console: true, // 生产环境时移除console
|
|
43
|
+
drop_debugger: true
|
|
44
|
+
},
|
|
45
|
+
format: {
|
|
46
|
+
comments: false // 删除注释comments
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
});
|