tianheng-ui 0.1.70 → 0.1.71

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,37 +1,51 @@
1
1
  <template>
2
- <div>
2
+ <div class="th-icons">
3
3
  <el-popover
4
- placement="bottom-start"
5
- :title="title"
4
+ popper-class="th-icons-popover"
6
5
  :width="width"
6
+ placement="bottom-start"
7
7
  trigger="click"
8
8
  >
9
9
  <el-input
10
- :value="value"
10
+ :value="icon"
11
11
  slot="reference"
12
12
  placeholder="请选择图标"
13
13
  clearable
14
14
  @clear="handleInputClear"
15
15
  >
16
- <div v-if="value" class="input-prefix" slot="prefix">
17
- <i :class="value" class="icon" />
16
+ <div v-if="icon" class="input-prefix" slot="prefix">
17
+ <i :class="icon" class="icon" />
18
18
  </div>
19
19
  </el-input>
20
20
 
21
- <div class="th-icons">
22
- <i
23
- v-for="(icon, index) in icons"
24
- class="icon"
25
- :class="icon"
26
- :key="index"
27
- @click="handleIconClick(icon)"
28
- />
29
- </div>
21
+ <el-tabs v-model="tabsActiveName" type="border-card">
22
+ <el-tab-pane label="Tianheng图标库" name="tianheng"> </el-tab-pane>
23
+ <el-tab-pane label="Element图标库" name="element"> </el-tab-pane>
24
+ <div v-if="tabsActiveName === 'tianheng'" class="th-icons-content">
25
+ <i
26
+ v-for="(icon, index) in tianhengIcons"
27
+ class="icon"
28
+ :class="icon"
29
+ :key="index"
30
+ @click="handleIconClick(icon)"
31
+ />
32
+ </div>
33
+ <div v-if="tabsActiveName === 'element'" class="th-icons-content">
34
+ <i
35
+ v-for="(icon, index) in elementIcons"
36
+ class="icon"
37
+ :class="icon"
38
+ :key="index"
39
+ @click="handleIconClick(icon)"
40
+ />
41
+ </div>
42
+ </el-tabs>
30
43
  </el-popover>
31
44
  </div>
32
45
  </template>
33
46
 
34
47
  <script>
48
+ import { tianhengIcons, elementIcons } from "./index";
35
49
  export default {
36
50
  name: "ThIcons",
37
51
  model: {
@@ -39,10 +53,6 @@ export default {
39
53
  prop: "value"
40
54
  },
41
55
  props: {
42
- title: {
43
- type: String,
44
- default: "Element图标库"
45
- },
46
56
  value: {
47
57
  type: String,
48
58
  default: ""
@@ -54,303 +64,34 @@ export default {
54
64
  },
55
65
  data() {
56
66
  return {
57
- icons: [
58
- "el-icon-platform-eleme",
59
- "el-icon-eleme",
60
- "el-icon-delete-solid",
61
- "el-icon-delete",
62
- "el-icon-s-tools",
63
- "el-icon-setting",
64
- "el-icon-user-solid",
65
- "el-icon-user",
66
- "el-icon-phone",
67
- "el-icon-phone-outline",
68
- "el-icon-more",
69
- "el-icon-more-outline",
70
- "el-icon-star-on",
71
- "el-icon-star-off",
72
- "el-icon-s-goods",
73
- "el-icon-goods",
74
- "el-icon-warning",
75
- "el-icon-warning-outline",
76
- "el-icon-question",
77
- "el-icon-info",
78
- "el-icon-remove",
79
- "el-icon-circle-plus",
80
- "el-icon-success",
81
- "el-icon-error",
82
- "el-icon-zoom-in",
83
- "el-icon-zoom-out",
84
- "el-icon-remove-outline",
85
- "el-icon-circle-plus-outline",
86
- "el-icon-circle-check",
87
- "el-icon-circle-close",
88
- "el-icon-s-help",
89
- "el-icon-help",
90
- "el-icon-minus",
91
- "el-icon-plus",
92
- "el-icon-check",
93
- "el-icon-close",
94
- "el-icon-picture",
95
- "el-icon-picture-outline",
96
- "el-icon-picture-outline-round",
97
- "el-icon-upload",
98
- "el-icon-upload2",
99
- "el-icon-download",
100
- "el-icon-camera-solid",
101
- "el-icon-camera",
102
- "el-icon-video-camera-solid",
103
- "el-icon-video-camera",
104
- "el-icon-message-solid",
105
- "el-icon-bell",
106
- "el-icon-s-cooperation",
107
- "el-icon-s-order",
108
- "el-icon-s-platform",
109
- "el-icon-s-fold",
110
- "el-icon-s-unfold",
111
- "el-icon-s-operation",
112
- "el-icon-s-promotion",
113
- "el-icon-s-home",
114
- "el-icon-s-release",
115
- "el-icon-s-ticket",
116
- "el-icon-s-management",
117
- "el-icon-s-open",
118
- "el-icon-s-shop",
119
- "el-icon-s-marketing",
120
- "el-icon-s-flag",
121
- "el-icon-s-comment",
122
- "el-icon-s-finance",
123
- "el-icon-s-claim",
124
- "el-icon-s-custom",
125
- "el-icon-s-opportunity",
126
- "el-icon-s-data",
127
- "el-icon-s-check",
128
- "el-icon-s-grid",
129
- "el-icon-menu",
130
- "el-icon-share",
131
- "el-icon-d-caret",
132
- "el-icon-caret-left",
133
- "el-icon-caret-right",
134
- "el-icon-caret-bottom",
135
- "el-icon-caret-top",
136
- "el-icon-bottom-left",
137
- "el-icon-bottom-right",
138
- "el-icon-back",
139
- "el-icon-right",
140
- "el-icon-bottom",
141
- "el-icon-top",
142
- "el-icon-top-left",
143
- "el-icon-top-right",
144
- "el-icon-arrow-left",
145
- "el-icon-arrow-right",
146
- "el-icon-arrow-down",
147
- "el-icon-arrow-up",
148
- "el-icon-d-arrow-left",
149
- "el-icon-d-arrow-right",
150
- "el-icon-video-pause",
151
- "el-icon-video-play",
152
- "el-icon-refresh",
153
- "el-icon-refresh-right",
154
- "el-icon-refresh-left",
155
- "el-icon-finished",
156
- "el-icon-sort",
157
- "el-icon-sort-up",
158
- "el-icon-sort-down",
159
- "el-icon-rank",
160
- "el-icon-loading",
161
- "el-icon-view",
162
- "el-icon-c-scale-to-original",
163
- "el-icon-date",
164
- "el-icon-edit",
165
- "el-icon-edit-outline",
166
- "el-icon-folder",
167
- "el-icon-folder-opened",
168
- "el-icon-folder-add",
169
- "el-icon-folder-remove",
170
- "el-icon-folder-delete",
171
- "el-icon-folder-checked",
172
- "el-icon-tickets",
173
- "el-icon-document-remove",
174
- "el-icon-document-delete",
175
- "el-icon-document-copy",
176
- "el-icon-document-checked",
177
- "el-icon-document",
178
- "el-icon-document-add",
179
- "el-icon-printer",
180
- "el-icon-paperclip",
181
- "el-icon-takeaway-box",
182
- "el-icon-search",
183
- "el-icon-monitor",
184
- "el-icon-attract",
185
- "el-icon-mobile",
186
- "el-icon-scissors",
187
- "el-icon-umbrella",
188
- "el-icon-headset",
189
- "el-icon-brush",
190
- "el-icon-mouse",
191
- "el-icon-coordinate",
192
- "el-icon-magic-stick",
193
- "el-icon-reading",
194
- "el-icon-data-line",
195
- "el-icon-data-board",
196
- "el-icon-pie-chart",
197
- "el-icon-data-analysis",
198
- "el-icon-collection-tag",
199
- "el-icon-film",
200
- "el-icon-suitcase",
201
- "el-icon-suitcase-1",
202
- "el-icon-receiving",
203
- "el-icon-collection",
204
- "el-icon-files",
205
- "el-icon-notebook-1",
206
- "el-icon-notebook-2",
207
- "el-icon-toilet-paper",
208
- "el-icon-office-building",
209
- "el-icon-school",
210
- "el-icon-table-lamp",
211
- "el-icon-house",
212
- "el-icon-no-smoking",
213
- "el-icon-smoking",
214
- "el-icon-shopping-cart-full",
215
- "el-icon-shopping-cart-1",
216
- "el-icon-shopping-cart-2",
217
- "el-icon-shopping-bag-1",
218
- "el-icon-shopping-bag-2",
219
- "el-icon-sold-out",
220
- "el-icon-sell",
221
- "el-icon-present",
222
- "el-icon-box",
223
- "el-icon-bank-card",
224
- "el-icon-money",
225
- "el-icon-coin",
226
- "el-icon-wallet",
227
- "el-icon-discount",
228
- "el-icon-price-tag",
229
- "el-icon-news",
230
- "el-icon-guide",
231
- "el-icon-male",
232
- "el-icon-female",
233
- "el-icon-thumb",
234
- "el-icon-cpu",
235
- "el-icon-link",
236
- "el-icon-connection",
237
- "el-icon-open",
238
- "el-icon-turn-off",
239
- "el-icon-set-up",
240
- "el-icon-chat-round",
241
- "el-icon-chat-line-round",
242
- "el-icon-chat-square",
243
- "el-icon-chat-dot-round",
244
- "el-icon-chat-dot-square",
245
- "el-icon-chat-line-square",
246
- "el-icon-message",
247
- "el-icon-postcard",
248
- "el-icon-position",
249
- "el-icon-turn-off-microphone",
250
- "el-icon-microphone",
251
- "el-icon-close-notification",
252
- "el-icon-bangzhu",
253
- "el-icon-time",
254
- "el-icon-odometer",
255
- "el-icon-crop",
256
- "el-icon-aim",
257
- "el-icon-switch-button",
258
- "el-icon-full-screen",
259
- "el-icon-copy-document",
260
- "el-icon-mic",
261
- "el-icon-stopwatch",
262
- "el-icon-medal-1",
263
- "el-icon-medal",
264
- "el-icon-trophy",
265
- "el-icon-trophy-1",
266
- "el-icon-first-aid-kit",
267
- "el-icon-discover",
268
- "el-icon-place",
269
- "el-icon-location",
270
- "el-icon-location-outline",
271
- "el-icon-location-information",
272
- "el-icon-add-location",
273
- "el-icon-delete-location",
274
- "el-icon-map-location",
275
- "el-icon-alarm-clock",
276
- "el-icon-timer",
277
- "el-icon-watch-1",
278
- "el-icon-watch",
279
- "el-icon-lock",
280
- "el-icon-unlock",
281
- "el-icon-key",
282
- "el-icon-service",
283
- "el-icon-mobile-phone",
284
- "el-icon-bicycle",
285
- "el-icon-truck",
286
- "el-icon-ship",
287
- "el-icon-basketball",
288
- "el-icon-football",
289
- "el-icon-soccer",
290
- "el-icon-baseball",
291
- "el-icon-wind-power",
292
- "el-icon-light-rain",
293
- "el-icon-lightning",
294
- "el-icon-heavy-rain",
295
- "el-icon-sunrise",
296
- "el-icon-sunrise-1",
297
- "el-icon-sunset",
298
- "el-icon-sunny",
299
- "el-icon-cloudy",
300
- "el-icon-partly-cloudy",
301
- "el-icon-cloudy-and-sunny",
302
- "el-icon-moon",
303
- "el-icon-moon-night",
304
- "el-icon-dish",
305
- "el-icon-dish-1",
306
- "el-icon-food",
307
- "el-icon-chicken",
308
- "el-icon-fork-spoon",
309
- "el-icon-knife-fork",
310
- "el-icon-burger",
311
- "el-icon-tableware",
312
- "el-icon-sugar",
313
- "el-icon-dessert",
314
- "el-icon-ice-cream",
315
- "el-icon-hot-water",
316
- "el-icon-water-cup",
317
- "el-icon-coffee-cup",
318
- "el-icon-cold-drink",
319
- "el-icon-goblet",
320
- "el-icon-goblet-full",
321
- "el-icon-goblet-square",
322
- "el-icon-goblet-square-full",
323
- "el-icon-refrigerator",
324
- "el-icon-grape",
325
- "el-icon-watermelon",
326
- "el-icon-cherry",
327
- "el-icon-apple",
328
- "el-icon-pear",
329
- "el-icon-orange",
330
- "el-icon-coffee",
331
- "el-icon-ice-tea",
332
- "el-icon-ice-drink",
333
- "el-icon-milk-tea",
334
- "el-icon-potato-strips",
335
- "el-icon-lollipop",
336
- "el-icon-ice-cream-square",
337
- "el-icon-ice-cream-round"
338
- ]
67
+ icon: this.value,
68
+ tabsActiveName: "tianheng",
69
+ tianhengIcons: tianhengIcons,
70
+ elementIcons: elementIcons
339
71
  };
340
72
  },
73
+ watch: {
74
+ icon(val) {
75
+ this.$emit("input", val);
76
+ this.$emit("update:value", val);
77
+ },
78
+ value(val) {
79
+ this.icon = val;
80
+ }
81
+ },
341
82
  created() {},
342
83
  methods: {
343
84
  handleIconClick(icon) {
344
- this.$emit("input", icon);
85
+ this.icon = icon;
345
86
  },
346
87
  handleInputClear() {
347
- this.$emit("input", "");
88
+ this.icon = "";
348
89
  }
349
90
  }
350
91
  };
351
92
  </script>
352
93
 
353
- <style lang="less" scoped>
94
+ <style lang="scss" scoped>
354
95
  .input-prefix {
355
96
  height: 100%;
356
97
  width: 32px;
@@ -360,18 +101,24 @@ export default {
360
101
  font-size: 20px;
361
102
  }
362
103
  }
363
- .th-icons {
104
+ .th-icons-content {
364
105
  height: 300px;
365
106
  overflow-y: scroll;
366
107
  .icon {
367
108
  padding: 8px;
368
109
  font-size: 20px;
369
110
  border-radius: 2px;
111
+ transition: 0.25s;
370
112
  }
371
113
  .icon:hover {
372
114
  cursor: pointer;
373
115
  background-color: #f2f2f2;
374
- // transition: .3s;
375
116
  }
376
117
  }
377
118
  </style>
119
+
120
+ <style lang="scss">
121
+ .th-icons-popover {
122
+ padding: 0 !important;
123
+ }
124
+ </style>