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,267 +0,0 @@
1
- <template>
2
- <div>
3
- <div class="editor" ref="editor" :style="styles"></div>
4
- <Material ref="material" visible="true" v-model="imageList" :visible.sync="imageChoice.visible" :max="5"
5
- clear="clear"/>
6
- </div>
7
- </template>
8
-
9
- <script>
10
- import Quill from "~../../quill";
11
- import Material from "../Material";
12
- import "~../../quill/dist/quill.core.css";
13
- import "~../../quill/dist/quill.snow.css";
14
- import "~../../quill/dist/quill.bubble.css";
15
- import {getToken} from "../../../utils/auth";
16
-
17
- export default {
18
- name: "Editor",
19
- components: {Material},
20
- props: {
21
- /* 编辑器的内容 */
22
- value: {
23
- type: String,
24
- default: "",
25
- },
26
- /* 高度 */
27
- height: {
28
- type: Number,
29
- default: null,
30
- },
31
- /* 最小高度 */
32
- minHeight: {
33
- type: Number,
34
- default: null,
35
- },
36
- /* 只读 */
37
- readOnly: {
38
- type: Boolean,
39
- default: false,
40
- },
41
- },
42
- data() {
43
- return {
44
- headers: {
45
- Authorization: "Bearer " + getToken()
46
- },
47
- imageChoice: {
48
- focus: false,
49
- visible: false
50
- },
51
- imageList: [],
52
- Quill: null,
53
- currentValue: "",
54
- options: {
55
- theme: "snow",
56
- bounds: document.body,
57
- debug: "warn",
58
- modules: {
59
- // 工具栏配置
60
- toolbar: [
61
- ["bold", "italic", "underline", "strike"], // 加粗 斜体 下划线 删除线
62
- ["blockquote", "code-block"], // 引用 代码块
63
- [{list: "ordered"}, {list: "bullet"}], // 有序、无序列表
64
- [{indent: "-1"}, {indent: "+1"}], // 缩进
65
- [{size: ["small", false, "large", "huge"]}], // 字体大小
66
- [{header: [1, 2, 3, 4, 5, 6, false]}], // 标题
67
- [{color: []}, {background: []}], // 字体颜色、字体背景颜色
68
- [{align: []}], // 对齐方式
69
- ["clean"], // 清除文本格式
70
- ["link", "image"] // 链接、图片
71
- ],
72
- },
73
- placeholder: "请输入内容",
74
- readOnly: this.readOnly,
75
- },
76
- };
77
- },
78
- computed: {
79
- styles() {
80
- let style = {};
81
- if (this.minHeight) {
82
- style.minHeight = `${this.minHeight}px`;
83
- }
84
- if (this.height) {
85
- style.height = `${this.height}px`;
86
- }
87
- return style;
88
- },
89
- },
90
- watch: {
91
- value: {
92
- handler(val) {
93
- if (val !== this.currentValue) {
94
- this.currentValue = val === null ? "" : val;
95
- if (this.Quill) {
96
- this.Quill.pasteHTML(this.currentValue);
97
- }
98
- }
99
- },
100
- immediate: true,
101
- },
102
- imageList(val, oldVal) {
103
- this.handleSuccess();
104
- },
105
- },
106
- mounted() {
107
- this.init();
108
- },
109
- beforeDestroy() {
110
- this.Quill = null;
111
- },
112
- methods: {
113
- init() {
114
- const editor = this.$refs.editor;
115
- this.Quill = new Quill(editor, this.options);
116
- // 素材模块接管上传事件
117
- let toolbar = this.Quill.getModule("toolbar");
118
- toolbar.addHandler("image", (value) => {
119
- this.uploadType = "image";
120
- if (value) {
121
- this.imageChoice.visible = true;
122
- } else {
123
- this.quill.format("image", false);
124
- }
125
- });
126
- toolbar.addHandler("video", (value) => {
127
- this.uploadType = "video";
128
- if (value) {
129
- this.imageChoice.visible = true;
130
- } else {
131
- this.quill.format("video", false);
132
- }
133
- });
134
- this.Quill.pasteHTML(this.currentValue);
135
- this.Quill.on("text-change", (delta, oldDelta, source) => {
136
- const html = this.$refs.editor.children[0].innerHTML;
137
- const text = this.Quill.getText();
138
- const quill = this.Quill;
139
- this.currentValue = html;
140
- this.$emit("input", html);
141
- this.$emit("on-change", {html, text, quill});
142
- });
143
- this.Quill.on("text-change", (delta, oldDelta, source) => {
144
- this.$emit("on-text-change", delta, oldDelta, source);
145
- });
146
- this.Quill.on("selection-change", (range, oldRange, source) => {
147
- this.$emit("on-selection-change", range, oldRange, source);
148
- });
149
- this.Quill.on("editor-change", (eventName, ...args) => {
150
- this.$emit("on-editor-change", eventName, ...args);
151
- });
152
- },
153
- handleSuccess() {
154
- if (this.imageList.length > 0) {
155
- // 获取富文本组件实例
156
- let quill = this.Quill;
157
- // 如果上传成功
158
- for (let i = 0; i < this.imageList.length; i++) {
159
- // 获取光标所在位置
160
- let length = quill.getSelection().index;
161
- // 插入图片 res.url为服务器返回的图片地址
162
- quill.insertEmbed(length, "image", this.imageList[i].materialOriginalUrl);
163
- // 调整光标到最后
164
- quill.setSelection(length + 1);
165
- }
166
- //重置imageList参数
167
- this.imageList = []
168
- }
169
- }
170
- }
171
- };
172
- </script>
173
-
174
- <style>
175
- .editor, .ql-toolbar {
176
- white-space: pre-wrap !important;
177
- line-height: normal !important;
178
- }
179
-
180
- .quill-img {
181
- display: none;
182
- }
183
-
184
- .ql-snow .ql-tooltip[data-mode="link"]::before {
185
- content: "请输入链接地址:";
186
- }
187
-
188
- .ql-snow .ql-tooltip.ql-editing a.ql-action::after {
189
- border-right: 0px;
190
- content: "保存";
191
- padding-right: 0px;
192
- }
193
-
194
- .ql-snow .ql-tooltip[data-mode="video"]::before {
195
- content: "请输入视频地址:";
196
- }
197
-
198
- .ql-snow .ql-picker.ql-size .ql-picker-label::before,
199
- .ql-snow .ql-picker.ql-size .ql-picker-item::before {
200
- content: "14px";
201
- }
202
-
203
- .ql-snow .ql-picker.ql-size .ql-picker-label[data-value="small"]::before,
204
- .ql-snow .ql-picker.ql-size .ql-picker-item[data-value="small"]::before {
205
- content: "10px";
206
- }
207
-
208
- .ql-snow .ql-picker.ql-size .ql-picker-label[data-value="large"]::before,
209
- .ql-snow .ql-picker.ql-size .ql-picker-item[data-value="large"]::before {
210
- content: "18px";
211
- }
212
-
213
- .ql-snow .ql-picker.ql-size .ql-picker-label[data-value="huge"]::before,
214
- .ql-snow .ql-picker.ql-size .ql-picker-item[data-value="huge"]::before {
215
- content: "32px";
216
- }
217
-
218
- .ql-snow .ql-picker.ql-header .ql-picker-label::before,
219
- .ql-snow .ql-picker.ql-header .ql-picker-item::before {
220
- content: "文本";
221
- }
222
-
223
- .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]::before,
224
- .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before {
225
- content: "标题1";
226
- }
227
-
228
- .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before,
229
- .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before {
230
- content: "标题2";
231
- }
232
-
233
- .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before,
234
- .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before {
235
- content: "标题3";
236
- }
237
-
238
- .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]::before,
239
- .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before {
240
- content: "标题4";
241
- }
242
-
243
- .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]::before,
244
- .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before {
245
- content: "标题5";
246
- }
247
-
248
- .ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]::before,
249
- .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before {
250
- content: "标题6";
251
- }
252
-
253
- .ql-snow .ql-picker.ql-font .ql-picker-label::before,
254
- .ql-snow .ql-picker.ql-font .ql-picker-item::before {
255
- content: "标准字体";
256
- }
257
-
258
- .ql-snow .ql-picker.ql-font .ql-picker-label[data-value="serif"]::before,
259
- .ql-snow .ql-picker.ql-font .ql-picker-item[data-value="serif"]::before {
260
- content: "衬线字体";
261
- }
262
-
263
- .ql-snow .ql-picker.ql-font .ql-picker-label[data-value="monospace"]::before,
264
- .ql-snow .ql-picker.ql-font .ql-picker-item[data-value="monospace"]::before {
265
- content: "等宽字体";
266
- }
267
- </style>
@@ -1,293 +0,0 @@
1
- <template>
2
- <div class="ImageBox">
3
- <div
4
- :class="imageChoice.focus ? 'choice-box choice-box-focus' : 'choice-box'"
5
- @mouseenter="imageChoice.focus = true"
6
- @mouseleave="imageChoice.focus = false"
7
- @click="imageChoiceClick"
8
- v-show="!(max === 1 && imageList.length === 1)"
9
- >
10
- <i class="el-icon-plus choice-icon" />
11
- </div>
12
- <div
13
- class="main-box"
14
- v-if="max === 1"
15
- v-show="max === 1 && imageList.length > 0"
16
- >
17
- <div
18
- :class="
19
- item.hiddenVisible
20
- ? 'image-box image-box-only-one-focus'
21
- : 'image-box'
22
- "
23
- v-for="item in imageList"
24
- :key="item.materialId"
25
- @mouseenter="item.hiddenVisible = true"
26
- @mouseleave="item.hiddenVisible = false"
27
- >
28
- <el-image
29
- class="image-view"
30
- :src="getImageIcon(item.materialUrl)"
31
- fit="contain"
32
- @click="imageChoiceClick"
33
- />
34
- <svg-icon
35
- slot="prefix"
36
- icon-class="xy-cancel"
37
- class="image-cancel image-cancel-focus"
38
- v-if="item.hiddenVisible"
39
- @click="imageCancel(item)"
40
- />
41
- <!--<div class="image-text">
42
- <span class="image-input"
43
- :title="item.materialUrl">
44
- {{item.materialUrl}}
45
- </span>
46
- </div>-->
47
- </div>
48
- </div>
49
- <el-scrollbar
50
- :style="'height:100px;'"
51
- :native="false"
52
- :noresize="false"
53
- tag="section"
54
- v-show="imageList.length > 0"
55
- v-if="max !== 1"
56
- >
57
- <draggable
58
- :list="imageList"
59
- v-bind="$attrs"
60
- class="main-box"
61
- animation="300"
62
- >
63
- <div
64
- :class="
65
- item.hiddenVisible ? 'image-box image-box-focus' : 'image-box'
66
- "
67
- v-for="item in imageList"
68
- :key="item.materialId"
69
- @mouseenter="item.hiddenVisible = true"
70
- @mouseleave="item.hiddenVisible = false"
71
- >
72
- <el-image
73
- class="image-view"
74
- :src="getImageIcon(item.materialUrl)"
75
- fit="contain"
76
- />
77
- <svg-icon
78
- slot="prefix"
79
- icon-class="xy-cancel"
80
- class="image-cancel image-cancel-focus"
81
- v-if="item.hiddenVisible"
82
- @click="imageCancel(item)"
83
- />
84
- <!--<div class="image-text">
85
- <span class="image-input"
86
- :title="item.materialUrl">
87
- {{item.materialUrl}}
88
- </span>
89
- </div>-->
90
- </div>
91
- </draggable>
92
- </el-scrollbar>
93
- <Material
94
- visible="true"
95
- v-model="imageList"
96
- :visible.sync="imageChoice.visible"
97
- :max="max"
98
- :clear="clear"
99
- />
100
- </div>
101
- </template>
102
-
103
- <script>
104
- import Material from "../Material";
105
- import draggable from "~../../vuedraggable";
106
- import { getImageIcon } from "../Material/fileNameHelper";
107
-
108
- export default {
109
- name: "FileBox",
110
- components: { Material, draggable },
111
- model: {
112
- prop: "list",
113
- event: "change",
114
- },
115
- props: {
116
- /** 传入list参数 */
117
- list: {
118
- type: String,
119
- default: null,
120
- },
121
- /** 传入fileName参数 */
122
- fileName: {
123
- type: String,
124
- default: null,
125
- },
126
- /** 图片上传最大数量参数 默认为 1 */
127
- width: {
128
- type: String,
129
- default: "450px",
130
- },
131
- /** 图片上传最大数量参数 默认为 1 */
132
- max: {
133
- type: Number,
134
- default: 999,
135
- },
136
- /** 传入list是否转空参数 默认为 false */
137
- clear: {
138
- type: Boolean,
139
- default: false,
140
- },
141
- },
142
- data() {
143
- return {
144
- imageChoice: {
145
- focus: false,
146
- visible: false,
147
- },
148
- imageList: [],
149
- };
150
- },
151
- watch: {
152
- imageList(val, oldVal) {
153
- //普通的watch监听
154
- this.changeList();
155
- },
156
- list(val, oldVal) {
157
- this.init();
158
- },
159
- },
160
- mounted() {
161
- this.init();
162
- },
163
- methods: {
164
- getImageIcon: getImageIcon,
165
- /** 初始化方法 */
166
- init() {
167
- this.imageList = [];
168
- if (this.list !== null && this.list !== "" && this.list !== " ") {
169
- const newList = JSON.parse(this.list);
170
- if (Array.isArray(newList)) {
171
- this.imageList = newList;
172
- } else {
173
- this.imageList.push(newList);
174
- }
175
- var file = "";
176
- for (var item of this.imageList) {
177
- file += item.materialUrl + ",";
178
- }
179
- this.fileName = file.substr(0, file.length - 1);
180
- }
181
- },
182
- imageCancel(item) {
183
- for (let i = 0; i < this.imageList.length; i++) {
184
- if (this.imageList[i].materialId === item.materialId) {
185
- this.imageList.splice(i, 1);
186
- }
187
- }
188
- },
189
- changeList() {
190
- if (this.max === 1) {
191
- if (this.imageList.length > 0) {
192
- this.fileName = this.imageList[0].materialUrl;
193
- this.$emit("update:fileName", this.fileName);
194
- this.$emit("change", JSON.stringify(this.imageList[0]));
195
- }
196
- } else if (this.max > 1) {
197
- if (this.imageList.length > 0) {
198
- var file = "";
199
- for (var item of this.imageList) {
200
- file += item.materialUrl + " |";
201
- }
202
- this.fileName = file.substr(0, file.length - 1);
203
-
204
- this.$emit("update:fileName", this.fileName);
205
- this.$emit("change", JSON.stringify(this.imageList));
206
- }
207
- } else {
208
- this.$emit("change", null);
209
- }
210
- },
211
- imageChoiceClick() {
212
- this.imageChoice.visible = true;
213
- },
214
- },
215
- };
216
- </script>
217
-
218
- <style lang="scss" scoped>
219
- .main-box {
220
- display: inline-flex;
221
- .image-box {
222
- width: 80px;
223
- height: 80px;
224
- border: 1px solid #e3e3e3;
225
- margin: 6px 5px;
226
- display: inline-flex;
227
- position: relative;
228
- .image-view {
229
- width: 80px;
230
- height: 80px;
231
- padding: 4px;
232
- }
233
-
234
- .image-cancel {
235
- position: absolute;
236
- width: 18px;
237
- height: 18px;
238
- top: -8px;
239
- right: -8px;
240
- }
241
-
242
- .image-cancel-focus {
243
- cursor: pointer;
244
- }
245
- }
246
- }
247
-
248
- .choice-box {
249
- width: 80px;
250
- height: 80px;
251
- border: 1px dashed #e3e3e3;
252
- margin: 6px 5px;
253
- display: inline-flex;
254
- .choice-icon {
255
- text-align: center;
256
- line-height: 80px;
257
- width: 80px;
258
- height: 80px;
259
- }
260
- }
261
-
262
- .choice-box-focus {
263
- cursor: pointer;
264
- border-color: #387ed6;
265
- }
266
-
267
- .image-box-focus {
268
- cursor: move;
269
- }
270
-
271
- .image-box-only-one-focus {
272
- cursor: pointer;
273
- }
274
-
275
- .image-input {
276
- width: 82px;
277
- height: 20px;
278
- vertical-align: bottom;
279
- }
280
- .ImageBox {
281
- }
282
- </style>
283
-
284
- <style scoped>
285
- .ImageBox > .el-scrollbar .el-scrollbar__wrap {
286
- overflow-x: hidden;
287
- }
288
-
289
- .ImageBox > .el-scrollbar .el-scrollbar__wrap .el-scrollbar__view {
290
- white-space: nowrap;
291
- display: inline-block;
292
- }
293
- </style>