{"remainingRequest":"D:\\源码\\vue-element-admin-master\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\源码\\vue-element-admin-master\\src\\components\\MarkdownEditor\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\源码\\vue-element-admin-master\\src\\components\\MarkdownEditor\\index.vue","mtime":1649647926000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KCi8vIGRlcHMgZm9yIGVkaXRvcgppbXBvcnQgJ2NvZGVtaXJyb3IvbGliL2NvZGVtaXJyb3IuY3NzJyAvLyBjb2RlbWlycm9yCmltcG9ydCAndHVpLWVkaXRvci9kaXN0L3R1aS1lZGl0b3IuY3NzJyAvLyBlZGl0b3IgdWkKaW1wb3J0ICd0dWktZWRpdG9yL2Rpc3QvdHVpLWVkaXRvci1jb250ZW50cy5jc3MnIC8vIGVkaXRvciBjb250ZW50CgppbXBvcnQgRWRpdG9yIGZyb20gJ3R1aS1lZGl0b3InCmltcG9ydCBkZWZhdWx0T3B0aW9ucyBmcm9tICcuL2RlZmF1bHQtb3B0aW9ucycKCmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAnTWFya2Rvd25FZGl0b3InLAogIHByb3BzOiB7CiAgICB2YWx1ZTogewogICAgICB0eXBlOiBTdHJpbmcsCiAgICAgIGRlZmF1bHQ6ICcnCiAgICB9LAogICAgaWQ6IHsKICAgICAgdHlwZTogU3RyaW5nLAogICAgICByZXF1aXJlZDogZmFsc2UsCiAgICAgIGRlZmF1bHQoKSB7CiAgICAgICAgcmV0dXJuICdtYXJrZG93bi1lZGl0b3ItJyArICtuZXcgRGF0ZSgpICsgKChNYXRoLnJhbmRvbSgpICogMTAwMCkudG9GaXhlZCgwKSArICcnKQogICAgICB9CiAgICB9LAogICAgb3B0aW9uczogewogICAgICB0eXBlOiBPYmplY3QsCiAgICAgIGRlZmF1bHQoKSB7CiAgICAgICAgcmV0dXJuIGRlZmF1bHRPcHRpb25zCiAgICAgIH0KICAgIH0sCiAgICBtb2RlOiB7CiAgICAgIHR5cGU6IFN0cmluZywKICAgICAgZGVmYXVsdDogJ21hcmtkb3duJwogICAgfSwKICAgIGhlaWdodDogewogICAgICB0eXBlOiBTdHJpbmcsCiAgICAgIHJlcXVpcmVkOiBmYWxzZSwKICAgICAgZGVmYXVsdDogJzMwMHB4JwogICAgfSwKICAgIGxhbmd1YWdlOiB7CiAgICAgIHR5cGU6IFN0cmluZywKICAgICAgcmVxdWlyZWQ6IGZhbHNlLAogICAgICBkZWZhdWx0OiAnZW5fVVMnIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9uaG5lbnQvdHVpLmVkaXRvci90cmVlL21hc3Rlci9zcmMvanMvbGFuZ3MKICAgIH0KICB9LAogIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICBlZGl0b3I6IG51bGwKICAgIH0KICB9LAogIGNvbXB1dGVkOiB7CiAgICBlZGl0b3JPcHRpb25zKCkgewogICAgICBjb25zdCBvcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdE9wdGlvbnMsIHRoaXMub3B0aW9ucykKICAgICAgb3B0aW9ucy5pbml0aWFsRWRpdFR5cGUgPSB0aGlzLm1vZGUKICAgICAgb3B0aW9ucy5oZWlnaHQgPSB0aGlzLmhlaWdodAogICAgICBvcHRpb25zLmxhbmd1YWdlID0gdGhpcy5sYW5ndWFnZQogICAgICByZXR1cm4gb3B0aW9ucwogICAgfQogIH0sCiAgd2F0Y2g6IHsKICAgIHZhbHVlKG5ld1ZhbHVlLCBwcmVWYWx1ZSkgewogICAgICBpZiAobmV3VmFsdWUgIT09IHByZVZhbHVlICYmIG5ld1ZhbHVlICE9PSB0aGlzLmVkaXRvci5nZXRWYWx1ZSgpKSB7CiAgICAgICAgdGhpcy5lZGl0b3Iuc2V0VmFsdWUobmV3VmFsdWUpCiAgICAgIH0KICAgIH0sCiAgICBsYW5ndWFnZSh2YWwpIHsKICAgICAgdGhpcy5kZXN0cm95RWRpdG9yKCkKICAgICAgdGhpcy5pbml0RWRpdG9yKCkKICAgIH0sCiAgICBoZWlnaHQobmV3VmFsdWUpIHsKICAgICAgdGhpcy5lZGl0b3IuaGVpZ2h0KG5ld1ZhbHVlKQogICAgfSwKICAgIG1vZGUobmV3VmFsdWUpIHsKICAgICAgdGhpcy5lZGl0b3IuY2hhbmdlTW9kZShuZXdWYWx1ZSkKICAgIH0KICB9LAogIG1vdW50ZWQoKSB7CiAgICB0aGlzLmluaXRFZGl0b3IoKQogIH0sCiAgZGVzdHJveWVkKCkgewogICAgdGhpcy5kZXN0cm95RWRpdG9yKCkKICB9LAogIG1ldGhvZHM6IHsKICAgIGluaXRFZGl0b3IoKSB7CiAgICAgIHRoaXMuZWRpdG9yID0gbmV3IEVkaXRvcih7CiAgICAgICAgZWw6IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpLAogICAgICAgIC4uLnRoaXMuZWRpdG9yT3B0aW9ucwogICAgICB9KQogICAgICBpZiAodGhpcy52YWx1ZSkgewogICAgICAgIHRoaXMuZWRpdG9yLnNldFZhbHVlKHRoaXMudmFsdWUpCiAgICAgIH0KICAgICAgdGhpcy5lZGl0b3Iub24oJ2NoYW5nZScsICgpID0+IHsKICAgICAgICB0aGlzLiRlbWl0KCdpbnB1dCcsIHRoaXMuZWRpdG9yLmdldFZhbHVlKCkpCiAgICAgIH0pCiAgICB9LAogICAgZGVzdHJveUVkaXRvcigpIHsKICAgICAgaWYgKCF0aGlzLmVkaXRvcikgcmV0dXJuCiAgICAgIHRoaXMuZWRpdG9yLm9mZignY2hhbmdlJykKICAgICAgdGhpcy5lZGl0b3IucmVtb3ZlKCkKICAgIH0sCiAgICBzZXRWYWx1ZSh2YWx1ZSkgewogICAgICB0aGlzLmVkaXRvci5zZXRWYWx1ZSh2YWx1ZSkKICAgIH0sCiAgICBnZXRWYWx1ZSgpIHsKICAgICAgcmV0dXJuIHRoaXMuZWRpdG9yLmdldFZhbHVlKCkKICAgIH0sCiAgICBzZXRIdG1sKHZhbHVlKSB7CiAgICAgIHRoaXMuZWRpdG9yLnNldEh0bWwodmFsdWUpCiAgICB9LAogICAgZ2V0SHRtbCgpIHsKICAgICAgcmV0dXJuIHRoaXMuZWRpdG9yLmdldEh0bWwoKQogICAgfQogIH0KfQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;AAKA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/components/MarkdownEditor","sourcesContent":["<template>\n <div :id=\"id\" />\n</template>\n\n<script>\n// deps for editor\nimport 'codemirror/lib/codemirror.css' // codemirror\nimport 'tui-editor/dist/tui-editor.css' // editor ui\nimport 'tui-editor/dist/tui-editor-contents.css' // editor content\n\nimport Editor from 'tui-editor'\nimport defaultOptions from './default-options'\n\nexport default {\n name: 'MarkdownEditor',\n props: {\n value: {\n type: String,\n default: ''\n },\n id: {\n type: String,\n required: false,\n default() {\n return 'markdown-editor-' + +new Date() + ((Math.random() * 1000).toFixed(0) + '')\n }\n },\n options: {\n type: Object,\n default() {\n return defaultOptions\n }\n },\n mode: {\n type: String,\n default: 'markdown'\n },\n height: {\n type: String,\n required: false,\n default: '300px'\n },\n language: {\n type: String,\n required: false,\n default: 'en_US' // https://github.com/nhnent/tui.editor/tree/master/src/js/langs\n }\n },\n data() {\n return {\n editor: null\n }\n },\n computed: {\n editorOptions() {\n const options = Object.assign({}, defaultOptions, this.options)\n options.initialEditType = this.mode\n options.height = this.height\n options.language = this.language\n return options\n }\n },\n watch: {\n value(newValue, preValue) {\n if (newValue !== preValue && newValue !== this.editor.getValue()) {\n this.editor.setValue(newValue)\n }\n },\n language(val) {\n this.destroyEditor()\n this.initEditor()\n },\n height(newValue) {\n this.editor.height(newValue)\n },\n mode(newValue) {\n this.editor.changeMode(newValue)\n }\n },\n mounted() {\n this.initEditor()\n },\n destroyed() {\n this.destroyEditor()\n },\n methods: {\n initEditor() {\n this.editor = new Editor({\n el: document.getElementById(this.id),\n ...this.editorOptions\n })\n if (this.value) {\n this.editor.setValue(this.value)\n }\n this.editor.on('change', () => {\n this.$emit('input', this.editor.getValue())\n })\n },\n destroyEditor() {\n if (!this.editor) return\n this.editor.off('change')\n this.editor.remove()\n },\n setValue(value) {\n this.editor.setValue(value)\n },\n getValue() {\n return this.editor.getValue()\n },\n setHtml(value) {\n this.editor.setHtml(value)\n },\n getHtml() {\n return this.editor.getHtml()\n }\n }\n}\n</script>\n"]}]}
|