gitextract_jbuiie7d/ ├── .babelrc ├── .editorconfig ├── .gitee/ │ └── ISSUE_TEMPLATE/ │ ├── bug.yml │ ├── config.yml │ └── feature.yml ├── .gitignore ├── .nvmrc ├── Gruntfile.js ├── LICENSE ├── Makefile ├── README.md ├── _demo_server/ │ └── handle.php ├── _examples/ │ ├── addCustomizeButton.js │ ├── addCustomizeCombox.js │ ├── addCustomizeDialog.js │ ├── bugTest.html │ ├── completeDemo.html │ ├── customPluginDemo.html │ ├── customToolbarDemo.html │ ├── customizeDialogPage.html │ ├── customizeToolbarUIDemo.html │ ├── editor_api.js │ ├── example.js │ ├── filterRuleDemo.html │ ├── highlightDemo.html │ ├── index.html │ ├── jqueryCompleteDemo.html │ ├── jqueryValidation.html │ ├── multiDemo.html │ ├── multiEditorWithOneInstance.html │ ├── renderInTable.html │ ├── resetDemo.html │ ├── sectionDemo.html │ ├── setWidthHeightDemo.html │ ├── simpleDemo.html │ ├── sortableDemo.html │ ├── style.css │ ├── submitFormDemo.html │ ├── textareaDemo.html │ └── uparsedemo.html ├── _examples-integrate/ │ ├── reactx/ │ │ ├── .gitignore │ │ ├── README.md │ │ ├── package.json │ │ ├── public/ │ │ │ ├── index.html │ │ │ ├── manifest.json │ │ │ ├── robots.txt │ │ │ └── static/ │ │ │ └── UEditorPlus/ │ │ │ ├── dialogs/ │ │ │ │ ├── anchor/ │ │ │ │ │ └── anchor.html │ │ │ │ ├── attachment/ │ │ │ │ │ ├── attachment.css │ │ │ │ │ ├── attachment.html │ │ │ │ │ └── attachment.js │ │ │ │ ├── audio/ │ │ │ │ │ ├── audio.css │ │ │ │ │ ├── audio.html │ │ │ │ │ └── audio.js │ │ │ │ ├── background/ │ │ │ │ │ ├── background.css │ │ │ │ │ ├── background.html │ │ │ │ │ └── background.js │ │ │ │ ├── contentimport/ │ │ │ │ │ ├── contentimport.html │ │ │ │ │ └── contentimport.js │ │ │ │ ├── emotion/ │ │ │ │ │ ├── emotion.css │ │ │ │ │ ├── emotion.html │ │ │ │ │ └── emotion.js │ │ │ │ ├── formula/ │ │ │ │ │ ├── formula.html │ │ │ │ │ └── formula.js │ │ │ │ ├── help/ │ │ │ │ │ ├── help.css │ │ │ │ │ ├── help.html │ │ │ │ │ └── help.js │ │ │ │ ├── image/ │ │ │ │ │ ├── image.css │ │ │ │ │ ├── image.html │ │ │ │ │ └── image.js │ │ │ │ ├── insertframe/ │ │ │ │ │ └── insertframe.html │ │ │ │ ├── internal.js │ │ │ │ ├── link/ │ │ │ │ │ └── link.html │ │ │ │ ├── preview/ │ │ │ │ │ └── preview.html │ │ │ │ ├── scrawl/ │ │ │ │ │ ├── scrawl.css │ │ │ │ │ ├── scrawl.html │ │ │ │ │ └── scrawl.js │ │ │ │ ├── searchreplace/ │ │ │ │ │ ├── searchreplace.html │ │ │ │ │ └── searchreplace.js │ │ │ │ ├── spechars/ │ │ │ │ │ ├── spechars.html │ │ │ │ │ └── spechars.js │ │ │ │ ├── table/ │ │ │ │ │ ├── edittable.css │ │ │ │ │ ├── edittable.html │ │ │ │ │ ├── edittable.js │ │ │ │ │ ├── edittd.html │ │ │ │ │ └── edittip.html │ │ │ │ ├── template/ │ │ │ │ │ ├── config.js │ │ │ │ │ ├── template.css │ │ │ │ │ ├── template.html │ │ │ │ │ └── template.js │ │ │ │ ├── video/ │ │ │ │ │ ├── video.css │ │ │ │ │ ├── video.html │ │ │ │ │ └── video.js │ │ │ │ └── wordimage/ │ │ │ │ ├── wordimage.html │ │ │ │ └── wordimage.js │ │ │ ├── index.html │ │ │ ├── lang/ │ │ │ │ ├── en/ │ │ │ │ │ └── en.js │ │ │ │ └── zh-cn/ │ │ │ │ └── zh-cn.js │ │ │ ├── plugins/ │ │ │ │ └── demo/ │ │ │ │ └── demo.js │ │ │ ├── themes/ │ │ │ │ ├── default/ │ │ │ │ │ ├── css/ │ │ │ │ │ │ └── ueditor.css │ │ │ │ │ ├── dialog.css │ │ │ │ │ └── dialogbase.css │ │ │ │ └── iframe.css │ │ │ ├── third-party/ │ │ │ │ ├── SyntaxHighlighter/ │ │ │ │ │ ├── shCore.js │ │ │ │ │ └── shCoreDefault.css │ │ │ │ ├── clipboard/ │ │ │ │ │ ├── clipboard.js │ │ │ │ │ └── clipboard.swf │ │ │ │ ├── codemirror/ │ │ │ │ │ ├── codemirror.css │ │ │ │ │ └── codemirror.js │ │ │ │ ├── jquery-1.10.2.js │ │ │ │ ├── webuploader/ │ │ │ │ │ ├── webuploader.css │ │ │ │ │ └── webuploader.js │ │ │ │ └── zeroclipboard/ │ │ │ │ ├── ZeroClipboard.js │ │ │ │ └── ZeroClipboard.swf │ │ │ ├── ueditor.all.js │ │ │ ├── ueditor.config.js │ │ │ └── ueditor.parse.js │ │ └── src/ │ │ ├── App.css │ │ ├── App.js │ │ ├── App.test.js │ │ ├── index.css │ │ ├── index.js │ │ ├── reportWebVitals.js │ │ └── setupTests.js │ ├── vue2/ │ │ ├── .gitignore │ │ ├── README.md │ │ ├── babel.config.js │ │ ├── jsconfig.json │ │ ├── package.json │ │ ├── public/ │ │ │ ├── index.html │ │ │ └── static/ │ │ │ └── UEditorPlus/ │ │ │ ├── dialogs/ │ │ │ │ ├── anchor/ │ │ │ │ │ └── anchor.html │ │ │ │ ├── attachment/ │ │ │ │ │ ├── attachment.css │ │ │ │ │ ├── attachment.html │ │ │ │ │ └── attachment.js │ │ │ │ ├── audio/ │ │ │ │ │ ├── audio.css │ │ │ │ │ ├── audio.html │ │ │ │ │ └── audio.js │ │ │ │ ├── background/ │ │ │ │ │ ├── background.css │ │ │ │ │ ├── background.html │ │ │ │ │ └── background.js │ │ │ │ ├── contentimport/ │ │ │ │ │ ├── contentimport.html │ │ │ │ │ └── contentimport.js │ │ │ │ ├── emotion/ │ │ │ │ │ ├── emotion.css │ │ │ │ │ ├── emotion.html │ │ │ │ │ └── emotion.js │ │ │ │ ├── formula/ │ │ │ │ │ ├── formula.html │ │ │ │ │ └── formula.js │ │ │ │ ├── help/ │ │ │ │ │ ├── help.css │ │ │ │ │ ├── help.html │ │ │ │ │ └── help.js │ │ │ │ ├── image/ │ │ │ │ │ ├── image.css │ │ │ │ │ ├── image.html │ │ │ │ │ └── image.js │ │ │ │ ├── insertframe/ │ │ │ │ │ └── insertframe.html │ │ │ │ ├── internal.js │ │ │ │ ├── link/ │ │ │ │ │ └── link.html │ │ │ │ ├── preview/ │ │ │ │ │ └── preview.html │ │ │ │ ├── scrawl/ │ │ │ │ │ ├── scrawl.css │ │ │ │ │ ├── scrawl.html │ │ │ │ │ └── scrawl.js │ │ │ │ ├── searchreplace/ │ │ │ │ │ ├── searchreplace.html │ │ │ │ │ └── searchreplace.js │ │ │ │ ├── spechars/ │ │ │ │ │ ├── spechars.html │ │ │ │ │ └── spechars.js │ │ │ │ ├── table/ │ │ │ │ │ ├── edittable.css │ │ │ │ │ ├── edittable.html │ │ │ │ │ ├── edittable.js │ │ │ │ │ ├── edittd.html │ │ │ │ │ └── edittip.html │ │ │ │ ├── template/ │ │ │ │ │ ├── config.js │ │ │ │ │ ├── template.css │ │ │ │ │ ├── template.html │ │ │ │ │ └── template.js │ │ │ │ ├── video/ │ │ │ │ │ ├── video.css │ │ │ │ │ ├── video.html │ │ │ │ │ └── video.js │ │ │ │ └── wordimage/ │ │ │ │ ├── wordimage.html │ │ │ │ └── wordimage.js │ │ │ ├── index.html │ │ │ ├── lang/ │ │ │ │ ├── en/ │ │ │ │ │ └── en.js │ │ │ │ └── zh-cn/ │ │ │ │ └── zh-cn.js │ │ │ ├── plugins/ │ │ │ │ └── demo/ │ │ │ │ └── demo.js │ │ │ ├── themes/ │ │ │ │ ├── default/ │ │ │ │ │ ├── css/ │ │ │ │ │ │ └── ueditor.css │ │ │ │ │ ├── dialog.css │ │ │ │ │ └── dialogbase.css │ │ │ │ └── iframe.css │ │ │ ├── third-party/ │ │ │ │ ├── SyntaxHighlighter/ │ │ │ │ │ ├── shCore.js │ │ │ │ │ └── shCoreDefault.css │ │ │ │ ├── clipboard/ │ │ │ │ │ └── clipboard.js │ │ │ │ ├── codemirror/ │ │ │ │ │ ├── codemirror.css │ │ │ │ │ └── codemirror.js │ │ │ │ ├── jquery-1.10.2.js │ │ │ │ ├── webuploader/ │ │ │ │ │ ├── webuploader.css │ │ │ │ │ └── webuploader.js │ │ │ │ └── zeroclipboard/ │ │ │ │ └── ZeroClipboard.js │ │ │ ├── ueditor.all.js │ │ │ ├── ueditor.config.js │ │ │ └── ueditor.parse.js │ │ ├── src/ │ │ │ ├── App.vue │ │ │ └── main.js │ │ └── vue.config.js │ └── vue3/ │ ├── .gitignore │ ├── README.md │ ├── babel.config.js │ ├── jsconfig.json │ ├── package.json │ ├── public/ │ │ ├── index.html │ │ └── static/ │ │ └── UEditorPlus/ │ │ ├── dialogs/ │ │ │ ├── anchor/ │ │ │ │ └── anchor.html │ │ │ ├── attachment/ │ │ │ │ ├── attachment.css │ │ │ │ ├── attachment.html │ │ │ │ └── attachment.js │ │ │ ├── audio/ │ │ │ │ ├── audio.css │ │ │ │ ├── audio.html │ │ │ │ └── audio.js │ │ │ ├── background/ │ │ │ │ ├── background.css │ │ │ │ ├── background.html │ │ │ │ └── background.js │ │ │ ├── contentimport/ │ │ │ │ ├── contentimport.html │ │ │ │ └── contentimport.js │ │ │ ├── emotion/ │ │ │ │ ├── emotion.css │ │ │ │ ├── emotion.html │ │ │ │ └── emotion.js │ │ │ ├── formula/ │ │ │ │ ├── formula.html │ │ │ │ └── formula.js │ │ │ ├── help/ │ │ │ │ ├── help.css │ │ │ │ ├── help.html │ │ │ │ └── help.js │ │ │ ├── image/ │ │ │ │ ├── image.css │ │ │ │ ├── image.html │ │ │ │ └── image.js │ │ │ ├── insertframe/ │ │ │ │ └── insertframe.html │ │ │ ├── internal.js │ │ │ ├── link/ │ │ │ │ └── link.html │ │ │ ├── preview/ │ │ │ │ └── preview.html │ │ │ ├── scrawl/ │ │ │ │ ├── scrawl.css │ │ │ │ ├── scrawl.html │ │ │ │ └── scrawl.js │ │ │ ├── searchreplace/ │ │ │ │ ├── searchreplace.html │ │ │ │ └── searchreplace.js │ │ │ ├── spechars/ │ │ │ │ ├── spechars.html │ │ │ │ └── spechars.js │ │ │ ├── table/ │ │ │ │ ├── edittable.css │ │ │ │ ├── edittable.html │ │ │ │ ├── edittable.js │ │ │ │ ├── edittd.html │ │ │ │ └── edittip.html │ │ │ ├── template/ │ │ │ │ ├── config.js │ │ │ │ ├── template.css │ │ │ │ ├── template.html │ │ │ │ └── template.js │ │ │ ├── video/ │ │ │ │ ├── video.css │ │ │ │ ├── video.html │ │ │ │ └── video.js │ │ │ └── wordimage/ │ │ │ ├── wordimage.html │ │ │ └── wordimage.js │ │ ├── index.html │ │ ├── lang/ │ │ │ ├── en/ │ │ │ │ └── en.js │ │ │ └── zh-cn/ │ │ │ └── zh-cn.js │ │ ├── plugins/ │ │ │ └── demo/ │ │ │ └── demo.js │ │ ├── themes/ │ │ │ ├── default/ │ │ │ │ ├── css/ │ │ │ │ │ └── ueditor.css │ │ │ │ ├── dialog.css │ │ │ │ └── dialogbase.css │ │ │ └── iframe.css │ │ ├── third-party/ │ │ │ ├── SyntaxHighlighter/ │ │ │ │ ├── shCore.js │ │ │ │ └── shCoreDefault.css │ │ │ ├── clipboard/ │ │ │ │ └── clipboard.js │ │ │ ├── codemirror/ │ │ │ │ ├── codemirror.css │ │ │ │ └── codemirror.js │ │ │ ├── jquery-1.10.2.js │ │ │ ├── webuploader/ │ │ │ │ ├── webuploader.css │ │ │ │ └── webuploader.js │ │ │ └── zeroclipboard/ │ │ │ └── ZeroClipboard.js │ │ ├── ueditor.all.js │ │ ├── ueditor.config.js │ │ └── ueditor.parse.js │ ├── src/ │ │ ├── App.vue │ │ └── main.js │ └── vue.config.js ├── _parse/ │ ├── background.js │ ├── insertcode.js │ ├── list.js │ ├── parse.js │ └── table.js ├── _src/ │ ├── adapter/ │ │ ├── editor.js │ │ ├── editorui.js │ │ └── message.js │ ├── api.js │ ├── core/ │ │ ├── Editor.defaultoptions.js │ │ ├── Editor.js │ │ ├── EventBase.js │ │ ├── Range.js │ │ ├── Selection.js │ │ ├── ajax.js │ │ ├── api.js │ │ ├── browser.js │ │ ├── dialog.js │ │ ├── domUtils.js │ │ ├── dtd.js │ │ ├── filternode.js │ │ ├── filterword.js │ │ ├── htmlparser.js │ │ ├── image.js │ │ ├── keymap.js │ │ ├── loadconfig.js │ │ ├── localstorage.js │ │ ├── node.js │ │ ├── plugin.js │ │ └── utils.js │ ├── editor.js │ ├── plugins/ │ │ ├── anchor.js │ │ ├── audio.js │ │ ├── autofloat.js │ │ ├── autoheight.js │ │ ├── autolink.js │ │ ├── autosave.js │ │ ├── autosubmit.js │ │ ├── autotypeset.js │ │ ├── autoupload.js │ │ ├── background.js │ │ ├── basestyle.js │ │ ├── blockquote.js │ │ ├── catchremoteimage.js │ │ ├── cleardoc.js │ │ ├── contextmenu.js │ │ ├── convertcase.js │ │ ├── copy.js │ │ ├── customstyle.js │ │ ├── defaultfilter.js │ │ ├── directionality.js │ │ ├── dragdrop.js │ │ ├── elementpath.js │ │ ├── enterkey.js │ │ ├── fiximgclick.js │ │ ├── font.js │ │ ├── formatmatch.js │ │ ├── formula.js │ │ ├── horizontal.js │ │ ├── iframe.js │ │ ├── image.js │ │ ├── indent.js │ │ ├── insertcode.js │ │ ├── insertfile.js │ │ ├── inserthtml.js │ │ ├── insertparagraph.js │ │ ├── justify.js │ │ ├── keystrokes.js │ │ ├── letterspacing.js │ │ ├── lineheight.js │ │ ├── link.js │ │ ├── list.js │ │ ├── markdown-shortcut.js │ │ ├── pagebreak.js │ │ ├── paragraph.js │ │ ├── paste.js │ │ ├── preview.js │ │ ├── print.js │ │ ├── puretxtpaste.js │ │ ├── quick-operate.js │ │ ├── removeformat.js │ │ ├── rowspacing.js │ │ ├── scrawl.js │ │ ├── searchreplace.js │ │ ├── section.js │ │ ├── selectall.js │ │ ├── serverparam.js │ │ ├── shortcutmenu.js │ │ ├── simpleupload.js │ │ ├── source.js │ │ ├── table.action.js │ │ ├── table.cmds.js │ │ ├── table.core.js │ │ ├── table.sort.js │ │ ├── template.js │ │ ├── time.js │ │ ├── undo.js │ │ ├── video.js │ │ ├── wordcount.js │ │ └── wordimage.js │ └── ui/ │ ├── autotypesetbutton.js │ ├── autotypesetpicker.js │ ├── breakline.js │ ├── button.js │ ├── cellalignpicker.js │ ├── colorbutton.js │ ├── colorpicker.js │ ├── combox.js │ ├── dialog.js │ ├── mask.js │ ├── menu.js │ ├── menubutton.js │ ├── message.js │ ├── multiMenu.js │ ├── pastepicker.js │ ├── popup.js │ ├── quick-operate.js │ ├── separator.js │ ├── shortcutmenu.js │ ├── splitbutton.js │ ├── stateful.js │ ├── tablebutton.js │ ├── tablepicker.js │ ├── toolbar.js │ ├── ui.js │ ├── uibase.js │ └── uiutils.js ├── dialogs/ │ ├── ai/ │ │ ├── ai.html │ │ └── ai.js │ ├── anchor/ │ │ └── anchor.html │ ├── attachment/ │ │ ├── attachment.css │ │ ├── attachment.html │ │ └── attachment.js │ ├── audio/ │ │ ├── audio.css │ │ ├── audio.html │ │ └── audio.js │ ├── background/ │ │ ├── background.css │ │ ├── background.html │ │ └── background.js │ ├── contentimport/ │ │ ├── contentimport.html │ │ └── contentimport.js │ ├── emotion/ │ │ ├── emotion.css │ │ ├── emotion.html │ │ └── emotion.js │ ├── formula/ │ │ ├── formula.html │ │ └── formula.js │ ├── help/ │ │ ├── help.css │ │ ├── help.html │ │ └── help.js │ ├── image/ │ │ ├── image.css │ │ ├── image.html │ │ └── image.js │ ├── insertframe/ │ │ └── insertframe.html │ ├── internal.js │ ├── link/ │ │ └── link.html │ ├── preview/ │ │ └── preview.html │ ├── scrawl/ │ │ ├── scrawl.css │ │ ├── scrawl.html │ │ └── scrawl.js │ ├── searchreplace/ │ │ ├── searchreplace.html │ │ └── searchreplace.js │ ├── spechars/ │ │ ├── spechars.html │ │ └── spechars.js │ ├── table/ │ │ ├── edittable.css │ │ ├── edittable.html │ │ ├── edittable.js │ │ ├── edittd.html │ │ └── edittip.html │ ├── template/ │ │ ├── config.js │ │ ├── template.css │ │ ├── template.html │ │ └── template.js │ ├── video/ │ │ ├── video.css │ │ ├── video.html │ │ └── video.js │ └── wordimage/ │ ├── wordimage.html │ └── wordimage.js ├── lang/ │ ├── en/ │ │ └── en.js │ └── zh-cn/ │ └── zh-cn.js ├── package.json ├── plugins/ │ └── demo/ │ └── demo.js ├── scripts/ │ └── postBuild.js ├── themes/ │ ├── default/ │ │ ├── _css/ │ │ │ ├── autotypesetpicker.css │ │ │ ├── button.css │ │ │ ├── buttonicon.css │ │ │ ├── cellalignpicker.css │ │ │ ├── colorbutton.css │ │ │ ├── colorpicker.css │ │ │ ├── combox.css │ │ │ ├── contextmenu.css │ │ │ ├── dialog.css │ │ │ ├── editor.css │ │ │ ├── menu.css │ │ │ ├── menubutton.css │ │ │ ├── message.css │ │ │ ├── multiMenu.css │ │ │ ├── paragraphpicker.css │ │ │ ├── pastepicker.css │ │ │ ├── popup.css │ │ │ ├── quick-operate.css │ │ │ ├── separtor.css │ │ │ ├── shortcutmenu.css │ │ │ ├── splitbutton.css │ │ │ ├── tablepicker.css │ │ │ ├── toolbar.css │ │ │ ├── ueditor.css │ │ │ ├── uibase.css │ │ │ └── uibase.less │ │ ├── dialog.css │ │ ├── dialog.less │ │ ├── dialogbase.css │ │ └── font/ │ │ └── iconfont.less │ └── iframe.css ├── third-party/ │ ├── SyntaxHighlighter/ │ │ ├── shCore.js │ │ └── shCoreDefault.css │ ├── clipboard/ │ │ ├── clipboard.js │ │ └── clipboard.swf │ ├── codemirror/ │ │ ├── codemirror.css │ │ └── codemirror.js │ ├── jquery-1.10.2.js │ ├── showdown.js │ ├── vue.js │ ├── webuploader/ │ │ ├── webuploader.css │ │ └── webuploader.js │ └── zeroclipboard/ │ ├── ZeroClipboard.js │ └── ZeroClipboard.swf ├── ueditor.config.js └── ueditor.parse.js