default-tinymce-simple.js 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804
  1. exports.ids = [20,15,19];
  2. exports.modules = {
  3. /***/ 163:
  4. /***/ (function(module, exports, __webpack_require__) {
  5. // style-loader: Adds some css to the DOM by adding a <style> tag
  6. // load the styles
  7. var content = __webpack_require__(187);
  8. if(content.__esModule) content = content.default;
  9. if(typeof content === 'string') content = [[module.i, content, '']];
  10. if(content.locals) module.exports = content.locals;
  11. // add CSS to SSR context
  12. var add = __webpack_require__(4).default
  13. module.exports.__inject__ = function (context) {
  14. add("5f832f7e", content, true, context)
  15. };
  16. /***/ }),
  17. /***/ 164:
  18. /***/ (function(module, exports, __webpack_require__) {
  19. // style-loader: Adds some css to the DOM by adding a <style> tag
  20. // load the styles
  21. var content = __webpack_require__(189);
  22. if(content.__esModule) content = content.default;
  23. if(typeof content === 'string') content = [[module.i, content, '']];
  24. if(content.locals) module.exports = content.locals;
  25. // add CSS to SSR context
  26. var add = __webpack_require__(4).default
  27. module.exports.__inject__ = function (context) {
  28. add("7617e46d", content, true, context)
  29. };
  30. /***/ }),
  31. /***/ 186:
  32. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  33. "use strict";
  34. __webpack_require__.r(__webpack_exports__);
  35. /* harmony import */ var _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_0_id_1aadfe38_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(163);
  36. /* harmony import */ var _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_0_id_1aadfe38_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_0_id_1aadfe38_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
  37. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_0_id_1aadfe38_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_0_id_1aadfe38_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  38. /***/ }),
  39. /***/ 187:
  40. /***/ (function(module, exports, __webpack_require__) {
  41. // Imports
  42. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  43. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  44. // Module
  45. ___CSS_LOADER_EXPORT___.push([module.i, ".col_red[data-v-1aadfe38]{color:#f11111}.col_green[data-v-1aadfe38]{color:#44be95}.col_white[data-v-1aadfe38]{color:#fff}.flex-col[data-v-1aadfe38]{flex-direction:column}.flex-j-c[data-v-1aadfe38]{justify-content:center}.flex-j-sb[data-v-1aadfe38]{justify-content:space-between}.flex-j-ar[data-v-1aadfe38]{justify-content:space-around}.flex-a-c[data-v-1aadfe38]{align-items:center}.flex-a-e[data-v-1aadfe38]{align-items:flex-end}.w[data-v-1aadfe38]{width:1200px}.m-auto[data-v-1aadfe38]{margin:0 auto}.height-one[data-v-1aadfe38]{height:100%}.flex[data-v-1aadfe38]{display:flex}.text-overflow[data-v-1aadfe38]{-webkit-line-clamp:4}.text-overflow[data-v-1aadfe38],.text-overflow-2[data-v-1aadfe38]{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical}.text-overflow-2[data-v-1aadfe38]{-webkit-line-clamp:2}.text-overflow-3[data-v-1aadfe38]{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.overflow-hide[data-v-1aadfe38],.text-overflow-3[data-v-1aadfe38]{overflow:hidden;text-overflow:ellipsis}.overflow-hide[data-v-1aadfe38]{white-space:nowrap}.hiddenScroll[data-v-1aadfe38]{scrollbar-width:none;-ms-overflow-style:none;overflow-x:hidden;overflow-y:scroll}.hiddenScroll[data-v-1aadfe38]::-webkit-scrollbar{display:none}.finger-point[data-v-1aadfe38]{cursor:pointer}.cursor-default[data-v-1aadfe38]{cursor:default}.el-icon-circle-close[data-v-1aadfe38]{color:#fff}.editor-slide-upload[data-v-1aadfe38]{margin-bottom:20px;text-align:center}.editor-slide-upload[data-v-1aadfe38] .el-upload--picture-card{width:100%}", ""]);
  46. // Exports
  47. module.exports = ___CSS_LOADER_EXPORT___;
  48. /***/ }),
  49. /***/ 188:
  50. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  51. "use strict";
  52. __webpack_require__.r(__webpack_exports__);
  53. /* harmony import */ var _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(164);
  54. /* harmony import */ var _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0__);
  55. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_editorImage_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  56. /***/ }),
  57. /***/ 189:
  58. /***/ (function(module, exports, __webpack_require__) {
  59. // Imports
  60. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  61. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  62. // Module
  63. ___CSS_LOADER_EXPORT___.push([module.i, ".tinymce-box .el-upload-list,.tinymce-box .el-upload-list li{list-style:none}", ""]);
  64. // Exports
  65. module.exports = ___CSS_LOADER_EXPORT___;
  66. /***/ }),
  67. /***/ 198:
  68. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  69. "use strict";
  70. __webpack_require__.r(__webpack_exports__);
  71. // Any plugins you want to use has to be imported
  72. // Detail plugins list see https://www.tinymce.com/docs/plugins/
  73. // Custom builds see https://www.tinymce.com/download/custom-builds/
  74. // print toc pagebreak
  75. const plugins = ['advlist anchor autolink autosave code codesample colorpicker colorpicker contextmenu directionality charmap fullscreen hr image insertdatetime link lists media nonbreaking noneditable paste preview save searchreplace spellchecker tabfocus table template textcolor textpattern visualblocks visualchars wordcount imagetools formatpainter emoticons'];
  76. /* harmony default export */ __webpack_exports__["default"] = (plugins);
  77. /***/ }),
  78. /***/ 200:
  79. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  80. "use strict";
  81. // ESM COMPAT FLAG
  82. __webpack_require__.r(__webpack_exports__);
  83. // CONCATENATED MODULE: ./node_modules/_vue-loader@15.9.8@vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/_@nuxt_components@2.2.1@@nuxt/components/dist/loader.js??ref--0-0!./node_modules/_vue-loader@15.9.8@vue-loader/lib??vue-loader-options!./components/default/tinymce/editorImage.vue?vue&type=template&id=1aadfe38&scoped=true&
  84. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"upload-container"},[_c('el-dialog',{attrs:{"visible":_vm.dialogVisible,"modal":false},on:{"update:visible":function($event){_vm.dialogVisible=$event}}},[(_vm.uploadType === 'file')?_c('el-upload',{staticClass:"editor-slide-upload",attrs:{"multiple":true,"file-list":_vm.fileList,"show-file-list":true,"on-remove":_vm.handleRemove,"on-success":_vm.handleSuccess,"before-upload":_vm.beforeUpload,"accept":'.pdf,.ppt,.pptx,.xls,.xml,.wps,.xlsx,.doc,.docx,.txt,.rtf,.md',"on-error":_vm.onError,"list-type":'text',"action":_vm.uploadFileUrl}},[_c('el-button',{attrs:{"size":"small","type":"primary"}},[_vm._v("点击上传附件")])],1):_c('el-upload',{staticClass:"editor-slide-upload",attrs:{"multiple":true,"file-list":_vm.fileList,"show-file-list":true,"on-remove":_vm.handleRemove,"on-error":_vm.onError,"on-success":_vm.handleSuccess,"before-upload":_vm.beforeUpload,"accept":_vm.uploadType === 'img'? 'image/*':'.mp4,.mov,.avi',"list-type":_vm.uploadType === 'img'? 'picture-card': 'text',"action":_vm.uploadType === 'img'? _vm.uploadUrl:_vm.uploadVideoUrl}},[(_vm.uploadType === 'img')?_c('el-button',{attrs:{"size":"small","type":"primary"}},[_vm._v("点击上传图片")]):_c('el-button',{attrs:{"size":"small","type":"primary"}},[_vm._v("点击上传视频")])],1),_vm._v(" "),_c('el-button',{on:{"click":function($event){_vm.dialogVisible = false}}},[_vm._v("取 消")]),_vm._v(" "),_c('el-button',{attrs:{"type":"primary"},on:{"click":_vm.handleSubmit}},[_vm._v("确 定")])],1)],1)}
  85. var staticRenderFns = []
  86. // CONCATENATED MODULE: ./components/default/tinymce/editorImage.vue?vue&type=template&id=1aadfe38&scoped=true&
  87. // CONCATENATED MODULE: ./node_modules/_babel-loader@8.2.3@babel-loader/lib??ref--2-0!./node_modules/_@nuxt_components@2.2.1@@nuxt/components/dist/loader.js??ref--0-0!./node_modules/_vue-loader@15.9.8@vue-loader/lib??vue-loader-options!./components/default/tinymce/editorImage.vue?vue&type=script&lang=js&
  88. //
  89. //
  90. //
  91. //
  92. //
  93. //
  94. //
  95. //
  96. //
  97. //
  98. //
  99. //
  100. //
  101. //
  102. //
  103. //
  104. //
  105. //
  106. //
  107. //
  108. //
  109. //
  110. //
  111. //
  112. //
  113. //
  114. //
  115. //
  116. //
  117. //
  118. //
  119. //
  120. //
  121. //
  122. //
  123. //
  124. //
  125. //
  126. //
  127. //
  128. //
  129. //
  130. // import { getToken } from 'api/qiniu'
  131. /* harmony default export */ var editorImagevue_type_script_lang_js_ = ({
  132. name: 'EditorSlideUpload',
  133. props: {
  134. color: {
  135. type: String,
  136. default: '#2973fd'
  137. }
  138. },
  139. data() {
  140. return {
  141. uploadUrl: "",
  142. uploadFileUrl: "",
  143. uploadVideoUrl: "",
  144. dialogVisible: false,
  145. listObj: {},
  146. fileList: [],
  147. uploadType: 'img'
  148. };
  149. },
  150. mounted() {
  151. this.uploadUrl = this.fun.getRealUrl("upload.uploadPic", {});
  152. this.uploadFileUrl = this.fun.getRealUrl("upload.uploadPic", {
  153. upload_type: 'file'
  154. });
  155. this.uploadVideoUrl = this.fun.getRealUrl("upload.uploadPic", {
  156. upload_type: 'videos'
  157. });
  158. },
  159. methods: {
  160. opUpload(str) {
  161. this.uploadType = str;
  162. this.dialogVisible = true;
  163. },
  164. checkAllSuccess() {
  165. return Object.keys(this.listObj).every(item => this.listObj[item].hasSuccess);
  166. },
  167. handleSubmit() {
  168. console.log(this.listObj);
  169. const arr = Object.keys(this.listObj).map(v => this.listObj[v]);
  170. if (!this.checkAllSuccess()) {
  171. this.$message('请等待所有图片上传成功 或 出现了网络问题,请刷新页面重新上传!');
  172. return;
  173. }
  174. this.$emit('successCBK', {
  175. uploadType: this.uploadType,
  176. arr: arr
  177. });
  178. this.listObj = {};
  179. this.fileList = [];
  180. this.dialogVisible = false;
  181. },
  182. handleSuccess(response, file) {
  183. if (response.result == 0) {
  184. this.$message.error(response.msg);
  185. return;
  186. }
  187. const uid = file.uid;
  188. const objKeyArr = Object.keys(this.listObj);
  189. for (let i = 0, len = objKeyArr.length; i < len; i++) {
  190. if (this.listObj[objKeyArr[i]].uid === uid) {
  191. this.listObj[objKeyArr[i]].url = response.data.img_url;
  192. this.listObj[objKeyArr[i]].hasSuccess = true;
  193. return;
  194. }
  195. }
  196. },
  197. handleRemove(file) {
  198. const uid = file.uid;
  199. const objKeyArr = Object.keys(this.listObj);
  200. for (let i = 0, len = objKeyArr.length; i < len; i++) {
  201. if (this.listObj[objKeyArr[i]].uid === uid) {
  202. delete this.listObj[objKeyArr[i]];
  203. return;
  204. }
  205. }
  206. },
  207. beforeUpload(file) {
  208. const _self = this;
  209. const _URL = window.URL || window.webkitURL;
  210. const fileName = file.uid;
  211. this.listObj[fileName] = {};
  212. return new Promise((resolve, reject) => {
  213. if (this.uploadType === 'img') {
  214. const img = new Image();
  215. img.src = _URL.createObjectURL(file);
  216. img.onload = function () {
  217. _self.listObj[fileName] = {
  218. hasSuccess: false,
  219. uid: file.uid,
  220. width: this.width,
  221. height: this.height
  222. };
  223. };
  224. } else {
  225. _self.listObj[fileName] = {
  226. hasSuccess: false,
  227. uid: file.uid,
  228. width: 0,
  229. height: 0,
  230. name: file.name
  231. };
  232. }
  233. resolve(true);
  234. });
  235. },
  236. onError(err) {
  237. console.log(err);
  238. }
  239. }
  240. });
  241. // CONCATENATED MODULE: ./components/default/tinymce/editorImage.vue?vue&type=script&lang=js&
  242. /* harmony default export */ var tinymce_editorImagevue_type_script_lang_js_ = (editorImagevue_type_script_lang_js_);
  243. // EXTERNAL MODULE: ./node_modules/_vue-loader@15.9.8@vue-loader/lib/runtime/componentNormalizer.js
  244. var componentNormalizer = __webpack_require__(2);
  245. // CONCATENATED MODULE: ./components/default/tinymce/editorImage.vue
  246. function injectStyles (context) {
  247. var style0 = __webpack_require__(186)
  248. if (style0.__inject__) style0.__inject__(context)
  249. var style1 = __webpack_require__(188)
  250. if (style1.__inject__) style1.__inject__(context)
  251. }
  252. /* normalize component */
  253. var component = Object(componentNormalizer["a" /* default */])(
  254. tinymce_editorImagevue_type_script_lang_js_,
  255. render,
  256. staticRenderFns,
  257. false,
  258. injectStyles,
  259. "1aadfe38",
  260. "1b0b82f1"
  261. )
  262. /* harmony default export */ var editorImage = __webpack_exports__["default"] = (component.exports);
  263. /***/ }),
  264. /***/ 255:
  265. /***/ (function(module, exports, __webpack_require__) {
  266. // style-loader: Adds some css to the DOM by adding a <style> tag
  267. // load the styles
  268. var content = __webpack_require__(280);
  269. if(content.__esModule) content = content.default;
  270. if(typeof content === 'string') content = [[module.i, content, '']];
  271. if(content.locals) module.exports = content.locals;
  272. // add CSS to SSR context
  273. var add = __webpack_require__(4).default
  274. module.exports.__inject__ = function (context) {
  275. add("3fb4d1be", content, true, context)
  276. };
  277. /***/ }),
  278. /***/ 256:
  279. /***/ (function(module, exports, __webpack_require__) {
  280. // style-loader: Adds some css to the DOM by adding a <style> tag
  281. // load the styles
  282. var content = __webpack_require__(282);
  283. if(content.__esModule) content = content.default;
  284. if(typeof content === 'string') content = [[module.i, content, '']];
  285. if(content.locals) module.exports = content.locals;
  286. // add CSS to SSR context
  287. var add = __webpack_require__(4).default
  288. module.exports.__inject__ = function (context) {
  289. add("80701a5a", content, true, context)
  290. };
  291. /***/ }),
  292. /***/ 279:
  293. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  294. "use strict";
  295. __webpack_require__.r(__webpack_exports__);
  296. /* harmony import */ var _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_0_id_0c52cdbe_lang_scss_rel_stylesheet_2Fscss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(255);
  297. /* harmony import */ var _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_0_id_0c52cdbe_lang_scss_rel_stylesheet_2Fscss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_0_id_0c52cdbe_lang_scss_rel_stylesheet_2Fscss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
  298. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_0_id_0c52cdbe_lang_scss_rel_stylesheet_2Fscss_scoped_true___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_10_2_1_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_2_2_4_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_0_id_0c52cdbe_lang_scss_rel_stylesheet_2Fscss_scoped_true___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  299. /***/ }),
  300. /***/ 280:
  301. /***/ (function(module, exports, __webpack_require__) {
  302. // Imports
  303. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  304. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  305. // Module
  306. ___CSS_LOADER_EXPORT___.push([module.i, ".col_red[data-v-0c52cdbe]{color:#f11111}.col_green[data-v-0c52cdbe]{color:#44be95}.col_white[data-v-0c52cdbe]{color:#fff}.flex-col[data-v-0c52cdbe]{flex-direction:column}.flex-j-c[data-v-0c52cdbe]{justify-content:center}.flex-j-sb[data-v-0c52cdbe]{justify-content:space-between}.flex-j-ar[data-v-0c52cdbe]{justify-content:space-around}.flex-a-c[data-v-0c52cdbe]{align-items:center}.flex-a-e[data-v-0c52cdbe]{align-items:flex-end}.w[data-v-0c52cdbe]{width:1200px}.m-auto[data-v-0c52cdbe]{margin:0 auto}.height-one[data-v-0c52cdbe]{height:100%}.flex[data-v-0c52cdbe]{display:flex}.text-overflow[data-v-0c52cdbe]{-webkit-line-clamp:4}.text-overflow[data-v-0c52cdbe],.text-overflow-2[data-v-0c52cdbe]{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical}.text-overflow-2[data-v-0c52cdbe]{-webkit-line-clamp:2}.text-overflow-3[data-v-0c52cdbe]{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.overflow-hide[data-v-0c52cdbe],.text-overflow-3[data-v-0c52cdbe]{overflow:hidden;text-overflow:ellipsis}.overflow-hide[data-v-0c52cdbe]{white-space:nowrap}.hiddenScroll[data-v-0c52cdbe]{scrollbar-width:none;-ms-overflow-style:none;overflow-x:hidden;overflow-y:scroll}.hiddenScroll[data-v-0c52cdbe]::-webkit-scrollbar{display:none}.finger-point[data-v-0c52cdbe]{cursor:pointer}.cursor-default[data-v-0c52cdbe]{cursor:default}.el-icon-circle-close[data-v-0c52cdbe]{color:#fff}.tinymce-box[data-v-0c52cdbe]{line-height:normal;padding:0 10px}.tinymce-box[data-v-0c52cdbe] .tox-fullscreen{z-index:10000}.doc-cnt[data-v-0c52cdbe]{min-height:400px;overflow:auto;font-size:16px;padding:.5em}.doc-cnt[data-v-0c52cdbe]:focus{outline:0}.doc-cnt p[data-v-0c52cdbe]{text-indent:0}", ""]);
  307. // Exports
  308. module.exports = ___CSS_LOADER_EXPORT___;
  309. /***/ }),
  310. /***/ 281:
  311. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  312. "use strict";
  313. __webpack_require__.r(__webpack_exports__);
  314. /* harmony import */ var _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(256);
  315. /* harmony import */ var _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0__);
  316. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_vue_style_loader_4_1_3_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_4_3_0_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_15_9_8_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_3_0_0_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_2_2_1_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_15_9_8_vue_loader_lib_index_js_vue_loader_options_tinymceSimple_vue_vue_type_style_index_1_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  317. /***/ }),
  318. /***/ 282:
  319. /***/ (function(module, exports, __webpack_require__) {
  320. // Imports
  321. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  322. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  323. // Module
  324. ___CSS_LOADER_EXPORT___.push([module.i, ".tox .tox-dialog__body-nav .tox-dialog__body-nav-item:nth-child(3){display:none!important}.tox-tinymce{border:none!important}.tox-tinymce .tox-editor{border:none}.tox-notifications-container{display:none}.tox .tox-statusbar{border:none!important}", ""]);
  325. // Exports
  326. module.exports = ___CSS_LOADER_EXPORT___;
  327. /***/ }),
  328. /***/ 366:
  329. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  330. "use strict";
  331. // ESM COMPAT FLAG
  332. __webpack_require__.r(__webpack_exports__);
  333. // CONCATENATED MODULE: ./node_modules/_vue-loader@15.9.8@vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/_@nuxt_components@2.2.1@@nuxt/components/dist/loader.js??ref--0-0!./node_modules/_vue-loader@15.9.8@vue-loader/lib??vue-loader-options!./components/default/tinymce/tinymceSimple.vue?vue&type=template&id=0c52cdbe&scoped=true&
  334. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"tinymce-box"},[_c('client-only',[_c('editor',{staticClass:"doc-cnt",attrs:{"id":"tinymce","init":_vm.init},model:{value:(_vm.contents),callback:function ($$v) {_vm.contents=$$v},expression:"contents"}})],1),_vm._ssrNode(" "),_vm._ssrNode("<div class=\"editor-custom-btn-container\" data-v-0c52cdbe>","</div>",[_c('editorImage',{ref:"editorImage",staticClass:"editor-upload-btn",attrs:{"color":"#2973fd"},on:{"successCBK":_vm.imageSuccessCBK}})],1)],2)}
  335. var staticRenderFns = []
  336. // CONCATENATED MODULE: ./components/default/tinymce/tinymceSimple.vue?vue&type=template&id=0c52cdbe&scoped=true&
  337. // EXTERNAL MODULE: ./components/default/tinymce/editorImage.vue + 4 modules
  338. var editorImage = __webpack_require__(200);
  339. // EXTERNAL MODULE: external "@tinymce/tinymce-vue"
  340. var tinymce_vue_ = __webpack_require__(130);
  341. var tinymce_vue_default = /*#__PURE__*/__webpack_require__.n(tinymce_vue_);
  342. // EXTERNAL MODULE: ./components/default/tinymce/plugins.js
  343. var plugins = __webpack_require__(198);
  344. // CONCATENATED MODULE: ./node_modules/_babel-loader@8.2.3@babel-loader/lib??ref--2-0!./node_modules/_@nuxt_components@2.2.1@@nuxt/components/dist/loader.js??ref--0-0!./node_modules/_vue-loader@15.9.8@vue-loader/lib??vue-loader-options!./components/default/tinymce/tinymceSimple.vue?vue&type=script&lang=js&
  345. //
  346. //
  347. //
  348. //
  349. //
  350. //
  351. //
  352. //
  353. //
  354. //
  355. //
  356. //
  357. // plugins
  358. let tinymce; // 在客户端环境下引入
  359. if (false) {}
  360. /* harmony default export */ var tinymceSimplevue_type_script_lang_js_ = ({
  361. name: "tinymce-editor",
  362. components: {
  363. editor: tinymce_vue_default.a,
  364. editorImage: editorImage["default"]
  365. },
  366. // 接收引用此组件的值
  367. props: ['modifyContent'],
  368. data() {
  369. return {
  370. uploaded: false,
  371. //有没有上传完成
  372. //初始化配置
  373. init: {
  374. placeholder: "请输入文本",
  375. language_url: '/plugins/shop_server/static/tinymce/langs/zh_CN.js',
  376. // 语言包的路径
  377. language: 'zh_CN',
  378. //语言
  379. emoticons_database_url: '/plugins/shop_server/static/tinymce/emoticons/js/emojis.js',
  380. skin_url: '/plugins/shop_server/static/tinymce/skins/ui/oxide',
  381. // skin路径
  382. min_height: 400,
  383. //编辑器高度
  384. width: 1125,
  385. branding: false,
  386. //是否禁用“Powered by TinyMCE”
  387. elementpath: false,
  388. //隐藏底栏的元素路径
  389. menubar: false,
  390. //顶部菜单栏显示
  391. object_resizing: false,
  392. // 是否禁用表格图片大小调整
  393. autosave_ask_before_unload: false,
  394. // 去除关闭/刷新网页时弹出对话框
  395. plugins: plugins["default"],
  396. toolbar: ['code undo redo restoredraft | formatselect fontsizeselect | forecolor backcolor formatting alignment formatpainter lineheight link emoticons | searchreplace wordcount |'],
  397. toolbar_groups: {
  398. formatting: {
  399. text: '文字格式',
  400. tooltip: 'Formatting',
  401. items: 'bold italic underline strikethrough | superscript subscript | removeformat'
  402. },
  403. alignment: {
  404. icon: 'align-left',
  405. tooltip: 'alignment',
  406. items: 'alignleft aligncenter alignright alignjustify | outdent indent '
  407. },
  408. insertion: {
  409. text: "插入",
  410. tooltip: 'insertion',
  411. items: 'codesample table insertdatetime anchor | charmap hr'
  412. }
  413. },
  414. body_class: "panel-body",
  415. end_container_on_empty_block: true,
  416. powerpaste_word_import: "clean",
  417. code_dialog_height: 450,
  418. code_dialog_width: 1000,
  419. contextmenu: "link copy ",
  420. //右键菜单
  421. advlist_bullet_styles: "square",
  422. advlist_number_styles: "default",
  423. imagetools_cors_hosts: ["www.tinymce.com", "codepen.io"],
  424. // 自定义字号
  425. fontsize_formats: '12px 14px 16px 18px 20px 22px 24px 28px 36px 48px 56px 72px',
  426. // 自定义字体集
  427. theme_advanced_fonts: "宋体=宋体;微软雅黑=微软雅黑;新宋体=新宋体;Courier New=courier new,courier,monospace;AkrutiKndPadmini=Akpdmi-n",
  428. paste_data_images: false,
  429. // 允许粘贴图像
  430. // 自定义字体
  431. font_formats: `
  432. 微软雅黑=微软雅黑;
  433. 宋体=宋体;
  434. 黑体=黑体;
  435. 仿宋=仿宋;
  436. 楷体=楷体;
  437. 隶书=隶书;
  438. 幼圆=幼圆;
  439. 思源黑体CN=思源黑体CN;
  440. Andale Mono=andale mono,times;
  441. Arial=arial, helvetica,
  442. sans-serif;
  443. Arial Black=arial black, avant garde;
  444. Book Antiqua=book antiqua,palatino;
  445. Comic Sans MS=comic sans ms,sans-serif;
  446. Courier New=courier new,courier;
  447. Georgia=georgia,palatino;
  448. Helvetica=helvetica;
  449. Impact=impact,chicago;
  450. Symbol=symbol;
  451. Tahoma=tahoma,arial,helvetica,sans-serif;
  452. Terminal=terminal,monaco;
  453. Times New Roman=times new roman,times;
  454. Trebuchet MS=trebuchet ms,geneva;
  455. Verdana=verdana,geneva;
  456. Webdings=webdings;
  457. Wingdings=wingdings,zapf dingbats`,
  458. content_style: `
  459. * { padding:0; margin:0; font-family: "Noto Sans SC";}
  460. html, body { height:100%; }
  461. img { max-width:100%; display:inline-block;height:auto; }
  462. a { text-decoration: none; }
  463. iframe { width: 100%; }
  464. p { line-height:1.6; margin: 0px; font-size: 16px; font-family:微软雅黑}
  465. table { word-wrap:break-word; word-break:break-all; max-width:100%; border:none; border-color:#999; }
  466. .mce-object-iframe { width:100%; box-sizing:border-box; margin:0; padding:0; }
  467. body, td, pre {
  468. font-family: Verdana, Arial, Helvetica, sans-serif;
  469. font-size: 12px;
  470. }
  471. `,
  472. block_formats: 'Paragraph=p;Header 1=h1;Header 2=h2;Header 3=h3;Heading 4=h4;',
  473. formats: {
  474. p: {
  475. block: 'p',
  476. attributes: {
  477. 'class': `micro_release_content`
  478. }
  479. }
  480. },
  481. default_link_target: "_blank",
  482. link_title: false,
  483. convert_urls: false,
  484. // 图片上传路径为绝对路径
  485. remove_script_host: false,
  486. paste_word_valid_elements: "*[*]",
  487. paste_convert_word_fake_lists: false,
  488. paste_webkit_styles: "all",
  489. paste_merge_formats: true,
  490. nonbreaking_force_tab: false,
  491. paste_auto_cleanup_on_paste: false,
  492. forced_root_block: "p",
  493. forced_root_block_attrs: {
  494. 'class': 'micro-panel-body'
  495. },
  496. force_p_newlines: true,
  497. importcss_append: true,
  498. tabfocus_elements: ":prev,:next",
  499. // 本地图片上传配置
  500. images_upload_handler: (blobInfo, success, failure) => {
  501. // 上传图片拿到url
  502. let fd = new FormData();
  503. fd.append('file', blobInfo.blob(), blobInfo.filename());
  504. this.uploadImg(fd, 'img').then(resVideo => {
  505. if (resVideo) {
  506. success(resVideo);
  507. } else {
  508. failure("上传失败");
  509. }
  510. });
  511. },
  512. // 本地媒体上传配置
  513. file_picker_types: 'media',
  514. file_picker_callback: (callback, value, meta) => {
  515. if (meta.filetype == 'media') {
  516. let input = document.createElement('input'); //创建一个隐藏的input
  517. input.setAttribute('type', 'file');
  518. input.setAttribute('accept', '.mp4,.mov,.avi');
  519. let that = this;
  520. input.onchange = function () {
  521. let file = this.files[0]; //选取第一个文件
  522. that.uploadImg(file, 'video').then(resVideo => {
  523. callback(resVideo, {
  524. title: file.name,
  525. width: '100%',
  526. height: '100%'
  527. }); //将url显示在弹框输入框中
  528. }); // 上传视频拿到url
  529. }; //触发点击
  530. input.click();
  531. }
  532. },
  533. save_onsavecallback: () => {
  534. // 触发保存事件
  535. this.$emit('save');
  536. },
  537. setup: editor => {
  538. const _this = this; // 定义按钮,
  539. editor.ui.registry.addButton('outline', {
  540. // text: '大纲',
  541. icon: "toc",
  542. tooltip: '大纲',
  543. onAction: () => {
  544. this.showOutline(editor);
  545. }
  546. });
  547. editor.ui.registry.addButton('manyimg', {
  548. icon: "gallery",
  549. tooltip: '多图',
  550. onAction: () => {
  551. this.opUpload();
  552. }
  553. });
  554. editor.ui.registry.addButton('fileupload', {
  555. icon: "non-breaking",
  556. tooltip: '上传附件',
  557. onAction: () => {
  558. this.fileUpload();
  559. }
  560. }); // 监听编辑器失焦事件
  561. // editor.on('blur', function () {
  562. // _this.$emit('saveDraft')
  563. // });
  564. // editor.on('keydown', function (e) {
  565. // if (e.keyCode == 83 && (navigator.platform.match("Mac") ? e.metaKey : e.ctrlKey)){
  566. // _this.$emit('save')
  567. // }
  568. // });
  569. }
  570. },
  571. // 绑定的内容
  572. contents: this.modifyContent
  573. };
  574. },
  575. mounted() {
  576. // 用process.client判断一下环境再执行
  577. this.$nextTick(() => {
  578. if (false) {}
  579. });
  580. },
  581. watch: {
  582. modifyContent(newValue) {
  583. this.contents = newValue;
  584. },
  585. contents(newValue) {
  586. this.$emit('writeContent', newValue);
  587. }
  588. },
  589. methods: {
  590. opUpload() {
  591. this.$refs.editorImage.opUpload('img');
  592. },
  593. fileUpload() {
  594. this.$refs.editorImage.opUpload('file');
  595. },
  596. showOutline(editor) {
  597. // editor.insertContent('&nbsp;<b>It\'s my button!</b>&nbsp;')
  598. this.$emit('showOutline');
  599. },
  600. uploadImg(file, type) {
  601. return new Promise((resolve, reject) => {
  602. let fd = new FormData();
  603. let loading = "loading";
  604. if (type === 'img') {
  605. fd = file;
  606. loading = "";
  607. } else if (type === 'video') {
  608. fd.append("upload_type", "videos");
  609. fd.append("file", file);
  610. }
  611. this.fun.$post(this.fun.getRealUrl("upload.uploadPic"), fd, loading, '', {
  612. headers: {
  613. "Content-Type": "multipart/form-data"
  614. }
  615. }).then(res => {
  616. if (res.result == 1) {
  617. resolve(res.data.img_url);
  618. } else {
  619. reject('');
  620. console.log("上传出错");
  621. }
  622. }).catch(() => {
  623. reject('');
  624. console.log("上传出错");
  625. });
  626. });
  627. },
  628. imageSuccessCBK(obj) {
  629. console.log(obj);
  630. if (obj.uploadType === 'img') {
  631. obj.arr.forEach(v => {
  632. window.tinymce.get("tinymce").insertContent(`<img class="wscnph" style="display: inline-block;" src="${v.url}" />`);
  633. });
  634. } else if (obj.uploadType === 'file') {
  635. obj.arr.forEach(v => {
  636. v.url = v.url.replace(/http:/gi, "https:");
  637. window.tinymce.get("tinymce").insertContent(`<a target="_blank" class="pc-file" download="${v.name}" href="${v.url}"><i class="iconfont icon-all_link"> </i>${v.name}</a>`);
  638. });
  639. } else {
  640. obj.arr.forEach(v => {
  641. window.tinymce.get("tinymce").insertContent(`<video class="pc-video" src="${v.url}" ></video>`);
  642. });
  643. }
  644. }
  645. }
  646. });
  647. // CONCATENATED MODULE: ./components/default/tinymce/tinymceSimple.vue?vue&type=script&lang=js&
  648. /* harmony default export */ var tinymce_tinymceSimplevue_type_script_lang_js_ = (tinymceSimplevue_type_script_lang_js_);
  649. // EXTERNAL MODULE: ./node_modules/_vue-loader@15.9.8@vue-loader/lib/runtime/componentNormalizer.js
  650. var componentNormalizer = __webpack_require__(2);
  651. // CONCATENATED MODULE: ./components/default/tinymce/tinymceSimple.vue
  652. function injectStyles (context) {
  653. var style0 = __webpack_require__(279)
  654. if (style0.__inject__) style0.__inject__(context)
  655. var style1 = __webpack_require__(281)
  656. if (style1.__inject__) style1.__inject__(context)
  657. }
  658. /* normalize component */
  659. var component = Object(componentNormalizer["a" /* default */])(
  660. tinymce_tinymceSimplevue_type_script_lang_js_,
  661. render,
  662. staticRenderFns,
  663. false,
  664. injectStyles,
  665. "0c52cdbe",
  666. "88659038"
  667. )
  668. /* harmony default export */ var tinymceSimple = __webpack_exports__["default"] = (component.exports);
  669. /***/ })
  670. };;
  671. //# sourceMappingURL=default-tinymce-simple.js.map