(function(e){"use strict";if(typeof require==="function"&&typeof exports==="object"&&typeof module==="object"){module.exports=e}else if(typeof define==="function"){if(define.amd){}else{define(["jquery"],e)}}else{window.editormd=e()}})(function(){"use strict";var $=typeof jQuery!=="undefined"?jQuery:Zepto;if(typeof $==="undefined"){return}var editormd=function(e,t){return new editormd.fn.init(e,t)};editormd.title=editormd.$name="Editor.md";editormd.version="1.5.0";editormd.homePage="https://pandao.github.io/editor.md/";editormd.classPrefix="editormd-";editormd.toolbarModes={full:["undo","redo","|","bold","del","italic","quote","ucwords","uppercase","lowercase","|","h1","h2","h3","h4","h5","h6","|","list-ul","list-ol","hr","|","link","reference-link","image","code","preformatted-text","code-block","table","datetime","emoji","html-entities","pagebreak","|","goto-line","watch","preview","fullscreen","clear","search","|","help","info"],simple:["undo","redo","|","bold","del","italic","quote","uppercase","lowercase","|","h1","h2","h3","h4","h5","h6","|","list-ul","list-ol","hr","|","watch","preview","fullscreen","|","help","info"],mini:["undo","redo","|","watch","preview","|","help","info"]};editormd.defaults={mode:"gfm",name:"",value:"",theme:"",editorTheme:"default",previewTheme:"",markdown:"",appendMarkdown:"",width:"100%",height:"100%",path:"./lib/",pluginPath:"",delay:300,autoLoadModules:true,watch:true,placeholder:"Enjoy Markdown! coding now...",gotoLine:true,codeFold:false,autoHeight:false,autoFocus:true,autoCloseTags:true,searchReplace:true,syncScrolling:true,readOnly:false,tabSize:4,indentUnit:4,lineNumbers:true,lineWrapping:true,autoCloseBrackets:true,showTrailingSpace:true,matchBrackets:true,indentWithTabs:true,styleSelectedText:true,matchWordHighlight:true,styleActiveLine:true,dialogLockScreen:true,dialogShowMask:true,dialogDraggable:true,dialogMaskBgColor:"#fff",dialogMaskOpacity:.1,fontSize:"15px",saveHTMLToTextarea:false,disabledKeyMaps:[],onload:function(){},onresize:function(){},onchange:function(){},onwatch:null,onunwatch:null,onpreviewing:function(){},onpreviewed:function(){},onfullscreen:function(){},onfullscreenExit:function(){},onscroll:function(){},onpreviewscroll:function(){},imageUpload:false,imageFormats:["jpg","jpeg","gif","png","bmp","webp"],imageUploadURL:"",crossDomainUpload:false,uploadCallbackURL:"",toc:true,tocm:false,tocTitle:"",tocDropdown:false,tocContainer:"",tocStartLevel:1,htmlDecode:false,pageBreak:true,atLink:false,emailLink:true,taskList:true,emoji:false,tex:false,flowChart:false,sequenceDiagram:false,mindMap:true,echart:true,previewCodeHighlight:true,toolbar:true,toolbarAutoFixed:true,toolbarIcons:"full",toolbarTitles:{},toolbarHandlers:{ucwords:function(){return editormd.toolbarHandlers.ucwords},lowercase:function(){return editormd.toolbarHandlers.lowercase}},toolbarCustomIcons:{lowercase:'a',ucwords:'Aa'},toolbarIconsClass:{undo:"fa-undo",redo:"fa-repeat",bold:"fa-bold",mark:"fa-paint-brush",del:"fa-strikethrough",italic:"fa-italic",quote:"fa-quote-left",uppercase:"fa-font",h1:editormd.classPrefix+"bold",h2:editormd.classPrefix+"bold",h3:editormd.classPrefix+"bold",h4:editormd.classPrefix+"bold",h5:editormd.classPrefix+"bold",h6:editormd.classPrefix+"bold","list-ul":"fa-list-ul","list-ol":"fa-list-ol",hr:"fa-minus",link:"fa-link","reference-link":"fa-anchor",image:"fa-picture-o",code:"fa-code","preformatted-text":"fa-file-code-o","code-block":"fa-file-code-o",table:"fa-table",datetime:"fa-clock-o",emoji:"fa-smile-o","html-entities":"fa-copyright",pagebreak:"fa-newspaper-o","goto-line":"fa-terminal",watch:"fa-eye-slash",unwatch:"fa-eye",preview:"fa-desktop",search:"fa-search",fullscreen:"fa-arrows-alt",clear:"fa-eraser",help:"fa-question-circle",info:"fa-info-circle"},toolbarIconTexts:{},toolbarIconSvgs:{},lang:{name:"zh-cn",description:"开源在线Markdown编辑器
Open source online Markdown editor.",tocTitle:"目录",toolbar:{undo:"撤销(Ctrl+Z)",redo:"重做(Ctrl+Y)",bold:"粗体",mark:"文本高亮",del:"删除线",italic:"斜体",quote:"引用",ucwords:"将每个单词首字母转成大写",uppercase:"将所选转换成大写",lowercase:"将所选转换成小写",h1:"标题1",h2:"标题2",h3:"标题3",h4:"标题4",h5:"标题5",h6:"标题6","list-ul":"无序列表","list-ol":"有序列表",hr:"横线",link:"链接","reference-link":"引用链接",image:"添加图片",code:"行内代码","preformatted-text":"预格式文本 / 代码块(缩进风格)","code-block":"代码块(多语言风格)",table:"添加表格",datetime:"日期时间",emoji:"Emoji表情","html-entities":"HTML实体字符",pagebreak:"插入分页符","goto-line":"跳转到行",watch:"关闭实时预览",unwatch:"开启实时预览",preview:"全窗口预览HTML(按 Shift + ESC还原)",fullscreen:"全屏(按ESC还原)",clear:"清空",search:"搜索",help:"使用帮助",info:"关于"+editormd.title},buttons:{enter:"确定",cancel:"取消",close:"关闭"},dialog:{link:{title:"添加链接",url:"链接地址",urlTitle:"链接标题",urlEmpty:"错误:请填写链接地址。"},referenceLink:{title:"添加引用链接",name:"引用名称",url:"链接地址",urlId:"链接ID",urlTitle:"链接标题",nameEmpty:"错误:引用链接的名称不能为空。",idEmpty:"错误:请填写引用链接的ID。",urlEmpty:"错误:请填写引用链接的URL地址。"},image:{title:"添加图片",url:"图片地址",link:"图片链接",alt:"图片描述",uploadButton:"本地上传",imageURLEmpty:"错误:图片地址不能为空。",uploadFileEmpty:"错误:上传的图片不能为空。",formatNotAllowed:"错误:只允许上传图片文件,允许上传的图片文件格式有:"},preformattedText:{title:"添加预格式文本或代码块",emptyAlert:"错误:请填写预格式文本或代码的内容。"},codeBlock:{title:"添加代码块",selectLabel:"代码语言:",selectDefaultText:"请选择代码语言",otherLanguage:"其他语言",unselectedLanguageAlert:"错误:请选择代码所属的语言类型。",codeEmptyAlert:"错误:请填写代码内容。"},htmlEntities:{title:"HTML 实体字符"},help:{title:"使用帮助"}}}};editormd.classNames={tex:editormd.classPrefix+"tex"};editormd.dialogZindex=99999;editormd.$katex=null;editormd.$marked=null;editormd.$CodeMirror=null;editormd.$prettyPrint=null;var timer,flowchartTimer;editormd.prototype=editormd.fn={state:{watching:false,loaded:false,preview:false,fullscreen:false},init:function(e,t){t=t||{};if(typeof e==="object"){t=e}var i=this;var r=this.classPrefix=editormd.classPrefix;var a=this.settings=$.extend(true,editormd.defaults,t);e=typeof e==="object"?a.id:e;var o=this.editor=$("#"+e);this.id=e;this.lang=a.lang;var n=this.classNames={textarea:{html:r+"html-textarea",markdown:r+"markdown-textarea"}};a.pluginPath=a.pluginPath===""?a.path+"../plugins/":a.pluginPath;this.state.watching=a.watch?true:false;if(!o.hasClass("editormd")){o.addClass("editormd")}o.css({width:typeof a.width==="number"?a.width+"px":a.width,height:typeof a.height==="number"?a.height+"px":a.height});if(a.autoHeight){o.css("height","auto")}var s=this.markdownTextarea=o.children("textarea");s.addClass(n.textarea.markdown).attr("placeholder",a.placeholder);if(typeof s.attr("name")==="undefined"||s.attr("name")===""){s.attr("name",a.name!==""?a.name:e+"-markdown-doc")}var l=[!a.readOnly?'':"",a.saveHTMLToTextarea?'':"",'
','
','
'].join("\n");o.append(l).addClass(r+"vertical");if(a.theme!==""){o.addClass(r+"theme-"+a.theme)}this.mask=o.children("."+r+"mask");this.containerMask=o.children("."+r+"container-mask");if(a.markdown!==""){s.val(a.markdown)}if(a.appendMarkdown!==""){s.val(s.val()+a.appendMarkdown)}this.htmlTextarea=o.children("."+n.textarea.html);this.preview=o.children("."+r+"preview");this.previewContainer=this.preview.children("."+r+"preview-container");if(a.previewTheme!==""){this.preview.addClass(r+"preview-theme-"+a.previewTheme)}if(typeof define==="function"&&define.amd){if(typeof katex!=="undefined"){editormd.$katex=katex}if(a.searchReplace&&!a.readOnly){editormd.loadCSS(a.path+"codemirror/addon/dialog/dialog");editormd.loadCSS(a.path+"codemirror/addon/search/matchesonscrollbar")}}if(typeof define==="function"&&define.amd||!a.autoLoadModules){if(typeof CodeMirror!=="undefined"){editormd.$CodeMirror=CodeMirror}if(typeof marked!=="undefined"){editormd.$marked=marked}this.setCodeMirror().setToolbar().loadedDisplay()}else{this.loadQueues()}return this},loadQueues:function(){var e=this;var t=this.settings;var i=t.path;var r=function(){if(editormd.isIE8){e.loadedDisplay();return}if(t.flowChart||t.sequenceDiagram){editormd.loadScript(i+"raphael.min",function(){editormd.loadScript(i+"underscore.min",function(){if(!t.flowChart&&t.sequenceDiagram){editormd.loadScript(i+"sequence-diagram.min",function(){e.loadedDisplay()})}else if(t.flowChart&&!t.sequenceDiagram){editormd.loadScript(i+"flowchart.min",function(){editormd.loadScript(i+"jquery.flowchart.min",function(){e.loadedDisplay()})})}else if(t.flowChart&&t.sequenceDiagram){editormd.loadScript(i+"flowchart.min",function(){editormd.loadScript(i+"jquery.flowchart.min",function(){editormd.loadScript(i+"sequence-diagram.min",function(){e.loadedDisplay()})})})}})})}else{e.loadedDisplay()}};editormd.loadScript(i+"echarts.min",function(){});editormd.loadScript(i+"mindmap/d3@5",function(){editormd.loadScript(i+"mindmap/transform.min",function(){editormd.loadScript(i+"mindmap/view.min",function(){})})});editormd.loadCSS(i+"codemirror/lib/codemirror");if(t.searchReplace&&!t.readOnly){editormd.loadCSS(i+"codemirror/addon/dialog/dialog");editormd.loadCSS(i+"codemirror/addon/search/matchesonscrollbar");editormd.loadCSS(i+"codemirror/addon/hint/show-hint")}if(t.codeFold){editormd.loadCSS(i+"codemirror/addon/fold/foldgutter")}editormd.loadScript(i+"codemirror/lib/codemirror",function(){editormd.$CodeMirror=CodeMirror;editormd.loadScript(i+"codemirror/modes",function(){editormd.loadScript(i+"codemirror/addons",function(){e.setCodeMirror();if(t.mode!=="gfm"&&t.mode!=="markdown"){e.loadedDisplay();return false}e.setToolbar();editormd.loadScript(i+"marked.min",function(){editormd.$marked=marked;if(t.previewCodeHighlight){editormd.loadScript(i+"prettify.min",function(){r()})}else{r()}})})})});return this},setTheme:function(e){var t=this.editor;var i=this.settings.theme;var r=this.classPrefix+"theme-";t.removeClass(r+i).addClass(r+e);this.settings.theme=e;return this},setEditorTheme:function(e){var t=this.settings;t.editorTheme=e;if(e!=="default"){editormd.loadCSS(t.path+"codemirror/theme/"+t.editorTheme)}this.cm.setOption("theme",e);return this},setCodeMirrorTheme:function(e){this.setEditorTheme(e);return this},setPreviewTheme:function(e){var t=this.preview;var i=this.settings.previewTheme;var r=this.classPrefix+"preview-theme-";t.removeClass(r+i).addClass(r+e);this.settings.previewTheme=e;return this},setCodeMirror:function(){var e=this.settings;var t=this.editor;if(e.editorTheme!=="default"){editormd.loadCSS(e.path+"codemirror/theme/"+e.editorTheme)}var l=[["#","##","###","####","#####","######","#######"],["`","``","```","```\n\n```","```echart\n\n```","```mindmap\n\n```"],["*","**"],["[","[]()"],["!","![]()"],["-","- [] ","- [x] "]];function i(s,e){return new Promise(function(n){setTimeout(function(){var e=s.getCursor(),t=s.getLine(e.line);console.log(e);var i=e.ch,r=e.ch;while(i&&/\W/.test(t.charAt(i-1)))--i;while(ra){alert("Error: The line number range 1-"+a);return this}i.setCursor({line:e,ch:0});var n=i.getScrollInfo();var s=n.clientHeight;var l=i.charCoords({line:e,ch:0},"local");i.scrollTo(null,(l.top+l.bottom-s)/2);if(t.watch){var d=this.codeMirror.find(".CodeMirror-scroll")[0];var c=$(d).height();var h=d.scrollTop;var f=h/d.scrollHeight;if(h===0){o.scrollTop(0)}else if(h+c>=d.scrollHeight-16){o.scrollTop(o[0].scrollHeight)}else{o.scrollTop(o[0].scrollHeight*f)}}i.focus();return this},extend:function(){if(typeof arguments[1]!=="undefined"){if(typeof arguments[1]==="function"){arguments[1]=$.proxy(arguments[1],this)}this[arguments[0]]=arguments[1]}if(typeof arguments[0]==="object"&&typeof arguments[0].length==="undefined"){$.extend(true,this,arguments[0])}return this},set:function(e,t){if(typeof t!=="undefined"&&typeof t==="function"){t=$.proxy(t,this)}this[e]=t;return this},config:function(e,t){var i=this.settings;if(typeof e==="object"){i=$.extend(true,i,e)}if(typeof e==="string"){i[e]=t}this.settings=i;this.recreate();return this},on:function(e,t){var i=this.settings;if(typeof i["on"+e]!=="undefined"){i["on"+e]=$.proxy(t,this)}return this},off:function(e){var t=this.settings;if(typeof t["on"+e]!=="undefined"){t["on"+e]=function(){}}return this},showToolbar:function(e){var t=this.settings;if(t.readOnly){return this}if(t.toolbar&&(this.toolbar.length<1||this.toolbar.find("."+this.classPrefix+"menu").html()==="")){this.setToolbar()}t.toolbar=true;this.toolbar.show();this.resize();$.proxy(e||function(){},this)();return this},hideToolbar:function(e){var t=this.settings;t.toolbar=false;this.toolbar.hide();this.resize();$.proxy(e||function(){},this)();return this},setToolbarAutoFixed:function(e){var t=this.state;var i=this.editor;var r=this.toolbar;var a=this.settings;if(typeof e!=="undefined"){a.toolbarAutoFixed=e}var o=function(){var e=$(window);var t=e.scrollTop();if(!a.toolbarAutoFixed){return false}if(t-i.offset().top>10&&t-i.offset().top
    ';t.append(o);a=this.toolbar=t.children("."+r+"toolbar")}if(!e.toolbar){a.hide();return this}a.show();var n=typeof e.toolbarIcons==="function"?e.toolbarIcons():typeof e.toolbarIcons==="string"?editormd.toolbarModes[e.toolbarIcons]:e.toolbarIcons;var s=a.find("."+this.classPrefix+"menu"),l="";var d=false;for(var c=0,h=n.length;c|'}else{var u=/h(\d)/.test(f);var m=f;if(f==="watch"&&!e.watch){m="unwatch"}var p=e.lang.toolbar[m];var g=e.toolbarIconTexts[m];var v=e.toolbarIconSvgs[m];var w=e.toolbarIconsClass[m];p=typeof p==="undefined"?"":p;g=typeof g==="undefined"?"":g;v=typeof v==="undefined"?"":v;w=typeof w==="undefined"?"":w;var k=d?'
  • ':"
  • ";if(typeof e.toolbarCustomIcons[f]!=="undefined"&&typeof e.toolbarCustomIcons[f]!=="function"){k+=e.toolbarCustomIcons[f]}else{k+='';k+=''+(u?f.toUpperCase():w===""?g:"")+"";k+=""}k+="
  • ";l=d?k+l:l+k}}s.html(l);s.find('[title="Lowercase"]').attr("title",e.lang.toolbar.lowercase);s.find('[title="ucwords"]').attr("title",e.lang.toolbar.ucwords);this.setToolbarHandler();this.setToolbarAutoFixed();return this},dialogLockScreen:function(){$.proxy(editormd.dialogLockScreen,this)();return this},dialogShowMask:function(e){$.proxy(editormd.dialogShowMask,this)(e);return this},getToolbarHandles:function(e){var t=this.toolbarHandlers=editormd.toolbarHandlers;return e&&typeof toolbarIconHandlers[e]!=="undefined"?t[e]:t},setToolbarHandler:function(){var o=this;var n=this.settings;if(!n.toolbar||n.readOnly){return this}var e=this.toolbar;var s=this.cm;var t=this.classPrefix;var i=this.toolbarIcons=e.find("."+t+"menu > li > a");var l=this.getToolbarHandles();i.bind(editormd.mouseOrTouch("click","touchend"),function(e){var t=$(this).children(".fa");var i=t.attr("name");var r=s.getCursor();var a=s.getSelection();if(i===""){return}o.activeIcon=t;if(typeof l[i]!=="undefined"){$.proxy(l[i],o)(s)}else{if(typeof n.toolbarHandlers[i]!=="undefined"){$.proxy(n.toolbarHandlers[i],o)(s,t,r,a)}}if(i!=="link"&&i!=="reference-link"&&i!=="image"&&i!=="code-block"&&i!=="preformatted-text"&&i!=="watch"&&i!=="preview"&&i!=="search"&&i!=="fullscreen"&&i!=="info"){s.focus()}return false});return this},createDialog:function(e){return $.proxy(editormd.createDialog,this)(e)},createInfoDialog:function(){var e=this;var t=this.editor;var i=this.classPrefix;var r=['
    ','
    ','

    '+editormd.title+"v"+editormd.version+"

    ","

    "+this.lang.description+"

    ",'

    '+editormd.homePage+'

    ','

    Copyright © 2015 Pandao, The MIT License.

    ',"
    ",'',"
    "].join("\n");t.append(r);var a=this.infoDialog=t.children("."+i+"dialog-info");a.find("."+i+"dialog-close").bind(editormd.mouseOrTouch("click","touchend"),function(){e.hideInfoDialog()});a.css("border",editormd.isIE8?"1px solid #ddd":"").css("z-index",editormd.dialogZindex).show();this.infoDialogPosition();return this},infoDialogPosition:function(){var e=this.infoDialog;var t=function(){e.css({top:($(window).height()-e.height())/2+"px",left:($(window).width()-e.width())/2+"px"})};t();$(window).resize(t);return this},showInfoDialog:function(){$("html,body").css("overflow-x","hidden");var e=this;var t=this.editor;var i=this.settings;var r=this.infoDialog=t.children("."+this.classPrefix+"dialog-info");if(r.length<1){this.createInfoDialog()}this.lockScreen(true);this.mask.css({opacity:i.dialogMaskOpacity,backgroundColor:i.dialogMaskBgColor}).show();r.css("z-index",editormd.dialogZindex).show();this.infoDialogPosition();return this},hideInfoDialog:function(){$("html,body").css("overflow-x","");this.infoDialog.hide();this.mask.hide();this.lockScreen(false);return this},lockScreen:function(e){editormd.lockScreen(e);this.resize();return this},recreate:function(){var e=this;var t=this.editor;var i=this.settings;this.codeMirror.remove();this.setCodeMirror();if(!i.readOnly){if(t.find(".editormd-dialog").length>0){t.find(".editormd-dialog").remove()}if(i.toolbar){this.getToolbarHandles();this.setToolbar()}}this.loadedDisplay(true);return this},previewCodeHighlight:function(){var e=this.settings;var t=this.previewContainer;if(e.previewCodeHighlight){t.find("pre").addClass("prettyprint linenums");if(typeof prettyPrint!=="undefined"){prettyPrint()}}return this},katexRender:function(){if(timer===null){return this}this.previewContainer.find("."+editormd.classNames.tex).each(function(){var e=$(this);editormd.$katex.render(e.text(),e[0]);e.find(".katex").css("font-size","1.6em")});return this},mindmapRender:function(){this.previewContainer.find(".mindmap").each(function(){var e=$(this);var t=window.markmap.transform(e.text().trim());window.markmap.markmap("svg#"+this.id,t)});return this},echartRender:function(){this.previewContainer.find(".echart").each(function(){var echart=$(this);if(echart.text()!=""){var echart_data=eval("("+echart.text()+")");echart.empty();var myChart=echarts.init(document.getElementById(this.id),null,{renderer:"svg"});myChart.setOption(echart_data)}});return this},flowChartAndSequenceDiagramRender:function(){var e=this;var t=this.settings;var i=this.previewContainer;if(editormd.isIE8){return this}if(t.flowChart){if(flowchartTimer===null){return this}i.find(".flowchart").flowChart()}if(t.sequenceDiagram){i.find(".sequence-diagram").sequenceDiagram({theme:"simple"})}var r=e.preview;var a=e.codeMirror;var o=a.find(".CodeMirror-scroll");var n=o.height();var s=o.scrollTop();var l=s/o[0].scrollHeight;var d=0;r.find(".markdown-toc-list").each(function(){d+=$(this).height()});var c=r.find(".editormd-toc-menu").height();c=!c?0:c;if(s===0){r.scrollTop(0)}else if(s+n>=o[0].scrollHeight-16){r.scrollTop(r[0].scrollHeight)}else{r.scrollTop((r[0].scrollHeight+d+c)*l)}return this},registerKeyMaps:function(e){var i=this;var t=this.cm;var r=this.settings;var a=editormd.toolbarHandlers;var o=r.disabledKeyMaps;e=e||null;if(e){for(var n in e){if($.inArray(n,o)<0){var s={};s[n]=e[n];t.addKeyMap(e)}}}else{for(var l in editormd.keyMaps){var d=editormd.keyMaps[l];var c=typeof d==="string"?$.proxy(a[d],i):$.proxy(d,i);if($.inArray(l,["F9","F10","F11"])<0&&$.inArray(l,o)<0){var h={};h[l]=c;t.addKeyMap(h)}}$(window).keydown(function(e){var t={120:"F9",121:"F10",122:"F11"};if($.inArray(t[e.keyCode],o)<0){switch(e.keyCode){case 120:$.proxy(a["watch"],i)();return false;break;case 121:$.proxy(a["preview"],i)();return false;break;case 122:$.proxy(a["fullscreen"],i)();return false;break;default:break}}})}return this},bindScrollEvent:function(){var n=this;var s=this.preview;var l=this.settings;var o=this.codeMirror;var e=editormd.mouseOrTouch;if(!l.syncScrolling){return this}var t=function(){o.find(".CodeMirror-scroll").bind(e("scroll","touchmove"),function(e){var t=$(this).height();var i=$(this).scrollTop();var r=i/$(this)[0].scrollHeight;var a=0;s.find(".markdown-toc-list").each(function(){a+=$(this).height()});var o=s.find(".editormd-toc-menu").height();o=!o?0:o;if(i===0){s.scrollTop(0)}else if(i+t>=$(this)[0].scrollHeight-16){s.scrollTop(s[0].scrollHeight)}else{s.scrollTop((s[0].scrollHeight+a+o)*r)}$.proxy(l.onscroll,n)(e)})};var i=function(){o.find(".CodeMirror-scroll").unbind(e("scroll","touchmove"))};var r=function(){s.bind(e("scroll","touchmove"),function(e){var t=$(this).height();var i=$(this).scrollTop();var r=i/$(this)[0].scrollHeight;var a=o.find(".CodeMirror-scroll");if(i===0){a.scrollTop(0)}else if(i+t>=$(this)[0].scrollHeight){a.scrollTop(a[0].scrollHeight)}else{a.scrollTop(a[0].scrollHeight*r)}$.proxy(l.onpreviewscroll,n)(e)})};var a=function(){s.unbind(e("scroll","touchmove"))};o.bind({mouseover:t,mouseout:i,touchstart:t,touchend:i});if(l.syncScrolling==="single"){return this}s.bind({mouseover:r,mouseout:a,touchstart:r,touchend:a});return this},bindChangeEvent:function(){var i=this;var e=this.cm;var r=this.settings;if(!r.syncScrolling){return this}e.on("change",function(e,t){if(r.watch){i.previewContainer.css("padding",r.autoHeight?"20px 20px 50px 40px":"20px")}timer=setTimeout(function(){clearTimeout(timer);i.save();timer=null},r.delay)});return this},loadedDisplay:function(e){e=e||false;var t=this;var i=this.editor;var r=this.preview;var a=this.settings;this.containerMask.hide();this.save();if(a.watch){r.show()}i.data("oldWidth",i.width()).data("oldHeight",i.height());this.resize();this.registerKeyMaps();$(window).resize(function(){t.resize()});this.bindScrollEvent().bindChangeEvent();if(!e){$.proxy(a.onload,this)()}this.state.loaded=true;return this},width:function(e){this.editor.css("width",typeof e==="number"?e+"px":e);this.resize();return this},height:function(e){this.editor.css("height",typeof e==="number"?e+"px":e);this.resize();return this},resize:function(e,t){e=e||null;t=t||null;var i=this.state;var r=this.editor;var a=this.preview;var o=this.toolbar;var n=this.settings;var s=this.codeMirror;if(e){r.css("width",typeof e==="number"?e+"px":e)}if(n.autoHeight&&!i.fullscreen&&!i.preview){r.css("height","auto");s.css("height","auto")}else{if(t){r.css("height",typeof t==="number"?t+"px":t)}if(i.fullscreen){r.height($(window).height())}if(n.toolbar&&!n.readOnly){s.css("margin-top",o.height()+1).height(r.height()-o.height())}else{s.css("margin-top",0).height(r.height())}}if(n.watch){s.width(r.width()/2);a.width(!i.preview?r.width()/2:r.width());this.previewContainer.css("padding",n.autoHeight?"20px 20px 50px 40px":"20px");if(n.toolbar&&!n.readOnly){a.css("top",o.height()+1)}else{a.css("top",0)}if(n.autoHeight&&!i.fullscreen&&!i.preview){a.height("")}else{var l=n.toolbar&&!n.readOnly?r.height()-o.height():r.height();a.height(l)}}else{s.width(r.width());a.hide()}if(i.loaded){$.proxy(n.onresize,this)()}return this},save:function(){var e=this;var t=this.state;var i=this.settings;if(timer===null&&!(!i.watch&&t.preview)){return this}var r=this.cm;var a=r.getValue();var o=this.previewContainer;if(i.mode!=="gfm"&&i.mode!=="markdown"){this.markdownTextarea.val(a);return this}var n=editormd.$marked;var s=this.markdownToC=[];var l=this.markedRendererOptions={toc:i.toc,tocm:i.tocm,tocStartLevel:i.tocStartLevel,pageBreak:i.pageBreak,taskList:i.taskList,emoji:i.emoji,tex:i.tex,atLink:i.atLink,emailLink:i.emailLink,flowChart:i.flowChart,sequenceDiagram:i.sequenceDiagram,mindMap:i.mindMap,echart:i.echart,previewCodeHighlight:i.previewCodeHighlight};var d=this.markedOptions={renderer:editormd.markedRenderer(s,l),gfm:true,tables:true,breaks:true,pedantic:false,sanitize:i.htmlDecode?false:true,smartLists:true,smartypants:true};n.setOptions(d);var c=editormd.$marked(a,d);c=editormd.filterHTMLTags(c,i.htmlDecode);this.markdownTextarea.text(a);r.save();if(i.saveHTMLToTextarea){this.htmlTextarea.text(c)}if(i.watch||!i.watch&&t.preview){o.html(c);this.previewCodeHighlight();if(i.toc){var h=i.tocContainer===""?o:$(i.tocContainer);var f=h.find("."+this.classPrefix+"toc-menu");h.attr("previewContainer",i.tocContainer===""?"true":"false");if(i.tocContainer!==""&&f.length>0){f.remove()}editormd.markdownToCRenderer(s,h,i.tocDropdown,i.tocStartLevel);if(i.tocDropdown||h.find("."+this.classPrefix+"toc-menu").length>0){editormd.tocDropdownMenu(h,i.tocTitle!==""?i.tocTitle:this.lang.tocTitle)}if(i.tocContainer!==""){o.find(".markdown-toc").css("border","none")}}if(i.tex){if(!editormd.kaTeXLoaded&&i.autoLoadModules){editormd.loadKaTeX(function(){editormd.$katex=katex;editormd.kaTeXLoaded=true;e.katexRender()})}else{editormd.$katex=katex;this.katexRender()}}if(i.mindMap){setTimeout(function(){e.mindmapRender()},10)}if(i.echart){setTimeout(function(){e.echartRender()},10)}if(i.flowChart||i.sequenceDiagram){flowchartTimer=setTimeout(function(){clearTimeout(flowchartTimer);e.flowChartAndSequenceDiagramRender();flowchartTimer=null},10)}if(t.loaded){$.proxy(i.onchange,this)()}}return this},focus:function(){this.cm.focus();return this},setCursor:function(e){this.cm.setCursor(e);return this},getCursor:function(){return this.cm.getCursor()},setSelection:function(e,t){this.cm.setSelection(e,t);return this},getSelection:function(){return this.cm.getSelection()},setSelections:function(e){this.cm.setSelections(e);return this},getSelections:function(){return this.cm.getSelections()},replaceSelection:function(e){this.cm.replaceSelection(e);return this},insertValue:function(e){this.replaceSelection(e);return this},appendMarkdown:function(e){var t=this.settings;var i=this.cm;i.setValue(i.getValue()+e);return this},setMarkdown:function(e){this.cm.setValue(e||this.settings.markdown);return this},getMarkdown:function(){return this.cm.getValue()},getValue:function(){return this.cm.getValue()},setValue:function(e){this.cm.setValue(e);return this},clear:function(){this.cm.setValue("");return this},getHTML:function(){if(!this.settings.saveHTMLToTextarea){alert("Error: settings.saveHTMLToTextarea == false");return false}return this.htmlTextarea.val()},getTextareaSavedHTML:function(){return this.getHTML()},getPreviewedHTML:function(){if(!this.settings.watch){alert("Error: settings.watch == false");return false}return this.previewContainer.html()},watch:function(e){var t=this.settings;if($.inArray(t.mode,["gfm","markdown"])<0){return this}this.state.watching=t.watch=true;this.preview.show();if(this.toolbar){var i=t.toolbarIconsClass.watch;var r=t.toolbarIconsClass.unwatch;var a=this.toolbar.find(".fa[name=watch]");a.parent().attr("title",t.lang.toolbar.watch);a.removeClass(r).addClass(i)}this.codeMirror.css("border-right","1px solid #ddd").width(this.editor.width()/2);timer=0;this.save().resize();if(!t.onwatch){t.onwatch=e||function(){}}$.proxy(t.onwatch,this)();return this},unwatch:function(e){var t=this.settings;this.state.watching=t.watch=false;this.preview.hide();if(this.toolbar){var i=t.toolbarIconsClass.watch;var r=t.toolbarIconsClass.unwatch;var a=this.toolbar.find(".fa[name=watch]");a.parent().attr("title",t.lang.toolbar.unwatch);a.removeClass(i).addClass(r)}this.codeMirror.css("border-right","none").width(this.editor.width());this.resize();if(!t.onunwatch){t.onunwatch=e||function(){}}$.proxy(t.onunwatch,this)();return this},show:function(e){e=e||function(){};var t=this;this.editor.show(0,function(){$.proxy(e,t)()});return this},hide:function(e){e=e||function(){};var t=this;this.editor.hide(0,function(){$.proxy(e,t)()});return this},previewing:function(){var t=this;var e=this.editor;var i=this.preview;var r=this.toolbar;var a=this.settings;var o=this.codeMirror;var n=this.previewContainer;if($.inArray(a.mode,["gfm","markdown"])<0){return this}if(a.toolbar&&r){r.toggle();r.find(".fa[name=preview]").toggleClass("active")}o.toggle();var s=function(e){if(e.shiftKey&&e.keyCode===27){t.previewed()}};if(o.css("display")==="none"){this.state.preview=true;if(this.state.fullscreen){i.css("background","#fff")}e.find("."+this.classPrefix+"preview-close-btn").show().bind(editormd.mouseOrTouch("click","touchend"),function(){t.previewed()});if(!a.watch){this.save()}else{n.css("padding","")}n.addClass(this.classPrefix+"preview-active");i.show().css({position:"",top:0,width:e.width(),height:a.autoHeight&&!this.state.fullscreen?"auto":e.height()});if(this.state.loaded){$.proxy(a.onpreviewing,this)()}$(window).bind("keyup",s)}else{$(window).unbind("keyup",s);this.previewed()}},previewed:function(){var e=this.editor;var t=this.preview;var i=this.toolbar;var r=this.settings;var a=this.previewContainer;var o=e.find("."+this.classPrefix+"preview-close-btn");this.state.preview=false;this.codeMirror.show();if(r.toolbar){i.show()}t[r.watch?"show":"hide"]();o.hide().unbind(editormd.mouseOrTouch("click","touchend"));a.removeClass(this.classPrefix+"preview-active");if(r.watch){a.css("padding","20px")}t.css({background:null,position:"absolute",width:e.width()/2,height:r.autoHeight&&!this.state.fullscreen?"auto":e.height()-i.height(),top:r.toolbar?i.height():0});if(this.state.loaded){$.proxy(r.onpreviewed,this)()}return this},fullscreen:function(){var t=this;var i=this.state;var e=this.editor;var r=this.preview;var a=this.toolbar;var o=this.settings;var n=this.classPrefix+"fullscreen";if(a){a.find(".fa[name=fullscreen]").parent().toggleClass("active")}var s=function(e){if(!e.shiftKey&&e.keyCode===27){if(i.fullscreen){t.fullscreenExit()}}};if(!e.hasClass(n)){i.fullscreen=true;$("html,body").css("overflow","hidden");e.css({width:$(window).width(),height:$(window).height()}).addClass(n);this.resize();$.proxy(o.onfullscreen,this)();$(window).bind("keyup",s)}else{$(window).unbind("keyup",s);this.fullscreenExit()}return this},fullscreenExit:function(){var e=this.editor;var t=this.settings;var i=this.toolbar;var r=this.classPrefix+"fullscreen";this.state.fullscreen=false;if(i){i.find(".fa[name=fullscreen]").parent().removeClass("active")}$("html,body").css("overflow","");e.css({width:e.data("oldWidth"),height:e.data("oldHeight")}).removeClass(r);this.resize();$.proxy(t.onfullscreenExit,this)();return this},executePlugin:function(e,t){var i=this;var r=this.cm;var a=this.settings;t=a.pluginPath+t;if(typeof define==="function"){if(typeof this[e]==="undefined"){alert("Error: "+e+" plugin is not found, you are not load this plugin.");return this}this[e](r);return this}if($.inArray(t,editormd.loadFiles.plugin)<0){editormd.loadPlugin(t,function(){editormd.loadPlugins[e]=i[e];i[e](r)})}else{$.proxy(editormd.loadPlugins[e],this)(r)}return this},search:function(e){var t=this.settings;if(!t.searchReplace){alert("Error: settings.searchReplace == false");return this}if(!t.readOnly){this.cm.execCommand(e||"find")}return this},searchReplace:function(){this.search("replace");return this},searchReplaceAll:function(){this.search("replaceAll");return this}};editormd.fn.init.prototype=editormd.fn;editormd.dialogLockScreen=function(){var e=this.settings||{dialogLockScreen:true};if(e.dialogLockScreen){$("html,body").css("overflow","hidden");this.resize()}};editormd.dialogShowMask=function(e){var t=this.editor;var i=this.settings||{dialogShowMask:true};e.css({top:($(window).height()-e.height())/2+"px",left:($(window).width()-e.width())/2+"px"});if(i.dialogShowMask){t.children("."+this.classPrefix+"mask").css("z-index",parseInt(e.css("z-index"))-1).show()}};editormd.toolbarHandlers={undo:function(){this.cm.undo()},redo:function(){this.cm.redo()},bold:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();e.replaceSelection("**"+i+"**");if(i===""){e.setCursor(t.line,t.ch+2)}},mark:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();e.replaceSelection("=="+i+"==");if(i===""){e.setCursor(t.line,t.ch+2)}},del:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();e.replaceSelection("~~"+i+"~~");if(i===""){e.setCursor(t.line,t.ch+2)}},italic:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();e.replaceSelection("*"+i+"*");if(i===""){e.setCursor(t.line,t.ch+1)}},quote:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();if(t.ch!==0){e.setCursor(t.line,0);e.replaceSelection("> "+i);e.setCursor(t.line,t.ch+2)}else{e.replaceSelection("> "+i)}},ucfirst:function(){var e=this.cm;var t=e.getSelection();var i=e.listSelections();e.replaceSelection(editormd.firstUpperCase(t));e.setSelections(i)},ucwords:function(){var e=this.cm;var t=e.getSelection();var i=e.listSelections();e.replaceSelection(editormd.wordsFirstUpperCase(t));e.setSelections(i)},uppercase:function(){var e=this.cm;var t=e.getSelection();var i=e.listSelections();e.replaceSelection(t.toUpperCase());e.setSelections(i)},lowercase:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();var r=e.listSelections();e.replaceSelection(i.toLowerCase());e.setSelections(r)},h1:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();if(t.ch!==0){e.setCursor(t.line,0);e.replaceSelection("# "+i);e.setCursor(t.line,t.ch+2)}else{e.replaceSelection("# "+i)}},h2:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();if(t.ch!==0){e.setCursor(t.line,0);e.replaceSelection("## "+i);e.setCursor(t.line,t.ch+3)}else{e.replaceSelection("## "+i)}},h3:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();if(t.ch!==0){e.setCursor(t.line,0);e.replaceSelection("### "+i);e.setCursor(t.line,t.ch+4)}else{e.replaceSelection("### "+i)}},h4:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();if(t.ch!==0){e.setCursor(t.line,0);e.replaceSelection("#### "+i);e.setCursor(t.line,t.ch+5)}else{e.replaceSelection("#### "+i)}},h5:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();if(t.ch!==0){e.setCursor(t.line,0);e.replaceSelection("##### "+i);e.setCursor(t.line,t.ch+6)}else{e.replaceSelection("##### "+i)}},h6:function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();if(t.ch!==0){e.setCursor(t.line,0);e.replaceSelection("###### "+i);e.setCursor(t.line,t.ch+7)}else{e.replaceSelection("###### "+i)}},"list-ul":function(){var e=this.cm;var t=e.getCursor();var i=e.getSelection();if(i===""){e.replaceSelection("- "+i)}else{var r=i.split("\n");for(var a=0,o=r.length;a].+?)\1/g,emoji:/:([A-Za-z\+-]+):/g,emojiDatetime:/(\d{2}:\d{2}:\d{2})/g,twemoji:/:(tw-([\w]+)-?(\w+)?):/g,fontAwesome:/:(fa-([\w]+)(-(\w+)){0,}):/g,editormdLogo:/:(editormd-logo-?(\w+)?):/g,pageBreak:/^\[[=]{8,}\]$/};editormd.emoji={path:"/static/editor.md/plugins/emoji-dialog/emoji/",ext:".png"};editormd.twemoji={path:"http://twemoji.maxcdn.com/36x36/",ext:".png"};editormd.markedRenderer=function(m,e){var t={toc:true,tocm:false,tocStartLevel:1,pageBreak:true,atLink:true,emailLink:true,taskList:false,emoji:false,tex:false,flowChart:false,sequenceDiagram:false};var s=$.extend(t,e||{});var x=editormd.$marked;var i=new x.Renderer;m=m||[];var r=editormd.regexs;var o=r.atLink;var a=r.mark;var n=r.emoji;var l=r.email;var d=r.emailLink;var g=r.twemoji;var v=r.fontAwesome;var w=r.editormdLogo;var c=r.pageBreak;i.blockquote=function(e){var t="";var i=e.match(//i);if(i!==null){t=i[0];e=e.substr(3)}var r="default";if(e.indexOf("i")===0){r="info";e=e.substr(1)}else if(e.indexOf("w")===0){r="warning";e=e.substr(1)}else if(e.indexOf("s")===0){r="success";e=e.substr(1)}else if(e.indexOf("d")===0){r="danger";e=e.substr(1)}return'
    \n'+t+e+"
    \n"};i.image=function(e,t,i){var r="";var a="";var o="";if(/^=(.*?)/.test(i)){switch(i){case"=video":if(e.match(/^.+.(mp4|m4v|ogg|ogv|webm)$/)){return""}else{for(var n=0;n"}}}break;case"=audio":if(e.match(/^.+.(mp3|wav|flac|m4a)$/)){return""}else{for(var n=0;n"}}}break;case"=video_iframe":const c=e.match(/\/\/(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))([\w|-]{11})(?:(?:[\?&]t=)(\S+))?/);const h=e.match(/\/\/v\.youku\.com\/v_show\/id_(\w+)=*\.html/);const f=e.match(/\/\/v\.qq\.com\/x\/cover\/.*\/([^\/]+)\.html\??.*/);const u=e.match(/(?:www\.|\/\/)coub\.com\/view\/(\w+)/);const m=e.match(/(?:www\.|\/\/)facebook\.com\/([^\/]+)\/videos\/([0-9]+)/);const p=e.match(/.+dailymotion.com\/(video|hub)\/(\w+)\?/);const g=e.match(/(?:www\.|\/\/)bilibili\.com\/video\/(\w+)/);const v=e.match(/(?:www\.|\/\/)ted\.com\/talks\/(\w+)/);if(c&&c[1].length===11){return`