tianheng-ui 0.1.71 → 0.1.73

Sign up to get free protection for your applications and to get access to all the features.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "tianheng-ui",
3
3
  "description": "A Vue.js project",
4
- "version": "0.1.71",
4
+ "version": "0.1.73",
5
5
  "author": "shu lang <403732931@qq.com>",
6
6
  "license": "MIT",
7
7
  "private": false,
@@ -891,3 +891,338 @@ export const elementIcons = [
891
891
  "el-icon-ice-cream-square",
892
892
  "el-icon-ice-cream-round"
893
893
  ];
894
+
895
+ export const antDesignIcons = [
896
+ "step-backward",
897
+ "step-forward",
898
+ "fast-backward",
899
+ "fast-forward",
900
+ "shrink",
901
+ "arrows-alt",
902
+ "down",
903
+ "up",
904
+ "left",
905
+ "right",
906
+ "caret-up",
907
+ "caret-down",
908
+ "caret-left",
909
+ "caret-right",
910
+ "up-circle",
911
+ "down-circle",
912
+ "left-circle",
913
+ "right-circle",
914
+ "double-right",
915
+ "double-left",
916
+ "vertical-left",
917
+ "vertical-right",
918
+ "forward",
919
+ "backward",
920
+ "rollback",
921
+ "enter",
922
+ "retweet",
923
+ "swap",
924
+ "swap-left",
925
+ "swap-right",
926
+ "arrow-up",
927
+ "arrow-down",
928
+ "arrow-left",
929
+ "arrow-right",
930
+ "play-circle",
931
+ "up-square",
932
+ "down-square",
933
+ "left-square",
934
+ "right-square",
935
+ "login",
936
+ "logout",
937
+ "menu-fold",
938
+ "menu-unfold",
939
+ "border-bottom",
940
+ "border-horizontal",
941
+ "border-inner",
942
+ "border-left",
943
+ "border-right",
944
+ "border-top",
945
+ "border-verticle",
946
+ "pic-center",
947
+ "pic-left",
948
+ "pic-right",
949
+ "radius-bottomleft",
950
+ "radius-bottomright",
951
+ "radius-upleft",
952
+ "fullscreen",
953
+ "fullscreen-exit",
954
+ "question",
955
+ "question-circle",
956
+ "plus",
957
+ "plus-circle",
958
+ "pause",
959
+ "pause-circle",
960
+ "minus",
961
+ "minus-circle",
962
+ "plus-square",
963
+ "minus-square",
964
+ "info",
965
+ "info-circle",
966
+ "exclamation",
967
+ "exclamation-circle",
968
+ "close",
969
+ "close-circle",
970
+ "close-square",
971
+ "check",
972
+ "check-circle",
973
+ "check-square",
974
+ "clock-circle",
975
+ "warning",
976
+ "issues-close",
977
+ "stop",
978
+ "edit",
979
+ "form.vue",
980
+ "copy",
981
+ "scissor",
982
+ "delete",
983
+ "snippets",
984
+ "diff",
985
+ "highlight",
986
+ "align-center",
987
+ "align-left",
988
+ "align-right",
989
+ "bg-colors",
990
+ "bold",
991
+ "italic",
992
+ "underline",
993
+ "strikethrough",
994
+ "redo",
995
+ "undo",
996
+ "zoom-in",
997
+ "zoom-out",
998
+ "font-colors",
999
+ "font-size",
1000
+ "line-height",
1001
+ "column-height",
1002
+ "dash",
1003
+ "small-dash",
1004
+ "sort-ascending",
1005
+ "sort-descending",
1006
+ "drag",
1007
+ "ordered-list",
1008
+ "radius-setting",
1009
+ "area-chart",
1010
+ "pie-chart",
1011
+ "bar-chart",
1012
+ "dot-chart",
1013
+ "line-chart",
1014
+ "radar-chart",
1015
+ "heat-map",
1016
+ "fall",
1017
+ "rise",
1018
+ "stock",
1019
+ "box-plot",
1020
+ "fund",
1021
+ "sliders",
1022
+ "lock",
1023
+ "unlock",
1024
+ "bars",
1025
+ "book",
1026
+ "calendar",
1027
+ "cloud",
1028
+ "cloud-download",
1029
+ "code",
1030
+ "copy",
1031
+ "credit-card",
1032
+ "delete",
1033
+ "desktop",
1034
+ "download",
1035
+ "ellipsis",
1036
+ "file",
1037
+ "file-text",
1038
+ "file-unknown",
1039
+ "file-pdf",
1040
+ "file-word",
1041
+ "file-excel",
1042
+ "file-jpg",
1043
+ "file-ppt",
1044
+ "file-markdown",
1045
+ "file-add",
1046
+ "folder",
1047
+ "folder-open",
1048
+ "folder-add",
1049
+ "hdd",
1050
+ "frown",
1051
+ "meh",
1052
+ "smile",
1053
+ "inbox",
1054
+ "laptop",
1055
+ "appstore",
1056
+ "link",
1057
+ "mail",
1058
+ "mobile",
1059
+ "notification",
1060
+ "paper-clip",
1061
+ "picture",
1062
+ "poweroff",
1063
+ "reload",
1064
+ "search",
1065
+ "setting",
1066
+ "share-alt",
1067
+ "shopping-cart",
1068
+ "tablet",
1069
+ "tag",
1070
+ "tags",
1071
+ "to-top",
1072
+ "upload",
1073
+ "user",
1074
+ "video-camera",
1075
+ "home",
1076
+ "loading",
1077
+ "loading-3-quarters",
1078
+ "cloud-upload",
1079
+ "star",
1080
+ "heart",
1081
+ "environment",
1082
+ "eye",
1083
+ "camera",
1084
+ "save",
1085
+ "team",
1086
+ "solution",
1087
+ "phone",
1088
+ "filter",
1089
+ "exception",
1090
+ "export",
1091
+ "customer-service",
1092
+ "qrcode",
1093
+ "scan",
1094
+ "like",
1095
+ "dislike",
1096
+ "message",
1097
+ "pay-circle",
1098
+ "calculator",
1099
+ "pushpin",
1100
+ "bulb",
1101
+ "select",
1102
+ "switcher",
1103
+ "rocket",
1104
+ "bell",
1105
+ "disconnect",
1106
+ "database",
1107
+ "compass",
1108
+ "barcode",
1109
+ "hourglass",
1110
+ "key",
1111
+ "flag",
1112
+ "layout",
1113
+ "printer",
1114
+ "sound",
1115
+ "usb",
1116
+ "skin",
1117
+ "tool",
1118
+ "sync",
1119
+ "wifi",
1120
+ "car",
1121
+ "schedule",
1122
+ "user-add",
1123
+ "user-delete",
1124
+ "usergroup-add",
1125
+ "usergroup-delete",
1126
+ "man",
1127
+ "woman",
1128
+ "shop",
1129
+ "gift",
1130
+ "idcard",
1131
+ "medicine-box",
1132
+ "red-envelope",
1133
+ "coffee",
1134
+ "copyright",
1135
+ "trademark",
1136
+ "safety",
1137
+ "wallet",
1138
+ "bank",
1139
+ "trophy",
1140
+ "contacts",
1141
+ "global",
1142
+ "shake",
1143
+ "api",
1144
+ "fork",
1145
+ "dashboard",
1146
+ "table",
1147
+ "profile",
1148
+ "alert",
1149
+ "audit",
1150
+ "branches",
1151
+ "build",
1152
+ "border",
1153
+ "crown",
1154
+ "experiment",
1155
+ "fire",
1156
+ "money-collect",
1157
+ "property-safety",
1158
+ "read",
1159
+ "reconciliation",
1160
+ "rest",
1161
+ "security-scan",
1162
+ "insurance",
1163
+ "interaction",
1164
+ "safety-certificate",
1165
+ "project",
1166
+ "thunderbolt",
1167
+ "block",
1168
+ "cluster",
1169
+ "deployment-unit",
1170
+ "dollar",
1171
+ "euro",
1172
+ "pound",
1173
+ "file-done",
1174
+ "file-exclamation",
1175
+ "file-protect",
1176
+ "file-search",
1177
+ "file-sync",
1178
+ "gateway",
1179
+ "gold",
1180
+ "robot",
1181
+ "shopping",
1182
+ "android",
1183
+ "apple",
1184
+ "windows",
1185
+ "ie",
1186
+ "chrome",
1187
+ "github",
1188
+ "aliwangwang",
1189
+ "dingding",
1190
+ "weibo-square",
1191
+ "weibo-circle",
1192
+ "taobao-circle",
1193
+ "html5",
1194
+ "weibo",
1195
+ "twitter",
1196
+ "wechat",
1197
+ "youtube",
1198
+ "alipay-circle",
1199
+ "taobao",
1200
+ "skype",
1201
+ "qq",
1202
+ "medium-workmark",
1203
+ "gitlab",
1204
+ "medium",
1205
+ "linkedin",
1206
+ "google-plus",
1207
+ "dropbox",
1208
+ "facebook",
1209
+ "codepen",
1210
+ "code-sandbox",
1211
+ "amazon",
1212
+ "google",
1213
+ "codepen-circle",
1214
+ "alipay",
1215
+ "ant-design",
1216
+ "aliyun",
1217
+ "zhihu",
1218
+ "slack",
1219
+ "slack-square",
1220
+ "behance",
1221
+ "behance-square",
1222
+ "dribbble",
1223
+ "dribbble-square",
1224
+ "instagram",
1225
+ "yuque",
1226
+ "alibaba",
1227
+ "yahoo"
1228
+ ];
@@ -14,29 +14,43 @@
14
14
  @clear="handleInputClear"
15
15
  >
16
16
  <div v-if="icon" class="input-prefix" slot="prefix">
17
- <i :class="icon" class="icon" />
17
+ <i
18
+ v-if="icon.indexOf('th-icon') > -1 || icon.indexOf('el-icon') > -1"
19
+ :class="`icon ${icon}`"
20
+ />
21
+ <a-icon v-else class="icon" :type="icon" />
18
22
  </div>
19
23
  </el-input>
20
24
 
21
- <el-tabs v-model="tabsActiveName" type="border-card">
25
+ <el-tabs v-model="activeName" type="border-card">
22
26
  <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">
27
+ <el-tab-pane v-if="element" label="Element图标库" name="element">
28
+ </el-tab-pane>
29
+ <el-tab-pane v-if="antDesign" label="AntDesign图标库" name="antDesign">
30
+ </el-tab-pane>
31
+ <div v-if="activeName === 'tianheng'" class="th-icons-content">
25
32
  <i
26
- v-for="(icon, index) in tianhengIcons"
27
- class="icon"
28
- :class="icon"
33
+ v-for="(item, index) in tianhengIcons"
34
+ :class="`icon ${item}`"
29
35
  :key="index"
30
- @click="handleIconClick(icon)"
36
+ @click="handleIconClick(item)"
31
37
  />
32
38
  </div>
33
- <div v-if="tabsActiveName === 'element'" class="th-icons-content">
39
+ <div v-if="activeName === 'element'" class="th-icons-content">
34
40
  <i
35
- v-for="(icon, index) in elementIcons"
41
+ v-for="(item, index) in elementIcons"
42
+ :class="`icon ${item}`"
43
+ :key="index"
44
+ @click="handleIconClick(item)"
45
+ />
46
+ </div>
47
+ <div v-if="activeName === 'antDesign'" class="th-icons-content">
48
+ <a-icon
49
+ v-for="(item, index) in antDesignIcons"
36
50
  class="icon"
37
- :class="icon"
51
+ :type="item"
38
52
  :key="index"
39
- @click="handleIconClick(icon)"
53
+ @click="handleIconClick(item)"
40
54
  />
41
55
  </div>
42
56
  </el-tabs>
@@ -45,7 +59,7 @@
45
59
  </template>
46
60
 
47
61
  <script>
48
- import { tianhengIcons, elementIcons } from "./index";
62
+ import { tianhengIcons, elementIcons, antDesignIcons } from "./index";
49
63
  export default {
50
64
  name: "ThIcons",
51
65
  model: {
@@ -60,23 +74,49 @@ export default {
60
74
  width: {
61
75
  type: Number,
62
76
  default: 400
77
+ },
78
+ element: {
79
+ type: Boolean,
80
+ default: true
81
+ },
82
+ antDesign: {
83
+ type: Boolean,
84
+ default: false
85
+ },
86
+ active: {
87
+ type: String,
88
+ default: "tianheng"
63
89
  }
64
90
  },
65
91
  data() {
66
92
  return {
67
93
  icon: this.value,
68
- tabsActiveName: "tianheng",
94
+ activeName: this.active,
69
95
  tianhengIcons: tianhengIcons,
70
- elementIcons: elementIcons
96
+ elementIcons: elementIcons,
97
+ antDesignIcons: antDesignIcons
71
98
  };
72
99
  },
73
100
  watch: {
101
+ value(val) {
102
+ if (val.indexOf("th-icon") > -1) {
103
+ this.activeName = "tianheng";
104
+ } else if (val.indexOf("el-icon") > -1) {
105
+ this.activeName = "element";
106
+ } else {
107
+ this.activeName = "antDesign";
108
+ }
109
+ this.icon = val;
110
+ },
74
111
  icon(val) {
75
112
  this.$emit("input", val);
76
113
  this.$emit("update:value", val);
77
114
  },
78
- value(val) {
79
- this.icon = val;
115
+ active(val) {
116
+ this.activeName = val;
117
+ },
118
+ activeName(val) {
119
+ this.$emit("update:active", val);
80
120
  }
81
121
  },
82
122
  created() {},
@@ -98,13 +138,19 @@ export default {
98
138
  display: flex;
99
139
  align-items: center;
100
140
  .icon {
141
+ width: 20px;
142
+ height: 20px;
101
143
  font-size: 20px;
144
+ color: #666;
102
145
  }
103
146
  }
104
147
  .th-icons-content {
105
148
  height: 300px;
106
149
  overflow-y: scroll;
107
150
  .icon {
151
+ display: inline-block;
152
+ width: 36px;
153
+ height: 36px;
108
154
  padding: 8px;
109
155
  font-size: 20px;
110
156
  border-radius: 2px;