meixioacomponent 1.1.49 → 2.0.2

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.
Files changed (107) hide show
  1. package/lib/components/index.d.ts +1 -1
  2. package/lib/components/index.d.ts.map +1 -1
  3. package/lib/components/index.js +3 -3
  4. package/lib/config/use/UseImg.d.ts.map +1 -1
  5. package/lib/config/use/UseImg.js +1 -0
  6. package/lib/meixioacomponent.common.js +17542 -38683
  7. package/lib/meixioacomponent.umd.js +17594 -38735
  8. package/lib/meixioacomponent.umd.min.js +6 -159
  9. package/lib/style/font-family.less +2 -1
  10. package/lib/style/index.less +9 -2
  11. package/lib/style/meixioacomponenticonfont/TCloudNumberVF.ttf +0 -0
  12. package/lib/style/tableStyle.less +15 -13
  13. package/lib/style/tdesignStyle.less +9 -0
  14. package/lib/style/variables.less +1 -1
  15. package/package.json +3 -3
  16. package/packages/components/base/baseAppendix/baseAppendix.vue +12 -11
  17. package/packages/components/base/baseArea/baseArea.vue +49 -54
  18. package/packages/components/base/baseAvatar/baseAvatar.vue +16 -14
  19. package/packages/components/base/baseButton/baseButton.vue +80 -0
  20. package/packages/components/base/baseButton/index.js +6 -0
  21. package/packages/components/base/baseButtonHandle/baseButtonHandle.vue +36 -4
  22. package/packages/components/base/baseDialog/index.vue +131 -102
  23. package/packages/components/base/baseDialogTable/dialogTable.vue +1 -0
  24. package/packages/components/base/baseDrawer/index.vue +121 -96
  25. package/packages/components/base/baseEdito/baseEdito.vue +56 -50
  26. package/packages/components/base/baseFixedHeader/baseFixedHeader.vue +44 -37
  27. package/packages/components/base/baseImageViewer/image-viewer.vue +29 -311
  28. package/packages/components/base/baseImg/baseImg.vue +8 -7
  29. package/packages/components/base/baseInforWrap/baseInforWrap.vue +14 -7
  30. package/packages/components/base/baseLineInfoItem/baseLineInfoItem.vue +4 -4
  31. package/packages/components/base/baseList/index.vue +10 -23
  32. package/packages/components/base/baseMoverVerifiBar/baseMoverVerifiBar.vue +7 -13
  33. package/packages/components/base/baseNumberInput/index.vue +42 -158
  34. package/packages/components/base/basePagination/index.vue +24 -31
  35. package/packages/components/base/basePlainTable/basePlainTable.vue +89 -183
  36. package/packages/components/base/basePopoverButton/index.vue +45 -36
  37. package/packages/components/base/baseSection/baseSection.vue +17 -8
  38. package/packages/components/base/baseSingleImgUpload/index.vue +2 -2
  39. package/packages/components/base/baseSkeleton/baseSkeleton.vue +0 -1
  40. package/packages/components/base/baseStoreSelect/index.vue +48 -64
  41. package/packages/components/base/baseTag/index.vue +12 -96
  42. package/packages/components/base/baseText/index.vue +66 -79
  43. package/packages/components/base/baseTimeLine/baseTimeLineLeft.vue +1 -1
  44. package/packages/components/base/baseTimeLine/baseTimeLineRight.vue +1 -1
  45. package/packages/components/base/baseTimeTypeSelect/base_time_type_select.vue +73 -78
  46. package/packages/components/base/baseToggle/toggle.vue +28 -48
  47. package/packages/components/base/baseTreeSelect/index.vue +20 -147
  48. package/packages/components/base/baseUpload/baseUploadItem.vue +74 -77
  49. package/packages/components/base/baseUpload/mixins.js +0 -1
  50. package/packages/components/base/baseUpload/uploadMediaView.vue +14 -13
  51. package/packages/components/base/baseUploadImgAndName/index.vue +28 -11
  52. package/packages/components/base/baseUploadTemplate/index.vue +27 -11
  53. package/packages/components/base/baseVideo/index.vue +9 -7
  54. package/packages/components/base/upload/upload.vue +17 -14
  55. package/packages/components/base/upload/uploadItem.vue +40 -46
  56. package/packages/components/dialogCache/index.vue +30 -24
  57. package/packages/components/index.js +3 -3
  58. package/packages/components/index.ts +4 -3
  59. package/packages/components/mixins/tableSectionMixins.js +0 -12
  60. package/packages/components/proForm/dialogForm/baseDialogForm.vue +17 -14
  61. package/packages/components/proForm/proForm/proFormItem/pro_form_item.vue +95 -79
  62. package/packages/components/proForm/proForm/pro_form.vue +47 -52
  63. package/packages/components/proPageTable/oaProTableSearch/oa_pro-table-search.vue +2 -2
  64. package/packages/components/proPageTable/oaProTableSearch/oa_pro_screen.vue +19 -10
  65. package/packages/components/proPageTable/oaProTableSearch/oa_pro_screen_item.vue +28 -27
  66. package/packages/components/proPageTable/oa_pro_colum_config.vue +8 -10
  67. package/packages/components/proPageTable/oa_pro_footer.vue +15 -15
  68. package/packages/components/proPageTable/oa_pro_table-header.vue +19 -31
  69. package/packages/components/proPageTable/oa_pro_table.vue +208 -284
  70. package/packages/components/proPageTable/oa_pro_table_check_handle_bar.vue +28 -16
  71. package/packages/components/searchHeader/searchHeader.vue +16 -17
  72. package/packages/components/style/font-family.less +2 -1
  73. package/packages/components/style/index.less +9 -2
  74. package/packages/components/style/meixioacomponenticonfont/TCloudNumberVF.ttf +0 -0
  75. package/packages/components/style/tableStyle.less +15 -13
  76. package/packages/components/style/tdesignStyle.less +9 -0
  77. package/packages/components/style/variables.less +1 -1
  78. package/packages/config/use/UseImg.js +1 -0
  79. package/packages/config/use/UseImg.ts +1 -0
  80. package/packages/utils/upload.js +61 -72
  81. package/packages/utils/utils.js +316 -276
  82. package/lib/fonts/element-icons.f1a45d74.ttf +0 -0
  83. package/lib/fonts/element-icons.ff18efd1.woff +0 -0
  84. package/lib/style/element/common_class.less +0 -3
  85. package/lib/style/element/fonts/element-icons.ttf +0 -0
  86. package/lib/style/element/fonts/element-icons.woff +0 -0
  87. package/lib/style/element/index.css +0 -30219
  88. package/packages/components/base/elDatePicker/basic/date-table.vue +0 -441
  89. package/packages/components/base/elDatePicker/basic/month-table.vue +0 -269
  90. package/packages/components/base/elDatePicker/basic/time-spinner.vue +0 -304
  91. package/packages/components/base/elDatePicker/basic/year-table.vue +0 -111
  92. package/packages/components/base/elDatePicker/index.js +0 -6
  93. package/packages/components/base/elDatePicker/index.vue +0 -28
  94. package/packages/components/base/elDatePicker/panel/date-range.vue +0 -680
  95. package/packages/components/base/elDatePicker/panel/date.vue +0 -609
  96. package/packages/components/base/elDatePicker/panel/month-range.vue +0 -289
  97. package/packages/components/base/elDatePicker/panel/time-range.vue +0 -248
  98. package/packages/components/base/elDatePicker/panel/time-select.vue +0 -178
  99. package/packages/components/base/elDatePicker/panel/time.vue +0 -186
  100. package/packages/components/base/elDatePicker/picker/date-picker.js +0 -55
  101. package/packages/components/base/elDatePicker/picker/time-picker.js +0 -39
  102. package/packages/components/base/elDatePicker/picker/time-select.js +0 -21
  103. package/packages/components/base/elDatePicker/picker.vue +0 -956
  104. package/packages/components/style/element/common_class.less +0 -3
  105. package/packages/components/style/element/fonts/element-icons.ttf +0 -0
  106. package/packages/components/style/element/fonts/element-icons.woff +0 -0
  107. package/packages/components/style/element/index.css +0 -30219
@@ -1,42 +1,17 @@
1
+ <!--废弃-->
1
2
  <template>
2
- <el-select
3
- ref="select"
4
- :clearable="clearable"
3
+ <t-tree-select
4
+ v-model="module"
5
5
  :disabled="disabled"
6
6
  :multiple="multiple"
7
+ :keys="{
8
+ value:nodeKey,
9
+ ...props
10
+ }"
11
+ :clearable="true"
7
12
  :placeholder="placeholder"
8
- :size="size"
9
- :value="value"
10
- style="width: 100%;"
11
- @clear="clear"
12
- @visible-change="visibleChange"
13
- @remove-tag="removeTag"
14
- >
15
- <el-option
16
- v-for="(item, index) in optionData"
17
- :key="index"
18
- ref="option"
19
- :label="item[`${label}`]"
20
- :value="item[`${nodeKey}`]"
21
- class="option"
22
- style="display: none;"
23
- >
24
- <div style="display: none;"></div>
25
- </el-option>
26
- <el-tree
27
- ref="tree"
28
- :data="data"
29
- :default-expanded-keys="[value]"
30
- :expand-on-click-node="true"
31
- :node-key="nodeKey"
32
- :props="props"
33
- :show-checkbox="multiple"
34
- class="tree"
35
- highlight-current
36
- @check="handleNodeMultiplyClick"
37
- @node-click="handleNodeClick"
38
- ></el-tree>
39
- </el-select>
13
+ :data="data"
14
+ ></t-tree-select>
40
15
  </template>
41
16
 
42
17
  <script>
@@ -49,12 +24,10 @@ export default {
49
24
  }
50
25
  },
51
26
  created() {
52
- this.setOptionData()
27
+
53
28
  },
54
29
  mounted() {
55
- if (!this.isEmpty(this.data)) {
56
- this.init(this.value)
57
- }
30
+
58
31
  },
59
32
  props: {
60
33
  // v-model绑定
@@ -118,117 +91,17 @@ export default {
118
91
  label() {
119
92
  return this.$props.props.label
120
93
  },
94
+ module:{
95
+ set(val){
96
+ this.$emit('input',val);
97
+ },
98
+ get(){
99
+ return this.$props.value
100
+ }
101
+ }
121
102
  },
122
103
  methods: {
123
- // 设置optionsData
124
- setOptionData() {
125
- this.optionData = []
126
- let obj = {}
127
- this.$set(obj, `${this.label}`, '')
128
- this.$set(obj, `${this.$props.nodeKey}`, '')
129
- this.optionData.push(obj)
130
- },
131
- // 是否为空
132
- isEmpty(val) {
133
- for (let key in val) {
134
- return false
135
- }
136
- return true
137
- },
138
- // 当选择器为单选时调用该方法
139
- handleNodeClick(data) {
140
- if (this.$props.multiple) return
141
- let props = this.$props.props
142
- if (data[`${props.children}`]) {
143
- if (this.$props.checkFather) {
144
- this.$emit('input', data[this.nodeKey])
145
- this.$refs.select.visible = false
146
- } else {
147
- // 当父节点不能点击时,不让它高亮
148
- this.$refs.tree.setCurrentKey(this.value)
149
- }
150
- } else {
151
- this.$emit('input', data[this.nodeKey])
152
- this.$refs.select.visible = false
153
- }
154
- },
155
- // 初始化并且赋值
156
- init(val) {
157
- // 是否是多选
158
- if (this.multiple) {
159
- this.setMultipleValue(val)
160
- } else {
161
- this.setSingleValue(val)
162
- }
163
- },
164
- // 当选择框出现时
165
- visibleChange(e) {
166
- if (e) {
167
- let selectDom = document.querySelector('.is-current')
168
- this.$nextTick(() => {
169
- this.$refs.select.scrollToOption({$el: selectDom})
170
- })
171
- }
172
- },
173
- // 清空值
174
- clear() {
175
- this.$emit('input', '')
176
- },
177
- // 多选被选择时
178
- handleNodeMultiplyClick(
179
- checkedNodes,
180
- checkedKeys,
181
- halfCheckedNodes,
182
- halfCheckedKeys,
183
- ) {
184
- this.$emit('input', checkedKeys.checkedKeys)
185
- },
186
- // 移除tag时
187
- removeTag(e) {
188
- let index = this.value.findIndex((item) => {
189
- return item == e
190
- })
191
- if (index > -1) {
192
- this.value.splice(index, 1)
193
- }
194
- },
195
-
196
- // 设置多选数据
197
- setMultipleValue(val) {
198
- if (val.length > 0) {
199
- this.$nextTick(() => {
200
- let nodeKey = this.$props.nodeKey
201
- let label = this.label
202
- this.$refs.tree.setCheckedKeys(val, false)
203
- let nodes = this.$refs.tree.getCheckedNodes()
204
- this.optionData = []
205
- nodes.forEach((item) => {
206
- let obj = {}
207
- this.$set(obj, `${nodeKey}`, item[`${nodeKey}`])
208
- this.$set(obj, `${label}`, item[`${label}`])
209
- this.optionData.push(obj)
210
- })
211
- })
212
- } else {
213
- this.setOptionData()
214
- this.$refs.tree.setCheckedKeys([])
215
- }
216
- },
217
104
 
218
- // 设置单选时的数据
219
- setSingleValue(val) {
220
- if (val) {
221
- this.$nextTick(() => {
222
- this.$refs.tree.setCurrentKey(val)
223
- let node = this.$refs.tree.getNode(val)
224
- this.optionData[0][`${this.$props.nodeKey}`] = val
225
- this.optionData[0][`${this.label}`] = node[`${this.label}`]
226
- this.$emit('onSingleValueChange', node)
227
- })
228
- } else {
229
- this.$refs.tree.setCurrentKey(null)
230
- }
231
- },
232
105
  },
233
106
  watch: {
234
107
  value: function (val) {
@@ -1,37 +1,32 @@
1
1
  <template xmlns="http://www.w3.org/1999/html">
2
2
  <div
3
- ref="baseUploadItemWarpRefs"
4
- v-loading="uploadLoading"
5
- :contenteditable="contenteditable"
6
- :style="{ width: `${outline[0] + 2}px`, height: `${outline[1] + 2}px` }"
7
- class="base-upload-item-wrap"
8
- @click="clickFile"
9
- @mouseenter="mouseenter"
10
- v-on:paste="onPasteFile"
3
+ ref="baseUploadItemWarpRefs"
4
+ v-loading="uploadLoading"
5
+ :contenteditable="contenteditable"
6
+ :style="{ width: `${outline[0] + 2}px`, height: `${outline[1] + 2}px` }"
7
+ class="base-upload-item-wrap"
8
+ @click="clickFile"
9
+ @mouseenter="mouseenter"
10
+ v-on:paste="onPasteFile"
11
11
  >
12
12
  <div
13
- v-if="type === 'upload'"
14
- v-show="!uploadedValue"
15
- :style="wrapStyle"
16
- class="type-upload"
13
+ v-if="type === 'upload'"
14
+ v-show="!uploadedValue"
15
+ :style="wrapStyle"
16
+ class="type-upload"
17
17
  >
18
18
  <input
19
- v-if="type === 'upload'"
20
- ref="inputFile"
21
- :accept="accept"
22
- :multiple="uploadType !== 'single'"
23
- style="display: none"
24
- type="file"
25
- @change="onInputFileChange"
19
+ v-if="type === 'upload'"
20
+ ref="inputFile"
21
+ :accept="accept"
22
+ :multiple="uploadType !== 'single'"
23
+ style="display: none"
24
+ type="file"
25
+ @change="onInputFileChange"
26
26
  />
27
27
 
28
28
  <div v-if="!uploadedValue" class="is-upload-pro-img">
29
- <base-icon
30
- :active="true"
31
- :iconClass="`element`"
32
- :name="`el-icon-upload`"
33
- class="upload-icon"
34
- ></base-icon>
29
+ <upload-icon></upload-icon>
35
30
  <div :class="{ disabled: disabled }" class="upload-notic-wrap">
36
31
  <div v-if="fileType === 'img'" class="primary-color">点击上传</div>
37
32
  <div>
@@ -42,45 +37,43 @@
42
37
  </div>
43
38
  <div v-if="uploadedValue" class="type-pre-views">
44
39
  <div
45
- v-if="fileType === 'img' || fileType === 'video'"
46
- style="width: 100%; height: 100%"
40
+ v-if="fileType === 'img' || fileType === 'video'"
41
+ style="width: 100%; height: 100%"
47
42
  >
48
43
  <div v-if="!disabled" class="handleUploadItem">
49
- <base-icon
50
- :color="`d`"
51
- :event="true"
52
- :name="`meixicomponenticon-close`"
53
- :plain="true"
54
- :size="`l`"
55
- style="width: 32px; height: 32px"
56
- @iconClick="handleDeleteUploadItem"
57
- ></base-icon>
44
+ <t-button shape="square" variant="outline" @click="handleDeleteUploadItem">
45
+ <template #icon>
46
+ <CloseIcon
47
+ ></CloseIcon>
48
+ </template>
49
+ </t-button>
50
+
58
51
  </div>
59
52
 
60
53
  <!-- 图片的回显 -->
61
54
 
62
55
  <baseImgVue
63
- v-if="fileType === 'img'"
64
- :event="true"
65
- :fit="`contain`"
66
- :src="uploadedValue"
56
+ v-if="fileType === 'img'"
57
+ :event="true"
58
+ :fit="`contain`"
59
+ :src="uploadedValue"
67
60
  ></baseImgVue>
68
61
 
69
62
  <!-- 视频的回显 -->
70
63
  <BaseVideo
71
- v-if="fileType === 'video'"
72
- :resource="uploadedValue"
64
+ v-if="fileType === 'video'"
65
+ :resource="uploadedValue"
73
66
  ></BaseVideo>
74
67
  </div>
75
68
  <!-- 其它文件的回显 -->
76
69
 
77
70
  <uploadItemVue
78
- v-else-if="fileType === 'other'"
79
- :item="uploadedValue"
80
- :style="{ width: `${outline[0]}px` }"
81
- :type="`appendix`"
82
- style="margin: 0; padding: 0"
83
- @deleteAppendixItem="handleDeleteUploadItem"
71
+ v-else-if="fileType === 'other'"
72
+ :item="uploadedValue"
73
+ :style="{ width: `${outline[0]}px` }"
74
+ :type="`appendix`"
75
+ style="margin: 0; padding: 0"
76
+ @deleteAppendixItem="handleDeleteUploadItem"
84
77
  ></uploadItemVue>
85
78
  </div>
86
79
  </div>
@@ -90,9 +83,10 @@
90
83
  import BaseVideo from "../baseVideo/index.vue";
91
84
  import baseImgVue from "../baseImg/baseImg.vue";
92
85
  import uploadItemVue from "../upload/uploadItem.vue";
86
+ import {CloseIcon, UploadIcon} from "tdesign-icons-vue"
93
87
  //
94
- import { baseUploadMixins } from "./mixins";
95
- import { UseWaterMark } from "meixiwatermark";
88
+ import {baseUploadMixins} from "./mixins";
89
+ import {UseWaterMark} from "meixiwatermark";
96
90
 
97
91
  export default {
98
92
  name: "baseUploadItem",
@@ -103,12 +97,15 @@ export default {
103
97
  };
104
98
  },
105
99
 
106
- mounted() {},
100
+ mounted() {
101
+ },
107
102
  mixins: [baseUploadMixins],
108
103
  components: {
109
104
  BaseVideo,
110
105
  baseImgVue,
111
106
  uploadItemVue,
107
+ UploadIcon,
108
+ CloseIcon
112
109
  },
113
110
  props: {
114
111
  type: {
@@ -197,7 +194,7 @@ export default {
197
194
 
198
195
  uploadedValue() {
199
196
  if (this.module) {
200
- const { fileType } = this.$props;
197
+ const {fileType} = this.$props;
201
198
  if (fileType != "other") {
202
199
  return this.module[0]?.url;
203
200
  }
@@ -231,7 +228,7 @@ export default {
231
228
  },
232
229
 
233
230
  wrapStyle() {
234
- const { outline } = this.$props;
231
+ const {outline} = this.$props;
235
232
 
236
233
  return {
237
234
  width: `${outline[0]}px`,
@@ -241,7 +238,7 @@ export default {
241
238
  },
242
239
  methods: {
243
240
  clickFile() {
244
- const { disabled } = this.$props;
241
+ const {disabled} = this.$props;
245
242
  if (disabled) return;
246
243
  this.$refs.inputFile.value = "";
247
244
  this.$refs.inputFile.click();
@@ -249,7 +246,7 @@ export default {
249
246
 
250
247
  async returnFiles(files) {
251
248
  let list = [];
252
- const { fileSize } = this.$props;
249
+ const {fileSize} = this.$props;
253
250
  for (let i = 0; i < files.length; i++) {
254
251
  if (files[i].size < fileSize * 1048576) {
255
252
  let obj = {
@@ -267,7 +264,7 @@ export default {
267
264
  },
268
265
 
269
266
  onInputFileChange(e) {
270
- const { autoUpload } = this.$props;
267
+ const {autoUpload} = this.$props;
271
268
 
272
269
  if (!autoUpload) {
273
270
  this.$emit("onInputFileChange", e);
@@ -295,33 +292,33 @@ export default {
295
292
  }
296
293
 
297
294
  if (
298
- cropper &&
299
- !isGroup &&
300
- fileType === "img" &&
301
- uploadType === "single"
295
+ cropper &&
296
+ !isGroup &&
297
+ fileType === "img" &&
298
+ uploadType === "single"
302
299
  ) {
303
300
  this.userCropper(files[0]);
304
301
  } else if (
305
- useWaterMark &&
306
- fileType === "img" &&
307
- uploadType === "single"
302
+ useWaterMark &&
303
+ fileType === "img" &&
304
+ uploadType === "single"
308
305
  ) {
309
306
  const reader = new FileReader();
310
307
  reader.readAsDataURL(files[0]);
311
308
  reader.onload = await (async (readRes) => {
312
309
  let useWaterMarkInstance = new UseWaterMark(
313
- null,
314
- {
315
- text: `${useWaterMark}`,
316
- observer: false,
317
- },
318
- useWaterMarkProps,
319
- {
320
- immediately: false,
321
- canvasHeight: 0,
322
- canvasWidth: 0,
323
- imgUrl: readRes.target.result,
324
- }
310
+ null,
311
+ {
312
+ text: `${useWaterMark}`,
313
+ observer: false,
314
+ },
315
+ useWaterMarkProps,
316
+ {
317
+ immediately: false,
318
+ canvasHeight: 0,
319
+ canvasWidth: 0,
320
+ imgUrl: readRes.target.result,
321
+ }
325
322
  );
326
323
  let fileBlob = await useWaterMarkInstance.getWaterBlobFile();
327
324
  const time = Date.now();
@@ -346,7 +343,7 @@ export default {
346
343
  },
347
344
 
348
345
  userCropper(file) {
349
- const { cropperConfig } = this.$props;
346
+ const {cropperConfig} = this.$props;
350
347
  const module = require("../../../config/use/useCropper").default;
351
348
  module.startCropper({
352
349
  img: file,
@@ -383,7 +380,7 @@ export default {
383
380
  },
384
381
 
385
382
  async onPasteFile() {
386
- const { disabled, autoUpload } = this.$props;
383
+ const {disabled, autoUpload} = this.$props;
387
384
  if (this.uploadLoading || disabled) return;
388
385
  const items = (event.clipboardData || window.clipboardData).items;
389
386
  const rowList = [];
@@ -1,4 +1,3 @@
1
- import { Notification } from "element-ui";
2
1
  import componentConfig from "../../../config/componentConfig";
3
2
  import useUpload from "../../../config/use/UseUpload";
4
3
 
@@ -3,23 +3,22 @@
3
3
  <base-img v-if="type == 'img'" :src="resource" :event="true" :fit="`contain`"></base-img>
4
4
  <base-video v-if="type == 'video'" :resource="resource"></base-video>
5
5
  <!-- 删除icon -->
6
- <base-icon
7
- :size="`l`"
8
- :color="`d`"
9
- :event="true"
10
- :plain="true"
11
- v-if="!disabled"
12
- class="handleUploadItem"
13
- style="width: 32px; height: 32px;"
14
- :name="`meixicomponenticon-close`"
15
- @iconClick="handleDeleteUploadItem"
16
- ></base-icon>
6
+ <t-button shape="square" variant="outline" @click="handleDeleteUploadItem" v-if="!disabled">
7
+ <template #icon>
8
+ <close-icon
9
+ @click="handleDeleteUploadItem"
10
+ ></close-icon>
11
+ </template>
12
+ </t-button>
13
+
17
14
  </div>
18
15
  </template>
19
16
 
20
17
  <script>
21
18
  import baseImg from '../baseImg/baseImg.vue'
22
19
  import baseVideo from '../baseVideo/index.vue'
20
+ import {CloseIcon} from "tdesign-icons-vue"
21
+
23
22
  export default {
24
23
  data() {
25
24
  return {}
@@ -44,11 +43,11 @@ export default {
44
43
  require: true,
45
44
  },
46
45
  },
47
- components: { baseImg, baseVideo },
46
+ components: {baseImg, baseVideo, CloseIcon},
48
47
 
49
48
  computed: {
50
49
  wrapSize() {
51
- const { outLine } = this.$props
50
+ const {outLine} = this.$props
52
51
  return {
53
52
  width: `${outLine[0]}px`,
54
53
  height: `${outLine[1]}px`,
@@ -57,6 +56,7 @@ export default {
57
56
  },
58
57
  methods: {
59
58
  handleDeleteUploadItem() {
59
+ if (this.disabled) return;
60
60
  this.$emit('handleDeleteUploadItem')
61
61
  },
62
62
  },
@@ -88,6 +88,7 @@ export default {
88
88
  position: absolute;
89
89
  border-radius: var(--radius);
90
90
  background: rgba(0, 0, 0, 0.3);
91
+
91
92
  /deep/ i {
92
93
  color: var(--text-white) !important;
93
94
  }
@@ -4,27 +4,40 @@
4
4
  <div v-if="img" class="img_has-content">
5
5
  <base-img :event="true" :size="[70,70]" :src="img"></base-img>
6
6
  <div class="img_content-mask">
7
- <base-icon :disable="disabled" :event="!disabled" icon-class="element" name="el-icon-refresh"
8
- size="`l`"
9
- @iconClick="onAddClick"></base-icon>
7
+
8
+ <t-button shape="square" variant="outline" :disable="disabled" @click="onAddClick">
9
+ <template #icon>
10
+ <RefreshIcon
11
+ ></RefreshIcon>
12
+ </template>
13
+ </t-button>
14
+
15
+
10
16
  </div>
11
17
  </div>
12
18
  <div v-else :class="{'disabled':disabled}" class="img_empty-content">
13
- <base-icon :disable="disabled" :event="!disabled" icon-class="element"
14
- name="el-icon-plus"
15
- size="`l`"
16
- @iconClick="onAddClick"></base-icon>
19
+
20
+
21
+ <t-button shape="square" variant="outline" :disable="disabled" @click="onAddClick">
22
+ <template #icon>
23
+ <plus-icon></plus-icon>
24
+ </template>
25
+ </t-button>
26
+
17
27
  </div>
18
28
 
19
29
  </div>
20
30
  <div class="title-wrap">
21
- <el-input v-model="titleValue" :disabled="disabled" :maxlength="maxlength" :placeholder="placeholder"
22
- size="mini"></el-input>
31
+ <t-input :disabled="disabled" v-model="titleValue" :maxlength="maxlength" :placeholder="placeholder"
32
+ size="small"></t-input>
23
33
  </div>
24
34
 
25
35
  <div v-if="img" class="handle-close">
26
- <base-icon :disable="disabled" :event="!disabled" icon-class="element" name="el-icon-close"
27
- @iconClick="onHandleEmpty"></base-icon>
36
+ <t-button shape="square" variant="outline" :disable="disabled" @click="onHandleEmpty">
37
+ <template #icon>
38
+ <close-icon></close-icon>
39
+ </template>
40
+ </t-button>
28
41
  </div>
29
42
  <input
30
43
  ref="inputFile"
@@ -41,6 +54,7 @@
41
54
  import {defineComponent} from 'vue'
42
55
  import useUpload from "../../../config/use/UseUpload";
43
56
  import componentConfig from "../../../config/componentConfig";
57
+ import {CloseIcon, PlusIcon, RefreshIcon} from "tdesign-icons-vue"
44
58
 
45
59
  export default defineComponent({
46
60
  name: "baseUploadImgAndName",
@@ -51,6 +65,9 @@ export default defineComponent({
51
65
  },
52
66
  mounted() {
53
67
  },
68
+ components: {
69
+ PlusIcon, RefreshIcon, CloseIcon
70
+ },
54
71
  props: {
55
72
  imgSrc: {},
56
73
  title: {},
@@ -11,11 +11,25 @@
11
11
  @destroy="destroy"
12
12
  >
13
13
  <div slot="dialog-content" class="dialog-content">
14
- <el-steps :active="stepActive" simple>
15
- <el-step icon="el-icon-folder-add" title="上传文件"></el-step>
16
- <el-step icon="el-icon-upload" title="导入数据"></el-step>
17
- <el-step icon="el-icon-check" title="导入完成"></el-step>
18
- </el-steps>
14
+ <t-steps :current="stepActive" readonly>
15
+ <t-step-item title="上传文件" :content="stepActive>0?'已完成状态':'进行中状态'">
16
+ <template #icon>
17
+ <UploadIcon></UploadIcon>
18
+ </template>
19
+ </t-step-item>
20
+
21
+ <t-step-item title="导入数据" :content="stepActive>1?'已完成状态':'进行中状态'">
22
+ <template #icon>
23
+ <FolderImportIcon></FolderImportIcon>
24
+ </template>
25
+ </t-step-item>
26
+
27
+ <t-step-item title="导入数据" :content="stepActive>2?'已完成状态':'进行中状态'">
28
+ <template #icon>
29
+ <CheckIcon></CheckIcon>
30
+ </template>
31
+ </t-step-item>
32
+ </t-steps>
19
33
 
20
34
  <div class="custom-upload-content" v-on:paste="onPasteFile">
21
35
  <span class="notice-text">
@@ -24,15 +38,15 @@
24
38
  >支持黏贴文件上传)
25
39
  </span>
26
40
  <div v-show="stepActive == 0" class="upload-handle-wrap">
27
- <el-input
41
+ <t-input
28
42
  v-model="fileName"
29
43
  :disabled="true"
30
- :size="`mini`"
44
+ size="small"
31
45
  style="margin-right: var(--margin-4);"
32
- ></el-input>
33
- <el-button size="mini" type="primary" @click="onHandleFile">
46
+ ></t-input>
47
+ <base-button size="mini" type="primary" @click="onHandleFile">
34
48
  选择文件
35
- </el-button>
49
+ </base-button>
36
50
 
37
51
  <base-upload-item
38
52
  ref="baseUploadItemRef"
@@ -82,6 +96,8 @@
82
96
  <script>
83
97
  import BaseDefaultSvg from '../baseDefaultSvg/baseDefaultSvg.vue'
84
98
  import baseUploadItem from '../baseUpload/baseUploadItem.vue'
99
+ import {CheckIcon, FolderImportIcon, UploadIcon} from "tdesign-icons-vue"
100
+
85
101
 
86
102
  export default {
87
103
  name: 'baseUploadTemplate',
@@ -138,7 +154,7 @@ export default {
138
154
  type: Function,
139
155
  },
140
156
  },
141
- components: {baseUploadItem, BaseDefaultSvg},
157
+ components: {baseUploadItem, BaseDefaultSvg, UploadIcon, FolderImportIcon, CheckIcon},
142
158
  computed: {
143
159
  module: {
144
160
  set(val) {