free-fe-core-modules 0.0.3 → 0.0.4

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.
@@ -1,100 +0,0 @@
1
- <template>
2
- <div class="row input-field-file-list combined input-field--readonly">
3
- <span
4
- :class="`field-label ${(Field.Label && Field.Label.trim().length)
5
- ? '' : 'field-label-empty'} ${Field.Required ? 'required' : ''}`"
6
- v-if="Field.Label !== void 0">
7
- <q-tooltip v-if="Field.Description" anchor="top right">{{Field.Description}}</q-tooltip>
8
- {{Field.Label || ''}}
9
- </span>
10
- <q-uploader
11
- multiple
12
- :class="`q-ma-xs`"
13
- ref="uploader"
14
- >
15
- <template v-slot:list="scope">
16
- <div v-if="scope.files.length && Field.AsList"
17
- class="file-list file-list-list">
18
- <q-list>
19
- <q-item
20
- class="file-list-item"
21
- v-for="(file, index) in scope.files" :key="index">
22
- <span class="file-name full-width ellipsis">
23
- {{ file.name }}
24
- <q-tooltip>{{ file.name }}</q-tooltip>
25
- </span>
26
-
27
- <span class="file-size full-width ellipsis">
28
- Size: {{ file.sizeLabel || file.__sizeLabel }}
29
- </span>
30
- </q-item>
31
- </q-list>
32
- </div>
33
-
34
- <div v-if="scope.files.length && !Field.AsList"
35
- class="file-list file-list-card row items-start justify-start q-gutter-xl">
36
- <q-card
37
- flat
38
- class="file-list-item"
39
- v-for="(file, index) in scope.files" :key="index">
40
- <q-img class="file-image" :src="fileThumb(file)">
41
- <div class="view-btn-wrapper absolute-full justify-center text-center">
42
- <q-btn
43
- flat
44
- class="view-btn full-height full-width"
45
- @click="preview(file)"
46
- >查看</q-btn>
47
- </div>
48
- </q-img>
49
- <span class="file-name full-width ellipsis">
50
- {{ file.name }}
51
- <q-tooltip>{{ file.name }}</q-tooltip>
52
- </span>
53
-
54
- <span class="file-size full-width ellipsis">
55
- Size: {{ file.sizeLabel || file.__sizeLabel }}
56
- </span>
57
- </q-card>
58
- </div>
59
- </template>
60
- </q-uploader>
61
- <q-dialog class="image-preview-dialog"
62
- flat
63
- full-width full-height v-model="showPreview"
64
- style="background: rgba(0,0,0,0)">
65
- <div class="image-preview">
66
- <q-img contain :src="previewFile"
67
- @click="showPreview=false"
68
- style="height: 100%; max-width: 100%;"></q-img>
69
- </div>
70
- </q-dialog>
71
- </div>
72
- </template>
73
-
74
- <script>
75
- import { defineComponent } from 'vue';
76
- import mixnins from 'free-fe-mixins';
77
-
78
- export default defineComponent({
79
- name: 'InputFieldUltimateFile',
80
- mixins: [mixnins.UploaderMixin, mixnins.InputFieldMixin],
81
- fieldInfo: {
82
- Category: 'Upload',
83
- Label: '上传文件',
84
- Value: 'UltimateFile',
85
- Description: '',
86
- },
87
- watch: {
88
- fieldData() {
89
- if (this.fieldData) {
90
- this.$refs.uploader.files = this.fieldData;
91
- }
92
- },
93
- },
94
- });
95
- </script>
96
-
97
- <style lang="sass">
98
- .q-uploader__header
99
- display: none
100
- </style>