kz-ui-base 1.0.2 → 1.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.
Files changed (283) hide show
  1. package/package.json +1 -1
  2. package/common/package-lock.json +0 -18
  3. package/common/package.json +0 -51
  4. package/common/src/api/common/cacher.js +0 -15
  5. package/common/src/api/common/common.js +0 -299
  6. package/common/src/api/common/material.js +0 -71
  7. package/common/src/api/login.js +0 -103
  8. package/common/src/api/menu.js +0 -18
  9. package/common/src/assets/401_images/401.gif +0 -0
  10. package/common/src/assets/404_images/404.png +0 -0
  11. package/common/src/assets/404_images/404_cloud.png +0 -0
  12. package/common/src/assets/icons/file-config.png +0 -0
  13. package/common/src/assets/icons/file-doc.png +0 -0
  14. package/common/src/assets/icons/file-exe.png +0 -0
  15. package/common/src/assets/icons/file-ini.png +0 -0
  16. package/common/src/assets/icons/file-jpg.png +0 -0
  17. package/common/src/assets/icons/file-mpg.png +0 -0
  18. package/common/src/assets/icons/file-none.png +0 -0
  19. package/common/src/assets/icons/file-pdf.png +0 -0
  20. package/common/src/assets/icons/file-png.png +0 -0
  21. package/common/src/assets/icons/file-ppt.png +0 -0
  22. package/common/src/assets/icons/file-rar.png +0 -0
  23. package/common/src/assets/icons/file-txt.png +0 -0
  24. package/common/src/assets/icons/file-wav.png +0 -0
  25. package/common/src/assets/icons/file-xls.png +0 -0
  26. package/common/src/assets/icons/index.js +0 -9
  27. package/common/src/assets/icons/svg/404.svg +0 -1
  28. package/common/src/assets/icons/svg/bug.svg +0 -1
  29. package/common/src/assets/icons/svg/build.svg +0 -1
  30. package/common/src/assets/icons/svg/button.svg +0 -1
  31. package/common/src/assets/icons/svg/cascader.svg +0 -1
  32. package/common/src/assets/icons/svg/chart.svg +0 -1
  33. package/common/src/assets/icons/svg/checkbox.svg +0 -1
  34. package/common/src/assets/icons/svg/client.svg +0 -1
  35. package/common/src/assets/icons/svg/clipboard.svg +0 -1
  36. package/common/src/assets/icons/svg/code.svg +0 -1
  37. package/common/src/assets/icons/svg/color.svg +0 -1
  38. package/common/src/assets/icons/svg/component.svg +0 -1
  39. package/common/src/assets/icons/svg/dashboard.svg +0 -1
  40. package/common/src/assets/icons/svg/date-range.svg +0 -1
  41. package/common/src/assets/icons/svg/date.svg +0 -1
  42. package/common/src/assets/icons/svg/dict.svg +0 -1
  43. package/common/src/assets/icons/svg/documentation.svg +0 -1
  44. package/common/src/assets/icons/svg/download.svg +0 -1
  45. package/common/src/assets/icons/svg/drag.svg +0 -1
  46. package/common/src/assets/icons/svg/druid.svg +0 -1
  47. package/common/src/assets/icons/svg/edit.svg +0 -1
  48. package/common/src/assets/icons/svg/education.svg +0 -1
  49. package/common/src/assets/icons/svg/email.svg +0 -1
  50. package/common/src/assets/icons/svg/example.svg +0 -1
  51. package/common/src/assets/icons/svg/excel.svg +0 -1
  52. package/common/src/assets/icons/svg/exit-fullscreen.svg +0 -1
  53. package/common/src/assets/icons/svg/eye-open.svg +0 -1
  54. package/common/src/assets/icons/svg/eye.svg +0 -1
  55. package/common/src/assets/icons/svg/form.svg +0 -1
  56. package/common/src/assets/icons/svg/fullscreen.svg +0 -1
  57. package/common/src/assets/icons/svg/github.svg +0 -1
  58. package/common/src/assets/icons/svg/guide.svg +0 -1
  59. package/common/src/assets/icons/svg/icon.svg +0 -1
  60. package/common/src/assets/icons/svg/input.svg +0 -1
  61. package/common/src/assets/icons/svg/international.svg +0 -1
  62. package/common/src/assets/icons/svg/job.svg +0 -1
  63. package/common/src/assets/icons/svg/kz_authority.svg +0 -1
  64. package/common/src/assets/icons/svg/kz_build.svg +0 -1
  65. package/common/src/assets/icons/svg/kz_code.svg +0 -1
  66. package/common/src/assets/icons/svg/kz_config.svg +0 -1
  67. package/common/src/assets/icons/svg/kz_creatTime.svg +0 -1
  68. package/common/src/assets/icons/svg/kz_dept.svg +0 -1
  69. package/common/src/assets/icons/svg/kz_dept_profile.svg +0 -1
  70. package/common/src/assets/icons/svg/kz_dict.svg +0 -1
  71. package/common/src/assets/icons/svg/kz_edit.svg +0 -1
  72. package/common/src/assets/icons/svg/kz_enlarge.svg +0 -1
  73. package/common/src/assets/icons/svg/kz_enterprise.svg +0 -1
  74. package/common/src/assets/icons/svg/kz_fold.svg +0 -2
  75. package/common/src/assets/icons/svg/kz_job.svg +0 -1
  76. package/common/src/assets/icons/svg/kz_layout.svg +0 -1
  77. package/common/src/assets/icons/svg/kz_log.svg +0 -1
  78. package/common/src/assets/icons/svg/kz_log_loginInfo.svg +0 -1
  79. package/common/src/assets/icons/svg/kz_log_operation.svg +0 -1
  80. package/common/src/assets/icons/svg/kz_master-slave.svg +0 -2
  81. package/common/src/assets/icons/svg/kz_menu.svg +0 -1
  82. package/common/src/assets/icons/svg/kz_menu_analyse.svg +0 -22
  83. package/common/src/assets/icons/svg/kz_message.svg +0 -1
  84. package/common/src/assets/icons/svg/kz_monitor.svg +0 -1
  85. package/common/src/assets/icons/svg/kz_nacos.svg +0 -1
  86. package/common/src/assets/icons/svg/kz_narrow.svg +0 -1
  87. package/common/src/assets/icons/svg/kz_notice.svg +0 -2
  88. package/common/src/assets/icons/svg/kz_online.svg +0 -1
  89. package/common/src/assets/icons/svg/kz_open.svg +0 -2
  90. package/common/src/assets/icons/svg/kz_organization.svg +0 -1
  91. package/common/src/assets/icons/svg/kz_post.svg +0 -1
  92. package/common/src/assets/icons/svg/kz_post_profile.svg +0 -1
  93. package/common/src/assets/icons/svg/kz_productCenter.svg +0 -1
  94. package/common/src/assets/icons/svg/kz_rabbit.svg +0 -1
  95. package/common/src/assets/icons/svg/kz_refresh.svg +0 -2
  96. package/common/src/assets/icons/svg/kz_renovation.svg +0 -1
  97. package/common/src/assets/icons/svg/kz_role.svg +0 -1
  98. package/common/src/assets/icons/svg/kz_roleGroup.svg +0 -1
  99. package/common/src/assets/icons/svg/kz_search.svg +0 -1
  100. package/common/src/assets/icons/svg/kz_sentinel.svg +0 -1
  101. package/common/src/assets/icons/svg/kz_server.svg +0 -1
  102. package/common/src/assets/icons/svg/kz_setting.svg +0 -1
  103. package/common/src/assets/icons/svg/kz_sex.svg +0 -1
  104. package/common/src/assets/icons/svg/kz_source.svg +0 -2
  105. package/common/src/assets/icons/svg/kz_strategy.svg +0 -2
  106. package/common/src/assets/icons/svg/kz_swagger.svg +0 -1
  107. package/common/src/assets/icons/svg/kz_system.svg +0 -1
  108. package/common/src/assets/icons/svg/kz_tenant.svg +0 -1
  109. package/common/src/assets/icons/svg/kz_tool.svg +0 -1
  110. package/common/src/assets/icons/svg/kz_user.svg +0 -1
  111. package/common/src/assets/icons/svg/language.svg +0 -1
  112. package/common/src/assets/icons/svg/link.svg +0 -1
  113. package/common/src/assets/icons/svg/list.svg +0 -1
  114. package/common/src/assets/icons/svg/lock.svg +0 -1
  115. package/common/src/assets/icons/svg/log.svg +0 -1
  116. package/common/src/assets/icons/svg/logininfor.svg +0 -1
  117. package/common/src/assets/icons/svg/mes-ad.svg +0 -21
  118. package/common/src/assets/icons/svg/mes-ic.svg +0 -16
  119. package/common/src/assets/icons/svg/mes-mfg-order.svg +0 -22
  120. package/common/src/assets/icons/svg/mes-tm.svg +0 -15
  121. package/common/src/assets/icons/svg/message.svg +0 -1
  122. package/common/src/assets/icons/svg/money.svg +0 -1
  123. package/common/src/assets/icons/svg/monitor.svg +0 -2
  124. package/common/src/assets/icons/svg/nacos.svg +0 -1
  125. package/common/src/assets/icons/svg/nested.svg +0 -1
  126. package/common/src/assets/icons/svg/number.svg +0 -1
  127. package/common/src/assets/icons/svg/online.svg +0 -1
  128. package/common/src/assets/icons/svg/password.svg +0 -1
  129. package/common/src/assets/icons/svg/pdf.svg +0 -1
  130. package/common/src/assets/icons/svg/people.svg +0 -1
  131. package/common/src/assets/icons/svg/peoples.svg +0 -1
  132. package/common/src/assets/icons/svg/phone.svg +0 -1
  133. package/common/src/assets/icons/svg/post.svg +0 -1
  134. package/common/src/assets/icons/svg/qq.svg +0 -1
  135. package/common/src/assets/icons/svg/question.svg +0 -1
  136. package/common/src/assets/icons/svg/radio.svg +0 -1
  137. package/common/src/assets/icons/svg/rate.svg +0 -1
  138. package/common/src/assets/icons/svg/row.svg +0 -1
  139. package/common/src/assets/icons/svg/search.svg +0 -1
  140. package/common/src/assets/icons/svg/select.svg +0 -1
  141. package/common/src/assets/icons/svg/sentinel.svg +0 -1
  142. package/common/src/assets/icons/svg/server.svg +0 -1
  143. package/common/src/assets/icons/svg/shop-call.svg +0 -14
  144. package/common/src/assets/icons/svg/shopping.svg +0 -1
  145. package/common/src/assets/icons/svg/size.svg +0 -1
  146. package/common/src/assets/icons/svg/skill.svg +0 -1
  147. package/common/src/assets/icons/svg/slider.svg +0 -1
  148. package/common/src/assets/icons/svg/star.svg +0 -1
  149. package/common/src/assets/icons/svg/stock-query.svg +0 -14
  150. package/common/src/assets/icons/svg/stock-report.svg +0 -14
  151. package/common/src/assets/icons/svg/stock-take.svg +0 -14
  152. package/common/src/assets/icons/svg/swagger.svg +0 -1
  153. package/common/src/assets/icons/svg/switch.svg +0 -1
  154. package/common/src/assets/icons/svg/system.svg +0 -2
  155. package/common/src/assets/icons/svg/tab.svg +0 -1
  156. package/common/src/assets/icons/svg/table.svg +0 -1
  157. package/common/src/assets/icons/svg/textarea.svg +0 -1
  158. package/common/src/assets/icons/svg/theme.svg +0 -1
  159. package/common/src/assets/icons/svg/time-range.svg +0 -1
  160. package/common/src/assets/icons/svg/time.svg +0 -1
  161. package/common/src/assets/icons/svg/tool.svg +0 -1
  162. package/common/src/assets/icons/svg/tree-table.svg +0 -1
  163. package/common/src/assets/icons/svg/tree.svg +0 -1
  164. package/common/src/assets/icons/svg/upload.svg +0 -1
  165. package/common/src/assets/icons/svg/user.svg +0 -1
  166. package/common/src/assets/icons/svg/validCode.svg +0 -1
  167. package/common/src/assets/icons/svg/wechat.svg +0 -1
  168. package/common/src/assets/icons/svg/xy-cancel.svg +0 -1
  169. package/common/src/assets/icons/svg/xy-choice.svg +0 -1
  170. package/common/src/assets/icons/svg/xy-choice2.svg +0 -31
  171. package/common/src/assets/icons/svg/zip.svg +0 -1
  172. package/common/src/assets/icons/svgo.yml +0 -22
  173. package/common/src/assets/images/dark.svg +0 -39
  174. package/common/src/assets/images/light.svg +0 -39
  175. package/common/src/assets/images/login-background.jpg +0 -0
  176. package/common/src/assets/images/logo.jpg +0 -0
  177. package/common/src/assets/images/profile.jpg +0 -0
  178. package/common/src/assets/images/xy-folder.png +0 -0
  179. package/common/src/assets/images/xy_email.png +0 -0
  180. package/common/src/assets/images/xy_message.png +0 -0
  181. package/common/src/assets/images/xy_notice.png +0 -0
  182. package/common/src/assets/logo/logo.png +0 -0
  183. package/common/src/assets/styles/btn.scss +0 -99
  184. package/common/src/assets/styles/element-ui.scss +0 -84
  185. package/common/src/assets/styles/element-variables.scss +0 -31
  186. package/common/src/assets/styles/index.scss +0 -207
  187. package/common/src/assets/styles/kezhi.scss +0 -100
  188. package/common/src/assets/styles/mixin.scss +0 -66
  189. package/common/src/assets/styles/ruoyi.scss +0 -350
  190. package/common/src/assets/styles/sidebar.scss +0 -185
  191. package/common/src/assets/styles/transition.scss +0 -48
  192. package/common/src/assets/styles/variables.scss +0 -52
  193. package/common/src/components/base/dialog/BaseDialog.vue +0 -140
  194. package/common/src/components/base/dialog/Dialog.js +0 -118
  195. package/common/src/components/base/dialog/dialogSetting.js +0 -65
  196. package/common/src/components/base/dialog/dialogType.js +0 -80
  197. package/common/src/components/base/dialog/index.js +0 -42
  198. package/common/src/components/base/dialog/printDialog.vue +0 -324
  199. package/common/src/components/base/dialog/tableDialog.vue +0 -187
  200. package/common/src/components/base/dialog/uploadDialog.vue +0 -149
  201. package/common/src/components/base/menuTab.js +0 -130
  202. package/common/src/components/basics/Breadcrumb/index.vue +0 -77
  203. package/common/src/components/basics/Crontab/day.vue +0 -179
  204. package/common/src/components/basics/Crontab/hour.vue +0 -122
  205. package/common/src/components/basics/Crontab/index.vue +0 -425
  206. package/common/src/components/basics/Crontab/min.vue +0 -120
  207. package/common/src/components/basics/Crontab/mouth.vue +0 -128
  208. package/common/src/components/basics/Crontab/result.vue +0 -566
  209. package/common/src/components/basics/Crontab/second.vue +0 -133
  210. package/common/src/components/basics/Crontab/week.vue +0 -167
  211. package/common/src/components/basics/Crontab/year.vue +0 -144
  212. package/common/src/components/basics/DictData/index.js +0 -24
  213. package/common/src/components/basics/DictTag/index.vue +0 -52
  214. package/common/src/components/basics/Editor/index.vue +0 -286
  215. package/common/src/components/basics/FileUpload/index.vue +0 -197
  216. package/common/src/components/basics/Hamburger/index.vue +0 -35
  217. package/common/src/components/basics/HeaderSearch/index.vue +0 -206
  218. package/common/src/components/basics/IconSelect/index.vue +0 -84
  219. package/common/src/components/basics/IconSelect/requireIcons.js +0 -10
  220. package/common/src/components/basics/Iframe/index.vue +0 -36
  221. package/common/src/components/basics/ImageUpload/index.vue +0 -204
  222. package/common/src/components/basics/Pagination/index.vue +0 -107
  223. package/common/src/components/basics/PanThumb/index.vue +0 -142
  224. package/common/src/components/basics/ParentView/index.vue +0 -3
  225. package/common/src/components/basics/RightPanel/index.vue +0 -149
  226. package/common/src/components/basics/RightToolbar/index.vue +0 -111
  227. package/common/src/components/basics/Screenfull/index.vue +0 -60
  228. package/common/src/components/basics/SizeSelect/index.vue +0 -60
  229. package/common/src/components/basics/SvgIcon/index.vue +0 -61
  230. package/common/src/components/basics/ThemePicker/index.vue +0 -183
  231. package/common/src/components/basics/TopNav/index.vue +0 -476
  232. package/common/src/components/custom/Editor/index.vue +0 -267
  233. package/common/src/components/custom/FileBox/index.vue +0 -293
  234. package/common/src/components/custom/FileBox/indexTs.vue +0 -280
  235. package/common/src/components/custom/ImageBox/index.vue +0 -208
  236. package/common/src/components/custom/Material/fileNameHelper.js +0 -38
  237. package/common/src/components/custom/Material/index.vue +0 -893
  238. package/common/src/components/custom/Material/indexTs.vue +0 -890
  239. package/common/src/components/custom/Notice/index.vue +0 -244
  240. package/common/src/plugins/auth.js +0 -60
  241. package/common/src/plugins/cache.js +0 -77
  242. package/common/src/plugins/download.js +0 -31
  243. package/common/src/plugins/index.js +0 -82
  244. package/common/src/plugins/modal.js +0 -75
  245. package/common/src/plugins/tab.js +0 -66
  246. package/common/src/utils/auth.js +0 -29
  247. package/common/src/utils/cache/bdCache.js +0 -202
  248. package/common/src/utils/cache/fdCache.js +0 -407
  249. package/common/src/utils/common.js +0 -141
  250. package/common/src/utils/dateHelper.js +0 -122
  251. package/common/src/utils/dialog.js +0 -35
  252. package/common/src/utils/dict/Dict.js +0 -82
  253. package/common/src/utils/dict/DictConverter.js +0 -17
  254. package/common/src/utils/dict/DictData.js +0 -13
  255. package/common/src/utils/dict/DictMeta.js +0 -38
  256. package/common/src/utils/dict/DictOptions.js +0 -51
  257. package/common/src/utils/dict/index.js +0 -33
  258. package/common/src/utils/element.js +0 -49
  259. package/common/src/utils/errorCode.js +0 -6
  260. package/common/src/utils/eventHub.js +0 -3
  261. package/common/src/utils/file.js +0 -38
  262. package/common/src/utils/index.js +0 -390
  263. package/common/src/utils/jsencrypt.js +0 -30
  264. package/common/src/utils/kezhi.js +0 -311
  265. package/common/src/utils/kezhiToolLibrary.js +0 -51
  266. package/common/src/utils/permission.js +0 -51
  267. package/common/src/utils/printService.js +0 -749
  268. package/common/src/utils/request.js +0 -209
  269. package/common/src/utils/ruoyi.js +0 -317
  270. package/common/src/utils/scroll-to.js +0 -58
  271. package/common/src/utils/supers.js +0 -25
  272. package/common/src/utils/utils.js +0 -614
  273. package/common/src/utils/validate.js +0 -105
  274. package/common/src/utils/websoketservice.js +0 -161
  275. package/common/src/utils/zipdownload.js +0 -42
  276. package/common/src/views/authorize.vue +0 -270
  277. package/common/src/views/error/401.vue +0 -88
  278. package/common/src/views/error/404.vue +0 -248
  279. package/common/src/views/login.vue +0 -350
  280. package/common/src/views/register.vue +0 -208
  281. package/common/src/views/sample/dialog/sampleEditDialog.vue +0 -279
  282. package/common/src/views/tenantLogin.vue +0 -331
  283. package/common/vue.config.js +0 -130
@@ -1,197 +0,0 @@
1
- <template>
2
- <div class="upload-file">
3
- <el-upload
4
- :action="uploadFileUrl"
5
- :before-upload="handleBeforeUpload"
6
- :file-list="fileList"
7
- :limit="limit"
8
- :on-error="handleUploadError"
9
- :on-exceed="handleExceed"
10
- :on-success="handleUploadSuccess"
11
- :show-file-list="false"
12
- :headers="headers"
13
- class="upload-file-uploader"
14
- ref="upload"
15
- >
16
- <!-- 上传按钮 -->
17
- <el-button size="mini" type="primary">选取文件</el-button>
18
- <!-- 上传提示 -->
19
- <div class="el-upload__tip" slot="tip" v-if="showTip">
20
- 请上传
21
- <template v-if="fileSize"> 大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b> </template>
22
- <template v-if="fileType"> 格式为 <b style="color: #f56c6c">{{ fileType.join("/") }}</b> </template>
23
- 的文件
24
- </div>
25
- </el-upload>
26
-
27
- <!-- 文件列表 -->
28
- <transition-group class="upload-file-list el-upload-list el-upload-list--text" name="el-fade-in-linear" tag="ul">
29
- <li :key="file.uid" class="el-upload-list__item ele-upload-list__item-content" v-for="(file, index) in fileList">
30
- <el-link :href="file.url" :underline="false" target="_blank">
31
- <span class="el-icon-document"> {{ getFileName(file.name) }} </span>
32
- </el-link>
33
- <div class="ele-upload-list__item-content-action">
34
- <el-link :underline="false" @click="handleDelete(index)" type="danger">删除</el-link>
35
- </div>
36
- </li>
37
- </transition-group>
38
- </div>
39
- </template>
40
-
41
- <script>
42
- import { getToken } from "../../../utils/auth";
43
-
44
- export default {
45
- name: "FileUpload",
46
- props: {
47
- // 值
48
- value: [String, Object, Array],
49
- // 数量限制
50
- limit: {
51
- type: Number,
52
- default: 5,
53
- },
54
- // 大小限制(MB)
55
- fileSize: {
56
- type: Number,
57
- default: 5,
58
- },
59
- // 文件类型, 例如['png', 'jpg', 'jpeg']
60
- fileType: {
61
- type: Array,
62
- default: () => ["doc", "xls", "ppt", "txt", "pdf"],
63
- },
64
- // 是否显示提示
65
- isShowTip: {
66
- type: Boolean,
67
- default: true
68
- }
69
- },
70
- data() {
71
- return {
72
- uploadFileUrl: process.env.VUE_APP_BASE_API + "/file/upload", // 上传的图片服务器地址
73
- headers: {
74
- Authorization: "Bearer " + getToken(),
75
- },
76
- fileList: [],
77
- };
78
- },
79
- watch: {
80
- value: {
81
- handler(val) {
82
- if (val) {
83
- let temp = 1;
84
- // 首先将值转为数组
85
- const list = Array.isArray(val) ? val : this.value.split(',');
86
- // 然后将数组转为对象数组
87
- this.fileList = list.map(item => {
88
- if (typeof item === "string") {
89
- item = { name: item, url: item };
90
- }
91
- item.uid = item.uid || new Date().getTime() + temp++;
92
- return item;
93
- });
94
- } else {
95
- this.fileList = [];
96
- return [];
97
- }
98
- },
99
- deep: true,
100
- immediate: true
101
- }
102
- },
103
- computed: {
104
- // 是否显示提示
105
- showTip() {
106
- return this.isShowTip && (this.fileType || this.fileSize);
107
- },
108
- },
109
- methods: {
110
- // 上传前校检格式和大小
111
- handleBeforeUpload(file) {
112
- // 校检文件类型
113
- if (this.fileType) {
114
- let fileExtension = "";
115
- if (file.name.lastIndexOf(".") > -1) {
116
- fileExtension = file.name.slice(file.name.lastIndexOf(".") + 1);
117
- }
118
- const isTypeOk = this.fileType.some((type) => {
119
- if (file.type.indexOf(type) > -1) return true;
120
- if (fileExtension && fileExtension.indexOf(type) > -1) return true;
121
- return false;
122
- });
123
- if (!isTypeOk) {
124
- this.$message.error(`文件格式不正确, 请上传${this.fileType.join("/")}格式文件!`);
125
- return false;
126
- }
127
- }
128
- // 校检文件大小
129
- if (this.fileSize) {
130
- const isLt = file.size / 1024 / 1024 < this.fileSize;
131
- if (!isLt) {
132
- this.$message.error(`上传文件大小不能超过 ${this.fileSize} MB!`);
133
- return false;
134
- }
135
- }
136
- return true;
137
- },
138
- // 文件个数超出
139
- handleExceed() {
140
- this.$message.error(`上传文件数量不能超过 ${this.limit} 个!`);
141
- },
142
- // 上传失败
143
- handleUploadError(err) {
144
- this.$message.error("上传失败, 请重试");
145
- },
146
- // 上传成功回调
147
- handleUploadSuccess(res, file) {
148
- this.$message.success("上传成功");
149
- this.fileList.push({ name: res.data.url, url: res.data.url });
150
- this.$emit("input", this.listToString(this.fileList));
151
- },
152
- // 删除文件
153
- handleDelete(index) {
154
- this.fileList.splice(index, 1);
155
- this.$emit("input", this.listToString(this.fileList));
156
- },
157
- // 获取文件名称
158
- getFileName(name) {
159
- if (name.lastIndexOf("/") > -1) {
160
- return name.slice(name.lastIndexOf("/") + 1).toLowerCase();
161
- } else {
162
- return "";
163
- }
164
- },
165
- // 对象转成指定字符串分隔
166
- listToString(list, separator) {
167
- let strs = "";
168
- separator = separator || ",";
169
- for (let i in list) {
170
- strs += list[i].url + separator;
171
- }
172
- return strs != '' ? strs.substr(0, strs.length - 1) : '';
173
- }
174
- }
175
- };
176
- </script>
177
-
178
- <style scoped lang="scss">
179
- .upload-file-uploader {
180
- margin-bottom: 5px;
181
- }
182
- .upload-file-list .el-upload-list__item {
183
- border: 1px solid #e4e7ed;
184
- line-height: 2;
185
- margin-bottom: 10px;
186
- position: relative;
187
- }
188
- .upload-file-list .ele-upload-list__item-content {
189
- display: flex;
190
- justify-content: space-between;
191
- align-items: center;
192
- color: inherit;
193
- }
194
- .ele-upload-list__item-content-action .el-link {
195
- margin-right: 10px;
196
- }
197
- </style>
@@ -1,35 +0,0 @@
1
- <template>
2
- <div style="padding: 0 15px" @click="toggleClick">
3
- <svg-icon :icon-class="isActive ? 'kz_fold' : 'kz_open'" />
4
- </div>
5
- </template>
6
-
7
- <script>
8
- export default {
9
- name: "Hamburger",
10
- props: {
11
- isActive: {
12
- type: Boolean,
13
- default: false,
14
- },
15
- },
16
- methods: {
17
- toggleClick() {
18
- this.$emit("toggleClick");
19
- },
20
- },
21
- };
22
- </script>
23
-
24
- <style scoped>
25
- .hamburger {
26
- display: inline-block;
27
- vertical-align: middle;
28
- width: 20px;
29
- height: 20px;
30
- }
31
-
32
- .hamburger.is-active {
33
- transform: rotate(180deg);
34
- }
35
- </style>
@@ -1,206 +0,0 @@
1
- <template>
2
- <div :class="{ show: show }" class="header-search">
3
- <svg-icon
4
- class-name="search-icon"
5
- icon-class="xy_search"
6
- @click.stop="click"
7
- />
8
- <el-select
9
- ref="headerSearchSelect"
10
- v-model="search"
11
- :remote-method="querySearch"
12
- filterable
13
- default-first-option
14
- remote
15
- placeholder="Search"
16
- class="header-search-select"
17
- @change="change"
18
- >
19
- <el-option
20
- v-for="option in options"
21
- :key="option.item.path"
22
- :value="option.item"
23
- :label="option.item.title.join(' > ')"
24
- />
25
- </el-select>
26
- </div>
27
- </template>
28
-
29
- <script>
30
- // fuse is a lightweight fuzzy-search module
31
- // make search results more in line with expectations
32
- import Fuse from "~../../fuse.js/dist/fuse.min.js";
33
- import path from "path";
34
-
35
- export default {
36
- name: "HeaderSearch",
37
- data() {
38
- return {
39
- search: "",
40
- options: [],
41
- searchPool: [],
42
- show: false,
43
- fuse: undefined,
44
- };
45
- },
46
- computed: {
47
- routes() {
48
- return this.$store.getters.permission_routes;
49
- },
50
- },
51
- watch: {
52
- routes() {
53
- this.searchPool = this.generateRoutes(this.routes);
54
- },
55
- searchPool(list) {
56
- this.initFuse(list);
57
- },
58
- show(value) {
59
- if (value) {
60
- document.body.addEventListener("click", this.close);
61
- } else {
62
- document.body.removeEventListener("click", this.close);
63
- }
64
- },
65
- },
66
- mounted() {
67
- this.searchPool = this.generateRoutes(this.routes);
68
- },
69
- methods: {
70
- click() {
71
- this.show = !this.show;
72
- if (this.show) {
73
- this.$refs.headerSearchSelect && this.$refs.headerSearchSelect.focus();
74
- }
75
- },
76
- close() {
77
- this.$refs.headerSearchSelect && this.$refs.headerSearchSelect.blur();
78
- this.options = [];
79
- this.show = false;
80
- },
81
- change(val) {
82
- const path = val.path;
83
- if (this.ishttp(val.path)) {
84
- // http(s):// 路径新窗口打开
85
- const pindex = path.indexOf("http");
86
- window.open(path.substr(pindex, path.length), "_blank");
87
- } else {
88
- this.$router.push(val.path);
89
- }
90
- this.search = "";
91
- this.options = [];
92
- this.$nextTick(() => {
93
- this.show = false;
94
- });
95
- },
96
- initFuse(list) {
97
- this.fuse = new Fuse(list, {
98
- shouldSort: true,
99
- threshold: 0.4,
100
- location: 0,
101
- distance: 100,
102
- maxPatternLength: 32,
103
- minMatchCharLength: 1,
104
- keys: [
105
- {
106
- name: "title",
107
- weight: 0.7,
108
- },
109
- {
110
- name: "path",
111
- weight: 0.3,
112
- },
113
- ],
114
- });
115
- },
116
- // Filter out the routes that can be displayed in the sidebar
117
- // And generate the internationalized title
118
- generateRoutes(routes, basePath = "/", prefixTitle = []) {
119
- let res = [];
120
-
121
- for (const router of routes) {
122
- // skip hidden router
123
- if (router.hidden) {
124
- continue;
125
- }
126
- const data = {
127
- path: !this.ishttp(router.path)
128
- ? path.resolve(basePath, router.path)
129
- : router.path,
130
- title: [...prefixTitle],
131
- };
132
- if (router.meta && router.meta.title) {
133
- data.title = [...data.title, router.meta.title];
134
- if (router.redirect !== "noRedirect") {
135
- // only push the routes with title
136
- // special case: need to exclude parent router without redirect
137
- res.push(data);
138
- }
139
- }
140
- // recursive child routes
141
- if (router.children) {
142
- const tempRoutes = this.generateRoutes(
143
- router.children,
144
- data.path,
145
- data.title
146
- );
147
- if (tempRoutes.length >= 1) {
148
- res = [...res, ...tempRoutes];
149
- }
150
- }
151
- }
152
- return res;
153
- },
154
- querySearch(query) {
155
- if (query !== "") {
156
- this.options = this.fuse.search(query);
157
- } else {
158
- this.options = [];
159
- }
160
- },
161
- ishttp(url) {
162
- return url.indexOf("http://") !== -1 || url.indexOf("https://") !== -1;
163
- },
164
- },
165
- };
166
- </script>
167
-
168
- <style lang="scss" scoped>
169
- .header-search {
170
- font-size: 0 !important;
171
-
172
- .search-icon {
173
- cursor: pointer;
174
- font-size: 18px;
175
- vertical-align: middle;
176
- }
177
-
178
- .header-search-select {
179
- font-size: 18px;
180
- transition: width 0.2s;
181
- width: 0;
182
- overflow: hidden;
183
- background: transparent;
184
- border-radius: 0;
185
- display: inline-block;
186
- vertical-align: middle;
187
-
188
- ::v-deep .el-input__inner {
189
- border-radius: 0;
190
- border: 0;
191
- padding-left: 0;
192
- padding-right: 0;
193
- box-shadow: none !important;
194
- border-bottom: 1px solid #d9d9d9;
195
- vertical-align: middle;
196
- }
197
- }
198
-
199
- &.show {
200
- .header-search-select {
201
- width: 210px;
202
- margin-left: 10px;
203
- }
204
- }
205
- }
206
- </style>
@@ -1,84 +0,0 @@
1
- <!-- @author zhengjie -->
2
- <template>
3
- <div class="icon-body">
4
- <el-input
5
- v-model="name"
6
- style="position: relative"
7
- clearable
8
- placeholder="请输入图标名称"
9
- @clear="filterIcons"
10
- @input.native="filterIcons"
11
- >
12
- <i slot="suffix" class="el-icon-search el-input__icon" />
13
- </el-input>
14
- <div class="icon-list">
15
- <div
16
- v-for="(item, index) in iconList"
17
- :key="index"
18
- @click="selectedIcon(item)"
19
- >
20
- <svg-icon
21
- :icon-class="item"
22
- style="height: 30px; width: 16px; margin-right: 4px"
23
- />
24
- <span>{{ item }}</span>
25
- </div>
26
- </div>
27
- </div>
28
- </template>
29
-
30
- <script>
31
- import icons from "./requireIcons";
32
- export default {
33
- name: "IconSelect",
34
- data() {
35
- return {
36
- name: "",
37
- iconList: icons,
38
- };
39
- },
40
- methods: {
41
- filterIcons() {
42
- this.iconList = icons;
43
- if (this.name) {
44
- this.iconList = this.iconList.filter((item) =>
45
- item.includes(this.name)
46
- );
47
- }
48
- },
49
- selectedIcon(name) {
50
- this.$emit("selected", name);
51
- document.body.click();
52
- },
53
- reset() {
54
- this.name = "";
55
- this.iconList = icons;
56
- },
57
- },
58
- };
59
- </script>
60
-
61
- <style rel="stylesheet/scss" lang="scss" scoped>
62
- .icon-body {
63
- width: 100%;
64
- padding: 10px;
65
- .icon-list {
66
- height: 200px;
67
- overflow-y: scroll;
68
- div {
69
- height: 30px;
70
- line-height: 30px;
71
- margin-bottom: -5px;
72
- cursor: pointer;
73
- width: 33%;
74
- float: left;
75
- }
76
- span {
77
- display: inline-block;
78
- vertical-align: -0.15em;
79
- fill: currentColor;
80
- overflow: hidden;
81
- }
82
- }
83
- }
84
- </style>
@@ -1,10 +0,0 @@
1
- const req = require.context('../../../assets/icons/svg', false, /\.svg$/)
2
- const requireAll = requireContext => requireContext.keys()
3
-
4
- const re = /\.\/(.*)\.svg/
5
-
6
- const icons = requireAll(req).map(i => {
7
- return i.match(re)[1]
8
- })
9
-
10
- export default icons
@@ -1,36 +0,0 @@
1
- <template>
2
- <div v-loading="loading" :style="'height:' + height">
3
- <iframe
4
- :src="src"
5
- frameborder="no"
6
- style="width: 100%; height: 100%"
7
- scrolling="auto"
8
- />
9
- </div>
10
- </template>
11
- <script>
12
- export default {
13
- props: {
14
- src: {
15
- type: String,
16
- required: true
17
- },
18
- },
19
- data() {
20
- return {
21
- height: document.documentElement.clientHeight - 94.5 + "px;",
22
- loading: true,
23
- url: this.src
24
- };
25
- },
26
- mounted: function () {
27
- setTimeout(() => {
28
- this.loading = false;
29
- }, 300);
30
- const that = this;
31
- window.onresize = function temp() {
32
- that.height = document.documentElement.clientHeight - 94.5 + "px;";
33
- };
34
- }
35
- };
36
- </script>