|  |  | 
 |  |  | import { codemirror } from "vue-codemirror"; | 
 |  |  | import "@/utils/cm-setting.js"; | 
 |  |  | Vue.component("codemirror", codemirror); | 
 |  |  | //  import VueCodeMirror from 'vue-codemirror' | 
 |  |  | //  import 'vue-codemirror/dist/codemirror.css' | 
 |  |  | //  Vue.use(VueCodeMirror) | 
 |  |  |  | 
 |  |  | //实现quill-editor编辑器拖拽上传图片 | 
 |  |  | //  import Quill from 'quill' | 
 |  |  | import { Quill } from "vue-quill-editor"; | 
 |  |  | window.Quill = Quill; | 
 |  |  | import imageResize from "quill-image-resize"; | 
 |  |  | //  const scriptEl = document.createElement('script'); | 
 |  |  | //    scriptEl.charset = 'utf-8' | 
 |  |  | //    scriptEl.src =  './image-resize.min.js' | 
 |  |  | //    const head = document.head || document.getElementsByTagName('head')[0]; | 
 |  |  | //    head.appendChild(scriptEl); | 
 |  |  |  | 
 |  |  |  | 
 |  |  | import { ImageDrop } from "quill-image-drop-module"; | 
 |  |  | //  import imageResize from 'quill-image-resize' | 
 |  |  | Quill.register("modules/imageDrop", ImageDrop); | 
 |  |  | //  import imageResize from 'quill-image-resize-module' | 
 |  |  | Quill.register("modules/imageResize", imageResize); | 
 |  |  | //实现quill-editor编辑器调整图片尺寸 | 
 |  |  | //  Quill.register('modules/imageResize', ImageResize) | 
 |  |  |  | 
 |  |  | import LemonIMUI from "lemon-imui"; | 
 |  |  | import "lemon-imui/dist/index.css"; | 
 |  |  | Vue.use(LemonIMUI); | 
 |  |  | // import LemonIMUI from "lemon-imui"; | 
 |  |  | // import "lemon-imui/dist/index.css"; | 
 |  |  | // Vue.use(LemonIMUI); | 
 |  |  |  | 
 |  |  | import "./assets/icons"; // icon | 
 |  |  | import "./permission"; // permission control | 
 |  |  | 
 |  |  | import { getConfigKey } from "@/api/system/config"; | 
 |  |  | import { | 
 |  |  |   parseTime, | 
 |  |  |   formatTime, | 
 |  |  |   resetForm, | 
 |  |  |   addDateRange, | 
 |  |  |   selectDictLabel, | 
 |  |  |   selectDictLabels, | 
 |  |  |   handleTree, | 
 |  |  |   daysBetween, | 
 |  |  | } from "@/utils/ruoyi"; | 
 |  |  | import LemonMessageVoice from './websocket/lemon-message-voice'; | 
 |  |  | Vue.component(LemonMessageVoice.name,LemonMessageVoice); | 
 |  |  | 
 |  |  | import DictData from "@/components/DictData"; | 
 |  |  | // 组件封装集成 | 
 |  |  | import components from "./components"; | 
 |  |  | // 语音组件 | 
 |  |  | import VueAudio from 'vue-audio-better' | 
 |  |  | // 弹框拖动 | 
 |  |  | import '@/utils/drag.js'; | 
 |  |  | // 注册过滤器 | 
 |  |  | // 自定义指令 | 
 |  |  | import * as directives from "./directives"; | 
 |  |  | 
 |  |  | for (let key in filters) { | 
 |  |  |   Vue.filter(key, filters[key]); | 
 |  |  | } | 
 |  |  | import moment from "moment" | 
 |  |  |  | 
 |  |  | Vue.prototype.$moment = moment; | 
 |  |  |  | 
 |  |  | // 全局方法挂载 | 
 |  |  |  | 
 |  |  | Vue.prototype.getDicts = getDicts; | 
 |  |  | Vue.prototype.getConfigKey = getConfigKey; | 
 |  |  | Vue.prototype.parseTime = parseTime; | 
 |  |  | Vue.prototype.formatTime = formatTime; | 
 |  |  | Vue.prototype.daysBetween = daysBetween; | 
 |  |  | Vue.prototype.resetForm = resetForm; | 
 |  |  | Vue.prototype.addDateRange = addDateRange; | 
 |  |  | Vue.prototype.selectDictLabel = selectDictLabel; | 
 |  |  | 
 |  |  | Vue.use(directive); | 
 |  |  | Vue.use(plugins); | 
 |  |  | Vue.use(VueMeta); | 
 |  |  | Vue.use(VueAudio) | 
 |  |  | DictData.install(); | 
 |  |  | Vue.use(components); | 
 |  |  | // Vue.use(VueQuillEditor) | 
 |  |  | 
 |  |  |   store, | 
 |  |  |   render: (h) => h(App), | 
 |  |  | }); | 
 |  |  |  |