adtec-core-package 0.4.0 → 0.4.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 (207) hide show
  1. package/.editorconfig +6 -6
  2. package/.prettierrc.json +7 -7
  3. package/.vscode/extensions.json +8 -8
  4. package/README.en.md +36 -36
  5. package/README.md +39 -39
  6. package/env.d.ts +1 -1
  7. package/eslint.config.js +56 -56
  8. package/index.html +13 -13
  9. package/package.json +59 -59
  10. package/src/App.vue +9 -9
  11. package/src/api/BasicApi.ts +17 -17
  12. package/src/api/DocumentApi.ts +27 -27
  13. package/src/api/SysDictCacheApi.ts +26 -26
  14. package/src/api/SysUserApi.ts +35 -35
  15. package/src/api/framework.ts +12 -12
  16. package/src/assets/base.css +86 -86
  17. package/src/assets/logo.svg +1 -1
  18. package/src/assets/main.css +35 -35
  19. package/src/assets/style/ant.scss +19 -19
  20. package/src/assets/style/index.less +180 -180
  21. package/src/assets/style/transition.scss +49 -49
  22. package/src/components/ElFlex/ElFlex.vue +297 -297
  23. package/src/components/OperationAuth/operationAuth.vue +26 -26
  24. package/src/components/Search/ElIconSearch.vue +260 -239
  25. package/src/components/Search/ElSearch.vue +154 -154
  26. package/src/components/Table/ElTableColumnEdit.vue +218 -218
  27. package/src/components/Title/ElTitle.vue +49 -49
  28. package/src/components/autoToolTip/ElAutoToolTip.vue +61 -61
  29. package/src/components/baseEcharts/index.vue +48 -48
  30. package/src/components/business/userSelect.vue +412 -412
  31. package/src/components/icon/ElIconBtn.vue +182 -182
  32. package/src/components/icon/ElIcons.vue +38 -38
  33. package/src/components/upload/ElUploads.vue +286 -279
  34. package/src/components/upload/FileView.vue +158 -158
  35. package/src/components/upload/FileViewComponents.vue +57 -57
  36. package/src/config/ElementPlusConfig.ts +95 -95
  37. package/src/css/elementUI/affix.scss +7 -7
  38. package/src/css/elementUI/alert.scss +115 -115
  39. package/src/css/elementUI/anchor-link.scss +41 -41
  40. package/src/css/elementUI/anchor.scss +88 -88
  41. package/src/css/elementUI/aside.scss +8 -8
  42. package/src/css/elementUI/autocomplete.scss +89 -89
  43. package/src/css/elementUI/avatar.scss +55 -55
  44. package/src/css/elementUI/backtop.scss +29 -29
  45. package/src/css/elementUI/badge.scss +58 -58
  46. package/src/css/elementUI/base.scss +3 -3
  47. package/src/css/elementUI/breadcrumb.scss +62 -62
  48. package/src/css/elementUI/button-group.scss +80 -80
  49. package/src/css/elementUI/button.scss +304 -304
  50. package/src/css/elementUI/calendar.scss +80 -80
  51. package/src/css/elementUI/card.scss +45 -45
  52. package/src/css/elementUI/carousel-item.scss +58 -58
  53. package/src/css/elementUI/carousel.scss +188 -188
  54. package/src/css/elementUI/cascader-panel.scss +138 -138
  55. package/src/css/elementUI/cascader.scss +230 -230
  56. package/src/css/elementUI/check-tag.scss +60 -60
  57. package/src/css/elementUI/checkbox-button.scss +140 -140
  58. package/src/css/elementUI/checkbox-group.scss +7 -7
  59. package/src/css/elementUI/checkbox.scss +298 -298
  60. package/src/css/elementUI/col.scss +48 -48
  61. package/src/css/elementUI/collapse.scss +70 -70
  62. package/src/css/elementUI/color/index.scss +20 -20
  63. package/src/css/elementUI/color-picker.scss +392 -392
  64. package/src/css/elementUI/common/popup.scss +47 -47
  65. package/src/css/elementUI/common/transition.scss +122 -122
  66. package/src/css/elementUI/common/var.scss +1549 -1549
  67. package/src/css/elementUI/container.scss +14 -14
  68. package/src/css/elementUI/dark/css-vars.scss +39 -39
  69. package/src/css/elementUI/dark/var.scss +222 -222
  70. package/src/css/elementUI/date-picker/date-picker.scss +110 -110
  71. package/src/css/elementUI/date-picker/date-range-picker.scss +113 -113
  72. package/src/css/elementUI/date-picker/date-table.scss +158 -158
  73. package/src/css/elementUI/date-picker/month-table.scss +112 -112
  74. package/src/css/elementUI/date-picker/picker-panel.scss +131 -131
  75. package/src/css/elementUI/date-picker/picker.scss +219 -219
  76. package/src/css/elementUI/date-picker/time-picker.scss +90 -90
  77. package/src/css/elementUI/date-picker/time-range-picker.scss +33 -33
  78. package/src/css/elementUI/date-picker/time-spinner.scss +111 -111
  79. package/src/css/elementUI/date-picker/year-table.scss +108 -108
  80. package/src/css/elementUI/date-picker.scss +9 -9
  81. package/src/css/elementUI/descriptions-item.scss +73 -73
  82. package/src/css/elementUI/descriptions.scss +152 -152
  83. package/src/css/elementUI/dialog.scss +199 -199
  84. package/src/css/elementUI/display.scss +12 -12
  85. package/src/css/elementUI/divider.scss +48 -48
  86. package/src/css/elementUI/drawer.scss +164 -164
  87. package/src/css/elementUI/dropdown.scss +208 -208
  88. package/src/css/elementUI/empty.scss +49 -49
  89. package/src/css/elementUI/footer.scss +12 -12
  90. package/src/css/elementUI/form.scss +243 -243
  91. package/src/css/elementUI/header.scss +12 -12
  92. package/src/css/elementUI/icon.scss +45 -45
  93. package/src/css/elementUI/image-viewer.scss +139 -139
  94. package/src/css/elementUI/image.scss +49 -49
  95. package/src/css/elementUI/index.scss +110 -110
  96. package/src/css/elementUI/input-number.scss +178 -178
  97. package/src/css/elementUI/input.scss +478 -478
  98. package/src/css/elementUI/link.scss +90 -90
  99. package/src/css/elementUI/loading.scss +104 -104
  100. package/src/css/elementUI/main.scss +14 -14
  101. package/src/css/elementUI/mention.scss +88 -88
  102. package/src/css/elementUI/menu.scss +339 -339
  103. package/src/css/elementUI/message-box.scss +213 -213
  104. package/src/css/elementUI/message.scss +98 -98
  105. package/src/css/elementUI/mixins/_button.scss +165 -165
  106. package/src/css/elementUI/mixins/_col.scss +33 -33
  107. package/src/css/elementUI/mixins/_var.scss +67 -67
  108. package/src/css/elementUI/mixins/config.scss +5 -5
  109. package/src/css/elementUI/mixins/function.scss +88 -88
  110. package/src/css/elementUI/mixins/mixins.scss +237 -237
  111. package/src/css/elementUI/mixins/utils.scss +39 -39
  112. package/src/css/elementUI/notification.scss +104 -104
  113. package/src/css/elementUI/option-group.scss +33 -33
  114. package/src/css/elementUI/option.scss +71 -71
  115. package/src/css/elementUI/overlay.scss +17 -17
  116. package/src/css/elementUI/page-header.scss +60 -60
  117. package/src/css/elementUI/pagination.scss +238 -238
  118. package/src/css/elementUI/popconfirm.scss +16 -16
  119. package/src/css/elementUI/popover.scss +61 -61
  120. package/src/css/elementUI/popper.scss +106 -106
  121. package/src/css/elementUI/progress.scss +179 -179
  122. package/src/css/elementUI/radio-button.scss +169 -169
  123. package/src/css/elementUI/radio-group.scss +9 -9
  124. package/src/css/elementUI/radio.scss +215 -215
  125. package/src/css/elementUI/rate.scss +108 -108
  126. package/src/css/elementUI/reset.scss +98 -98
  127. package/src/css/elementUI/result.scss +57 -57
  128. package/src/css/elementUI/row.scss +35 -35
  129. package/src/css/elementUI/scrollbar.scss +97 -97
  130. package/src/css/elementUI/segmented.scss +183 -183
  131. package/src/css/elementUI/select-dropdown-v2.scss +1 -1
  132. package/src/css/elementUI/select-dropdown.scss +57 -57
  133. package/src/css/elementUI/select-v2.scss +4 -4
  134. package/src/css/elementUI/select.scss +253 -253
  135. package/src/css/elementUI/skeleton-item.scss +83 -83
  136. package/src/css/elementUI/skeleton.scss +44 -44
  137. package/src/css/elementUI/slider.scss +212 -212
  138. package/src/css/elementUI/space.scss +20 -20
  139. package/src/css/elementUI/spinner.scss +43 -43
  140. package/src/css/elementUI/statistic.scss +35 -35
  141. package/src/css/elementUI/step.scss +316 -316
  142. package/src/css/elementUI/steps.scss +21 -21
  143. package/src/css/elementUI/switch.scss +300 -300
  144. package/src/css/elementUI/table-column.scss +98 -98
  145. package/src/css/elementUI/table-v2.scss +236 -236
  146. package/src/css/elementUI/table.scss +694 -694
  147. package/src/css/elementUI/tabs.scss +659 -659
  148. package/src/css/elementUI/tag.scss +181 -181
  149. package/src/css/elementUI/text.scss +51 -51
  150. package/src/css/elementUI/time-picker.scss +5 -5
  151. package/src/css/elementUI/time-select.scss +37 -37
  152. package/src/css/elementUI/timeline-item.scss +84 -84
  153. package/src/css/elementUI/timeline.scss +46 -46
  154. package/src/css/elementUI/tooltip-v2.scss +95 -95
  155. package/src/css/elementUI/tour.scss +187 -187
  156. package/src/css/elementUI/transfer.scss +203 -203
  157. package/src/css/elementUI/tree-select.scss +41 -41
  158. package/src/css/elementUI/tree.scss +134 -134
  159. package/src/css/elementUI/upload.scss +654 -654
  160. package/src/css/elementUI/var.scss +87 -87
  161. package/src/css/elementUI/virtual-list.scss +40 -40
  162. package/src/directives/vKeydown.ts +93 -93
  163. package/src/hooks/useDictHooks.ts +79 -76
  164. package/src/hooks/useEcharts.ts +58 -58
  165. package/src/hooks/useFileView.ts +34 -34
  166. package/src/hooks/useMessageHooks.ts +132 -132
  167. package/src/hooks/useResetRefHooks.ts +18 -18
  168. package/src/interface/BaseEntity.ts +28 -28
  169. package/src/interface/IMdmDept.ts +82 -82
  170. package/src/interface/IOrgDeptInfo.ts +12 -12
  171. package/src/interface/ISysDictDataCacheVo.ts +46 -46
  172. package/src/interface/ISysDictType.ts +37 -37
  173. package/src/interface/ISysMenuDataVo.ts +22 -22
  174. package/src/interface/ISysMenuInfoVo.ts +83 -83
  175. package/src/interface/ISysMenuOperationVo.ts +21 -21
  176. package/src/interface/ISysUploadFiles.ts +16 -16
  177. package/src/interface/ISysUserInfo.ts +70 -70
  178. package/src/interface/IUserPermissionVo.ts +34 -34
  179. package/src/interface/Message.ts +69 -69
  180. package/src/interface/PageData.ts +17 -17
  181. package/src/interface/ResponseData.ts +16 -16
  182. package/src/interface/dictMapType.ts +11 -11
  183. package/src/interface/enum/FlexEnum.ts +85 -85
  184. package/src/interface/enum/MessageEnum.ts +41 -41
  185. package/src/main.ts +14 -14
  186. package/src/mixin/globalMixin.ts +37 -37
  187. package/src/packages/index.ts +18 -18
  188. package/src/packages/text.vue +13 -13
  189. package/src/plugins/echartsConfig.ts +73 -73
  190. package/src/plugins/plugins.ts +12 -12
  191. package/src/router/index.ts +23 -23
  192. package/src/stores/dictStore.ts +27 -20
  193. package/src/stores/messageStore.ts +49 -49
  194. package/src/stores/permissionStore.ts +108 -108
  195. package/src/stores/storeConfig.ts +23 -23
  196. package/src/stores/userInfoStore.ts +31 -31
  197. package/src/utils/AxiosConfig.ts +216 -216
  198. package/src/utils/encrypt.ts +10 -10
  199. package/src/utils/request.ts +55 -55
  200. package/tsconfig.app.json +12 -12
  201. package/tsconfig.json +11 -11
  202. package/tsconfig.node.json +18 -18
  203. package/vite.config.ts +38 -38
  204. package/adtec-core-package/adtec-core-package.css +0 -1
  205. package/adtec-core-package/adtec-core-package.js +0 -41364
  206. package/adtec-core-package/adtec-core-package.umd.cjs +0 -79
  207. package/adtec-core-package/favicon.ico +0 -0
@@ -1,182 +1,182 @@
1
- <!--创建人 丁盼-->
2
- <!--说明: ElIconBtn-->
3
- <!--创建时间: 2024/11/24 下午3:12-->
4
- <!--修改时间: 2024/11/24 下午3:12-->
5
- <template>
6
- <el-button v-if="elementType === 'button'" style="padding: 8px 10px; margin-left: 4px">
7
- <el-icon
8
- ref="ref_icons"
9
- @mouseenter="visible = true"
10
- @mouseleave="visible = false"
11
- class="icon-btn"
12
- style="margin: 0"
13
- :class="getClass"
14
- >
15
- <svg v-if="selcomp" class="icon" aria-hidden="true">
16
- <use :href="'#' + iconName"></use>
17
- </svg>
18
- <component v-else :is="iconName"></component>
19
- <el-tooltip
20
- v-model:visible="visible"
21
- v-if="tip"
22
- :content="tip"
23
- placement="top"
24
- effect="light"
25
- trigger="click"
26
- virtual-triggering
27
- :virtual-ref="ref_icons"
28
- />
29
- </el-icon>
30
- </el-button>
31
- <el-icon
32
- v-else
33
- ref="ref_icons"
34
- @mouseenter="visible = true"
35
- @mouseleave="visible = false"
36
- class="icon-btn"
37
- :class="getClass"
38
- >
39
- <svg v-if="selcomp" class="icon" aria-hidden="true">
40
- <use :href="'#' + iconName"></use>
41
- </svg>
42
- <component v-else :is="iconName"></component>
43
- <el-tooltip
44
- v-model:visible="visible"
45
- v-if="tip"
46
- :content="tip"
47
- placement="top"
48
- effect="light"
49
- trigger="click"
50
- virtual-triggering
51
- :virtual-ref="ref_icons"
52
- />
53
- </el-icon>
54
- </template>
55
- <script setup lang="ts">
56
- import { useVModel } from '@vueuse/core'
57
- import { computed, ref } from 'vue'
58
- const visible = ref(false)
59
- const ref_icons = ref()
60
- const selcomp = computed(() => {
61
- if (iconName.value?.includes('adtec')) {
62
- return true
63
- } else {
64
- return false
65
- }
66
- })
67
- /**
68
- * 获取样式
69
- */
70
- const getClass = computed(() => {
71
- let className = 'icon-btn--'
72
- // + props.type
73
- if (props.type !== 'default') {
74
- className += props.type
75
- } else {
76
- if (iconName.value === 'adtec-plus') {
77
- className += 'primary'
78
- } else if (iconName.value === 'adtec-refresh') {
79
- className += 'default'
80
- } else if (iconName.value === 'adtec-delete') {
81
- className += 'danger'
82
- } else if (iconName.value === 'adtec-edit') {
83
- className += 'warning'
84
- }
85
- }
86
-
87
- if (props.disabled) {
88
- className += ' icon-btn--disabled'
89
- }
90
- className += ' icon-btn--size-' + props.size
91
- return className
92
- })
93
- // 定义Props类型
94
- const props = defineProps({
95
- /**
96
- * @type string
97
- * @default ''
98
- * @description 提示文字
99
- */
100
- tip: {
101
- type: String,
102
- default: '',
103
- },
104
- /**
105
- * @type {'adtec-plus'|'adtec-refresh'|'adtec-delete'|'adtec-edit'}
106
- * @default 'default'
107
- * @description 图标
108
- */
109
- modelValue: {
110
- type: String,
111
- default: '',
112
- },
113
- /**
114
- * @type {'small'|'default'|'large'}
115
- * @default 'default'
116
- * @description 图标大小
117
- */
118
- size: {
119
- type: String,
120
- default: 'default',
121
- // 注意:在`<script setup>`中,直接使用函数进行验证,JSDoc辅助IDE提示
122
- validator: (value: string) => ['large', 'default', 'small'].includes(value),
123
- },
124
- /**
125
- * @type {"default" | "success" | "warning" | "info" | "primary" | "danger"}
126
- * @default 'default'
127
- * @description 图标类型
128
- */
129
- type: {
130
- type: String,
131
- default: 'default',
132
- validator: (value: string) =>
133
- ['default', 'success', 'warning', 'info', 'primary', 'danger'].includes(value),
134
- },
135
- /**
136
- * @type {"icon" | "button"}
137
- * @default 'icon'
138
- * @description 元素类型
139
- */
140
- elementType: {
141
- type: String,
142
- default: 'icon',
143
- },
144
- disabled: {
145
- type: Boolean,
146
- default: false,
147
- },
148
- })
149
- const emit = defineEmits(['update:modelValue'])
150
- const iconName = useVModel(props, 'modelValue', emit)
151
- </script>
152
- <style scoped lang="scss">
153
- .icon-btn {
154
- cursor: pointer;
155
- margin: 0px 0px 0px 8px;
156
- //margin-left: 5px;
157
- --el-button-hover-bg-color: var(--el-color-primary-light-3);
158
- &:hover {
159
- color: var(--el-button-hover-bg-color);
160
- }
161
- &--disabled {
162
- color: var(--el-color-disabled-text-color);
163
- cursor: not-allowed !important;
164
- }
165
- &--size-large {
166
- font-size: var(--el-font-size-large);
167
- }
168
- &--size-default {
169
- font-size: var(--el-font-size-base);
170
- }
171
- &--size-small {
172
- font-size: var(--el-font-size-small);
173
- }
174
- @each $type in (primary, success, warning, danger, info) {
175
- &--#{$type} {
176
- --el-button-hover-bg-color: var(--el-color-#{$type}-light-3);
177
- --el-button-disabled-bg-color: var(--el-color-#{$type}-light-5);
178
- color: var(--el-color-#{$type});
179
- }
180
- }
181
- }
182
- </style>
1
+ <!--创建人 丁盼-->
2
+ <!--说明: ElIconBtn-->
3
+ <!--创建时间: 2024/11/24 下午3:12-->
4
+ <!--修改时间: 2024/11/24 下午3:12-->
5
+ <template>
6
+ <el-button v-if="elementType === 'button'" style="padding: 8px 10px; margin-left: 4px">
7
+ <el-icon
8
+ ref="ref_icons"
9
+ @mouseenter="visible = true"
10
+ @mouseleave="visible = false"
11
+ class="icon-btn"
12
+ style="margin: 0"
13
+ :class="getClass"
14
+ >
15
+ <svg v-if="selcomp" class="icon" aria-hidden="true">
16
+ <use :href="'#' + iconName"></use>
17
+ </svg>
18
+ <component v-else :is="iconName"></component>
19
+ <el-tooltip
20
+ v-model:visible="visible"
21
+ v-if="tip"
22
+ :content="tip"
23
+ placement="top"
24
+ effect="light"
25
+ trigger="click"
26
+ virtual-triggering
27
+ :virtual-ref="ref_icons"
28
+ />
29
+ </el-icon>
30
+ </el-button>
31
+ <el-icon
32
+ v-else
33
+ ref="ref_icons"
34
+ @mouseenter="visible = true"
35
+ @mouseleave="visible = false"
36
+ class="icon-btn"
37
+ :class="getClass"
38
+ >
39
+ <svg v-if="selcomp" class="icon" aria-hidden="true">
40
+ <use :href="'#' + iconName"></use>
41
+ </svg>
42
+ <component v-else :is="iconName"></component>
43
+ <el-tooltip
44
+ v-model:visible="visible"
45
+ v-if="tip"
46
+ :content="tip"
47
+ placement="top"
48
+ effect="light"
49
+ trigger="click"
50
+ virtual-triggering
51
+ :virtual-ref="ref_icons"
52
+ />
53
+ </el-icon>
54
+ </template>
55
+ <script setup lang="ts">
56
+ import { useVModel } from '@vueuse/core'
57
+ import { computed, ref } from 'vue'
58
+ const visible = ref(false)
59
+ const ref_icons = ref()
60
+ const selcomp = computed(() => {
61
+ if (iconName.value?.includes('adtec')) {
62
+ return true
63
+ } else {
64
+ return false
65
+ }
66
+ })
67
+ /**
68
+ * 获取样式
69
+ */
70
+ const getClass = computed(() => {
71
+ let className = 'icon-btn--'
72
+ // + props.type
73
+ if (props.type !== 'default') {
74
+ className += props.type
75
+ } else {
76
+ if (iconName.value === 'adtec-plus') {
77
+ className += 'primary'
78
+ } else if (iconName.value === 'adtec-refresh') {
79
+ className += 'default'
80
+ } else if (iconName.value === 'adtec-delete') {
81
+ className += 'danger'
82
+ } else if (iconName.value === 'adtec-edit') {
83
+ className += 'warning'
84
+ }
85
+ }
86
+
87
+ if (props.disabled) {
88
+ className += ' icon-btn--disabled'
89
+ }
90
+ className += ' icon-btn--size-' + props.size
91
+ return className
92
+ })
93
+ // 定义Props类型
94
+ const props = defineProps({
95
+ /**
96
+ * @type string
97
+ * @default ''
98
+ * @description 提示文字
99
+ */
100
+ tip: {
101
+ type: String,
102
+ default: '',
103
+ },
104
+ /**
105
+ * @type {'adtec-plus'|'adtec-refresh'|'adtec-delete'|'adtec-edit'}
106
+ * @default 'default'
107
+ * @description 图标
108
+ */
109
+ modelValue: {
110
+ type: String,
111
+ default: '',
112
+ },
113
+ /**
114
+ * @type {'small'|'default'|'large'}
115
+ * @default 'default'
116
+ * @description 图标大小
117
+ */
118
+ size: {
119
+ type: String,
120
+ default: 'default',
121
+ // 注意:在`<script setup>`中,直接使用函数进行验证,JSDoc辅助IDE提示
122
+ validator: (value: string) => ['large', 'default', 'small'].includes(value),
123
+ },
124
+ /**
125
+ * @type {"default" | "success" | "warning" | "info" | "primary" | "danger"}
126
+ * @default 'default'
127
+ * @description 图标类型
128
+ */
129
+ type: {
130
+ type: String,
131
+ default: 'default',
132
+ validator: (value: string) =>
133
+ ['default', 'success', 'warning', 'info', 'primary', 'danger'].includes(value),
134
+ },
135
+ /**
136
+ * @type {"icon" | "button"}
137
+ * @default 'icon'
138
+ * @description 元素类型
139
+ */
140
+ elementType: {
141
+ type: String,
142
+ default: 'icon',
143
+ },
144
+ disabled: {
145
+ type: Boolean,
146
+ default: false,
147
+ },
148
+ })
149
+ const emit = defineEmits(['update:modelValue'])
150
+ const iconName = useVModel(props, 'modelValue', emit)
151
+ </script>
152
+ <style scoped lang="scss">
153
+ .icon-btn {
154
+ cursor: pointer;
155
+ margin: 0px 0px 0px 8px;
156
+ //margin-left: 5px;
157
+ --el-button-hover-bg-color: var(--el-color-primary-light-3);
158
+ &:hover {
159
+ color: var(--el-button-hover-bg-color);
160
+ }
161
+ &--disabled {
162
+ color: var(--el-color-disabled-text-color);
163
+ cursor: not-allowed !important;
164
+ }
165
+ &--size-large {
166
+ font-size: var(--el-font-size-large);
167
+ }
168
+ &--size-default {
169
+ font-size: var(--el-font-size-base);
170
+ }
171
+ &--size-small {
172
+ font-size: var(--el-font-size-small);
173
+ }
174
+ @each $type in (primary, success, warning, danger, info) {
175
+ &--#{$type} {
176
+ --el-button-hover-bg-color: var(--el-color-#{$type}-light-3);
177
+ --el-button-disabled-bg-color: var(--el-color-#{$type}-light-5);
178
+ color: var(--el-color-#{$type});
179
+ }
180
+ }
181
+ }
182
+ </style>
@@ -1,38 +1,38 @@
1
- <!--创建人 丁盼-->
2
- <!--说明: ElIcons-->
3
- <!--创建时间: 2024/10/18 上午11:47-->
4
- <!--修改时间: 2024/10/18 上午11:47-->
5
- <template>
6
- <!-- <span v-if="selcomp" class="adtec" :class="iconName"></span>-->
7
- <el-icon>
8
- <svg v-if="selcomp" class="icon" aria-hidden="true">
9
- <use :href="'#' + iconName"></use>
10
- </svg>
11
- <component v-else :is="iconName"></component>
12
- </el-icon>
13
- </template>
14
- <script setup lang="ts">
15
- import { computed } from 'vue'
16
- import { useVModel } from '@vueuse/core'
17
- const props = defineProps({
18
- modelValue: String,
19
- })
20
- const emit = defineEmits(['update:modelValue'])
21
- const iconName = useVModel(props, 'modelValue', emit)
22
- const selcomp = computed(() => {
23
- if (iconName.value?.includes('adtec')) {
24
- return true
25
- } else {
26
- return false
27
- }
28
- })
29
- </script>
30
- <style scoped lang="scss">
31
- .icon {
32
- width: 1em;
33
- height: 1em;
34
- vertical-align: -0.15em;
35
- fill: currentColor;
36
- overflow: hidden;
37
- }
38
- </style>
1
+ <!--创建人 丁盼-->
2
+ <!--说明: ElIcons-->
3
+ <!--创建时间: 2024/10/18 上午11:47-->
4
+ <!--修改时间: 2024/10/18 上午11:47-->
5
+ <template>
6
+ <!-- <span v-if="selcomp" class="adtec" :class="iconName"></span>-->
7
+ <el-icon>
8
+ <svg v-if="selcomp" class="icon" aria-hidden="true">
9
+ <use :href="'#' + iconName"></use>
10
+ </svg>
11
+ <component v-else :is="iconName"></component>
12
+ </el-icon>
13
+ </template>
14
+ <script setup lang="ts">
15
+ import { computed } from 'vue'
16
+ import { useVModel } from '@vueuse/core'
17
+ const props = defineProps({
18
+ modelValue: String,
19
+ })
20
+ const emit = defineEmits(['update:modelValue'])
21
+ const iconName = useVModel(props, 'modelValue', emit)
22
+ const selcomp = computed(() => {
23
+ if (iconName.value?.includes('adtec')) {
24
+ return true
25
+ } else {
26
+ return false
27
+ }
28
+ })
29
+ </script>
30
+ <style scoped lang="scss">
31
+ .icon {
32
+ width: 1em;
33
+ height: 1em;
34
+ vertical-align: -0.15em;
35
+ fill: currentColor;
36
+ overflow: hidden;
37
+ }
38
+ </style>