Built files from Bizgaze WebServer
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

12345678910
  1. /*!
  2. * filename: ej2-richtexteditor.min.js
  3. * version : 19.1.66
  4. * Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
  5. * Use of this code is subject to the terms of our license.
  6. * A copy of the current license can be obtained at any time by e-mailing
  7. * licensing@syncfusion.com. Any infringement will be prosecuted under
  8. * applicable laws.
  9. */
  10. this.ej=this.ej||{},this.ej.richtexteditor=function(e,t,n,i,o,r,s,a){"use strict";function l(e,t,n){for(var i=0;t.length>i;i++)if(t[i].value===n.subCommand)return e.localeObj.getConstant(t[i].locale);return n.text}function d(e){he.forEach(function(t,n){he[n].text=l(e,pe,he[n])}),ge.forEach(function(t,n){ge[n].text=l(e,me,ge[n])}),ve.forEach(function(t,n){ve[n].text=l(e,be,ve[n])}),Ce.forEach(function(t,n){Ce[n].text=l(e,ye,Ce[n])}),Te.forEach(function(t,n){Te[n].text=l(e,Se,Te[n])}),Ne.forEach(function(t,n){Ne[n].text=l(e,Ee,Ne[n])})}function c(e,t){var n=-1;return t.some(function(t,i){return"string"==typeof t&&e===t.toLocaleLowerCase()&&(n=i,!0)}),n}function p(e,t){var n=!1;return e.classList.contains(t)&&(n=!0),n}function h(e,n,i,o){for(var r,s,a=0;a<e.length;a++){if("value"===i&&e[a].value.toLocaleLowerCase()===n.toLocaleLowerCase()){r=e[a];break}if("text"===i&&e[a].text.toLocaleLowerCase()===n.toLocaleLowerCase()){r=e[a];break}if("subCommand"===i&&e[a].subCommand.toLocaleLowerCase()===n.toLocaleLowerCase()){r=e[a];break}}if(!t.isNullOrUndefined(r))switch(o){case"text":s=r.text;break;case"value":s=r.value;break;case"iconCss":s=r.iconCss}return s}function u(){var e=!1;return t.Browser.isDevice&&t.Browser.isIos&&(e=!0),e}function m(e){return t.isNullOrUndefined(e)?"":e}function g(e,t,n){return n?window.pageYOffset+t.getBoundingClientRect().top+e.clientY:e.pageY}function f(e,t){var n=t.getService("rteLocale"),i=Re[e];return n.getConstant(i)}function b(e,n,i){R(i);for(var o=e.dropDownModule,r=e.args,s=0,a=Object.keys(e.args);s<a.length;s++)for(var l=a[s],d=0;d<e.tbItems.length;d++){var p=e.tbItems[d].subCommand,u=p&&p.toLocaleLowerCase();if(p&&u===l||"UL"===p&&"unorderedlist"===l||"OL"===p&&"orderedlist"===l||"pre"===u&&"insertcode"===l)if("boolean"==typeof r[l])!0===r[l]?t.addClass([e.tbElements[d]],[re]):t.removeClass([e.tbElements[d]],[re]);else if(("string"==typeof r[l]||null===r[l])&&c(l,e.parent.toolbarSettings.items)>-1){var g=r[l]?r[l]:"",f="";switch(l){case"formats":if(t.isNullOrUndefined(o.formatDropDown)||n||!t.isNullOrUndefined(o.formatDropDown)&&o.formatDropDown.isDestroyed)break;var b=e.parent.format.types,v=t.isNullOrUndefined(e.parent.format.default)?b[0].text:e.parent.format.default;f=h(b,g,"subCommand","text"),o.formatDropDown.content='<span style="display: inline-flex;width:'+e.parent.format.width+'" ><span class="e-rte-dropdown-btn-text">'+(t.isNullOrUndefined(f)?v:f)+"</span></span>",o.formatDropDown.dataBind();break;case"alignments":if(t.isNullOrUndefined(o.alignDropDown)||!t.isNullOrUndefined(o.alignDropDown)&&o.alignDropDown.isDestroyed)break;f=h(he,g,"subCommand","iconCss"),o.alignDropDown.iconCss=t.isNullOrUndefined(f)?"e-icons e-justify-left":f,o.alignDropDown.dataBind();break;case"fontname":if(t.isNullOrUndefined(o.fontNameDropDown)||n||!t.isNullOrUndefined(o.fontNameDropDown)&&o.fontNameDropDown.isDestroyed)break;var y=e.parent.fontFamily.items;f=h(y,g,"value","text");var C=t.isNullOrUndefined(e.parent.fontFamily.default)?y[0].text:e.parent.fontFamily.default,S=t.isNullOrUndefined(f)?C:f;e.tbElements[d].title=S,o.fontNameDropDown.content='<span style="display: inline-flex;width:'+e.parent.fontFamily.width+'" ><span class="e-rte-dropdown-btn-text">'+S+"</span></span>",o.fontNameDropDown.dataBind();break;case"fontsize":if(t.isNullOrUndefined(o.fontSizeDropDown)||!t.isNullOrUndefined(o.fontSizeDropDown)&&o.fontSizeDropDown.isDestroyed)break;var T=e.parent.fontSize.items,E=t.isNullOrUndefined(e.parent.fontSize.default)?T[1].text:e.parent.fontSize.default;f=h(T,""===g?E.replace(/\s/g,""):g,"value","text"),o.fontSizeDropDown.content='<span style="display: inline-flex;width:'+e.parent.fontSize.width+'" ><span class="e-rte-dropdown-btn-text">'+m(f)+"</span></span>",o.fontSizeDropDown.dataBind()}}}}function v(e){return"object"==typeof e?e:[e]}function y(e,t){for(var n=[],i=0;i<e.length;i++)for(var o=0;o<t.length;o++)if("Separator"!==t[o].type){if("OrderedList"===e[i]&&"OL"===t[o].subCommand){n.push(o);break}if("UnorderedList"===e[i]&&"UL"===t[o].subCommand){n.push(o);break}if("InsertCode"===e[i]&&"Pre"===t[o].subCommand){n.push(o);break}if("FileManager"===e[i]&&"File"===t[o].subCommand){n.push(o);break}if(e[i]===t[o].subCommand||"object"==typeof e[i]&&"Custom"===t[o].command){n.push(o);break}}return n}function C(e,n){for(var i=0,o=y(v(Pe),e.toolbarObj.items),r=t.selectAll("."+te,e.toolbarObj.element),s=0,a=Object.keys(n);s<a.length;s++){var l=a[s],d=r[o[i]];d&&e.toolbarObj.enableItems(d,n[l]),i++}}function S(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!1,!0),e.dispatchEvent(n)}function T(e){var n=t.createElement("template");return n.innerHTML=e,n.content instanceof DocumentFragment?n.content:document.createRange().createContextualFragment(e)}function E(e,t){var n=[];for(t=t.firstChild;t;t=t.nextSibling)3===t.nodeType?n.push(t):n=n.concat(E(e,t));return n}function N(e){for(var t={},n=Object.keys(e),i=0;i<Object.keys(e).length;i++)t[n[i].toLocaleLowerCase()]=e[n[i]];return t}function w(e,t){var n;return null!==e&&""!==e?(n=k(t.enableHtmlEncode?x(e):e),t.setProperties({value:n},!0)):n=t.enableHtmlEncode?"&lt;p&gt;&lt;br/&gt;&lt;/p&gt;":"<p><br/></p>",n}function k(e){var n=document.createElement("div"),i=document.createElement("div"),o=n.childNodes;if(n.innerHTML=e,n.setAttribute("class","tempDiv"),o.length>0){for(var r=void 0,s=void 0,a=void 0;n.firstChild;)"#text"===n.firstChild.nodeName&&(n.firstChild.textContent.indexOf("\n")<0||""!==n.firstChild.textContent.trim())||Ae.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(r?s.appendChild(n.firstChild):(a=t.createElement("p"),i.appendChild(a),a.appendChild(n.firstChild)),s=a,r=!0):"#text"===n.firstChild.nodeName&&("\n"===n.firstChild.textContent||n.firstChild.textContent.indexOf("\n")>=0&&""===n.firstChild.textContent.trim())?t.detach(n.firstChild):(i.appendChild(n.firstChild),r=!1);for(var l=i.querySelectorAll("img"),d=0;d<l.length;d++)l[d].classList.contains(ae)||l[d].classList.add(ae),l[d].classList.contains(ie)||l[d].classList.contains(ne)||l[d].classList.add(ie)}return i.innerHTML}function L(e){return"<p><br></p>"===e||"&lt;p&gt;&lt;br&gt;&lt;/p&gt;"===e||""===e}function x(e){return e.replace(/&amp;/g,"&").replace(/&amp;lt;/g,"<").replace(/&lt;/g,"<").replace(/&amp;gt;/g,">").replace(/&gt;/g,">").replace(/&nbsp;/g," ").replace(/&amp;nbsp;/g," ").replace(/&quot;/g,"")}function O(e,n){if(n.enableHtmlSanitizer){var i=t.SanitizeHtmlHelper.beforeSanitize(),o={cancel:!1,helper:null};t.extend(i,i,o),n.trigger("beforeSanitizeHtml",i),i.cancel&&!t.isNullOrUndefined(i.helper)?e=i.helper(e):i.cancel||(e=t.SanitizeHtmlHelper.serializeValue(i,e))}return e}function D(e){for(var t=e.split(","),n=t[0].match(/:(.*?);/)[1],i=atob(t[1]),o=i.length,r=new Uint8Array(o);o--;)r[o]=i.charCodeAt(o);return new Blob([r],{type:n})}function M(e,t,n){for(var i=0;t.length>i;i++)if(t[i].value===n.value||t[i].value===n.subCommand)return e.localeObj.getConstant(t[i].locale);return n.text}function R(e){ke.forEach(function(t,n){ke[n].text=M(e,Ie,ke[n])}),xe.forEach(function(t,n){xe[n].text=M(e,Be,xe[n])})}function I(){var e=!1;return t.Browser.isDevice&&t.Browser.isIos&&(e=!0),e}function B(e,n){if("BODY"===e.nodeName&&!t.isNullOrUndefined(n)){var i=top.window.document.querySelector(n);t.isNullOrUndefined(i)||i.contentWindow.focus()}}function P(e){var n=document.createElement("div");n.innerHTML=e,n.setAttribute("class","tempDiv");var i=document.createElement("div");if(n.childNodes.length>0){for(var o=void 0,r=void 0,s=void 0;n.firstChild;)"#text"===n.firstChild.nodeName&&(n.firstChild.textContent.indexOf("\n")<0||""!==n.firstChild.textContent.trim())||et.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(o?r.appendChild(n.firstChild):(s=t.createElement("p"),i.appendChild(s),s.appendChild(n.firstChild)),r=s,o=!0):"#text"===n.firstChild.nodeName&&("\n"===n.firstChild.textContent||n.firstChild.textContent.indexOf("\n")>=0&&""===n.firstChild.textContent.trim())?t.detach(n.firstChild):(i.appendChild(n.firstChild),o=!1);for(var a=i.querySelectorAll("table"),l=0;l<a.length;l++){"0"===a[l].getAttribute("border")&&a[l].removeAttribute("border");for(var d=a[l].querySelectorAll("td"),c=0;c<d.length;c++)"none"===d[c].style.borderLeft&&d[c].style.removeProperty("border-left"),"none"===d[c].style.borderRight&&d[c].style.removeProperty("border-right"),"none"===d[c].style.borderBottom&&d[c].style.removeProperty("border-bottom"),"none"===d[c].style.borderTop&&d[c].style.removeProperty("border-top"),"none"===d[c].style.border&&d[c].style.removeProperty("border");a[l].classList.contains(le)||a[l].classList.add(le)}for(var p=i.querySelectorAll("img"),l=0;l<p.length;l++)p[l].classList.contains(ae)||p[l].classList.add(ae),p[l].classList.contains(ie)||p[l].classList.contains(ne)||p[l].classList.add(ie)}return i.innerHTML}function A(e){var t=e;do{t.childNodes.length>0&&(t=t.childNodes[0])}while(t.childNodes.length>0);return t}function H(){return{bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,unorderedlist:!1,underline:!1,alignments:null,backgroundcolor:null,fontcolor:null,fontname:null,fontsize:null,formats:null,createlink:!1,insertcode:!1}}function U(){return{bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,uppercase:!1,lowercase:!1,inlinecode:!1,unorderedlist:!1,formats:null}}function j(e,t,n,i){var o;if(o=n?t.contentModule.getDocument().querySelector("body"):t.element,Object.keys(e).length)for(var r=0,s=Object.keys(e);r<s.length;r++){var a=s[r];"class"===a?o.classList.add(e[a]):"disabled"===a&&"disabled"===e[a]?(t.enabled=!1,t.setEnable()):"readonly"===a&&"readonly"===e[a]?(t.readonly=!0,t.setReadOnly(i)):"style"===a?o.setAttribute("style",e[a]):"tabindex"===a?t.inputElement.setAttribute("tabindex",e[a]):"placeholder"===a?(t.placeholder=e[a],t.setPlaceHolder()):["name","required"].indexOf(a)>-1?t.valueContainer.setAttribute(a,e[a]):o.setAttribute(a,e[a])}}var z="initial-end",F="destroy",_="model-changed",q="keyUp",Q="keyDown",V="selection-save",W="mouseDown",G="paste-content",K="rtl-mode",X="checkUndoStack",Y="e-richtexteditor",J="e-rte-quick-toolbar",$="e-rte-dropdown-popup",Z="e-rte-dropdown-items",ee="e-rte-dropdown-btn",te="e-toolbar-item",ne="e-imgbreak",ie="e-imginline",oe="e-rte-character-count",re="e-active",se="e-alternate-border",ae="e-rte-image",le="e-rte-table";!function(e){e[e.Toolbar=0]="Toolbar",e[e.Content=1]="Content",e[e.Popup=2]="Popup",e[e.LinkToolbar=3]="LinkToolbar",e[e.TextToolbar=4]="TextToolbar",e[e.ImageToolbar=5]="ImageToolbar",e[e.InlineToolbar=6]="InlineToolbar",e[e.TableToolbar=7]="TableToolbar"}(e.RenderType||(e.RenderType={})),function(e){e.Expand="Expand",e.MultiRow="MultiRow",e.Scrollable="Scrollable"}(e.ToolbarType||(e.ToolbarType={}));var de=["alignments","formats","fontname","fontsize","fontcolor","backgroundcolor","align","display","tablerows","tablecolumns","tablecell","tablecellhorizontalalign","tablecellverticalalign","styles"],ce={alignments:{id:"Alignments",icon:"e-alignments",tooltip:"Alignments",command:"Alignments",subCommand:"Alignments"},justifyleft:{id:"JustifyLeft",icon:"e-justify-left",tooltip:"JustifyLeft",command:"Alignments",subCommand:"JustifyLeft"},justifycenter:{id:"JustifyCenter",icon:"e-justify-center",tooltip:"JustifyCenter",command:"Alignments",subCommand:"JustifyCenter"},justifyright:{id:"JustifyRight",icon:"e-justify-right",tooltip:"JustifyRight",command:"Alignments",subCommand:"JustifyRight"},justifyfull:{id:"JustifyFull",icon:"e-justify-full",tooltip:"JustifyFull",command:"Alignments",subCommand:"JustifyFull"},fontname:{id:"FontName",icon:"e-font-name",tooltip:"Font Name",command:"Font",subCommand:"FontName"},fontsize:{id:"FontSize",icon:"e-font-size",tooltip:"Font Size",command:"Font",subCommand:"FontSize"},fontcolor:{id:"FontColor",icon:"e-font-color",tooltip:"Font Color",command:"Font",subCommand:"FontColor",value:"#ff0000ff"},backgroundcolor:{id:"BackgroundColor",icon:"e-background-color",tooltip:"Background Color",command:"Font",subCommand:"BackgroundColor",value:"#ffff00ff"},bold:{id:"Bold",icon:"e-bold",tooltip:"Bold",command:"Style",subCommand:"Bold"},italic:{id:"Italic",icon:"e-italic",tooltip:"Italic",command:"Style",subCommand:"Italic"},underline:{id:"Underline",icon:"e-underline",tooltip:"Underline",command:"Style",subCommand:"Underline"},strikethrough:{id:"StrikeThrough",icon:"e-strike-through",tooltip:"StrikeThrough",command:"Style",subCommand:"StrikeThrough"},clearformat:{id:"ClearFormat",icon:"e-clear-format",tooltip:"Clear Format",command:"Clear",subCommand:"ClearFormat"},clearall:{id:"ClearAll",icon:"e-clear-all",tooltip:"Clear All",command:"Clear",subCommand:"ClearAll"},cut:{id:"Cut",icon:"e-cut",tooltip:"Cut",command:"ClipBoard",subCommand:"Cut"},copy:{id:"Copy",icon:"e-copy",tooltip:"Copy",command:"ClipBoard",subCommand:"Copy"},paste:{id:"Paste",icon:"e-paste",tooltip:"Paste",command:"ClipBoard",subCommand:"Paste"},unorderedlist:{id:"UnorderedList",icon:"e-unorder-list",tooltip:"Bulleted List",command:"Lists",subCommand:"UL"},orderedlist:{id:"OrderedList",icon:"e-order-list",tooltip:"Numbered List",command:"Lists",subCommand:"OL"},indent:{id:"Indent",icon:"e-indent",tooltip:"Increase Indent",command:"Indents",subCommand:"Indent"},outdent:{id:"Outdent",icon:"e-outdent",tooltip:"Decrease Indent",command:"Indents",subCommand:"Outdent"},undo:{id:"Undo",icon:"e-undo",tooltip:"Undo",command:"Actions",subCommand:"Undo"},redo:{id:"Redo",icon:"e-redo",tooltip:"Redo",command:"Actions",subCommand:"Redo"},superscript:{id:"SuperScript",icon:"e-super-script",tooltip:"Superscript",command:"Effects",subCommand:"SuperScript"},subscript:{id:"SubScript",icon:"e-sub-script",tooltip:"Subscript",command:"Effects",subCommand:"SubScript"},createlink:{id:"CreateLink",icon:"e-create-link",tooltip:"Insert Hyperlink",command:"Links",subCommand:"CreateLink"},openlink:{id:"OpenLink",icon:"e-open-link",tooltip:"Open Link",command:"Links",subCommand:"OpenLink"},editlink:{id:"EditLink",icon:"e-edit-link",tooltip:"Edit Link",command:"Links",subCommand:"EditLink"},removelink:{id:"RemoveLink",icon:"e-remove-link",tooltip:"Remove Link",command:"Links",subCommand:"RemoveLink"},image:{id:"Image",icon:"e-image",tooltip:"Insert Image",command:"Images",subCommand:"Image"},filemanager:{id:"FileManager",icon:"e-rte-file-manager",tooltip:"File Manager",command:"Files",subCommand:"File"},createtable:{id:"CreateTable",icon:"e-create-table",tooltip:"Create Table",command:"Table",subCommand:"CreateTable"},removetable:{id:"removeTable",icon:"e-remove-table",tooltip:"Remove Table",command:"removeTable",subCommand:"removeTable"},replace:{id:"Replace",icon:"e-replace",tooltip:"Replace",command:"Images",subCommand:"Replace"},align:{id:"Align",icon:"e-align",tooltip:"Align",command:"Images",subCommand:"Align"},caption:{id:"Caption",icon:"e-caption",tooltip:"Image Caption",command:"Images",subCommand:"Caption"},remove:{id:"Remove",icon:"e-remove",tooltip:"Remove",command:"Images",subCommand:"Remove"},openimagelink:{id:"OpenImageLink",icon:"e-open-link",tooltip:"Open Link",command:"Images",subCommand:"OpenImageLink"},editimagelink:{id:"EditImageLink",icon:"e-edit-link",tooltip:"Edit Link",command:"Images",subCommand:"EditImageLink"},removeimagelink:{id:"RemoveImageLink",icon:"e-remove-link",tooltip:"Remove Link",command:"Images",subCommand:"RemoveImageLink"},insertlink:{id:"InsertLink",icon:"e-insert-link",tooltip:"Insert Link",command:"Images",subCommand:"InsertLink"},display:{id:"Display",icon:"e-display",tooltip:"Display",command:"Images",subCommand:"Display"},alttext:{id:"AltText",icon:"e-alt-text",tooltip:"Alternative Text",command:"Images",subCommand:"AltText"},dimension:{id:"Dimension",icon:"e-dimension",tooltip:"Change Size",command:"Images",subCommand:"Dimension"},fullscreen:{id:"Maximize",icon:"e-maximize",tooltip:"Maximize",command:"View",subCommand:"Maximize"},maximize:{id:"Maximize",icon:"e-maximize",tooltip:"Maximize",command:"FullScreen",subCommand:"Maximize"},minimize:{id:"Minimize",icon:"e-minimize",tooltip:"Minimize",command:"FullScreen",subCommand:"Minimize"},lowercase:{id:"LowerCase",icon:"e-lower-case",tooltip:"Lower Case",command:"Casing",subCommand:"LowerCase"},uppercase:{id:"UpperCase",icon:"e-upper-case",tooltip:"Upper Case",command:"Casing",subCommand:"UpperCase"},print:{id:"Print",icon:"e-print",tooltip:"Print",command:"Print",subCommand:"Print"},formats:{id:"Formats",icon:"e-formats",tooltip:"Formats",command:"Formats",subCommand:"Formats"},sourcecode:{id:"SourceCode",icon:"e-source-code",tooltip:"Source Code",command:"SourceCode",subCommand:"SourceCode"},preview:{id:"Preview",icon:"e-preview",tooltip:"Preview",command:"Preview",subCommand:"Preview"},viewside:{id:"ViewSide",icon:"e-view-side",tooltip:"ViewSide",command:"ViewSide",subCommand:"ViewSide"},insertcode:{id:"InsertCode",icon:"e-insert-code",tooltip:"Insert Code",command:"Formats",subCommand:"Pre"},tableheader:{id:"TableHeader",icon:"e-table-header",tooltip:"Table Header",command:"Table",subCommand:"TableHeader"},tableremove:{id:"TableRemove",icon:"e-table-remove",tooltip:"Table Remove",command:"Table",subCommand:"TableRemove"},tablerows:{id:"TableRows",icon:"e-table-rows",tooltip:"Table Rows",command:"Table",subCommand:"TableRows"},tablecolumns:{id:"TableColumns",icon:"e-table-columns",tooltip:"Table Columns",command:"Table",subCommand:"TableColumns"},tablecell:{id:"TableCell",icon:"e-table-cell",tooltip:"Table Cell",command:"Table",subCommand:"TableCell"},tablecellbackground:{id:"TableCellBackground",icon:"e-table-cell-background",tooltip:"Table Cell Background",command:"Table",subCommand:"TableCellBackground"},tablecellhorizontalalign:{id:"TableCellHorizontalAlign",icon:"e-table-cell-horizontalAlign",tooltip:"Table Cell HorizontalAlign",command:"Table",subCommand:"TableCellHorizontalAlign"},tablecellverticalalign:{id:"TableCellVerticalAlign",icon:"e-table-cell-verticalAlign",tooltip:"Table Cell VerticalAlign",command:"Table",subCommand:"TableCellVerticalAlign"},tableeditproperties:{id:"TableEditProperties",icon:"e-table-edit-properties",tooltip:"Table Edit Properties",command:"Table",subCommand:"TableEditProperties"},styles:{id:"Styles",icon:"e-table-styles",tooltip:"Styles",command:"Table",subCommand:"Styles"}},pe=[{locale:"alignmentsDropDownLeft",value:"JustifyLeft"},{locale:"alignmentsDropDownCenter",value:"JustifyCenter"},{locale:"alignmentsDropDownRight",value:"JustifyRight"},{locale:"alignmentsDropDownJustify",value:"JustifyFull"}],he=[{iconCss:"e-icons e-justify-left",text:"Align Left",command:"Alignments",subCommand:"JustifyLeft"},{iconCss:"e-icons e-justify-center",text:"Align Center",command:"Alignments",subCommand:"JustifyCenter"},{iconCss:"e-icons e-justify-right",text:"Align Right",command:"Alignments",subCommand:"JustifyRight"},{iconCss:"e-icons e-justify-full",text:"Align Justify",command:"Alignments",subCommand:"JustifyFull"}],ue=[{iconCss:"e-icons e-justify-left",command:"Images",subCommand:"JustifyLeft"},{iconCss:"e-icons e-justify-center",command:"Images",subCommand:"JustifyCenter"},{iconCss:"e-icons e-justify-right",command:"Images",subCommand:"JustifyRight"}],me=[{locale:"imageDisplayDropDownInline",value:"Inline"},{locale:"imageDisplayDropDownBreak",value:"Break"}],ge=[{text:"Inline",cssClass:"e-inline",command:"Images",subCommand:"Inline"},{text:"Break",cssClass:"e-break",command:"Images",subCommand:"Break"}],fe=[{iconCss:"e-icons e-cell-merge",text:"Merge cells",command:"Table",subCommand:"Merge"},{iconCss:"e-icons e-cell-horizontal-split",text:"Horizontal split",command:"Table",subCommand:"HorizontalSplit"},{iconCss:"e-icons e-cell-vertical-split",text:"Vertical split",command:"Table",subCommand:"VerticalSplit"}],be=[{locale:"tableInsertRowDropDownBefore",value:"InsertRowBefore"},{locale:"tableInsertRowDropDownAfter",value:"InsertRowAfter"},{locale:"tableInsertRowDropDownDelete",value:"DeleteRow"}],ve=[{iconCss:"e-icons e-insert-row-before",text:"Insert row before",command:"Table",subCommand:"InsertRowBefore"},{iconCss:"e-icons e-insert-row-after",text:"Insert row after",command:"Table",subCommand:"InsertRowAfter"},{iconCss:"e-icons e-delete-row",text:"Delete row",command:"Table",subCommand:"DeleteRow"}],ye=[{locale:"tableInsertColumnDropDownLeft",value:"InsertColumnLeft"},{locale:"tableInsertColumnDropDownRight",value:"InsertColumnRight"},{locale:"tableInsertColumnDropDownDelete",value:"DeleteColumn"}],Ce=[{iconCss:"e-icons e-insert-column-left",text:"Insert column left",command:"Table",subCommand:"InsertColumnLeft"},{iconCss:"e-icons e-insert-column-right",text:"Insert column right",command:"Table",subCommand:"InsertColumnRight"},{iconCss:"e-icons e-delete-column",text:"Delete column",command:"Table",subCommand:"DeleteColumn"}],Se=[{locale:"tableVerticalAlignDropDownTop",value:"AlignTop"},{locale:"tableVerticalAlignDropDownMiddle",value:"AlignMiddle"},{locale:"tableVerticalAlignDropDownBottom",value:"AlignBottom"}],Te=[{iconCss:"e-icons e-align-top",text:"Align Top",command:"Table",subCommand:"AlignTop"},{iconCss:"e-icons e-align-middle",text:"Align Middle",command:"Table",subCommand:"AlignMiddle"},{iconCss:"e-icons e-align-bottom",text:"Align Bottom",command:"Table",subCommand:"AlignBottom"}],Ee=[{locale:"tableStylesDropDownDashedBorder",value:"Dashed"},{locale:"tableStylesDropDownAlternateRows",value:"Alternate"}],Ne=[{text:"Dashed Borders",cssClass:"e-dashed-borders",command:"Table",subCommand:"Dashed"},{text:"Alternate Rows",cssClass:"e-alternate-rows",command:"Table",subCommand:"Alternate"}],we=["Bold","Italic","Underline","|","Formats","Alignments","OrderedList","UnorderedList","|","CreateLink","Image","|","SourceCode","Undo","Redo"],ke=[{cssClass:"e-segoe-ui",text:"Segoe UI",command:"Font",subCommand:"FontName",value:"Segoe UI"},{cssClass:"e-arial",text:"Arial",command:"Font",subCommand:"FontName",value:"Arial,Helvetica,sans-serif"},{cssClass:"e-georgia",text:"Georgia",command:"Font",subCommand:"FontName",value:"Georgia,serif"},{cssClass:"e-impact",text:"Impact",command:"Font",subCommand:"FontName",value:"Impact,Charcoal,sans-serif"},{cssClass:"e-tahoma",text:"Tahoma",command:"Font",subCommand:"FontName",value:"Tahoma,Geneva,sans-serif"},{cssClass:"e-times-new-roman",text:"Times New Roman",command:"Font",subCommand:"FontName",value:"Times New Roman,Times,serif"},{cssClass:"e-verdana",text:"Verdana",command:"Font",subCommand:"FontName",value:"Verdana,Geneva,sans-serif"}],Le=[{text:"8 pt",value:"8pt"},{text:"10 pt",value:"10pt"},{text:"12 pt",value:"12pt"},{text:"14 pt",value:"14pt"},{text:"18 pt",value:"18pt"},{text:"24 pt",value:"24pt"},{text:"36 pt",value:"36pt"}],xe=[{cssClass:"e-paragraph",text:"Paragraph",command:"Formats",subCommand:"P",value:"P"},{cssClass:"e-code",text:"Code",command:"Formats",subCommand:"Pre",value:"Pre"},{cssClass:"e-quote",text:"Quotation",command:"Formats",subCommand:"BlockQuote",value:"BlockQuote"},{cssClass:"e-h1",text:"Heading 1",command:"Formats",subCommand:"H1",value:"H1"},{cssClass:"e-h2",text:"Heading 2",command:"Formats",subCommand:"H2",value:"H2"},{cssClass:"e-h3",text:"Heading 3",command:"Formats",subCommand:"H3",value:"H3"},{cssClass:"e-h4",text:"Heading 4",command:"Formats",subCommand:"H4",value:"H4"}],Oe={Custom:["","#000000","#e7e6e6","#44546a","#4472c4","#ed7d31","#a5a5a5","#ffc000","#70ad47","#ff0000","#f2f2f2","#808080","#cfcdcd","#d5dce4","#d9e2f3","#fbe4d5","#ededed","#fff2cc","#e2efd9","#ffcccc","#d9d9d9","#595959","#aeaaaa","#acb9ca","#b4c6e7","#f7caac","#dbdbdb","#ffe599","#c5e0b3","#ff8080","#bfbfbf","#404040","#747070","#8496b0","#8eaadb","#f4b083","#c9c9c9","#ffd966","#a8d08d","#ff3333","#a6a6a6","#262626","#3b3838","#323e4f","#2f5496","#c45911","#7b7b7b","#bf8f00","#538135","#b30000","#7f7f7f","#0d0d0d","#161616","#212934","#1f3763","#823b0b","#525252","#7f5f00","#375623","#660000"]},De={Custom:["","#000000","#ffff00","#00ff00","#00ffff","#0000ff","#ff0000","#000080","#800080","#996633","#f2f2f2","#808080","#ffffcc","#b3ffb3","#ccffff","#ccccff","#ffcccc","#ccccff","#ff80ff","#f2e6d9","#d9d9d9","#595959","#ffff80","#80ff80","#b3ffff","#8080ff","#ff8080","#8080ff","#ff00ff","#dfbf9f","#bfbfbf","#404040","#ffff33","#33ff33","#33ffff","#3333ff","#ff3333","#0000b3","#b300b3","#c68c53","#a6a6a6","#262626","#e6e600","#00b300","#009999","#000099","#b30000","#000066","#660066","#86592d","#7f7f7f","#0d0d0d","#999900","#006600","#006666","#000066","#660000","#00004d","#4d004d","#734d26"]},Me={alignments:"Alignments",justifyLeft:"Align Left",justifyCenter:"Align Center",justifyRight:"Align Right",justifyFull:"Align Justify",fontName:"Font Name",fontSize:"Font Size",fontColor:"Font Color",backgroundColor:"Background Color",bold:"Bold",italic:"Italic",underline:"Underline",strikethrough:"Strikethrough",clearFormat:"Clear Format",clearAll:"Clear All",cut:"Cut",copy:"Copy",paste:"Paste",unorderedList:"Bulleted List",orderedList:"Numbered List",indent:"Increase Indent",outdent:"Decrease Indent",undo:"Undo",redo:"Redo",superscript:"Superscript",subscript:"Subscript",createLink:"Insert Link",openLink:"Open Link",editLink:"Edit Link",removeLink:"Remove Link",image:"Insert Image",replace:"Replace",align:"Align",caption:"Image Caption",remove:"Remove",insertLink:"Insert Link",display:"Display",altText:"Alternative Text",dimension:"Change Size",fullscreen:"Maximize",maximize:"Maximize",minimize:"Minimize",lowerCase:"Lower Case",upperCase:"Upper Case",print:"Print",formats:"Formats",sourcecode:"Code View",preview:"Preview",viewside:"ViewSide",insertCode:"Insert Code",linkText:"Display Text",linkTooltipLabel:"Title",linkWebUrl:"Web Address",linkTitle:"Enter a title",linkurl:"http://example.com",linkOpenInNewWindow:"Open Link in New Window",linkHeader:"Insert Link",dialogInsert:"Insert",dialogCancel:"Cancel",dialogUpdate:"Update",imageHeader:"Insert Image",imageLinkHeader:"You can also provide a link from the web",mdimageLink:"Please provide a URL for your image",imageUploadMessage:"Drop image here or browse to upload",imageDeviceUploadMessage:"Click here to upload",imageAlternateText:"Alternate Text",alternateHeader:"Alternative Text",browse:"Browse",imageUrl:"http://example.com/image.png",imageCaption:"Caption",imageSizeHeader:"Image Size",imageHeight:"Height",imageWidth:"Width",textPlaceholder:"Enter Text",inserttablebtn:"Insert Table",tabledialogHeader:"Insert Table",tableWidth:"Width",cellpadding:"Cell Padding",cellspacing:"Cell Spacing",columns:"Number of columns",rows:"Number of rows",tableRows:"Table Rows",tableColumns:"Table Columns",tableCellHorizontalAlign:"Table Cell Horizontal Align",tableCellVerticalAlign:"Table Cell Vertical Align",createTable:"Create Table",removeTable:"Remove Table",tableHeader:"Table Header",tableRemove:"Table Remove",tableCellBackground:"Table Cell Background",tableEditProperties:"Table Edit Properties",styles:"Styles",insertColumnLeft:"Insert Column Left",insertColumnRight:"Insert Column Right",deleteColumn:"Delete Column",insertRowBefore:"Insert Row Before",insertRowAfter:"Insert Row After",deleteRow:"Delete Row",tableEditHeader:"Edit Table",TableHeadingText:"Heading",TableColText:"Col",imageInsertLinkHeader:"Insert Link",editImageHeader:"Edit Image",alignmentsDropDownLeft:"Align Left",alignmentsDropDownCenter:"Align Center",alignmentsDropDownRight:"Align Right",alignmentsDropDownJustify:"Align Justify",imageDisplayDropDownInline:"Inline",imageDisplayDropDownBreak:"Break",tableInsertRowDropDownBefore:"Insert row before",tableInsertRowDropDownAfter:"Insert row after",tableInsertRowDropDownDelete:"Delete row",tableInsertColumnDropDownLeft:"Insert column left",tableInsertColumnDropDownRight:"Insert column right",tableInsertColumnDropDownDelete:"Delete column",tableVerticalAlignDropDownTop:"Align Top",tableVerticalAlignDropDownMiddle:"Align Middle",tableVerticalAlignDropDownBottom:"Align Bottom",tableStylesDropDownDashedBorder:"Dashed Borders",tableStylesDropDownAlternateRows:"Alternate Rows",pasteFormat:"Paste Format",pasteFormatContent:"Choose the formatting action",plainText:"Plain Text",cleanFormat:"Clean",keepFormat:"Keep",pasteDialogOk:"OK",pasteDialogCancel:"Cancel",fileManager:"File Manager",fileDialogHeader:"File Browser",formatsDropDownParagraph:"Paragraph",formatsDropDownCode:"Code",formatsDropDownQuotation:"Quotation",formatsDropDownHeading1:"Heading 1",formatsDropDownHeading2:"Heading 2",formatsDropDownHeading3:"Heading 3",formatsDropDownHeading4:"Heading 4",fontNameSegoeUI:"Segoe UI",fontNameArial:"Arial",fontNameGeorgia:"Georgia",fontNameImpact:"Impact",fontNameTahoma:"Tahoma",fontNameTimesNewRoman:"Times New Roman",fontNameVerdana:"Verdana"},Re={alignments:"alignments",justifyleft:"justifyLeft",justifycenter:"justifyCenter",justifyright:"justifyRight",justifyfull:"justifyFull",fontname:"fontName",fontsize:"fontSize",fontcolor:"fontColor",backgroundcolor:"backgroundColor",bold:"bold",italic:"italic",underline:"underline",strikethrough:"strikethrough",clearformat:"clearFormat",clearall:"clearAll",cut:"cut",copy:"copy",paste:"paste",unorderedlist:"unorderedList",orderedlist:"orderedList",indent:"indent",outdent:"outdent",undo:"undo",redo:"redo",superscript:"superscript",subscript:"subscript",createlink:"createLink",openlink:"openLink",editlink:"editLink",removelink:"removeLink",openimagelink:"openLink",editimagelink:"editLink",removeimagelink:"removeLink",image:"image",replace:"replace",align:"align",caption:"caption",remove:"remove",insertlink:"insertLink",display:"display",alttext:"altText",dimension:"dimension",fullscreen:"fullscreen",maximize:"maximize",minimize:"minimize",lowercase:"lowerCase",uppercase:"upperCase",print:"print",formats:"formats",sourcecode:"sourcecode",preview:"preview",viewside:"viewside",insertcode:"insertCode",tablerows:"tableRows",tablecolumns:"tableColumns",tablecellhorizontalalign:"tableCellHorizontalAlign",tablecellverticalalign:"tableCellVerticalAlign",createtable:"createTable",removetable:"removeTable",tableheader:"tableHeader",tableremove:"tableRemove",tablecellbackground:"tableCellBackground",tableeditproperties:"tableEditProperties",styles:"styles",insertcolumnleft:"insertColumnLeft",insertcolumnright:"insertColumnRight",deletecolumn:"deleteColumn",aligntop:"AlignTop",alignmiddle:"AlignMiddle",alignbottom:"AlignBottom",insertrowbefore:"insertRowBefore",insertrowafter:"insertRowAfter",deleterow:"deleteRow"},Ie=[{locale:"fontNameSegoeUI",value:"Segoe UI"},{locale:"fontNameArial",value:"Arial,Helvetica,sans-serif"},{locale:"fontNameGeorgia",value:"Georgia,serif"},{locale:"fontNameImpact",value:"Impact,Charcoal,sans-serif"},{locale:"fontNameTahoma",value:"Tahoma,Geneva,sans-serif"},{locale:"fontNameTimesNewRoman",value:"Times New Roman,Times,serif"},{locale:"fontNameVerdana",value:"Verdana,Geneva,sans-serif"}],Be=[{locale:"formatsDropDownParagraph",value:"P"},{locale:"formatsDropDownCode",value:"Pre"},{locale:"formatsDropDownQuotation",value:"BlockQuote"},{locale:"formatsDropDownHeading1",value:"H1"},{locale:"formatsDropDownHeading2",value:"H2"},{locale:"formatsDropDownHeading3",value:"H3"},{locale:"formatsDropDownHeading4",value:"H4"}],Pe=["Undo","Redo"],Ae=["a","abbr","acronym","audio","b","bdi","bdo","big","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","font","i","iframe","img","input","ins","kbd","label","map","mark","meter","noscript","object","output","picture","progress","q","ruby","s","samp","script","select","slot","small","span","strong","strike","sub","sup","svg","template","textarea","time","u","tt","var","video","wbr"],He=function(){function e(e){this.parent=e,this.wireEvent()}return e.prototype.wireEvent=function(){this.parent.on(F,this.unWireEvent,this)},e.prototype.unWireEvent=function(){this.parent.off(F,this.unWireEvent),this.popupOverlay&&t.EventHandler.remove(this.popupOverlay,"click touchmove",this.onPopupOverlay),this.removePopupContainer()},e.prototype.toolbarBeforeCreate=function(e){"Extended"===this.mode&&(e.enableCollision=!1)},e.prototype.toolbarCreated=function(){this.parent.notify("toolbarCreated",this)},e.prototype.toolbarClicked=function(e){this.parent.enabled&&(this.parent.readonly||this.parent.notify("toolbarClick",e),this.parent.trigger("toolbarClick",e))},e.prototype.dropDownSelected=function(e){this.parent.notify("dropDownSelect",e),this.onPopupOverlay()},e.prototype.beforeDropDownItemRender=function(e){!this.parent.readonly&&this.parent.enabled&&this.parent.notify("beforeDropDownItemRender",e)},e.prototype.dropDownOpen=function(e){if(e.element.parentElement.getAttribute("id").indexOf("TableCell")>-1){var n=e.element.querySelectorAll("li");1===this.parent.inputElement.querySelectorAll(".e-cell-select").length?(t.addClass([n[0]],"e-disabled"),t.removeClass([n[1],n[2]],"e-disabled")):this.parent.inputElement.querySelectorAll(".e-cell-select").length>1&&(t.removeClass([n[0]],"e-disabled"),t.addClass([n[1],n[2]],"e-disabled"))}t.Browser.isDevice&&!e.element.parentElement.classList.contains("e-quick-dropdown")&&this.popupModal(e.element.parentElement),this.parent.notify(V,e)},e.prototype.dropDownClose=function(e){this.removePopupContainer(),this.parent.notify("selection-restore",e)},e.prototype.removePopupContainer=function(){if(t.Browser.isDevice&&!t.isNullOrUndefined(this.popupContainer)){var e=this.popupContainer.querySelector(".e-dropdown-popup.e-tbar-btn.e-control");e&&(this.popupContainer.parentNode.insertBefore(e,this.popupContainer.nextSibling),e.style.removeProperty("position"),t.removeClass([e],"e-popup-modal")),t.detach(this.popupContainer),this.popupContainer=void 0}},e.prototype.renderToolbar=function(e){this.setPanel(e.target),this.renderPanel(),this.mode=e.overflowMode,e.rteToolbarObj.toolbarObj=new n.Toolbar({items:e.items,width:"100%",overflowMode:e.overflowMode,beforeCreate:this.toolbarBeforeCreate.bind(this),created:this.toolbarCreated.bind(this),clicked:this.toolbarClicked.bind(this),enablePersistence:e.enablePersistence,enableRtl:e.enableRtl}),e.rteToolbarObj.toolbarObj.isStringTemplate=!0,e.rteToolbarObj.toolbarObj.createElement=this.parent.createElement,e.rteToolbarObj.toolbarObj.appendTo(e.target)},e.prototype.renderDropDownButton=function(e){var n,o=this;e.element.classList.add(ee),n=e.cssClass+" e-rte-elements e-tbar-btn",this.parent.inlineMode.enable&&t.Browser.isDevice&&(n+=" e-rte-inline-dropdown");var r=this,s=new i.DropDownButton({items:e.items,iconCss:e.iconCss,cssClass:n,content:e.content,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,select:this.dropDownSelected.bind(this),beforeOpen:function(e){if(r.parent.readonly||!r.parent.enabled)return void(e.cancel=!0);for(var n=0;n<e.element.childNodes.length;n++){var i=o.parent.createElement("div");i.innerHTML=s.content.trim(),""!==i.textContent.trim()&&e.element.childNodes[n].textContent.trim()===i.textContent.trim()?e.element.childNodes[n].classList.contains("e-active")||t.addClass([e.element.childNodes[n]],"e-active"):t.removeClass([e.element.childNodes[n]],"e-active")}r.parent.notify("beforeDropDownOpen",e)},close:this.dropDownClose.bind(this),open:this.dropDownOpen.bind(this),beforeItemRender:this.beforeDropDownItemRender.bind(this)});return s.isStringTemplate=!0,s.createElement=r.parent.createElement,s.appendTo(e.element),e.element.tabIndex=-1,document.getElementById(s.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),s},e.prototype.onPopupOverlay=function(e){t.isNullOrUndefined(this.popupOverlay)||(t.closest(this.popupOverlay,".e-popup-container").style.display="none",this.popupOverlay.style.display="none",t.removeClass([this.popupOverlay],"e-popup-overlay"))},e.prototype.setIsModel=function(e){t.closest(e,".e-popup-container")?(e.parentElement.style.display="flex",this.popupOverlay=e.nextElementSibling,this.popupOverlay.style.display="block",t.addClass([this.popupOverlay],"e-popup-overlay")):(this.popupContainer=this.parent.createElement("div",{className:"e-rte-modal-popup e-popup-container e-center"}),e.parentNode.insertBefore(this.popupContainer,e),this.popupContainer.appendChild(e),this.popupContainer.style.zIndex=e.style.zIndex,this.popupContainer.style.display="flex",e.style.position="relative",t.addClass([e],"e-popup-modal"),this.popupOverlay=this.parent.createElement("div",{className:"e-popup-overlay"}),this.popupOverlay.style.zIndex=(parseInt(e.style.zIndex,null)-1).toString(),this.popupOverlay.style.display="block",this.popupContainer.appendChild(this.popupOverlay),t.EventHandler.add(this.popupOverlay,"click touchmove",this.onPopupOverlay,this))},e.prototype.paletteSelection=function(e,n){var i=e.element.querySelector(".e-control.e-colorpicker"),o=[].slice.call(t.selectAll(".e-tile",i.parentElement));t.removeClass(o,"e-selected");var r=n.querySelector(".e-rte-elements").style.borderBottomColor;o.filter(function(e){e.style.backgroundColor===r&&t.addClass([e],"e-selected")})},e.prototype.renderColorPickerDropDown=function(e,n,o){var s=this,a=this,l="e-rte-elements e-tbar-btn"+(this.parent.inlineMode?" e-rte-inline-dropdown":"");l+=" "+("backgroundcolor"===n?"e-rte-backgroundcolor-dropdown":"e-rte-fontcolor-dropdown");var d,c=a.parent.createElement("span",{className:"e-rte-color-content"}),h=a.parent.createElement("span",{className:e.cssClass});h.style.borderBottomColor="backgroundcolor"===n?a.parent.backgroundColor.default:a.parent.fontColor.default,c.appendChild(h);var u=new i.DropDownButton({target:o.element.parentElement,cssClass:l,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,beforeOpen:function(n){if(a.parent.readonly||!a.parent.enabled)return void(n.cancel=!0);var i=n.event?n.event.target:null;if(a.currentElement=u.element,a.currentDropdown=u,a.paletteSelection(n,a.currentElement),n.event&&"click"===n.event.type&&(i.classList.contains("e-rte-color-content")||i.parentElement.classList.contains("e-rte-color-content"))){n.cancel=!0;var o=i.classList.contains("e-rte-elements")?i.style.borderBottomColor:i.querySelector(".e-rte-elements").style.borderBottomColor;a.parent.notify("selection-restore",{});var s=(d=a.parent.formatter.editorManager.nodeSelection.getRange(a.parent.contentModule.getDocument())).startContainer.parentNode;return void(("TD"===d.startContainer.nodeName||"TH"===d.startContainer.nodeName||t.closest(d.startContainer.parentNode,"td,th")||a.parent.iframeSettings.enable&&!p(s.ownerDocument.querySelector("body"),"e-lib"))&&d.collapsed&&"BackgroundColor"===e.subCommand?a.parent.notify("tableColorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:o}}):a.parent.notify("colorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:o}}))}var l=n.element.querySelector(".e-control.e-colorpicker"),c=t.getInstance(l,r.ColorPicker);c.showButtons=!n.element.querySelector(".e-color-palette"),c.dataBind(),n.element.onclick=function(e){e.target.classList.contains("e-cancel")&&u.toggle()}},open:function(e){s.setColorPickerContentWidth(o);var n,i=e.element.querySelector(".e-control.e-colorpicker");(n=e.element.querySelector(".e-color-palette")?i.parentElement.querySelector(".e-palette"):i.parentElement.querySelector("e-handler"))&&n.focus(),t.Browser.isDevice&&s.popupModal(e.element.parentElement),s.pickerRefresh(e)},beforeClose:function(n){var i=n.event?n.event.target:null;if(n.event&&"click"===n.event.type&&(i.classList.contains("e-rte-color-content")||i.parentElement.classList.contains("e-rte-color-content"))){var o=i.classList.contains("e-rte-elements")?i.style.borderBottomColor:i.querySelector(".e-rte-elements").style.borderBottomColor;return d=a.parent.formatter.editorManager.nodeSelection.getRange(a.parent.contentModule.getDocument()),void(("TD"===d.startContainer.nodeName||"TH"===d.startContainer.nodeName||t.closest(d.startContainer.parentNode,"td,th"))&&d.collapsed?a.parent.notify("tableColorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:o}}):a.parent.notify("colorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:o}}))}},close:function(e){a.parent.notify("selection-restore",{});var n=t.closest(e.element.parentElement,".e-popup-container");if(n&&(n.style.display="none",n.lastElementChild.style.display="none",t.removeClass([n.lastElementChild],"e-popup-overlay")),t.Browser.isDevice&&!t.isNullOrUndefined(n)){var i=n.querySelector(".e-dropdown-popup.e-tbar-btn.e-control");i&&(n.parentNode.insertBefore(i,n.nextSibling),i.style.removeProperty("position"),t.removeClass([i],"e-popup-modal")),t.detach(n),a.popupContainer=void 0}}});return u.isStringTemplate=!0,u.createElement=a.parent.createElement,u.appendTo(e.element),document.getElementById(u.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),u.element.insertBefore(c,u.element.querySelector(".e-caret")),e.element.tabIndex=-1,u.element.removeAttribute("type"),u.element.onmousedown=function(){a.parent.notify(V,{})},u.element.onkeydown=function(){a.parent.notify(V,{})},u},e.prototype.pickerRefresh=function(e){if("Picker"===this.parent.backgroundColor.mode){var n=e.element.parentElement;n.style.width=(n.offsetWidth+5).toString()+"px",t.getInstance(n,o.Popup).refreshPosition(n),n.style.width=(n.offsetWidth-5).toString()+"px"}},e.prototype.popupModal=function(e){var n=t.getInstance(e,o.Popup);n.relateTo=document.body,n.position={X:0,Y:0},n.targetType="container",n.collision={X:"fit",Y:"fit"},n.offsetY=4,n.dataBind(),this.setIsModel(e)},e.prototype.setColorPickerContentWidth=function(e){var n=e.element.nextSibling;if("0px"===n.style.width){n.style.width="";var i=parseInt(getComputedStyle(n).borderBottomWidth,10);n.style.width=t.formatUnit(n.children[0].offsetWidth+i+i)}},e.prototype.renderColorPicker=function(e,n){var i,o=this,s=new r.ColorPicker({enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,inline:!0,created:function(){var e="backgroundcolor"===n?o.parent.backgroundColor.default:o.parent.fontColor.default;s.setProperties({value:e})},mode:"backgroundcolor"===n?o.parent.backgroundColor.mode:o.parent.fontColor.mode,modeSwitcher:"backgroundcolor"===n?o.parent.backgroundColor.modeSwitcher:o.parent.fontColor.modeSwitcher,beforeTileRender:function(e){e.element.classList.add("e-rte-square-palette"),e.element.classList.add("e-custom-tile"),""===e.value&&e.element.classList.add("e-nocolor-item")},change:function(n){var i=n.currentValue.rgba;n.item={command:e.command,subCommand:e.subCommand,value:i},o.parent.notify("selection-restore",{}),o.currentElement.querySelector(".e-rte-elements").style.borderBottomColor=i;var r=o.parent.formatter.editorManager.nodeSelection.getRange(o.parent.contentModule.getDocument());("TD"===r.startContainer.nodeName||"TH"===r.startContainer.nodeName||"BODY"===r.startContainer.nodeName||t.closest(r.startContainer.parentNode,"td,th"))&&r.collapsed&&"BackgroundColor"===e.subCommand?o.parent.notify("tableColorPickerChanged",n):o.parent.notify("colorPickerChanged",n),o.currentDropdown.toggle()},beforeModeSwitch:function(e){""===(i=s.value)&&s.setProperties({value:"Picker"===e.mode?"#008000ff":""},!0),s.showButtons="Palette"!==e.mode}});return s.isStringTemplate=!0,s.columns="backgroundcolor"===n?this.parent.backgroundColor.columns:this.parent.fontColor.columns,s.presetColors="backgroundcolor"===n?this.parent.backgroundColor.colorCode:this.parent.fontColor.colorCode,s.cssClass="backgroundcolor"===n?"e-rte-backgroundcolor-colorpicker":"e-rte-fontcolor-colorpicker",s.createElement=this.parent.createElement,s.appendTo(document.getElementById(e.target)),s},e.prototype.renderPanel=function(){this.getPanel().classList.add("e-rte-toolbar")},e.prototype.getPanel=function(){return this.toolbarPanel},e.prototype.setPanel=function(e){this.toolbarPanel=e},e}(),Ue=function(){function n(e,n){this.tools={},this.parent=e,this.locator=n,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener(),this.parent.toolbarSettings&&Object.keys(this.parent.toolbarSettings.itemConfigs).length>0?t.extend(this.tools,ce,N(this.parent.toolbarSettings.itemConfigs),!0):this.tools=ce}return n.prototype.addEventListener=function(){this.parent.on(K,this.setRtl,this),this.parent.on(F,this.removeEventListener,this)},n.prototype.removeEventListener=function(){this.parent.off(K,this.setRtl),this.parent.off(F,this.removeEventListener)},n.prototype.setRtl=function(e){t.isNullOrUndefined(this.toolbarObj)||this.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.getTemplateObject=function(e,t){var n;switch(e){case"fontcolor":case"backgroundcolor":n="span";break;default:n="button"}return{command:this.tools[e.toLocaleLowerCase()].command,subCommand:this.tools[e.toLocaleLowerCase()].subCommand,template:this.parent.createElement(n,{id:this.parent.getID()+"_"+t+"_"+this.tools[e.toLocaleLowerCase()].id}).outerHTML,tooltipText:f(e,this.locator)}},n.prototype.getObject=function(e,t){var n=e.toLowerCase();if(-1!==de.indexOf(n))return this.getTemplateObject(n,t);switch(n){case"|":return{type:"Separator"};case"-":return{type:"Separator",cssClass:"e-rte-horizontal-separator"};default:return{id:this.parent.getID()+"_"+t+"_"+this.tools[n.toLocaleLowerCase()].id,prefixIcon:this.tools[n.toLocaleLowerCase()].icon,tooltipText:f(n,this.locator),command:this.tools[n.toLocaleLowerCase()].command,subCommand:this.tools[n.toLocaleLowerCase()].subCommand}}},n.prototype.getItems=function(e,n){var i=this;if(this.parent.toolbarSettings.items.length<1)return[];for(var o=[],r=this,s=0,a=e;s<a.length;s++)!function(e){switch(typeof e){case"string":o.push(r.getObject(e,n));break;default:if(!t.isNullOrUndefined(e.click)){var s=e,a=s.click;s.click=function(){s.undo&&0===i.parent.formatter.getUndoRedoStack().length&&i.parent.formatter.saveData(),a.call(i),i.parent.formatter.getUndoRedoStack()[i.parent.formatter.getUndoRedoStack().length-1].text.trim()!==i.parent.inputElement.innerHTML.trim()&&s.undo&&i.parent.formatter.saveData()}}o.push(e)}}(a[s]);return o},n.prototype.getToolbarOptions=function(e){return{target:e.target,rteToolbarObj:this,items:this.getItems(e.items,e.container),overflowMode:e.mode,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl}},n.prototype.render=function(t){this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.toolbarRenderer.renderToolbar(this.getToolbarOptions(t))},n}(),je=function(){function n(e,t){this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.initializeInstance=function(){this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar)},n.prototype.beforeRender=function(e){var n=e.item;n.cssClass&&t.addClass([e.element],n.cssClass),"Alignments"!==n.command&&"JustifyLeft"!==n.subCommand&&"JustifyRight"!==n.subCommand&&"JustifyCenter"!==n.subCommand||e.element.setAttribute("title",f(n.subCommand.toLocaleLowerCase(),this.locator))},n.prototype.dropdownContent=function(e,t,n){return'<span style="display: inline-flex;width:'+("quick"===t?"auto":e)+'" ><span class="e-rte-dropdown-btn-text">'+n+"</span></span>"},n.prototype.renderDropDowns=function(e){var n=this;this.initializeInstance();var i=e.containerType,o=e.container;de.forEach(function(r){var s=void 0;if(-1!==c(r,e.items))switch(r){case"formats":if(s=t.select("#"+n.parent.getID()+"_"+i+"_Formats",o),t.isNullOrUndefined(s)||s.classList.contains(ee))return;var a=n.parent.format.types.slice();a.forEach(function(e){Object.defineProperties(e,{command:{value:"Formats",enumerable:!0},subCommand:{value:e.value,enumerable:!0}})});var l=t.isNullOrUndefined(n.parent.format.default)?a[0].text:n.parent.format.default;n.formatDropDown=n.toolbarRenderer.renderDropDownButton({iconCss:"quick"===i?"e-formats e-icons":"",content:n.dropdownContent(n.parent.format.width,i,"quick"===i?"":h(a,l,"text","text")),cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-formats-tbar-btn",itemName:"Formats",items:a,element:s});break;case"fontname":if(s=t.select("#"+n.parent.getID()+"_"+i+"_FontName",o),t.isNullOrUndefined(s)||s.classList.contains(ee))return;var d=n.parent.fontFamily.items.slice();d.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontName",enumerable:!0}})});var p=t.isNullOrUndefined(n.parent.fontFamily.default)?d[0].text:n.parent.fontFamily.default;n.fontNameDropDown=n.toolbarRenderer.renderDropDownButton({iconCss:"quick"===i?"e-font-name e-icons":"",content:n.dropdownContent(n.parent.fontFamily.width,i,"quick"===i?"":h(d,p,"text","text")),cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-font-name-tbar-btn",itemName:"FontName",items:d,element:s}),t.isNullOrUndefined(n.parent.fontFamily.default)||(n.getEditNode().style.fontFamily=n.parent.fontFamily.default);break;case"fontsize":if(s=t.select("#"+n.parent.getID()+"_"+i+"_FontSize",o),t.isNullOrUndefined(s)||s.classList.contains(ee))return;var u=n.parent.fontSize.items.slice();u.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontSize",enumerable:!0}})});var g=t.isNullOrUndefined(n.parent.fontSize.default)?u[1].text:n.parent.fontSize.default;n.fontSizeDropDown=n.toolbarRenderer.renderDropDownButton({content:n.dropdownContent(n.parent.fontSize.width,i,m(h(u,g.replace(/\s/g,""),"value","text"))),cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-font-size-tbar-btn",itemName:"FontSize",items:u,element:s}),t.isNullOrUndefined(n.parent.fontSize.default)||(n.getEditNode().style.fontSize=n.parent.fontSize.default);break;case"alignments":if(s=t.select("#"+n.parent.getID()+"_"+i+"_Alignments",o),t.isNullOrUndefined(s)||s.classList.contains(ee))return;n.alignDropDown=n.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:$+" "+Z,itemName:"Alignments",items:he,element:s});break;case"align":n.imageAlignmentDropDown(i,o,s);break;case"display":n.imageDisplayDropDown(i,o,s);break;case"tablerows":n.rowDropDown(i,o,s);break;case"tablecolumns":n.columnDropDown(i,o,s);break;case"tablecell":n.cellDropDown(i,o,s);break;case"tablecellverticalalign":n.verticalAlignDropDown(i,o,s);break;case"styles":n.tableStylesDropDown(i,o,s)}})},n.prototype.getUpdateItems=function(e,t){var n=e.slice();return n.forEach(function(e){Object.defineProperties(e,{command:{value:"Format"===t?"Formats":"Font",enumerable:!0},subCommand:{value:"Format"===t?e.value:t,enumerable:!0}})}),n},n.prototype.onPropertyChanged=function(e){for(var n,i,o=e.newProp,r=0,s=Object.keys(o);r<s.length;r++)switch(s[r]){case"fontFamily":if(this.fontNameDropDown)for(var a=0,l=Object.keys(o.fontFamily);a<l.length;a++)switch(l[a]){case"default":case"width":var d=this.fontNameDropDown.items;n=t.isNullOrUndefined(t.closest(this.fontNameDropDown.element,"."+J))?"toolbar":"quick";var c=t.isNullOrUndefined(this.parent.fontFamily.default)?d[0].text:this.parent.fontFamily.default;i=this.dropdownContent(this.parent.fontFamily.width,n,"quick"===n?"":h(d,c,"text","text")),this.fontNameDropDown.setProperties({content:i}),t.isNullOrUndefined(this.parent.fontFamily.default)?this.getEditNode().style.removeProperty("font-family"):this.getEditNode().style.fontFamily=this.parent.fontFamily.default;break;case"items":this.fontNameDropDown.setProperties({items:this.getUpdateItems(o.fontFamily.items,"FontName")})}break;case"fontSize":if(this.fontSizeDropDown)for(var p=0,u=Object.keys(o.fontSize);p<u.length;p++)switch(u[p]){case"default":case"width":var g=this.fontSizeDropDown.items;n=t.isNullOrUndefined(t.closest(this.fontSizeDropDown.element,"."+J))?"toolbar":"quick";var f=t.isNullOrUndefined(this.parent.fontSize.default)?g[1].text:this.parent.fontSize.default;i=this.dropdownContent(this.parent.fontSize.width,n,m(h(g,f.replace(/\s/g,""),"value","text"))),this.fontSizeDropDown.setProperties({content:i}),t.isNullOrUndefined(this.parent.fontSize.default)?this.getEditNode().style.removeProperty("font-size"):this.getEditNode().style.fontSize=this.parent.fontSize.default;break;case"items":this.fontSizeDropDown.setProperties({items:this.getUpdateItems(o.fontSize.items,"FontSize")})}break;case"format":if(this.formatDropDown)for(var b=0,v=Object.keys(o.format);b<v.length;b++)switch(v[b]){case"default":case"width":var y=this.formatDropDown.items;n=t.isNullOrUndefined(t.closest(this.formatDropDown.element,"."+J))?"toolbar":"quick";var C=t.isNullOrUndefined(this.parent.format.default)?y[0].text:this.parent.format.default;i=this.dropdownContent(this.parent.format.width,n,"quick"===n?"":h(y,C,"text","text")),this.formatDropDown.setProperties({content:i});break;case"types":this.formatDropDown.setProperties({items:this.getUpdateItems(o.format.types,"Format")})}}},n.prototype.getEditNode=function(){return this.parent.contentModule.getEditPanel()},n.prototype.rowDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableRows",n)).classList.contains(ee)||(this.tableRowsDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-rows e-icons",cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-quick-dropdown",itemName:"TableRows",items:ve,element:i}))},n.prototype.columnDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableColumns",n)).classList.contains(ee)||(this.tableColumnsDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-columns e-icons",cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-quick-dropdown",itemName:"TableColumns",items:Ce,element:i}))},n.prototype.cellDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableCell",n)).classList.contains(ee)||(this.tableRowsDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-cell e-icons",cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-quick-dropdown",itemName:"TableCell",items:fe,element:i}))},n.prototype.verticalAlignDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableCellVerticalAlign",n)).classList.contains(ee)||(this.tableCellVerticalAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-cell-ver-align e-icons",cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-quick-dropdown",itemName:"TableCellVerticalAlign",items:Te,element:i}))},n.prototype.imageDisplayDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Display",n)).classList.contains(ee)||(this.displayDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-display e-icons",cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-quick-dropdown",itemName:"Display",items:ge,element:i}))},n.prototype.imageAlignmentDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Align",n)).classList.contains(ee)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:$+" e-rte-dropdown-icons e-quick-dropdown",itemName:"Align",items:ue,element:i}))},n.prototype.tableStylesDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Styles",n)).classList.contains(ee)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-style e-icons",cssClass:$+" e-rte-dropdown-icons e-quick-dropdown",itemName:"Styles",items:this.parent.tableSettings.styles,element:i}))},n.prototype.removeDropDownClasses=function(e){t.removeClass([e],[ee,$,"e-rte-dropdown-icons",Z])},n.prototype.destroyDropDowns=function(){this.formatDropDown&&(this.removeDropDownClasses(this.formatDropDown.element),this.formatDropDown.destroy()),this.fontNameDropDown&&(this.removeDropDownClasses(this.fontNameDropDown.element),this.fontNameDropDown.destroy()),this.fontSizeDropDown&&(this.removeDropDownClasses(this.fontSizeDropDown.element),this.fontSizeDropDown.destroy()),this.alignDropDown&&(this.removeDropDownClasses(this.alignDropDown.element),this.alignDropDown.destroy()),this.imageAlignDropDown&&(this.removeDropDownClasses(this.imageAlignDropDown.element),this.imageAlignDropDown.destroy()),this.displayDropDown&&(this.removeDropDownClasses(this.displayDropDown.element),this.displayDropDown.destroy()),this.tableRowsDropDown&&(this.removeDropDownClasses(this.tableRowsDropDown.element),this.tableRowsDropDown.destroy()),this.tableColumnsDropDown&&(this.removeDropDownClasses(this.tableColumnsDropDown.element),this.tableColumnsDropDown.destroy()),this.tableCellVerticalAlignDropDown&&(this.removeDropDownClasses(this.tableCellVerticalAlignDropDown.element),this.tableCellVerticalAlignDropDown.destroy())},n.prototype.setRtl=function(e){this.formatDropDown&&this.formatDropDown.setProperties({enableRtl:e.enableRtl}),this.fontNameDropDown&&this.fontNameDropDown.setProperties({enableRtl:e.enableRtl}),this.fontSizeDropDown&&this.fontSizeDropDown.setProperties({enableRtl:e.enableRtl}),this.alignDropDown&&this.alignDropDown.setProperties({enableRtl:e.enableRtl}),this.imageAlignDropDown&&this.imageAlignDropDown.setProperties({enableRtl:e.enableRtl}),this.displayDropDown&&this.displayDropDown.setProperties({enableRtl:e.enableRtl})},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on("beforeDropDownItemRender",this.beforeRender,this),this.parent.on("iframe-click",this.onIframeMouseDown,this),this.parent.on(K,this.setRtl,this),this.parent.on(F,this.removeEventListener,this),this.parent.on(_,this.onPropertyChanged,this))},n.prototype.onIframeMouseDown=function(){S(document,"mousedown")},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off(K,this.setRtl),this.parent.off("beforeDropDownItemRender",this.beforeRender),this.parent.off(F,this.removeEventListener),this.parent.off(_,this.onPropertyChanged))},n}(),ze=function(){function e(){this.services={}}return e.prototype.register=function(e,n){t.isNullOrUndefined(this.services[e])&&(this.services[e]=n)},e.prototype.getService=function(e){if(t.isNullOrUndefined(this.services[e]))throw"The service "+e+" is not registered";return this.services[e]},e}(),Fe=function(){function n(){this.rendererMap={}}return n.prototype.addRenderer=function(n,i){var o=t.getEnumValue(e.RenderType,n);t.isNullOrUndefined(this.rendererMap[o])&&(this.rendererMap[o]=i)},n.prototype.getRenderer=function(n){var i=t.getEnumValue(e.RenderType,n);if(t.isNullOrUndefined(this.rendererMap[i]))throw"The renderer "+i+" is not found";return this.rendererMap[i]},n}(),_e=function(){function e(e){this.parent=e,this.addEventListener(),this.serviceLocator=new ze,this.serviceLocator.register("rendererFactory",new Fe)}return e.prototype.addEventListener=function(){this.parent.on("toolbarClick",this.toolbarClick,this),this.parent.on("dropDownSelect",this.dropDownSelect,this),this.parent.on("colorPickerChanged",this.renderSelection,this),this.parent.on(F,this.removeEventListener,this)},e.prototype.toolbarClick=function(e){if(!t.isNullOrUndefined(e.item)){if(!t.isNullOrUndefined(e.item.controlParent)){var n=e.item.controlParent.activeEle;n&&(n.tabIndex=-1)}this.parent.notify("html-toolbar-click",e),this.parent.notify("markdown-toolbar-click",e)}},e.prototype.dropDownSelect=function(e){if(this.parent.notify("selection-restore",{}),!document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))||!e.item||"Images"!==e.item.command&&"Display"!==e.item.command&&"Table"!==e.item.command){var t=e.item.controlParent&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.tableQTBar&&this.parent.quickToolbarModule.tableQTBar.element.contains(e.item.controlParent.element)?"Table":null;this.parent.formatter.process(this.parent,e,e.originalEvent,t)}this.parent.notify(V,{})},e.prototype.renderSelection=function(e){this.parent.notify("selection-restore",{}),this.parent.formatter.process(this.parent,e,e.originalEvent,null),this.parent.notify(V,{})},e.prototype.removeEventListener=function(){this.parent.off("toolbarClick",this.toolbarClick),this.parent.off("dropDownSelect",this.dropDownSelect),this.parent.off("colorPickerChanged",this.renderSelection),this.parent.off(F,this.removeEventListener)},e}(),qe=function(){function n(n,i){this.parent=n,this.isToolbar=!1,this.locator=i,this.isTransformChild=!1,this.renderFactory=this.locator.getService("rendererFactory"),d(this.parent),R(this.parent),this.renderFactory.addRenderer(e.RenderType.Toolbar,new He(this.parent)),this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.baseToolbar=new Ue(this.parent,this.locator),this.addEventListener(),this.parent.toolbarSettings&&Object.keys(this.parent.toolbarSettings.itemConfigs).length>0?t.extend(this.tools,ce,N(this.parent.toolbarSettings.itemConfigs),!0):this.tools=ce}return n.prototype.initializeInstance=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content),this.editableElement=this.contentRenderer.getEditPanel(),this.editPanel=this.contentRenderer.getPanel()},n.prototype.toolbarBindEvent=function(){this.parent.inlineMode.enable||(this.keyBoardModule=new t.KeyboardEvents(this.getToolbarElement(),{keyAction:this.toolBarKeyDown.bind(this),keyConfigs:this.parent.formatter.keyConfig,eventName:"keydown"}))},n.prototype.toolBarKeyDown=function(e){switch(e.action){case"escape":this.parent.contentModule.getEditPanel().focus()}},n.prototype.createToolbarElement=function(){this.tbElement=this.parent.createElement("div",{id:this.parent.getID()+"_toolbar"}),!t.Browser.isDevice&&this.parent.inlineMode.enable&&u()||(this.parent.toolbarSettings.enableFloating&&!this.parent.inlineMode.enable?(this.tbWrapper=this.parent.createElement("div",{id:this.parent.getID()+"_toolbar_wrapper",innerHTML:this.tbElement.outerHTML,className:"e-toolbar-wrapper"}),this.tbElement=this.tbWrapper.firstElementChild,this.parent.element.insertBefore(this.tbWrapper,this.editPanel)):this.parent.element.insertBefore(this.tbElement,this.editPanel))},n.prototype.getToolbarMode=function(){var t;switch(this.parent.toolbarSettings.type){case e.ToolbarType.Expand:t="Extended";break;case e.ToolbarType.Scrollable:t="Scrollable";break;default:t="MultiRow"}return u()&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&(t=e.ToolbarType.Scrollable),t},n.prototype.checkToolbarResponsive=function(n){if(!t.Browser.isDevice||u())return!1;var i;return i=this.parent.toolbarSettings.type===e.ToolbarType.Expand?e.ToolbarType.MultiRow:this.parent.toolbarSettings.type,this.baseToolbar.render({container:this.parent.inlineMode.enable?"quick":"toolbar",items:this.parent.toolbarSettings.items,mode:i,target:n}),this.parent.toolbarSettings.type===e.ToolbarType.Expand&&(t.addClass([n],["e-rte-tb-mobile"]),this.parent.inlineMode.enable?this.addFixedTBarClass():t.addClass([n],["e-tb-static"])),this.wireEvents(),this.dropDownModule.renderDropDowns({container:n,containerType:this.parent.inlineMode.enable?"quick":"toolbar",items:this.parent.toolbarSettings.items}),this.parent.notify("render-color-picker",{container:this.tbElement,containerType:this.parent.inlineMode.enable?"quick":"toolbar",items:this.parent.toolbarSettings.items}),!0},n.prototype.checkIsTransformChild=function(){this.isTransformChild=!1;for(var e=t.selectAll('[style*="transform"]',document),n=0;n<e.length;n++)if(!t.isNullOrUndefined(e[n].contains)&&e[n].contains(this.parent.element)){this.isTransformChild=!0;break}},n.prototype.toggleFloatClass=function(e){var n,i,o=!1,r=!1,s=this.parent.floatingToolbarOffset;e&&this.parent.iframeSettings.enable&&this.parent.inputElement.ownerDocument===e.target?i=e.target.body:e&&e.target!==document?i=e.target:(o=!0,i=document.body);var a=this.getToolbarHeight()+this.getExpandTBarPopHeight();if(this.isTransformChild){n=0;var l=0,d=this.parent.element.offsetHeight;if(o){var c=window.getComputedStyle(i);l=parseFloat(c.marginTop.split("px")[0])+parseFloat(c.paddingTop.split("px")[0])}var p=this.parent.element.getBoundingClientRect().top,h=t.Browser.isMSPointer&&o?window.pageYOffset:i.parentElement.scrollTop,u=i.getBoundingClientRect(),m=o?u.top+h:u.top,g=!(p-(o?0:m)+d>a+s);p>m+s||p<-d||p<0&&g?(r=!1,t.removeClass([this.tbElement],["e-rte-tb-abs-float"])):p<m+s&&(n=p<0?-p+m:m-p,n=o?n-l:n,t.addClass([this.tbElement],["e-rte-tb-abs-float"]),r=!0)}else{var f=this.parent.element.getBoundingClientRect();if(window.innerHeight<f.top)return;n=e&&e.target!==document?i.getBoundingClientRect().top:0,f.bottom<s+a+n||f.bottom<0||f.top>s+n?r=!1:f.top<s&&(r=!0)}r?(t.addClass([this.tbElement],["e-rte-tb-float"]),t.setStyleAttribute(this.tbElement,{width:this.parent.element.offsetWidth+"px",top:s+n+"px"})):(t.removeClass([this.tbElement],["e-rte-tb-float"]),t.setStyleAttribute(this.tbElement,{top:"0px",width:"100%"}))},n.prototype.renderToolbar=function(){if(this.initializeInstance(),this.createToolbarElement(),!this.checkToolbarResponsive(this.tbElement)){this.parent.inlineMode.enable?this.parent.notify("renderInlineToolbar",{}):(this.baseToolbar.render({container:"toolbar",items:this.parent.toolbarSettings.items,mode:this.getToolbarMode(),target:this.tbElement}),this.parent.inlineMode.enable||(this.parent.toolbarSettings.enableFloating&&(this.checkIsTransformChild(),this.toggleFloatClass()),t.addClass([this.parent.element],["e-rte-toolbar-enabled"]),this.parent.toolbarSettings.type===e.ToolbarType.Expand&&t.addClass([this.parent.element],["e-rte-tb-expand"]))),this.wireEvents(),this.parent.inlineMode.enable&&!u()&&this.addFixedTBarClass(),this.parent.inlineMode.enable||(this.dropDownModule.renderDropDowns({container:this.tbElement,containerType:"toolbar",items:this.parent.toolbarSettings.items}),this.parent.notify("render-color-picker",{container:this.tbElement,containerType:"toolbar",items:this.parent.toolbarSettings.items}),this.refreshToolbarOverflow());var n=this.parent.element.querySelector(".e-rte-srctextarea"),i=this.parent.element.querySelector(".e-source-content");(!this.parent.iframeSettings.enable&&!t.isNullOrUndefined(n)&&"block"===n.style.display||this.parent.iframeSettings.enable&&!t.isNullOrUndefined(i)&&"block"===i.style.display)&&(this.parent.notify("updateToolbarItem",{targetItem:"SourceCode",updateItem:"Preview",baseToolbar:this.parent.getBaseToolbarObject()}),this.parent.disableToolbarItem(this.parent.toolbarSettings.items))}},n.prototype.addFixedTBarClass=function(){t.addClass([this.tbElement],["e-rte-tb-fixed"])},n.prototype.removeFixedTBarClass=function(){t.removeClass([this.tbElement],["e-rte-tb-fixed"])},n.prototype.showFixedTBar=function(){t.addClass([this.tbElement],["e-show"]),t.Browser.isIos&&t.addClass([this.tbElement],["e-tbar-ios-fixed"])},n.prototype.hideFixedTBar=function(){this.isToolbar?this.isToolbar=!1:t.removeClass([this.tbElement],["e-show","e-tbar-ios-fixed"])},n.prototype.updateItem=function(e){var n=this.tools[e.updateItem.toLocaleLowerCase()],i=y(v(this.tools[e.targetItem.toLocaleLowerCase()].subCommand),e.baseToolbar.toolbarObj.items)[0];if(t.isNullOrUndefined(i))this.addTBarItem(e,0);else{var o=this.parent.inlineMode.enable?"_quick_":"_toolbar_";e.baseToolbar.toolbarObj.items[i].id=this.parent.getID()+o+n.id,e.baseToolbar.toolbarObj.items[i].prefixIcon=n.icon,e.baseToolbar.toolbarObj.items[i].tooltipText=n.tooltip,e.baseToolbar.toolbarObj.items[i].subCommand=n.subCommand,e.baseToolbar.toolbarObj.dataBind()}},n.prototype.updateToolbarStatus=function(e){this.tbElement&&(!this.parent.inlineMode.enable||!u()&&t.Browser.isDevice)&&b({args:e,dropDownModule:this.dropDownModule,parent:this.parent,tbElements:t.selectAll("."+te,this.tbElement),tbItems:this.baseToolbar.toolbarObj.items},!!this.parent.inlineMode.enable,this.parent)},n.prototype.fullScreen=function(e){this.parent.fullScreenModule.showFullScreen(e)},n.prototype.hideScreen=function(e){this.parent.fullScreenModule.hideFullScreen(e)},n.prototype.getBaseToolbar=function(){return this.baseToolbar},n.prototype.addTBarItem=function(e,t){e.baseToolbar.toolbarObj.addItems([e.baseToolbar.getObject(e.updateItem,"toolbar")],t)},n.prototype.enableTBarItems=function(e,n,i,o){var r=y(v(n),e.toolbarObj.items);this.tbItems=t.selectAll("."+te,e.toolbarObj.element);for(var s=0;s<r.length;s++){var a=this.tbItems[r[s]];a&&e.toolbarObj.enableItems(a,i)}t.select(".e-rte-srctextarea",this.parent.element)||o||C(e,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus())},n.prototype.removeTBarItems=function(e){t.isNullOrUndefined(this.baseToolbar.toolbarObj)&&(this.baseToolbar=this.parent.getBaseToolbarObject());var n=y(v(e),this.baseToolbar.toolbarObj.items);this.tbItems=this.parent.inlineMode.enable?t.selectAll("."+te,this.baseToolbar.toolbarObj.element):t.selectAll("."+te,this.parent.element);for(var i=0;i<n.length;i++)this.baseToolbar.toolbarObj.removeItems(this.tbItems[n[i]])},n.prototype.getExpandTBarPopHeight=function(){var n=0;if(this.parent.toolbarSettings.type===e.ToolbarType.Expand&&this.tbElement.classList.contains("e-extended-toolbar")){var i=t.select(".e-toolbar-extended",this.tbElement);i&&this.tbElement.classList.contains("e-expand-open")||i&&i.classList.contains("e-popup-open")?(t.addClass([i],["e-visible"]),n+=i.offsetHeight,t.removeClass([i],["e-visible"])):t.removeClass([this.tbElement],["e-expand-open"])}return n},n.prototype.getToolbarHeight=function(){return this.tbElement.offsetHeight},n.prototype.getToolbarElement=function(){return t.select(".e-rte-toolbar",this.parent.element)},n.prototype.refreshToolbarOverflow=function(){this.baseToolbar.toolbarObj.refreshOverflow()},n.prototype.isToolbarDestroyed=function(){return this.baseToolbar.toolbarObj&&!this.baseToolbar.toolbarObj.isDestroyed},n.prototype.destroyToolbar=function(){if(this.isToolbarDestroyed()){this.parent.unWireScrollElementsEvents(),this.unWireEvents(),this.parent.notify("destroy-color-picker",{}),this.dropDownModule.destroyDropDowns(),this.baseToolbar.toolbarObj.destroy(),this.removeEventListener(),t.removeClass([this.parent.element],["e-rte-toolbar-enabled"]),t.removeClass([this.parent.element],["e-rte-tb-expand"]);var e=t.select(".e-toolbar-wrapper",this.parent.element),n=t.select(".e-rte-toolbar",this.parent.element);t.isNullOrUndefined(e)?t.isNullOrUndefined(n)||t.detach(n):t.detach(e)}},n.prototype.destroy=function(){this.isToolbarDestroyed()&&(this.destroyToolbar(),this.keyBoardModule&&this.keyBoardModule.destroy())},n.prototype.scrollHandler=function(e){this.parent.inlineMode.enable||this.parent.toolbarSettings.enableFloating&&this.getDOMVisibility(this.tbElement)&&this.toggleFloatClass(e.args)},n.prototype.getDOMVisibility=function(e){return!(!e.offsetParent&&0===e.offsetWidth&&0===e.offsetHeight)},n.prototype.mouseDownHandler=function(){t.Browser.isDevice&&this.parent.inlineMode.enable&&!u()&&this.showFixedTBar()},n.prototype.focusChangeHandler=function(){t.Browser.isDevice&&this.parent.inlineMode.enable&&!u()&&(this.isToolbar=!1,this.hideFixedTBar())},n.prototype.dropDownBeforeOpenHandler=function(){this.isToolbar=!0},n.prototype.tbFocusHandler=function(e){var n=document.activeElement,i=t.closest(n,".e-rte-toolbar");if(n===this.parent.getToolbarElement()||i===this.parent.getToolbarElement())for(var o=this.parent.getToolbarElement().querySelectorAll(".e-expended-nav"),r=0;r<o.length;r++)t.isNullOrUndefined(this.parent.getToolbarElement().querySelector(".e-insert-table-btn"))?o[r].setAttribute("tabindex","0"):o[r].setAttribute("tabindex","1")},n.prototype.tbKeydownHandler=function(e){(e.target.classList.contains("e-dropdown-btn")||e.target.getAttribute("id")===this.parent.getID()+"_toolbar_CreateTable")&&e.target.setAttribute("tabindex","0")},n.prototype.toolbarClickHandler=function(n){var i=t.closest(n.originalEvent.target,".e-hor-nav");i&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&!t.isNullOrUndefined(i)?i.classList.contains("e-nav-active")?(t.addClass([this.tbElement],["e-expand-open"]),this.parent.setContentHeight("toolbar",!0)):(t.removeClass([this.tbElement],["e-expand-open"]),this.parent.setContentHeight("toolbar",!1)):(t.Browser.isDevice||this.parent.inlineMode.enable)&&(this.isToolbar=!0),t.isNullOrUndefined(i)&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&t.removeClass([this.tbElement],["e-expand-open"])},n.prototype.wireEvents=function(){this.parent.inlineMode.enable&&u()||(t.EventHandler.add(this.tbElement,"focusin",this.tbFocusHandler,this),t.EventHandler.add(this.tbElement,"keydown",this.tbKeydownHandler,this))},n.prototype.unWireEvents=function(){t.EventHandler.remove(this.tbElement,"focusin",this.tbFocusHandler),t.EventHandler.remove(this.tbElement,"keydown",this.tbKeydownHandler)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.dropDownModule=new je(this.parent,this.locator),this.toolbarActionModule=new _e(this.parent),this.parent.on(z,this.renderToolbar,this),this.parent.on("scroll",this.scrollHandler,this),this.parent.on("bind-on-end",this.toolbarBindEvent,this),this.parent.on("toolbar-updated",this.updateToolbarStatus,this),this.parent.on(_,this.onPropertyChanged,this),this.parent.on("refresh-begin",this.onRefresh,this),this.parent.on(F,this.destroy,this),this.parent.on("enableFullScreen",this.fullScreen,this),this.parent.on("disableFullScreen",this.hideScreen,this),this.parent.on("updateToolbarItem",this.updateItem,this),this.parent.on("beforeDropDownOpen",this.dropDownBeforeOpenHandler,this),this.parent.on("expandPopupClick",this.parent.setContentHeight,this.parent),this.parent.on("focusChange",this.focusChangeHandler,this),this.parent.on(W,this.mouseDownHandler,this),this.parent.on("sourceCodeMouseDown",this.mouseDownHandler,this),this.parent.inlineMode.enable||u()||this.parent.on("toolbarClick",this.toolbarClickHandler,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(z,this.renderToolbar),this.parent.off("scroll",this.scrollHandler),this.parent.off("bind-on-end",this.toolbarBindEvent),this.parent.off("toolbar-updated",this.updateToolbarStatus),this.parent.off(_,this.onPropertyChanged),this.parent.off("refresh-begin",this.onRefresh),this.parent.off(F,this.destroy),this.parent.off("enableFullScreen",this.parent.fullScreenModule.showFullScreen),this.parent.off("disableFullScreen",this.parent.fullScreenModule.hideFullScreen),this.parent.off("updateToolbarItem",this.updateItem),this.parent.off("beforeDropDownOpen",this.dropDownBeforeOpenHandler),this.parent.off("expandPopupClick",this.parent.setContentHeight),this.parent.off("focusChange",this.focusChangeHandler),this.parent.off(W,this.mouseDownHandler),this.parent.off("sourceCodeMouseDown",this.mouseDownHandler),this.parent.inlineMode.enable||u()||this.parent.off("toolbarClick",this.toolbarClickHandler))},n.prototype.onRefresh=function(){this.refreshToolbarOverflow(),this.parent.setContentHeight("",!0)},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.inlineMode))for(var n=0,i=Object.keys(e.newProp.inlineMode);n<i.length;n++)switch(i[n]){case"enable":this.refreshToolbar()}e.module===this.getModuleName()&&this.refreshToolbar()},n.prototype.refreshToolbar=function(){t.isNullOrUndefined(this.baseToolbar.toolbarObj)&&(this.baseToolbar=this.parent.getBaseToolbarObject());var e=t.select(".e-toolbar-wrapper",this.parent.element);(t.select(".e-rte-toolbar",this.parent.element)||e)&&this.destroyToolbar(),this.parent.toolbarSettings.enable&&(this.addEventListener(),this.renderToolbar(),this.parent.wireScrollElementsEvents(),t.select(".e-rte-srctextarea",this.parent.element)||C(this.baseToolbar,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus()),this.parent.notify("dynamicModule",{}))},n.prototype.getModuleName=function(){return"toolbar"},n}(),Qe=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Ve=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},We={backspace:8,tab:9,enter:13,shift:16,control:17,alt:18,pause:19,capslock:20,space:32,escape:27,pageup:33,pagedown:34,end:35,home:36,leftarrow:37,uparrow:38,rightarrow:39,downarrow:40,insert:45,delete:46,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,semicolon:186,plus:187,comma:188,minus:189,dot:190,forwardslash:191,graveaccent:192,openbracket:219,backslash:220,closebracket:221,singlequote:222,"]":221,"[":219,"=":187},Ge=function(e){function n(t,n){var o=e.call(this,n,t)||this;return o.keyPressHandler=function(e){for(var t=e.altKey,n=e.ctrlKey,r=e.shiftKey,s=e.metaKey,a=e.which,l=0,d=Object.keys(o.keyConfigs);l<d.length;l++)for(var c=d[l],p=0,h=o.keyConfigs[c].split(",");p<h.length;p++){var u=h[p],m=i.getKeyConfigData(u.trim());t!==m.altKey||n!==m.ctrlKey&&!s||r!==m.shiftKey||a!==m.keyCode||(e.action=c)}o.keyAction&&o.keyAction(e)},o.bind(),o}Qe(n,e),i=n,n.prototype.destroy=function(){this.unwireEvents(),e.prototype.destroy.call(this)},n.prototype.onPropertyChanged=function(e,t){},n.prototype.bind=function(){this.wireEvents()},n.prototype.getModuleName=function(){return"keyboard"},n.prototype.wireEvents=function(){this.element.addEventListener(this.eventName,this.keyPressHandler)},n.prototype.unwireEvents=function(){this.element.removeEventListener(this.eventName,this.keyPressHandler)},n.getKeyConfigData=function(e){if(e in this.configCache)return this.configCache[e];var t=e.toLowerCase().split("+"),n={altKey:-1!==t.indexOf("alt"),ctrlKey:-1!==t.indexOf("ctrl"),shiftKey:-1!==t.indexOf("shift"),keyCode:null};return t[t.length-1].length>1&&Number(t[t.length-1])?n.keyCode=Number(t[t.length-1]):n.keyCode=i.getKeyCode(t[t.length-1]),i.configCache[e]=n,n},n.getKeyCode=function(e){return We[e]||e.toUpperCase().charCodeAt(0)};var i;return n.configCache={},Ve([t.Property({})],n.prototype,"keyConfigs",void 0),Ve([t.Property("keyup")],n.prototype,"eventName",void 0),Ve([t.Event()],n.prototype,"keyAction",void 0),n=i=Ve([t.NotifyPropertyChanges],n)}(t.Base),Ke=function(){function n(e,n){this.tools={},this.parent=e,this.locator=n,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener(),this.parent.toolbarSettings&&Object.keys(this.parent.toolbarSettings.itemConfigs).length>0?t.extend(this.tools,ce,N(this.parent.toolbarSettings.itemConfigs),!0):this.tools=ce}return n.prototype.initializeInstance=function(){this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar)},n.prototype.renderColorPickerInput=function(e){var n=this;this.initializeInstance();var i,o,r=e.containerType,s=e.container;de.forEach(function(a){if(-1!==c(a,e.items))switch(a){case"fontcolor":i=n.parent.getID()+"_"+r+"_FontColor_Target";var l=n.parent.createElement("input");l.id=i,l.classList.add("e-rte-fontcolor-element"),document.body.appendChild(l),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" e-rte-elements e-icons",value:n.tools[a.toLocaleLowerCase()].value,command:n.tools[a.toLocaleLowerCase()].command,subCommand:n.tools[a.toLocaleLowerCase()].subCommand,element:t.select("#"+n.parent.getID()+"_"+r+"_FontColor",s),target:i},n.fontColorPicker=n.toolbarRenderer.renderColorPicker(o,"fontcolor"),n.fontColorDropDown=n.toolbarRenderer.renderColorPickerDropDown(o,"fontcolor",n.fontColorPicker);break;case"backgroundcolor":i=n.parent.getID()+"_"+r+"_BackgroundColor_Target";var d=n.parent.createElement("input");d.id=i,d.classList.add("e-rte-backgroundcolor-element"),document.body.appendChild(d),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" e-rte-elements e-icons",value:n.tools[a.toLocaleLowerCase()].value,command:n.tools[a.toLocaleLowerCase()].command,subCommand:n.tools[a.toLocaleLowerCase()].subCommand,element:t.select("#"+n.parent.getID()+"_"+r+"_BackgroundColor",s),target:i},n.backgroundColorPicker=n.toolbarRenderer.renderColorPicker(o,"backgroundcolor"),n.backgroundColorDropDown=n.toolbarRenderer.renderColorPickerDropDown(o,"backgroundcolor",n.backgroundColorPicker)}})},n.prototype.destroy=function(){this.removeEventListener(),this.destroyColorPicker()},n.prototype.destroyColorPicker=function(){if(this.fontColorPicker&&!this.fontColorPicker.isDestroyed&&this.fontColorPicker.destroy(),this.backgroundColorPicker&&!this.backgroundColorPicker.isDestroyed&&this.backgroundColorPicker.destroy(),this.fontColorDropDown&&!this.fontColorDropDown.isDestroyed&&((e=this.fontColorDropDown.element.querySelector(".e-rte-color-content"))&&t.detach(e),this.fontColorDropDown.destroy()),this.backgroundColorDropDown&&!this.backgroundColorDropDown.isDestroyed){var e=this.backgroundColorDropDown.element.querySelector(".e-rte-color-content");e&&t.detach(e),this.backgroundColorDropDown.destroy()}},n.prototype.setRtl=function(e){this.fontColorPicker&&(this.fontColorPicker.setProperties({enableRtl:e.enableRtl}),this.fontColorDropDown.setProperties({enableRtl:e.enableRtl})),this.backgroundColorPicker&&(this.backgroundColorPicker.setProperties({enableRtl:e.enableRtl}),this.backgroundColorDropDown.setProperties({enableRtl:e.enableRtl}))},n.prototype.addEventListener=function(){this.parent.on("toolbarRenderComplete",this.renderColorPickerInput,this),this.parent.on(K,this.setRtl,this),this.parent.on(F,this.destroy,this),this.parent.on("destroy-color-picker",this.destroyColorPicker,this),this.parent.on(_,this.onPropertyChanged,this)},n.prototype.onPropertyChanged=function(e){for(var t=e.newProp,n=0,i=Object.keys(t);n<i.length;n++)switch(i[n]){case"fontColor":if(this.fontColorPicker)for(var o=0,r=Object.keys(t.fontColor);o<r.length;o++)switch(r[o]){case"default":this.fontColorPicker.setProperties({value:t.fontColor.default}),this.fontColorDropDown.element.querySelector("."+this.tools.fontcolor.icon).style.borderBottomColor=t.fontColor.default;break;case"mode":this.fontColorPicker.setProperties({mode:t.fontColor.mode});break;case"columns":this.fontColorPicker.setProperties({columns:t.fontColor.columns});break;case"colorCode":this.fontColorPicker.setProperties({presetColors:t.fontColor.colorCode});break;case"modeSwitcher":this.fontColorPicker.setProperties({modeSwitcher:t.fontColor.modeSwitcher})}break;case"backgroundColor":if(this.backgroundColorPicker)for(var s=0,a=Object.keys(t.backgroundColor);s<a.length;s++)switch(a[s]){case"default":this.backgroundColorPicker.setProperties({value:t.backgroundColor.default}),this.backgroundColorDropDown.element.querySelector("."+this.tools.backgroundcolor.icon).style.borderBottomColor=t.backgroundColor.default;break;case"mode":this.backgroundColorPicker.setProperties({mode:t.backgroundColor.mode});break;case"columns":this.backgroundColorPicker.setProperties({columns:t.backgroundColor.columns});break;case"colorCode":this.backgroundColorPicker.setProperties({presetColors:t.backgroundColor.colorCode});break;case"modeSwitcher":this.backgroundColorPicker.setProperties({modeSwitcher:t.backgroundColor.modeSwitcher})}}},n.prototype.removeEventListener=function(){this.parent.off("toolbarRenderComplete",this.renderColorPickerInput),this.parent.off(F,this.destroy),this.parent.off(K,this.setRtl),this.parent.off("destroy-color-picker",this.destroyColorPicker),this.parent.off(_,this.onPropertyChanged)},n}(),Xe=function(){function n(t,n){this.parent=t,this.locator=n,this.isDOMElement=!1,this.renderFactory=this.locator.getService("rendererFactory"),this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content),this.popupRenderer=this.renderFactory.getRenderer(e.RenderType.Popup),this.dropDownButtons=new je(this.parent,this.locator),this.colorPickerObj=new Ke(this.parent,this.locator)}return n.prototype.appendPopupContent=function(){this.toolbarElement=this.parent.createElement("div",{className:J}),this.element.appendChild(this.toolbarElement)},n.prototype.render=function(e){var n;n="Image"===e.popupType?"e-rte-image-popup":"Inline"===e.popupType?"e-rte-inline-popup":"";var i=t.getUniqueID(e.popupType+"_Quick_Popup");this.stringItems=e.toolbarItems,this.element=this.parent.createElement("div",{id:i,className:n+" e-rte-elements"}),this.element.setAttribute("aria-owns",this.parent.getID()),this.appendPopupContent(),this.createToolbar(e.toolbarItems,e.mode),this.popupRenderer.renderPopup(this),this.addEventListener()},n.prototype.createToolbar=function(e,t){this.quickTBarObj=new Ue(this.parent,this.locator),this.quickTBarObj.render({container:"quick",target:this.toolbarElement,items:e,mode:t}),this.quickTBarObj.toolbarObj.refresh()},n.prototype.setPosition=function(e){var n,i,o=t.closest(e.target,".e-img-caption"),r=t.isNullOrUndefined(o)?e.target:o;t.addClass([this.toolbarElement],["e-remove-white-space"]);var s=r.offsetTop,a=window.pageYOffset+e.parentData.top;i=s-e.editTop>e.popHeight?a+e.tBarElementHeight+(s-e.editTop)-e.popHeight-5:e.editTop+e.editHeight-(s+r.offsetHeight)>e.popHeight?a+e.tBarElementHeight+(s-e.editTop)+r.offsetHeight+5:e.y,n=r.offsetWidth>e.popWidth?r.offsetWidth/2-e.popWidth/2+e.parentData.left+r.offsetLeft:e.parentData.left+r.offsetLeft,this.popupObj.position.X=n+e.popWidth>e.parentData.right?e.parentData.right-e.popWidth:n,this.popupObj.position.Y=i>=0?i:e.y+5,this.popupObj.dataBind(),t.removeClass([this.toolbarElement],["e-remove-white-space"])},n.prototype.checkCollision=function(e,t,n){var i,r,s=e.parentData.top,a=e.windowY+s+e.tBarElementHeight,l=[];l="document"===t?o.isCollide(e.popup):o.isCollide(e.popup,e.parentElement);for(var d=0;d<l.length;d++)switch(l[d]){case"top":r="document"===t?e.windowY:window.pageYOffset+s+e.tBarElementHeight;break;case"bottom":r="document"===t?"inline"===n?e.y-e.popHeight-10:e.windowHeight-(s+e.tBarElementHeight)>e.popHeight?a-e.windowHeight>e.popHeight?a+(e.windowHeight-s)-e.popHeight:a:e.windowY+(s+e.tBarElementHeight):"IMG"!==e.target.tagName?e.parentData.bottom+window.pageYOffset-e.popHeight-10:e.parentData.bottom+window.pageYOffset-e.popHeight-5;break;case"right":i="inline"===n?e.windowWidth-(e.popWidth+e.bodyRightSpace+10):e.x-e.popWidth;break;case"left":i="inline"===n?0:e.parentData.left}this.popupObj.position.X=i||this.popupObj.position.X,this.popupObj.position.Y=r||this.popupObj.position.Y,this.popupObj.dataBind()},n.prototype.showPopup=function(e,n,i){var o=this,r=t.isBlazor()?{cancel:!1,targetElement:i}:{popup:this.popupObj,cancel:!1,targetElement:i};this.parent.trigger("beforeQuickToolbarOpen",r,function(r){if(!r.cancel){var s=void 0,a=void 0,l=window.getComputedStyle(document.body),d=parseFloat(l.marginRight.split("px")[0])+parseFloat(l.paddingRight.split("px")[0]),c=window.innerHeight,p=window.innerWidth,h=o.parent.element,m=!t.isNullOrUndefined(o.parent.getToolbar()),g=m&&o.parent.toolbarModule.getToolbarHeight(),f=m&&o.parent.toolbarModule.getExpandTBarPopHeight(),b=m?g+f:0;if(t.addClass([o.element],["e-hide"]),t.Browser.isDevice&&!u()&&t.addClass([o.parent.getToolbar()],["e-hide"]),o.parent.iframeSettings.enable)s=(v=o.contentRenderer.getPanel().contentWindow).pageYOffset,a=v.innerHeight;else{var v=t.closest(i,".e-rte-content");s=v?v.scrollTop:0,a=v?v.offsetHeight:0}o.parent.inlineMode.enable||t.closest(i,"table")||(o.parent.disableToolbarItem(o.parent.toolbarSettings.items),o.parent.enableToolbarItem(["Undo","Redo"])),t.append([o.element],document.body),o.popupObj.position.X=e+20,o.popupObj.position.Y=n+(o.parent.iframeSettings.enable?35:20),o.popupObj.dataBind(),o.popupObj.element.classList.add("e-popup-open"),o.dropDownButtons.renderDropDowns({container:o.toolbarElement,containerType:"quick",items:o.stringItems}),o.colorPickerObj.renderColorPickerInput({container:o.toolbarElement,containerType:"quick",items:o.stringItems});var y={x:e,y:n,target:i,editTop:s,editHeight:a,popup:o.popupObj.element,popHeight:o.popupObj.element.offsetHeight,popWidth:o.popupObj.element.offsetWidth,parentElement:h,bodyRightSpace:d,windowY:window.pageYOffset,windowHeight:c,windowWidth:p,parentData:h.getBoundingClientRect(),tBarElementHeight:b};"IMG"===i.tagName&&o.setPosition(y),o.parent.inlineMode.enable||o.checkCollision(y,"parent",""),o.checkCollision(y,"document",o.parent.inlineMode.enable?"inline":""),o.popupObj.element.classList.remove("e-popup-open"),t.removeClass([o.element],["e-hide"]),o.popupObj.show({name:"ZoomIn",duration:t.Browser.isIE?250:400}),t.setStyleAttribute(o.element,{maxWidth:o.parent.element.offsetWidth+"px"}),t.addClass([o.element],["e-rte-pop"]),o.isDOMElement=!0}})},n.prototype.hidePopup=function(){var e=this.parent.sourceCodeModule.getViewPanel();t.Browser.isDevice&&!u()&&t.removeClass([this.parent.getToolbar()],["e-hide"]),t.isNullOrUndefined(this.parent.getToolbar())||this.parent.inlineMode.enable||(t.isNullOrUndefined(e)||"none"===e.style.display)&&this.parent.enableToolbarItem(this.parent.toolbarSettings.items),this.removeEleFromDOM(),this.isDOMElement=!1},n.prototype.addQTBarItem=function(e,t){this.quickTBarObj.toolbarObj.addItems(this.quickTBarObj.getItems(e,"toolbar"),t)},n.prototype.removeQTBarItem=function(e){this.quickTBarObj.toolbarObj.removeItems(e)},n.prototype.removeEleFromDOM=function(){var e=this.popupObj.element;if(this.isDOMElement){this.dropDownButtons.destroyDropDowns(),this.colorPickerObj.destroyColorPicker(),t.removeClass([this.element],["e-rte-pop"]),t.detach(e);var n=t.isBlazor()?{element:this.popupObj.element}:this.popupObj;this.parent.trigger("quickToolbarClose",n)}},n.prototype.updateStatus=function(e){b({args:e,dropDownModule:this.dropDownButtons,parent:this.parent,tbElements:t.selectAll("."+te,this.element),tbItems:this.quickTBarObj.toolbarObj.items},!0,this.parent),t.select(".e-rte-srctextarea",this.parent.element)||C(this.parent.getBaseToolbarObject(),this.parent.formatter.editorManager.undoRedoManager.getUndoStatus())},n.prototype.destroy=function(){this.popupObj&&!this.popupObj.isDestroyed&&(this.popupObj.destroy(),this.removeEleFromDOM()),this.removeEventListener()},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(F,this.destroy,this),this.parent.on(_,this.onPropertyChanged,this),this.parent.inlineMode.enable&&this.parent.on("toolbar-updated",this.updateStatus,this))},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.inlineMode))for(var n=0,i=Object.keys(e.newProp.inlineMode);n<i.length;n++)switch(i[n]){case"enable":e.newProp.inlineMode.enable?this.parent.on("toolbar-updated",this.updateStatus,this):this.parent.off("toolbar-updated",this.updateStatus)}},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(F,this.destroy),this.parent.off(_,this.onPropertyChanged),this.parent.inlineMode.enable&&this.parent.off("toolbar-updated",this.updateStatus))},n}(),Ye=function(){function e(e){this.parent=e}return e.prototype.quickToolbarOpen=function(){var e=t.isBlazor()?{element:this.popupObj.element}:this.popupObj;this.parent.trigger("quickToolbarOpen",e)},e.prototype.renderPopup=function(e){this.setPanel(e.element),this.renderPanel(),e.popupObj=new o.Popup(e.element,{targetType:"relative",relateTo:this.parent.element,open:this.quickToolbarOpen.bind(this)}),this.popupObj=e.popupObj,e.popupObj.hide()},e.prototype.renderPanel=function(){this.getPanel().classList.add("e-rte-quick-popup")},e.prototype.getPanel=function(){return this.popupPanel},e.prototype.setPanel=function(e){this.popupPanel=e},e}(),Je=function(){function n(t,n){this.parent=t,this.locator=n,this.renderFactory=this.locator.getService("rendererFactory"),this.renderFactory.addRenderer(e.RenderType.Popup,new Ye(this.parent)),this.addEventListener()}return n.prototype.formatItems=function(e){var t=[];return e.forEach(function(e){if("string"==typeof e)switch(e.toLocaleLowerCase()){case"open":t.push("openLink");break;case"edit":t.push("editLink");break;case"unlink":t.push("removeLink");break;default:t.push(e)}else t.push(e)}),t},n.prototype.getQTBarOptions=function(e,t,n,i){return{popupType:e,toolbarItems:n,mode:t,renderType:i}},n.prototype.createQTBar=function(e,t,n,i){if(n.length<1)return null;var o=new Xe(this.parent,this.locator);return o.render(this.getQTBarOptions(e,t,this.formatItems(n),i)),o},n.prototype.initializeQuickToolbars=function(){this.parent.quickToolbarModule=this,this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content),this.parent.inlineMode.enable&&this.parent.inlineMode.onSelection&&u()&&t.EventHandler.add(this.contentRenderer.getDocument(),"selectionchange",this.selectionChangeHandler,this)},n.prototype.onMouseDown=function(e){this.parent.isBlur=!1,this.parent.isRTE=!0},n.prototype.renderQuickToolbars=function(){this.linkQTBar||this.imageQTBar||this.textQTBar||this.tableQTBar||(this.linkQTBar=this.createQTBar("Link","Scrollable",this.parent.quickToolbarSettings.link,e.RenderType.LinkToolbar),this.renderFactory.addRenderer(e.RenderType.LinkToolbar,this.linkQTBar),this.textQTBar=this.createQTBar("Text","Scrollable",this.parent.quickToolbarSettings.text,e.RenderType.TextToolbar),this.renderFactory.addRenderer(e.RenderType.TextToolbar,this.textQTBar),this.imageQTBar=this.createQTBar("Image","MultiRow",this.parent.quickToolbarSettings.image,e.RenderType.ImageToolbar),this.renderFactory.addRenderer(e.RenderType.ImageToolbar,this.imageQTBar),this.tableQTBar=this.createQTBar("Table","MultiRow",this.parent.quickToolbarSettings.table,e.RenderType.TableToolbar),this.renderFactory.addRenderer(e.RenderType.TableToolbar,this.tableQTBar),this.linkQTBar&&t.EventHandler.add(this.linkQTBar.element,"mousedown",this.onMouseDown,this),this.imageQTBar&&t.EventHandler.add(this.imageQTBar.element,"mousedown",this.onMouseDown,this),this.textQTBar&&t.EventHandler.add(this.textQTBar.element,"mousedown",this.onMouseDown,this),this.tableQTBar&&t.EventHandler.add(this.tableQTBar.element,"mousedown",this.onMouseDown,this))},n.prototype.renderInlineQuickToolbar=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!u()||(t.addClass([this.parent.element],["e-rte-inline"]),this.inlineQTBar=this.createQTBar("Inline","MultiRow",this.parent.toolbarSettings.items,e.RenderType.InlineToolbar),this.renderFactory.addRenderer(e.RenderType.InlineToolbar,this.inlineQTBar),t.EventHandler.add(this.inlineQTBar.element,"mousedown",this.onMouseDown,this))},n.prototype.showInlineQTBar=function(e,t,n){this.parent.readonly||this.inlineQTBar.showPopup(e,t,n)},n.prototype.hideInlineQTBar=function(){this.inlineQTBar&&!p(this.inlineQTBar.element,"e-popup-close")&&this.inlineQTBar.hidePopup()},n.prototype.hideQuickToolbars=function(){this.linkQTBar&&!p(this.linkQTBar.element,"e-popup-close")&&document.body.contains(this.linkQTBar.element)&&this.linkQTBar.hidePopup(),this.textQTBar&&!p(this.textQTBar.element,"e-popup-close")&&document.body.contains(this.textQTBar.element)&&this.textQTBar.hidePopup(),this.imageQTBar&&!p(this.imageQTBar.element,"e-popup-close")&&document.body.contains(this.imageQTBar.element)&&this.imageQTBar.hidePopup(),this.tableQTBar&&!p(this.tableQTBar.element,"e-popup-close")&&document.body.contains(this.tableQTBar.element)&&this.tableQTBar.hidePopup(),!this.parent.inlineMode.enable||t.Browser.isDevice&&!u()||this.hideInlineQTBar()},n.prototype.deBounce=function(e,t,n){var i=this;clearTimeout(this.deBouncer),this.deBouncer=window.setTimeout(function(){i.showInlineQTBar(e,t,n)},1e3)},n.prototype.mouseUpHandler=function(e){if(this.parent.inlineMode.enable&&(!t.Browser.isDevice||u())){var n=e.args.touches?e.args.changedTouches[0]:e.args,i=this.parent.getRange(),o=e.args.target;if(t.isNullOrUndefined(t.select(".e-rte-inline-popup",document.body))){if(u()&&e.touchData&&e.touchData.prevClientX!==e.touchData.clientX&&e.touchData.prevClientY!==e.touchData.clientY)return;if(this.hideInlineQTBar(),this.offsetX=n.pageX,this.offsetY=g(n,this.parent.element,this.parent.iframeSettings.enable),"TEXTAREA"===o.nodeName)this.showInlineQTBar(this.offsetX,this.offsetY,o);else{var r=t.closest(o,"a");if(!("IMG"===(o=r||o).tagName||"A"===o.tagName||t.closest(o,"td,th")&&i.collapsed)){if(this.parent.inlineMode.onSelection&&i.collapsed)return;this.target=o,this.showInlineQTBar(this.offsetX,this.offsetY,o)}}}}},n.prototype.keyDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!u()||t.isNullOrUndefined(t.select(".e-rte-inline-popup",document))||this.hideInlineQTBar()},n.prototype.inlineQTBarMouseDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!u()||t.isNullOrUndefined(t.select(".e-rte-inline-popup",document))||this.hideInlineQTBar()},n.prototype.keyUpHandler=function(e){if(this.parent.inlineMode.enable&&!t.Browser.isDevice){if(this.parent.inlineMode.onSelection)return;var n=e.args;this.deBounce(this.offsetX,this.offsetY,n.target)}},n.prototype.selectionChangeHandler=function(e){var t=this;clearTimeout(this.deBouncer),this.deBouncer=window.setTimeout(function(){t.onSelectionChange(e)},1e3)},n.prototype.onSelectionChange=function(e){t.isNullOrUndefined(t.select(".e-rte-inline-popup",document.body))&&(this.contentRenderer.getDocument().getSelection().isCollapsed||this.mouseUpHandler({args:e}))},n.prototype.getInlineBaseToolbar=function(){return this.inlineQTBar&&this.inlineQTBar.quickTBarObj},n.prototype.destroy=function(){this.linkQTBar&&(t.EventHandler.remove(this.linkQTBar.element,"mousedown",this.onMouseDown),this.linkQTBar.destroy()),this.textQTBar&&(t.EventHandler.remove(this.textQTBar.element,"mousedown",this.onMouseDown),this.textQTBar.destroy()),this.imageQTBar&&(t.EventHandler.remove(this.imageQTBar.element,"mousedown",this.onMouseDown),this.imageQTBar.destroy()),this.tableQTBar&&(t.EventHandler.remove(this.tableQTBar.element,"mousedown",this.onMouseDown),this.tableQTBar.destroy()),this.inlineQTBar&&(t.EventHandler.remove(this.inlineQTBar.element,"mousedown",this.onMouseDown),u()&&t.EventHandler.remove(document,"selectionchange",this.selectionChangeHandler),this.inlineQTBar.destroy()),this.removeEventListener()},n.prototype.wireInlineQTBarEvents=function(){this.parent.on("mouseUp",this.mouseUpHandler,this),this.parent.on(W,this.inlineQTBarMouseDownHandler,this),this.parent.on(Q,this.keyDownHandler,this),this.parent.on(q,this.keyUpHandler,this),this.parent.on("sourceCodeMouseDown",this.mouseUpHandler,this),this.parent.on("renderInlineToolbar",this.renderInlineQuickToolbar,this)},n.prototype.unWireInlineQTBarEvents=function(){this.parent.off("mouseUp",this.mouseUpHandler),this.parent.off(W,this.inlineQTBarMouseDownHandler),this.parent.off(Q,this.keyDownHandler),this.parent.off(q,this.keyUpHandler),this.parent.off("sourceCodeMouseDown",this.mouseUpHandler),this.parent.off("renderInlineToolbar",this.renderInlineQuickToolbar)},n.prototype.toolbarUpdated=function(e){this.linkQTBar&&!p(this.linkQTBar.element,"e-popup-close")&&this.linkQTBar.hidePopup(),this.imageQTBar&&!p(this.imageQTBar.element,"e-popup-close")&&this.imageQTBar.hidePopup(),this.tableQTBar&&!p(this.tableQTBar.element,"e-popup-close")&&this.tableQTBar.hidePopup()},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(z,this.initializeQuickToolbars,this),this.parent.on(W,this.renderQuickToolbars,this),this.parent.on("toolbar-updated",this.toolbarUpdated,this),this.parent.on("drop",this.renderQuickToolbars,this),this.wireInlineQTBarEvents(),this.parent.on(_,this.onPropertyChanged,this),"hide"===this.parent.quickToolbarSettings.actionOnScroll&&(this.parent.on("scroll",this.hideQuickToolbars,this),this.parent.on("contentscroll",this.hideQuickToolbars,this)),this.parent.on("focusChange",this.hideQuickToolbars,this),this.parent.on("iframe-click",this.onIframeMouseDown,this),this.parent.on(F,this.destroy,this),this.parent.on(Q,this.onKeyDown,this),this.parent.on(K,this.setRtl,this))},n.prototype.onKeyDown=function(e){var t=e.args;8!==t.which&&46!==t.which||this.imageQTBar&&!p(this.imageQTBar.element,"e-popup-close")&&this.imageQTBar.hidePopup()},n.prototype.onIframeMouseDown=function(){this.hideQuickToolbars(),this.hideInlineQTBar()},n.prototype.setRtl=function(e){this.inlineQTBar&&this.inlineQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.imageQTBar&&this.imageQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.linkQTBar&&this.imageQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(z,this.initializeQuickToolbars),this.parent.off(W,this.renderQuickToolbars),this.parent.off("toolbar-updated",this.toolbarUpdated),this.parent.off("drop",this.renderQuickToolbars),this.unWireInlineQTBarEvents(),this.parent.off(_,this.onPropertyChanged),"hide"===this.parent.quickToolbarSettings.actionOnScroll&&(this.parent.off("scroll",this.hideQuickToolbars),this.parent.off("contentscroll",this.hideQuickToolbars)),this.parent.off("focusChange",this.hideQuickToolbars),this.parent.off(F,this.destroy),this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off(Q,this.onKeyDown),this.parent.off(K,this.setRtl))},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.quickToolbarSettings))for(var n=0,i=Object.keys(e.newProp.quickToolbarSettings);n<i.length;n++)switch(i[n]){case"actionOnScroll":"none"===e.newProp.quickToolbarSettings.actionOnScroll?(this.parent.off("scroll",this.hideQuickToolbars),this.parent.off("contentscroll",this.hideQuickToolbars)):(this.parent.on("scroll",this.hideQuickToolbars,this),this.parent.on("contentscroll",this.hideQuickToolbars,this))}e.module===this.getModuleName()&&(this.inlineQTBar&&(t.removeClass([this.parent.element],["e-rte-inline"]),this.unWireInlineQTBarEvents(),this.hideInlineQTBar()),!this.parent.inlineMode.enable||t.Browser.isDevice&&!u()||(t.addClass([this.parent.element],["e-rte-inline"]),this.wireInlineQTBarEvents()))},n.prototype.getModuleName=function(){return"quickToolbar"},n}(),$e=function(){function n(e,t){this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.initializeInstance=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content),this.editPanel=this.contentRenderer.getEditPanel(),this.addEventListener()},n.prototype.renderCount=function(){this.initializeInstance(),this.element=this.parent.createElement("span",{className:oe}),this.contentRenderer.getPanel().parentElement.appendChild(this.element),this.appendCount(),-1!==this.parent.maxLength&&this.charCountBackground(this.htmlLength)},n.prototype.appendCount=function(){var e="Markdown"===this.parent.editorMode?this.editPanel.value.trim():this.editPanel.textContent.trim();this.htmlLength=e.length;var t=-1===this.parent.maxLength?this.htmlLength:this.htmlLength+" / "+this.parent.maxLength;this.element.innerHTML=t},n.prototype.charCountBackground=function(e){var t=e/this.parent.maxLength*100;t<85?(this.element.classList.remove("e-warning"),this.element.classList.remove("e-error")):t>85&&t<=90?(this.element.classList.remove("e-error"),this.element.classList.add("e-warning")):t>90&&(this.element.classList.remove("e-warning"),this.element.classList.add("e-error"))},n.prototype.refresh=function(){t.isNullOrUndefined(this.editPanel)||(this.appendCount(),-1!==this.parent.maxLength&&this.charCountBackground(this.htmlLength))},n.prototype.destroy=function(){this.element&&!t.isNullOrUndefined(this.parent.element.querySelector("."+oe))&&t.detach(this.element),this.removeEventListener()},n.prototype.toggle=function(e){this.element.style.display="viewSource"===e.member?"none":"block"},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(z,this.renderCount,this),this.parent.on(q,this.refresh,this),this.parent.on("count",this.refresh,this),this.parent.on("refresh-begin",this.refresh,this),this.parent.on(W,this.refresh,this),this.parent.on(F,this.destroy,this),this.parent.on("sourceCode",this.toggle,this),this.parent.on("updateSource",this.toggle,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(z,this.renderCount),this.parent.off(q,this.refresh),this.parent.off("refresh-begin",this.refresh),this.parent.off("count",this.refresh),this.parent.off(W,this.refresh),this.parent.off(F,this.destroy),this.parent.off("sourceCode",this.toggle),this.parent.off("updateSource",this.toggle))},n.prototype.getModuleName=function(){return"count"},n}(),Ze=function(){function e(){}return e.prototype.getLineNumber=function(e,t){return e.value.substr(0,t).split("\n").length},e.prototype.getSelectedText=function(e){var t=e.selectionStart,n=e.selectionEnd;return e.value.substring(t,n)},e.prototype.getAllParents=function(e){return e.split("\n")},e.prototype.getSelectedLine=function(e){return this.getAllParents(e.value)[this.getLineNumber(e,e.selectionStart)-1]},e.prototype.getLine=function(e,t){return this.getAllParents(e.value)[t]},e.prototype.getSelectedParentPoints=function(e){var t=this.getAllParents(e.value),n=this.getLineNumber(e,e.selectionStart),i=this.getLineNumber(e,e.selectionEnd),o=this.getSelectedText(e).split("\n"),r=[],s=t[n-1],a=t.slice(0,n-1).join("").length,l={};if(l.line=n-1,l.start=a+l.line,l.end=""!==s?l.start+s.length+1:l.start+s.length,l.text=s,r.push(l),o.length>1){for(var d=1;d<o.length-1;d++){var c={};c.line=r[d-1].line+1,c.start=(o[d],r[d-1].end),c.end=c.start+o[d].length+1,c.text=o[d],r.push(c)}var p={};p.line=r[r.length-1].line+1,p.start=r[r.length-1].end,p.end=p.start+t[i-1].length+1,p.text=t[i-1],r.push(p)}return r},e.prototype.setSelection=function(e,t,n){e.setSelectionRange(t,n),e.focus()},e.prototype.save=function(e,t){this.selectionStart=e,this.selectionEnd=t},e.prototype.restore=function(e){this.setSelection(e,this.selectionStart,this.selectionEnd)},e.prototype.isStartWith=function(e,t){var n=!1;return e&&(n=(e.trim()===t.trim()?new RegExp("^("+this.replaceSpecialChar(t.trim())+")","gim"):new RegExp("^("+this.replaceSpecialChar(t)+")","gim")).test(e.trim())),n},e.prototype.replaceSpecialChar=function(e){return e.replace(/[`~!@#$%^&*()_|+\-=?;:'",.<>\{\}\[\]\\\/]/g,"\\$&")},e.prototype.isClear=function(e,t){for(var n=0;n<e.length;n++)if(new RegExp(t,"gim").test(e[n].text))return!0;return!1},e.prototype.getSelectedInlinePoints=function(e){return{start:e.selectionStart,end:e.selectionEnd,text:this.getSelectedText(e)}},e}(),et=["a","abbr","acronym","audio","b","bdi","bdo","big","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","font","i","iframe","img","input","ins","kbd","label","map","mark","meter","noscript","object","output","picture","progress","q","ruby","s","samp","script","select","slot","small","span","strong","strike","sub","sup","svg","template","textarea","time","u","tt","var","video","wbr"],tt=function(){function e(e){this.toolbarStatus=this.prevToolbarStatus=U(),this.selection=new Ze,this.parent=e,this.element=this.parent.contentModule.getEditPanel(),this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("toolbar-refresh",this.onRefreshHandler,this),this.parent.on(F,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off("toolbar-refresh",this.onRefreshHandler),this.parent.off(F,this.removeEventListener)},e.prototype.onRefreshHandler=function(e){var t=this.selection.getSelectedParentPoints(this.element);this.toolbarStatus={orderedlist:!e.documentNode&&this.isListsApplied(t,"OL"),unorderedlist:!e.documentNode&&this.isListsApplied(t,"UL"),formats:this.currentFormat(t,e.documentNode),bold:!e.documentNode&&this.parent.formatter.editorManager.mdSelectionFormats.isAppliedCommand("Bold"),italic:!e.documentNode&&this.parent.formatter.editorManager.mdSelectionFormats.isAppliedCommand("Italic"),inlinecode:!e.documentNode&&this.parent.formatter.editorManager.mdSelectionFormats.isAppliedCommand("InlineCode"),strikethrough:!e.documentNode&&this.parent.formatter.editorManager.mdSelectionFormats.isAppliedCommand("StrikeThrough"),subscript:!e.documentNode&&this.parent.formatter.editorManager.mdSelectionFormats.isAppliedCommand("SubScript"),superscript:!e.documentNode&&this.parent.formatter.editorManager.mdSelectionFormats.isAppliedCommand("SuperScript"),uppercase:!e.documentNode&&this.parent.formatter.editorManager.mdSelectionFormats.isAppliedCommand("UpperCase")},this.parent.formatter.editorManager.mdSelectionFormats.isAppliedCommand("InlineCode")&&(this.toolbarStatus.formats="pre");var n=JSON.stringify(this.toolbarStatus);this.parent.notify("toolbar-updated",this.toolbarStatus),JSON.stringify(this.prevToolbarStatus)!==n&&(this.parent.notify("updateTbItemsStatus",{html:null,markdown:JSON.parse(n)}),this.prevToolbarStatus=JSON.parse(n))},e.prototype.isListsApplied=function(e,t){var n=!0;if("OL"===t)for(o=0;o<e.length;o++){var i=e[o].text.trim().split(" ",2)[0]+" ";if(!/^[\d.]+[ ]+$/.test(i)){n=!1;break}}else for(var o=0;o<e.length;o++)if(!this.selection.isStartWith(e[o].text,this.parent.formatter.listTags[t])){n=!1;break}return n},e.prototype.currentFormat=function(e,t){for(var n="p",i=Object.keys(this.parent.formatter.formatTags),o="backward"===this.element.selectionDirection?e[0].text:e[e.length-1].text,r=0;!t&&r<i.length;r++){if("pre"!==i[r]&&this.selection.isStartWith(o,this.parent.formatter.formatTags[i[r]])){n=i[r];break}if("pre"===i[r]&&this.codeFormat()){n=i[r];break}}return n},e.prototype.codeFormat=function(){var e=!1,t=this.parent.inputElement,n=function(e){return function(t){return[t.slice(0,e),t.slice(e)]}}(t.selectionStart)(t.value),i=this.parent.formatter.formatTags.pre,o=this.getSelectedText(t);if(""!==o&&o===o.toLocaleUpperCase())return!0;if(""===o){var r=t.value.substr(n[0].length-1,1),s=n[1].substr(0,1);if(""!==r&&""!==s&&r.match(/[a-z]/i)&&r===r.toLocaleUpperCase()&&s===s.toLocaleUpperCase())return!0}return this.isCode(n[0],i)&&this.isCode(n[1],i)&&n[0].match(this.multiCharRegx(i)).length%2==1&&n[1].match(this.multiCharRegx(i)).length%2==1&&(e=!0),e},e.prototype.getSelectedText=function(e){return e.value.substring(e.selectionStart,e.selectionEnd)},e.prototype.isCode=function(e,t){return-1!==e.search("\\"+t)},e.prototype.multiCharRegx=function(e){return new RegExp("(\\"+e+")","g")},e}(),nt=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("execCommandCallBack",this.commandCallBack,this),this.parent.on(F,this.removeEventListener,this)},e.prototype.commandCallBack=function(e){"Undo"!==e.requestType&&"Redo"!==e.requestType&&this.parent.formatter.saveData(),this.parent.notify("toolbar-refresh",{args:e}),this.parent.notify("count",{})},e.prototype.removeEventListener=function(){this.parent.off("execCommandCallBack",this.commandCallBack),this.parent.off(F,this.removeEventListener)},e}(),it=function(){function e(){}return e.prototype.process=function(e,n,i,o){var r,s=this,a=e.contentModule.getDocument().getSelection(),l=a.rangeCount>0?a.getRangeAt(a.rangeCount-1):null;if("HTML"===e.editorMode&&(r=this.editorManager.nodeSelection.save(l,e.contentModule.getDocument())),t.isNullOrUndefined(n)||!n.item.command||"Table"===n.item.command||"Actions"===n.item.command||"Links"===n.item.command||"Images"===n.item.command||"Files"===n.item.command||!l||e.contentModule.getEditPanel().contains(this.getAncestorNode(l.commonAncestorContainer))||e.contentModule.getEditPanel()===l.commonAncestorContainer||e.contentModule.getPanel()===l.commonAncestorContainer){if(t.isNullOrUndefined(n)){var d=i.action;if("tab"!==d&&"enter"!==d&&"space"!==d&&"escape"!==d){n={},"Markdown"===e.editorMode&&"insert-table"===d&&(o={headingText:e.localeObj.getConstant("TableHeadingText"),colText:e.localeObj.getConstant("TableColText")});var c={originalEvent:i,cancel:!1,requestType:d||i.key+"Key",itemCollection:o};t.extend(n,n,c,!0),t.isBlazor()&&(delete n.item,delete n.itemCollection),e.trigger("actionBegin",n,function(e){e.cancel&&("paste"!==d&&"cut"!==d&&"copy"!==d||i.preventDefault())})}var p=!!t.isNullOrUndefined(e.tableModule)||!!e.tableModule&&e.tableModule.ensureInsideTableList;(9===i.which&&p||9!==i.which)&&this.editorManager.observer.notify("keydown"===i.type?"keydown":"keyup",{event:i,callBack:this.onSuccess.bind(this,e),value:o})}else!t.isNullOrUndefined(n)&&n.item.command&&n.item.subCommand&&(n.item.command!==n.item.subCommand&&"Font"!==n.item.command||("FontName"===n.item.subCommand||"FontSize"===n.item.subCommand)&&"dropDownSelect"===n.name||("BackgroundColor"===n.item.subCommand||"FontColor"===n.item.subCommand)&&"colorPickerChanged"===n.name)&&(t.extend(n,n,{requestType:n.item.subCommand,cancel:!1,itemCollection:o},!0),e.trigger("actionBegin",n,function(t){if(!t.cancel){0===s.getUndoRedoStack().length&&"Links"!==t.item.command&&"Images"!==t.item.command&&s.saveData(),e.isBlur=!1,e.contentModule.getEditPanel().focus(),"HTML"===e.editorMode&&r.restore();var a=t.item.subCommand.toLocaleLowerCase();"paste"===a||"cut"===a||"copy"===a?e.clipboardAction(a,i):(s.editorManager.observer.notify(X,{subCommand:t.item.subCommand}),s.editorManager.execCommand(t.item.command,t.item.subCommand,i,s.onSuccess.bind(s,e),t.item.value,"Pre"===t.item.subCommand&&"dropDownSelect"===n.name?{name:n.name}:o,"#"+e.getID()+" iframe"))}}));(t.isNullOrUndefined(i)||i&&"copy"!==i.action)&&this.enableUndo(e)}},e.prototype.getAncestorNode=function(e){return e=3===e.nodeType?e.parentNode:e},e.prototype.onKeyHandler=function(e,t){var n=this;this.editorManager.observer.notify("keyup",{event:t,callBack:function(){e.notify("content-changed",{}),n.enableUndo(e)}})},e.prototype.onSuccess=function(e,n){e.notify("content-changed",{}),n&&(t.isNullOrUndefined(n.event)||"copy"!==n.event.action)&&(this.enableUndo(e),e.notify("execCommandCallBack",n)),e.trigger("actionComplete",n,function(t){if(e.setPlaceHolder(),"Images"===t.requestType||"Links"===t.requestType&&"HTML"===e.editorMode){var n=t;if("Links"===t.requestType&&t.event&&"keydown"===t.event.type&&32===t.event.keyCode)return;e.notify("insertCompleted",{args:n.event,type:t.requestType,isNotify:!0,elements:n.elements})}e.autoResize()})},e.prototype.saveData=function(e){this.editorManager.undoRedoManager.saveData(e)},e.prototype.getUndoStatus=function(){return this.editorManager.undoRedoManager.getUndoStatus()},e.prototype.getUndoRedoStack=function(){return this.editorManager.undoRedoManager.undoRedoStack},e.prototype.enableUndo=function(e){var n=this.getUndoStatus();!e.inlineMode.enable||t.Browser.isDevice&&!u()?e.toolbarModule&&C(e.toolbarModule.baseToolbar,n):C(e.quickToolbarModule.inlineQTBar.quickTBarObj,n)},e}(),ot=function(){function e(e){t.extend(this,this,e,!0),this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("lists-commands",this.applyListsHandler,this),this.parent.observer.on("keydown-handler",this.keyDownHandler,this),this.parent.observer.on("keyup-handler",this.keyUpHandler,this)},e.prototype.keyDownHandler=function(e){switch(e.event.which){case 9:this.tabKey(e)}switch(e.event.action){case"ordered-list":this.applyListsHandler({subCommand:"OL",callBack:e.callBack}),e.event.preventDefault();break;case"unordered-list":this.applyListsHandler({subCommand:"UL",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.keyUpHandler=function(e){switch(e.event.which){case 13:this.enterKey(e)}},e.prototype.tabKey=function(e){var t=this.parent.element;this.selection.save(t.selectionStart,t.selectionEnd);var n=t.selectionStart,i=t.selectionEnd,o=this.selection.getSelectedParentPoints(t),r=0,s=this.isNotFirstLine(t,o[0]);if(!s&&!e.event.shiftKey)return void this.restore(t,n,i+r,e);var a=this.olListType(),l=this.getListRegex();this.currentAction=this.getAction(o[0].text);for(var d=0;d<o.length;d++){var c=(e.event.shiftKey,o[d].line-1),p=this.selection.getLine(t,c);if(p&&(!e.event.shiftKey&&s||e.event.shiftKey)){var h=p.split(". "),u=e.event.shiftKey?-"\t".length:"\t".length,m=o[d].text.split("\t");if(e.event.shiftKey&&1===m.length)break;if("OL"===this.currentAction&&/^\d+$/.test(h[0].trim())&&a){e.event.preventDefault(),o[d].text=e.event.shiftKey?m.splice(1,m.length).join("\t"):"\t"+o[d].text;var g=this.getTabSpace(o[d].text),f=this.getTabSpace(p),b=o[d].text.split(". ");if(g===f)this.changeTextAreaValue(b,this.nextOrderedListValue(h[0].trim()),e,t,o,d,i);else if(f<g)this.changeTextAreaValue(b,"1. ",e,t,o,d,i);else for(;f.length>g.length;null){c-=1;var v=(p=this.selection.getLine(t,c)).trim().split(". ");if(/^\d+$/.test(v[0])&&(f=this.getTabSpace(p)).length<=g.length){this.changeTextAreaValue(b,this.nextOrderedListValue(v[0]),e,t,o,d,i);break}}}else("UL"===this.currentAction&&l.test(p.trim())||!a)&&(e.event.preventDefault(),o[d].text=e.event.shiftKey?m.splice(1,m.length).join("\t"):"\t"+o[d].text,t.value=t.value.substr(0,o[d].start)+o[d].text+"\n"+t.value.substr(o[d].end,t.value.length));if(n=0===d?n+u:n,r+=u,1!==o.length)for(var y=d;y<o.length;y++)o[y].start=0!==y?o[y].start+u:o[y].start,o[y].end=o[y].end+u}}this.restore(t,n,i+r,e)},e.prototype.changeTextAreaValue=function(e,n,i,o,r,s,a){var l=n;e.splice(0,1);var d,c=this.selection.getAllParents(o.value).length,p="",h=this.getTabSpace(r[s].text),u=parseInt(l.split(".")[0],null),m=this.getTabSpace(r[s].text),g=!0,f=!0,b=-1,v=!0,y=0,C="";p=""!==this.selection.getLine(o,r[0].line+1)?"":p+o.value.substr(r[0].end,o.value.length);for(var S=1;S<c&&!t.isNullOrUndefined(this.selection.getLine(o,r[0].line+S))&&""!==this.selection.getLine(o,r[0].line+S);S++){var T=this.selection.getLine(o,r[0].line+S),E=this.getTabSpace(T),N=T.split(". ");if(1===N.length){p+=o.value.substr(r[0].end+y,o.value.length);break}y+=T.length;var w=!1;if(d=i.event.shiftKey?h.length+1:h.length-1,E.length>m.length&&(v=!1),h.length!==E.length&&E.length<m.length?(f=!0,g=!1,w=!(!i.event.shiftKey||h.length!==E.length)&&(f=!1,!0)):v&&i.event.shiftKey&&h.length===E.length&&E.length===m.length&&(f=!1,w=!0),C=""===p?"":"\n",d===E.length&&f){k=i.event.shiftKey?(b++,this.nextOrderedListValue(b.toString())):this.previousOrderedListValue(N[0]);N.splice(0,1),p=p+C+E+k+N.join(". ")}else if(h.length===E.length&&g||w){var k=this.nextOrderedListValue(u.toString());u++,N.splice(0,1),p=p+C+E+k+N.join(". ")}else p=p+C+T,f=!1;m=this.getTabSpace(T)}r[s].text=this.getTabSpace(r[s].text)+l+e.join(". ")+"\n",o.value=o.value.substr(0,r[s].start)+r[s].text+p},e.prototype.getTabSpace=function(e){for(var t=e.split("\t"),n="",i=0;i<t.length&&""===t[i];i++)n+="\t";return n},e.prototype.isNotFirstLine=function(e,t){var n,i=t.text,o=t.line-1,r=this.selection.getLine(e,o),s=this.getListRegex(),a=!1;if(r){this.currentAction=this.getAction(r);c=r.split(". ");n="OL"===this.currentAction?/^\d+$/.test(c[0].trim()):s.test(r.trim())}if(r&&n){var l=this.getTabSpace(i),d=this.getTabSpace(r);for(a=l===d||a;d.length>l.length;null){o-=1;var c=(r=this.selection.getLine(e,o)).trim().split(". ");if(("OL"===this.currentAction?/^\d+$/.test(c[0]):s.test(r.trim()))&&(d=this.getTabSpace(r)).length<=l.length){a=!0;break}}}return a},e.prototype.getAction=function(e){var t=e.split(". ")[0],n=/^\d+$/.test(t.trim()),i=e.trim().split(new RegExp("^("+this.selection.replaceSpecialChar(this.syntax.UL).trim()+")"))[1];return n?"OL":i?"UL":"NOTLIST"},e.prototype.nextOrderedListValue=function(e){return(parseInt(e,null)+1).toString()+". "},e.prototype.previousOrderedListValue=function(e){return(parseInt(e,null)-1).toString()+". "},e.prototype.enterKey=function(e){var n=this.parent.element;this.selection.save(n.selectionStart,n.selectionEnd);var i=n.selectionStart,o=n.selectionEnd,r=this.selection.getSelectedParentPoints(n),s=this.selection.getLine(n,r[0].line-1),a=this.olListType(),l=this.getListRegex(),d=[];t.isNullOrUndefined(s)||(d=s.split(". "),this.currentAction=this.getAction(s));var c=0;if("OL"===this.currentAction&&d.length>1&&/^\d+$/.test(d[0].trim())&&a&&""!==d[1]){S=this.getTabSpace(s);this.currentAction=this.getAction(s);T=this.nextOrderedListValue(d[0]);r[0].text=S+T+r[0].text;for(var p=this.selection.getAllParents(n.value).length,h="\n",u=this.getTabSpace(s),m=this.getTabSpace(r[0].text),g=!0,f=1;f<p&&""!==n.value.substr(r[0].end,n.value.length);f++){var b=this.selection.getLine(n,r[0].line+f);if(t.isNullOrUndefined(b))h+="";else{var v=b.split(". "),y=this.getTabSpace(b);if(y.length<m.length&&(g=!1),v.length>1&&/^\d+$/.test(v[0].trim())&&u.length===y.length&&g){var C=this.nextOrderedListValue(v[0]);v.splice(0,1),h=h+y+C+v.join(". ")+"\n"}else h=h+b+"\n",m=this.getTabSpace(b)}}n.value=n.value.substr(0,r[0].start)+u+T+this.selection.getLine(n,r[0].line)+h,i=i+T.length+S.length,c+=T.length+S.length}else if("UL"===this.currentAction&&s&&l.test(s.trim())&&""!==s.trim().replace(l,"")||"OL"===this.currentAction&&!a){var S=this.getTabSpace(s),T=this.syntax[this.currentAction];r[0].text=S+T+r[0].text+(r[0].text.trim().length>0?"\n":""),n.value=n.value.substr(0,r[0].start)+r[0].text+n.value.substr(r[0].end,n.value.length),i=i+T.length+S.length,c+=T.length+S.length}this.restore(n,i,o+c,e)},e.prototype.olListType=function(){var e=this.syntax.OL.split(".,");return(1===e.length?null:parseInt(e[2].trim(),null)-parseInt(e[0].trim(),null))?1:0},e.prototype.applyListsHandler=function(e){var n=this.parent.element;this.selection.save(n.selectionStart,n.selectionEnd),this.currentAction=e.subCommand;for(var i,o=n.selectionStart,r=n.selectionEnd,s=0,a=0,l=0,d=this.selection.getSelectedParentPoints(n),c="",p=this.olListType(),h={},u=0;u<d.length;u++)if(i=p?"OL"===this.currentAction?u+p+". ":this.syntax[this.currentAction]:"OL"===this.currentAction?this.syntax.OL:this.syntax[this.currentAction],this.selection.isStartWith(d[u].text,i))d[u].text=d[u].text.replace(i,""),n.value=n.value.substr(0,d[u].start+l)+d[u].text+"\n"+n.value.substr(d[u].end+l,n.value.length),l-=i.length,a=i.length,this.restore(n,o-a,r+l,null);else{if(""===d[u].text&&0===u&&(this.selection.save(o,r),1!==d.length))for(f=u;f<d.length;f++)d[f].start=0!==f?1+d[f].start:d[f].start,d[f].end=1+d[f].end;var m=t.isNullOrUndefined(d[u-1])?0:this.getTabSpace(d[u-1].text).length,g=this.appliedLine(d[u].text,i,h,m);if(c=g.line?c:i,d[u].text=g.line?g.line:c+d[u].text,g.space=g.space?g.space:0,n.value=n.value.substr(0,d[u].start+l)+d[u].text+"\n"+n.value.substr(d[u].end,n.value.length),o=0===u?o+c.length+g.space>0?o+c.length+g.space:0:o,s+=c.length+g.space,1!==d.length)for(var f=u;f<d.length;f++)d[f].start=0!==f?c.length+d[f].start+g.space:d[f].start,d[f].end=c.length+d[f].end+g.space;this.restore(n,o,r+s,null)}this.restore(n,null,null,e)},e.prototype.appliedLine=function(e,n,i,o){var r={},s=new RegExp("^["+this.syntax.UL.trim()+"]"),a=e.split(". "),l=a[0]+". ",d=s.test(e.trim())||e.trim()===this.syntax.OL.trim()||e.trim()===this.syntax.UL.trim()||/^\d+$/.test(a[0].trim()),c=this.olListType(),p=this.getTabSpace(e).length;if("OL"===this.currentAction&&c&&(i[p.toString()]=t.isNullOrUndefined(i[p.toString()])?1:i[p.toString()].valueOf()+1,n=i[p.toString()].valueOf().toString()+". ",!t.isNullOrUndefined(o)&&o>p&&(i[o.toString()]=0)),d){var h=void 0,u=void 0;s.test(e.trim())?(u=this.syntax.UL,h=n,r.space=n.trim().length-this.syntax.UL.trim().length):/^\d+$/.test(a[0].trim())&&c?(u=a[0].trim()+". ",h=n,r.space=this.syntax.UL.trim().length-l.trim().length):/^\d+$/.test(a[0].trim())&&(u=a[0].trim()+". ",h=this.syntax.UL,r.space=this.syntax.UL.trim().length-l.trim().length),r.line=e.replace(u,h)}return r},e.prototype.restore=function(e,n,i,o){t.isNullOrUndefined(n)||t.isNullOrUndefined(n)||this.selection.save(n,i),t.isNullOrUndefined(o)||this.selection.restore(e),o&&o.callBack&&o.callBack({requestType:this.currentAction,selectedText:this.selection.getSelectedText(e),editorMode:"Markdown",event:o.event})},e.prototype.getListRegex=function(){for(var e="",t=Object.keys(this.syntax),n=0;n<t.length;n++){var i=this.selection.replaceSpecialChar(this.syntax[t[n]]);e+=""===e?"^("+i+")|^("+i.trim()+")":"|^("+i+")|^("+i.trim()+")"}return new RegExp(e)},e}(),rt=function(){function e(e){t.extend(this,this,e,!0),this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("format-type",this.applyFormats,this)},e.prototype.applyFormats=function(e){e.subCommand=e.subCommand.toLowerCase();var n=this.parent.element;this.selection.save(n.selectionStart,n.selectionEnd);var i=this.selection.getSelectedParentPoints(n);if(this.isAppliedFormat(i)===e.subCommand){if("pre"===e.subCommand){if(!(i.length>1))return;this.applyCodeBlock(n,e,i)}return this.cleanFormat(n),void this.restore(n,n.selectionStart,n.selectionEnd,e)}if("p"===e.subCommand)return this.cleanFormat(n),void this.restore(n,n.selectionStart,n.selectionEnd,e);("pre"===e.subCommand&&1!==i.length||"pre"!==e.subCommand)&&this.cleanFormat(n,e.subCommand);var o=n.selectionStart,r=n.selectionEnd,s=0;if(i=this.selection.getSelectedParentPoints(n),"pre"===e.subCommand)return void(i.length>1?this.applyCodeBlock(n,e,i):(t.extend(e,e,{subCommand:"InlineCode"},!0),this.parent.observer.notify("command-type",e)));for(var a=0;a<i.length;a++)if(""===i[a].text||this.selection.isStartWith(i[a].text,"\\"+this.syntax[e.subCommand])){if(""===i[a].text&&0===a&&(this.selection.save(o,r),1!==i.length))for(l=a;l<i.length;l++)i[l].start=0!==l?1+i[l].start:i[l].start,i[l].end=1+i[l].end}else if(i[a].text=this.syntax[e.subCommand]+i[a].text,n.value=n.value.substr(0,i[a].start)+i[a].text+"\n"+n.value.substr(i[a].end,n.value.length),o=0===a?o+this.syntax[e.subCommand].length:o,s+=this.syntax[e.subCommand].length,1!==i.length)for(var l=a;l<i.length;l++)i[l].start=0!==l?this.syntax[e.subCommand].length+i[l].start:i[l].start,i[l].end=this.syntax[e.subCommand].length+i[l].end;this.restore(n,o,r+s,e)},e.prototype.clearRegex=function(){for(var e="",t=Object.keys(this.syntax),n=0;n<t.length&&"pre"!==t[n]&&"p"!==t[n];n++)e+=""===e?"^("+this.selection.replaceSpecialChar(this.syntax[t[n]].trim())+")":"|^("+this.selection.replaceSpecialChar(this.syntax[t[n]].trim())+")";return e},e.prototype.cleanFormat=function(e,t){var n=this.selection.getSelectedParentPoints(e),i=e.selectionStart,o=e.selectionEnd,r=0;if(this.selection.isClear(n,this.clearRegex())){for(var s=0;s<n.length;s++){for(var a=Object.keys(this.syntax),l=0;""!==n[s].text&&l<a.length;l++){var d=this.syntax[a[l]];if(a[l]!==t){var c=new RegExp("^("+this.selection.replaceSpecialChar(d)+")","gim");if(c.test(n[s].text)){if(n[s].text=n[s].text.replace(c,""),e.value=e.value.substr(0,n[s].start)+n[s].text+"\n"+e.value.substr(n[s].end,e.value.length),i=0===s?i-d.length>0?i-d.length:0:i,r+=d.length,1!==n.length)for(var p=0;p<n.length;p++)n[p].start=0!==p?n[p].start-d.length:n[p].start,n[p].end=n[p].end-d.length;break}}}if(""===n[s].text&&0===s&&(this.selection.save(i,o),1!==n.length))for(l=s;l<n.length;l++)n[l].start=0!==l?1+n[l].start:n[l].start,n[l].end=1+n[l].end}this.restore(e,i,o-r)}},e.prototype.applyCodeBlock=function(e,t,n){var i=t.subCommand,o=n[0].start,r=n[n.length-1].end,s=this.selection.getAllParents(e.value),a=s[n[0].line-1],l=s[n.length+1+1];if(this.selection.isStartWith(a,this.syntax.pre.split("\n")[0])||this.selection.isStartWith(l,this.syntax.pre.split("\n")[0])){var d=this.syntax[i],c=this.parent.markdownSelection.getSelectedInlinePoints(e),p=e.value.substr(0,e.selectionStart).lastIndexOf(d),h=e.value.substr(e.selectionEnd,e.selectionEnd).indexOf(d);h+=c.end;var u=this.replaceAt(e.value.substr(0,c.start),d,"",p,c.start),m=this.replaceAt(e.value.substr(c.end,e.value.length),d,"",0,h);e.value=u+c.text+m,o=this.selection.selectionStart-d.length,r=this.selection.selectionEnd-d.length}else{var g=e.value.substring(o,r).split("\n"),f=""===g[g.length-1]?"":"\n";e.value=e.value.substr(0,o)+this.syntax[i]+e.value.substring(o,r)+f+this.syntax[i]+e.value.substr(r,e.value.length),o=this.selection.selectionStart+this.syntax[i].length,r=this.selection.selectionEnd+this.syntax[i].length-1}this.restore(e,o,r,t)},e.prototype.replaceAt=function(e,t,n,i,o){return e.slice(0,i)+e.slice(i,o).replace(t,n)+e.slice(o)},e.prototype.restore=function(e,t,n,i){this.selection.save(t,n),this.selection.restore(e),i&&i.callBack&&i.callBack({requestType:i.subCommand,selectedText:this.selection.getSelectedText(e),editorMode:"Markdown",event:i.event})},e.prototype.isAppliedFormat=function(e,t){for(var n="p",i=(Object.keys(this.syntax),Object.keys(this.syntax)),o="backward"===this.parent.element.selectionDirection?e[0].text:e[e.length-1].text,r=0;!t&&r<i.length;r++){if("pre"!==i[r]&&this.selection.isStartWith(o,this.syntax[i[r]])){n=i[r];break}if("pre"===i[r]){var s=this.selection.getAllParents(this.parent.element.value),a=s[e[0].line-1],l=s[e.length+1];if(this.selection.isStartWith(a,this.syntax[i[r]].split("\n")[0])&&this.selection.isStartWith(l,this.syntax[i[r]].split("\n")[0])){n=i[r];break}}}return n},e}(),st=function(){function e(e){t.extend(this,this,e,!0),this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("command-type",this.applyCommands,this),this.parent.observer.on("keydown-handler",this.keyDownHandler,this)},e.prototype.keyDownHandler=function(e){switch(e.event.action){case"bold":this.applyCommands({subCommand:"Bold",callBack:e.callBack}),e.event.preventDefault();break;case"italic":this.applyCommands({subCommand:"Italic",callBack:e.callBack}),e.event.preventDefault();break;case"strikethrough":this.applyCommands({subCommand:"StrikeThrough",callBack:e.callBack}),e.event.preventDefault();break;case"uppercase":this.applyCommands({subCommand:"UpperCase",callBack:e.callBack}),e.event.preventDefault();break;case"lowercase":this.applyCommands({subCommand:"LowerCase",callBack:e.callBack}),e.event.preventDefault();break;case"superscript":this.applyCommands({subCommand:"SuperScript",callBack:e.callBack}),e.event.preventDefault();break;case"subscript":this.applyCommands({subCommand:"SubScript",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.isBold=function(e,t){return-1!==e.search("\\"+t+"\\"+t)},e.prototype.isItalic=function(e,t){return-1!==e.search("\\"+t)},e.prototype.isMatch=function(e,t){var n=[""];switch(t){case this.syntax.Italic:case this.syntax.InlineCode:case this.syntax.StrikeThrough:n=e.match(this.singleCharRegx(t))}return n},e.prototype.multiCharRegx=function(e){return new RegExp("(\\"+e+"\\"+e+")","g")},e.prototype.singleCharRegx=function(e){return new RegExp("(\\"+e+")","g")},e.prototype.isAppliedCommand=function(e){var n=!1,i=this.parent.element,o=function(e){return function(t){return[t.slice(0,e),t.slice(e)]}}(i.selectionStart)(i.value),r=this.syntax.Bold.substr(0,1),s=this.syntax.Italic,a=this.parent.markdownSelection.getSelectedText(i);if(""!==a&&a===a.toLocaleUpperCase()&&"UpperCase"===e)return!0;if(""===a){var l=i.value.substr(o[0].length-1,1),d=o[1].substr(0,1);if(""!==l&&""!==d&&l.match(/[a-z]/i)&&l===l.toLocaleUpperCase()&&d===d.toLocaleUpperCase()&&"UpperCase"===e)return!0}return this.isBold(o[0],r)||this.isItalic(o[0],s)||this.isBold(o[1],r)||this.isItalic(o[1],s)||(t.isNullOrUndefined(this.isMatch(o[0],this.syntax.StrikeThrough))||t.isNullOrUndefined(this.isMatch(o[1],this.syntax.StrikeThrough))||this.isMatch(o[0],this.syntax.StrikeThrough).length%2!=1||this.isMatch(o[1],this.syntax.StrikeThrough).length%2!=1||"StrikeThrough"!==e||(n=!0),t.isNullOrUndefined(this.isMatch(o[0],this.syntax.InlineCode))||t.isNullOrUndefined(this.isMatch(o[1],this.syntax.InlineCode))||this.isMatch(o[0],this.syntax.InlineCode).length%2!=1||this.isMatch(o[1],this.syntax.InlineCode).length%2!=1||"InlineCode"!==e||(n=!0),t.isNullOrUndefined(o[0].match(/\<sub>/g))||t.isNullOrUndefined(o[1].match(/\<\/sub>/g))||o[0].match(/\<sub>/g).length%2!=1||o[1].match(/\<\/sub>/g).length%2!=1||"SubScript"!==e||(n=!0),t.isNullOrUndefined(o[0].match(/\<sup>/g))||t.isNullOrUndefined(o[1].match(/\<\/sup>/g))||o[0].match(/\<sup>/g).length%2!=1||o[1].match(/\<\/sup>/g).length%2!=1||"SuperScript"!==e||(n=!0)),this.isBold(o[0],r)&&this.isBold(o[1],r)&&o[0].match(this.multiCharRegx(r)).length%2==1&&o[1].match(this.multiCharRegx(r)).length%2==1&&"Bold"===e&&(n=!0),o[0]=this.isBold(o[0],r)?o[0].replace(this.multiCharRegx(r),"$%@"):o[0],o[1]=this.isBold(o[1],r)?o[1].replace(this.multiCharRegx(r),"$%@"):o[1],t.isNullOrUndefined(this.isMatch(o[0],this.syntax.Italic))||t.isNullOrUndefined(this.isMatch(o[1],this.syntax.Italic))||this.isMatch(o[0],this.syntax.Italic).length%2!=1||this.isMatch(o[1],this.syntax.Italic).length%2!=1||"Italic"!==e||(n=!0),t.isNullOrUndefined(this.isMatch(o[0],this.syntax.StrikeThrough))||t.isNullOrUndefined(this.isMatch(o[1],this.syntax.StrikeThrough))||this.isMatch(o[0],this.syntax.StrikeThrough).length%2!=1||this.isMatch(o[1],this.syntax.StrikeThrough).length%2!=1||"StrikeThrough"!==e||(n=!0),t.isNullOrUndefined(this.isMatch(o[0],this.syntax.InlineCode))||t.isNullOrUndefined(this.isMatch(o[1],this.syntax.InlineCode))||this.isMatch(o[0],this.syntax.InlineCode).length%2!=1||this.isMatch(o[1],this.syntax.InlineCode).length%2!=1||"InlineCode"!==e||(n=!0),t.isNullOrUndefined(o[0].match(/\<sub>/g))||t.isNullOrUndefined(o[1].match(/\<\/sub>/g))||o[0].match(/\<sub>/g).length%2!=1||o[1].match(/\<\/sub>/g).length%2!=1||"SubScript"!==e||(n=!0),t.isNullOrUndefined(o[0].match(/\<sup>/g))||t.isNullOrUndefined(o[1].match(/\<\/sup>/g))||o[0].match(/\<sup>/g).length%2!=1||o[1].match(/\<\/sup>/g).length%2!=1||"SuperScript"!==e||(n=!0),n},e.prototype.applyCommands=function(e){this.currentAction=e.subCommand;var t=this.parent.element;this.selection.save(t.selectionStart,t.selectionEnd);var n=t.selectionStart,i=t.selectionEnd,o=0,r=this.parent.markdownSelection.getSelectedInlinePoints(t);if(this.isAppliedCommand(e.subCommand)&&""!==r.text){var s=this.syntax[e.subCommand],a="SubScript"===e.subCommand?"</sub>":"SuperScript"===e.subCommand?"</sup>":this.syntax[e.subCommand],l="UpperCase"===e.subCommand||"LowerCase"===e.subCommand?0:s.length,d=t.value.substr(0,r.start).lastIndexOf(s),c=t.value.substr(r.end,t.value.length).indexOf(a);c+=r.end;var p=this.replaceAt(t.value.substr(0,r.start),s,"",d,r.start),h=this.replaceAt(t.value.substr(r.end,t.value.length),a,"",0,c);return t.value=p+r.text+h,void this.restore(t,n-l,i-l,e)}if(""===r.text||this.isApplied(r,e.subCommand))"UpperCase"!==e.subCommand&&"LowerCase"!==e.subCommand?("SubScript"===e.subCommand||"SuperScript"===e.subCommand?(r.text=this.textReplace(r.text,e.subCommand),r.text=this.syntax[e.subCommand]+r.text+"</"+this.syntax[e.subCommand].substring(1,5)):(r.text=this.textReplace(r.text,e.subCommand),r.text=this.syntax[e.subCommand]+r.text+this.syntax[e.subCommand]),t.value=t.value.substr(0,r.start)+r.text+t.value.substr(r.end,t.value.length),o=this.syntax[e.subCommand].length,r.start===r.end?this.restore(t,n+o,i+o,e):this.restore(t,n+o,i-o,e)):this.restore(t,n,i,e);else{o="UpperCase"===e.subCommand||"LowerCase"===e.subCommand?0:this.syntax[e.subCommand].length;var u=t.value.substr(r.start-this.syntax[e.subCommand].length,this.syntax[e.subCommand].length),m=void 0;if(u===e.subCommand||r.start-this.syntax[e.subCommand].length===t.value.indexOf(this.syntax[e.subCommand])&&(r.end===t.value.lastIndexOf(this.syntax[e.subCommand])||r.end===t.value.lastIndexOf("</"+this.syntax[e.subCommand].substring(1,5)))){m="SubScript"===e.subCommand||"SuperScript"===e.subCommand?t.value.substr(r.end,this.syntax[e.subCommand].length+1):t.value.substr(r.end,this.syntax[e.subCommand].length);var p=this.replaceAt(t.value.substr(0,r.start),u,"",r.start-this.syntax[e.subCommand].length,r.start),h=this.replaceAt(t.value.substr(r.end,t.value.length),m,"",0,m.length);t.value=p+r.text+h,this.restore(t,n-o,i-o,e)}else"SubScript"===e.subCommand||"SuperScript"===e.subCommand?r.text=this.syntax[e.subCommand]+r.text+"</"+this.syntax[e.subCommand].substring(1,5):"UpperCase"===e.subCommand||"LowerCase"===e.subCommand?r.text="UpperCase"===e.subCommand?r.text.toUpperCase():r.text.toLowerCase():r.text=this.syntax[e.subCommand]+r.text+this.syntax[e.subCommand],t.value=t.value.substr(0,r.start)+r.text+t.value.substr(r.end,t.value.length),this.restore(t,n+o,i+o,e)}this.parent.undoRedoManager.saveData()},e.prototype.replaceAt=function(e,t,n,i,o){return e.slice(0,i)+e.slice(i,o).replace(t,n)+e.slice(o)},e.prototype.restore=function(e,t,n,i){this.selection.save(t,n),this.selection.restore(e),i&&i.callBack&&i.callBack({requestType:this.currentAction,selectedText:this.selection.getSelectedText(e),editorMode:"Markdown",event:i.event})},e.prototype.textReplace=function(e,t){var n=this.singleCharRegx(this.syntax[t]);switch(t){case"Bold":n=this.multiCharRegx(this.syntax[t].substr(0,1)),e=e.replace(n,"");break;case"Italic":if(this.isBold(e,this.syntax[t].substr(0,1))){var i=this.multiCharRegx(this.syntax[t].substr(0,1)),o=e;o=o.replace(i,"$%@").replace(n,"");var r=new RegExp("\\$%@","g");e=o.replace(r,this.syntax[t].substr(0,1)+this.syntax[t].substr(0,1))}else e=e.replace(n,"");break;case"StrikeThrough":case"InlineCode":e=e.replace(n,"");break;case"SubScript":e=e.replace(/<sub>/g,"").replace(/<\/sub>/g,"");break;case"SuperScript":e=e.replace(/<sup>/g,"").replace(/<\/sup>/g,"")}return e},e.prototype.isApplied=function(e,t){var n=this.singleCharRegx(this.syntax[t]);switch(t){case"SubScript":case"SuperScript":return(n=this.singleCharRegx(this.syntax[t])).test(e.text);case"Bold":case"StrikeThrough":return(n=this.multiCharRegx(this.syntax[t].substr(0,1))).test(e.text);case"UpperCase":case"LowerCase":return(n=new RegExp("^["+this.syntax[t]+"]*$","g")).test(e.text);case"Italic":var i=void 0,o=this.multiCharRegx(this.syntax[t].substr(0,1));if(o.test(e.text)){var r=e.text;r=r.replace(o,"$%#"),i=n.test(r)}else i=n.test(e.text);return i;case"InlineCode":return n.test(e.text)}},e}(),at={h6:"###### ",h5:"##### ",h4:"#### ",h3:"### ",h2:"## ",h1:"# ",blockquote:"> ",pre:"```\n",p:""},lt={Bold:"**",Italic:"*",StrikeThrough:"~~",InlineCode:"`",SubScript:"<sub>",SuperScript:"<sup>",UpperCase:"A-Z",LowerCase:"a-z"},dt={OL:"1. ",UL:"- "},ct={"toolbar-focus":"alt+f10",escape:"27","insert-link":"ctrl+k","insert-image":"ctrl+shift+i","insert-table":"ctrl+shift+e",undo:"ctrl+z",redo:"ctrl+y",copy:"ctrl+c",cut:"ctrl+x",paste:"ctrl+v",bold:"ctrl+b",italic:"ctrl+i",underline:"ctrl+u",strikethrough:"ctrl+shift+s",uppercase:"ctrl+shift+u",lowercase:"ctrl+shift+l",superscript:"ctrl+shift+=",subscript:"ctrl+=",indents:"ctrl+]",outdents:"ctrl+[","html-source":"ctrl+shift+h","full-screen":"ctrl+shift+f","decrease-fontsize":"ctrl+shift+<","increase-fontsize":"ctrl+shift+>","justify-center":"ctrl+e","justify-full":"ctrl+j","justify-left":"ctrl+l","justify-right":"ctrl+r","clear-format":"ctrl+shift+r","ordered-list":"ctrl+shift+o","unordered-list":"ctrl+alt+o",space:"32",enter:"13",tab:"tab",delete:"46"},pt={"toolbar-focus":"alt+f10",escape:"27","insert-link":"ctrl+k","insert-image":"ctrl+shift+i","insert-table":"ctrl+shift+e",undo:"ctrl+z",redo:"ctrl+y",copy:"ctrl+c",cut:"ctrl+x",paste:"ctrl+v",bold:"ctrl+b",italic:"ctrl+i",strikethrough:"ctrl+shift+s",uppercase:"ctrl+shift+u",lowercase:"ctrl+shift+l",superscript:"ctrl+shift+=",subscript:"ctrl+=","full-screen":"ctrl+shift+f","ordered-list":"ctrl+shift+o","unordered-list":"ctrl+alt+o"},ht={b:["strong"],strong:["b"],i:["emp","cite"],emp:["i","cite"],cite:["i","emp"]},ut={first:"MsoListParagraphCxSpFirst",middle:"MsoListParagraphCxSpMiddle",last:"MsoListParagraphCxSpLast"},mt=["BR","IMG"],gt=function(){function e(e,n){this.undoRedoStack=[],this.parent=e,this.undoRedoSteps=t.isNullOrUndefined(n)?30:n.undoRedoSteps,this.undoRedoTimer=t.isNullOrUndefined(n)?300:n.undoRedoTimer,this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){var e=t.debounce(this.keyUp,this.undoRedoTimer);this.parent.observer.on("keyup-handler",e,this),this.parent.observer.on("keydown-handler",this.keyDown,this),this.parent.observer.on("action",this.onAction,this),this.parent.observer.on("model_changed_plugin",this.onPropertyChanged,this)},e.prototype.onPropertyChanged=function(e){for(var t=0,n=Object.keys(e.newProp);t<n.length;t++)switch(n[t]){case"undoRedoSteps":this.undoRedoSteps=e.newProp.undoRedoSteps;break;case"undoRedoTimer":this.undoRedoTimer=e.newProp.undoRedoTimer}},e.prototype.removeEventListener=function(){var e=t.debounce(this.keyUp,300);this.parent.observer.off("keyup-handler",e),this.parent.observer.off("keydown-handler",this.keyDown),this.parent.observer.off("action",this.onAction),this.parent.observer.off("model_changed_plugin",this.onPropertyChanged)},e.prototype.destroy=function(){this.removeEventListener()},e.prototype.onAction=function(e){"Undo"===e.subCommand?this.undo(e):this.redo(e)},e.prototype.keyDown=function(e){var t=e.event,n=this;switch(t.action){case"undo":t.preventDefault(),n.undo(e);break;case"redo":t.preventDefault(),n.redo(e)}},e.prototype.keyUp=function(e){17===e.event.keyCode||e.event.ctrlKey||this.saveData(e)},e.prototype.saveData=function(e){var t=this.parent.element;this.selection.save(t.selectionStart,t.selectionEnd);var n=t.selectionStart,i=t.selectionEnd,o={text:this.parent.element.value,start:n,end:i};this.undoRedoStack.length>=this.steps&&(this.undoRedoStack=this.undoRedoStack.slice(0,this.steps+1)),this.undoRedoStack.length>1&&this.undoRedoStack[this.undoRedoStack.length-1].start===n&&this.undoRedoStack[this.undoRedoStack.length-1].end===i||(this.undoRedoStack.push(o),this.steps=this.undoRedoStack.length-1,this.steps>this.undoRedoSteps&&(this.undoRedoStack.shift(),this.steps--),e&&e.callBack&&e.callBack())},e.prototype.undo=function(e){if(this.steps>0){this.currentAction="Undo";var t=this.undoRedoStack[this.steps-1].start,n=this.undoRedoStack[this.steps-1].end,i=this.undoRedoStack[this.steps-1].text;this.parent.element.value=i,this.parent.element.focus(),this.steps--,this.restore(this.parent.element,t,n,e)}},e.prototype.redo=function(e){if(null!=this.undoRedoStack[this.steps+1]){this.currentAction="Redo";var t=this.undoRedoStack[this.steps+1].start,n=this.undoRedoStack[this.steps+1].end;this.parent.element.value=this.undoRedoStack[this.steps+1].text,this.parent.element.focus(),this.steps++,this.restore(this.parent.element,t,n,e)}},e.prototype.restore=function(e,t,n,i){this.selection.save(t,n),this.selection.restore(e),i&&i.callBack&&i.callBack({requestType:this.currentAction,selectedText:this.selection.getSelectedText(e),editorMode:"Markdown",event:i.event})},e.prototype.getUndoStatus=function(){var e={undo:!1,redo:!1};return this.steps>0&&(e.undo=!0),null!=this.undoRedoStack[this.steps+1]&&(e.redo=!0),e},e}(),ft=function(){function e(e){this.parent=e,this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("link-commands",this.createLink,this)},e.prototype.createLink=function(e){var t=this.parent.element;t.focus();var n=t.selectionStart,i=t.selectionEnd,o="Image"===e.subCommand?this.selection.getSelectedText(t):e.item.text,r="Image"===e.subCommand?n+2:n+1,s="Image"===e.subCommand?i+2:i+1;o="Image"===e.subCommand?"!["+o+"]("+e.item.url+")":"["+o+"]("+e.item.url+")",t.value=t.value.substr(0,n)+o+t.value.substr(i,t.value.length),this.parent.markdownSelection.setSelection(t,r,s),this.restore(t,r,s,e)},e.prototype.restore=function(e,t,n,i){this.selection.save(t,n),this.selection.restore(e),i&&i.callBack&&i.callBack({requestType:i.subCommand,selectedText:this.selection.getSelectedText(e),editorMode:"Markdown",event:i.event})},e}(),bt=function(){function e(e){t.extend(this,this,e,!0),this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("insert-table",this.createTable,this),this.parent.observer.on("keydown-handler",this.onKeyDown,this)},e.prototype.removeEventListener=function(){this.parent.observer.off("insert-table",this.createTable),this.parent.observer.off("keydown-handler",this.onKeyDown)},e.prototype.destroy=function(){this.removeEventListener()},e.prototype.onKeyDown=function(e){"insert-table"===e.event.action&&(e.item=e.value,this.createTable(e))},e.prototype.createTable=function(e){this.element=this.parent.element;var t=this.element.selectionStart,n=this.element.selectionEnd,i=this.element.value;this.locale=e,this.selection.save(t,n),this.restore(this.element.selectionStart,this.element.selectionEnd,null),this.insertTable(t,n,i,e)},e.prototype.getTable=function(){var e="";return e+=this.textNonEmpty(),e+=this.tableHeader(this.locale),e+=this.tableCell(this.locale)},e.prototype.tableHeader=function(e){for(var t="",n=1;n<=2;n++){t+="|";for(var i=1;i<=2;i++)t+=1===n?e.item.headingText+" "+i+"|":"---------|";t+=this.insertLine()}return t},e.prototype.tableCell=function(e){for(var t="",n=1;n<=2;n++){t+="|";for(var i=1;i<=2;i++)t+=e.item.colText+" "+this.convertToLetters(n)+i+"|";t+=this.insertLine()}return t+=this.insertLine()},e.prototype.insertLine=function(){var e=document.createElement("div");return e.innerHTML="\n",e.textContent},e.prototype.insertTable=function(e,t,n,i){var o=this.selection.getSelectedParentPoints(this.element),r=o[o.length-1].text.split(" ",2),s=this.getFormatTag();r.length<2?(this.element.value=this.updateValue(this.getTable()),this.makeSelection(n,e,t)):this.ensureFormatApply(o[o.length-1].text)?this.checkValid(e,t,this.getTable(),n,i,r,o,s):(this.element.value=this.updateValue(this.getTable()),this.makeSelection(n,e,t)),this.restore(this.element.selectionStart,this.element.selectionEnd,i)},e.prototype.makeSelection=function(e,t,n){n=t+(e.length>0?12:10),t+=e.length>0?3:1,this.selection.setSelection(this.element,t,n)},e.prototype.getFormatTag=function(){for(var e=Object.keys(this.syntaxTag.Formats),t=Object.keys(this.syntaxTag.List),n=[],i=0;i<e.length;i++)n.push(this.syntaxTag.Formats[e[i]]);for(var o=0;o<t.length;o++)n.push(this.syntaxTag.List[t[o]]);return n},e.prototype.ensureFormatApply=function(e){for(var t=this.getFormatTag(),n=e.trim().split(" ",2)[0]+" ",i=0;i<t.length;i++)if(n===t[i]||/^[\d.]+[ ]+$/.test(n))return!0;return!1},e.prototype.ensureStartValid=function(e,t){for(var n=t[0].text.split(" ",2),i=e+1;i<=e+n[0].length+1;i++)if(this.element.selectionStart===i||this.element.selectionEnd===i)return!1;return!0},e.prototype.ensureEndValid=function(e,t){for(var n=e+1;n<=e+t+1;n++)if(this.element.selectionEnd===n)return!1;return!0},e.prototype.updateValueWithFormat=function(e,t){var n=this.element.value.substring(this.element.selectionEnd,this.element.value.length);return t+=n.replace(n,e[0]+" "+n),this.element.value.substr(0,this.element.selectionStart)+t},e.prototype.updateValue=function(e){return this.element.value.substr(0,this.element.selectionStart)+e+this.element.value.substr(this.element.selectionEnd,this.element.value.length)},e.prototype.checkValid=function(e,t,n,i,o,r,s,a){this.ensureStartValid(s[0].start,s)&&this.ensureEndValid(s[s.length-1].start,r[0].length)&&(e===s[0].start?e!==t&&t!==s[s.length-1].end-1?this.element.value=this.updateValueWithFormat(r,n):this.element.value=this.updateValue(n):t===s[s.length-1].end-1?this.element.value=this.updateValue(n):this.element.value=this.updateValueWithFormat(r,n),this.makeSelection(i,e,t))},e.prototype.convertToLetters=function(e){var t="A".charCodeAt(0),n="";do{e-=1,n=String.fromCharCode(t+e%26)+n,e=e/26>>0}while(e>0);return n},e.prototype.textNonEmpty=function(){var e="";return(this.isCursorBased()||this.isSelectionBased())&&this.element.value.length>0&&(e+=this.insertLine(),e+=this.insertLine()),e},e.prototype.isCursorBased=function(){return this.element.selectionStart===this.element.selectionEnd},e.prototype.isSelectionBased=function(){return this.element.selectionStart!==this.element.selectionEnd},e.prototype.restore=function(e,t,n){this.selection.save(e,t),this.selection.restore(this.element),n&&n.callBack&&n.callBack({requestType:n.subCommand,selectedText:this.selection.getSelectedText(this.element),editorMode:"Markdown",event:n.event})},e}(),vt=function(){function e(e){this.parent=e,this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("clear-commands",this.clear,this)},e.prototype.replaceRegex=function(e){return e.replace(/\*/gi,"\\*").replace(/\&/gi,"\\&").replace(/\-/gi,"\\-").replace(/\^/gi,"\\^").replace(/\$/gi,"\\$").replace(/\./gi,"\\.").replace(/\|/gi,"\\|").replace(/\?/gi,"\\?").replace(/\+/gi,"\\+").replace(/\-/gi,"\\-").replace(/\&/gi,"\\&")},e.prototype.clearSelectionTags=function(e){for(var t=this.parent.selectionTags,n=Object.keys(t),i=0;i<n.length;i++){var o=n[i];if(t.hasOwnProperty(o)&&""!==t[o]){var r=this.replaceRegex(t[o]),s=void 0,a=t[o].length,l="<sup>"===t[o]||"<sub>"===t[o]?t[o].length+1:t[o].length;s="<sup>"===t[o]?new RegExp("<sup>(.*?)</sup>","ig"):"<sub>"===t[o]?new RegExp("<sub>(.*?)</sub>","ig"):new RegExp(r+"(.*?)"+r,"ig");for(var d=e.match(s),c=0;d&&c<d.length&&""!==d[c];c++)e=e.replace(d[c],d[c].substr(a,d[c].length-l-a))}}return e},e.prototype.clearFormatTags=function(e){var t=e.split("\n");return this.clearFormatLines(t)},e.prototype.clearFormatLines=function(e){for(var t=[this.parent.formatTags,this.parent.listTags],n="",i=0;i<e.length;i++){for(var o=0;o<t.length;o++)for(var r=t[o],s=Object.keys(r),a=0;a<s.length;a++){var l=s[a];r.hasOwnProperty(l)&&""!==r[l]&&0===e[i].indexOf(r[l])&&(e[i]=e[i].replace(r[l],""),e[i]=this.clearFormatLines([e[i]]))}n=n+e[i]+(i!==e.length-1?"\n":"")}return n},e.prototype.clear=function(e){var t=this.parent.element;t.focus();var n=t.selectionStart,i=t.selectionEnd,o=this.selection.getSelectedText(t);o=this.clearSelectionTags(o),o=this.clearFormatTags(o),t.value=t.value.substr(0,n)+o+t.value.substr(i,t.value.length),this.parent.markdownSelection.setSelection(t,n,n+o.length),this.restore(t,n,n+o.length,e)},e.prototype.restore=function(e,t,n,i){this.selection.save(t,n),this.selection.restore(e),i&&i.callBack&&i.callBack({requestType:i.subCommand,selectedText:this.selection.getSelectedText(e),editorMode:"Markdown",event:i.event})},e}(),yt=function(){function e(e){this.initialize(),t.extend(this,this,e,!0),this.observer=new t.Observer(this),this.markdownSelection=new Ze,this.listObj=new ot({parent:this,syntax:this.listTags}),this.formatObj=new rt({parent:this,syntax:this.formatTags}),this.undoRedoManager=new gt(this,e.options),this.mdSelectionFormats=new st({parent:this,syntax:this.selectionTags}),this.linkObj=new ft(this),this.tableObj=new bt({parent:this,syntaxTag:{Formats:this.formatTags,List:this.listTags}}),this.clearObj=new vt(this),this.wireEvents()}return e.prototype.initialize=function(){this.formatTags=at,this.listTags=dt,this.selectionTags=lt},e.prototype.wireEvents=function(){this.observer.on("keydown",this.editorKeyDown,this),this.observer.on("keyup",this.editorKeyUp,this),this.observer.on("model_changed",this.onPropertyChanged,this)},e.prototype.onPropertyChanged=function(e){this.observer.notify("model_changed_plugin",e)},e.prototype.editorKeyDown=function(e){this.observer.notify("keydown-handler",e)},e.prototype.editorKeyUp=function(e){this.observer.notify("keyup-handler",e)},e.prototype.execCommand=function(e,t,n,i,o,r){switch(e.toLocaleLowerCase()){case"lists":this.observer.notify("lists-commands",{subCommand:t,event:n,callBack:i});break;case"formats":this.observer.notify("format-type",{subCommand:t,event:n,callBack:i});break;case"actions":this.observer.notify("action",{subCommand:t,event:n,callBack:i});break;case"style":case"effects":case"casing":this.observer.notify("command-type",{subCommand:t,event:n,callBack:i});break;case"links":case"images":this.observer.notify("link-commands",{subCommand:t,event:n,callBack:i,item:r});break;case"table":switch(t.toString().toLocaleLowerCase()){case"createtable":this.observer.notify("insert-table",{subCommand:t,item:r,event:n,callBack:i})}break;case"clear":this.observer.notify("clear-commands",{subCommand:t,event:n,callBack:i})}},e}(),Ct=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),St=function(e){function n(n){var i=e.call(this)||this;return i.initialize(),t.extend(i,i,n,!0),n&&i.element&&i.updateFormatter(i.element,document,n.options),i}return Ct(n,e),n.prototype.initialize=function(){this.keyConfig=pt,this.formatTags=at,this.listTags=dt,this.selectionTags=lt},n.prototype.updateFormatter=function(e,t,n){e&&(this.editorManager=new yt({element:e,formatTags:this.formatTags,listTags:this.listTags,selectionTags:this.selectionTags,options:n}))},n}(it),Tt=function(){function e(e){this.parent=e}return e.prototype.renderPanel=function(){var e=this.parent,t=this.parent.createElement("div",{id:this.parent.getID()+"_view",className:"e-rte-content"});this.editableElement=this.parent.createElement("textarea",{className:"e-content",id:this.parent.getID()+"_editable-content"}),t.appendChild(this.editableElement),this.setPanel(t),e.element.appendChild(t)},e.prototype.getPanel=function(){return this.contentPanel},e.prototype.getEditPanel=function(){return this.editableElement},e.prototype.getText=function(){return this.getEditPanel().value},e.prototype.setPanel=function(e){this.contentPanel=e},e.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},e}(),Et=function(){function n(e,t){this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.destroy=function(){this.removeEventListener()},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.saveSelection=new Ze,this.parent.on("initial-load",this.instantiateRenderer,this),this.parent.on(z,this.render,this),this.parent.on(_,this.onPropertyChanged,this),this.parent.on("markdown-toolbar-click",this.onToolbarClick,this),this.parent.on(F,this.destroy,this),this.parent.on("selectAll",this.selectAll,this),this.parent.on("getSelectedHtml",this.getSelectedHtml,this),this.parent.on(V,this.onSelectionSave,this),this.parent.on("selection-restore",this.onSelectionRestore,this),this.parent.on("readOnlyMode",this.updateReadOnly,this))},n.prototype.updateReadOnly=function(){this.parent.readonly?(this.parent.contentModule.getEditPanel().setAttribute("readonly","readonly"),t.addClass([this.parent.element],"e-rte-readonly")):(this.parent.contentModule.getEditPanel().removeAttribute("readonly"),t.removeClass([this.parent.element],"e-rte-readonly"))},n.prototype.onSelectionSave=function(){var e=this.parent.contentModule.getEditPanel();this.saveSelection.save(e.selectionStart,e.selectionEnd)},n.prototype.onSelectionRestore=function(e){this.contentRenderer.getEditPanel().focus();var t=this.parent.contentModule.getEditPanel();this.saveSelection.restore(t)},n.prototype.onToolbarClick=function(e){var t=e.item,n=this.parent.contentModule.getEditPanel();n.focus();var i=n.selectionStart,o=n.selectionEnd,r=n.value.substring(i,o);switch(t.subCommand){case"Maximize":this.parent.notify("enableFullScreen",{args:e});break;case"Minimize":this.parent.notify("disableFullScreen",{args:e});break;case"CreateLink":this.parent.notify("insertLink",{member:"link",args:e,text:r,module:"Markdown"});break;case"Image":this.parent.notify("insertImage",{member:"image",args:e,text:r,module:"Markdown"});break;case"CreateTable":var s={headingText:this.parent.localeObj.getConstant("TableHeadingText"),colText:this.parent.localeObj.getConstant("TableColText")};this.parent.formatter.process(this.parent,e,e.originalEvent,s);break;default:this.parent.formatter.process(this.parent,e,e.originalEvent,null)}},n.prototype.instantiateRenderer=function(){this.renderFactory.addRenderer(e.RenderType.Content,new Tt(this.parent))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(z,this.render),this.parent.off(_,this.onPropertyChanged),this.parent.off(F,this.destroy),this.parent.off("markdown-toolbar-click",this.onToolbarClick),this.parent.off("initial-load",this.instantiateRenderer),this.parent.off("selectAll",this.selectAll),this.parent.off("getSelectedHtml",this.getSelectedHtml),this.parent.off(V,this.onSelectionSave),this.parent.off("selection-restore",this.onSelectionRestore),this.parent.off("readOnlyMode",this.updateReadOnly))},n.prototype.render=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};t.isNullOrUndefined(this.parent.formatter)?this.parent.formatter=new St({element:n,options:i}):this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i),this.parent.toolbarSettings.enable&&(this.toolbarUpdate=new tt(this.parent)),this.parent.notify("bind-on-end",{})},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.formatter)){var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i)}},n.prototype.getModuleName=function(){return"markdownEditor"},n.prototype.selectAll=function(){this.parent.formatter.editorManager.markdownSelection.setSelection(this.parent.contentModule.getEditPanel(),0,this.parent.contentModule.getEditPanel().value.length)},n.prototype.getSelectedHtml=function(e){e.callBack(this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()))},n}(),Nt="INSERT-IMAGE",wt="INSERT-TABLE",kt="INSERT-LINK",Lt=["address","article","aside","audio","blockquote","canvas","details","dd","div","dl","dt","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","li","main","nav","noscript","ol","output","p","pre","section","table","tbody","td","tfoot","th","thead","tr","ul","video"],xt=["td","th"],Ot=["table","tbody","td","tfoot","th","thead","tr"],Dt=function(){function e(){this.startNodeName=[],this.endNodeName=[]}return e.prototype.saveInstance=function(e,t){return this.range=e.cloneRange(),this.rootNode=this.documentFromRange(e),this.body=t,this.startContainer=this.getNodeArray(e.startContainer,!0),this.endContainer=this.getNodeArray(e.endContainer,!1),this.startOffset=e.startOffset,this.endOffset=e.endOffset,this.html=this.body.innerHTML,this},e.prototype.documentFromRange=function(e){return 9===e.startContainer.nodeType?e.startContainer:e.startContainer.ownerDocument},e.prototype.getRange=function(e){var t=this.get(e),n=t&&t.rangeCount>0?t.getRangeAt(t.rangeCount-1):e.createRange();return n.startContainer!==e||n.endContainer!==e||n.startOffset||n.endOffset||(n.setStart(e.body,0),n.collapse(!0)),n},e.prototype.get=function(e){return e.defaultView.getSelection()},e.prototype.save=function(e,t){return e=e?e.cloneRange():this.getRange(t),this.saveInstance(e,t.body)},e.prototype.getIndex=function(e){var t=0;if(e=e.previousSibling||"BR"!==e.tagName?e.previousSibling:e)for(e.nodeType;e;null)t++,e.nodeType,e=e.previousSibling;return t},e.prototype.isChildNode=function(e,t){for(var n=0;n<t.childNodes.length;n++)if(e.indexOf(t.childNodes[n])>-1)return!0;return!1},e.prototype.getNode=function(e,t,n){return t!==e||3!==e.nodeType&&e.firstChild&&-1===n.indexOf(e.firstChild)&&!this.isChildNode(n,e)?-1===n.indexOf(e.firstChild)&&e.firstChild&&!this.isChildNode(n,e)?e.firstChild:e.nextSibling?e.nextSibling:e.parentNode?e.parentNode:null:null},e.prototype.getNodeCollection=function(e){var t=e.startContainer.childNodes[e.startOffset]||e.startContainer,n=e.endContainer.childNodes[e.endOffset>0?e.endOffset-1:e.endOffset]||e.endContainer;if(t===n&&0===t.childNodes.length)return[t];if(e.startOffset===e.endOffset&&0!==e.startOffset&&"PRE"===e.startContainer.nodeName)return["BR"===t.nodeName||"#text"===t.nodeName?t:t.childNodes[0]];var i=[];do{-1===i.indexOf(t)&&i.push(t),t=this.getNode(t,n,i)}while(t);return i},e.prototype.getParentNodeCollection=function(e){return this.getParentNodes(this.getNodeCollection(e),e)},e.prototype.getParentNodes=function(e,t){e=e.reverse();for(var n=0;n<e.length;n++)-1!==e.indexOf(e[n].parentNode)||3===e[n].nodeType&&t.startContainer!==t.endContainer&&t.startContainer.parentNode!==t.endContainer.parentNode?(e.splice(n,1),n--):3===e[n].nodeType&&(e[n]=e[n].parentNode);return e},e.prototype.getSelectionNodeCollection=function(e){return this.getSelectionNodes(this.getNodeCollection(e))},e.prototype.getSelectionNodeCollectionBr=function(e){return this.getSelectionNodesBr(this.getNodeCollection(e))},e.prototype.getSelectionNodes=function(e){e=e.reverse();for(var t=new RegExp(String.fromCharCode(8203),"g"),n=0;n<e.length;n++)(3!==e[n].nodeType||""===e[n].textContent.trim()||1===e[n].textContent.length&&e[n].textContent.match(t))&&(e.splice(n,1),n--);return e.reverse()},e.prototype.getSelectionNodesBr=function(e){e=e.reverse();for(var t=new RegExp(String.fromCharCode(8203),"g"),n=0;n<e.length;n++)"BR"!==e[n].nodeName&&(3!==e[n].nodeType||""===e[n].textContent.trim()||1===e[n].textContent.length&&e[n].textContent.match(t))&&(e.splice(n,1),n--);return e.reverse()},e.prototype.getInsertNodeCollection=function(e){return this.getInsertNodes(this.getNodeCollection(e))},e.prototype.getInsertNodes=function(e){e=e.reverse();for(var t=0;t<e.length;t++)(0!==e[t].childNodes.length&&3!==e[t].nodeType||3===e[t].nodeType&&""===e[t].textContent)&&(e.splice(t,1),t--);return e.reverse()},e.prototype.getNodeArray=function(e,n,i){var o=[];for(n?this.startNodeName=[]:this.endNodeName=[];e!==(i||this.rootNode)&&!t.isNullOrUndefined(e);null)n?this.startNodeName.push(e.nodeName.toLowerCase()):this.endNodeName.push(e.nodeName.toLowerCase()),o.push(this.getIndex(e)),e=e.parentNode;return o},e.prototype.setRangePoint=function(e,t,n,i){for(var o=this.rootNode,r=n.length,s=i;r--;null)o=o&&o.childNodes[n[r]];return o&&s>=0&&"html"!==o.nodeName&&e[t?"setStart":"setEnd"](o,s),e},e.prototype.restore=function(){var e=this.range.cloneRange();return e=this.setRangePoint(e,!0,this.startContainer,this.startOffset),e=this.setRangePoint(e,!1,this.endContainer,this.endOffset),this.selectRange(this.rootNode,e),e},e.prototype.selectRange=function(e,t){this.setRange(e,t),this.save(t,e)},e.prototype.setRange=function(e,t){var n=this.get(e);n.removeAllRanges(),n.addRange(t)},e.prototype.setSelectionText=function(e,t,n,i,o){var r=e.createRange();r.setStart(t,i),r.setEnd(n,o),this.setRange(e,r)},e.prototype.setSelectionContents=function(e,t){var n=e.createRange();n.selectNode(t),this.setRange(e,n)},e.prototype.setSelectionNode=function(e,t){var n=e.createRange();n.selectNodeContents(t),this.setRange(e,n)},e.prototype.getSelectedNodes=function(e){return this.getNodeCollection(this.getRange(e))},e.prototype.Clear=function(e){this.get(e).removeAllRanges()},e.prototype.insertParentNode=function(e,t,n){n.surroundContents(t),this.selectRange(e,n)},e.prototype.setCursorPoint=function(e,t,n){var i=e.createRange(),o=e.defaultView.getSelection();i.setStart(t,n),i.collapse(!0),o.removeAllRanges(),o.addRange(i)},e}(),Mt={startSelection:"e-editor-select-start",endSelection:"e-editor-select-end"},Rt=function(){function e(e,t){this.parent=e,this.nodeSelection=new Dt,this.currentDocument=t}return e.prototype.contents=function(e){return e&&"IFRAME"!==e.tagName?Array.prototype.slice.call(e.childNodes||[]):[]},e.prototype.isBlockNode=function(e){return!!e&&e.nodeType===Node.ELEMENT_NODE&&Lt.indexOf(e.tagName.toLowerCase())>=0},e.prototype.isLink=function(e){return!!e&&e.nodeType===Node.ELEMENT_NODE&&"a"===e.tagName.toLowerCase()},e.prototype.blockParentNode=function(e){for(;e&&e.parentNode!==this.parent&&(!e.parentNode||!this.hasClass(e.parentNode,"e-node-inner"));null)if(e=e.parentNode,this.isBlockNode(e))return e;return e},e.prototype.rawAttributes=function(e){var t={},n=e.attributes;if(n.length>0)for(var i=0;i<n.length;i++){var o=n[i];t[o.nodeName]=o.value}return t},e.prototype.attributes=function(e){if(!e)return"";for(var t="",n=this.rawAttributes(e),i=Object.keys(n).sort(),o=0;o<i.length;o++){var r=i[o],s=n[r];s.indexOf("'")<0&&s.indexOf('"')>=0?t+=" "+r+"='"+s+"'":s.indexOf('"')>=0&&s.indexOf("'")>=0?t+=" "+r+'="'+(s=s.replace(/"/g,"&quot;"))+'"':t+=" "+r+'="'+s+'"'}return t},e.prototype.clearAttributes=function(e){for(var t=e.attributes,n=t.length-1;n>=0;n--){var i=t[n];e.removeAttribute(i.nodeName)}},e.prototype.openTagString=function(e){return"<"+e.tagName.toLowerCase()+this.attributes(e)+">"},e.prototype.closeTagString=function(e){return"</"+e.tagName.toLowerCase()+">"},e.prototype.createTagString=function(e,t,n){return"<"+e.toLowerCase()+this.attributes(t)+">"+n+"</"+e.toLowerCase()+">"},e.prototype.isList=function(e){return!!e&&["UL","OL"].indexOf(e.tagName)>=0},e.prototype.isElement=function(e){return e===this.parent},e.prototype.isEditable=function(e){return(!e.getAttribute||"true"===e.getAttribute("contenteditable"))&&["STYLE","SCRIPT"].indexOf(e.tagName)<0},e.prototype.hasClass=function(e,t){return e&&e.classList&&e.classList.contains(t)},e.prototype.replaceWith=function(e,n){e.parentNode.insertBefore(this.parseHTMLFragment(n),e),t.detach(e)},e.prototype.parseHTMLFragment=function(e){var n=t.createElement("template");return n.innerHTML=e,n.content instanceof DocumentFragment?n.content:document.createRange().createContextualFragment(e)},e.prototype.wrap=function(e,t){return e.parentNode.insertBefore(t,e),(t=e.previousSibling).appendChild(e),t},e.prototype.insertAfter=function(e,t){t.parentNode.insertBefore(e,t.nextSibling)},e.prototype.wrapInner=function(e,t){for(e.appendChild(t),(t=e.querySelector(".e-rte-wrap-inner")).classList.remove("e-rte-wrap-inner"),0===t.classList.length&&t.removeAttribute("class");e.firstChild!==t;)t.appendChild(e.firstChild);return t},e.prototype.unWrap=function(e){for(var t=e.parentNode,n=[];e.firstChild;)n.push(e.firstChild),t.insertBefore(e.firstChild,e);return n=n.length>0?n:[e.parentNode],t.removeChild(e),n},e.prototype.getSelectedNode=function(e,t){return e.nodeType===Node.ELEMENT_NODE&&e.childNodes.length>0&&e.childNodes[t-1]&&e.childNodes[t-1].nodeType===Node.ELEMENT_NODE&&(e.childNodes[t-1].classList.contains(Mt.startSelection)||e.childNodes[t-1].classList.contains(Mt.endSelection))?e=e.childNodes[t-1]:e.nodeType===Node.ELEMENT_NODE&&e.childNodes.length>0&&e.childNodes[t]&&(e=e.childNodes[t]),e.nodeType===Node.TEXT_NODE&&(e=e.parentNode),e},e.prototype.nodeFinds=function(e,t){for(var n=[],i=0;i<t.length;i++)e.contains(t[i])&&e!==t[i]&&n.push(t[i]);return n},e.prototype.isEditorArea=function(){var e;for(e=this.getRangePoint(0).commonAncestorContainer;e&&!this.isElement(e);null)e=e.parentNode;return!!this.isElement(e)},e.prototype.getRangePoint=function(e){var t=this.getSelection(),n=[];if(t&&t.getRangeAt&&t.rangeCount){n=[];for(var i=0;i<t.rangeCount;i++)n.push(t.getRangeAt(i))}else n=[this.currentDocument.createRange()];return void 0!==e?n[e]:n},e.prototype.getSelection=function(){return this.nodeSelection.get(this.currentDocument)},e.prototype.getPreviousNode=function(e){for(e=e.previousElementSibling;e&&"\n"===e.textContent;null)e=e.previousElementSibling;return e},e.prototype.encode=function(e){var t=document.createElement("div");return t.innerText=e,t.innerHTML.replace(/<br\s*[\/]?>/gi,"\n")},e.prototype.saveMarker=function(e,n){var i,o,r=this.parent.querySelector("."+Mt.startSelection),s=this.parent.querySelector("."+Mt.endSelection);if(""===r.textContent&&t.isNullOrUndefined(s)&&"tab"!==n&&(1===r.childNodes.length&&"BR"===r.childNodes[0].nodeName?r.innerHTML="&#65279;&#65279;<br>":r.innerHTML="&#65279;&#65279;"),this.hasClass(r,Mt.startSelection)&&r.classList.length>1){a=this.createTagString("p",r,this.encode(r.textContent));this.replaceWith(r,a),(r=this.parent.querySelector("."+Mt.startSelection)).classList.remove(Mt.startSelection),i=r.childNodes[0]}else i=this.unWrap(r)[0];if(this.hasClass(s,Mt.endSelection)&&s.classList.length>1){var a=this.createTagString("p",s,this.encode(s.textContent));this.replaceWith(s,a),(s=this.parent.querySelector("."+Mt.endSelection)).classList.remove(Mt.endSelection),o=s.childNodes[0]}else o=s?this.unWrap(s)[0]:i;return e.startContainer=e.getNodeArray(i,!0),e.endContainer=e.getNodeArray(o,!1),e},e.prototype.marker=function(e,t){return'<span class="'+e+'">'+t+"</span>"},e.prototype.setMarker=function(e){var t=e.range,n=t.startContainer.childNodes,i=(n.length>1&&"TABLE"===n[0].nodeName?A(n[t.startOffset+1]):n[t.startOffset>0?t.startOffset-1:t.startOffset])||t.startContainer,o=t.endContainer.childNodes[t.endOffset>0?t.endOffset-1:t.endOffset]||t.endContainer;if(i.nodeType===Node.ELEMENT_NODE&&o.nodeType===Node.ELEMENT_NODE&&(i.contains(o)||o.contains(i))){var r=i.contains(o)?i:o;if(r.nodeType!==Node.TEXT_NODE){for(var s=[],a=[],l=r;r.contains(l);null)s.indexOf(l)<0&&l.childNodes&&l.childNodes.length?(s.push(l),l=l.childNodes[0]):l.nextSibling?l=l.nextSibling:l.parentNode&&(l=l.parentNode,s.push(l)),a.indexOf(l)<0&&(l.nodeType===Node.TEXT_NODE||xt.indexOf(l.parentNode.tagName.toLocaleLowerCase())>=0&&("BR"===l.tagName||"IMG"===l.tagName))&&a.push(l);a.length&&(i=i.contains(o)?a[0]:i,o=a[a.length-1])}}i!==o?(i.nodeType!==Node.TEXT_NODE&&("BR"===i.tagName&&xt.indexOf(i.parentNode.tagName.toLocaleLowerCase())>=0||"IMG"===i.tagName)?(this.replaceWith(i,this.marker(Mt.startSelection,this.encode(i.textContent))),t.startContainer.querySelector("."+Mt.startSelection).appendChild(i)):this.replaceWith(i,this.marker(Mt.startSelection,this.encode(i.textContent))),o.nodeType!==Node.TEXT_NODE&&"BR"===o.tagName&&xt.indexOf(o.parentNode.tagName.toLocaleLowerCase())>=0?(this.replaceWith(o,this.marker(Mt.endSelection,this.encode(o.textContent))),t.endContainer.querySelector("."+Mt.endSelection).appendChild(o)):this.ensureSelfClosingTag(o,Mt.endSelection,t)):this.ensureSelfClosingTag(i,Mt.startSelection,t)},e.prototype.ensureSelfClosingTag=function(e,n,i){var o=!1;if(3===e.nodeType)this.replaceWith(e,this.marker(n,this.encode(e.textContent)));else if("BR"===e.tagName)this.replaceWith(e,this.marker(Mt.startSelection,this.encode(e.textContent))),i.startContainer.querySelector("."+Mt.startSelection).appendChild(e);else{if("IMG"===e.tagName){var r=document.createElement("p");e.parentElement.insertBefore(r,e),r.appendChild(e),e=r.children[0]}if("TABLE"===e.tagName)if(o=!0,""===e.textContent){var s=e.querySelectorAll("td");e=s[s.length-1],e=t.isNullOrUndefined(e.childNodes[0])?e:e.childNodes[0]}else{for(var a=e.lastChild;3!==a.nodeType&&"#text"!==a.nodeName&&"BR"!==a.nodeName;)a=a.lastChild;e=a}for(var l=0;l<mt.length;l++)e=e.tagName!==mt[l]||o?e:e.parentNode;if(3===e.nodeType&&"#text"===e.nodeName)this.replaceWith(e,this.marker(n,this.encode(e.textContent)));else if("BR"===e.nodeName)this.replaceWith(e,this.marker(Mt.endSelection,this.encode(e.textContent))),i.endContainer.querySelector("."+Mt.endSelection).appendChild(e);else{var d=this.marker(n,"");t.append([this.parseHTMLFragment(d)],e)}}},e.prototype.createTempNode=function(e){var t=e.textContent;if("BR"===e.tagName){var n="<p></p>",i=e.parentNode;xt.indexOf(i.tagName.toLocaleLowerCase())>=0&&(e=this.wrap(e,this.parseHTMLFragment(n)))}else if(e.nodeType!==Node.TEXT_NODE&&(e.classList.contains(Mt.startSelection)||e.classList.contains(Mt.endSelection))||t.replace(/\n/g,"").replace(/(^ *)|( *$)/g,"").length>0||t.length&&t.indexOf("\n")<0){var n="<p></p>",o=e;e=this.wrap(e,this.parseHTMLFragment(n)),!(o.nodeType===Node.ELEMENT_NODE&&o.firstChild&&"BR"===o.firstChild.nodeName&&(o.classList.contains(Mt.startSelection)||o.classList.contains(Mt.endSelection)))&&e.nextElementSibling&&"BR"===e.nextElementSibling.tagName&&e.appendChild(e.nextElementSibling)}return e},e.prototype.getImageTagInSelection=function(){var e=this.getSelection();return this.isEditorArea()&&e.rangeCount?e.focusNode.querySelectorAll("img"):null},e.prototype.blockNodes=function(){var e=[],n=this.getSelection();if(this.isEditorArea()&&n.rangeCount)for(var i=this.getRangePoint(),o=0;o<i.length;o++){var r=void 0,s=i[o],a=this.getSelectedNode(s.startContainer,s.startOffset),l=this.getSelectedNode(s.endContainer,s.endOffset);if(this.isBlockNode(a)&&e.indexOf(a)<0&&e.push(a),(r=this.blockParentNode(a))&&e.indexOf(r)<0)if(xt.indexOf(r.tagName.toLocaleLowerCase())>=0&&("BR"===a.tagName||a.nodeType===Node.TEXT_NODE||a.classList.contains(Mt.startSelection)||a.classList.contains(Mt.endSelection))){var d=a.previousSibling&&a.previousSibling.nodeType===Node.TEXT_NODE?a.previousSibling:a;a.nextSibling||a.previousSibling||"BR"!==a.tagName?e.push(this.createTempNode(d)):e.push(d)}else e.push(r);for(var c=[],p=a;p!==l&&p!==this.parent;null)c.indexOf(p)<0&&p.childNodes&&p.childNodes.length?(c.push(p),p=p.childNodes[0]):p&&8!==p.nodeType&&("BR"===p.tagName||p.nodeType===Node.TEXT_NODE&&""!==p.textContent.trim()||p.nodeType!==Node.TEXT_NODE&&(p.classList.contains(Mt.startSelection)||p.classList.contains(Mt.endSelection)))&&xt.indexOf(p.parentNode.tagName.toLocaleLowerCase())>=0?p=this.createTempNode(p):p.nextSibling&&8!==p.nextSibling.nodeType&&("BR"===p.nextSibling.tagName||p.nextSibling.nodeType===Node.TEXT_NODE||p.nextSibling.classList.contains(Mt.startSelection)||p.nextSibling.classList.contains(Mt.endSelection))&&xt.indexOf(p.nextSibling.parentNode.tagName.toLocaleLowerCase())>=0?p=this.createTempNode(p.nextSibling):p.nextSibling?p=p.nextSibling:p.parentNode&&(p=p.parentNode,c.push(p)),e.indexOf(p)<0&&p.nodeType===Node.ELEMENT_NODE&&xt.indexOf(p.parentNode.tagName.toLocaleLowerCase())>=0&&(p.classList.contains(Mt.startSelection)||p.classList.contains(Mt.endSelection))&&e.push(this.createTempNode(p)),this.isBlockNode(p)&&this.ignoreTableTag(p)&&c.indexOf(p)<0&&e.indexOf(p)<0&&(p!==l||s.endOffset>0)&&e.push(p),"IMG"===p.nodeName&&"true"===p.parentElement.contentEditable&&e.push(p);(r=this.blockParentNode(l))&&this.ignoreTableTag(r)&&e.indexOf(r)<0&&!t.isNullOrUndefined(r.previousElementSibling)&&"IMG"!==r.previousElementSibling.tagName&&e.push(r)}for(var h=e.length-1;h>0;h--)if((c=this.nodeFinds(e[h],e)).length){var u=e[h].querySelectorAll("ul, ol");if("LI"===e[h].tagName&&u.length>0)continue;e.splice(h,1)}return e},e.prototype.ignoreTableTag=function(e){return!(Ot.indexOf(e.tagName.toLocaleLowerCase())>=0)},e}(),It=function(){function e(e){this.parent=e,this.domNode=this.parent.domNode,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("list-type",this.applyListsHandler,this),this.parent.observer.on("keydown-handler",this.keyDownHandler,this)},e.prototype.testList=function(e){var n=[/^[\d]+[.]+$/,/^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})[.]$/gi,/^[a-zA-Z][.]+$/],i=t.isNullOrUndefined(e)?null:e.innerText.trim().split(".")[0]+".";if(!t.isNullOrUndefined(i))for(var o=0;o<n.length;o++)if(n[o].test(i))return!0;return!1},e.prototype.testCurrentList=function(e){var n=[/^[1]+[.]+$/,/^[i]+[.]+$/,/^[a]+[.]+$/];if(!t.isNullOrUndefined(e.startContainer.textContent.slice(0,e.startOffset)))for(var i=0;i<n.length;i++)if(n[i].test(e.startContainer.textContent.slice(0,e.startOffset)))return!0;return!1},e.prototype.spaceList=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument);this.saveSelection=this.parent.nodeSelection.save(n,this.parent.currentDocument);var i=this.parent.domNode.getSelectedNode(n.startContainer,n.startOffset),o=(this.parent.domNode.getSelectedNode(n.endContainer,n.endOffset),i.previousElementSibling),r=i.nextElementSibling,s=t.isNullOrUndefined(o)?null:o.innerText.trim().substring(0,1),a=t.isNullOrUndefined(r)?null:r.innerText.trim().substring(0,1),l=this.testCurrentList(n),d=this.testList(o),c=this.testList(r);d||c||"*"===s||"*"===a||(l?(n.startContainer.textContent=n.startContainer.textContent.slice(n.startOffset,n.startContainer.textContent.length),this.applyListsHandler({subCommand:"OL",callBack:e.callBack}),e.event.preventDefault()):"*"!==n.startContainer.textContent.slice(0,n.startOffset)&&"-"!==n.startContainer.textContent.slice(0,n.startOffset)||(n.startContainer.textContent=n.startContainer.textContent.slice(n.startOffset,n.startContainer.textContent.length),this.applyListsHandler({subCommand:"UL",callBack:e.callBack}),e.event.preventDefault()))},e.prototype.enterList=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument),n=this.parent.domNode.getSelectedNode(t.startContainer,t.startOffset);n===this.parent.domNode.getSelectedNode(t.endContainer,t.endOffset)&&"LI"===n.tagName&&""===n.textContent.trim()&&65279===n.textContent.charCodeAt(0)&&(n.textContent="")},e.prototype.backspaceList=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=this.parent.domNode.getSelectedNode(n.startContainer,n.startOffset),o=this.parent.domNode.getSelectedNode(n.endContainer,n.endOffset);if(i="BR"===i.nodeName?i.parentElement:i,o="BR"===o.nodeName?o.parentElement:o,i===o&&!t.isNullOrUndefined(t.closest(i,"li"))&&(""===i.textContent.trim()&&65279===i.textContent.charCodeAt(0)||1===i.textContent.length&&8203===i.textContent.charCodeAt(0))&&(i.textContent=""),i===o&&""===i.textContent){if("LI"===i.parentElement.tagName&&"LI"===o.parentElement.tagName)t.detach(i);else if((i.closest("ul")||i.closest("ol"))&&(r=t.isNullOrUndefined(i.closest("ul"))?i.closest("ol"):i.closest("ul")).firstElementChild===i&&!t.isNullOrUndefined(r.children[1])&&("OL"===r.children[1].tagName||"UL"===r.children[1].tagName))if(r.tagName===r.children[1].tagName){for(;r.children[1].lastChild;)this.parent.domNode.insertAfter(r.children[1].lastChild,r.children[1]);t.detach(r.children[1])}else r.parentElement.insertBefore(r.children[1],r)}else if(!t.isNullOrUndefined(i.firstChild)&&"BR"===i.firstChild.nodeName&&("UL"===i.childNodes[1].nodeName||"OL"===i.childNodes[1].nodeName)){var r=t.isNullOrUndefined(i.closest("ul"))?i.closest("ol"):i.closest("ul");if(r.tagName===i.childNodes[1].nodeName){for(;i.childNodes[1].lastChild;)this.parent.domNode.insertAfter(i.children[1].lastChild,i);t.detach(i.childNodes[1])}else r.parentElement.insertBefore(i.children[1],r)}},e.prototype.keyDownHandler=function(e){if(13===e.event.which&&this.enterList(e),32===e.event.which&&this.spaceList(e),8===e.event.which&&this.backspaceList(e),46===e.event.which&&"delete"===e.event.action){var n=(a=this.parent.nodeSelection.getRange(this.parent.currentDocument)).commonAncestorContainer,i=a.startContainer,o=a.endContainer,r=3===i.nodeType?i.parentElement:i,s=3===o.nodeType?o.parentElement:o;"UL"!==n.nodeName&&"OL"!==n.nodeName||r===s||t.isNullOrUndefined(t.closest(r,"ul"))&&t.isNullOrUndefined(t.closest(r,"ol"))||t.isNullOrUndefined(t.closest(s,"ul"))&&t.isNullOrUndefined(t.closest(s,"ol"))||n.lastElementChild!==t.closest(s,"li")||a.collapsed||t.detach(n)}if(9===e.event.which){var a=this.parent.nodeSelection.getRange(this.parent.currentDocument);e.event.action&&"indent"===e.event.action||(this.saveSelection=this.parent.nodeSelection.save(a,this.parent.currentDocument));var l=void 0,d=a.startOffset,c=a.endOffset;if((r=this.parent.domNode.getSelectedNode(a.startContainer,a.startOffset))===(s=this.parent.domNode.getSelectedNode(a.endContainer,a.endOffset))&&("BR"===r.nodeName||"#text"===r.nodeName)&&xt.indexOf(r.parentNode.tagName.toLocaleLowerCase())>=0)return;e.event.action&&"indent"===e.event.action||this.domNode.setMarker(this.saveSelection),l=this.domNode.blockNodes();for(var p=[],h=!0,u=0;u<l.length;u++)"LI"===l[u].parentNode.tagName?p.push(l[u].parentNode):"LI"===l[u].tagName&&"P"!==l[u].childNodes[0].tagName&&"OL"!==l[u].childNodes[0].tagName&&"UL"!==l[u].childNodes[0].tagName&&p.push(l[u]);p.length>1||p.length&&(0===d&&0===c||e.ignoreDefault)?(e.event.preventDefault(),e.event.stopPropagation(),this.currentAction=this.getAction(p[0]),e.event.shiftKey?(this.revertList(p),this.revertClean()):h=this.nestedList(p),h&&(this.cleanNode(),this.parent.editableElement.focus()),e.event.action&&"indent"===e.event.action||(this.saveSelection=this.domNode.saveMarker(this.saveSelection),this.saveSelection.restore(),e.callBack&&e.callBack({requestType:this.currentAction,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes(),event:e.event}))):e.event.action&&"indent"===e.event.action||(e.event&&e.event.shiftKey&&"Tab"===e.event.key&&(e.event.action="tab"),this.saveSelection=this.domNode.saveMarker(this.saveSelection,e.event.action),this.saveSelection.restore())}else switch(e.event.action){case"ordered-list":this.applyListsHandler({subCommand:"OL",callBack:e.callBack}),e.event.preventDefault();break;case"unordered-list":this.applyListsHandler({subCommand:"UL",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.getAction=function(e){return"OL"===e.parentNode.nodeName?"OL":"UL"},e.prototype.revertClean=function(){for(var e=this.parent.editableElement.querySelectorAll("ul, ol"),t=0;t<e.length;t++){var n=e[t].querySelectorAll("ul, ol");if(n.length>0)for(var i=0;i<n.length;i++){var o=n[i].previousSibling;o&&"LI"===o.tagName&&o.appendChild(n[i])}}},e.prototype.noPreviousElement=function(e){var n,i,o=e.querySelectorAll("ol, ul"),r=e.querySelectorAll("li"),s=this.domNode.contents(r[0])[0];if(r.length>0&&("OL"===s.nodeName||"UL"===s.nodeName)?n=r[0]:i=o[0],n)for(a=this.domNode.contents(e)[0];a&&!this.domNode.isList(a);null){l=a.nextSibling;t.prepend([a],n),t.setStyleAttribute(e,{"list-style-type":"none"}),t.setStyleAttribute(n,{"list-style-type":""}),a=l}else if(i){c=t.createElement("li");t.prepend([c],i);for(var a=this.domNode.contents(e)[0];a&&!this.domNode.isList(a);null){var l=a.nextSibling;c.appendChild(a),a=l}t.prepend([i],e.parentNode),t.detach(e);d=t.createElement("li",{styles:"list-style-type: none;"});t.prepend([d],i.parentNode),t.append([i],d)}else{var d=t.createElement("li",{styles:"list-style-type: none;"});t.prepend([d],e.parentNode);var c=t.createElement(e.parentNode.tagName);t.prepend([c],d),t.append([e],c)}},e.prototype.nestedList=function(e){for(var n=!1,i=0;i<e.length;i++){var o=this.domNode.getPreviousNode(e[i]);if(o){n=!0;var r=void 0,s=void 0,a=e[i].querySelectorAll("ol, ul"),l=e[i].querySelectorAll("li"),d=this.domNode.contents(l[0])[0];if(l.length>0&&("OL"===d.nodeName||"UL"===d.nodeName)?s=l[0]:r=a[0],r){h=t.createElement("li");t.prepend([h],r);for(c=this.domNode.contents(e[i])[0];c&&!this.domNode.isList(c);null){p=c.nextSibling;h.appendChild(c),c=p}t.append([r],o),t.detach(e[i])}else if(s){if("LI"===o.tagName){for(var c=this.domNode.contents(e[i])[0];c&&!this.domNode.isList(c);null){var p=c.nextSibling;t.prepend([c],s),t.setStyleAttribute(e[i],{"list-style-type":"none"}),t.setStyleAttribute(s,{"list-style-type":""}),c=p}t.append([s.parentNode],o),t.detach(e[i])}}else if("LI"===o.tagName){var h=t.createElement(e[i].parentNode.tagName);t.append([h],o),t.append([e[i]],h)}}else{var u=e[i];n=!0,this.noPreviousElement(u)}}return n},e.prototype.applyListsHandler=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument);this.saveSelection=this.parent.nodeSelection.save(t,this.parent.currentDocument),this.currentAction=e.subCommand,this.domNode.setMarker(this.saveSelection);for(var n=this.domNode.blockNodes(),i=0;i<n.length;i++)"TABLE"!==n[i].tagName||t.collapsed||n.splice(i,1),n.length>0&&"LI"!==n[i].tagName&&"LI"===n[i].parentNode.tagName&&(n[i]=n[i].parentNode);this.applyLists(n,this.currentAction,e.selector),e.callBack&&e.callBack({requestType:this.currentAction,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes()})},e.prototype.applyLists=function(e,t,n){if(this.isRevert(e,t))this.revertList(e),this.removeEmptyListElements();else{this.checkLists(e,t);for(var i=0;i<e.length;i++)if("true"===e[i].getAttribute("contenteditable")&&1===e[i].childNodes.length&&"TABLE"===e[i].childNodes[0].nodeName){var o=document.createElement(t);o.innerHTML="<li><br/></li>",e[i].appendChild(o)}else if("LI"!==e[i].tagName){var r="<"+t+">",s="</"+t+">",a="li"+("IMG"===e[i].tagName?"":this.domNode.attributes(e[i])),l="p"===e[i].tagName.toLowerCase()?e[i].innerHTML:e[i].outerHTML,d=r+this.domNode.createTagString(a,null,l)+s;this.domNode.replaceWith(e[i],d)}}this.cleanNode(),this.parent.editableElement.focus(),I()&&B(this.parent.editableElement,n),this.saveSelection=this.domNode.saveMarker(this.saveSelection),this.saveSelection.restore()},e.prototype.removeEmptyListElements=function(){for(var e=this.parent.editableElement.querySelectorAll("ol, ul"),n=0;n<e.length;n++)""===e[n].textContent.trim()&&t.detach(e[n])},e.prototype.isRevert=function(e,t){for(var n=!0,i=0;i<e.length;i++){if("LI"!==e[i].tagName)return!1;e[i].parentNode.tagName!==t&&(n=!1)}return n},e.prototype.checkLists=function(e,t){for(var n=[],i=0;i<e.length;i++){var o=e[i].parentNode;"LI"===e[i].tagName&&o.tagName!==t&&n.indexOf(o)<0&&n.push(o)}for(var r=n.length-1;r>=0;r--){var s=n[r],a="<"+t.toLowerCase()+" "+this.domNode.attributes(s)+">"+s.innerHTML+"</"+t.toLowerCase()+">";this.domNode.replaceWith(n[r],a)}},e.prototype.cleanNode=function(){for(var e=this.parent.editableElement.querySelectorAll("ol + ol, ul + ul"),t=0;t<e.length;t++){var n=e[t];if(this.domNode.isList(n.previousElementSibling)&&this.domNode.openTagString(n)===this.domNode.openTagString(n.previousElementSibling)){for(var i=this.domNode.contents(n),o=0;o<i.length;o++)n.previousElementSibling.appendChild(i[o]);n.parentNode.removeChild(n)}}},e.prototype.findUnSelected=function(e,t){if((e=e.slice().reverse()).length>0){var n=[],i=[],o=[],r=[];o=t[t.length-1].childNodes;for(var s=0;s<o.length;s++)if("OL"===o[s].tagName||"UL"===o[s].tagName){var a=o[s].querySelectorAll("li");if(a.length>0)for(var l=0;l<a.length;l++)r.push(a[l])}for(var d=0;d<r.length;d++){for(var c=0,p=0;p<e.length;p++)r[d].contains(e[p])||(c+=1);c===e.length&&i.push(r[d])}if(i.length>0)for(var h=0;h<i.length;h++)"OL"!==this.domNode.contents(i[h])[0].nodeName&&"UL"!==this.domNode.contents(i[h])[0].nodeName&&n.push(i[h]);n.length>0&&this.nestedList(n)}},e.prototype.revertList=function(e){for(var n=[],i=e.length-1;i>=0;i--)for(var o=i-1;o>=0;o--)if(e[o].contains(e[i])||e[o]===e[i]){n.push(e[i]),e.splice(i,1);break}this.findUnSelected(n,e);for(var r=[],i=0;i<e.length;i++){var s=e[i];3===this.domNode.contents(s)[0].nodeType&&0===this.domNode.contents(s)[0].textContent.trim().length&&t.detach(this.domNode.contents(s)[0]);var a=e[i].parentNode,l=s.getAttribute("class");if(0===n.length){var d=e[i].querySelectorAll("ul, ol")[0];if(d&&d.querySelectorAll("li")){var c=t.createElement(d.tagName);t.append([c],d.parentNode);var p=t.createElement("li",{styles:"list-style-type: none;"});t.append([p],c),t.append([d],p)}}if(s.parentNode.insertBefore(this.closeTag(a.tagName),s),"LI"===a.parentNode.tagName)s.parentNode.insertBefore(this.closeTag("LI"),s);else{if(0===s.querySelectorAll(Lt.join(", ")).length){var h="<p"+(t.isNullOrUndefined(l)?' class="e-rte-wrap-inner"':' class="'+l+' e-rte-wrap-inner"')+this.domNode.attributes(a)+"></p>";this.domNode.wrapInner(s,this.domNode.parseHTMLFragment(h))}else if(3===this.domNode.contents(s)[0].nodeType){u=this.domNode.createTagString("p",a,this.parent.domNode.encode(this.domNode.contents(s)[0].textContent));this.domNode.replaceWith(this.domNode.contents(s)[0],u)}else if(this.domNode.contents(s)[0].classList.contains(Mt.startSelection)||this.domNode.contents(s)[0].classList.contains(Mt.endSelection)){var u=this.domNode.createTagString("p",a,this.domNode.contents(s)[0].outerHTML);this.domNode.replaceWith(this.domNode.contents(s)[0],u)}else{var m=s.firstChild;l=m.getAttribute("class"),t.attributes(m,this.domNode.rawAttributes(a)),l&&m.getAttribute("class")&&t.attributes(m,{class:l+" "+m.getAttribute("class")})}t.append([this.openTag("LI")],s),t.prepend([this.closeTag("LI")],s)}this.domNode.insertAfter(this.openTag(a.tagName),s),"LI"===a.parentNode.tagName&&(a=a.parentNode.parentNode),r.indexOf(a)<0&&r.push(a)}for(i=0;i<r.length;i++){var g=r[i],f=g.innerHTML;f=(f=f.replace(/<span class="e-rte-list-close-([a-z]*)"><\/span>/g,"</$1>")).replace(/<span class="e-rte-list-open-([a-z]*)"><\/span>/g,"<$1 "+this.domNode.attributes(g)+">"),this.domNode.replaceWith(g,this.domNode.openTagString(g)+f.trim()+this.domNode.closeTagString(g))}for(var b=this.parent.editableElement.querySelectorAll("ul:empty, ol:empty"),i=0;i<b.length;i++)t.detach(b[i]);for(var v=this.parent.editableElement.querySelectorAll("li:empty"),i=0;i<v.length;i++)t.detach(v[i])},e.prototype.openTag=function(e){return this.domNode.parseHTMLFragment('<span class="e-rte-list-open-'+e.toLowerCase()+'"></span>')},e.prototype.closeTag=function(e){return this.domNode.parseHTMLFragment('<span class="e-rte-list-close-'+e.toLowerCase()+'"></span>')},e}(),Bt=function(){function e(){}return e.WrapBefore=function(e,t,n){return t.innerText=e.textContent,n?this.AppendBefore(t,e,!0):this.AppendBefore(t,e),e.parentNode&&e.parentNode.removeChild(e),t.childNodes[0]},e.Wrap=function(e,t){return this.AppendBefore(t,e),t.appendChild(e),e},e.unwrap=function(e){for(var t=e.parentNode,n=[];e.firstChild;null)n.push(t.insertBefore(e.firstChild,e));return t.removeChild(e),n},e.AppendBefore=function(e,t,n){return t.parentNode?n?t.parentNode.insertBefore(e,t.nextSibling):t.parentNode.insertBefore(e,t):t},e}(),Pt=function(){function e(){this.position=-1,this.nodeSelection=new Dt}return e.prototype.GetSpliceNode=function(e,t){return t=this.SplitNode(e,t,!0),t=this.SplitNode(e,t,!1)},e.prototype.SplitNode=function(e,t,n){if(t){var i=e.cloneRange(),o=t.parentNode,r=this.nodeSelection.getIndex(t);i.collapse(n),n?i.setStartBefore(t):i.setEndAfter(t);var s=i.extractContents();if(n)t=o.childNodes[r],(s=this.spliceEmptyNode(s,!1))&&s.childNodes.length>0&&((a=!(1!==s.childNodes.length||"IMG"===s.childNodes[0].nodeName||!this.isImgElm(s)||""!==s.textContent))||(t?Bt.AppendBefore(s,t):(o.appendChild(s),(l=document.createElement("div")).innerHTML="&#65279;&#65279;",t=l.firstChild,o.appendChild(t))));else if(t=o.childNodes.length>1?o.childNodes[r]:o.childNodes[0],(s=this.spliceEmptyNode(s,!0))&&s.childNodes.length>0){var a=!(1!==s.childNodes.length||"IMG"===s.childNodes[0].nodeName||!this.isImgElm(s)||""!==s.textContent);if(!a)if(t)Bt.AppendBefore(s,t,!0);else{o.appendChild(s);var l=document.createElement("div");l.innerHTML="&#65279;&#65279;",o.insertBefore(l.firstChild,o.firstChild),t=o.firstChild}}return t}return null},e.prototype.isImgElm=function(e){var n=!0;if(1===e.childNodes.length&&"IMG"!==e.childNodes[0].nodeName)for(var i=e.childNodes[0],o=0;!t.isNullOrUndefined(i.childNodes)&&o<i.childNodes.length;o++)"IMG"===i.childNodes[o].nodeName&&(n=!1);else n=!0;return n},e.prototype.spliceEmptyNode=function(e,t){var n;return n=1===e.childNodes.length&&"#text"===e.childNodes[0].nodeName&&""===e.childNodes[0].textContent||""===e.textContent?-1:e.childNodes.length-1,n>-1&&!t?this.spliceEmptyNode(e.childNodes[n],t):n>-1?this.spliceEmptyNode(e.childNodes[0],t):3!==e.nodeType&&11!==e.nodeType&&e.parentNode.removeChild(e),e},e.prototype.GetCursorStart=function(e,t,n){for(var i=(e=n?e:e.reverse())[0],o=0;o<e.length&&(n?e[o]<t:e[o]>=t);o++)i=e[o];return i},e.prototype.GetCursorRange=function(e,t,n){var i=e.createRange(),o=[];o.push(0);for(var r=this.TrimLineBreak(n.data),s=r.indexOf(" ",0);-1!==s;)o.indexOf(s)<0&&o.push(s),new RegExp("\\s").test(r[s-1])&&o.indexOf(s-1)<0&&o.push(s-1),new RegExp("\\s").test(r[s+1])&&o.push(s+1),s=r.indexOf(" ",s+1);if(o.push(r.length),o.indexOf(t.startOffset)>=0||o.indexOf(t.startOffset-1)>=0&&(1!==t.startOffset||1===t.startOffset&&new RegExp("\\s").test(r[0]))||o[o.length-1]-1===t.startOffset)i=t,this.position=1;else{var a=this.GetCursorStart(o,t.startOffset,!0);this.position=t.startOffset-a,i.setStart(t.startContainer,a),i.setEnd(t.startContainer,this.GetCursorStart(o,t.startOffset,!1))}return i},e.prototype.GetCursorNode=function(e,t,n){return this.GetSpliceNode(this.GetCursorRange(e,t,n),n)},e.prototype.TrimLineBreak=function(e){return e.replace(/(\r\n\t|\n|\r\t)/gm," ")},e}(),At=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("format-type",this.applyFormats,this),this.parent.observer.on("keyup-handler",this.onKeyUp,this),this.parent.observer.on("keydown-handler",this.onKeyDown,this)},e.prototype.getParentNode=function(e){for(;e.parentNode&&e.parentNode!==this.parent.editableElement;null)e=e.parentNode;return e},e.prototype.onKeyUp=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=n.endContainer,o=i.lastChild;if(13===e.event.which&&n.startContainer===i&&3!==i.nodeType){var r=t.createElement("p");if(r.innerHTML="<br>","BR"===o.nodeName&&o.previousSibling&&"TABLE"===o.previousSibling.nodeName)i.replaceChild(r,o),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,r,0);else{var s=this.parent.nodeSelection.getSelectionNodeCollectionBr(n)[0];!t.isNullOrUndefined(s)&&"BR"===s.nodeName&&s.previousSibling&&"TABLE"===s.previousSibling.nodeName&&(i.replaceChild(r,s),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,r,0))}}},e.prototype.onKeyDown=function(e){if(13===e.event.which){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=0===n.startContainer.textContent.length||"PRE"===n.startContainer.nodeName?n.startContainer:n.startContainer.parentElement,o=0===n.endContainer.textContent.length||"PRE"===n.endContainer.nodeName?n.endContainer:n.endContainer.parentElement,r=t.closest(i,"pre"),s=t.closest(o,"pre");if(!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(r.parentElement)&&"LI"===r.parentElement.tagName)return;if((t.isNullOrUndefined(r)&&!t.isNullOrUndefined(s)||!t.isNullOrUndefined(r)&&t.isNullOrUndefined(s))&&(e.event.preventDefault(),this.deleteContent(n),this.removeCodeContent(n),n=this.parent.nodeSelection.getRange(this.parent.currentDocument),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,o,0)),13===e.event.which&&!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(s)){e.event.preventDefault(),this.deleteContent(n),this.removeCodeContent(n);var a=(n=this.parent.nodeSelection.getRange(this.parent.currentDocument)).startContainer.childNodes[n.endOffset],l=n.startContainer.childNodes[n.endOffset-1],d=n.startContainer;if(t.isNullOrUndefined(a)||t.isNullOrUndefined(l)||!t.isNullOrUndefined(a.nextSibling)||"BR"!==a.nodeName||"BR"!==l.nodeName)if(8203===d.textContent.charCodeAt(0)&&1===d.textContent.length||0===d.textContent.length){for(;"PRE"!==d.parentElement.nodeName&&(1===d.textContent.length||0===d.textContent.length);)d=d.parentElement;!t.isNullOrUndefined(d.previousSibling)&&"BR"===d.previousSibling.nodeName&&t.isNullOrUndefined(d.nextSibling)?this.paraFocus(d.parentElement):this.isNotEndCursor(r,n)}else this.isNotEndCursor(r,n);else this.paraFocus(n.startContainer)}}},e.prototype.removeCodeContent=function(e){var n=new RegExp(String.fromCharCode(65279),"g");if(!t.isNullOrUndefined(e.endContainer.textContent.match(n))){var i=65279===e.endContainer.textContent.charCodeAt(e.endOffset-1)?e.endOffset-2:e.endOffset;e.endContainer.textContent=e.endContainer.textContent.replace(n,""),""===e.endContainer.textContent?this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e.endContainer.parentElement,0):this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e.endContainer,i)}},e.prototype.deleteContent=function(e){e.startContainer===e.endContainer&&e.startOffset===e.endOffset||e.deleteContents()},e.prototype.paraFocus=function(e){var n=t.createElement("p");n.innerHTML="<br>",this.parent.domNode.insertAfter(n,e),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,n,0),t.detach(e.lastChild)},e.prototype.isNotEndCursor=function(e,n){var i=new Pt,o=n.startOffset===e.lastChild.textContent.length&&e.lastChild.textContent===n.startContainer.textContent;if(0===e.textContent.indexOf(n.startContainer.textContent)&&(0===n.startOffset&&0===n.endOffset||"PRE"===n.startContainer.nodeName)){this.insertMarker(e,n);var r=t.createElement("br");e.childNodes[n.endOffset].parentElement.insertBefore(r,e.childNodes[n.endOffset])}else{var s=i.SplitNode(n,e,!0);this.insertMarker(e,n);var a=e.previousElementSibling;"PRE"===a.tagName&&(a.insertAdjacentHTML("beforeend","<br>"+s.innerHTML),t.detach(e))}this.setCursorPosition(o,e)},e.prototype.setCursorPosition=function(e,n){var i=!1,o=this.parent.editableElement.querySelector(".tempSpan"),r=o.parentElement;if(""===o.parentNode.textContent?i=!0:this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,o,0),e)if(i)r===n?(this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,o,0),t.detach(o)):this.focusSelectionParent(o,r);else{var s=t.createElement("br");this.parent.domNode.insertAfter(s,o),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,o,0),t.detach(o)}else i?this.focusSelectionParent(o,r):t.detach(o)},e.prototype.focusSelectionParent=function(e,n){t.detach(e),n.innerHTML="​",this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,n,0)},e.prototype.insertMarker=function(e,n){var i=t.createElement("span",{className:"tempSpan"});"PRE"===n.startContainer.nodeName?e.childNodes[n.endOffset].parentElement.insertBefore(i,e.childNodes[n.endOffset]):n.startContainer.parentElement.insertBefore(i,n.startContainer)},e.prototype.applyFormats=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=!1;this.parent.editableElement!==n.endContainer||t.isNullOrUndefined(this.parent.editableElement.children[n.endOffset-1])||"TABLE"!==this.parent.editableElement.children[n.endOffset-1].tagName||n.collapsed||(i=!0);var o=this.parent.nodeSelection.save(n,this.parent.currentDocument);this.parent.domNode.setMarker(o);for(var r=this.parent.domNode.blockNodes(),s=0;s<r.length;s++){var a=void 0,l=void 0;if("blockquote"===e.subCommand.toLowerCase()?(a=this.getParentNode(r[s]),l=this.parent.domNode.isList(a)||"TABLE"===a.tagName?a.outerHTML:a.innerHTML):l=(a=r[s]).innerHTML,!(e.subCommand.toLowerCase()===a.tagName.toLowerCase()&&("pre"!==e.subCommand.toLowerCase()||!t.isNullOrUndefined(e.exeValue)&&"dropDownSelect"===e.exeValue.name)||t.isNullOrUndefined(a.parentNode)||"LI"===a.tagName&&"pre"!==e.subCommand.toLowerCase()||"TABLE"===a.tagName&&"pre"===e.subCommand.toLowerCase())){this.cleanFormats(a,e.subCommand);var d="pre"===e.subCommand.toLowerCase()&&"pre"===a.tagName.toLowerCase()?"p":e.subCommand,c=this.parent.domNode.createTagString(d,a,l.replace(/>\s+</g,"><"));"LI"===a.tagName?(a.innerHTML="",a.insertAdjacentHTML("beforeend",c)):this.parent.domNode.replaceWith(a,c)}}this.preFormatMerge();var p=this.parent.editableElement.querySelector("."+Mt.startSelection),h=this.parent.editableElement.querySelector("."+Mt.endSelection);t.isNullOrUndefined(p)||t.isNullOrUndefined(h)||(p=p.lastChild,h=h.lastChild),o=this.parent.domNode.saveMarker(o,null),I()&&B(this.parent.editableElement,e.selector),i?this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,p,h,0,h.textContent.length):o.restore(),e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes()})},e.prototype.preFormatMerge=function(){var e=this.parent.editableElement.querySelectorAll("PRE");if(!t.isNullOrUndefined(e))for(var n=0;n<e.length;n++){var i=e[n].previousElementSibling;t.isNullOrUndefined(i)||"PRE"!==i.tagName||(i.insertAdjacentHTML("beforeend","<br>"+e[n].innerHTML),t.detach(e[n]))}},e.prototype.cleanFormats=function(e,t){var n=["display","font-size","margin-top","margin-bottom","margin-left","margin-right","font-weight"];t=t.toLowerCase();for(var i=0;i<n.length&&"p"!==t&&"blockquote"!==t&&"pre"!==t;i++)e.style.removeProperty(n[i])},e}(),Ht=function(){function e(){}return e.Insert=function(e,n,i,o){var r;if("string"==typeof n)(s=document.createElement("div")).innerHTML=n,r=o?s:s.firstChild;else if(o&&(t.isNullOrUndefined(n)||t.isNullOrUndefined(n.classList)||!n.classList.contains("pasteContent"))){var s=document.createElement("div");s.appendChild(n),r=s}else r=n;var a=new Dt,l=new Pt,d=a.getRange(e),c=d.startOffset===d.endOffset&&0===d.startOffset&&d.startContainer===d.endContainer,p=d.collapsed,h=this.getNodeCollection(d,a,r),u="table"===r.nodeName.toLowerCase()?this.closestEle(h[0].parentNode,i):h[0];if(o||!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(r.classList)&&r.classList.contains("pasteContent"))return void this.pasteInsertHTML(h,r,d,a,l,e,p,u,i);if(i!==d.startContainer&&(!p&&(u.nodeType!==Node.ELEMENT_NODE||-1===Ot.indexOf(u.tagName.toLocaleLowerCase()))||"table"===r.nodeName.toLowerCase()&&u&&-1===Ot.indexOf(u.tagName.toLocaleLowerCase()))){var m=l.GetSpliceNode(d,u),g=m.previousSibling,f=m.parentNode;if(1===h.length)a.setSelectionContents(e,m),d=a.getRange(e);else{var b=l.GetSpliceNode(d,h[h.length-1].parentElement);b=t.isNullOrUndefined(b)?m:b,a.setSelectionText(e,m,b,0,3===b.nodeType?b.textContent.length:b.childNodes.length),d=a.getRange(e)}d.extractContents(),"TABLE"===n.tagName&&this.removeEmptyElements(i);for(var v=0;v<h.length;v++)if(3!==h[v].nodeType&&null!=h[v].parentNode){if("IMG"===h[v].nodeName)continue;h[v].parentNode.removeChild(h[v])}if(g)Bt.AppendBefore(r,g,!0);else{for(var y=null;f!==i&&f.firstChild&&""===f.textContent.trim();)y=f,f=f.parentNode;null!==y&&(f=y),f.firstChild&&(f!==i||"TABLE"===r.nodeName&&c&&f===d.startContainer&&f===d.endContainer)?""===f.textContent.trim()&&f!==i?(Bt.AppendBefore(r,f,!1),t.detach(f)):Bt.AppendBefore(r,f.firstChild,!1):f.appendChild(r)}"IMG"===r.nodeName?this.imageFocus(r,a,e):3!==r.nodeType?a.setSelectionText(e,r,r,0,r.childNodes.length):a.setSelectionText(e,r,r,0,r.textContent.length)}else{if(d.deleteContents(),c&&""===d.startContainer.textContent&&(d.startContainer.innerHTML=""),t.Browser.isIE){var C=e.createDocumentFragment();C.appendChild(r),d.insertNode(C)}else d.insertNode(r);3!==r.nodeType&&r.childNodes.length>0?a.setSelectionText(e,r,r,1,1):"IMG"===r.nodeName?this.imageFocus(r,a,e):3!==r.nodeType?a.setSelectionContents(e,r):a.setSelectionText(e,r,r,r.textContent.length,r.textContent.length)}},e.pasteInsertHTML=function(e,n,i,o,r,s,a,l,d){var c=i.startOffset===i.endOffset&&i.startContainer===i.endContainer;if(c&&i.startContainer===d&&""===d.textContent){var p=this.getImmediateBlockNode(e[e.length-1],d);o.setSelectionText(s,p,p,0,0),i=o.getRange(s)}var h,u,m,g;d!==i.startContainer&&(!a&&(l.nodeType!==Node.ELEMENT_NODE||-1===Ot.indexOf(l.tagName.toLocaleLowerCase()))||"table"===n.nodeName.toLowerCase()&&l&&-1===Ot.indexOf(l.tagName.toLocaleLowerCase()))&&(g=r.GetSpliceNode(i,l),u=t.isNullOrUndefined(g.previousSibling)?g.parentNode.previousSibling:g.previousSibling,1===e.length?(o.setSelectionContents(s,g),i=o.getRange(s),m=!0):(h=r.GetSpliceNode(i,e[e.length-1].parentElement),h=t.isNullOrUndefined(h)?g:h,o.setSelectionText(s,g,h,0,3===h.nodeType?h.textContent.length:h.childNodes.length),i=o.getRange(s),m=!1));var f=!1;this.removingComments(n);for(var b=n.childNodes,v=0;v<b.length;v++)if(Lt.indexOf(b[v].nodeName.toLocaleLowerCase())>=0){f=!0;break}var y,C=document.createDocumentFragment();if(f){this.insertTempNode(i,n,e,r,d);var S=!0,T=void 0,E=void 0,N=void 0;for(i.deleteContents();n.firstChild;)if("#text"!==n.firstChild.nodeName||""!==n.firstChild.textContent.trim())if("#text"===n.firstChild.nodeName&&S||this.inlineNode.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0&&S){if(y=n.firstChild,t.isNullOrUndefined(n.previousElementSibling)){var w=t.createElement("p");n.parentElement.insertBefore(w,n)}n.previousElementSibling.appendChild(n.firstChild)}else y=n.firstChild,"#text"===n.firstChild.nodeName||this.inlineNode.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(T?(N.appendChild(n.firstChild),C.appendChild(N)):((E=t.createElement("p")).appendChild(n.firstChild),C.appendChild(E)),N=E,T=!0):(C.appendChild(n.firstChild),T=!1),S=!1;else t.detach(n.firstChild);n.parentNode.replaceChild(C,n)}else if(c){var k=t.createElement("span",{className:"tempSpan"});for(i.insertNode(k);n.firstChild;)y=n.firstChild,C.appendChild(n.firstChild);k.parentNode.replaceChild(C,k)}else{for(;n.firstChild;)y=n.firstChild,C.appendChild(n.firstChild);m?g.parentNode.replaceChild(C,g):(i.deleteContents(),t.detach(h),t.isNullOrUndefined(u)?d.appendChild(C):u.parentNode.appendChild(C))}"#text"===y.nodeName?this.placeCursorEnd(y,n,o,s,d):this.cursorPos(y,n,o,s,d)},e.placeCursorEnd=function(e,n,i,o,r){for(e="BR"===e.nodeName?t.isNullOrUndefined(e.previousSibling)?e.parentNode:e.previousSibling:e;!t.isNullOrUndefined(e)&&"#text"!==e.nodeName&&"IMG"!==e.nodeName&&"BR"!==e.nodeName&&"HR"!==e.nodeName;)e=e.lastChild;"IMG"===(e=t.isNullOrUndefined(e)?n:e).nodeName?this.imageFocus(e,i,o):i.setSelectionText(o,e,e,e.textContent.length,e.textContent.length),this.removeEmptyElements(r)},e.getNodeCollection=function(e,t,n){var i=[];return e.startOffset===e.endOffset&&e.startContainer===e.endContainer&&("TD"===e.startContainer.nodeName||3!==e.startContainer.nodeType&&n.classList&&n.classList.contains("pasteContent"))?i.push(e.startContainer.childNodes[e.endOffset]):i=t.getInsertNodeCollection(e),i},e.insertTempNode=function(e,n,i,o,r){if(e.startContainer!==r||t.isNullOrUndefined(e.startContainer.childNodes[e.endOffset-1])||"TABLE"!==e.startContainer.childNodes[e.endOffset-1].nodeName)if(e.startContainer!==r||t.isNullOrUndefined(e.startContainer.childNodes[e.endOffset])||"TABLE"!==e.startContainer.childNodes[e.endOffset].nodeName){var s=this.getImmediateBlockNode(i[i.length-1],r);if(t.isNullOrUndefined(s.parentElement)&&3!==e.endContainer.nodeType&&(s=e.endContainer,e.setEnd(s,e.endContainer.textContent.length)),"TD"===s.nodeName||"TH"===s.nodeName){var a=t.createElement("span",{className:"tempSpan"});e.insertNode(a),a.parentNode.replaceChild(n,a)}else{var l=o.GetSpliceNode(e,s);l.parentNode.replaceChild(n,l)}}else e.startContainer.insertBefore(n,e.startContainer.childNodes[e.endOffset]);else t.isNullOrUndefined(e.startContainer.childNodes[e.endOffset-1].nextSibling)?e.startContainer.appendChild(n):e.startContainer.insertBefore(n,e.startContainer.childNodes[e.endOffset-1].nextSibling)},e.cursorPos=function(e,n,i,o,r){e.classList.add("lastNode"),r.innerHTML=P(r.innerHTML),e=r.querySelector(".lastNode"),t.isNullOrUndefined(e)||(this.placeCursorEnd(e,n,i,o,r),e.classList.remove("lastNode"),0===e.classList.length&&e.removeAttribute("class"))},e.imageFocus=function(e,t,n){var i=document.createTextNode(" ");e.parentNode.insertBefore(i,e.nextSibling),t.setSelectionText(n,e.nextSibling,e.nextSibling,0,0)},e.getImmediateBlockNode=function(e,t){do{e=e.parentNode}while(Lt.indexOf(e.nodeName.toLocaleLowerCase())<0);return e},e.removingComments=function(e){var t=e.innerHTML;t=t.replace(/<!--[\s\S]*?-->/g,""),e.innerHTML=t},e.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:""===e.parentElement.textContent.trim()&&"true"!==e.parentElement.contentEditable?this.findDetachEmptyElem(e.parentElement):e},e.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++)if("IMG"!==n[i].tagName&&"BR"!==n[i].tagName&&"IFRAME"!==n[i].tagName&&"TD"!==n[i].tagName&&"SOURCE"!==n[i].tagName&&"HR"!==n[i].tagName){var o=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(o)||t.detach(o)}},e.closestEle=function(e,n){for(var i=e;i&&1===i.nodeType;){if(i.parentNode===n||!t.isNullOrUndefined(i.parentNode.tagName)&&-1!==xt.indexOf(i.parentNode.tagName.toLocaleLowerCase()))return i;i=i.parentNode}return null},e.inlineNode=["a","abbr","acronym","audio","b","bdi","bdo","big","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","font","i","iframe","img","input","ins","kbd","label","map","mark","meter","noscript","object","output","picture","progress","q","ruby","s","samp","script","select","slot","small","span","strong","sub","sup","svg","template","textarea","time","u","tt","var","video","wbr"],e}(),Ut=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(kt,this.linkCommand,this)},e.prototype.linkCommand=function(e){switch(e.value.toString().toLocaleLowerCase()){case"createlink":case"editlink":this.createLink(e);break;case"openlink":this.openLink(e);break;case"removelink":this.removeLink(e)}},e.prototype.createLink=function(e){var n=!t.isNullOrUndefined(e.item.selectParent)&&e.item.selectParent.length>0&&t.closest(e.item.selectParent[0],"a");if(n=t.isNullOrUndefined(n)?!t.isNullOrUndefined(e.item.selectParent)&&e.item.selectParent.length>0?e.item.selectParent[0]:null:n,t.isNullOrUndefined(n)||"A"!==n.tagName){var i=(new Dt).getRange(this.parent.currentDocument),o=!!t.isNullOrUndefined(e.item.text)||e.item.text.replace(/ /g,"").localeCompare(i.toString().replace(/\n/g," ").replace(/ /g,""))<0;if(e.event&&"keydown"===e.event.type&&(32===e.event.keyCode||13===e.event.keyCode)||"Paste"===e.item.action||i.collapsed||o){var r=this.createAchorNode(e);if(r.innerText=""===e.item.text?e.item.url:e.item.text,e.item.selection.restore(),Ht.Insert(this.parent.currentDocument,r,this.parent.editableElement),!e.event||"keydown"!==e.event.type||32!==e.event.keyCode&&13!==e.event.keyCode){d="Paste"===e.item.action?r.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,r.childNodes[0],r.childNodes[0],d,r.childNodes[0].textContent.length)}else{var s=e.item.selection.range.startContainer;s.textContent=this.removeText(s.textContent,e.item.text)}}else this.createLinkNode(e)}else{var a=n,l="";if(t.isNullOrUndefined(e.item.url)||a.setAttribute("href",e.item.url),t.isNullOrUndefined(e.item.title)||a.setAttribute("title",e.item.title),t.isNullOrUndefined(e.item.text)||""===e.item.text||(l=a.innerText,a.innerText=e.item.text),t.isNullOrUndefined(e.item.target)?a.removeAttribute("target"):a.setAttribute("target",e.item.target),l===e.item.text)e.item.selection.setSelectionText(this.parent.currentDocument,a,a,1,1),e.item.selection.restore();else{var d="Paste"===e.item.action?a.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,a.childNodes[0],a.childNodes[0],d,a.childNodes[0].textContent.length)}}e.callBack&&e.callBack({requestType:"Links",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.createLinkNode=function(e){for(var t,n,i=new Dt,o=new Pt,r=i.getRange(this.parent.currentDocument),s=this.getSelectionNodes(i.getNodeCollection(r)),a=i.save(r,this.parent.currentDocument),l=[],d=[],c=[],p=[],h=[],u=0;u<s.length;u++)s[u]=o.GetSpliceNode(r,s[u]),l[u]=s[u];for(f=0;f<l.length;f++){var m=!0;for(t=l[f];!0===m;){if("A"===t.parentNode.nodeName){var g=t.parentNode;t.parentNode.parentNode.insertBefore(g.firstChild,g),t.parentNode.removeChild(g)}this.isBlockNode(t.parentNode)||0===l.length||0===f||f===l.length-1?(d[f]=t,m=!1):t=t.parentNode}}for(var f=0,b=0;f<d.length;f++)if(0===f&&(h[b]=d[f]),d.length>1&&f<d.length-1){if(d[f].parentElement===d[f+1].parentElement&&d[f]===d[f+1])continue;h[b+1]=d[f+1],b++}var v=0;p[v]=this.createAchorNode(e);for(f=0;f<h.length;f++)if(0===f&&(n=h[f].cloneNode(!0),p[f].appendChild(n)),f<h.length-1)if(h[f].parentNode===h[f+1].parentNode){var y=h[f+1].cloneNode(!0);p[v].appendChild(y)}else p[v+=1]=this.createAchorNode(e),n=h[f+1].cloneNode(!0),p[v].appendChild(n);this.parent.nodeSelection.setRange(document,a.range);for(var f=0,C=0,S=0;f<=h.length;f++)0===f&&(h[f].parentNode.insertBefore(p[C],h[f].nextSibling),1===this.parent.domNode.blockNodes().length&&this.parent.nodeSelection.setSelectionNode(this.parent.currentDocument,p[C]),c[S]=h[f],S++),f<h.length-1&&(h[f].parentNode===h[f+1].parentNode?(c[S]=h[f+1],S++):(C+=1,h[f+1].parentNode.insertBefore(p[C],h[f+1]),c[S]=h[f+1],S++));for(f=0;f<c.length;f++)c[f].parentNode&&c[f].parentNode.removeChild(c[f])},e.prototype.createAchorNode=function(e){var n=t.createElement("a",{className:"e-rte-anchor",attrs:{href:e.item.url,title:t.isNullOrUndefined(e.item.title)||""===e.item.title?e.item.url:e.item.title}});return t.isNullOrUndefined(e.item.target)||n.setAttribute("target",e.item.target),n},e.prototype.getSelectionNodes=function(e){e=e.reverse();for(var t=0;t<e.length;t++)3===e[t].nodeType&&""!==e[t].textContent.trim()||"IMG"!==e[t].nodeName&&(e.splice(t,1),t--);return e.reverse()},e.prototype.isBlockNode=function(e){return!!e&&e.nodeType===Node.ELEMENT_NODE&&Lt.indexOf(e.tagName.toLowerCase())>=0},e.prototype.removeText=function(e,t){for(var n=e.split(" "),i=0;i<n.length;i++)n[i]===t&&(n.splice(i,1),i--);return n.join(" ")+" "},e.prototype.openLink=function(e){document.defaultView.open(e.item.url,e.item.target),this.callBack(e)},e.prototype.removeLink=function(e){var n=this.parent.domNode.blockNodes();if(n.length<2){this.parent.domNode.setMarker(e.item.selection);for(var i=t.closest(e.item.selectParent[0],"a"),o=i||e.item.selectParent[0],r=o.parentNode,s=[];o.firstChild;null)s.push(r.insertBefore(o.firstChild,o));r.removeChild(o),s&&1===s.length&&(e.item.selection.startContainer=e.item.selection.getNodeArray(s[s.length-1],!0),e.item.selection.endContainer=e.item.selection.startContainer),e.item.selection=this.parent.domNode.saveMarker(e.item.selection)}else for(var a=0;a<n.length;a++)for(var l=n[a].querySelectorAll("a"),d=0;d<l.length;d++)document.getSelection().containsNode(l[d],!0)&&(l[d].outerHTML=l[d].innerHTML);e.item.selection.restore(),this.callBack(e)},e.prototype.callBack=function(e){e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),jt=function(){function e(e){this.alignments={JustifyLeft:"left",JustifyCenter:"center",JustifyRight:"right",JustifyFull:"justify"},this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("alignment-type",this.applyAlignment,this),this.parent.observer.on("keydown-handler",this.onKeyDown,this)},e.prototype.onKeyDown=function(e){switch(e.event.action){case"justify-center":this.applyAlignment({subCommand:"JustifyCenter",callBack:e.callBack}),e.event.preventDefault();break;case"justify-full":this.applyAlignment({subCommand:"JustifyFull",callBack:e.callBack}),e.event.preventDefault();break;case"justify-left":this.applyAlignment({subCommand:"JustifyLeft",callBack:e.callBack}),e.event.preventDefault();break;case"justify-right":this.applyAlignment({subCommand:"JustifyRight",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.getTableNode=function(e){var n=e.startContainer.nodeType===Node.ELEMENT_NODE?e.startContainer:e.startContainer.parentNode;return[t.closest(n,"td,th")]},e.prototype.applyAlignment=function(e){var n="Table"===e.value,i=this.parent.nodeSelection.getRange(this.parent.currentDocument),o=this.parent.nodeSelection.save(i,this.parent.currentDocument);if(n)t.setStyleAttribute(this.getTableNode(i)[0],{"text-align":this.alignments[e.subCommand]});else{this.parent.domNode.setMarker(o);for(var r=this.parent.domNode.blockNodes(),s=0;s<r.length;s++){var a=r[s];t.setStyleAttribute(a,{"text-align":this.alignments[e.subCommand]})}for(var l=this.parent.domNode.getImageTagInSelection(),s=0;s<l.length;s++){var d=[];d.push(l[s]),this.parent.imgObj.imageCommand({item:{selectNode:d},subCommand:e.subCommand,value:e.subCommand,callBack:e.callBack,selector:e.selector})}this.parent.editableElement.focus(),o=this.parent.domNode.saveMarker(o),I()&&B(this.parent.editableElement,e.selector),o.restore()}e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:n?this.getTableNode(i):this.parent.domNode.blockNodes()})},e}(),zt=function(){function e(e){this.indentValue=20,this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("indent-type",this.applyIndents,this),this.parent.observer.on("keydown-handler",this.onKeyDown,this)},e.prototype.onKeyDown=function(e){switch(e.event.action){case"indents":this.applyIndents({subCommand:"Indent",callBack:e.callBack}),e.event.preventDefault();break;case"outdents":this.applyIndents({subCommand:"Outdent",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.applyIndents=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument),n=this.parent.nodeSelection.save(t,this.parent.currentDocument);this.parent.domNode.setMarker(n);for(var i=this.parent.domNode.blockNodes(),o=i.slice(),r=[],s=0;s<o.length;s++)"LI"!==o[s].tagName&&"LI"===o[s].parentNode.tagName?(i.splice(i.indexOf(o[s]),1),r.push(o[s].parentNode)):"LI"===o[s].tagName&&(i.splice(i.indexOf(o[s]),1),r.push(o[s]));r.length>0&&this.parent.observer.notify("keydown-handler",{event:{preventDefault:function(){},stopPropagation:function(){},shiftKey:"Indent"!==e.subCommand,which:9,action:"indent"},ignoreDefault:!0});for(s=0;s<i.length;s++){var a=i[s],l=a.style.marginLeft,d=void 0;"Indent"===e.subCommand?(d=""===l?this.indentValue+"px":parseInt(l,null)+this.indentValue+"px",a.style.marginLeft=d):(d=""===l||"0px"===l?"":parseInt(l,null)-this.indentValue+"px",a.style.marginLeft=d)}this.parent.editableElement.focus(),I()&&B(this.parent.editableElement,e.selector),(n=this.parent.domNode.saveMarker(n)).restore(),e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes()})},e}(),Ft="e-img-caption",_t=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Nt,this.imageCommand,this)},e.prototype.imageCommand=function(e){switch(e.value.toString().toLocaleLowerCase()){case"image":case"replace":this.createImage(e);break;case"insertlink":this.insertImageLink(e);break;case"openimagelink":this.openImageLink(e);break;case"editimagelink":this.editImageLink(e);break;case"removeimagelink":this.removeImageLink(e);break;case"remove":this.removeImage(e);break;case"alttext":this.insertAltTextImage(e);break;case"dimension":this.imageDimension(e);break;case"caption":this.imageCaption(e);break;case"justifyleft":this.imageJustifyLeft(e);break;case"justifycenter":this.imageJustifyCenter(e);break;case"justifyright":this.imageJustifyRight(e);break;case"inline":this.imageInline(e);break;case"break":this.imageBreak(e)}},e.prototype.createImage=function(e){var n=this,i=!1;if(e.item.url=t.isNullOrUndefined(e.item.url)||"undefined"===e.item.url?e.item.src:e.item.url,t.isNullOrUndefined(e.item.selectParent)||"IMG"!==e.item.selectParent[0].tagName){var o=t.createElement("img");this.setStyle(o,e),t.isNullOrUndefined(e.item.selection)||e.item.selection.restore(),t.isNullOrUndefined(e.selector)||"pasteCleanupModule"!==e.selector?Ht.Insert(this.parent.currentDocument,o,this.parent.editableElement):e.callBack({requestType:"Image",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:[o]})}else{var r=e.item.selectParent[0];this.setStyle(r,e),i=!0}if(e.callBack&&(t.isNullOrUndefined(e.selector)||!t.isNullOrUndefined(e.selector)&&"pasteCleanupModule"!==e.selector)){var s=this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)[0],a="Replace"===e.value||i?e.item.selectParent[0]:t.Browser.isIE?s.previousSibling:s.previousElementSibling;a.addEventListener("load",function(){e.callBack({requestType:"Image",editorMode:"HTML",event:e.event,range:n.parent.nodeSelection.getRange(n.parent.currentDocument),elements:[a]})})}},e.prototype.setStyle=function(e,n){t.isNullOrUndefined(n.item.url)||e.setAttribute("src",n.item.url),e.setAttribute("class","e-rte-image"+(t.isNullOrUndefined(n.item.cssClass)?"":" "+n.item.cssClass)),t.isNullOrUndefined(n.item.altText)||e.setAttribute("alt",n.item.altText),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.width)||e.setAttribute("width",this.calculateStyleValue(n.item.width.width)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.height)||e.setAttribute("height",this.calculateStyleValue(n.item.height.height)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.minWidth)||(e.style.minWidth=this.calculateStyleValue(n.item.width.minWidth)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.maxWidth)||(e.style.maxWidth=this.calculateStyleValue(n.item.width.maxWidth)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.minHeight)||(e.style.minHeight=this.calculateStyleValue(n.item.height.minHeight)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.maxHeight)||(e.style.maxHeight=this.calculateStyleValue(n.item.height.maxHeight))},e.prototype.calculateStyleValue=function(e){return"string"==typeof e&&(e.indexOf("px")||e.indexOf("%")||e.indexOf("auto"))?e:e+"px"},e.prototype.insertImageLink=function(e){var n=t.createElement("a",{attrs:{href:e.item.url}});e.item.selectNode[0].parentElement.classList.contains("e-img-wrap")&&(e.item.selection.restore(),n.setAttribute("contenteditable","true")),n.appendChild(e.item.selectNode[0]),t.isNullOrUndefined(e.item.target)||n.setAttribute("target",e.item.target),Ht.Insert(this.parent.currentDocument,n,this.parent.editableElement),this.callBack(e)},e.prototype.openImageLink=function(e){document.defaultView.open(e.item.url,e.item.target),this.callBack(e)},e.prototype.removeImageLink=function(e){var n=e.item.selectParent[0];if(n.classList.contains("e-img-caption")){var i=t.select(".e-img-wrap",n),o=t.select(".e-img-inner",n),r=o.cloneNode(!0);t.detach(t.select("a",n)),t.detach(o),i.appendChild(e.item.insertElement),i.appendChild(r)}else t.detach(n),t.Browser.isIE&&e.item.selection.restore(),Ht.Insert(this.parent.currentDocument,e.item.insertElement,this.parent.editableElement);this.callBack(e)},e.prototype.editImageLink=function(e){e.item.selectNode[0].parentElement.href=e.item.url,t.isNullOrUndefined(e.item.target)?e.item.selectNode[0].parentElement.removeAttribute("target"):e.item.selectNode[0].parentElement.target=e.item.target,this.callBack(e)},e.prototype.removeImage=function(e){t.closest(e.item.selectNode[0],"a")?"A"!==e.item.selectNode[0].parentElement.nodeName||t.isNullOrUndefined(e.item.selectNode[0].parentElement.innerText)?t.detach(t.closest(e.item.selectNode[0],"a")):t.detach(e.item.selectNode[0]):t.isNullOrUndefined(t.closest(e.item.selectNode[0],".e-img-caption"))?t.detach(e.item.selectNode[0]):t.detach(t.closest(e.item.selectNode[0],".e-img-caption")),this.callBack(e)},e.prototype.insertAltTextImage=function(e){e.item.selectNode[0].setAttribute("alt",e.item.altText),this.callBack(e)},e.prototype.imageDimension=function(e){var t=e.item.selectNode[0];t.style.height="",t.style.width="",t.width=e.item.width,t.height=e.item.height,this.callBack(e)},e.prototype.imageCaption=function(e){Ht.Insert(this.parent.currentDocument,e.item.insertElement,this.parent.editableElement),this.callBack(e)},e.prototype.imageJustifyLeft=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,".e-img-caption"))||(t.removeClass([t.closest(n,".e-img-caption")],"e-imgright"),t.addClass([t.closest(n,".e-img-caption")],"e-imgleft")),"A"===n.parentElement.nodeName?(t.removeClass([n.parentElement],"e-imgright"),t.addClass([n.parentElement],"e-imgleft")):t.addClass([n],"e-imgleft"),this.callBack(e)},e.prototype.imageJustifyCenter=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,".e-img-caption"))||(t.removeClass([t.closest(n,".e-img-caption")],"e-imgleft"),t.removeClass([t.closest(n,".e-img-caption")],"e-imgright"),t.addClass([t.closest(n,".e-img-caption")],"e-imgcenter")),"A"===n.parentElement.nodeName?(t.removeClass([n.parentElement],"e-imgleft"),t.removeClass([n.parentElement],"e-imgright"),t.addClass([n.parentElement],"e-imgcenter"),t.addClass([n],"e-imgcenter")):t.addClass([n],"e-imgcenter"),this.callBack(e)},e.prototype.imageJustifyRight=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,".e-img-caption"))||(t.removeClass([t.closest(n,".e-img-caption")],"e-imgleft"),t.addClass([t.closest(n,".e-img-caption")],"e-imgright")),"A"===n.parentElement.nodeName?(t.removeClass([n.parentElement],"e-imgleft"),t.addClass([n.parentElement],"e-imgright")):t.addClass([n],"e-imgright"),this.callBack(e)},e.prototype.imageInline=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.addClass([n],"e-imginline"),t.isNullOrUndefined(t.closest(n,".e-img-caption"))||(t.removeClass([t.closest(n,".e-img-caption")],"e-imgbreak"),t.removeClass([t.closest(n,".e-img-caption")],"e-imgcenter"),t.removeClass([t.closest(n,".e-img-caption")],"e-imgleft"),t.removeClass([t.closest(n,".e-img-caption")],"e-imgright"),t.addClass([t.closest(n,".e-img-caption")],"e-caption-inline")),this.callBack(e)},e.prototype.imageBreak=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-imgbreak"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,".e-img-caption"))||(t.removeClass([t.closest(n,".e-img-caption")],"e-caption-inline"),t.removeClass([t.closest(n,".e-img-caption")],"e-imgcenter"),t.removeClass([t.closest(n,".e-img-caption")],"e-imgleft"),t.removeClass([t.closest(n,".e-img-caption")],"e-imgright"),t.addClass([t.closest(n,".e-img-caption")],"e-imgbreak")),this.callBack(e)},e.prototype.callBack=function(e){e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),qt=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(wt,this.createTable,this),this.parent.observer.on("INSERT-ROW",this.insertRow,this),this.parent.observer.on("INSERT-COLUMN",this.insertColumn,this),this.parent.observer.on("DELETE-ROW",this.deleteRow,this),this.parent.observer.on("DELETE-COLUMN",this.deleteColumn,this),this.parent.observer.on("REMOVE-TABLE",this.removeTable,this),this.parent.observer.on("TABLE-HEADER",this.tableHeader,this),this.parent.observer.on("TABLE_VERTICAL_ALIGN",this.tableVerticalAlign,this),this.parent.observer.on("TABLE_MERGE",this.cellMerge,this),this.parent.observer.on("TABLE_HORIZONTAL_SPLIT",this.HorizontalSplit,this),this.parent.observer.on("TABLE_VERTICAL_SPLIT",this.VerticalSplit,this),this.parent.observer.on("TABLE_MOVE",this.tableMove,this)},e.prototype.createTable=function(e){var n=t.createElement("table",{className:"e-rte-table"}),i=t.createElement("tbody");t.isNullOrUndefined(e.item.width.width)||(n.style.width=this.calculateStyleValue(e.item.width.width)),t.isNullOrUndefined(e.item.width.minWidth)||(n.style.minWidth=this.calculateStyleValue(e.item.width.minWidth)),t.isNullOrUndefined(e.item.width.maxWidth)||(n.style.maxWidth=this.calculateStyleValue(e.item.width.maxWidth));for(var o=parseInt(e.item.width.width,10)>100?100/e.item.columns:parseInt(e.item.width.width,10)/e.item.columns,r=0;r<e.item.row;r++){for(var s=t.createElement("tr"),a=0;a<e.item.columns;a++){var l=t.createElement("td");l.appendChild(t.createElement("br")),l.style.width=o+"%",s.appendChild(l)}i.appendChild(s)}if(n.appendChild(i),e.item.selection.restore(),Ht.Insert(this.parent.currentDocument,n,this.parent.editableElement),this.removeEmptyNode(),e.item.selection.setSelectionText(this.parent.currentDocument,n.querySelector("td"),n.querySelector("td"),0,0),null===n.nextElementSibling){var d=t.createElement("p");d.appendChild(t.createElement("br")),this.insertAfter(d,n)}return n.querySelector("td").classList.add("e-cell-select"),e.callBack&&e.callBack({requestType:"Table",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:[n]}),n},e.prototype.calculateStyleValue=function(e){return"string"==typeof e&&(e.indexOf("px")||e.indexOf("%")||e.indexOf("auto"))?e:e+"px"},e.prototype.removeEmptyNode=function(){for(var e=this.parent.editableElement.querySelectorAll("ul:empty, ol:empty"),n=0;n<e.length;n++)t.detach(e[n]);for(var i=this.parent.editableElement.querySelectorAll("li *:empty"),n=0;n<i.length;n++)t.detach(i[n]),i.length===n+1&&(i=this.parent.editableElement.querySelectorAll("li *:empty"),n=-1);for(var o=this.parent.editableElement.querySelectorAll("li:empty"),n=0;n<o.length;n++)t.detach(o[n])},e.prototype.insertAfter=function(e,t){t.parentNode.insertBefore(e,t.nextSibling)},e.prototype.getSelectedCellMinMaxIndex=function(e){for(var t=this.curTable.querySelectorAll(".e-cell-select"),n=0,i=e.length,o=0,r=e[0].length,s=0;n<t.length;n++){var a=this.getCorrespondingIndex(t[n],e),l=this.FindIndex(a[0],a[1],e);i=Math.min(a[0],i),o=Math.max(l[0],o),r=Math.min(a[1],r),s=Math.max(l[1],s)}return{startRow:i,endRow:o,startColumn:r,endColumn:s}},e.prototype.insertRow=function(e){var n="InsertRowBefore"!==e.item.subCommand,i=e.item.selection.range.startContainer;if(3===i.nodeType&&(i=t.closest(i.parentElement,"td,th")),"th"!==i.nodeName.toLowerCase()||"InsertRowBefore"!==e.item.subCommand){if(this.curTable=t.closest(this.parent.nodeSelection.range.startContainer.parentElement,"table"),0===this.curTable.querySelectorAll(".e-cell-select").length){var o=this.curTable.rows[this.curTable.rows.length-1],r=o.cloneNode(!0);r.removeAttribute("rowspan"),this.insertAfter(r,o)}else{for(var s=this.getCorrespondingColumns(),a=this.getSelectedCellMinMaxIndex(s),l=n?a.endRow:a.startRow,d=t.createElement("tr"),c=0;c<s[l].length;c++)if(n&&l<s.length-1&&s[l][c]==s[l+1][c]||!n&&0<l&&s[l][c]==s[l-1][c])(0===c||0<c&&s[l][c]!=s[l][c-1])&&s[l][c].setAttribute("rowspan",(parseInt(s[l][c].getAttribute("rowspan"),10)+1).toString());else{var p=t.createElement("td");p.appendChild(t.createElement("br")),d.appendChild(p),p.setAttribute("style",s[l][c].getAttribute("style"))}var h=void 0;h=this.curTable.querySelectorAll("th.e-cell-select").length>0&&n?this.curTable.querySelector("tbody"):this.curTable.rows[l],"InsertRowBefore"===e.item.subCommand?h.parentElement.insertBefore(d,h):this.insertAfter(d,h)}e.item.selection.setSelectionText(this.parent.currentDocument,e.item.selection.range.startContainer,e.item.selection.range.startContainer,0,0),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})}},e.prototype.insertColumn=function(e){var n=e.item.selection.range.startContainer;3===n.nodeType&&(n=t.closest(n.parentElement,"td,th"));for(var i,o=t.closest(n,"tr"),r=t.closest(o,"table").rows,s=Array.prototype.slice.call(o.querySelectorAll("th,td")).indexOf(n),a=parseInt(e.item.width,10)/(o.querySelectorAll("td,th").length+1),l=0;l<t.closest(o,"table").querySelectorAll("th,td").length;l++)t.closest(o,"table").querySelectorAll("th,td")[l].style.width=a+"%";for(var d=0;d<r.length;d++){var c=(i=r[d].querySelectorAll("th,td")[s]).cloneNode(!0);c.innerHTML="",c.appendChild(t.createElement("br")),c.removeAttribute("class"),c.removeAttribute("colspan"),c.removeAttribute("rowspan"),"InsertColumnLeft"===e.item.subCommand?i.parentElement.insertBefore(c,i):this.insertAfter(c,i)}e.item.selection.setSelectionText(this.parent.currentDocument,n,n,0,0),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.deleteColumn=function(e){var n=e.item.selection.range.startContainer;if(3===n.nodeType&&(n=t.closest(n.parentElement,"td,th")),this.curTable=t.closest(n,"table"),1===t.closest(n,"tr").querySelectorAll("th,td").length)e.item.selection.restore(),t.detach(t.closest(n.parentElement,"table"));else for(var i=this.getCorrespondingColumns(),o=this.getSelectedCellMinMaxIndex(i),r=o.startColumn,s=o.endColumn,a=0;a<i.length;a++)for(var l=i[a],d=0;d<l.length;d++){var c=l[d],p=this.getCorrespondingIndex(c,i),h=parseInt(c.getAttribute("colspan"),10)||1;p[1]+(h-1)>=r&&p[1]<=s&&(h>1?c.setAttribute("colspan",(h-1).toString()):(t.detach(c),t.Browser.isIE&&(e.item.selection.setSelectionText(this.parent.currentDocument,this.curTable.querySelector("td"),this.curTable.querySelector("td"),0,0),this.curTable.querySelector("td, th").classList.add("e-cell-select"))))}if(e.callBack){var u=this.parent.nodeSelection.getRange(this.parent.currentDocument).startContainer;if("TD"!==u.nodeName){var m=this.parent.nodeSelection.getRange(this.parent.currentDocument).startOffset,g=u.children[m];g&&this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,g,0)}e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})}},e.prototype.deleteRow=function(e){var n=e.item.selection.range.startContainer;3===n.nodeType&&(n=t.closest(n.parentElement,"td,th")),this.curTable=t.closest(n,"table");var i,o,r,s=this.getCorrespondingColumns(),a=this.getSelectedCellMinMaxIndex(s);if(1===this.curTable.rows.length)e.item.selection.restore(),t.detach(t.closest(n.parentElement,"table"));else for(o=a.endRow;o>=a.startRow;o--){for(i=this.curTable.rows[o],r=0;r<s[o].length;r++){if((0===r||s[o][r]!=s[o][r-1])&&1<parseInt(s[o][r].getAttribute("rowspan"),10)){var l=parseInt(s[o][r].getAttribute("rowspan"),10)-1;1==l?s[o][r].removeAttribute("rowspan"):s[o][r].setAttribute("rowspan",l.toString())}if(o<s.length-1&&s[o][r]==s[o+1][r]&&(0===o||s[o][r]!=s[o-1][r])){var d=s[o][r],c=void 0;for(c=r;0<c&&s[o][c]==s[o][c-1];c--)0===c?this.curTable.rows[o+1].prepend(d):s[o+1][c-1].insertAdjacentElement("afterend",d)}}this.curTable.deleteRow(i.rowIndex),e.item.selection.setSelectionText(this.parent.currentDocument,this.curTable.querySelector("td"),this.curTable.querySelector("td"),0,0),this.curTable.querySelector("td, th").classList.add("e-cell-select")}e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.removeTable=function(e){var n=e.item.selection.range.startContainer;n=3===n.nodeType?n.parentNode:n;var i=t.closest(n.parentElement,"table");i&&(e.item.selection.restore(),t.detach(i)),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.tableHeader=function(e){var n=!1,i=e.item.selection.range.startContainer;i=3===i.nodeType?i.parentNode:i;var o=t.closest(i.parentElement,"table");if([].slice.call(o.childNodes).forEach(function(e){"THEAD"===e.nodeName&&(n=!0)}),o&&!n){for(var r=o.querySelector("tr").childElementCount,s=0,a=0;a<r;a++)s+=parseInt(o.querySelector("tr").children[a].getAttribute("colspan"),10)||1;for(var l=o.createTHead().insertRow(0),d=0;d<s;d++){var c=t.createElement("th");c.appendChild(t.createElement("br")),l.appendChild(c)}}else o.deleteTHead();e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.tableVerticalAlign=function(e){"AlignTop"===e.item.subCommand?e.item.tableCell.style.verticalAlign="top":"AlignMiddle"===e.item.subCommand?e.item.tableCell.style.verticalAlign="middle":e.item.tableCell.style.verticalAlign="bottom",e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.cellMerge=function(e){t.isNullOrUndefined(this.curTable)&&(this.curTable=t.closest(this.parent.nodeSelection.range.startContainer.parentElement,"table"));var n=this.curTable.querySelectorAll(".e-cell-select");if(!(n.length<2)){this.mergeCellContent();var i=this.getSelectedMinMaxIndexes(this.getCorrespondingColumns()),o=n[0],r=o.parentElement.querySelectorAll(".e-cell-select");i.startColumn<i.endColumn&&o.setAttribute("colspan",(i.endColumn-i.startColumn+1).toString()),i.startRow<i.endRow&&o.setAttribute("rowspan",(i.endRow-i.startRow+1).toString());for(var s=0,a=r.length-1;a>=0;a--)s+=parseFloat(r[a].style.width);o.style.width=s+"%";for(l=1;l<=n.length-1;l++)t.detach(n[l]);for(var l=0;l<this.curTable.rows.length;l++)""===this.curTable.rows[l].innerHTML&&t.detach(this.curTable.rows[l]);this.updateRowSpanStyle(i.startRow,i.endRow,this.getCorrespondingColumns()),this.updateColSpanStyle(i.startColumn,i.endColumn,this.getCorrespondingColumns()),e.item.selection.setSelectionText(this.parent.currentDocument,e.item.selection.range.startContainer,e.item.selection.range.startContainer,0,0),this.parent.nodeSelection.range&&this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,this.parent.nodeSelection.range.endContainer,0),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})}},e.prototype.updateColSpanStyle=function(e,t,n){var i,o,r,s,a=0,l=0,d=n;if(e<(t=Math.min(t,d[0].length-1))){for(o=e;o<=t;o++)if(!(e<o&&d[0][o]==d[0][o-1])&&1<(a=Math.min(parseInt(d[0][o].getAttribute("colspan"),10)||1,t-e+1))&&d[0][o]==d[0][o+1])for(l=a-1,i=1;i<d.length;i++){if(d[i][o]!=d[i-1][o])for(r=o;r<o+a;r++)if(1<(s=parseInt(d[i][r].getAttribute("colspan"),10)||1)&&d[i][r]==d[i][r+1])r+=l=Math.min(l,s-1);else if(!(l=Math.max(0,l-1)))break;if(!l)break}l&&this.updateCellAttribute(d,l,"colspan",0,d.length-1,e,t)}},e.prototype.updateRowSpanStyle=function(e,t,n){var i,o,r,s,a=0,l=0,d=n;if(e<(t=Math.min(t,d.length-1))){for(i=e;i<=t;i++)if(!(e<i&&d[i][0]==d[i-1][0])&&1<(a=Math.min(parseInt(d[i][0].getAttribute("rowspan"),10)||1,t-e+1))&&d[i][0]==d[i+1][0])for(l=a-1,o=1;o<d[0].length;o++)if(d[i][o]!=d[i][o-1]){for(r=i;r<i+a;r++)if(1<(s=parseInt(d[r][o].getAttribute("rowspan"),10)||1)&&d[r][o]==d[r+1][o])r+=l=Math.min(l,s-1);else if(!(l=Math.max(0,l-1)))break;if(!l)break}l&&this.updateCellAttribute(d,l,"rowspan",e,t,0,d[0].length-1)}},e.prototype.updateCellAttribute=function(e,t,n,i,o,r,s){var a,l,d;for(a=i;a<=o;a++)for(l=r;l<=s;l++)i<a&&e[a][l]==e[a-1][l]||r<l&&e[a][l]==e[a][l-1]||1<(d=parseInt(e[a][l].getAttribute(n),10)||1)&&(1<d-t?e[a][l].setAttribute(n,(d-t).toString()):e[a][l].removeAttribute(n))},e.prototype.mergeCellContent=function(){for(var e=this.curTable.querySelectorAll(".e-cell-select"),t=e[0].innerHTML,n=1;n<e.length-1;n++)"<br>"!==e[n].innerHTML&&(t+=e[n].innerHTML);e[0].innerHTML=t},e.prototype.getSelectedMinMaxIndexes=function(e){var t=this.curTable.querySelectorAll(".e-cell-select");if(0<t.length){for(var n=e.length,i=0,o=e[0].length,r=0,s=0;s<t.length;s++){var a=this.getCorrespondingIndex(t[s],e),l=this.FindIndex(a[0],a[1],e);n=Math.min(a[0],n),i=Math.max(l[0],i),o=Math.min(a[1],o),r=Math.max(l[1],r)}return{startRow:n,endRow:i,startColumn:o,endColumn:r}}return null},e.prototype.HorizontalSplit=function(e){var n=e.item.selection.range.startContainer;if(this.curTable=t.closest(n.parentElement,"table"),!(this.curTable.querySelectorAll(".e-cell-select").length>1)){this.activeCell=this.curTable.querySelector(".e-cell-select");var i=this.activeCell.cloneNode(!0);i.removeAttribute("class"),i.innerHTML="</br>";var o=this.getCorrespondingIndex(this.activeCell,this.getCorrespondingColumns()),r=this.getCorrespondingColumns(),s=this.activeCell.getAttribute("rowspan")?parseInt(this.activeCell.getAttribute("rowspan"),10):1;if(s>1){var a=Math.ceil(s/2);1<a?this.activeCell.setAttribute("rowspan",a.toString()):this.activeCell.removeAttribute("rowspan"),1<s-a?i.setAttribute("rowspan",(s-a).toString()):i.removeAttribute("rowspan");var l=void 0,d=void 0;for(l=o[0]+Math.ceil(s/2),d=0===o[1]?o[1]:o[1]-1;0<=d&&(r[l][d]==r[l][d-1]||0<l&&r[l][d]==r[l-1][d]);)d--;-1===d?this.curTable.rows[l].firstChild?this.curTable.rows[l].prepend(i):this.curTable.appendChild(i):r[l][d].insertAdjacentElement("afterend",i)}else{var c=t.createElement("tr");c.appendChild(i);for(var p=r[o[0]],h=0;h<=p.length-1;h++)p[h]!==p[h-1]&&p[h]!==this.activeCell&&p[h].setAttribute("rowspan",((parseInt(p[h].getAttribute("rowspan"),10)?parseInt(p[h].getAttribute("rowspan"),10):1)+1).toString());this.activeCell.parentNode.insertAdjacentElement("afterend",c)}e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})}},e.prototype.VerticalSplit=function(e){var n=e.item.selection.range.startContainer;if(this.curTable=t.closest(n.parentElement,"table"),!(this.curTable.querySelectorAll(".e-cell-select").length>1)){this.activeCell=this.curTable.querySelector(".e-cell-select");var i=this.curTable.rows,o=this.activeCell.cloneNode(!0);o.removeAttribute("class"),o.innerHTML="</br>";var r=parseFloat(this.activeCell.style.width)/2;if("TH"===this.activeCell.tagName&&isNaN(r)){for(var s=this.curTable.querySelector("tr").childElementCount,a=0,l=0;l<s;l++)a+=parseInt(this.curTable.querySelector("tr").children[l].getAttribute("colspan"),10)||1;r=parseFloat((this.activeCell.offsetWidth/2/this.curTable.offsetWidth*100).toFixed(1))}var d=this.getCorrespondingIndex(this.activeCell,this.getCorrespondingColumns()),c=this.getCorrespondingColumns(),p=parseInt(this.activeCell.getAttribute("colspan"),10);if(p>1)1<Math.ceil(p/2)?this.activeCell.setAttribute("colspan",(p/2).toString()):this.activeCell.removeAttribute("colspan"),1<p-p/2?o.setAttribute("colspan",(p-p/2).toString()):o.removeAttribute("colspan");else for(l=0;l<=i.length-1;l++)if(0===l||c[l][d[1]]!=c[l-1][d[1]]){var h=c[l][d[1]];h!==this.activeCell&&h.setAttribute("colspan",((parseInt(h.getAttribute("colspan"),10)?parseInt(h.getAttribute("colspan"),10):1)+1).toString())}this.activeCell.style.width=r+"%",o.style.width=r+"%",this.activeCell.parentNode.insertBefore(o,this.activeCell.nextSibling),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})}},e.prototype.getCorrespondingColumns=function(){for(var e=[],t=this.curTable.querySelectorAll("tr"),n=0;n<=t.length-1;n++)for(var i=t[n],o=0,r=0;r<=i.children.length-1;r++){for(var s=i.children[r],a=s,l=parseInt(a.getAttribute("colspan"),10)||1,d=parseInt(a.getAttribute("rowspan"),10)||1,c=n;c<n+d;c++)for(var p=o;p<o+l;p++)e[c]||(e[c]=[]),e[c][p]?o++:e[c][p]=s;o+=0}return e},e.prototype.FindIndex=function(e,t,n){var i,o;for(i=e+1,o=t+1;i<n.length;){if(n[i][t]!=n[e][t]){i--;break}i++}for(i==n.length&&i--;o<n[e].length;){if(n[e][o]!=n[e][t]){o--;break}o++}return o==n[e].length&&o--,[i,o]},e.prototype.getCorrespondingIndex=function(e,t){for(var n=0;n<t.length;n++)for(var i=0;i<t[n].length;i++)if(t[n][i]==e)return[n,i];return[]},e.prototype.highlightCells=function(e,t,n,i,o){var r,s,a,l,d=e,c=t,p=n,h=i,u=new Qt;for(r=d;r<=c;r++){for((1<(parseInt(o[r][p].getAttribute("rowspan"),10)||1)||1<(parseInt(o[r][p].getAttribute("colspan"),10)||1))&&(l=this.FindIndex((a=this.getCorrespondingIndex(o[r][p],o))[0],a[1],o))?(d=Math.min(a[0],d),c=Math.max(l[0],c),p=Math.min(a[1],p),h=Math.max(l[1],h)):(1<(parseInt(o[r][h].getAttribute("rowspan"),10)||1)||1<(parseInt(o[r][h].getAttribute("colspan"),10)||1))&&(l=this.FindIndex((a=this.getCorrespondingIndex(o[r][h],o))[0],a[1],o))&&(d=Math.min(a[0],d),c=Math.max(l[0],c),p=Math.min(a[1],p),h=Math.max(l[1],h)),s=p;s<=h;s++)(1<(parseInt(o[d][s].getAttribute("rowspan"),10)||1)||1<(parseInt(o[d][s].getAttribute("colspan"),10)||1))&&(l=this.FindIndex((a=this.getCorrespondingIndex(o[d][s],o))[0],a[1],o))?(d=Math.min(a[0],d),c=Math.max(l[0],c),p=Math.min(a[1],p),h=Math.max(l[1],h)):(1<(parseInt(o[c][s].getAttribute("rowspan"),10)||1)||1<(parseInt(o[c][s].getAttribute("colspan"),10)||1))&&(l=this.FindIndex((a=this.getCorrespondingIndex(o[c][s],o))[0],a[1],o))&&(d=Math.min(a[0],d),c=Math.max(l[0],c),p=Math.min(a[1],p),h=Math.max(l[1],h));u=d==e&&c==t&&p==n&&h==i?{startRow:e,endRow:t,startColumn:n,endColumn:i}:this.highlightCells(d,c,p,h,o)}return u},e.prototype.tableMove=function(e){this.activeCell=e.selectNode[0];var n=e.event.target,i=this.activeCell.tagName,o=n.tagName;if(this.curTable=t.closest(n,"table"),this.curTable.querySelectorAll(".e-cell-select").length>1&&this.parent.nodeSelection.Clear(this.parent.currentDocument),"TD"===n.tagName||"TH"===n.tagName||i===o){for(var r=Array.prototype.slice.call(this.activeCell.parentElement.parentElement.children).indexOf(this.activeCell.parentElement),s=Array.prototype.slice.call(this.activeCell.parentElement.children).indexOf(this.activeCell),a=Array.prototype.slice.call(n.parentElement.parentElement.children).indexOf(n.parentElement),l=Array.prototype.slice.call(n.parentElement.children).indexOf(n),d=this.curTable.querySelectorAll(".e-cell-select"),c=d.length-1;c>=0;c--)this.activeCell!==d[c]&&d[c].classList.remove("e-cell-select");if(r!==a||s!==l){for(var p=this.getCorrespondingColumns(),h=this.getCorrespondingIndex(this.activeCell,p),u=this.getCorrespondingIndex(n,p),m=this.highlightCells(Math.min(h[0],u[0]),Math.max(h[0],u[0]),Math.min(h[1],u[1]),Math.max(h[1],u[1]),p),g=m.startRow;g<=m.endRow;g++)for(var f=m.startColumn;f<=m.endColumn;f++)p[g][f].classList.add("e-cell-select");this.parent.nodeSelection.range&&(this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,this.parent.nodeSelection.range.endContainer,this.parent.nodeSelection.range.endContainer,0,0),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,this.parent.nodeSelection.range.endContainer,0))}}},e}(),Qt=function(){function e(){}return e}(),Vt=function(){function e(){}return e.prototype.getFormattedNode=function(e,t,n){var i=this.getFormatParent(e,t,n);return null!==i&&i!==n?i:null},e.prototype.getFormatParent=function(e,t,n){do{e=e.parentNode}while(e&&e!==n&&!this.isFormattedNode(e,t));return e},e.prototype.isFormattedNode=function(t,n){switch(n){case"bold":return e.isBold(t);case"italic":return e.isItalic(t);case"underline":return e.isUnderline(t);case"strikethrough":return e.isStrikethrough(t);case"superscript":return e.isSuperscript(t);case"subscript":return e.isSubscript(t);case"fontcolor":return this.isFontColor(t);case"fontname":return this.isFontName(t);case"fontsize":return this.isFontSize(t);case"backgroundcolor":return this.isBackgroundColor(t);default:return!1}},e.isBold=function(e){return-1!==["strong","b"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"bold"!==e.style.fontWeight)},e.isItalic=function(e){return-1!==["em","i"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"italic"!==e.style.fontStyle)},e.isUnderline=function(e){return-1!==["u"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"underline"!==e.style.textDecoration)},e.isStrikethrough=function(e){return-1!==["del","strike"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"line-through"!==e.style.textDecoration)},e.isSuperscript=function(e){return-1!==["sup"].indexOf(e.nodeName.toLowerCase())},e.isSubscript=function(e){return-1!==["sub"].indexOf(e.nodeName.toLowerCase())},e.prototype.isFontColor=function(t){var n=t.style&&t.style.color;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.prototype.isBackgroundColor=function(t){var n=t.style&&t.style.backgroundColor;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.prototype.isFontSize=function(t){var n=t.style&&t.style.fontSize;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.prototype.isFontName=function(t){var n=t.style&&t.style.fontFamily;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.inlineTags=["a","abbr","acronym","b","bdo","big","cite","code","dfn","em","i","kbd","label","q","samp","small","span","strong","sub","sup","tt","u","var"],e}(),Wt=function(){function e(){}return e.applyFormat=function(e,n,i,o,r){if(["bold","italic","underline","strikethrough","superscript","subscript","uppercase","lowercase","fontcolor","fontname","fontsize","backgroundcolor"].indexOf(n)>-1){"backgroundcolor"===n&&""===o&&(o="transparent");var s=!1,a=new Dt,l=new Rt(i,e),d=new Pt,c=new Vt,p=a.getRange(e),h=a.save(p,e),u=p.collapsed?a.getSelectionNodeCollection(p):a.getSelectionNodeCollectionBr(p),m=!1,g=!1,f=!1,b=["fontcolor","fontname","fontsize","backgroundcolor"].indexOf(n)>-1;if(p.collapsed)if(u.length>0)m=!0,p=d.GetCursorRange(e,p,u[0]);else if(3===p.startContainer.nodeType&&p.startContainer.parentElement.childElementCount>0&&p.startOffset>0&&"br"!==p.startContainer.parentElement.firstElementChild.tagName.toLowerCase())m=!0,p=d.GetCursorRange(e,p,p.startContainer),u.push(p.startContainer);else{var v=this.insertCursorNode(e,a,p,c,d,n,o,i);a.endContainer=a.startContainer=a.getNodeArray(v,!0);var y="BR"===v.nodeName&&v.parentNode.childNodes;t.isNullOrUndefined(y)||1!==y.length||"BR"!==y[0].nodeName||0!==u.length?a.endOffset=a.startOffset=1:(a.setSelectionText(e,p.startContainer,p.endContainer,0,0),s=!0)}f=p.collapsed;for(var C=!1,S=0;S<u.length;S++){var T=c.getFormattedNode(u[S],n,i);null===T&&("subscript"===n?C=null!==(T=c.getFormattedNode(u[S],"superscript",i)):"superscript"===n&&(C=null!==(T=c.getFormattedNode(u[S],"subscript",i)))),0===S&&null===T&&(g=!0),u[S]=null===T||g&&!b?this.insertFormat(e,u,S,T,f,g,b,p,d,n,o):this.removeFormat(u,S,T,f,g,b,p,d,n,o,a,i,l),a=this.applySelection(u,a,d,S,m)}I()&&B(i,r),s||h.restore(),C&&this.applyFormat(e,n,i)}},e.insertCursorNode=function(e,t,n,i,o,r,s,a){var l=t.getNodeCollection(n),d=l.length>0?l.length>1&&n.startContainer===n.endContainer?this.getCursorFormat(i,l,r,a):i.getFormattedNode(l[0],r,a):null,c=null;return d?(c=l[0],Bt.unwrap(d)):(l.length>1&&n.startOffset>0&&l[0].firstElementChild&&"br"===l[0].firstElementChild.tagName.toLowerCase()&&(l[0].innerHTML=""),c=this.getInsertNode(e,n,r,s).firstChild),c},e.getCursorFormat=function(e,t,n,i){for(var o,r=0;r<t.length;r++)o=t[r].lastElementChild?t[r].lastElementChild:t[r];return e.getFormattedNode(o,n,i)},e.removeFormat=function(e,n,i,o,r,s,a,l,d,c,p,h,u){var m=null;if(a.startContainer!==a.endContainer||0!==a.startOffset||a.endOffset!==a.startContainer.length){var g=[],f=e[n];do{g.push(p.getIndex(f)),f=f.parentNode}while(f&&f!==i);if("BR"!==e[n].nodeName&&(f=m=o&&i.textContent.length-1===a.startOffset?l.SplitNode(a,i,!0):l.GetSpliceNode(a,i)),o){for(var b=m;null!==b.firstChild&&3!==b.firstChild.nodeType;null)b=b.firstChild;b.innerHTML="&#8203;",e[n]=b.firstChild}else{for(;f&&f.childNodes.length>0&&g.length-1>=0&&f.childNodes.length>g[g.length-1];)f=f.childNodes[g[g.length-1]],g.pop();if("BR"!==e[n].nodeName)if(3!==f.nodeType||o&&""===f.nodeValue){var v=document.createElement("div");v.innerHTML="&#8203;",3!==f.nodeType?(f.insertBefore(v.firstChild,f.firstChild),e[n]=f.firstChild):(f.parentNode.insertBefore(v.firstChild,f),e[n]=f.previousSibling,f.parentNode.removeChild(f))}else e[n]=f}}var y;"backgroundcolor"===d&&(y=i.style.fontSize);var C;if("fontsize"===d){var S=t.closest(e[n].parentElement,"span[style*=background-color]");t.isNullOrUndefined(S)||(C=S.style.backgroundColor)}var T=i.getAttribute("style"),E=i.tagName,N=Bt.unwrap(i);if(N[0]&&!s)for(var w=N[n]?N[n]:N[0],k=w;w&&w.parentElement&&w.parentElement!==h;w=w)w.parentElement&&w.parentElement.tagName.toLocaleLowerCase()===i.tagName.toLocaleLowerCase()&&(w.parentElement.childElementCount>1||a.startOffset>1)?(k.parentElement&&k.parentElement.tagName.toLocaleLowerCase()===i.tagName.toLocaleLowerCase()&&a.startOffset===a.endOffset&&1!==k.nodeType&&!t.isNullOrUndefined(k.textContent)&&k.parentElement.childElementCount>1&&(a.setStart(k,0),a.setEnd(k,k.textContent.length),l.SplitNode(a,k.parentElement,!1)),Bt.unwrap(w.parentElement),w=t.isNullOrUndefined(w.parentElement)||u.isBlockNode(w.parentElement)?w.parentElement:k):w=w.parentElement;if(N.length>0&&s){for(var L=0;L<N.length;L++)N[L]=Bt.Wrap(N[L],this.GetFormatNode(d,c,E,T)),0===L?a.setStartBefore(N[L]):L===N.length-1&&a.setEndAfter(N[L]);var x=e[n].parentElement;if(t.isNullOrUndefined(y)||""===y||(x.style.fontSize=y),t.isNullOrUndefined(C)||""===C||(x.style.backgroundColor=C),"backgroundcolor"===d&&!t.isNullOrUndefined(y)&&""!==y&&x.parentElement.innerHTML===x.outerHTML){var O=x.parentElement;O.parentElement.insertBefore(x,O),t.detach(O)}if("fontsize"===d){for(var D=e[n].parentElement,M=e[n].parentElement;!t.isNullOrUndefined(M)&&"li"!==M.tagName.toLowerCase();)D=M=M.parentElement;t.isNullOrUndefined(D)||"li"!==D.tagName.toLowerCase()||D.textContent.trim()!==e[n].textContent.trim()||(D.style.fontSize=c)}}return e[n]},e.insertFormat=function(e,n,i,o,r,s,a,l,d,c,p){if(r)if("uppercase"!==c&&"lowercase"!==c){h=this.getInsertNode(e,l,c,p);n[i]=h.firstChild,d.position=1}else d.position=l.startOffset;else if(null===o&&s||a){if("BR"!==n[i].nodeName&&(n[i]=d.GetSpliceNode(l,n[i]),n[i].textContent=d.TrimLineBreak(n[i].textContent)),"uppercase"===c||"lowercase"===c)n[i].textContent="uppercase"===c?n[i].textContent.toLocaleUpperCase():n[i].textContent.toLocaleLowerCase();else if(!0!==a||""!==p){var h=this.GetFormatNode(c,p);if("fontsize"===c){for(var u=n[i].parentElement,m=n[i].parentElement;!t.isNullOrUndefined(m)&&"li"!==m.tagName.toLowerCase();)u=m=m.parentElement;t.isNullOrUndefined(u)||"li"!==u.tagName.toLowerCase()||u.textContent.trim()!==n[i].textContent.trim()||(u.style.fontSize=p),n[i]=this.applyStyles(n,i,h);var g=t.closest(n[i].parentElement,"span[style*=background-color]");t.isNullOrUndefined(g)||(n[i].parentElement.style.backgroundColor=g.style.backgroundColor)}else n[i]=this.applyStyles(n,i,h)}}else n[i]=d.GetSpliceNode(l,n[i]);return n[i]},e.applyStyles=function(e,t,n){return e[t]=t===e.length-1||"BR"===e[t].nodeName?Bt.Wrap(e[t],n):Bt.WrapBefore(e[t],n,!0),e[t]=this.getChildNode(e[t],n),e[t]},e.getInsertNode=function(e,n,i,o){var r=this.GetFormatNode(i,o);if(r.innerHTML="&#8203;",t.Browser.isIE){var s=e.createDocumentFragment();s.appendChild(r),n.insertNode(s)}else n.insertNode(r);return r},e.getChildNode=function(e,t){return void 0!==e&&null!==e||(t.innerHTML="&#8203;",e=t.firstChild),e},e.applySelection=function(e,t,n,i,o){return 1!==e.length||o?1===e.length&&o?(t.startContainer=t.getNodeArray(e[i],!0),t.endContainer=t.startContainer,t.startOffset=n.position,t.endOffset=n.position):0===i?(t.startContainer=t.getNodeArray(e[i],!0),t.startOffset=0):i===e.length-1&&(t.endContainer=t.getNodeArray(e[i],!1),t.endOffset=e[i].textContent.length):(t.startContainer=t.getNodeArray(e[i],!0),t.endContainer=t.startContainer,t.startOffset=0,t.endOffset=e[i].textContent.length),t},e.GetFormatNode=function(e,t,n,i){var o;switch(e){case"bold":return document.createElement("strong");case"italic":return document.createElement("em");case"underline":return o=document.createElement("span"),this.updateStyles(o,n,i),o.style.textDecoration="underline",o;case"strikethrough":return o=document.createElement("span"),this.updateStyles(o,n,i),o.style.textDecoration="line-through",o;case"superscript":return document.createElement("sup");case"subscript":return document.createElement("sub");case"fontcolor":return o=document.createElement("span"),this.updateStyles(o,n,i),o.style.color=t,o.style.textDecoration="inherit",o;case"fontname":return o=document.createElement("span"),this.updateStyles(o,n,i),o.style.fontFamily=t,o;case"fontsize":return o=document.createElement("span"),this.updateStyles(o,n,i),o.style.fontSize=t,o;default:return o=document.createElement("span"),this.updateStyles(o,n,i),o.style.backgroundColor=t,o}},e.updateStyles=function(e,t,n){null!==n&&"SPAN"===t&&e.setAttribute("style",n)},e}(),Gt=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("selection-type",this.applySelection,this),this.parent.observer.on("keydown-handler",this.keyDownHandler,this)},e.prototype.keyDownHandler=function(e){var t=["bold","italic","underline","strikethrough","superscript","subscript","uppercase","lowercase"];e.event.ctrlKey&&t.indexOf(e.event.action)>-1&&(e.event.preventDefault(),Wt.applyFormat(this.parent.currentDocument,e.event.action,this.parent.editableElement),this.callBack(e,e.event.action))},e.prototype.applySelection=function(e){Wt.applyFormat(this.parent.currentDocument,e.subCommand.toLocaleLowerCase(),this.parent.editableElement,e.value,e.selector),this.callBack(e,e.subCommand)},e.prototype.callBack=function(e,t){e.callBack&&e.callBack({requestType:t,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),Kt=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("inserthtml-type",this.applyHtml,this)},e.prototype.applyHtml=function(e){if(Ht.Insert(this.parent.currentDocument,e.value,this.parent.editableElement,!0),"pasteCleanup"===e.subCommand){var t=this.parent.editableElement.querySelectorAll(".pasteContent_RTE"),n=[].slice.call(t),i=this.parent.editableElement.querySelectorAll(".pasteContent_Img"),o=[].slice.call(i);e.callBack({requestType:e.subCommand,editorMode:"HTML",elements:n,imgElem:o})}else e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),Xt=function(){function e(){}return e.clear=function(e,n,i){var o=new Dt,r=new Pt,s=o.getRange(e),a=s.collapsed,l=o.getInsertNodeCollection(s),d=o.save(s,e);if(!a){var c=void 0;if(c="BR"===l[0].nodeName&&t.closest(l[0],"table")?r.GetSpliceNode(s,t.closest(l[0],"table")):r.GetSpliceNode(s,l[l.length>1&&"IMG"===l[0].nodeName?1:0]),1===l.length)o.setSelectionContents(e,c),s=o.getRange(e);else{for(var p=1,h=l[l.length-p];l.length<=p&&"BR"===l[l.length-p].nodeName;)p++,h=l[l.length-p];var u=r.GetSpliceNode(s,h);o.setSelectionText(e,c,u,0,3===u.nodeType?u.textContent.length:u.childNodes.length),s=o.getRange(e)}var m=o.getNodeCollection(s),g=m.slice();this.clearInlines(o.getSelectionNodes(g),g,o.getRange(e),r,n),this.reSelection(e,d,m),s=o.getRange(e);var f=(m=o.getNodeCollection(s)).slice();this.clearBlocks(e,f,n,r,o),I()&&B(n,i),this.reSelection(e,d,m)}},e.reSelection=function(e,t,n){var i=t.getInsertNodes(n);t.startContainer=t.getNodeArray(i[0],!0,e),t.startOffset=0,t.endContainer=t.getNodeArray(i[i.length-1],!1,e);var o=i[i.length-1];t.endOffset=3===o.nodeType?o.textContent.length:o.childNodes.length,t.restore()},e.clearBlocks=function(e,t,n,i,o){for(var r=[],s=0;s<t.length;s++)this.BLOCK_TAGS.indexOf(t[s].nodeName.toLocaleLowerCase())>-1&&-1===r.indexOf(t[s])?r.push(t[s]):this.BLOCK_TAGS.indexOf(t[s].parentNode.nodeName.toLocaleLowerCase())>-1&&-1===r.indexOf(t[s].parentNode)&&n!==t[s].parentNode&&r.push(t[s].parentNode);r=this.spliceParent(r,t)[0],r=this.removeParent(r),this.unWrap(e,r,i,o)},e.spliceParent=function(e,t){for(var n=0;n<e.length;n++)for(var i=e[n].childNodes.length,o=0;o<i;o++)if(t.indexOf(e[n].childNodes[o])>0&&e[n].childNodes[o].childNodes.length>0&&(t=this.spliceParent([e[n].childNodes[o]],t)[1]),t.indexOf(e[n].childNodes[o])<=-1&&""!==e[n].childNodes[o].textContent.trim()){for(var r=0;r<i;r++)t.indexOf(e[n].childNodes[r])>-1&&t.splice(t.indexOf(e[n].childNodes[r]),1);o=e[n].childNodes.length;var s=e.indexOf(e[n].parentNode),a=t.indexOf(e[n].parentNode);s>-1&&e.splice(s,1),a>-1&&t.splice(a,1);var l=t.indexOf(e[n]);l>-1&&t.splice(l,1),e.splice(n,1),n--}return[e,t]},e.removeChild=function(e,t){var n=t.childNodes.length;if(n>0)for(var i=0;i<n;i++)e.indexOf(t.childNodes[i])>-1&&(e=this.removeChild(e,t.childNodes[i])).splice(e.indexOf(t.childNodes[i]),1);return e},e.removeParent=function(e){for(var t=0;t<e.length;t++)e.indexOf(e[t].parentNode)>-1&&((e=this.removeChild(e,e[t])).splice(t,1),t--);return e},e.unWrap=function(e,t,n,i){for(var o=0;o<t.length;o++)if(this.NONVALID_TAGS.indexOf(t[o].nodeName.toLowerCase())>-1&&t[o].parentNode&&this.NONVALID_PARENT_TAGS.indexOf(t[o].parentNode.nodeName.toLowerCase())>-1&&(i.setSelectionText(e,t[o],t[o],0,t[o].childNodes.length),Bt.unwrap(n.GetSpliceNode(i.getRange(e),t[o].parentNode))),"p"!==t[o].nodeName.toLocaleLowerCase()){!(this.NONVALID_PARENT_TAGS.indexOf(t[o].nodeName.toLowerCase())<0&&"p"!==t[o].parentNode.nodeName.toLocaleLowerCase())||("blockquote"===t[o].nodeName.toLocaleLowerCase()||"li"===t[o].nodeName.toLocaleLowerCase())&&this.IGNORE_PARENT_TAGS.indexOf(t[o].childNodes[0].nodeName.toLocaleLowerCase())>-1||1===t[o].childNodes.length&&"p"===t[o].childNodes[0].nodeName.toLocaleLowerCase()||Bt.Wrap(t[o],e.createElement("p"));var r=Bt.unwrap(t[o]);1===r.length&&"p"===r[0].parentNode.nodeName.toLocaleLowerCase()&&(Bt.Wrap(t[o],e.createElement("p")),Bt.unwrap(t[o]));for(var s=0;s<r.length;s++)if(this.NONVALID_TAGS.indexOf(r[s].nodeName.toLowerCase())>-1)this.unWrap(e,[r[s]],n,i);else if(this.BLOCK_TAGS.indexOf(r[s].nodeName.toLocaleLowerCase())>-1&&"p"!==r[s].nodeName.toLocaleLowerCase()){var a=this.removeParent([r[s]]);this.unWrap(e,a,n,i)}else this.BLOCK_TAGS.indexOf(r[s].nodeName.toLocaleLowerCase())>-1&&r[s].parentNode.nodeName.toLocaleLowerCase()===r[s].nodeName.toLocaleLowerCase()?Bt.unwrap(r[s]):this.BLOCK_TAGS.indexOf(r[s].nodeName.toLocaleLowerCase())>-1&&"p"===r[s].nodeName.toLocaleLowerCase()&&(Bt.Wrap(r[s],e.createElement("p")),Bt.unwrap(r[s]))}else Bt.Wrap(t[o],e.createElement("p")),Bt.unwrap(t[o])},e.clearInlines=function(e,t,n,i,o){for(var r=0;r<e.length;r++)e[r].parentNode&&Vt.inlineTags.indexOf(e[r].parentNode.nodeName.toLocaleLowerCase())>-1&&(i.GetSpliceNode(n,e[r].parentNode),this.removeInlineParent(e[r].parentNode))},e.removeInlineParent=function(e){for(var t=Bt.unwrap(e),n=0;n<t.length;n++)1===t[n].parentNode.childNodes.length&&Vt.inlineTags.indexOf(t[n].parentNode.nodeName.toLocaleLowerCase())>-1?this.removeInlineParent(t[n].parentNode):Vt.inlineTags.indexOf(t[n].nodeName.toLocaleLowerCase())>-1&&this.removeInlineParent(t[n])},e.BLOCK_TAGS=["address","article","aside","blockquote","details","dd","div","dl","dt","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","li","main","nav","noscript","ol","p","pre","section","ul"],e.NONVALID_PARENT_TAGS=["thead","tbody","ul","ol","table","tfoot","tr"],e.IGNORE_PARENT_TAGS=["ul","ol","table"],e.NONVALID_TAGS=["thead","tbody","figcaption","td","tr","th","tfoot","figcaption","li"],e}(),Yt=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("clear-type",this.applyClear,this),this.parent.observer.on("keydown-handler",this.onKeyDown,this)},e.prototype.onKeyDown=function(e){switch(e.event.action){case"clear-format":this.applyClear({subCommand:"ClearFormat",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.applyClear=function(e){"ClearFormat"===e.subCommand&&(Xt.clear(this.parent.currentDocument,this.parent.editableElement,e.selector),e.callBack&&e.callBack({requestType:e.subCommand,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)}))},e}(),Jt=function(){function e(e,n){this.undoRedoStack=[],this.parent=e,this.undoRedoSteps=t.isNullOrUndefined(n)?30:n.undoRedoSteps,this.undoRedoTimer=t.isNullOrUndefined(n)?300:n.undoRedoTimer,this.addEventListener()}return e.prototype.addEventListener=function(){var e=t.debounce(this.keyUp,this.undoRedoTimer);this.parent.observer.on("keyup-handler",e,this),this.parent.observer.on("keydown-handler",this.keyDown,this),this.parent.observer.on("action",this.onAction,this),this.parent.observer.on("model_changed_plugin",this.onPropertyChanged,this)},e.prototype.onPropertyChanged=function(e){for(var t=0,n=Object.keys(e.newProp);t<n.length;t++)switch(n[t]){case"undoRedoSteps":this.undoRedoSteps=e.newProp.undoRedoSteps;break;case"undoRedoTimer":this.undoRedoTimer=e.newProp.undoRedoTimer}},e.prototype.removeEventListener=function(){this.parent.observer.off("keyup-handler",this.keyUp),this.parent.observer.off("keydown-handler",this.keyDown),this.parent.observer.off("action",this.onAction)},e.prototype.onAction=function(e){"Undo"===e.subCommand?this.undo(e):this.redo(e)},e.prototype.destroy=function(){this.removeEventListener()},e.prototype.keyDown=function(e){var t=e.event,n=this;switch(t.action){case"undo":t.preventDefault(),n.undo(e);break;case"redo":t.preventDefault(),n.redo(e)}},e.prototype.keyUp=function(e){17===e.event.keyCode||e.event.ctrlKey||this.saveData(e)},e.prototype.saveData=function(e){var t=(new Dt).getRange(this.parent.currentDocument),n=(new Dt).save(t,this.parent.currentDocument),i={text:this.parent.editableElement.innerHTML,range:n};this.undoRedoStack.length>=this.steps&&(this.undoRedoStack=this.undoRedoStack.slice(0,this.steps+1)),this.undoRedoStack.length>1&&this.undoRedoStack[this.undoRedoStack.length-1].range.range.collapsed===t.collapsed&&this.undoRedoStack[this.undoRedoStack.length-1].range.startOffset===n.range.startOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.endOffset===n.range.endOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.range.startContainer===n.range.startContainer&&this.undoRedoStack[this.undoRedoStack.length-1].text.trim()===i.text.trim()||(this.undoRedoStack.push(i),this.steps=this.undoRedoStack.length-1,this.steps>this.undoRedoSteps&&(this.undoRedoStack.shift(),this.steps--),e&&e.callBack&&e.callBack())},e.prototype.undo=function(e){if(this.steps>0){var t=this.undoRedoStack[this.steps-1].range,n=this.undoRedoStack[this.steps-1].text;this.parent.editableElement.innerHTML=n,this.parent.editableElement.focus(),I()&&B(this.parent.editableElement,e.selector),t.restore(),this.steps--,e.callBack&&e.callBack({requestType:"Undo",editorMode:"HTML",range:t,elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument),event:e.event})}},e.prototype.redo=function(e){if(null!=this.undoRedoStack[this.steps+1]){var t=this.undoRedoStack[this.steps+1].range;this.parent.editableElement.innerHTML=this.undoRedoStack[this.steps+1].text,this.parent.editableElement.focus(),I()&&B(this.parent.editableElement,e.selector),t.restore(),this.steps++,e.callBack&&e.callBack({requestType:"Redo",editorMode:"HTML",range:t,elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument),event:e.event})}},e.prototype.getUndoStatus=function(){var e={undo:!1,redo:!1};return this.steps>0&&(e.undo=!0),null!=this.undoRedoStack[this.steps+1]&&(e.redo=!0),e},e}(),$t=function(){function e(e){this.olData=["decimal","lower-alpha","lower-roman","upper-alpha","upper-roman","lower-greek"],this.ulData=["disc","square","circle","disc","square","circle"],this.ignorableNodes=["A","APPLET","B","BLOCKQUOTE","BR","BUTTON","CENTER","CODE","COL","COLGROUP","DD","DEL","DFN","DIR","DIV","DL","DT","EM","FIELDSET","FONT","FORM","FRAME","FRAMESET","H1","H2","H3","H4","H5","H6","HR","I","IMG","IFRAME","INPUT","INS","LABEL","LI","OL","OPTION","P","PARAM","PRE","Q","S","SELECT","SPAN","STRIKE","STRONG","SUB","SUP","TABLE","TBODY","TD","TEXTAREA","TFOOT","TH","THEAD","TITLE","TR","TT","U","UL"],this.blockNode=["div","p","h1","h2","h3","h4","h5","h6","address","blockquote","button","center","dd","dir","dl","dt","fieldset","frameset","hr","iframe","isindex","li","map","menu","noframes","noscript","object","ol","pre","table","tbody","td","tfoot","th","thead","tr","ul","header","article","nav","footer","section","aside","main","figure","figcaption"],this.borderStyle=["border-top","border-right","border-bottom","border-left"],this.removableElements=["o:p","style"],this.listContents=[],this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("ms_word_cleanup_plugin",this.wordCleanup,this)},e.prototype.wordCleanup=function(e){var n=e.allowedStylePropertiesArray,i=[],o=e.args.clipboardData.getData("text/HTML"),r=e.args.clipboardData.getData("text/rtf"),s=t.createElement("p");s.setAttribute("id","MSWord-Content"),s.innerHTML=o;var a=/class="?Mso|style="[^ ]*\bmso-/i,l=/(class="?Mso|class='?Mso|class="?Xl|class='?Xl|class=Xl|style="[^"]*\bmso-|style='[^']*\bmso-|w:WordDocument)/gi,d=/style='mso-width-source:/i;/class='?Mso|style='[^ ]*\bmso-/i.test(o)||a.test(o)||l.test(o)||d.test(o)?(this.imageConversion(s,r),o=o.replace(/<img[^>]+>/i,""),i=this.cleanUp(s,i),t.isNullOrUndefined(i[0])||"UL"===i[0].parentElement.tagName||"OL"===i[0].parentElement.tagName||this.listConverter(i),this.styleCorrection(s,n),this.removingComments(s),this.removeUnwantedElements(s),this.removeEmptyElements(s),this.breakLineAddition(s),this.removeClassName(s),d.test(o)&&this.addTableBorderClass(s),e.callBack(s.innerHTML)):e.callBack(s.innerHTML)},e.prototype.addTableBorderClass=function(e){for(var t=e.querySelectorAll("table"),n=!1,i=0;i<t.length;i++){for(var o=0;o<this.borderStyle.length;o++)if(t[i].innerHTML.indexOf(this.borderStyle[o])>=0){n=!0;break}n&&(t[i].classList.add("e-rte-table-border"),n=!1)}},e.prototype.imageConversion=function(e,t){this.checkVShape(e);var n=e.querySelectorAll("img"),i=[],o=[],r=[];if(n.length>0){for(a=0;a<n.length;a++)i.push(n[a].getAttribute("src")),r.push(n[a].getAttribute("src").split("/")[n[a].getAttribute("src").split("/").length-1].split(".")[0]);for(var s=this.hexConversion(t),a=0;a<s.length;a++)o.push(this.convertToBase64(s[a]));for(a=0;a<n.length;a++)n[a].setAttribute("src",o[a]),n[a].setAttribute("id","msWordImg-"+r[a])}},e.prototype.checkVShape=function(e){for(var n=e.querySelectorAll("*"),i=0;i<n.length;i++)switch(n[i].nodeName){case"V:SHAPETYPE":t.detach(n[i]);break;case"V:SHAPE":if("V:IMAGEDATA"===n[i].firstElementChild.nodeName){var o=n[i].firstElementChild.getAttribute("src"),r=t.createElement("img");r.setAttribute("src",o),n[i].parentElement.insertBefore(r,n[i]),t.detach(n[i])}}},e.prototype.convertToBase64=function(e){var t=this.conHexStringToBytes(e.hex),n=this.conBytesToBase64(t);return e.type?"data:"+e.type+";base64,"+n:null},e.prototype.conBytesToBase64=function(e){for(var t="",n=e.length,i=0;i<n;i+=3){var o=e.slice(i,i+3),r=o.length,s=[];if(r<3)for(a=r;a<3;a++)o[a]=0;s[0]=(252&o[0])>>2,s[1]=(3&o[0])<<4|o[1]>>4,s[2]=(15&o[1])<<2|(192&o[2])>>6,s[3]=63&o[2];for(var a=0;a<4;a++)t+=a<=r?"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(s[a]):"="}return t},e.prototype.conHexStringToBytes=function(e){for(var t=[],n=e.length/2,i=0;i<n;i++)t.push(parseInt(e.substr(2*i,2),16));return t},e.prototype.hexConversion=function(e){var n,i=/\{\\pict[\s\S]+?\\bliptag\-?\d+(\\blipupi\-?\d+)?(\{\\\*\\blipuid\s?[\da-fA-F]+)?[\s\}]*?/,o=new RegExp("(?:("+i.source+"))([\\da-fA-F\\s]+)\\}","g"),r=e.match(o),s=[];if(!t.isNullOrUndefined(r))for(var a=0;a<r.length;a++)if(i.test(r[a])){if(-1!==r[a].indexOf("\\pngblip"))n="image/png";else{if(-1===r[a].indexOf("\\jpegblip"))continue;n="image/jpeg"}s.push({hex:n?r[a].replace(i,"").replace(/[^\da-fA-F]/g,""):null,type:n})}return s},e.prototype.removeClassName=function(e){for(var t=e.querySelectorAll("*[class]"),n=0;n<t.length;n++)t[n].removeAttribute("class")},e.prototype.breakLineAddition=function(e){for(var n=e.querySelectorAll("*"),i=0;i<n.length;i++)if(0===n[i].children.length&&"&nbsp;"===n[i].innerHTML&&"&nbsp;"===n[i].innerHTML&&!n[i].closest("li")&&!n[i].closest("td")){var o=this.findDetachElem(n[i]),r=t.createElement("br");t.isNullOrUndefined(o.parentElement)||(o.parentElement.insertBefore(r,o),t.detach(o))}},e.prototype.findDetachElem=function(e){return!t.isNullOrUndefined(e.parentElement)&&""===e.parentElement.textContent.trim()&&"TD"!==e.parentElement.tagName&&t.isNullOrUndefined(e.parentElement.querySelector("img"))?this.findDetachElem(e.parentElement):e},e.prototype.removeUnwantedElements=function(e){for(var t=e.innerHTML,n=0;n<this.removableElements.length;n++){var i=new RegExp("<"+this.removableElements[n]+">","g"),o=new RegExp("</"+this.removableElements[n]+">","g");t=(t=t.replace(i,"")).replace(o,"")}e.innerHTML=t,e.querySelectorAll(":empty")},e.prototype.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:""===e.parentElement.textContent.trim()&&"MSWord-Content"!==e.parentElement.getAttribute("id")&&t.isNullOrUndefined(e.parentElement.querySelector("img"))?this.findDetachEmptyElem(e.parentElement):e},e.prototype.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++)if(t.isNullOrUndefined(n[i].closest("td"))||t.isNullOrUndefined(n[i].closest("td").querySelector(".MsoNormal"))||(n[i].innerHTML="-"),"IMG"!==n[i].tagName&&"BR"!==n[i].tagName&&"IFRAME"!==n[i].tagName&&"TD"!==n[i].tagName&&"HR"!==n[i].tagName){var o=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(o)||t.detach(o)}},e.prototype.styleCorrection=function(e,n){var i=e.querySelectorAll("style");if(i.length>0){var o=i[0].innerHTML.match(/[\S ]+\s+{[\s\S]+?}/gi),r=t.isNullOrUndefined(o)?null:this.findStyleObject(o),s=Object.keys(r),a=s.map(function(e){return r[e]});a=this.removeUnwantedStyle(a,n),this.filterStyles(e,n);for(var l=void 0,d=!1,c=0;c<s.length;c++){if(""===s[c].split(".")[0])l=e.getElementsByClassName(s[c].split(".")[1]),d=!0;else{if(1===s[c].split(".").length&&s[c].split(".")[0].indexOf("@")>=0)continue;l=1===s[c].split(".").length&&s[c].split(".")[0].indexOf("@")<0?e.getElementsByTagName(s[c]):e.querySelectorAll(s[c])}for(var p=0;p<l.length;p++){var h=l[p].getAttribute("style");if(t.isNullOrUndefined(h)||""===h.trim())l[p].setAttribute("style",a[c]);else{var u=a[c].split(";");if(!d)for(var m=0;m<u.length;m++)h.indexOf(u[m].split(":")[0])>=0&&(u.splice(m,1),m--);a[c]=u.join(";")+";";var g=h+a[c];l[p].setAttribute("style",g)}}d=!1}}},e.prototype.filterStyles=function(e,t){for(var n=e.querySelectorAll("*[style]"),i=0;i<n.length;i++){for(var o=n[i].getAttribute("style").split(";"),r="",s=0;s<o.length;s++)t.indexOf(o[s].split(":")[0].trim())>=0&&(r+=o[s]+";");n[i].setAttribute("style",r)}},e.prototype.removeUnwantedStyle=function(e,t){for(var n=0;n<e.length;n++){var i=e[n].split(";");e[n]="";for(var o=0;o<i.length;o++)t.indexOf(i[o].split(":")[0])>=0&&(e[n]+=i[o]+";")}return e},e.prototype.findStyleObject=function(e){for(var t={},n=0;n<e.length;n++){var i=e[n],o=i.replace(/([\S ]+\s+){[\s\S]+?}/gi,"$1"),r=i.replace(/[\S ]+\s+{([\s\S]+?)}/gi,"$1");o=o.replace(/^[\s]|[\s]$/gm,""),r=r.replace(/^[\s]|[\s]$/gm,""),o=o.replace(/\n|\r|\n\r/g,""),r=r.replace(/\n|\r|\n\r/g,"");for(var s=o.split(", "),a=0;a<s.length;a++)t[s[a]]=r}return t},e.prototype.removingComments=function(e){var t=e.innerHTML;t=t.replace(/<!--[\s\S]*?-->/g,""),e.innerHTML=t},e.prototype.cleanUp=function(e,t){for(var n,i=[],o=e.querySelectorAll("*"),r=0;r<o.length;r++)-1===this.ignorableNodes.indexOf(o[r].nodeName)||3===o[r].nodeType&&""===o[r].textContent.trim()?i.push(o[r]):(o[r].className&&-1!==o[r].className.toLowerCase().indexOf("msolistparagraph")&&1!==o[r].childElementCount&&t.push(o[r]),!n||-1===this.blockNode.indexOf(o[r].nodeName.toLowerCase())||o[r].className&&-1!==o[r].className.toLowerCase().indexOf("msolistparagraph")||t.push(null),-1!==this.blockNode.indexOf(o[r].nodeName.toLowerCase())&&(n=!(!o[r].className||-1===o[r].className.toLowerCase().indexOf("msolistparagraph"))));return t.length&&null!==t[t.length-1]&&t.push(null),t},e.prototype.listConverter=function(e){for(var n,i,o=[],r=[],s="",a=0;a<e.length;a++)if(null!==e[a]){e[a].getAttribute("style")&&-1!==e[a].getAttribute("style").indexOf("mso-outline-level")&&e[a].setAttribute("style",e[a].getAttribute("style").replace("mso-outline-level","mso-outline")),n=(s=e[a].getAttribute("style"))&&-1!==s.indexOf("level")?parseInt(s.charAt(s.indexOf("level")+5),null):1,this.listContents=[],this.getListContent(e[a]);var l=void 0;if(!t.isNullOrUndefined(this.listContents[0])){l=this.listContents[0].trim().length>1?"ol":"ul";for(var d=[],c=1;c<this.listContents.length;c++)d.push(this.listContents[c]);var p=void 0;t.isNullOrUndefined(e[a].className)||(p=e[a].className),r.push({listType:l,content:d,nestedLevel:n,class:p})}}else o.push({content:this.makeConversion(r),node:e[a-1]}),r=[];for(i=e.shift();i;){for(var h=[],u=0;u<o.length;u++)if(o[u].node===i){for(m=0;m<o[u].content.childNodes.length;m++)h.push(o[u].content.childNodes[m]);for(var m=0;m<h.length;m++)i.parentElement.insertBefore(h[m],i);break}i.remove(),(i=e.shift())||(i=e.shift())}},e.prototype.makeConversion=function(e){for(var n,i,o,r=t.createElement("div"),s=1,a=0,l=0;l<e.length;l++){var d=t.createElement("p");if(d.innerHTML=e[l].content.join(" "),1===e[l].nestedLevel&&0===a&&e[l].content)r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);else if(e[l].nestedLevel===s)i.parentElement.tagName.toLowerCase()===e[l].listType?(i.parentElement.appendChild(i=t.createElement("li")),i.appendChild(d)):(n=t.createElement(e[l].listType),i.parentElement.parentElement.appendChild(n),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()));else if(e[l].nestedLevel>s)if(t.isNullOrUndefined(i))r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);else{for(var c=0;c<e[l].nestedLevel-s;c++)i.appendChild(n=t.createElement(e[l].listType)),i=t.createElement("li",{styles:"list-style-type: none;"}),n.appendChild(i);i.appendChild(d),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel),n.childNodes[0].style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel)}else if(1===e[l].nestedLevel)r.lastChild.tagName.toLowerCase()===e[l].listType?n=r.lastChild:r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);else for(o=i;o.parentElement;)if((o=o.parentElement).attributes.getNamedItem("level")){if(parseInt(o.attributes.getNamedItem("level").textContent,null)===e[l].nestedLevel){(i=t.createElement("li")).appendChild(d),o.appendChild(i);break}if(e[l].nestedLevel>parseInt(o.attributes.getNamedItem("level").textContent,null)){o.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);break}}i.setAttribute("class",e[l].class),s=e[l].nestedLevel,a++}return r},e.prototype.getListStyle=function(e,t){return t=t>0?t-1:t,"ol"===e?t<this.olData.length?this.olData[t]:this.olData[0]:t<this.ulData.length?this.ulData[t]:this.ulData[0]},e.prototype.getListContent=function(e){var n="",i=e.firstElementChild;if(""!==i.textContent.trim()||t.isNullOrUndefined(i.firstElementChild)||"IMG"!==i.firstElementChild.nodeName){var o=["b","em"];if(i.childNodes.length>0&&(i.querySelectorAll("b").length>0||i.querySelectorAll("em").length>0))for(var r=0;r<i.childNodes.length;r++){var s=i.childNodes[r].nodeName.toLowerCase();i.childNodes[r].textContent.trim().length>1&&-1!==o.indexOf(s)?(n="<"+s+">"+i.childNodes[r].textContent+"</"+s+">",this.listContents.push(n)):1===i.childNodes[r].textContent.trim().length&&this.listContents.push(i.childNodes[r].textContent.trim())}else n=i.textContent.trim(),this.listContents.push(n)}else n=e.innerHTML.trim(),this.listContents.push(""),this.listContents.push(n);t.detach(i),this.listContents.push(e.innerHTML)},e}(),Zt=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("insert-text-type",this.insertText,this)},e.prototype.insertText=function(e){var t=document.createTextNode(e.value);Ht.Insert(this.parent.currentDocument,t),e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),en=function(){function e(e){this.currentDocument=e.document,this.editableElement=e.editableElement,this.nodeSelection=new Dt,this.domNode=new Rt(this.editableElement,this.currentDocument),this.observer=new t.Observer(this),this.listObj=new It(this),this.formatObj=new At(this),this.alignmentObj=new jt(this),this.indentsObj=new zt(this),this.linkObj=new Ut(this),this.imgObj=new _t(this),this.selectionObj=new Gt(this),this.inserthtmlObj=new Kt(this),this.insertTextObj=new Zt(this),this.clearObj=new Yt(this),this.tableObj=new qt(this),this.undoRedoManager=new Jt(this,e.options),this.msWordPaste=new $t(this),this.wireEvents()}return e.prototype.wireEvents=function(){this.observer.on("keydown",this.editorKeyDown,this),this.observer.on("keyup",this.editorKeyUp,this),this.observer.on("keyup",this.editorKeyUp,this),this.observer.on("model_changed",this.onPropertyChanged,this),this.observer.on("ms_word_cleanup",this.onWordPaste,this)},e.prototype.onWordPaste=function(e){this.observer.notify("ms_word_cleanup_plugin",e)},e.prototype.onPropertyChanged=function(e){this.observer.notify("model_changed_plugin",e)},e.prototype.editorKeyDown=function(e){this.observer.notify("keydown-handler",e)},e.prototype.editorKeyUp=function(e){this.observer.notify("keyup-handler",e)},e.prototype.execCommand=function(e,t,n,i,o,r,s){switch(e.toLocaleLowerCase()){case"lists":this.observer.notify("list-type",{subCommand:t,event:n,callBack:i,selector:s});break;case"formats":this.observer.notify("format-type",{subCommand:t,event:n,callBack:i,selector:s,exeValue:r});break;case"alignments":this.observer.notify("alignment-type",{subCommand:t,event:n,callBack:i,selector:s,value:r});break;case"indents":this.observer.notify("indent-type",{subCommand:t,event:n,callBack:i,selector:s});break;case"links":this.observer.notify(kt,{command:e,value:t,item:r,event:n,callBack:i});break;case"files":this.observer.notify(Nt,{command:e,value:"Image",item:r,event:n,callBack:i,selector:s});break;case"images":this.observer.notify(Nt,{command:e,value:t,item:r,event:n,callBack:i,selector:s});break;case"table":switch(t.toString().toLocaleLowerCase()){case"createtable":this.observer.notify(wt,{item:r,event:n,callBack:i});break;case"insertrowbefore":case"insertrowafter":this.observer.notify("INSERT-ROW",{item:r,event:n,callBack:i});break;case"insertcolumnleft":case"insertcolumnright":this.observer.notify("INSERT-COLUMN",{item:r,event:n,callBack:i});break;case"deleterow":this.observer.notify("DELETE-ROW",{item:r,event:n,callBack:i});break;case"deletecolumn":this.observer.notify("DELETE-COLUMN",{item:r,event:n,callBack:i});break;case"tableremove":this.observer.notify("REMOVE-TABLE",{item:r,event:n,callBack:i});break;case"tableheader":this.observer.notify("TABLE-HEADER",{item:r,event:n,callBack:i});break;case"aligntop":case"alignmiddle":case"alignbottom":this.observer.notify("TABLE_VERTICAL_ALIGN",{item:r,event:n,callBack:i});break;case"merge":this.observer.notify("TABLE_MERGE",{item:r,event:n,callBack:i});break;case"horizontalsplit":this.observer.notify("TABLE_HORIZONTAL_SPLIT",{item:r,event:n,callBack:i});break;case"verticalsplit":this.observer.notify("TABLE_VERTICAL_SPLIT",{item:r,event:n,callBack:i})}break;case"font":case"style":case"effects":case"casing":this.observer.notify("selection-type",{subCommand:t,event:n,callBack:i,value:o,selector:s});break;case"inserthtml":this.observer.notify("inserthtml-type",{subCommand:t,callBack:i,value:o});break;case"inserttext":this.observer.notify("insert-text-type",{subCommand:t,callBack:i,value:o});break;case"clear":this.observer.notify("clear-type",{subCommand:t,event:n,callBack:i,selector:s});break;case"actions":this.observer.notify("action",{subCommand:t,event:n,callBack:i,selector:s})}},e}(),tn=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),nn=function(e){function n(n){var i=e.call(this)||this;return i.initialize(),t.extend(i,i,n,!0),i.currentDocument&&i.element&&i.updateFormatter(i.element,i.currentDocument,n.options),i}return tn(n,e),n.prototype.initialize=function(){this.keyConfig=ct},n.prototype.updateFormatter=function(e,t,n){e&&t&&(this.editorManager=new en({document:t,editableElement:e,options:n}))},n}(it),on=H(),rn=function(){function e(){}return e.get=function(e,t,n,i,o,r){for(var s=JSON.parse(JSON.stringify(on)),a=JSON.parse(JSON.stringify(on)),l=new Dt,d=r?[r]:l.getNodeCollection(l.getRange(e)),c=d.length,p=0;p<d.length;p++)("BR"!==d[p].nodeName&&3!==d[p].nodeType||c>1&&3===d[p].nodeType&&""===d[p].textContent.trim())&&(d.splice(p,1),p--);for(p=0;p<d.length;p++)s=this.getFormatParent(e,s,d[p],t,n,i,o),(0===p&&s.bold||!s.bold)&&(a.bold=s.bold),(0===p&&s.insertcode||!s.insertcode)&&(a.insertcode=s.insertcode),(0===p&&s.italic||!s.italic)&&(a.italic=s.italic),(0===p&&s.underline||!s.underline)&&(a.underline=s.underline),(0===p&&s.strikethrough||!s.strikethrough)&&(a.strikethrough=s.strikethrough),(0===p&&s.superscript||!s.superscript)&&(a.superscript=s.superscript),(0===p&&s.subscript||!s.subscript)&&(a.subscript=s.subscript),(0===p&&s.fontcolor||!s.fontcolor)&&(a.fontcolor=s.fontcolor),(0===p&&s.fontname||!s.fontname)&&(a.fontname=s.fontname),(0===p&&s.fontsize||!s.fontsize)&&(a.fontsize=s.fontsize),(0===p&&s.backgroundcolor||!s.backgroundcolor)&&(a.backgroundcolor=s.backgroundcolor),(0===p&&s.orderedlist||!s.orderedlist)&&(a.orderedlist=s.orderedlist),(0===p&&s.unorderedlist||!s.unorderedlist)&&(a.unorderedlist=s.unorderedlist),(0===p&&s.alignments||!s.alignments)&&(a.alignments=s.alignments),(0===p&&s.formats||!s.formats)&&(a.formats=s.formats),(0===p&&s.createlink||!s.createlink)&&(a.createlink=s.createlink),s=JSON.parse(JSON.stringify(on));return a},e.getFormatParent=function(e,t,n,i,o,r,s){if(i.contains(n)||3===n.nodeType&&3!==i.nodeType&&i.contains(n.parentNode))do{t=this.isFormattedNode(e,t,n,o,r,s),n=n.parentNode}while(n&&n!==i);return t},e.isFormattedNode=function(e,t,n,i,o,r){return t.bold||(t.bold=Vt.isBold(n)),t.italic||(t.italic=Vt.isItalic(n)),t.underline||(t.underline=Vt.isUnderline(n)),t.strikethrough||(t.strikethrough=Vt.isStrikethrough(n)),t.superscript||(t.superscript=Vt.isSuperscript(n)),t.subscript||(t.subscript=Vt.isSubscript(n)),t.fontcolor||(t.fontcolor=this.isFontColor(e,n)),t.fontname||(t.fontname=this.isFontName(e,n,r)),t.fontsize||(t.fontsize=this.isFontSize(n,o)),t.backgroundcolor||(t.backgroundcolor=this.isBackgroundColor(n)),t.orderedlist||(t.orderedlist=this.isOrderedList(n)),t.unorderedlist||(t.unorderedlist=this.isUnorderedList(n)),t.alignments||(t.alignments=this.isAlignment(n)),t.formats||(t.formats=this.isFormats(n,i),"pre"===t.formats&&(t.insertcode=!0)),t.createlink||(t.createlink=this.isLink(n)),t},e.isFontColor=function(e,t){var n=t.style&&t.style.color;return null!==n&&void 0!==n&&""!==n||3===t.nodeType||(n=this.getComputedStyle(e,t,"color")),null!==n&&""!==n&&void 0!==n?n:null},e.isLink=function(e){return"a"===e.nodeName.toLocaleLowerCase()},e.isBackgroundColor=function(e){var t=e.style&&e.style.backgroundColor;return null!==t&&""!==t&&void 0!==t?t:null},e.isFontSize=function(e,t){var n=e.style&&e.style.fontSize;return null!==n&&""!==n&&void 0!==n&&(null===t||void 0===t||t.indexOf(n)>-1)?n:null},e.isFontName=function(e,t,n){var i=t.style&&t.style.fontFamily;null!==i&&void 0!==i&&""!==i||3===t.nodeType||(i=this.getComputedStyle(e,t,"font-family"));var o=null;return null!==i&&""!==i&&void 0!==i&&(null===n||void 0===n||n.filter(function(e,t){var n=new RegExp(i,"i");(e.replace(/"/g,"").replace(/ /g,"")===i.replace(/"/g,"").replace(/ /g,"")||e.search(n)>-1)&&(o=t)})&&null!==o)?null!==o?n[o]:i.replace(/"/g,""):null},e.isOrderedList=function(e){return"ol"===e.nodeName.toLocaleLowerCase()},e.isUnorderedList=function(e){return"ul"===e.nodeName.toLocaleLowerCase()},e.isAlignment=function(e){var t=e.style&&e.style.textAlign;return"left"===t?"justifyleft":"center"===t?"justifycenter":"right"===t?"justifyright":"justify"===t?"justifyfull":null},e.isFormats=function(e,t){return(void 0===t||null===t)&&Lt.indexOf(e.nodeName.toLocaleLowerCase())>-1||null!==t&&void 0!==t&&t.indexOf(e.nodeName.toLocaleLowerCase())>-1?e.nodeName.toLocaleLowerCase():null},e.getComputedStyle=function(e,t,n){return e.defaultView.getComputedStyle(t,null).getPropertyValue(n)},e}(),sn=function(){function e(e){this.parent=e,this.toolbarStatus=this.prevToolbarStatus=H(),this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("toolbar-refresh",this.onRefreshHandler,this),this.parent.on(F,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off("toolbar-refresh",this.onRefreshHandler),this.parent.off(F,this.removeEventListener)},e.prototype.onRefreshHandler=function(e){if(!this.parent.readonly){var t=[],n=[],i=[];this.parent.fontSize.items.forEach(function(e){t.push(e.value)}),this.parent.fontFamily.items.forEach(function(e){n.push(e.value)}),this.parent.format.types.forEach(function(e){i.push(e.value.toLocaleLowerCase())}),this.toolbarStatus=rn.get(this.parent.contentModule.getDocument(),this.parent.contentModule.getEditPanel(),i,t,n,e.documentNode);var o=JSON.stringify(this.toolbarStatus);this.parent.notify("toolbar-updated",this.toolbarStatus),JSON.stringify(this.prevToolbarStatus)!==o&&(this.parent.notify("updateTbItemsStatus",{html:JSON.parse(o),markdown:null}),this.prevToolbarStatus=JSON.parse(o))}},e}(),an=function(){function e(e,t){this.parent=e,this.serviceLocator=t}return e.prototype.renderPanel=function(){var e=this.parent,t=this.parent.createElement("div",{className:"e-rte-content",id:this.parent.getID()+"rte-view"}),n=w(e.value,e);this.editableElement=this.parent.createElement("div",{className:"e-content",id:this.parent.getID()+"_rte-edit-view",attrs:{contenteditable:"true"},innerHTML:n}),t.appendChild(this.editableElement),this.setPanel(t),e.element.appendChild(t)},e.prototype.getPanel=function(){return this.contentPanel},e.prototype.getEditPanel=function(){return this.editableElement},e.prototype.getText=function(){return this.getEditPanel().innerText},e.prototype.setPanel=function(e){this.contentPanel=e},e.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},e}(),ln=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),dn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ln(n,e),n.prototype.renderPanel=function(){var e=this.parent,t="\n<!DOCTYPE html> \n <html>\n <head>\n <meta charset='utf-8' /> \n <style>\n @charset \"UTF-8\";\n body {\n font-family: \"Roboto\", sans-serif;\n font-size: 14px;\n }\n html, body{height: 100%;margin: 0;}\n body.e-cursor{cursor:default}\n span.e-selected-node\t{background-color: #939393;color: white;}\n span.e-selected-node.e-highlight {background-color: #1d9dd8;}\n body{color:#333;word-wrap:break-word;padding: 8px;box-sizing: border-box;}\n .e-rte-image {border: 0;cursor: pointer;display:\n block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-img-caption { display: inline-block; float: none; margin: 5px auto; max-width: 100%;position: relative;}\n .e-img-caption.e-caption-inline {display: inline-block;float: none;\n margin: 5px auto;margin-left: 5px;margin-right: 5px;max-width: calc(100% - (2 * 5px));\n position: relativetext-align: center;vertical-align: bottom;}\n .e-img-inner {box-sizing: border-box;display: block;font-size: 16px;font-weight: initial;\n margin: auto;opacity: .9;text-align: center;width: 100%;}\n .e-img-wrap {display: inline-block;margin: auto;padding: 0;text-align: center;width: 100%;}\n .e-imgleft {float: left;margin: 0 5px 0 0;text-align: left;}\n .e-imgright {float: right;margin: 0 0 0 5px;text-align: right;}\n .e-imgcenter {cursor: pointer;display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-control img:not(.e-resize) {border: 2px solid transparent; z-index: 1000}\n .e-imginline {display: inline-block;float: none;margin-left: 5px;margin-right: 5px;\n max-width: calc(100% - (2 * 5px));vertical-align: bottom;}\n .e-imgbreak {border: 0;cursor: pointer;\n display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-img-focus:not(.e-resize) {border: solid 2px #4a90e2;}\n img::selection { background: transparent;color: transparent;}\n span.e-rte-imageboxmark { width: 10px; height: 10px; position: absolute; display: block;\n background: #4a90e2; border: 1px solid #fff; z-index: 1000;}\n .e-mob-rte.e-mob-span span.e-rte-imageboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-mob-rte span.e-rte-imageboxmark { background: #fff; border: 1px solid #4a90e2;\n border-radius: 15px; height: 20px; width: 20px; }\n .e-mob-rte.e-mob-span span.e-rte-imageboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-rte-content .e-content img.e-resize { z-index: 1000; }\n .e-img-caption .e-img-inner { outline: 0; }\n .e-img-caption .e-rte-image.e-imgright, .e-img-caption .e-rte-image.e-imgleft { float: none; margin: 0;}\n body{box-sizing: border-box;min-height: 100px;outline: 0 solid transparent;\n overflow-x: auto;padding: 16px;position: relative;text-align: inherit;z-index: 2;}\n p{margin: 0 0 10px;margin-bottom: 10px;}\n li{margin-bottom: 10px;}\n h1{font-size: 2.17em;font-weight: 400;line-height: 1;margin: 10px 0;}\n h2{font-size: 1.74em;font-weight: 400;margin: 10px 0;}\n h3{font-size: 1.31em;font-weight: 400;margin: 10px 0;}\n h4{font-size: 16px;font-weight: 400;line-height: 1.5;margin: 0;}\n h5{font-size: 00.8em;font-weight: 400;margin: 0;}\n h6{font-size: 00.65em;font-weight: 400;margin: 0;}\n blockquote{margin: 10px 0;margin-left: 0;padding-left: 5px;border-left: solid 2px #5c5c5c;}\n pre{background-color: inherit;border: 0;border-radius: 0;color: #333;\n font-size: inherit;line-height: inherit;margin: 0 0 10px;overflow: visible;padding: 0;\n white-space: pre-wrap;word-break: inherit;word-wrap: break-word;}\n strong, b{font-weight: 700;}\n a{text-decoration: none;user-select: auto;}\n a:hover{text-decoration: underline;};\n p:last-child, pre:last-child, blockquote:last-child{margin-bottom: 0;}\n h3+h4, h4+h5, h5+h6{margin-top: 00.6em;}\n ul:last-child{margin-bottom: 0;}\n table { border-collapse: collapse; empty-cells: show;}\n table td,table th {border: 1px solid #BDBDBD; height: 20px; vertical-align: middle;}\n table.e-alternate-border tbody tr:nth-child(2n) {background-color: #F5F5F5;}\n table th {background-color: #E0E0E0;}\n table.e-dashed-border td,table.e-dashed-border th { border: 1px dashed #BDBDBD} \n table .e-cell-select {border: 1px double #4a90e2;}\n span.e-table-box { cursor: nwse-resize; display: block; height: 10px; position: absolute; width: 10px; }\n span.e-table-box.e-rmob {height: 14px;width: 14px;}\n .e-row-resize, .e-column-resize { background-color: transparent; background-repeat: repeat;\n bottom: 0;cursor: col-resize;height: 1px;overflow: visible;position: absolute;width: 1px; }\n .e-row-resize { cursor: row-resize; height: 1px;}\n .e-table-rhelper { cursor: col-resize; opacity: .87;position: absolute;}\n .e-table-rhelper.e-column-helper { width: 1px; }\n .e-table-rhelper.e-row-helper {height: 1px;}\n .e-reicon::before { border-bottom: 6px solid transparent; border-right: 6px solid;\n border-top: 6px solid transparent; content: ''; display: block; height: 0;\n position: absolute; right: 4px; top: 4px; width: 20px; }\n .e-reicon::after { border-bottom: 6px solid transparent; border-left: 6px solid;\n border-top: 6px solid transparent; content: ''; display: block;\n height: 0; left: 4px; position: absolute; top: 4px; width: 20px; z-index: 3; }\n .e-row-helper.e-reicon::after { top: 10px; transform: rotate(90deg); }\n .e-row-helper.e-reicon::before { left: 4px; top: -20px; transform: rotate(90deg); }\n span.e-table-box { background-color: #ffffff; border: 1px solid #BDBDBD; }\n span.e-table-box.e-rbox-select { background-color: #BDBDBD; border: 1px solid #BDBDBD; }\n .e-table-rhelper { background-color: #4a90e2;}\n .e-rtl { direction: rtl; }\n </style>\n </head>"+('<body spellcheck="false" autocorrect="off" contenteditable="true">'+w(e.value,e)+"</body></html>"),n=this.parent.createElement("iframe",{innerHTML:t,id:this.parent.getID()+"_rte-view",className:"e-rte-content",styles:"display:block;"});this.setPanel(n),e.element.appendChild(n),n.contentDocument.body.id=this.parent.getID()+"_rte-edit-view",n.contentDocument.body.setAttribute("aria-owns",this.parent.getID()),n.contentDocument.open(),t=this.setThemeColor(t,{color:"#333"}),n.contentDocument.write(t),n.contentDocument.close(),e.enableRtl&&this.contentPanel.contentDocument.body.setAttribute("class","e-rtl")},n.prototype.setThemeColor=function(e,t){var n=getComputedStyle(this.parent.element,".e-richtexteditor").getPropertyValue("color");return e.replace(t.color,n)},n.prototype.getEditPanel=function(){return t.isNullOrUndefined(this.contentPanel.contentDocument)?this.parent.inputElement:this.contentPanel.contentDocument.body},n.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},n}(an),cn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("xhtmlValidation",this.enableXhtmlValidation,this),this.parent.on(F,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off("xhtmlValidation",this.enableXhtmlValidation),this.parent.off(F,this.removeEventListener)},e.prototype.enableXhtmlValidation=function(){this.parent.enableXhtml&&(t.isNullOrUndefined(this.parent.inputElement)?this.currentElement=this.parent.element:this.currentElement=this.parent.inputElement,this.clean(this.currentElement),this.AddRootElement(),this.ImageTags(),this.removeTags(),this.RemoveUnsupported(),this.currentElement.innerHTML=this.selfEncloseValidation(this.currentElement.innerHTML),this.parent.setProperties({value:this.currentElement.innerHTML},!0))},e.prototype.selfEncloseValidation=function(e){e=e.replace(/<br>/g,"<br/>").replace(/<hr>/g,"<hr/>").replace(/&nbsp;/gi," ").replace(/ /g," ");for(var t,n=[],i=[],o=[/<img(.*?)>/gi,/<area(.*?)>/gi,/<base(.*?)>/gi,/<col (.*?)>/gi,/<embed(.*?)>/gi,/<input(.*?)>/gi,/<link(.*?)>/gi,/<meta(.*?)>/gi,/<param(.*?)>/gi,/<source(.*?)>/gi,/<track(.*?)>/gi,/<wbr(.*?)>/gi],r=0;r<o.length;r++){for(t=o[r].exec(e);null!==t;)n.push(t[0].toString()),t=o[r].exec(e);i=n.slice(0);for(var s=0;s<n.length;s++)-1!==n[s].indexOf("/")&&n[s].lastIndexOf("/")===n[s].length-2||(n[s]=n[s].substr(0,n[s].length-1)+" /"+n[s].substr(n[s].length-1,n[s].length));for(var a=0;a<=n.length-1;a++)e=e.replace(i[a],n[a])}return e},e.prototype.AddRootElement=function(){if(1===this.currentElement.childNodes.length&&"DIV"!==this.currentElement.firstChild.nodeName||this.currentElement.childNodes.length>1){for(var e=this.parent.createElement("div");this.currentElement.childNodes.length>0;)e.appendChild(this.currentElement.childNodes[0]);this.currentElement.appendChild(e)}},e.prototype.clean=function(e){for(var t=0;t<e.childNodes.length;t++){var n=e.childNodes[t];8===n.nodeType||"V:IMAGE"===n.nodeName?(e.removeChild(n),t--):1===n.nodeType&&this.clean(n)}return this.currentElement.innerHTML},e.prototype.ImageTags=function(){for(var e=this.currentElement.querySelectorAll("IMG"),t=e.length-1;t>=0;t--)e[t].hasAttribute("alt")||e[t].setAttribute("alt","")},e.prototype.removeTags=function(){for(var e=[["br","ul"],["br","ol"],["table","span"],["div","span"],["p","span"]],t=0;t<e.length;t++)this.RemoveElementNode(e[t][0],e[t][1])},e.prototype.RemoveElementNode=function(e,n){for(var i=this.currentElement.querySelectorAll(n),o=0;o<i.length;o++)for(var r=i[o].querySelectorAll(e),s=r.length;s>0;s--)t.detach(r[s-1])},e.prototype.RemoveUnsupported=function(){for(var e=this.currentElement.querySelectorAll("u"),n=e.length-1;n>=0;n--){var i=this.parent.createElement("span");i.style.textDecoration="underline",i.innerHTML=e[n].innerHTML,e[n].parentNode.insertBefore(i,e[n]),t.detach(e[n])}for(var o=this.currentElement.querySelectorAll("strong"),n=o.length-1;n>=0;n--){var r=this.parent.createElement("b");r.innerHTML=o[n].innerHTML,o[n].parentNode.insertBefore(r,o[n]),t.detach(o[n])}for(var s=["language","role","target","contenteditable","cellspacing","cellpadding","border","valign","colspan"],n=0;n<=s.length;n++)this.RemoveAttributeByName(s[n])},e.prototype.RemoveAttributeByName=function(e){if(null!==this.currentElement.firstChild&&3!==this.currentElement.firstChild.nodeType)for(var t=0;t<this.currentElement.childNodes.length;t++){var n=this.currentElement.childNodes[t];if(3!==n.nodeType&&"TABLE"!==n.nodeName&&"TBODY"!==n.nodeName&&"THEAD"!==n.nodeName&&"TH"!==n.nodeName&&"TR"!==n.nodeName&&"TD"!==n.nodeName&&(n.hasAttribute(e)&&n.removeAttribute(e),n.hasChildNodes()))for(var i=0;i<n.childNodes.length;i++){var o=n.childNodes[i];if(3!==o.nodeType&&"TABLE"!==o.nodeName&&"TBODY"!==o.nodeName&&"THEAD"!==o.nodeName&&"TH"!==o.nodeName&&"TR"!==o.nodeName&&"TD"!==o.nodeName&&o.hasAttribute(e)&&o.removeAttribute(e),o.hasChildNodes())for(var r=0;r<o.childNodes.length;r++)3!==o.childNodes[r].nodeType&&"TABLE"!==o.childNodes[r].nodeName&&"TBODY"!==o.childNodes[r].nodeName&&"THEAD"!==o.childNodes[r].nodeName&&"TH"!==o.childNodes[r].nodeName&&"TR"!==o.childNodes[r].nodeName&&"TD"!==o.childNodes[r].nodeName&&o.childNodes[r].hasAttribute(e)&&o.childNodes[r].removeAttribute(e)}}},e}(),pn=function(){function n(e,t){this.rangeCollection=[],this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.xhtmlValidation=new cn(e),this.addEventListener()}return n.prototype.destroy=function(){this.removeEventListener()},n.prototype.sanitizeHelper=function(e){return e=O(e,this.parent)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.nodeSelectionObj=new Dt,this.colorPickerModule=new Ke(this.parent,this.locator),this.parent.on("initial-load",this.instantiateRenderer,this),this.parent.on("html-toolbar-click",this.onToolbarClick,this),this.parent.on(Q,this.onKeyDown,this),this.parent.on("render-color-picker",this.renderColorPicker,this),this.parent.on(z,this.render,this),this.parent.on(_,this.onPropertyChanged,this),this.parent.on(F,this.destroy,this),this.parent.on("selectAll",this.selectAll,this),this.parent.on("selectRange",this.selectRange,this),this.parent.on("getSelectedHtml",this.getSelectedHtml,this),this.parent.on(V,this.onSelectionSave,this),this.parent.on("selection-restore",this.onSelectionRestore,this),this.parent.on("readOnlyMode",this.updateReadOnly,this),this.parent.on(G,this.onPaste,this))},n.prototype.updateReadOnly=function(){this.parent.readonly?(t.attributes(this.parent.contentModule.getEditPanel(),{contenteditable:"false"}),t.addClass([this.parent.element],"e-rte-readonly")):(t.attributes(this.parent.contentModule.getEditPanel(),{contenteditable:"true"}),t.removeClass([this.parent.element],"e-rte-readonly"))},n.prototype.onSelectionSave=function(){var e=this.contentRenderer.getDocument(),t=this.nodeSelectionObj.getRange(e);this.saveSelection=this.nodeSelectionObj.save(t,e)},n.prototype.onSelectionRestore=function(e){this.parent.isBlur=!1,this.contentRenderer.getEditPanel().focus(),(t.isNullOrUndefined(e.items)||e.items)&&this.saveSelection.restore()},n.prototype.onKeyDown=function(e){if(9===e.args.keyCode&&this.parent.enableTabKey){var n=this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()),i=this.nodeSelectionObj.getParentNodeCollection(n);if("LI"!==i[0].nodeName&&!t.closest(i[0],"li")&&!t.closest(i[0],"table")||0!==n.startOffset)if(e.args.preventDefault(),e.args.shiftKey){if(this.rangeCollection.length>0&&4===this.rangeCollection[this.rangeCollection.length-1].startContainer.textContent.length){var o=this.rangeCollection[this.rangeCollection.length-1].startContainer;this.nodeSelectionObj.setSelectionText(this.contentRenderer.getDocument(),o,o,0,o.textContent.length),Ht.Insert(this.contentRenderer.getDocument(),document.createTextNode("")),this.rangeCollection.pop()}}else Ht.Insert(this.contentRenderer.getDocument(),"&nbsp;&nbsp;&nbsp;&nbsp;"),this.rangeCollection.push(this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()))}"space"!==e.args.action&&"enter"!==e.args.action||this.spaceLink(e.args)},n.prototype.onPaste=function(e){var n=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if(e.text.match(n)){e.args.preventDefault();for(var i=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),o=(this.parent.formatter.editorManager.nodeSelection.save(i,this.parent.contentModule.getDocument()),new RegExp(/([^\S]|^)(((https?\:\/\/)))/gi)),r=new RegExp(/([^\S]|^)(((www\.))(\S+))/gi),s=e.text.split("\n"),a="",l=0;l<s.length;l++)if(""===s[l].trim())a+="<p><br></p>";else{for(var d="",c=!0,p=s[l].split(" "),h=0;h<p.length;h++)""===p[h].trim()?d+=c?"&nbsp;":" ":(c=!1,d+=p[h]+" ");a+=0===l?"<span>"+d.trim()+"</span>":"<p>"+d.trim()+"</p>"}var u=this.parent.createElement("div");u.setAttribute("class","pasteContent"),u.style.display="inline",u.innerHTML=a;for(var m=u.querySelectorAll("span, p"),l=0;l<m.length;l++){for(var g=m[l].innerHTML.split(" "),f="",h=0;h<g.length;h++)g[h].match(o)||g[h].match(r)?f+='<a className="e-rte-anchor" href="'+g[h]+'" title="'+g[h]+'"target="_blank">'+g[h]+" </a>":f+=g[h]+" ";m[l].innerHTML=f.trim()}t.isNullOrUndefined(this.parent.pasteCleanupModule)?this.parent.formatter.editorManager.execCommand("insertHTML",null,null,null,u):e.callBack(u.innerHTML)}},n.prototype.spaceLink=function(e){var t=this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()),n=this.nodeSelectionObj.getParentNodeCollection(t),i=t.startContainer.textContent.substr(0,t.endOffset),o=i.split(" "),r=o[o.length-1],s=t.startOffset-(i.length-o[o.length-1].length);r=r.slice(0,s);var a=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if("A"!==n[0].nodeName&&r.match(a)){var l=this.nodeSelectionObj.save(t,this.parent.contentModule.getDocument()),d={url:r.indexOf("http")>-1?r:"http://"+r,selection:l,selectParent:this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(t),text:r,title:"",target:"_blank"};this.parent.formatter.process(this.parent,{item:{command:"Links",subCommand:"CreateLink"}},e,d)}},n.prototype.onToolbarClick=function(e){var n,i,o,r=e.item,s=t.closest(e.originalEvent.target,".e-rte-quick-popup");if(s&&!s.classList.contains("e-rte-inline-popup")){if("SourceCode"!==r.subCommand&&"Preview"!==r.subCommand&&"FontColor"!==r.subCommand&&"BackgroundColor"!==r.subCommand){I()&&"Images"===r.command&&this.nodeSelectionObj.restore();d=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());n=this.nodeSelectionObj.save(d,this.parent.contentModule.getDocument()),i=this.nodeSelectionObj.getNodeCollection(d),o=this.nodeSelectionObj.getParentNodeCollection(d)}"Images"===r.command&&this.parent.notify("image-toolbar-action",{member:"image",args:e,selectNode:i,selection:n,selectParent:o}),"Links"===r.command&&this.parent.notify("link-toolbar-action",{member:"link",args:e,selectNode:i,selection:n,selectParent:o}),"Table"===r.command&&this.parent.notify("table-toolbar-action",{member:"table",args:e,selectNode:i,selection:n,selectParent:o})}else{var a=document.getElementById(this.parent.getID()+"_rtelink"),l=document.getElementById(this.parent.getID()+"_image");if("SourceCode"!==r.subCommand&&"Preview"!==r.subCommand&&"FontColor"!==r.subCommand&&"BackgroundColor"!==r.subCommand){var d=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());t.isNullOrUndefined(a)&&t.isNullOrUndefined(l)&&(n=this.nodeSelectionObj.save(d,this.parent.contentModule.getDocument())),i=this.nodeSelectionObj.getNodeCollection(d),o=this.nodeSelectionObj.getParentNodeCollection(d)}switch(r.subCommand){case"Maximize":this.parent.notify("enableFullScreen",{args:e});break;case"Minimize":this.parent.notify("disableFullScreen",{args:e});break;case"CreateLink":this.parent.notify("insertLink",{member:"link",args:e,selectNode:i,selection:n,selectParent:o});break;case"RemoveLink":this.parent.notify("unLink",{member:"link",args:e,selectNode:i,selection:n,selectParent:o});break;case"Print":this.parent.print();break;case"Image":this.parent.notify("insertImage",{member:"image",args:e,selectNode:i,selection:n,selectParent:o});break;case"CreateTable":this.parent.notify("createTable",{member:"table",args:e,selection:n});break;case"SourceCode":this.parent.notify("sourceCode",{member:"viewSource",args:e});break;case"Preview":this.parent.notify("updateSource",{member:"updateSource",args:e});break;case"FontColor":case"BackgroundColor":break;case"File":this.parent.notify("renderFileManager",{member:"fileManager",args:e,selectNode:i,selection:n,selectParent:o});break;default:this.parent.formatter.process(this.parent,e,e.originalEvent,null)}}},n.prototype.renderColorPicker=function(e){this.colorPickerModule.renderColorPickerInput(e)},n.prototype.instantiateRenderer=function(){this.parent.iframeSettings.enable?this.renderFactory.addRenderer(e.RenderType.Content,new dn(this.parent,this.locator)):this.renderFactory.addRenderer(e.RenderType.Content,new an(this.parent,this.locator))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(z,this.render),this.parent.off(_,this.onPropertyChanged),this.parent.off("html-toolbar-click",this.onToolbarClick),this.parent.off("render-color-picker",this.renderColorPicker),this.parent.off(F,this.destroy),this.parent.off(Q,this.onKeyDown),this.parent.off("initial-load",this.instantiateRenderer),this.parent.off("selectAll",this.selectAll),this.parent.off("selectRange",this.selectRange),this.parent.off("getSelectedHtml",this.getSelectedHtml),this.parent.off(V,this.onSelectionSave),this.parent.off("selection-restore",this.onSelectionRestore),this.parent.off("readOnlyMode",this.updateReadOnly),this.parent.off(G,this.onPaste))},n.prototype.render=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};if(t.isNullOrUndefined(this.parent.formatter)){var o=new nn({currentDocument:this.contentRenderer.getDocument(),element:n,options:i});this.parent.setProperties({formatter:o},!0)}else this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i);this.parent.enableXhtml&&this.parent.notify("xhtmlValidation",{}),this.parent.toolbarSettings.enable&&(this.toolbarUpdate=new sn(this.parent)),this.parent.notify("bind-on-end",{})},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.formatter)){var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i)}},n.prototype.getModuleName=function(){return"htmlEditor"},n.prototype.selectAll=function(){var e=E(this.parent.contentModule.getDocument(),this.parent.contentModule.getEditPanel());e.length>0&&this.parent.formatter.editorManager.nodeSelection.setSelectionText(this.parent.contentModule.getDocument(),e[0],e[e.length-1],0,e[e.length-1].textContent.length)},n.prototype.selectRange=function(e){this.parent.formatter.editorManager.nodeSelection.setRange(this.parent.contentModule.getDocument(),e.range)},n.prototype.getSelectedHtml=function(e){e.callBack(this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()).toString())},n}(),hn=function(){function n(e,t){this.inlineNode=["a","abbr","acronym","audio","b","bdi","bdo","big","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","font","i","iframe","img","input","ins","kbd","label","map","mark","meter","noscript","object","output","picture","progress","q","ruby","s","samp","script","select","slot","small","span","strong","sub","sup","svg","template","textarea","time","u","tt","var","video","wbr"],this.blockNode=["div","h1","h2","h3","h4","h5","h6","address","blockquote","button","center","dd","dir","dl","dt","fieldset","frameset","hr","iframe","isindex","li","map","menu","noframes","noscript","object","ol","pre","td","tr","th","tbody","tfoot","thead","table","ul","header","article","nav","footer","section","aside","main","figure","figcaption"],this.isNotFromHtml=!1,this.containsHtml=!1,this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.i10n=t.getService("rteLocale"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.addEventListener()}return n.prototype.addEventListener=function(){this.nodeSelectionObj=new Dt,this.parent.isDestroyed||(this.parent.on("pasteClean",this.pasteClean,this),this.parent.on(F,this.destroy,this))},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("pasteClean",this.pasteClean),this.parent.off(F,this.destroy))},n.prototype.pasteClean=function(n){var i,o=this,r={requestType:"Paste",editorMode:this.parent.editorMode,event:n},s=null;if(n.args&&!t.isNullOrUndefined(n.args.clipboardData)&&(s=n.args.clipboardData.getData("text/html")),this.parent.trigger("beforePasteCleanup",{value:s}),n.args&&null!==s&&"HTML"===this.parent.editorMode){if(0===s.length){var a=new RegExp(/<\/[a-z][\s\S]*>/i);s=n.args.clipboardData.getData("text/plain"),this.isNotFromHtml=""!==s,s=s.replace(/</g,"&lt;"),s=s.replace(/>/g,"&gt;"),this.containsHtml=a.test(s);var l=n&&n.args.clipboardData&&n.args.clipboardData.items.length>0?n.args.clipboardData.items[0].getAsFile():null;if(this.parent.notify(G,{file:l,args:n.args,text:s,callBack:function(e){"object"==typeof(i=e)?o.parent.formatter.editorManager.execCommand("Images","Image",n.args,o.imageFormatting.bind(o,r),"pasteCleanup",i,"pasteCleanupModule"):s=i}}),!a.test(s)){var d=this.parent.createElement("div");d.innerHTML=this.splitBreakLine(s),s=d.innerHTML}}else s.length>0&&this.parent.formatter.editorManager.observer.notify("ms_word_cleanup",{args:n.args,text:n.text,allowedStylePropertiesArray:this.parent.pasteCleanupSettings.allowedStyleProps,callBack:function(e){s=e}});this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var c=this.contentRenderer.getDocument(),p=this.nodeSelectionObj.getRange(c);if(this.saveSelection=this.nodeSelectionObj.save(p,c),this.parent.pasteCleanupSettings.prompt){n.args.preventDefault();var h=this.parent.createElement("div");h.innerHTML=s,""===h.textContent&&t.isNullOrUndefined(h.querySelector("img"))&&t.isNullOrUndefined(h.querySelector("table"))||this.pasteDialog(s,r)}else this.parent.pasteCleanupSettings.plainText?(n.args.preventDefault(),this.plainFormatting(s,r)):this.parent.pasteCleanupSettings.keepFormat?(n.args.preventDefault(),this.formatting(s,!1,r)):(n.args.preventDefault(),this.formatting(s,!0,r))}},n.prototype.splitBreakLine=function(e){for(var t=e.split("\n"),n="",i=0;i<t.length;i++)""===t[i].trim()?n+="<p><br></p>":n+="<p>"+this.makeSpace(t[i]).trim()+"</p>";return n},n.prototype.makeSpace=function(e){for(var t="",n=!0,i=e.split(" "),o=0;o<i.length;o++)""===i[o].trim()?t+=n?"&nbsp;":" ":(n=!1,t+=i[o]+" ");return t},n.prototype.imgUploading=function(e){var n=e.querySelectorAll(".pasteContent_Img");if(this.parent.insertImageSettings.saveUrl&&n.length>0){for(var i=[],o=[],r=[],s=0;s<n.length;s++)n[s].getAttribute("src").split(",")[0].indexOf("base64")>=0&&(i.push(n[s].getAttribute("src")),o.push(t.getUniqueID("rte_image")),r.push(n[s]));for(var a=[],s=0;s<i.length;s++)a.push(this.base64ToFile(i[s],o[s]));for(s=0;s<a.length;s++)this.uploadMethod(a[s],r[s]);t.isNullOrUndefined(this.parent.insertImageSettings.path)&&"Blob"===this.parent.insertImageSettings.saveFormat&&this.getBlob(n)}else"Blob"===this.parent.insertImageSettings.saveFormat&&this.getBlob(n);for(var l=e.querySelectorAll(".pasteContent_Img"),s=0;s<l.length;s++)l[s].classList.remove("pasteContent_Img"),""===l[s].getAttribute("class").trim()&&n[s].removeAttribute("class")},n.prototype.getBlob=function(e){for(var n=0;n<e.length;n++)if(!t.isNullOrUndefined(e[n].getAttribute("src"))&&e[n].getAttribute("src").split(",")[0].indexOf("base64")>=0){var i=URL.createObjectURL(D(e[n].getAttribute("src")));e[n].setAttribute("src",i)}},n.prototype.uploadMethod=function(e,n){var i=this,s=document.createElement("div");document.body.appendChild(s),s.setAttribute("display","none"),n.style.opacity="0.5";var a=this.parent.createElement("div");this.parent.element.appendChild(a);var l=this.parent.createElement("input",{id:this.parent.element.id+"_upload",attrs:{type:"File",name:"UploadFiles"}}),d=this.parent.iframeSettings.enable?-50:-90,c=new o.Popup(a,{relateTo:n,height:"85px",width:"300px",offsetY:d,content:l,viewPortElement:this.parent.element,position:{X:"center",Y:"top"},enableRtl:this.parent.enableRtl,zIndex:10001,close:function(e){i.parent.isBlur=!1,c.destroy(),t.detach(c.element)}});c.element.style.display="none",t.addClass([c.element],["e-popup-open","e-rte-upload-popup"]);var p=e.size>1e6?300:100;setTimeout(function(){i.refreshPopup(n,c)},p);var h,u,m=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl,removeUrl:this.parent.insertImageSettings.removeUrl},cssClass:"e-rte-dialog-upload",dropArea:this.parent.inputElement,allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),success:function(e){setTimeout(function(){i.popupClose(c,m,n,e)},900)},uploading:function(e){i.parent.isServerRendered||(i.parent.trigger("imageUploading",e),i.parent.inputElement.contentEditable="false")},beforeUpload:function(e){i.parent.isServerRendered?((u=JSON.parse(JSON.stringify(e))).filesData=h,e.cancel=!0,i.parent.trigger("imageUploading",u,function(e){e.cancel||(m.currentRequestHeader=e.currentRequest?e.currentRequest:m.currentRequestHeader,m.customFormDatas=e.customFormData&&e.customFormData.length>0?e.customFormData:m.customFormDatas,m.uploadFiles(h,null))})):i.parent.trigger("beforeImageUpload",e)},failure:function(e){setTimeout(function(){i.uploadFailure(n,m,c,e)},900)},canceling:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),c.close()},selected:function(e){e.cancel=!0,i.parent.isServerRendered&&(h=e.filesData)},removing:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),c.close()}});m.appendTo(c.element.childNodes[0]);var g=[{name:e.name,rawFile:e,size:e.size,type:e.type,validationMessages:{minSize:"",maxSize:""},statusCode:"1"}];m.createFileList(g),m.filesData.push(g[0]),h=g,m.upload(g),c.element.getElementsByClassName("e-file-select-wrap")[0].style.display="none",t.detach(c.element.querySelector(".e-rte-dialog-upload .e-file-select-wrap"))},n.prototype.uploadFailure=function(e,n,i,o){this.parent.inputElement.contentEditable="true",t.detach(e),i&&i.close(),this.parent.trigger("imageUploadFailed",o),n.destroy()},n.prototype.popupClose=function(e,n,i,o){var r=this;this.parent.inputElement.contentEditable="true",o.element=i,this.parent.trigger("imageUploadSuccess",o,function(e){if(!t.isNullOrUndefined(r.parent.insertImageSettings.path)){var n=r.parent.insertImageSettings.path+e.file.name;i.src=n,i.setAttribute("alt",e.file.name)}}),e.close(),i.style.opacity="1",n.destroy()},n.prototype.refreshPopup=function(e,t){(this.parent.iframeSettings.enable?this.parent.element.offsetTop+e.offsetTop:e.offsetTop)>this.parent.element.offsetTop+this.parent.element.offsetHeight?(t.relateTo=this.parent.inputElement,t.offsetY=this.parent.iframeSettings.enable?-30:-65,t.element.style.display="block"):t&&(t.refreshPosition(e),t.element.style.display="block")},n.prototype.base64ToFile=function(e,n){for(var i=e.split(","),o=i[0].match(/:(.*?);/)[1].split("/")[1],r=atob(i[1]),s=r.length,a=new Uint8Array(s);s--;)a[s]=r.charCodeAt(s);if(t.Browser.isIE||navigator.appVersion.indexOf("Edge")>-1){var l=new Blob([a],{type:o});return t.extend(l,{name:n+"."+(t.isNullOrUndefined(o)?"":o)}),l}return new File([a],n+"."+(t.isNullOrUndefined(o)?"":o),{type:o})},n.prototype.imageFormatting=function(t,n){var i=this.parent.createElement("span");i.appendChild(n.elements[0]);var o=i.innerHTML;this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var r=this.contentRenderer.getDocument(),s=this.nodeSelectionObj.getRange(r);this.saveSelection=this.nodeSelectionObj.save(s,r),this.parent.pasteCleanupSettings.prompt?this.pasteDialog(o,t):this.parent.pasteCleanupSettings.plainText?this.plainFormatting(o,t):this.parent.pasteCleanupSettings.keepFormat?this.formatting(o,!1,t):this.formatting(o,!0,t)},n.prototype.radioRender=function(){var e=new s.RadioButton({label:this.i10n.getConstant("keepFormat"),name:"pasteOption",checked:!0});e.isStringTemplate=!0;var t=this.parent.element.querySelector("#keepFormating");e.appendTo(t);var n=new s.RadioButton({label:this.i10n.getConstant("cleanFormat"),name:"pasteOption"});n.isStringTemplate=!0;var i=this.parent.element.querySelector("#cleanFormat");n.appendTo(i);var o=new s.RadioButton({label:this.i10n.getConstant("plainText"),name:"pasteOption"});o.isStringTemplate=!0;var r=this.parent.element.querySelector("#plainTextFormat");o.appendTo(r)},n.prototype.selectFormatting=function(e,t,n,i){n?this.formatting(e,!1,t):i?this.formatting(e,!0,t):this.plainFormatting(e,t)},n.prototype.pasteDialog=function(e,n){var i=this,o=!1,r=this.parent.height,s={buttons:[{click:function(){if(!a.isDestroyed){var s=i.parent.element.querySelector("#keepFormating").checked,l=i.parent.element.querySelector("#cleanFormat").checked;a.hide(),i.parent.height=o?r:i.parent.height,o=!1;var d=t.isBlazor()?null:a;i.dialogRenderObj.close(d),a.destroy(),i.selectFormatting(e,n,s,l)}},buttonModel:{isPrimary:!0,cssClass:"e-flat e-rte-pasteok",content:this.i10n.getConstant("pasteDialogOk")}},{click:function(){if(!a.isDestroyed){a.hide(),i.parent.height=o?r:i.parent.height,o=!1;var e=t.isBlazor()?null:a;i.dialogRenderObj.close(e),a.destroy()}},buttonModel:{cssClass:"e-flat e-rte-pastecancel",content:this.i10n.getConstant("pasteDialogCancel")}}],header:this.i10n.getConstant("pasteFormat"),content:this.i10n.getConstant("pasteFormatContent")+'<br/><div><div style="padding-top:24px;"><input type="radio" class="e-rte-keepformat" id="keepFormating"/></div><div style="padding-top:20px;"><input type="radio" class="e-rte-removeformat" id="cleanFormat"/></div><div style="padding-top:20px;"><input type="radio" class="e-rte-plainformat" id="plainTextFormat"/></div></div>',target:this.parent.element,width:"300px",height:"265px",cssClass:"e-rte-dialog-minheight",isModal:!0,visible:!1},a=this.dialogRenderObj.render(s),l=this.parent.element.querySelector("#"+this.parent.getID()+"_pasteCleanupDialog");null!==l&&""!==l.innerHTML&&this.destroyDialog(l),null===l&&(l=this.parent.createElement("div",{id:this.parent.getID()+"_pasteCleanupDialog"}),this.parent.element.appendChild(l)),a.appendTo(l),this.radioRender(),this.parent.element.offsetHeight<parseInt(a.height.split("px")[0],null)&&(this.parent.height=parseInt(a.height.split("px")[0],null)+40,o=!0),a.show()},n.prototype.destroyDialog=function(e){var n=this.parent.element.querySelector(".e-dlg-container");t.detach(n);for(var i=e.children.length,o=0;o<i;o++)t.detach(e.children[0])},n.prototype.formatting=function(e,n,i){var o=this,r=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});this.isNotFromHtml&&this.containsHtml&&(e=this.splitBreakLine(e)),r.innerHTML=e,null!==this.parent.pasteCleanupSettings.deniedTags&&(r=this.deniedTags(r)),n?r=this.deniedAttributes(r,n):null!==this.parent.pasteCleanupSettings.deniedAttrs&&(r=this.deniedAttributes(r,n)),null!==this.parent.pasteCleanupSettings.allowedStyleProps&&(r=this.allowedStyle(r)),this.saveSelection.restore(),r.innerHTML=this.sanitizeHelper(r.innerHTML);for(var s=r.querySelectorAll("img"),a=0;a<s.length;a++)s[a].classList.add("pasteContent_Img");this.addTempClass(r),this.parent.trigger("afterPasteCleanup",{value:r.innerHTML},function(e){r.innerHTML=e.value}),""===r.textContent&&t.isNullOrUndefined(r.querySelector("img"))&&t.isNullOrUndefined(r.querySelector("table"))||(this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",i,function(e){t.extend(i,{elements:e.elements,imageElements:e.imgElem},!0),o.parent.formatter.onSuccess(o.parent,i)},r),this.removeTempClass(),this.parent.notify("toolbar-refresh",{}),this.imgUploading(this.parent.inputElement),this.parent.iframeSettings.enable&&this.parent.updateValue())},n.prototype.addTempClass=function(e){for(var t=e.children,n=0;n<t.length;n++)t[n].classList.add("pasteContent_RTE")},n.prototype.removeTempClass=function(){for(var e=this.parent.inputElement.querySelectorAll(".pasteContent_RTE"),t=0;t<e.length;t++)e[t].classList.remove("pasteContent_RTE"),""===e[t].getAttribute("class")&&e[t].removeAttribute("class")},n.prototype.sanitizeHelper=function(e){return e=O(e,this.parent)},n.prototype.plainFormatting=function(e,n){var i=this,o=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});if(o.innerHTML=e,this.detachInlineElements(o),this.getTextContent(o),""!==o.textContent.trim()){if(!t.isNullOrUndefined(o.firstElementChild)&&"BR"!==o.firstElementChild.tagName){var r=o.firstElementChild;if(!t.isNullOrUndefined(o.firstElementChild)){for(var s=this.parent.createElement("span"),a=0,l=0;a<r.childNodes.length;a++,l++)if("#text"===r.childNodes[a].nodeName)s.appendChild(r.childNodes[a]),o.insertBefore(s,o.firstElementChild),a--;else{if("#text"===r.childNodes[a].nodeName||0!==l)break;for(var d=0;d<r.childNodes[a].childNodes.length;d++)s.appendChild(r.childNodes[a].childNodes[d]),o.insertBefore(s,o.firstElementChild),d--;a--}r.hasChildNodes()||t.detach(r)}}this.removeEmptyElements(o),this.saveSelection.restore(),o.innerHTML=this.sanitizeHelper(o.innerHTML),this.addTempClass(o),this.parent.trigger("afterPasteCleanup",{value:o.innerHTML},function(e){o.innerHTML=e.value}),this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",n,function(e){t.extend(n,{elements:e.elements,imageElements:e.imgElem},!0),i.parent.formatter.onSuccess(i.parent,n)},o),this.removeTempClass()}else this.saveSelection.restore(),t.extend(n,{elements:[]},!0),this.parent.formatter.onSuccess(this.parent,n)},n.prototype.getTextContent=function(e){for(c=0;c<this.blockNode.length;c++)for(var n=e.querySelectorAll(this.blockNode[c]),i=0;i<n.length;i++){for(var o=void 0,r=0,s=0,a=void 0;r<n[i].childNodes.length;r++,s++)if("DIV"===n[i].childNodes[r].nodeName||"P"===n[i].childNodes[r].nodeName||"#text"===n[i].childNodes[r].nodeName&&"&nbsp;"!==n[i].childNodes[r].nodeValue.replace(/\u00a0/g,"&nbsp;")&&""===n[i].childNodes[r].textContent.trim())o=n[i].childNodes[r].parentElement,n[i].childNodes[r].parentElement.parentElement.insertBefore(n[i].childNodes[r],n[i].childNodes[r].parentElement),r--;else{if(o=n[i].childNodes[r].parentElement,"text"===a)o.previousElementSibling.appendChild(n[i].childNodes[r]);else{var l=this.parent.createElement("div",{id:"newDiv"});l.appendChild(n[i].childNodes[r]),o.parentElement.insertBefore(l,o)}r--,a="text"}t.isNullOrUndefined(o)||t.detach(o)}for(var d=e.querySelectorAll("*"),c=0;c<d.length;c++)for(var p=d[c].attributes,i=0;i<p.length;i++)d[c].removeAttribute(p[i].name),i--},n.prototype.detachInlineElements=function(e){for(var n=0;n<this.inlineNode.length;n++)for(var i=e.querySelectorAll(this.inlineNode[n]),o=0;o<i.length;o++){for(var r=void 0,s=0;s<i[o].childNodes.length;s++)r=i[o].childNodes[s].parentElement,i[o].childNodes[s].parentElement.parentElement.insertBefore(i[o].childNodes[s],i[o].childNodes[s].parentElement),s--;t.isNullOrUndefined(r)||t.detach(r)}},n.prototype.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:""===e.parentElement.textContent.trim()&&"pasteContent"!==e.parentElement.getAttribute("class")?this.findDetachEmptyElem(e.parentElement):e},n.prototype.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++)if("BR"!==n[i].tagName){var o=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(o)||t.detach(o)}},n.prototype.tagGrouping=function(e){for(var t=e.slice(),n=Object.keys(ht),i=n.map(function(e){return ht[e]}),o=[],r=0;r<t.length;r++)if(t[r].split("[").length>1&&(t[r]=t[r].split("[")[0].trim()),n.indexOf(t[r])>-1)for(var s=0;s<i[n.indexOf(t[r])].length;s++)t.indexOf(i[n.indexOf(t[r])][s])<0&&o.indexOf(i[n.indexOf(t[r])][s])<0&&o.push(i[n.indexOf(t[r])][s]);return e=e.concat(o)},n.prototype.attributesfilter=function(e){for(var t=0;t<e.length;t++)if(e[t].split("[").length>1){for(var n=e[t].split("[")[1].split("]")[0].split(","),i=[],o=[],r=0;r<n.length;r++)n[r].indexOf("!")<0?i.push(n[r].trim()):o.push(n[r].split("!")[1].trim());var s=i.length>1?i.join("]["):i.join(),a=o.length>1?o.join("]["):o.join();if(a.length>0){var l=""!==s?e[t].split("[")[0]+"["+s+"]":e[t].split("[")[0];e[t]=l+":not(["+a+"])"}else e[t]=e[t].split("[")[0]+"["+s+"]"}return e},n.prototype.deniedTags=function(e){var n=t.isNullOrUndefined(this.parent.pasteCleanupSettings.deniedTags)?[]:this.parent.pasteCleanupSettings.deniedTags.slice();n=this.attributesfilter(n),n=this.tagGrouping(n);for(var i=0;i<n.length;i++)for(var o=e.querySelectorAll(n[i]),r=o.length-1;r>=0;r--){for(var s=o[r].parentNode;o[r].firstChild;)s.insertBefore(o[r].firstChild,o[r]);s.removeChild(o[r])}return e},n.prototype.deniedAttributes=function(e,n){var i=t.isNullOrUndefined(this.parent.pasteCleanupSettings.deniedAttrs)?[]:this.parent.pasteCleanupSettings.deniedAttrs.slice();n&&i.push("style");for(var o=0;o<i.length;o++)for(var r=e.querySelectorAll("["+i[o]+"]"),s=0;s<r.length;s++)r[s].removeAttribute(i[o]);return e},n.prototype.allowedStyle=function(e){var n=t.isNullOrUndefined(this.parent.pasteCleanupSettings.allowedStyleProps)?[]:this.parent.pasteCleanupSettings.allowedStyleProps.slice();n.push("list-style-type","list-style");for(var i=e.querySelectorAll("[style]"),o=0;o<i.length;o++){for(var r="",s=[],a=i[o].getAttribute("style").split(";"),l=0;l<a.length;l++)n.indexOf(a[l].split(":")[0].trim())>=0&&s.push(a[l]);i[o].removeAttribute("style"),(r=""===s.join(";").trim()?s.join(";"):s.join(";")+";")&&i[o].setAttribute("style",r)}return e},n.prototype.getModuleName=function(){return"pasteCleanup"},n}(),un=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(z,this.renderResizable,this),this.parent.on(F,this.destroy,this))},e.prototype.renderResizable=function(){this.resizer=this.parent.createElement("div",{id:this.parent.getID()+"-resizable",className:"e-icons e-resize-handle e-south-east"}),this.parent.element.classList.add("e-rte-resize"),this.parent.element.appendChild(this.resizer),this.touchStartEvent="msie"===t.Browser.info.name?"pointerdown":"touchstart",t.EventHandler.add(this.resizer,"mousedown",this.resizeStart,this),t.EventHandler.add(this.resizer,this.touchStartEvent,this.resizeStart,this)},e.prototype.resizeStart=function(e){var n=this;e.cancelable&&e.preventDefault(),this.wireResizeEvents(),this.parent.notify("resizeInitialized",{});var i=t.isBlazor()?{requestType:"editor"}:{event:e,requestType:"editor"};this.parent.trigger("resizeStart",i,function(e){e.cancel&&n.unwireResizeEvents()})},e.prototype.performResize=function(e){var n=this,i=t.isBlazor()?{requestType:"editor"}:{event:e,requestType:"editor"};this.parent.trigger("resizing",i,function(e){e.cancel&&n.unwireResizeEvents()});var o=this.parent.element.getBoundingClientRect();if(this.isMouseEvent(e))this.parent.element.style.height=e.clientY-o.top+"px",this.parent.element.style.width=e.clientX-o.left+"px";else{var r="msie"!==t.Browser.info.name?e.touches[0]:e;this.parent.element.style.height=r.clientY-o.top+"px",this.parent.element.style.width=r.clientX-o.left+"px"}this.parent.toolbarSettings.enable||this.parent.setContentHeight("",!1),this.parent.refreshUI()},e.prototype.stopResize=function(e){this.parent.refreshUI(),this.unwireResizeEvents();var n=t.isBlazor()?{requestType:"editor"}:{event:e,requestType:"editor"};this.parent.trigger("resizeStop",n)},e.prototype.getEventType=function(e){return e.indexOf("mouse")>-1?"mouse":"touch"},e.prototype.isMouseEvent=function(e){var n=!1;return("mouse"===this.getEventType(e.type)||!t.isNullOrUndefined(e.pointerType)&&"mouse"===this.getEventType(e.pointerType))&&(n=!0),n},e.prototype.wireResizeEvents=function(){t.EventHandler.add(document,"mousemove",this.performResize,this),t.EventHandler.add(document,"mouseup",this.stopResize,this),this.touchMoveEvent="msie"===t.Browser.info.name?"pointermove":"touchmove",this.touchEndEvent="msie"===t.Browser.info.name?"pointerup":"touchend",t.EventHandler.add(document,this.touchMoveEvent,this.performResize,this),t.EventHandler.add(document,this.touchEndEvent,this.stopResize,this)},e.prototype.unwireResizeEvents=function(){t.EventHandler.remove(document,"mousemove",this.performResize),t.EventHandler.remove(document,"mouseup",this.stopResize),t.EventHandler.remove(document,this.touchMoveEvent,this.performResize),t.EventHandler.remove(document,this.touchEndEvent,this.stopResize)},e.prototype.destroy=function(){this.removeEventListener()},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(z,this.renderResizable),this.parent.element.classList.remove("e-rte-resize"),t.EventHandler.remove(this.resizer,"mousedown",this.resizeStart),t.EventHandler.remove(this.resizer,this.touchStartEvent,this.resizeStart),this.resizer&&t.detach(this.resizer),this.parent.off(F,this.destroy))},e.prototype.getModuleName=function(){return"resize"},e}(),mn=function(){function n(e,t){a.FileManager.Inject(a.ContextMenu,a.DetailsView,a.NavigationPane,a.Toolbar),this.parent=e,this.i10n=t.getService("rteLocale"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.rendererFactory=t.getService("rendererFactory"),this.addEventListener()}return n.prototype.initialize=function(){this.parent.fileManagerModule=this,this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content)},n.prototype.render=function(e){var n,i=this;n=e.selectNode&&"IMG"===e.selectNode[0].nodeName?this.parent.localeObj.getConstant("dialogUpdate"):this.i10n.getConstant("dialogInsert");var o=this.parent.localeObj.getConstant("fileDialogHeader"),r=this.i10n.getConstant("dialogCancel");this.dlgButtons=[{click:this.insertImageUrl.bind(this),buttonModel:{content:n,cssClass:"e-flat e-insertImage",isPrimary:!0}},{click:function(e){i.cancelDialog()},buttonModel:{cssClass:"e-flat e-cancel",content:r}}],this.dlgButtons[0].buttonModel.disabled=!0,this.selectObj={selection:e.selection,args:e.args,selectParent:e.selectParent};var s=this.parent.createElement("div",{className:"e-rte-file-manager-dialog",id:this.parent.getID()+"_file-manager-dialog",attrs:{"aria-owns":this.parent.getID()}});document.body.appendChild(s),this.fileWrap=this.parent.createElement("div",{id:this.parent.getID()+"_rte-file-manager",className:"e-img-file-wrap"}),s.appendChild(this.fileWrap),s.appendChild(this.getInputUrlElement());var a={visible:!1,isModal:!0,header:o,target:document.body,locale:this.parent.locale,enableRtl:this.parent.enableRtl,cssClass:"e-rte-elements",animationSettings:{effect:"None"},showCloseIcon:!0,closeOnEscape:!0,width:"720px",height:"auto",position:{X:"center",Y:"center"},buttons:this.dlgButtons,created:this.renderFileManager.bind(this),close:function(e){i.parent.isBlur=!1,e&&e.event.returnValue&&i.selectObj.selection.restore(),i.destroyComponents(),i.dialogRenderObj.close(e)}};this.dialogObj=this.dialogRenderObj.render(a),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(s),this.dialogObj.show(!!t.Browser.isDevice)},n.prototype.renderFileManager=function(){var e=this,n=this;this.fileObj=new a.FileManager({allowMultiSelection:!1,locale:this.parent.locale,enableRtl:this.parent.enableRtl,path:this.parent.fileManagerSettings.path,view:this.parent.fileManagerSettings.view,enablePersistence:this.parent.enablePersistence,cssClass:this.parent.fileManagerSettings.cssClass,sortOrder:this.parent.fileManagerSettings.sortOrder,ajaxSettings:this.parent.fileManagerSettings.ajaxSettings,showThumbnail:this.parent.fileManagerSettings.showThumbnail,rootAliasName:this.parent.fileManagerSettings.rootAliasName,uploadSettings:this.parent.fileManagerSettings.uploadSettings,searchSettings:this.parent.fileManagerSettings.searchSettings,toolbarSettings:this.parent.fileManagerSettings.toolbarSettings,showHiddenItems:this.parent.fileManagerSettings.showHiddenItems,allowDragAndDrop:this.parent.fileManagerSettings.allowDragAndDrop,showFileExtension:this.parent.fileManagerSettings.showFileExtension,detailsViewSettings:this.parent.fileManagerSettings.detailsViewSettings,contextMenuSettings:this.parent.fileManagerSettings.contextMenuSettings,navigationPaneSettings:this.parent.fileManagerSettings.navigationPaneSettings,fileSelect:function(t){var i=t.fileDetails;i.isFile&&n.parent.insertImageSettings.allowedTypes.indexOf(i.type)>-1?(n.inputUrl.value=n.parent.fileManagerSettings.ajaxSettings.getImageUrl+"?path="+(i.filterPath&&i.filterPath.replace(/\\/g,"/"))+i.name,e.dlgButtons[0].buttonModel.disabled=!1):(n.inputUrl.value="",e.dlgButtons[0].buttonModel.disabled=!0),e.dialogObj.buttons=e.dlgButtons},created:function(){e.inputUrl.removeAttribute("disabled")},success:function(){e.fileObj.refreshLayout()}}),t.Browser.isDevice&&(this.fileObj.height="85%"),this.fileObj.appendTo(this.fileWrap),t.EventHandler.add(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick,this)},n.prototype.getInputUrlElement=function(){var e=this.parent.createElement("div",{className:"imgUrl"}),t=this.parent.createElement("div",{className:"e-rte-label"});t.innerHTML='<label for="rteSample_img_url">'+this.i10n.getConstant("linkWebUrl")+"</label>",e.appendChild(t);var n=this.i10n.getConstant("imageUrl");return this.inputUrl=this.parent.createElement("input",{className:"e-input e-img-url",attrs:{placeholder:n,spellcheck:"false",disabled:"true"}}),e.appendChild(this.inputUrl),e},n.prototype.insertImageUrl=function(e){var n=this.inputUrl.value;if(0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),""!==n){if("HTML"===this.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selectObj.selection.range.startContainer.parentNode,"#"+this.contentModule.getPanel().id))){this.contentModule.getEditPanel().focus();var i=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument());this.selectObj.selection=this.parent.formatter.editorManager.nodeSelection.save(i,this.contentModule.getDocument()),this.selectObj.selectParent=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(i)}var o=/[\w-]+.(jpg|png|jpeg|gif)/g,r=t.isNullOrUndefined(n.match(o))||"HTML"!==this.parent.editorMode?"":n.match(o)[0],s={cssClass:"inline"===this.parent.insertImageSettings.display?ie:ne,url:n,selection:this.selectObj.selection,altText:r,selectParent:this.selectObj.selectParent,width:{width:this.parent.insertImageSettings.width,minWidth:this.parent.insertImageSettings.minWidth,maxWidth:this.parent.getInsertImgMaxWidth()},height:{height:this.parent.insertImageSettings.height,minHeight:this.parent.insertImageSettings.minHeight,maxHeight:this.parent.insertImageSettings.maxHeight}};this.parent.formatter.process(this.parent,this.selectObj.args,this.selectObj.args.originalEvent,s),this.dialogObj.hide({returnValue:!1})}},n.prototype.cancelDialog=function(){this.parent.isBlur=!1,this.dialogObj.hide({returnValue:!0})},n.prototype.onDocumentClick=function(e){var n=e.target,i="#document"!==n.nodeName&&!t.isNullOrUndefined(n.previousElementSibling)&&n.previousElementSibling;t.isNullOrUndefined(this.dialogObj)||t.closest(n,"#"+this.parent.getID()+"_file-manager-dialog")||t.closest(n,"#"+this.parent.getID()+"_rte-file-manager_tb_sortby-popup")||t.closest(n,"#"+this.parent.getID()+"_rte-file-manager_tb_view-popup")||t.closest(n,"#"+this.parent.getID()+"_rte-file-manager_contextmenu")||!t.isNullOrUndefined(t.closest(n,".e-contextmenu-wrapper"))&&t.closest(n,".e-contextmenu-wrapper").querySelector("#"+this.parent.getID()+"_rte-file-manager_contextmenu")||t.isNullOrUndefined(i)||i.classList.contains("e-rte-file-manager-dialog")||t.isNullOrUndefined(i)||i.id===this.parent.getID()+"_rte-file-manager_contextmenu"?this.parent.isRTE=!0:(this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,S(this.parent.element,"focusout"))},n.prototype.addEventListener=function(){this.parent.on(z,this.initialize,this),this.parent.on("renderFileManager",this.render,this),this.parent.on(F,this.destroy,this)},n.prototype.removeEventListener=function(){t.EventHandler.remove(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick),this.parent.off(z,this.initialize),this.parent.off("renderFileManager",this.render),this.parent.off(F,this.destroy)},n.prototype.destroyComponents=function(){this.fileObj&&(this.fileObj.destroy(),this.fileObj=null),this.dialogObj&&(this.dialogObj.destroy(),t.detach(this.dialogObj.element),this.dialogObj=null)},n.prototype.destroy=function(){this.parent.isDestroyed||(this.destroyComponents(),this.removeEventListener())},n.prototype.getModuleName=function(){return"fileManager"},n}(),gn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.showFullScreen=function(e){!0!==this.parent.toolbarSettings.enable||"Markdown"===this.parent.editorMode||t.isNullOrUndefined(this.parent.quickToolbarModule)||this.parent.quickToolbarModule.hideQuickToolbars(),this.scrollableParent=o.getScrollableParent(this.parent.element),this.parent.element.classList.contains("e-rte-full-screen")||(this.parent.trigger("actionBegin",{requestType:"Maximize",targetItem:"Maximize",args:e}),this.parent.toolbarSettings.enableFloating&&!this.parent.inlineMode.enable&&this.parent.toolbarSettings.enable&&(this.parent.getToolbarElement().style.width="100%",this.parent.getToolbarElement().style.top="0px"),this.parent.element.classList.add("e-rte-full-screen"),this.toggleParentOverflow(!0),this.parent.setContentHeight(),this.parent.toolbarModule&&(this.parent.getBaseToolbarObject().toolbarObj.items[0].properties||this.parent.getBaseToolbarObject().toolbarObj.removeItems(0),t.Browser.isDevice&&this.parent.toolbarModule.removeFixedTBarClass(),this.parent.toolbarModule.updateItem({targetItem:"Maximize",updateItem:"Minimize",baseToolbar:this.parent.getBaseToolbarObject()})),this.parent.trigger("actionComplete",{requestType:"Maximize",targetItem:"Maximize",args:e}))},e.prototype.hideFullScreen=function(e){if(!0!==this.parent.toolbarSettings.enable||"Markdown"===this.parent.editorMode||t.isNullOrUndefined(this.parent.quickToolbarModule)||this.parent.quickToolbarModule.hideQuickToolbars(),this.parent.element.classList.contains("e-rte-full-screen")){this.parent.element.classList.remove("e-rte-full-screen");for(var n=document.querySelectorAll(".e-rte-overflow"),i=0;i<n.length;i++)t.removeClass([n[i]],["e-rte-overflow"]);this.parent.trigger("actionBegin",{requestType:"Minimize",targetItem:"Minimize",args:e}),this.parent.setContentHeight(),this.parent.toolbarModule&&(this.parent.getBaseToolbarObject().toolbarObj.items[0].properties||this.parent.getBaseToolbarObject().toolbarObj.removeItems(0),this.parent.toolbarModule.updateItem({targetItem:"Minimize",updateItem:"Maximize",baseToolbar:this.parent.getBaseToolbarObject()}),t.Browser.isDevice&&this.parent.inlineMode.enable&&this.parent.toolbarModule.addFixedTBarClass()),this.parent.trigger("actionComplete",{requestType:"Minimize",targetItem:"Minimize",args:e})}},e.prototype.toggleParentOverflow=function(e){if(!t.isNullOrUndefined(this.scrollableParent))for(var n=0;n<this.scrollableParent.length;n++)if("#document"===this.scrollableParent[n].nodeName){i=document.querySelector("body");t.addClass([i],["e-rte-overflow"])}else{var i=this.scrollableParent[n];t.addClass([i],["e-rte-overflow"])}},e.prototype.onKeyDown=function(e){var t=e.args;switch(t.action){case"full-screen":this.showFullScreen(e.args),t.preventDefault();break;case"escape":this.hideFullScreen(e.args),t.preventDefault()}},e.prototype.addEventListener=function(){this.parent.on(Q,this.onKeyDown,this),this.parent.on(F,this.destroy,this)},e.prototype.removeEventListener=function(){this.parent.off(Q,this.onKeyDown),this.parent.off(F,this.destroy)},e.prototype.destroy=function(){this.parent.element.classList.contains("e-rte-full-screen")&&this.toggleParentOverflow(!1);for(var e=document.querySelectorAll(".e-rte-overflow"),n=0;n<e.length;n++)t.removeClass([e[n]],["e-rte-overflow"]);this.removeEventListener()},e}(),fn=function(){function t(e,t){this.parent=e,this.locator=t,this.renderer=this.locator.getService("rendererFactory"),this.addEventListener()}return t.prototype.render=function(){this.parent;this.contentRenderer=this.renderer.getRenderer(e.RenderType.Content),this.contentRenderer.renderPanel()},t.prototype.refresh=function(e){void 0===e&&(e={requestType:"refresh"}),this.parent.notify(e.requestType+"-begin",e)},t.prototype.destroy=function(){this.removeEventListener()},t.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(_,this.refresh,this),this.parent.on(q,this.keyUp,this))},t.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(_,this.refresh),this.parent.off(q,this.keyUp))},t.prototype.keyUp=function(e){if("HTML"===this.parent.editorMode)switch(e.args.which){case 46:case 8:var t=this.parent.contentModule.getEditPanel().childNodes;if(0===t.length||1===t.length&&0===t[0].childNodes.length&&("BR"===t[0].tagName||"P"===t[0].tagName&&""===t[0].textContent)){var n=this.parent.contentModule.getEditPanel();n.innerHTML="<p><br/></p>",this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),n.childNodes[0],0)}}},t}(),bn=function(){function n(e,t){this.parent=e,this.rteID=e.element.id,this.i10n=t.getService("rteLocale"),this.addEventListener(),this.serviceLocator=t,this.rendererFactory=t.getService("rendererFactory"),this.dialogRenderObj=t.getService("dialogRenderObject")}return n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on("insertLink",this.linkDialog,this),this.parent.on(Q,this.onKeyDown,this),this.parent.on("insertCompleted",this.showLinkQuickToolbar,this),this.parent.on("clearDialogObj",this.clearDialogObj,this),this.parent.on("link-toolbar-action",this.onToolbarAction,this),this.parent.on("iframe-click",this.onIframeMouseDown,this),this.parent.on("unLink",this.removeLink,this),this.parent.on("editLink",this.editLink,this),this.parent.on("openLink",this.openLink,this),this.parent.on("editAreaClick",this.editAreaClickHandler,this),this.parent.on(F,this.destroy,this))},n.prototype.onToolbarAction=function(e){switch(e.args.item.subCommand){case"OpenLink":this.parent.notify("openLink",e);break;case"EditLink":this.parent.notify("editLink",e);break;case"RemoveLink":this.parent.notify("unLink",e)}},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("insertLink",this.linkDialog),this.parent.off(Q,this.onKeyDown),this.parent.off("insertCompleted",this.showLinkQuickToolbar),this.parent.off("clearDialogObj",this.clearDialogObj),this.parent.off("link-toolbar-action",this.onToolbarAction),this.parent.off("unLink",this.removeLink),this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off("editLink",this.editLink),this.parent.off("openLink",this.openLink),this.parent.off("editAreaClick",this.editAreaClickHandler),this.parent.off(F,this.destroy))},n.prototype.onIframeMouseDown=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.showLinkQuickToolbar=function(e){if("enter"!==e.args.action&&"space"!==e.args.action){var n=void 0,i=void 0;if("Links"!==e.type||t.isNullOrUndefined(this.parent.quickToolbarModule)||t.isNullOrUndefined(this.parent.quickToolbarModule.linkQTBar))return;this.quickToolObj=this.parent.quickToolbarModule;var o,r=this.parent.element.getBoundingClientRect().top,s=this.parent.element.getBoundingClientRect().left,a=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());if([].forEach.call(e.elements,function(e,t){0===t&&(o="#text"===e.nodeName?e.parentNode:e)}),e.isNotify){var l=this.parent.toolbarModule.getToolbarElement(),d=o.getBoundingClientRect().top,c=o.getBoundingClientRect().left,p=d-r,h=l?l.offsetHeight+this.parent.toolbarModule.getExpandTBarPopHeight():0;n=this.parent.iframeSettings.enable?s+c:o.getBoundingClientRect().left,i=window.pageYOffset+(this.parent.iframeSettings.enable?r+h+d:r+p)}else{var u=void 0;u=e.args.touches?e.args.changedTouches[0]:u=e.args,n=this.parent.iframeSettings.enable?window.pageXOffset+s+u.clientX:u.pageX,i=this.parent.iframeSettings.enable?window.pageYOffset+r+u.clientY:u.pageY}this.quickToolObj.linkQTBar&&this.quickToolObj.linkQTBar.showPopup(n,i,a.endContainer)}},n.prototype.hideLinkQuickToolbar=function(){this.quickToolObj&&this.quickToolObj.linkQTBar&&document.body.contains(this.quickToolObj.linkQTBar.element)&&this.quickToolObj.linkQTBar.hidePopup()},n.prototype.editAreaClickHandler=function(t){if(this.parent.readonly)return void this.hideLinkQuickToolbar();var n=t.args,i=this.parent.quickToolbarSettings.showOnRightClick;if(!(2===n.which||i&&1===n.which||!i&&3===n.which)&&"HTML"===this.parent.editorMode&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.linkQTBar){this.quickToolObj=this.parent.quickToolbarModule;var o=n.target;o=this.getAnchorNode(o),this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var r=this.quickToolObj.linkQTBar.element.classList.contains("e-rte-pop");if("A"===o.nodeName&&o.childNodes.length>0&&"IMG"!==o.childNodes[0].nodeName&&"IMG"!==t.args.target.nodeName){if(r)return;this.showLinkQuickToolbar({args:n,isNotify:!1,type:"Links",elements:[n.target]})}else this.hideLinkQuickToolbar()}},n.prototype.onKeyDown=function(e){var n=e.args;switch(n.action){case"escape":t.isNullOrUndefined(this.dialogObj)||this.dialogObj.close();break;case"insert-link":if("HTML"===this.parent.editorMode){var i=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),o=this.parent.formatter.editorManager.nodeSelection.save(i,this.parent.contentModule.getDocument()),r=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(i),s=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(i),a={args:e.args,selectNode:r,selection:o,selectParent:s};this.linkDialog(a)}else{var l=this.parent.contentModule.getEditPanel();this.parent.formatter.editorManager.markdownSelection.save(l.selectionStart,l.selectionEnd),this.linkDialog({args:{item:{command:"Links",subCommand:"Link"},originalEvent:n},member:"link",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertLink"})}n.preventDefault()}},n.prototype.clearDialogObj=function(){this.dialogObj&&(this.dialogObj.destroy(),t.detach(this.dialogObj.element),this.dialogObj=null)},n.prototype.linkDialog=function(e,n){var i=this;if(this.dialogObj)return void this.dialogObj.hide({returnValue:!0});if("HTML"===this.parent.editorMode&&e.selectParent.length>0&&!t.isNullOrUndefined(e.selectParent[0].classList)&&e.selectParent[0].classList.contains("e-rte-anchor")&&t.isNullOrUndefined(n))return void this.editLink(e);var o=this.i10n.getConstant("linkWebUrl"),r=this.i10n.getConstant("linkText"),a=this.i10n.getConstant("linkTooltipLabel"),l=this.i10n.getConstant("linkurl"),d=this.i10n.getConstant("textPlaceholder"),c=this.i10n.getConstant("linkTitle"),p=this.parent.createElement("div",{className:"e-rte-link-dialog",id:this.rteID+"_rtelink"});this.parent.element.appendChild(p);var h=this.parent.createElement("div",{className:"e-rte-linkcontent",id:this.rteID+"_linkContent"}),u=T('<div class="e-rte-label"><label>'+o+'</label></div><div class="e-rte-field"><input type="text" data-role ="none" spellcheck="false" placeholder="'+l+'" class="e-input e-rte-linkurl"/></div><div class="e-rte-label"><label>'+r+'</label></div><div class="e-rte-field"> <input type="text" data-role ="none" spellcheck="false" class="e-input e-rte-linkText" placeholder="'+d+'"></div><div class="e-rte-label">'+("HTML"===this.parent.editorMode?"<label>"+a+'</label></div><div class="e-rte-field"><input type="text" data-role ="none" spellcheck="false" placeholder = "'+c+'" class="e-input e-rte-linkTitle"></div><div class="e-rte-label"></div><div class="e-rte-field"><input type="checkbox" class="e-rte-linkTarget" data-role ="none"></div>':""));h.appendChild(u);var m=h.querySelector(".e-rte-linkTarget"),g=h.querySelector(".e-rte-linkurl"),f=h.querySelector(".e-rte-linkText"),b=h.querySelector(".e-rte-linkTitle"),v=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:v,checked:!0,enableRtl:this.parent.enableRtl}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(m);var y="HTML"===this.parent.editorMode?e.selection.getRange(this.parent.contentModule.getDocument()).toString():e.text,C=this.i10n.getConstant("dialogInsert"),S=this.i10n.getConstant("dialogCancel"),E=e.selection,N={selfLink:this,selection:e.selection,selectParent:e.selectParent,args:e.args},w={header:this.i10n.getConstant("linkHeader"),content:h,cssClass:"e-rte-elements",enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"310px",height:"inherit",isModal:t.Browser.isDevice,buttons:[{click:this.insertlink.bind(N),buttonModel:{content:C,cssClass:"e-flat e-insertLink",isPrimary:!0}},{click:this.cancelDialog.bind(N),buttonModel:{cssClass:"e-flat",content:S}}],target:t.Browser.isDevice?document.body:this.parent.element,animationSettings:{effect:"None"},close:function(e){i.parent.isBlur=!1,e&&e.event.returnValue&&("HTML"===i.parent.editorMode?E.restore():i.parent.formatter.editorManager.markdownSelection.restore(i.parent.contentModule.getEditPanel())),i.dialogObj.destroy(),t.detach(i.dialogObj.element);var n=t.isBlazor()?null:i.dialogObj;i.dialogRenderObj.close(n),i.dialogObj=null}};this.dialogObj=this.dialogRenderObj.render(w),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(p),p.style.maxHeight="inherit",t.isNullOrUndefined(this.dialogObj)||(t.isNullOrUndefined(n)||(g.value=n.url,f.value=n.text,b.value=n.title,n.target?this.checkBoxObj.checked=!0:this.checkBoxObj.checked=!1,this.dialogObj.header=n.header,this.dialogObj.element.querySelector(".e-insertLink").textContent=n.btnText),this.checkUrl(!1),("HTML"===this.parent.editorMode&&t.isNullOrUndefined(n)&&(!t.isNullOrUndefined(y)&&""!==y&&0===e.selection.range.startOffset||e.selection.range.startOffset!==e.selection.range.endOffset)||"Markdown"===e.module)&&(f.value=y),t.EventHandler.add(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick,this),this.quickToolObj&&(this.hideLinkQuickToolbar(),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup()))},n.prototype.insertlink=function(e){var n,i=this.selfLink.dialogObj.element,o=i.querySelector(".e-rte-linkurl").value,r=i.querySelector(".e-rte-linkText").value;"HTML"===this.selfLink.parent.editorMode&&(n=i.querySelector(".e-rte-linkTitle").value);var s=this.selfLink.checkBoxObj.checked?"_blank":null;if(""===o)return void this.selfLink.checkUrl(!0);this.selfLink.isUrl(o)?this.selfLink.checkUrl(!1):(r=""===r?o:r,o=this.selfLink.parent.enableAutoUrl?o:o.indexOf("http")>-1?o:"http://"+o);var a=this.selfLink;if("HTML"===a.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"[id='"+a.parent.contentModule.getPanel().id+"']"))){a.parent.contentModule.getEditPanel().focus(),t.Browser.isIE&&a.parent.iframeSettings.enable&&this.selection.restore();var l=a.parent.formatter.editorManager.nodeSelection.getRange(a.parent.contentModule.getDocument());this.selection=a.parent.formatter.editorManager.nodeSelection.save(l,a.parent.contentModule.getDocument()),this.selectParent=a.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(l)}var d={url:o,text:r,title:n,target:s,selection:this.selection,selectParent:this.selectParent};document.body.contains(a.dialogObj.element)&&this.selfLink.dialogObj.hide({returnValue:!1}),I()&&a.parent.iframeSettings.enable&&t.select("iframe",a.parent.element).contentWindow.focus(),"HTML"===a.parent.editorMode&&this.selection.restore(),0===a.parent.formatter.getUndoRedoStack().length&&a.parent.formatter.saveData();var c;if("KeyK"===this.args.code){var p=this.args;t.extend(this.args,{item:{command:"Links",subCommand:"CreateLink"},originalEvent:p},!0),c={item:{command:"Links",subCommand:"CreateLink"},originalEvent:p}}else c=this.args;this.selfLink.parent.formatter.process(this.selfLink.parent,c,this.args.originalEvent,d),this.selfLink.parent.contentModule.getEditPanel().focus()},n.prototype.isUrl=function(e){return/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/gi.test(e)},n.prototype.checkUrl=function(e){var n=this.dialogObj.element.querySelector(".e-rte-linkurl");e?(t.addClass([n],"e-error"),n.setSelectionRange(0,n.value.length),n.focus()):t.removeClass([n],"e-error")},n.prototype.removeLink=function(e){0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,selectParent:e.selectParent,selection:e.selection,subCommand:e.args.item.subCommand}),I()&&this.parent.iframeSettings.enable?t.select("iframe",this.parent.element).contentWindow.focus():this.parent.contentModule.getEditPanel().focus(),this.hideLinkQuickToolbar()},n.prototype.openLink=function(e){var t=this.getAnchorNode(e.selectParent[0]);(t.classList.contains("e-rte-anchor")||"A"===t.tagName)&&this.parent.formatter.process(this.parent,e.args,e.args,{url:t.href,target:""===t.target?"_self":"_blank",selectNode:e.selectNode,subCommand:e.args.item.subCommand})},n.prototype.getAnchorNode=function(e){var n=t.closest(e,"a");return n||e},n.prototype.editLink=function(e){var t=this.getAnchorNode(e.selectNode[0]),n=this.getAnchorNode(e.selectParent[0]);if((n="A"===t.nodeName?t:n).classList.contains("e-rte-anchor")||"A"===n.tagName){var i=this.i10n.getConstant("dialogUpdate"),o={url:n.getAttribute("href"),text:n.innerText,title:n.title,target:n.target,header:this.i10n.getConstant("editLink"),btnText:i};this.linkDialog(e,o)}},n.prototype.cancelDialog=function(e){this.selfLink.parent.isBlur=!1,this.selfLink.dialogObj.hide({returnValue:!0}),I()?this.selection.restore():this.selfLink.parent.contentModule.getEditPanel().focus()},n.prototype.onDocumentClick=function(e){var n=e.target;!t.isNullOrUndefined(this.dialogObj)&&(!t.closest(n,"[id='"+this.dialogObj.element.id+"']")&&this.parent.toolbarSettings.enable&&this.parent.getToolbarElement()&&!this.parent.getToolbarElement().contains(e.target)||(this.parent.getToolbarElement()&&this.parent.getToolbarElement().contains(e.target)||this.parent.inlineMode.enable&&!t.closest(n,"#"+this.dialogObj.element.id))&&!t.closest(n,"#"+this.parent.getID()+"_toolbar_CreateLink")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_CreateLink"))&&(this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,S(this.parent.element,"focusout"))},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.getModuleName=function(){return"link"},n}(),vn=function(){function n(e,t){this.isImgUploaded=!1,this.pageX=null,this.pageY=null,this.deletedImg=[],this.parent=e,this.rteID=e.element.id,this.i10n=t.getService("rteLocale"),this.rendererFactory=t.getService("rendererFactory"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.addEventListener()}return n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(Q,this.onKeyDown,this),this.parent.on(q,this.onKeyUp,this),this.parent.on("insertImage",this.insertImage,this),this.parent.on("resize",this.onWindowResize,this),this.parent.on("insertCompleted",this.showImageQuickToolbar,this),this.parent.on("clearDialogObj",this.clearDialogObj,this),this.parent.on("image-toolbar-action",this.onToolbarAction,this),this.parent.on("caption",this.caption,this),this.parent.on("delete",this.deleteImg,this),this.parent.on("insertImgLink",this.insertImgLink,this),this.parent.on("imgAltText",this.insertAltText,this),this.parent.on("editAreaClick",this.editAreaClickHandler,this),this.parent.on("iframe-click",this.onIframeMouseDown,this),this.parent.on("imageSize",this.imageSize,this),this.parent.on("dropDownSelect",this.alignmentSelect,this),this.parent.on(z,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on(G,this.imagePaste,this),this.parent.on(F,this.removeEventListener,this))},n.prototype.removeEventListener=function(){if(!this.parent.isDestroyed){this.parent.off(Q,this.onKeyDown),this.parent.off(q,this.onKeyUp),this.parent.off("resize",this.onWindowResize),this.parent.off("insertImage",this.insertImage),this.parent.off("insertCompleted",this.showImageQuickToolbar),this.parent.off("clearDialogObj",this.clearDialogObj),this.parent.off("caption",this.caption),this.parent.off("image-toolbar-action",this.onToolbarAction),this.parent.off("delete",this.deleteImg),this.parent.off("insertImgLink",this.insertImgLink),this.parent.off("imgAltText",this.insertAltText),this.parent.off("editAreaClick",this.editAreaClickHandler),this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off("imageSize",this.imageSize),this.parent.off("dropDownSelect",this.alignmentSelect),this.parent.off(z,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off(G,this.imagePaste),this.parent.off(F,this.removeEventListener);var e=this.parent.iframeSettings.enable?this.parent.inputElement.ownerDocument:this.parent.inputElement;e.removeEventListener("drop",this.dragDrop.bind(this),!0),e.removeEventListener("dragstart",this.dragStart.bind(this),!0),e.removeEventListener("dragenter",this.dragEnter.bind(this),!0),e.removeEventListener("dragover",this.dragOver.bind(this),!0),t.isNullOrUndefined(this.contentModule)||(t.EventHandler.remove(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.imageClick),this.parent.formatter.editorManager.observer.off(X,this.undoStack),this.parent.insertImageSettings.resize&&(t.EventHandler.remove(this.parent.contentModule.getEditPanel(),t.Browser.touchStartEvent,this.resizeStart),t.EventHandler.remove(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick),t.EventHandler.remove(this.contentModule.getEditPanel(),"cut",this.onCutHandler)))}},n.prototype.onIframeMouseDown=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.afterRender=function(){this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),t.EventHandler.add(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.imageClick,this),this.parent.insertImageSettings.resize&&(t.EventHandler.add(this.parent.contentModule.getEditPanel(),t.Browser.touchStartEvent,this.resizeStart,this),t.EventHandler.add(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick,this),t.EventHandler.add(this.contentModule.getEditPanel(),"cut",this.onCutHandler,this));var n=this.parent.iframeSettings.enable?this.parent.inputElement.ownerDocument:this.parent.inputElement;n.addEventListener("drop",this.dragDrop.bind(this),!0),n.addEventListener("dragstart",this.dragStart.bind(this),!0),n.addEventListener("dragenter",this.dragOver.bind(this),!0),n.addEventListener("dragover",this.dragOver.bind(this),!0)},n.prototype.undoStack=function(e){if("undo"===e.subCommand.toLowerCase()||"redo"===e.subCommand.toLowerCase())for(var n=0;n<this.parent.formatter.getUndoRedoStack().length;n++){var i=this.parent.createElement("div"),o=T(this.parent.formatter.getUndoRedoStack()[n].text);i.appendChild(o);var r=i.querySelectorAll("img");if(i.querySelector(".e-img-resize")&&r.length>0){for(var s=0;s<r.length;s++)r[s].style.outline="";t.detach(i.querySelector(".e-img-resize")),this.parent.formatter.getUndoRedoStack()[n].text=i.innerHTML}}},n.prototype.resizeEnd=function(e){this.resizeBtnInit(),this.imgEle.parentElement.style.cursor="auto",t.Browser.isDevice&&t.removeClass([e.target.parentElement],"e-mob-span");var n=t.isBlazor()?{requestType:"images"}:{event:e,requestType:"images"};this.parent.trigger("resizeStop",n);this.getPointX(e),this.parent.iframeSettings.enable?(window.pageYOffset,this.parent.element.getBoundingClientRect().top,e.clientY):e.pageY;this.parent.formatter.editorManager.observer.on(X,this.undoStack,this),this.parent.formatter.saveData()},n.prototype.resizeStart=function(e,n){var i=this;if(!this.parent.readonly){var o=n||e.target;if(this.prevSelectedImgEle=this.imgEle,"IMG"===o.tagName){this.parent.preventDefaultResize(e);var r=o;this.imgResizeDiv&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&t.detach(this.imgResizeDiv),this.imageResize(r)}if(o.classList.contains("e-rte-imageboxmark")){if(0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),this.pageX=this.getPointX(e),this.pageY=this.getPointY(e),e.preventDefault(),e.stopImmediatePropagation(),this.resizeBtnInit(),this.quickToolObj&&this.quickToolObj.imageQTBar.hidePopup(),o.classList.contains("e-rte-topLeft")&&(this.resizeBtnStat.topLeft=!0),o.classList.contains("e-rte-topRight")&&(this.resizeBtnStat.topRight=!0),o.classList.contains("e-rte-botLeft")&&(this.resizeBtnStat.botLeft=!0),o.classList.contains("e-rte-botRight")&&(this.resizeBtnStat.botRight=!0),t.Browser.isDevice&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&!this.imgResizeDiv.classList.contains("e-mob-span"))t.addClass([this.imgResizeDiv],"e-mob-span");else{var s=t.isBlazor()?{requestType:"images"}:{event:e,requestType:"images"};this.parent.trigger("resizeStart",s,function(e){e.cancel&&i.cancelResizeAction()})}t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd,this)}}},n.prototype.imageClick=function(e){t.Browser.isDevice&&("IMG"===e.target.tagName&&"A"===e.target.parentElement.tagName||"IMG"===e.target.tagName?(this.contentModule.getEditPanel().setAttribute("contenteditable","false"),e.target.focus()):this.parent.readonly||this.contentModule.getEditPanel().setAttribute("contenteditable","true")),"IMG"===e.target.tagName&&"A"===e.target.parentElement.tagName&&e.preventDefault()},n.prototype.onCutHandler=function(){this.imgResizeDiv&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&this.cancelResizeAction()},n.prototype.imageResize=function(e){this.resizeBtnInit(),this.imgEle=e,t.addClass([this.imgEle],"e-resize"),this.imgResizeDiv=this.parent.createElement("span",{className:"e-img-resize",id:this.rteID+"_imgResize"}),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topLeft",styles:"cursor: nwse-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topRight",styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botLeft",styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botRight",styles:"cursor: nwse-resize"})),t.Browser.isDevice&&t.addClass([this.imgResizeDiv],"e-mob-rte"),e.style.outline="2px solid #4a90e2",this.imgResizePos(e,this.imgResizeDiv),this.resizeImgDupPos(e),this.contentModule.getEditPanel().appendChild(this.imgResizeDiv),t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing,this)},n.prototype.getPointX=function(e){return e.touches&&e.touches.length?e.touches[0].pageX:e.pageX},n.prototype.getPointY=function(e){return e.touches&&e.touches.length?e.touches[0].pageY:e.pageY},n.prototype.imgResizePos=function(e,n){var i=this.calcPos(e),o=i.top,r=i.left,s=e.width,a=e.height,l=t.Browser.isDevice?4*parseInt(e.style.outline.slice(-3),10)+2:2*parseInt(e.style.outline.slice(-3),10)+2,d=t.Browser.isDevice?0:2;n.querySelector(".e-rte-botLeft").style.left=r-l+"px",n.querySelector(".e-rte-botLeft").style.top=a-l+o+"px",n.querySelector(".e-rte-botRight").style.left=s-(l-d)+r+"px",n.querySelector(".e-rte-botRight").style.top=a-l+o+"px",n.querySelector(".e-rte-topRight").style.left=s-(l-d)+r+"px",n.querySelector(".e-rte-topRight").style.top=o-l+"px",n.querySelector(".e-rte-topLeft").style.left=r-l+"px",n.querySelector(".e-rte-topLeft").style.top=o-l+"px"},n.prototype.calcPos=function(e){for(var n=["TD","TH","TABLE","A"],i=e.ownerDocument,o=(e.offsetParent&&(e.offsetParent.classList.contains("e-img-caption")||n.indexOf(e.offsetParent.tagName)>-1)?t.closest(e,"#"+this.parent.getID()+"_rte-edit-view"):e.offsetParent)||i.documentElement;o&&(o===i.body||o===i.documentElement)&&"static"===o.style.position;)o=o.parentNode;return o&&o!==e&&1===o.nodeType&&o.getBoundingClientRect(),{top:e.offsetTop,left:e.offsetLeft}},n.prototype.setAspectRatio=function(e,n,i){if(!t.isNullOrUndefined(e.width)){var o=""!==e.style.width?parseInt(e.style.width,10):e.width,r=""!==e.style.height?parseInt(e.style.height,10):e.height;o>r?this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(o/r*i,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width?(e.style.width=o/r*i+"px",e.style.height=i+"px"):(e.setAttribute("width",(o/r*i).toString()),e.setAttribute("height",i.toString())):r>o?this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(n/r*i,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width?(e.style.width=n+"px",e.style.height=r/o*n+"px"):(e.setAttribute("width",n.toString()),e.setAttribute("height",(r/o*n).toString())):this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(n,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width?(e.style.width=n+"px",e.style.height=n+"px"):(e.setAttribute("width",n.toString()),e.setAttribute("height",n.toString()))}},n.prototype.pixToPerc=function(e,t){return e/parseFloat(getComputedStyle(t).width)*100},n.prototype.imgDupMouseMove=function(e,n,i){var o=this,r=t.isBlazor()?{requestType:"images"}:{event:i,requestType:"images"};this.parent.trigger("resizing",r,function(i){if(i.cancel)o.cancelResizeAction();else{if(parseInt(o.parent.insertImageSettings.minWidth,10)>=parseInt(e,10)||parseInt(o.parent.getInsertImgMaxWidth(),10)<=parseInt(e,10)&&t.isNullOrUndefined(o.imgEle.style.width))return;if(!o.parent.insertImageSettings.resizeByPercent&&(parseInt(o.parent.insertImageSettings.minHeight,10)>=parseInt(n,10)||parseInt(o.parent.insertImageSettings.maxHeight,10)<=parseInt(n,10)))return;o.imgEle.parentElement.style.cursor="pointer",o.setAspectRatio(o.imgEle,parseInt(e,10),parseInt(n,10)),o.resizeImgDupPos(o.imgEle),o.imgResizePos(o.imgEle,o.imgResizeDiv),o.parent.setContentHeight("",!1)}})},n.prototype.resizing=function(e){this.imgEle.offsetWidth>=this.parent.getInsertImgMaxWidth()&&(this.imgEle.style.maxHeight=this.imgEle.offsetHeight+"px");var t=this.getPointX(e),n=this.getPointY(e),i=this.resizeBtnStat.botLeft||this.resizeBtnStat.topLeft?-(t-this.pageX):t-this.pageX,o=this.resizeBtnStat.topLeft||this.resizeBtnStat.topRight?-(n-this.pageY):n-this.pageY,r=parseInt(this.imgDupPos.width,10)+i,s=parseInt(this.imgDupPos.height,10)+o;this.pageX=t,this.pageY=n,this.resizeBtnStat.botRight?this.imgDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.botLeft?this.imgDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topRight?this.imgDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topLeft&&this.imgDupMouseMove(r+"px",s+"px",e)},n.prototype.cancelResizeAction=function(){t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),this.imgEle&&this.imgResizeDiv&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&(t.detach(this.imgResizeDiv),this.imgEle.style.outline="",this.imgResizeDiv=null,this.pageX=null,this.pageY=null)},n.prototype.resizeImgDupPos=function(e){this.imgDupPos={width:""!==e.style.height?this.imgEle.style.width:e.width+"px",height:""!==e.style.height?this.imgEle.style.height:e.height+"px"}},n.prototype.resizeBtnInit=function(){return this.resizeBtnStat={botLeft:!1,botRight:!1,topRight:!1,topLeft:!1}},n.prototype.onToolbarAction=function(e){switch(I()&&this.parent.notify("selection-restore",{}),e.args.item.subCommand){case"Replace":this.parent.fileManagerSettings.enable?this.parent.notify("renderFileManager",e):this.parent.notify("insertImage",e);break;case"Caption":this.parent.notify("caption",e);break;case"InsertLink":this.parent.notify("insertImgLink",e);break;case"AltText":this.parent.notify("imgAltText",e);break;case"Remove":this.parent.notify("delete",e);break;case"Dimension":this.parent.notify("imageSize",e);break;case"OpenImageLink":this.openImgLink(e);break;case"EditImageLink":this.editImgLink(e);break;case"RemoveImageLink":this.removeImgLink(e)}},n.prototype.openImgLink=function(e){var t=""===e.selectParent[0].parentNode.target?"_self":"_blank";this.parent.formatter.process(this.parent,e.args,e.args,{url:e.selectParent[0].parentNode.href,target:t,selectNode:e.selectNode,subCommand:e.args.item.subCommand})},n.prototype.editImgLink=function(e){var t=e.selectParent[0].parentNode,n=this.i10n.getConstant("dialogUpdate"),i={url:t.href,target:t.target,header:"Edit Link",btnText:n};this.insertImgLink(e,i)},n.prototype.removeImgLink=function(e){t.Browser.isIE&&this.contentModule.getEditPanel().focus(),e.selection.restore();var n=!(!this.contentModule.getEditPanel().contains(this.captionEle)||!t.select("a",this.captionEle)),i=n?[this.captionEle]:[e.selectNode[0].parentElement];this.parent.formatter.process(this.parent,e.args,e.args,{insertElement:e.selectNode[0],selectParent:i,selection:e.selection,subCommand:e.args.item.subCommand}),this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.isNullOrUndefined(e.selectParent)||t.removeClass([e.selectParent[0]],"e-img-focus")),n&&t.select(".e-img-inner",this.captionEle).focus()},n.prototype.onKeyDown=function(e){var n,i,o,r,s=e.args;this.deletedImg=[];var a,l=[27,112,113,114,115,116,117,118,119,120,121,122,123,44,45,9,16,17,18,19,20,33,34,35,36,37,38,39,40,91,92,93,144,145,182,183];if("HTML"===this.parent.editorMode&&(a=(n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument())).startContainer===n.endContainer&&n.startOffset===n.endOffset),!a&&"HTML"===this.parent.editorMode&&l.indexOf(s.which)<0)for(var d=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(n),c=0;c<d.length;c++)"IMG"===d[c].nodeName&&this.deletedImg.push(d[c]);if("HTML"===this.parent.editorMode&&(8===s.which&&"Backspace"===s.code||46===s.which&&"Delete"===s.code)){var p=n.startContainer===n.endContainer&&n.startOffset===n.endOffset;8===s.which&&"Backspace"===s.code&&p?this.checkImageBack(n):46===s.which&&"Delete"===s.code&&p&&this.checkImageDel(n)}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&"KeyK"!==s.code&&(n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument()),o=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(n),r=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(n),!s.ctrlKey&&s.key&&(1===s.key.length||"enter"===s.action)&&"IMG"===r[0].tagName&&r[0].parentElement)){var h=r[0].parentElement.childNodes[0];this.contentModule.getEditPanel().querySelector(".e-img-resize")&&this.removeResizeEle(),this.parent.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),h,h,h.textContent.length,h.textContent.length),t.removeClass([r[0]],"e-img-focus"),this.quickToolObj.imageQTBar.hidePopup()}if(!s.ctrlKey||89!==s.keyCode&&90!==s.keyCode||this.undoStack({subCommand:90===s.keyCode?"undo":"redo"}),8===s.keyCode||46===s.keyCode){if(o&&"IMG"===o[0].nodeName&&o.length<1){s.preventDefault();var u={selectNode:o,selection:i,selectParent:r,args:{item:{command:"Images",subCommand:"Remove"},originalEvent:s}};this.deleteImg(u,s.keyCode)}this.parent.contentModule.getEditPanel().querySelector(".e-img-resize")&&this.removeResizeEle()}switch("Backspace"===s.code&&(s.action="backspace"),s.action){case"escape":t.isNullOrUndefined(this.dialogObj)||this.dialogObj.close();break;case"backspace":case"delete":for(c=0;c<this.deletedImg.length;c++){var m=this.deletedImg[c].src;this.imageRemovePost(m)}break;case"insert-image":"HTML"===this.parent.editorMode?this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:s},selectNode:o,selection:i,selectParent:r}):this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:s},member:"image",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertImage"}),s.preventDefault()}},n.prototype.onKeyUp=function(e){if(!t.isNullOrUndefined(this.deletedImg)&&this.deletedImg.length>0)for(var n=0;n<this.deletedImg.length;n++){var i={element:this.deletedImg[n],src:this.deletedImg[n].getAttribute("src")};this.parent.trigger("afterImageDelete",i)}},n.prototype.checkImageBack=function(e){"#text"!==e.startContainer.nodeName||0!==e.startOffset||t.isNullOrUndefined(e.startContainer.previousSibling)||"IMG"!==e.startContainer.previousSibling.nodeName?"#text"===e.startContainer.nodeName||t.isNullOrUndefined(e.startContainer.childNodes[e.startOffset-1])||"IMG"!==e.startContainer.childNodes[e.startOffset-1].nodeName||this.deletedImg.push(e.startContainer.childNodes[e.startOffset-1]):this.deletedImg.push(e.startContainer.previousSibling)},n.prototype.checkImageDel=function(e){"#text"!==e.startContainer.nodeName||e.startOffset!==e.startContainer.textContent.length||t.isNullOrUndefined(e.startContainer.nextSibling)||"IMG"!==e.startContainer.nextSibling.nodeName?"#text"===e.startContainer.nodeName||t.isNullOrUndefined(e.startContainer.childNodes[e.startOffset])||"IMG"!==e.startContainer.childNodes[e.startOffset].nodeName||this.deletedImg.push(e.startContainer.childNodes[e.startOffset]):this.deletedImg.push(e.startContainer.nextSibling)},n.prototype.alignmentSelect=function(e){var n=e.item;if(document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))&&"Images"===n.command){var i=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),o=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(i),r={args:e,selectNode:o="IMG"===o[0].nodeName?o:[this.imgEle]};switch(0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),n.subCommand){case"JustifyLeft":this.alignImage(r,"JustifyLeft");break;case"JustifyCenter":this.alignImage(r,"JustifyCenter");break;case"JustifyRight":this.alignImage(r,"JustifyRight");break;case"Inline":this.inline(r);break;case"Break":this.break(r)}this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.removeClass([o[0]],"e-img-focus")),this.cancelResizeAction()}},n.prototype.imageWithLinkQTBarItemUpdate=function(){for(var e=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item"),n=0;n<e.length;n++)e[n].getAttribute("title")===this.i10n.getConstant("openLink")||e[n].getAttribute("title")===this.i10n.getConstant("editLink")||e[n].getAttribute("title")===this.i10n.getConstant("removeLink")?(t.addClass([e[n]],"e-link-groups"),e[n].style.display="none"):"Insert Link"===e[n].getAttribute("title")?e[n].style.display="":e[n].classList.contains("e-rte-horizontal-separator")&&(e[n],t.detach(e[n]));var i=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item:not(.e-link-groups)");this.quickToolObj.imageQTBar.addQTBarItem(["-"],Math.round(i.length/2))},n.prototype.showImageQuickToolbar=function(e){var n=this;if("Images"===e.type&&!t.isNullOrUndefined(this.parent.quickToolbarModule)&&!t.isNullOrUndefined(this.parent.quickToolbarModule.imageQTBar)){this.quickToolObj=this.parent.quickToolbarModule;var i=e.args,o=e.elements;[].forEach.call(e.elements,function(e,t){0===t&&(o=e)}),o&&!t.closest(o,"a")&&this.imageWithLinkQTBarItemUpdate(),"IMG"===o.nodeName&&t.addClass([o],["e-img-focus"]);var r=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+i.clientY:i.pageY;this.parent.quickToolbarModule.imageQTBar&&(e.isNotify?setTimeout(function(){n.quickToolObj.imageQTBar.showPopup(i.pageX,r,o)},400):this.quickToolObj.imageQTBar.showPopup(i.pageX,r,o))}},n.prototype.hideImageQuickToolbar=function(){t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-img-focus"))||(t.removeClass([this.contentModule.getEditPanel().querySelector(".e-img-focus")],"e-img-focus"),this.quickToolObj&&this.quickToolObj.imageQTBar&&document.body.contains(this.quickToolObj.imageQTBar.element)&&this.quickToolObj.imageQTBar.hidePopup())},n.prototype.editAreaClickHandler=function(n){if(this.parent.readonly)return void this.hideImageQuickToolbar();var i=n.args,o=this.parent.quickToolbarSettings.showOnRightClick;if(2===i.which||o&&1===i.which||!o&&3===i.which)return void(o&&1===i.which&&!t.isNullOrUndefined(i.target)&&"IMG"===i.target.tagName&&(this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument()),this.parent.formatter.editorManager.nodeSelection.setSelectionContents(this.contentModule.getDocument(),i.target)));if("HTML"===this.parent.editorMode&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.imageQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var s=this.quickToolObj.imageQTBar.element.classList.contains("e-rte-pop");if("IMG"===r.nodeName&&this.parent.quickToolbarModule){if(s)return;this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument()),this.parent.formatter.editorManager.nodeSelection.setSelectionContents(this.contentModule.getDocument(),r),I()&&this.parent.notify(V,n),t.addClass([r],"e-img-focus");var a=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item");if(t.closest(r,"a")){for(var l=0;l<a.length;l++)a[l].getAttribute("title")===this.i10n.getConstant("openLink")||a[l].getAttribute("title")===this.i10n.getConstant("editLink")||a[l].getAttribute("title")===this.i10n.getConstant("removeLink")?(a[l].style.display="",t.removeClass([a[l]],"e-link-groups")):"Insert Link"===a[l].getAttribute("title")?a[l].style.display="none":a[l].classList.contains("e-rte-horizontal-separator")&&(a[l],t.detach(a[l]));var d=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item:not(.e-link-groups)");this.quickToolObj.imageQTBar.addQTBarItem(["-"],Math.round(d.length/2))}else t.closest(r,"a")||this.imageWithLinkQTBarItemUpdate();this.showImageQuickToolbar({args:i,type:"Images",elements:[i.target]})}else this.hideImageQuickToolbar()}},n.prototype.insertImgLink=function(e,n){var i=this;if("IMG"===e.selectNode[0].nodeName&&(this.imagDialog(e),!t.isNullOrUndefined(this.dialogObj))){var o=this.parent.createElement("div",{className:"e-img-linkwrap"}),r=T('<div class="e-rte-field"><input type="text" data-role ="none" class="e-input e-img-link" spellcheck="false" placeholder="'+this.i10n.getConstant("linkurl")+'"/></div><div class="e-rte-label"></div><div class="e-rte-field"><input type="checkbox" class="e-rte-linkTarget" data-role ="none"></div>');o.appendChild(r);var a=o.querySelector(".e-rte-linkTarget"),l=o.querySelector(".e-img-link"),d=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:d,checked:!0,enableRtl:this.parent.enableRtl,change:function(e){c=e.checked?"_blank":null}}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(a);var c=this.checkBoxObj.checked?"_blank":null,p=this.i10n.getConstant("dialogUpdate"),h={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,selectParent:e.selectParent,link:l,target:c};this.dialogObj.setProperties({height:"inherit",width:"290px",header:this.parent.localeObj.getConstant("imageInsertLinkHeader"),content:o,position:{X:"center",Y:"center"},buttons:[{click:function(e){i.insertlink(h)},buttonModel:{content:p,cssClass:"e-flat e-update-link",isPrimary:!0}}]}),t.isNullOrUndefined(n)||(l.value=n.url,n.target?this.checkBoxObj.checked=!0:this.checkBoxObj.checked=!1,this.dialogObj.header=n.header),this.dialogObj.element.style.maxHeight="inherit",this.dialogObj.content.querySelector("input").focus()}},n.prototype.insertAltText=function(e){var n=this;if("IMG"===e.selectNode[0].nodeName){this.imagDialog(e);var i=this.i10n.getConstant("altText");if(!t.isNullOrUndefined(this.dialogObj)){var o=this.parent.createElement("div",{className:"e-img-altwrap"}),r=this.i10n.getConstant("alternateHeader"),s=this.i10n.getConstant("dialogUpdate"),a=T('<div class="e-rte-field"><input type="text" spellcheck="false" value="'+(null===e.selectNode[0].getAttribute("alt")?"":e.selectNode[0].getAttribute("alt"))+'" class="e-input e-img-alt" placeholder="'+i+'"/></div>');o.appendChild(a);var l=o.querySelector(".e-img-alt"),d={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,alt:l};this.dialogObj.setProperties({height:"inherit",width:"290px",header:r,content:o,position:{X:"center",Y:"center"},buttons:[{click:function(e){n.insertAlt(d)},buttonModel:{content:s,cssClass:"e-flat e-update-alt",isPrimary:!0}}]}),this.dialogObj.element.style.maxHeight="inherit",this.dialogObj.content.querySelector("input").focus()}}},n.prototype.insertAlt=function(e){if(!t.isNullOrUndefined(e.alt)){e.selection.restore(),0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData();var n=e.alt.value;this.parent.formatter.process(this.parent,e.args,e.args,{altText:n,selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.dialogObj.hide({returnValue:!1})}},n.prototype.insertlink=function(e){if("IMG"===e.selectNode[0].nodeName){var n=e.link.value;if(""===n)return t.addClass([e.link],"e-error"),e.link.setSelectionRange(0,n.length),void e.link.focus();this.isUrl(n)?t.removeClass([e.link],"e-error"):n="http://"+n;var i=e.selfImage;if("HTML"===i.parent.editorMode&&e.selection.restore(),0===i.parent.formatter.getUndoRedoStack().length&&i.parent.formatter.saveData(),"A"===e.selectNode[0].parentElement.nodeName)return i.parent.formatter.process(i.parent,e.args,e.args,{url:n,target:i.checkBoxObj.checked?"_blank":null,selectNode:e.selectNode,subCommand:e.args.item.subCommand}),void i.dialogObj.hide({returnValue:!0});i.parent.formatter.process(i.parent,e.args,e.args,{url:n,target:i.checkBoxObj.checked?"_blank":null,selectNode:e.selectNode,subCommand:e.args.item.subCommand,selection:e.selection});var o=t.closest(e.selectNode[0],".e-img-caption");o&&t.select(".e-img-inner",o).focus(),o&&t.select(".e-img-inner",o).focus(),i.dialogObj.hide({returnValue:!1})}},n.prototype.isUrl=function(e){return/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/gi.test(e)},n.prototype.deleteImg=function(e,n){if("IMG"===e.selectNode[0].nodeName){var i={element:e.selectNode[0],src:e.selectNode[0].getAttribute("src")};0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),e.selection.restore(),this.contentModule.getEditPanel().querySelector(".e-img-resize")&&this.removeResizeEle(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,captionClass:"e-img-caption",subCommand:e.args.item.subCommand}),this.imageRemovePost(i.src),this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&this.quickToolObj.imageQTBar.hidePopup(),this.cancelResizeAction(),t.isNullOrUndefined(n)&&this.parent.trigger("afterImageDelete",i)}},n.prototype.imageRemovePost=function(e){var n=this.parent.insertImageSettings.removeUrl;if(!t.isNullOrUndefined(n)&&""!==n){var i=new t.Ajax(n,"POST",!0,null),o=new FormData;o.append(name,e),i.send(o)}},n.prototype.caption=function(e){var n=e.selectNode[0];if("IMG"===n.nodeName){e.selection.restore(),0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),this.cancelResizeAction(),t.addClass([n],"e-rte-image");var i=e.args.item?e.args.item.subCommand:"Caption";if(t.isNullOrUndefined(t.closest(n,".e-img-caption"))){this.captionEle=this.parent.createElement("span",{className:"e-img-caption e-rte-img-caption",attrs:{contenteditable:"false",draggable:"false",style:"width:"+this.parent.insertImageSettings.width}});var o=this.parent.createElement("span",{className:"e-img-wrap"}),r=this.parent.createElement("span",{className:"e-img-inner",attrs:{contenteditable:"true"}}),s=e.selectNode[0].parentElement;"A"===s.tagName&&s.setAttribute("contenteditable","true"),o.appendChild("A"===s.tagName?s:e.selectNode[0]),o.appendChild(r);var a=this.i10n.getConstant("imageCaption");r.innerHTML=a,this.captionEle.appendChild(o),n.classList.contains(ie)&&t.addClass([this.captionEle],"e-caption-inline"),n.classList.contains(ne)&&t.addClass([this.captionEle],ne),n.classList.contains("e-imgleft")&&t.addClass([this.captionEle],"e-imgleft"),n.classList.contains("e-imgright")&&t.addClass([this.captionEle],"e-imgright"),n.classList.contains("e-imgcenter")&&t.addClass([this.captionEle],"e-imgcenter"),this.parent.formatter.process(this.parent,e.args,e.args,{insertElement:this.captionEle,selectNode:e.selectNode,subCommand:i}),this.parent.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),r.childNodes[0],r.childNodes[0],0,r.childNodes[0].textContent.length)}else t.detach(t.closest(n,".e-img-caption")),t.Browser.isIE&&(this.contentModule.getEditPanel().focus(),e.selection.restore()),"A"===n.parentElement.tagName?this.parent.formatter.process(this.parent,e.args,e.args,{insertElement:n.parentElement,selectNode:e.selectNode,subCommand:i}):this.parent.formatter.process(this.parent,e.args,e.args,{insertElement:n,selectNode:e.selectNode,subCommand:i});this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.removeClass([n],"e-img-focus"))}},n.prototype.imageSize=function(e){var n=this;if("IMG"===e.selectNode[0].nodeName&&(this.imagDialog(e),!t.isNullOrUndefined(this.dialogObj))){var i=this.i10n.getConstant("imageSizeHeader"),o=this.i10n.getConstant("dialogUpdate"),r=this.imgsizeInput(e),s={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode};this.dialogObj.setProperties({height:"inherit",width:"290px",header:i,content:r,position:{X:"center",Y:"center"},buttons:[{click:function(e){n.insertSize(s)},buttonModel:{content:o,cssClass:"e-flat e-update-size",isPrimary:!0}}]}),this.dialogObj.element.style.maxHeight="inherit",this.dialogObj.content.querySelector("input").focus()}},n.prototype.break=function(e){if("IMG"===e.selectNode[0].nodeName){var t=e.args.item?e.args.item.subCommand:"Break";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})}},n.prototype.inline=function(e){if("IMG"===e.selectNode[0].nodeName){var t=e.args.item?e.args.item.subCommand:"Inline";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})}},n.prototype.alignImage=function(e,t){var n=e.args.item?e.args.item.subCommand:t;this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:n})},n.prototype.clearDialogObj=function(){this.dialogObj&&(this.dialogObj.destroy(),t.detach(this.dialogObj.element),this.dialogObj=null)},n.prototype.imagDialog=function(e){var n=this;if(this.dialogObj)return void this.dialogObj.hide({returnValue:!0});var i=this.parent.createElement("div",{className:"e-rte-img-dialog",id:this.rteID+"_image"});this.parent.element.appendChild(i);var o=this.i10n.getConstant("dialogInsert"),r=this.i10n.getConstant("dialogCancel"),s=this.i10n.getConstant("imageHeader"),a=e.selection,l={selfImage:this,selection:e.selection,args:e.args,selectParent:e.selectParent},d={header:s,cssClass:"e-rte-elements",enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"340px",height:"inherit",position:{X:"center",Y:t.Browser.isDevice?"center":"top"},isModal:t.Browser.isDevice,buttons:[{click:this.insertImageUrl.bind(l),buttonModel:{content:o,cssClass:"e-flat e-insertImage",isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:r}}],target:t.Browser.isDevice?document.body:this.parent.element,animationSettings:{effect:"None"},close:function(e){n.isImgUploaded&&n.uploadObj.removing(),n.parent.isBlur=!1,e&&e.event.returnValue&&("HTML"===n.parent.editorMode?a.restore():n.parent.formatter.editorManager.markdownSelection.restore(n.parent.contentModule.getEditPanel())),n.dialogObj.destroy(),t.detach(n.dialogObj.element),n.dialogRenderObj.close(e),n.dialogObj=null}},c=this.parent.createElement("div",{className:"e-img-content"});(!t.isNullOrUndefined(this.parent.insertImageSettings.path)&&"Markdown"===this.parent.editorMode||"HTML"===this.parent.editorMode)&&c.appendChild(this.imgUpload(e));var p=this.parent.createElement("div",{className:"e-linkheader"}),h=this.i10n.getConstant("imageLinkHeader");"HTML"===this.parent.editorMode?p.innerHTML=h:p.innerHTML=this.i10n.getConstant("mdimageLink"),c.appendChild(p),c.appendChild(this.imageUrlPopup(e)),e.selectNode&&"IMG"===e.selectNode[0].nodeName?(d.header=this.parent.localeObj.getConstant("editImageHeader"),d.content=c):d.content=c,this.dialogObj=this.dialogRenderObj.render(d),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(i),t.isNullOrUndefined(this.dialogObj)||(e.selectNode&&"IMG"===e.selectNode[0].nodeName&&"insertImage"===e.name&&(this.dialogObj.element.querySelector(".e-insertImage").textContent=this.parent.localeObj.getConstant("dialogUpdate")),i.style.maxHeight="inherit",this.quickToolObj&&(this.quickToolObj.imageQTBar&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.isNullOrUndefined(e.selectParent)||t.removeClass([e.selectParent[0]],"e-img-focus")),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup()))},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.dialogObj.hide({returnValue:!0}),this.isImgUploaded&&this.uploadObj.removing()},n.prototype.onDocumentClick=function(e){var n=e.target;"IMG"===n.nodeName&&(this.imgEle=n),!t.isNullOrUndefined(this.dialogObj)&&(!t.closest(n,"[id='"+this.dialogObj.element.id+"']")&&this.parent.toolbarSettings.enable&&this.parent.getToolbarElement()&&!this.parent.getToolbarElement().contains(e.target)||this.parent.getToolbarElement()&&this.parent.getToolbarElement().contains(e.target)&&!t.closest(n,"#"+this.parent.getID()+"_toolbar_Image")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_Image"))&&(this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,S(this.parent.element,"focusout")),"IMG"===e.target.tagName||!this.imgResizeDiv||this.quickToolObj&&this.quickToolObj.imageQTBar&&this.quickToolObj.imageQTBar.element.contains(e.target)||!this.contentModule.getEditPanel().contains(this.imgResizeDiv)||this.cancelResizeAction(),this.contentModule.getEditPanel().querySelector(".e-img-resize")&&("IMG"!==n.tagName&&this.removeResizeEle(),"IMG"===n.tagName||t.isNullOrUndefined(this.imgEle)?t.isNullOrUndefined(this.prevSelectedImgEle)||this.prevSelectedImgEle===n||(this.prevSelectedImgEle.style.outline=""):this.imgEle.style.outline="")},n.prototype.removeResizeEle=function(){t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),t.detach(this.contentModule.getEditPanel().querySelector(".e-img-resize"))},n.prototype.onWindowResize=function(){t.isNullOrUndefined(this.contentModule)||t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-img-resize"))||this.cancelResizeAction()},n.prototype.imageUrlPopup=function(e){var t=this.parent.createElement("div",{className:"imgUrl"}),n=this.i10n.getConstant("imageUrl");return this.inputUrl=this.parent.createElement("input",{className:"e-input e-img-url",attrs:{placeholder:n,spellcheck:"false"}}),t.appendChild(this.inputUrl),t},n.prototype.insertImageUrl=function(e){var n=this.selfImage;n.isImgUploaded=!1;var i=n.inputUrl.value;if(0===n.parent.formatter.getUndoRedoStack().length&&n.parent.formatter.saveData(),t.isNullOrUndefined(n.uploadUrl)||""===n.uploadUrl.url){if(""!==i){if("HTML"===n.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"[id='"+n.contentModule.getPanel().id+"']"))){n.contentModule.getEditPanel().focus();var o=n.parent.formatter.editorManager.nodeSelection.getRange(n.contentModule.getDocument());this.selection=n.parent.formatter.editorManager.nodeSelection.save(o,n.contentModule.getDocument()),this.selectParent=n.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(o)}var r=/[\w-]+.(jpg|png|jpeg|gif)/g,s=t.isNullOrUndefined(i.match(r))||"HTML"!==n.parent.editorMode?"":i.match(r)[0],a={cssClass:"inline"===n.parent.insertImageSettings.display?ie:ne,url:i,selection:this.selection,altText:s,selectParent:this.selectParent,width:{width:n.parent.insertImageSettings.width,minWidth:n.parent.insertImageSettings.minWidth,maxWidth:n.parent.getInsertImgMaxWidth()},height:{height:n.parent.insertImageSettings.height,minHeight:n.parent.insertImageSettings.minHeight,maxHeight:n.parent.insertImageSettings.maxHeight}};n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,a),n.dialogObj.hide({returnValue:!1})}}else n.uploadUrl.cssClass="inline"===n.parent.insertImageSettings.display?ie:ne,n.dialogObj.hide({returnValue:!1}),n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,n.uploadUrl),n.uploadUrl.url="",n.contentModule.getEditPanel().querySelector(".e-img-resize")&&(n.imgEle.style.outline="",n.removeResizeEle())},n.prototype.imgsizeInput=function(e){var n=e.selectNode[0],i=this.i10n.getConstant("imageHeight"),o=this.i10n.getConstant("imageWidth"),s=this.parent.createElement("div",{className:"e-img-sizewrap"}),a=T('<div class="e-rte-label"><label>'+o+'</label></div><div class="e-rte-field"><input type="text" data-role ="none" id="imgwidth" class="e-img-width" value='+("auto"===n.getAttribute("width")||t.isNullOrUndefined(n.getAttribute("width"))?n.width:n.getClientRects()[0].width)+' /></div><div class="e-rte-label"><label>'+i+'</label></div><div class="e-rte-field"> <input type="text" data-role ="none" id="imgheight" class="e-img-height" value='+("auto"===n.getAttribute("height")||t.isNullOrUndefined(n.getAttribute("height"))?n.height:n.getClientRects()[0].height)+" /></div>");s.appendChild(a);var l=new r.NumericTextBox({format:"###.### px",min:this.parent.insertImageSettings.minWidth,max:this.parent.getInsertImgMaxWidth(),enableRtl:this.parent.enableRtl,locale:this.parent.locale});l.isStringTemplate=!0,l.createElement=this.parent.createElement,l.appendTo(s.querySelector("#imgwidth"));var d=new r.NumericTextBox({format:"###.### px",min:this.parent.insertImageSettings.minHeight,max:this.parent.insertImageSettings.maxHeight,enableRtl:this.parent.enableRtl,locale:this.parent.locale});return d.isStringTemplate=!0,d.createElement=this.parent.createElement,d.appendTo(s.querySelector("#imgheight")),s},n.prototype.insertSize=function(e){e.selection.restore();var t=e.selfImage;0===t.parent.formatter.getUndoRedoStack().length&&t.parent.formatter.saveData();var n=t.dialogObj.element,i=parseFloat(n.querySelector(".e-img-width").value),o=parseFloat(n.parentElement.querySelector(".e-img-height").value);t.parent.formatter.process(this.parent,e.args,e.args,{width:i,height:o,selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.imgResizeDiv&&t.imgResizePos(e.selectNode[0],this.imgResizeDiv),t.dialogObj.hide({returnValue:!0})},n.prototype.insertImage=function(e){if(this.imagDialog(e),!t.isNullOrUndefined(this.dialogObj)){this.dialogObj.element.style.maxHeight="inherit";var n=this.dialogObj.element.querySelector(".e-img-content");!t.isNullOrUndefined(this.parent.insertImageSettings.path)&&"Markdown"===this.parent.editorMode||"HTML"===this.parent.editorMode?document.getElementById(this.rteID+"_insertImage").focus():n.querySelector(".e-img-url").focus()}},n.prototype.imgUpload=function(e){var n,i,o=this,a=this,l=a.parent.iframeSettings.enable;if("HTML"===a.parent.editorMode&&(!l&&t.isNullOrUndefined(t.closest(e.selection.range.startContainer.parentNode,"[id='"+this.parent.contentModule.getPanel().id+"']"))||l&&!p(e.selection.range.startContainer.parentNode.ownerDocument.querySelector("body"),"e-lib"))){this.contentModule.getEditPanel().focus();var d=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());n=this.parent.formatter.editorManager.nodeSelection.save(d,this.parent.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(d)}else n=e.selection,i=e.selectParent;var c=this.parent.createElement("div",{className:"e-img-uploadwrap e-droparea"}),h=this.i10n.getConstant("imageDeviceUploadMessage"),u=this.i10n.getConstant("imageUploadMessage"),m=this.parent.createElement("span",{className:"e-droptext"}),g=this.parent.createElement("span",{className:"e-rte-upload-text",innerHTML:t.Browser.isDevice?h:u});m.appendChild(g);var f=this.parent.createElement("button",{className:"e-browsebtn",id:this.rteID+"_insertImage",attrs:{autofocus:"true",type:"button"}});m.appendChild(f),c.appendChild(m);var b=this.i10n.getConstant("browse"),v=new s.Button({content:b,enableRtl:this.parent.enableRtl});v.isStringTemplate=!0,v.createElement=this.parent.createElement,v.appendTo(f);var y=t.Browser.isDevice?m:f;t.EventHandler.add(y,"click",this.fileSelect,this);var C=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"}});c.appendChild(C);var S,T,E,N,w;return this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl,removeUrl:this.parent.insertImageSettings.removeUrl},dropArea:m,multiple:!1,enableRtl:this.parent.enableRtl,allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),selected:function(e){a.isImgUploaded=!0,E=e,N=e.filesData,o.parent.isServerRendered&&(E=JSON.parse(JSON.stringify(e)),e.cancel=!0,T=e.filesData,E.filesData=T),o.parent.trigger("imageSelected",E,function(e){if(!e.cancel){if(o.checkExtension(e.filesData[0]),S=e.filesData[0].name,"HTML"===o.parent.editorMode&&t.isNullOrUndefined(o.parent.insertImageSettings.path)){var r=new FileReader;r.addEventListener("load",function(e){var t="Base64"===o.parent.insertImageSettings.saveFormat?r.result:URL.createObjectURL(D(r.result));a.uploadUrl={url:t,selection:n,altText:S,selectParent:i,width:{width:a.parent.insertImageSettings.width,minWidth:a.parent.insertImageSettings.minWidth,maxWidth:a.parent.getInsertImgMaxWidth()},height:{height:a.parent.insertImageSettings.height,minHeight:a.parent.insertImageSettings.minHeight,maxHeight:a.parent.insertImageSettings.maxHeight}},a.inputUrl.setAttribute("disabled","true")}),r.readAsDataURL(e.filesData[0].rawFile)}o.parent.isServerRendered&&o.uploadObj._internalRenderSelect(e,T)}})},beforeUpload:function(e){o.parent.isServerRendered?((w=JSON.parse(JSON.stringify(e))).filesData=N,e.cancel=!0,o.parent.trigger("imageUploading",w,function(e){e.cancel||(o.uploadObj.currentRequestHeader=e.currentRequest?e.currentRequest:o.uploadObj.currentRequestHeader,o.uploadObj.customFormDatas=e.customFormData&&e.customFormData.length>0?e.customFormData:o.uploadObj.customFormDatas,o.uploadObj.uploadFiles(T,null))})):o.parent.trigger("beforeImageUpload",e)},uploading:function(e){o.parent.isServerRendered||o.parent.trigger("imageUploading",e)},success:function(e){o.parent.trigger("imageUploadSuccess",e,function(e){if(!t.isNullOrUndefined(o.parent.insertImageSettings.path)){var r=o.parent.insertImageSettings.path+e.file.name;a.uploadUrl={url:r,selection:n,altText:S,selectParent:i,width:{width:a.parent.insertImageSettings.width,minWidth:a.parent.insertImageSettings.minWidth,maxWidth:a.parent.getInsertImgMaxWidth()},height:{height:a.parent.insertImageSettings.height,minHeight:a.parent.insertImageSettings.minHeight,maxHeight:a.parent.insertImageSettings.maxHeight}},a.inputUrl.setAttribute("disabled","true")}})},failure:function(e){o.parent.trigger("imageUploadFailed",e)},removing:function(){o.parent.trigger("imageRemoving",e,function(e){a.isImgUploaded=!1,a.inputUrl.removeAttribute("disabled"),a.uploadUrl&&(a.uploadUrl.url=""),o.dialogObj.getButtons(0).element.removeAttribute("disabled")})}}),this.uploadObj.isStringTemplate=!0,this.uploadObj.createElement=this.parent.createElement,this.uploadObj.appendTo(C),c},n.prototype.checkExtension=function(e){this.uploadObj.allowedExtensions&&(-1===this.uploadObj.allowedExtensions.toLocaleLowerCase().indexOf(("."+e.type).toLocaleLowerCase())?this.dialogObj.getButtons(0).element.setAttribute("disabled","disabled"):this.dialogObj.getButtons(0).element.removeAttribute("disabled"))},n.prototype.fileSelect=function(){return this.dialogObj.element.getElementsByClassName("e-file-select-wrap")[0].querySelector("button").click(),!1},n.prototype.dragStart=function(e){if("IMG"!==e.target.nodeName)return!0;this.parent.trigger("actionBegin",e,function(t){t.cancel?e.preventDefault():(e.dataTransfer.effectAllowed="copyMove",e.target.classList.add("e-rte-drag-image"))})},n.prototype.dragEnter=function(e){e.dataTransfer.dropEffect="copy",e.preventDefault()},n.prototype.dragOver=function(e){if(!("edge"===t.Browser.info.name&&e.dataTransfer.items[0].type.split("/")[0].indexOf("image")>-1||t.Browser.isIE&&"Files"===e.dataTransfer.types[0]))return!0;e.preventDefault()},n.prototype.dragDrop=function(e){var n=this;this.parent.trigger("beforeImageDrop",e,function(e){var i=n.parent.inputElement.ownerDocument.querySelector(".e-rte-drag-image"),o=i&&"IMG"===i.tagName||e.dataTransfer.files.length>0;!e.cancel&&o?n.parent.trigger("actionBegin",e,function(i){if(i.cancel)e.preventDefault();else{if(t.closest(e.target,"#"+n.parent.getID()+"_toolbar")||"false"===n.parent.inputElement.contentEditable)return void e.preventDefault();n.parent.element.querySelector(".e-img-resize")&&t.detach(n.imgResizeDiv),e.preventDefault();var o=void 0;if(n.contentModule.getDocument().caretRangeFromPoint?o=n.contentModule.getDocument().caretRangeFromPoint(e.clientX,e.clientY):e.rangeParent?(o=n.contentModule.getDocument().createRange()).setStart(e.rangeParent,e.rangeOffset):o=n.getDropRange(e.clientX,e.clientY),n.parent.notify("selectRange",{range:o}),n.parent.element.querySelector(".e-droparea"))return;n.insertDragImage(e)}}):o&&e.preventDefault()})},n.prototype.getDropRange=function(e,t){var n=this.contentModule.getDocument().createRange();this.parent.formatter.editorManager.nodeSelection.setRange(this.contentModule.getDocument(),n);var i=this.contentModule.getDocument().elementFromPoint(e,t),o=i.childNodes.length>0?i.childNodes[0]:i,r=0;if("<br>"===this.parent.inputElement.firstChild.innerHTML)n.setStart(o,r),n.setEnd(o,r);else{var s=void 0;do{r++,n.setStart(o,r),n.setEnd(o,r+1),s=n.getBoundingClientRect()}while(s.left<e&&r<o.length-1)}return n},n.prototype.insertDragImage=function(e){var t=this;e.preventDefault();var n=this.parent.element.querySelector("e-popup-open");if(this.parent.notify("drop",{args:e}),n&&n.classList.add("e-hide"),e.dataTransfer.files.length>0){if(e.dataTransfer.files.length>1)return;for(var i=e.dataTransfer.files,o=i[0].name,r=o.substring(o.lastIndexOf(".")),s=this.parent.insertImageSettings.allowedTypes,a=0;a<s.length;a++)if(r.toLocaleLowerCase()===s[a].toLowerCase())if(this.parent.insertImageSettings.saveUrl)this.onSelect(e);else{p={args:e,text:"",file:i[0]};e.preventDefault(),this.imagePaste(p)}}else{var l=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),d=this.parent.inputElement.ownerDocument.querySelector(".e-rte-drag-image");if(d&&"IMG"===d.tagName){d.nextElementSibling&&d.nextElementSibling.classList.contains("e-img-inner")?l.insertNode(d.parentElement.parentElement):l.insertNode(d),d.classList.remove("e-rte-drag-image");var c={elements:[d]};d.addEventListener("load",function(){t.parent.trigger("actionComplete",c)}),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());var p=e;this.resizeStart(p,d),this.hideImageQuickToolbar()}}},n.prototype.onSelect=function(e){var t=this,n=this,i=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),o=this.parent.createElement("ul",{className:"e-upload-files"});this.parent.element.appendChild(o);var r={name:"",size:0,status:"",statusCode:"",type:"",rawFile:e.dataTransfer.files[0],validationMessages:{}},s=this.parent.createElement("IMG");s.style.opacity="0.5",s.classList.add(ae),s.classList.add(ie),s.classList.add("e-resize");var a=r.rawFile,l=new FileReader;l.addEventListener("load",function(){var e=URL.createObjectURL(D(l.result));s.src="Blob"===n.parent.insertImageSettings.saveFormat?e:l.result}),a&&l.readAsDataURL(a),i.insertNode(s),this.uploadMethod(e,s);var d={elements:[s]};s.addEventListener("load",function(){t.parent.trigger("actionComplete",d)})},n.prototype.uploadMethod=function(e,n){var i=this,s=!1,a=this,l=this.parent.createElement("div");this.parent.element.appendChild(l);var d=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"}}),c=this.parent.iframeSettings.enable?-50:-90;this.popupObj=new o.Popup(l,{relateTo:n,height:"85px",width:"300px",offsetY:c,content:d,viewPortElement:this.parent.element,position:{X:"center",Y:"top"},enableRtl:this.parent.enableRtl,zIndex:10001,close:function(e){i.parent.isBlur=!1,i.popupObj.destroy(),t.detach(i.popupObj.element),i.popupObj=null}}),this.popupObj.element.style.display="none",t.addClass([this.popupObj.element],"e-popup-open"),t.addClass([this.popupObj.element],"e-rte-upload-popup");var p=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),h=e.dataTransfer.files[0].size>1e6?300:100;setTimeout(function(){a.refreshPopup(n)},h);var u,m;this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl,removeUrl:this.parent.insertImageSettings.removeUrl},cssClass:"e-rte-dialog-upload",dropArea:this.parent.element,allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),removing:function(){i.parent.inputElement.contentEditable="true",s=!1,t.detach(n),i.popupObj.close()},canceling:function(){i.parent.inputElement.contentEditable="true",s=!1,t.detach(n),i.popupObj.close()},beforeUpload:function(e){i.parent.isServerRendered?((m=JSON.parse(JSON.stringify(e))).filesData=u,s=!0,e.cancel=!0,i.parent.trigger("imageUploading",m,function(e){e.cancel||(i.uploadObj.currentRequestHeader=e.currentRequest?e.currentRequest:i.uploadObj.currentRequestHeader,i.uploadObj.customFormDatas=e.customFormData&&e.customFormData.length>0?e.customFormData:i.uploadObj.customFormDatas,i.uploadObj.uploadFiles(u,null),i.parent.inputElement.contentEditable="false")})):i.parent.trigger("beforeImageUpload",e)},uploading:function(e){i.parent.isServerRendered||(s=!0,i.parent.trigger("imageUploading",e),i.parent.inputElement.contentEditable="false")},selected:function(e){s&&(e.cancel=!0),i.parent.isServerRendered&&(u=e.filesData)},failure:function(t){s=!1,i.parent.inputElement.contentEditable="true";var o={args:e,type:"Images",isNotify:void 0,elements:n};setTimeout(function(){i.uploadFailure(n,o,t)},900)},success:function(t){s=!1,i.parent.inputElement.contentEditable="true";var o={args:e,type:"Images",isNotify:void 0,elements:n};setTimeout(function(){i.uploadSuccess(n,e,o,t)},900)}}),this.uploadObj.appendTo(this.popupObj.element.childNodes[0]),t.detach(this.popupObj.element.querySelector(".e-rte-dialog-upload .e-file-select-wrap")),p.selectNodeContents(n),this.parent.formatter.editorManager.nodeSelection.setRange(this.contentModule.getDocument(),p)},n.prototype.refreshPopup=function(e){(this.parent.iframeSettings.enable?this.parent.element.offsetTop+e.offsetTop:e.offsetTop)>this.parent.element.offsetTop+this.parent.element.offsetHeight?(this.popupObj.relateTo=this.parent.inputElement,this.popupObj.offsetY=this.parent.iframeSettings.enable?-30:-65,this.popupObj.element.style.display="block"):this.popupObj&&(this.popupObj.refreshPosition(e),this.popupObj.element.style.display="block")},n.prototype.uploadFailure=function(e,n,i){t.detach(e),this.popupObj&&this.popupObj.close(),this.parent.trigger("imageUploadFailed",i),this.uploadObj.destroy()},n.prototype.uploadSuccess=function(e,n,i,o){var r=this;e.style.opacity="1",e.classList.add("e-img-focus"),o.element=e,this.parent.trigger("imageUploadSuccess",o,function(n){if(!t.isNullOrUndefined(r.parent.insertImageSettings.path)){var i=r.parent.insertImageSettings.path+n.file.name;e.src=i,e.setAttribute("alt",n.file.name)}}),this.popupObj&&(this.popupObj.close(),this.uploadObj.destroy()),this.showImageQuickToolbar(i),this.resizeStart(n,e)},n.prototype.imagePaste=function(e){var n=this;if(0===e.text.length&&!t.isNullOrUndefined(e.file)){var i=this,o=new FileReader;e.args.preventDefault(),o.addEventListener("load",function(r){var s={cssClass:"inline"===i.parent.insertImageSettings.display?ie:ne,url:"Base64"!==n.parent.insertImageSettings.saveFormat&&t.isNullOrUndefined(e.callBack)?URL.createObjectURL(D(o.result)):o.result,width:{width:i.parent.insertImageSettings.width,minWidth:i.parent.insertImageSettings.minWidth,maxWidth:i.parent.getInsertImgMaxWidth()},height:{height:i.parent.insertImageSettings.height,minHeight:i.parent.insertImageSettings.minHeight,maxHeight:i.parent.insertImageSettings.maxHeight}};if(!t.isNullOrUndefined(e.callBack))return void e.callBack(s);i.parent.formatter.process(i.parent,{item:{command:"Images",subCommand:"Image"}},e.args,s),n.showPopupToolBar(e,s)}),o.readAsDataURL(e.file)}},n.prototype.showPopupToolBar=function(t,n){var i=this,o='img[src="'+n.url+'"]',r=this.parent.inputElement.querySelector(o);this.parent.quickToolbarModule.createQTBar("Image","MultiRow",this.parent.quickToolbarSettings.image,e.RenderType.ImageToolbar);var s={args:t.args,type:"Images",isNotify:void 0,elements:r};r&&setTimeout(function(){i.showImageQuickToolbar(s),i.resizeStart(t.args,r)},0)},n.prototype.destroy=function(){this.prevSelectedImgEle=void 0,this.removeEventListener()},n.prototype.getModuleName=function(){return"image"},n}(),yn=function(){function n(e,t){this.parent=e;var n=t;this.rendererFactory=n.getService("rendererFactory"),this.addEventListener()}return n.prototype.addEventListener=function(){this.parent.on("sourceCode",this.sourceCode,this),this.parent.on(z,this.onInitialEnd,this),this.parent.on("updateSource",this.updateSourceCode,this),this.parent.on(F,this.destroy,this)},n.prototype.onInitialEnd=function(){this.parent.formatter.editorManager.observer.on("keydown-handler",this.onKeyDown,this)},n.prototype.removeEventListener=function(){this.unWireEvent(),this.parent.off("sourceCode",this.sourceCode),this.parent.off("updateSource",this.updateSourceCode),this.parent.off(z,this.onInitialEnd),this.parent.off(F,this.destroy),this.parent.formatter.editorManager.observer.off("keydown-handler",this.onKeyDown)},n.prototype.getSourceCode=function(){return this.parent.createElement("textarea",{className:"e-rte-srctextarea"})},n.prototype.wireEvent=function(e){this.keyboardModule=new Ge(e,{keyAction:this.previewKeyDown.bind(this),keyConfigs:this.parent.formatter.keyConfig,eventName:"keydown"}),t.EventHandler.add(this.previewElement,"mousedown",this.mouseDownHandler,this)},n.prototype.unWireEvent=function(){this.keyboardModule&&this.keyboardModule.destroy(),this.previewElement&&t.EventHandler.remove(this.previewElement,"mousedown",this.mouseDownHandler)},n.prototype.wireBaseKeyDown=function(){this.parent.keyboardModule=new Ge(this.contentModule.getEditPanel(),{keyAction:this.parent.keyDown.bind(this.parent),keyConfigs:this.parent.formatter.keyConfig,eventName:"keydown"})},n.prototype.unWireBaseKeyDown=function(){this.parent.keyboardModule.destroy()},n.prototype.mouseDownHandler=function(e){this.parent.notify("sourceCodeMouseDown",{args:e})},n.prototype.previewKeyDown=function(e){switch(e.action){case"html-source":this.updateSourceCode(e),e.preventDefault();break;case"toolbar-focus":if(this.parent.toolbarSettings.enable){this.parent.toolbarModule.baseToolbar.toolbarObj.element.querySelector('.e-toolbar-item[aria-disabled="false"][title] [tabindex]').focus()}}},n.prototype.onKeyDown=function(e){switch(e.event.action){case"html-source":e.event.preventDefault(),this.sourceCode(e),e.callBack({requestType:"SourceCode",editorMode:"HTML",event:e.event})}},n.prototype.sourceCode=function(n){this.parent.isBlur=!1,this.parent.trigger("actionBegin",{requestType:"SourceCode",targetItem:"SourceCode",args:n});var i=t.selectAll("."+te,this.parent.element);if(this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),this.parent.notify("updateToolbarItem",{targetItem:"SourceCode",updateItem:"Preview",baseToolbar:this.parent.getBaseToolbarObject()}),t.isNullOrUndefined(this.previewElement)&&(this.previewElement=this.getSourceCode()),this.parent.updateValueData(),this.parent.iframeSettings.enable){var o=void 0;(o=t.isNullOrUndefined(this.parent.element.querySelector("#"+this.parent.element.id+"_source-view"))?this.parent.createElement("div",{className:"e-source-content",id:this.parent.element.id+"_source-view"}):this.parent.element.querySelector("#"+this.parent.element.id+"_source-view")).appendChild(this.previewElement),this.parent.element.appendChild(o),o.style.height=this.contentModule.getPanel().style.height,o.style.marginTop=this.contentModule.getPanel().style.marginTop,this.getPanel().value=this.getTextAreaValue(),this.contentModule.getPanel().style.display="none",o.style.display="block"}else this.contentModule.getPanel().appendChild(this.previewElement),this.getPanel().value=this.getTextAreaValue(),this.contentModule.getEditPanel().style.display="none",this.previewElement.style.display="block";this.parent.isBlur=!1,this.parent.disableToolbarItem(this.parent.toolbarSettings.items),this.parent.enableToolbarItem("SourceCode"),this.parent.getToolbar()&&t.removeClass([this.parent.getToolbar()],["e-expand-open"]),t.removeClass(i,[re]),this.parent.setContentHeight("sourceCode",!0),this.wireEvent(this.previewElement),this.unWireBaseKeyDown(),this.previewElement.focus(),this.parent.updateValue(),t.isNullOrUndefined(this.parent.placeholder)||this.parent.iframeSettings.enable||(this.parent.element.querySelector(".rte-placeholder.e-rte-placeholder").style.display="none"),this.parent.trigger("actionComplete",{requestType:"SourceCode",targetItem:"SourceCode",args:n}),this.parent.invokeChangeEvent()},n.prototype.updateSourceCode=function(e){this.parent.isBlur=!1,this.parent.trigger("actionBegin",{requestType:"Preview",targetItem:"Preview",args:e});var n=this.getPanel();this.parent.notify("updateToolbarItem",{targetItem:"Preview",updateItem:"SourceCode",baseToolbar:this.parent.getBaseToolbarObject()});var i=this.parent.serializeValue(n.value),o=null===i||""===i?"<p><br/></p>":i;this.parent.iframeSettings.enable?(n.parentElement.style.display="none",this.contentModule.getPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=o):(n.style.display="none",this.contentModule.getEditPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=o),this.parent.isBlur=!1,this.parent.enableToolbarItem(this.parent.toolbarSettings.items),this.parent.getToolbar()&&t.removeClass([this.parent.getToolbar()],["e-expand-open"]),this.parent.setContentHeight("preview",!0),this.unWireEvent(),this.wireBaseKeyDown(),this.contentModule.getEditPanel().focus(),this.parent.updateValue(),t.isNullOrUndefined(this.parent.placeholder)||0!==this.contentModule.getEditPanel().innerText.length||(this.parent.element.querySelector(".rte-placeholder.e-rte-placeholder").style.display="block"),this.parent.trigger("actionComplete",{requestType:"Preview",targetItem:"Preview",args:e}),this.parent.formatter.enableUndo(this.parent),this.parent.invokeChangeEvent()},n.prototype.getTextAreaValue=function(){return"<p><br></p>"===this.contentModule.getEditPanel().innerHTML||1===this.contentModule.getEditPanel().childNodes.length&&"P"===this.contentModule.getEditPanel().childNodes[0].tagName&&7===this.contentModule.getEditPanel().innerHTML.length?"":this.parent.value},n.prototype.getPanel=function(){return this.parent.element&&this.parent.element.querySelector(".e-rte-srctextarea")},n.prototype.getViewPanel=function(){return this.parent.iframeSettings.enable&&this.getPanel()?this.getPanel().parentElement:this.getPanel()},n.prototype.destroy=function(){this.removeEventListener()},n}(),Cn=function(){function n(e,t){this.ensureInsideTableList=!0,this.pageX=null,this.pageY=null,this.moveEle=null,this.parent=e,this.rteID=e.element.id,this.l10n=t.getService("rteLocale"),this.rendererFactory=t.getService("rendererFactory"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.addEventListener()}return n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on("createTable",this.renderDlgContent,this),this.parent.on(z,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on("docClick",this.docClick,this),this.parent.on("editAreaClick",this.editAreaClickHandler,this),this.parent.on("clearDialogObj",this.clearDialogObj,this),this.parent.on("table-toolbar-action",this.onToolbarAction,this),this.parent.on("dropDownSelect",this.dropdownSelect,this),this.parent.on(Q,this.keyDown,this),this.parent.on("mouseUp",this.selectionTable,this),this.parent.on(F,this.destroy,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("createTable",this.renderDlgContent),this.parent.off(z,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off("docClick",this.docClick),this.parent.off("editAreaClick",this.editAreaClickHandler),this.parent.off("clearDialogObj",this.clearDialogObj),this.parent.off("table-toolbar-action",this.onToolbarAction),this.parent.off("dropDownSelect",this.dropdownSelect),this.parent.off(W,this.cellSelect),this.parent.off("tableColorPickerChanged",this.setBGColor),this.parent.off(Q,this.keyDown),this.parent.off("mouseUp",this.selectionTable),this.parent.off(F,this.destroy))},n.prototype.selectionTable=function(e){var n=e.args.target;"mozilla"!==t.Browser.info.name||t.isNullOrUndefined(t.closest(n,"table"))||"TABLE"!==t.closest(n,"table").tagName||this.parent.contentModule.getEditPanel().setAttribute("contenteditable","true")},n.prototype.afterRender=function(){this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),this.parent.on("tableColorPickerChanged",this.setBGColor,this),this.parent.on(W,this.cellSelect,this),this.parent.tableSettings.resize&&t.EventHandler.add(this.parent.contentModule.getEditPanel(),t.Browser.touchStartEvent,this.resizeStart,this),!t.Browser.isDevice&&this.parent.tableSettings.resize&&t.EventHandler.add(this.contentModule.getEditPanel(),"mouseover",this.resizeHelper,this)},n.prototype.dropdownSelect=function(e){var t=e.item;if(document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))&&"Table"===t.command){var n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i={args:e,selection:this.parent.formatter.editorManager.nodeSelection.save(n,this.contentModule.getDocument()),selectParent:this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(n)};switch(t.subCommand){case"InsertRowBefore":case"InsertRowAfter":this.addRow(i.selection,e);break;case"InsertColumnLeft":case"InsertColumnRight":this.addColumn(i.selection,e);break;case"DeleteColumn":case"DeleteRow":this.removeRowColumn(i.selection,e);break;case"AlignTop":case"AlignMiddle":case"AlignBottom":this.verticalAlign(i,e);break;case"Dashed":case"Alternate":this.tableStyles(i,t.subCommand);break;case"Merge":case"VerticalSplit":case"HorizontalSplit":this.UpdateCells(i.selection,e)}}},n.prototype.UpdateCells=function(e,t){this.parent.formatter.process(this.parent,t,t,{selection:e,subCommand:t.item.subCommand}),this.hideTableQuickToolbar()},n.prototype.keyDown=function(e){var n=e.args,i=this;switch(n.action){case"escape":break;case"insert-table":if("HTML"===this.parent.editorMode){var o=this.parent.contentModule.getDocument(),r=this.parent.formatter.editorManager.nodeSelection.getRange(o),s=this.parent.formatter.editorManager.nodeSelection.save(r,o),a={originalEvent:e.args,item:{command:"Table",subCommand:"CreateTable"}};this.insertTableDialog({self:this,args:a,selection:s})}n.preventDefault()}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule&&"KeyK"!==n.code){var r=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),s=this.parent.formatter.editorManager.nodeSelection.save(r,this.contentModule.getDocument()),l=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(r)[0];if(l=l&&"TD"!==l.tagName&&"TH"!==l.tagName?l.parentElement:l,(8===n.keyCode||46===n.keyCode||n.ctrlKey&&88===n.keyCode)&&(l&&"TBODY"===l.tagName?(n.preventDefault(),i.removeTable(s,n,!0)):l&&l.querySelectorAll("table").length>0&&this.removeResizeElement()),l&&"TD"!==l.tagName&&"TH"!==l.tagName){var d=t.closest(l,"td");l=!t.isNullOrUndefined(d)&&this.parent.inputElement.contains(d)?d:l}if(l&&("TD"===l.tagName||"TH"===l.tagName))switch(n.keyCode){case 9:case 37:case 39:i.tabSelection(n,s,l);break;case 40:case 38:i.tableArrowNavigation(n,s,l)}}},n.prototype.onToolbarAction=function(e){switch(e.args.item.subCommand){case"TableHeader":this.tableHeader(e.selection,e.args);break;case"TableRemove":this.removeTable(e.selection,e.args);break;case"TableEditProperties":this.editTable(e)}},n.prototype.verticalAlign=function(e,n){var i=t.closest(e.selectParent[0],"td")||t.closest(e.selectParent[0],"th");i&&this.parent.formatter.process(this.parent,n,n,{tableCell:i,subCommand:n.item.subCommand})},n.prototype.tableStyles=function(e,n){var i=t.closest(e.selectParent[0],"table");"Dashed"===n&&(this.parent.element.classList.contains("e-dashed-border")?this.parent.element.classList.remove("e-dashed-border"):this.parent.element.classList.add("e-dashed-border"),i.classList.contains("e-dashed-border")?i.classList.remove("e-dashed-border"):i.classList.add("e-dashed-border")),"Alternate"===n&&(this.parent.element.classList.contains(se)?this.parent.element.classList.remove(se):this.parent.element.classList.add(se),i.classList.contains(se)?i.classList.remove(se):i.classList.add(se)),this.parent.formatter.saveData(),this.parent.formatter.editorManager.nodeSelection.restore()},n.prototype.insideList=function(e){for(var t=this.parent.formatter.editorManager.domNode.blockNodes(),n=[],i=0;i<t.length;i++)"LI"===t[i].parentNode.tagName?n.push(t[i].parentNode):"LI"===t[i].tagName&&"P"!==t[i].childNodes[0].tagName&&"OL"!==t[i].childNodes[0].tagName&&"UL"!==t[i].childNodes[0].tagName&&n.push(t[i]);return n.length>1||n.length&&0===e.startOffset&&0===e.endOffset?(this.ensureInsideTableList=!0,!0):(this.ensureInsideTableList=!1,!1)},n.prototype.tabSelection=function(e,n,i){var o=this.insideList(n.range);if((37!==e.keyCode&&39!==e.keyCode||3!==n.range.startContainer.nodeType)&&!o)if(e.preventDefault(),i.classList.remove("e-cell-select"),e.shiftKey||37===e.keyCode){var r=t.isNullOrUndefined(i.previousSibling)?t.isNullOrUndefined(t.closest(i,"tr").previousSibling)?t.isNullOrUndefined(t.closest(i,"table").previousSibling)?i:"td"===t.closest(i,"table").previousSibling.nodeName.toLowerCase()?t.closest(i,"table").previousSibling:i:t.closest(i,"tr").previousSibling.childNodes[t.closest(i,"tr").previousSibling.childNodes.length-1]:i.previousSibling;if(i===r&&0===i.cellIndex&&t.closest(i,"table").tHead){var s=t.closest(i,"table");r=s.rows[0].cells[s.rows[0].cells.length-1]}37===e.keyCode&&i===r&&(r=t.closest(i,"table").previousSibling),r&&(""!==r.textContent.trim()&&t.closest(r,"td")?n.setSelectionNode(this.contentModule.getDocument(),r):n.setSelectionText(this.contentModule.getDocument(),r,r,0,0))}else{var a=t.isNullOrUndefined(i.nextSibling)?t.isNullOrUndefined(t.closest(i,"tr").nextSibling)?t.isNullOrUndefined(t.closest(i,"table").nextSibling)?i:"td"===t.closest(i,"table").nextSibling.nodeName.toLowerCase()?t.closest(i,"table").nextSibling:i:t.closest(i,"tr").nextSibling.childNodes[0]:i.nextSibling;i===a&&"TH"===i.nodeName&&(a=t.closest(i,"table").rows[1].cells[0]),39===e.keyCode&&i===a&&(a=t.closest(i,"table").nextSibling),a&&(""!==a.textContent.trim()&&t.closest(a,"td")?n.setSelectionNode(this.contentModule.getDocument(),a):n.setSelectionText(this.contentModule.getDocument(),a,a,0,0)),i===a&&39!==e.keyCode&&a&&(i.classList.add("e-cell-select"),this.addRow(n,e,!0),i.classList.remove("e-cell-select"),""!==(a=a.parentElement.nextSibling.firstChild).textContent.trim()&&t.closest(a,"td")?n.setSelectionNode(this.contentModule.getDocument(),a):n.setSelectionText(this.contentModule.getDocument(),a,a,0,0))}},n.prototype.tableArrowNavigation=function(e,n,i){var o=n.range.startContainer;40===e.keyCode&&3===o.nodeType&&(o.nextSibling&&"BR"===o.nextSibling.nodeName||o.parentNode&&"TD"!==o.parentNode.nodeName)||38===e.keyCode&&3===o.nodeType&&(o.previousSibling&&"BR"===o.previousSibling.nodeName||o.parentNode&&"TD"!==o.parentNode.nodeName)||(e.preventDefault(),i.classList.remove("e-cell-select"),(i=40===e.keyCode?t.isNullOrUndefined(t.closest(i,"tr").nextElementSibling)?t.closest(i,"table").tHead&&"TH"===i.nodeName?t.closest(i,"table").rows[1].cells[i.cellIndex]:t.isNullOrUndefined(t.closest(i,"table").nextSibling)?i:t.closest(i,"table").nextSibling:t.closest(i,"tr").nextElementSibling.children[i.cellIndex]:t.isNullOrUndefined(t.closest(i,"tr").previousElementSibling)?t.closest(i,"table").tHead&&"TH"!==i.nodeName?t.closest(i,"table").tHead.rows[0].cells[i.cellIndex]:t.isNullOrUndefined(t.closest(i,"table").previousSibling)?i:t.closest(i,"table").previousSibling:t.closest(i,"tr").previousElementSibling.children[i.cellIndex])&&n.setSelectionText(this.contentModule.getDocument(),i,i,0,0))},n.prototype.setBGColor=function(e){for(var t=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument()),n=(this.parent.formatter.editorManager.nodeSelection.save(t,this.contentModule.getDocument()),this.curTable.querySelectorAll(".e-cell-select")),i=0;i<n.length;i++)n[i].style.backgroundColor=e.item.value;this.parent.formatter.saveData()},n.prototype.hideTableQuickToolbar=function(){this.quickToolObj&&this.quickToolObj.tableQTBar&&document.body.contains(this.quickToolObj.tableQTBar.element)&&this.quickToolObj.tableQTBar.hidePopup()},n.prototype.tableHeader=function(e,t){this.parent.formatter.process(this.parent,t,t.originalEvent,{selection:e,subCommand:t.item.subCommand})},n.prototype.editAreaClickHandler=function(n){if(!this.parent.readonly){var i=n.args,o=this.parent.quickToolbarSettings.showOnRightClick;if(!(2===i.which||o&&1===i.which||!o&&3===i.which)&&"HTML"===this.parent.editorMode&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.tableQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;if(this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),this.quickToolObj.tableQTBar.element.classList.contains("e-rte-pop"))return;var s=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument()),a=t.closest(r,"table");if(r&&"A"!==r.nodeName&&"IMG"!==r.nodeName&&("TD"===r.nodeName||"TH"===r.nodeName||"TABLE"===r.nodeName||a&&this.parent.contentModule.getEditPanel().contains(a))&&(3!==s.startContainer.nodeType||s.collapsed)){var l=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument());this.parent.formatter.editorManager.nodeSelection.save(l,this.contentModule.getDocument()),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());var d=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+i.clientY:i.pageY;this.quickToolObj.tableQTBar.showPopup(i.pageX,d,r),this.parent.formatter.editorManager.nodeSelection.restore()}else this.hideTableQuickToolbar()}}},n.prototype.tableCellSelect=function(e){var n=e.target,i=Array.prototype.slice.call(n.parentElement.parentElement.children).indexOf(n.parentElement),o=Array.prototype.slice.call(n.parentElement.children).indexOf(n),r=this.dlgDiv.querySelectorAll(".e-rte-tablecell");Array.prototype.forEach.call(r,function(e){var n=Array.prototype.slice.call(e.parentElement.parentElement.children).indexOf(e.parentElement),r=Array.prototype.slice.call(e.parentElement.children).indexOf(e);t.removeClass([e],"e-active"),n<=i&&r<=o&&t.addClass([e],"e-active")}),this.tblHeader.innerHTML=o+1+"x"+(i+1)},n.prototype.tableMouseUp=function(e){t.EventHandler.remove(this.curTable,"mousemove",this.tableMove)},n.prototype.tableCellLeave=function(e){t.removeClass(this.dlgDiv.querySelectorAll(".e-rte-tablecell"),"e-active"),t.addClass([this.dlgDiv.querySelector(".e-rte-tablecell")],"e-active"),this.tblHeader.innerHTML="1x1"},n.prototype.tableCellClick=function(e){var t=e.target,n=Array.prototype.slice.call(t.parentElement.parentElement.children).indexOf(t.parentElement)+1,i=Array.prototype.slice.call(t.parentElement.children).indexOf(t)+1;this.self.tableInsert(n,i,e,this)},n.prototype.tableInsert=function(e,n,i,o){var r=o.self?o.self:this,s=o.selection.range.startContainer;"P"!==s.nodeName||""!==s.textContent.trim()||s.childNodes.length>0||(s.innerHTML="<br />");var a=s.parentNode;if("HTML"===r.parent.editorMode&&(r.parent.iframeSettings.enable&&!p(a.ownerDocument.querySelector("body"),"e-lib")||!r.parent.iframeSettings.enable&&t.isNullOrUndefined(t.closest(a,"[id='"+r.contentModule.getPanel().id+"']")))){r.contentModule.getEditPanel().focus();var l=r.parent.formatter.editorManager.nodeSelection.getRange(r.contentModule.getDocument());o.selection=r.parent.formatter.editorManager.nodeSelection.save(l,r.contentModule.getDocument())}var d={row:e,columns:n,width:{minWidth:r.parent.tableSettings.minWidth,maxWidth:r.parent.tableSettings.maxWidth,width:r.parent.tableSettings.width},selection:o.selection};r.popupObj&&r.popupObj.hide(),r.editdlgObj&&r.editdlgObj.hide(),r.parent.formatter.process(r.parent,o.args,o.args.originalEvent,d),r.contentModule.getEditPanel().focus(),r.parent.on(W,r.cellSelect,r)},n.prototype.cellSelect=function(e){var n=e.args.target,i=t.closest(n,"td,th");n="TD"!==n.nodeName&&i&&this.parent.contentModule.getEditPanel().contains(i)?i:n,t.removeClass(this.contentModule.getEditPanel().querySelectorAll("table td, table th"),"e-cell-select"),!n||"TD"!==n.tagName&&"TH"!==n.tagName||(n.removeAttribute("class"),t.addClass([n],"e-cell-select"),this.activeCell=n,this.curTable=this.curTable?this.curTable:t.closest(n,"table"),t.EventHandler.add(this.curTable,"mousemove",this.tableMove,this),t.EventHandler.add(this.curTable,"mouseup",this.tableMouseUp,this),this.removeResizeElement(),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&t.detach(this.helper)),"mozilla"!==t.Browser.info.name||t.isNullOrUndefined(t.closest(n,"table"))||"TABLE"!==t.closest(n,"table").tagName||this.parent.contentModule.getEditPanel().setAttribute("contenteditable","false")},n.prototype.tableMove=function(e){this.parent.formatter.editorManager.observer.notify("TABLE_MOVE",{event:e,selectNode:[this.activeCell]})},n.prototype.resizeHelper=function(e){if(!this.parent.readonly){var n=e.target||e.targetTouches[0].target,i=t.closest(n,"table");t.isNullOrUndefined(this.curTable)||t.isNullOrUndefined(i)||i===this.curTable||(this.removeResizeElement(),this.removeHelper(e),this.cancelResizeAction()),"TABLE"!==n.nodeName&&"TD"!==n.nodeName&&"TH"!==n.nodeName||(this.curTable=i&&this.parent.contentModule.getEditPanel().contains(i)&&("TD"===n.nodeName||"TH"===n.nodeName)?i:n,this.removeResizeElement(),this.tableResizeEleCreation(this.curTable,e))}},n.prototype.tableResizeEleCreation=function(e,n){this.parent.preventDefaultResize(n);for(var i=Array.prototype.slice.call(e.rows[0].cells,1),o=[],r=0;r<e.rows.length;r++)o.push(Array.prototype.slice.call(e.rows[r].cells,0,1)[0]);for(var s=parseInt(getComputedStyle(e).height,10),a=parseInt(getComputedStyle(e).width,10),l=this.calcPos(e),r=0;i.length>r;r++){var d=this.parent.createElement("span",{attrs:{"data-col":(r+1).toString(),unselectable:"on",contenteditable:"false"}});d.classList.add("e-rte-table-resize","e-column-resize"),d.style.cssText="height: "+s+"px; width: 4px; top: "+l.top+"px; left:"+(l.left+this.calcPos(i[r]).left)+"px;",this.contentModule.getEditPanel().appendChild(d)}for(r=0;o.length>r;r++){var c=this.parent.createElement("span",{attrs:{"data-row":r.toString(),unselectable:"on",contenteditable:"false"}});c.classList.add("e-rte-table-resize","e-row-resize");var p=t.isNullOrUndefined(e.getAttribute("cellspacing"))&&""===e.getAttribute("cellspacing")?this.calcPos(o[r]).left:0;c.style.cssText="width: "+a+"px; height: 4px; top: "+(this.calcPos(o[r]).top+l.top+o[r].offsetHeight-2)+"px; left:"+(p+l.left)+"px;",this.contentModule.getEditPanel().appendChild(c)}var h=this.parent.createElement("span",{className:"e-table-box",attrs:{"data-col":i.length.toString(),unselectable:"on",contenteditable:"false"}});h.style.cssText="top: "+(l.top+s-4)+"px; left:"+(l.left+a-4)+"px;",t.Browser.isDevice&&h.classList.add("e-rmob"),this.contentModule.getEditPanel().appendChild(h)},n.prototype.removeResizeElement=function(){var e=this.parent.contentModule.getEditPanel().querySelectorAll(".e-column-resize, .e-row-resize, .e-table-box");if(e.length>0)for(var n=0;n<e.length;n++)t.detach(e[n])},n.prototype.calcPos=function(e){for(var n={top:0,left:0},i=e.getBoundingClientRect(),o=e.ownerDocument,r=e.offsetParent||o.documentElement;r&&(r===o.body||r===o.documentElement)&&"static"===r.style.position;)r=r.parentNode;return"TD"===r.nodeName&&"TABLE"===e.nodeName&&(r=t.closest(r,".e-control")),r&&r!==e&&1===r.nodeType&&(n=r.getBoundingClientRect()),{top:i.top-n.top,left:i.left-n.left}},n.prototype.getPointX=function(e){return e.touches&&e.touches.length?e.touches[0].pageX:e.pageX},n.prototype.getPointY=function(e){return e.touches&&e.touches.length?e.touches[0].pageY:e.pageY},n.prototype.resizeStart=function(e){var n=this;if(!this.parent.readonly){t.Browser.isDevice&&this.resizeHelper(e);var i=e.target;if(i.classList.contains("e-column-resize")||i.classList.contains("e-row-resize")||i.classList.contains("e-table-box")){if(e.preventDefault(),this.parent.preventDefaultResize(e),t.removeClass(this.curTable.querySelectorAll("td,th"),"e-cell-select"),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument()),this.pageX=this.getPointX(e),this.pageY=this.getPointY(e),this.resizeBtnInit(),this.hideTableQuickToolbar(),i.classList.contains("e-column-resize")&&(this.resizeBtnStat.column=!0,this.columnEle=this.curTable.rows[0].cells[parseInt(i.getAttribute("data-col"),10)],this.colIndex=this.columnEle.cellIndex,this.moveEle=e.target,this.appendHelper()),i.classList.contains("e-row-resize")&&(this.rowEle=this.curTable.rows[parseInt(i.getAttribute("data-row"),10)],this.resizeBtnStat.row=!0,this.appendHelper()),i.classList.contains("e-table-box")&&(this.resizeBtnStat.tableBox=!0),t.Browser.isDevice&&this.helper&&!this.helper.classList.contains("e-reicon"))this.helper.classList.add("e-reicon"),t.EventHandler.add(document,t.Browser.touchStartEvent,this.removeHelper,this),t.EventHandler.add(this.helper,t.Browser.touchStartEvent,this.resizeStart,this);else{var o=t.isBlazor()?{requestType:"Table"}:{event:e,requestType:"Table"};this.parent.trigger("resizeStart",o,function(e){e.cancel&&n.cancelResizeAction()})}t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing,this),t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd,this)}}},n.prototype.removeHelper=function(e){!e.target.classList.contains("e-reicon")&&this.helper&&(t.EventHandler.remove(document,t.Browser.touchStartEvent,this.removeHelper),t.EventHandler.remove(this.helper,t.Browser.touchStartEvent,this.resizeStart),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&t.detach(this.helper),this.pageX=null,this.helper=null)},n.prototype.appendHelper=function(){this.helper=this.parent.createElement("div",{className:"e-table-rhelper"}),t.Browser.isDevice&&this.helper.classList.add("e-reicon"),this.contentModule.getEditPanel().appendChild(this.helper),this.setHelperHeight()},n.prototype.setHelperHeight=function(){var e=this.calcPos(this.curTable);this.resizeBtnStat.column?(this.helper.classList.add("e-column-helper"),this.helper.style.cssText="height: "+getComputedStyle(this.curTable).height+"; top: "+e.top+"px; left:"+(e.left+this.calcPos(this.columnEle).left-1)+"px;"):(this.helper.classList.add("e-row-helper"),this.helper.style.cssText="width: "+getComputedStyle(this.curTable).width+"; top: "+(this.calcPos(this.rowEle).top+e.top+this.rowEle.offsetHeight)+"px; left:"+(this.calcPos(this.rowEle).left+e.left)+"px;")},n.prototype.updateHelper=function(){var e=this.calcPos(this.curTable);if(this.resizeBtnStat.column){var t=e.left+this.calcPos(this.columnEle).left-1;this.helper.style.left=t+"px"}else{var n=this.calcPos(this.rowEle).top+e.top+this.rowEle.offsetHeight;this.helper.style.top=n+"px"}},n.prototype.resizing=function(e){var n=this,i=this.getPointX(e),o=this.getPointY(e),r=this.parent.enableRtl?-(i-this.pageX):i-this.pageX,s=this.parent.enableRtl?-(o-this.pageY):o-this.pageY;this.pageX=i,this.pageY=o;var a=t.isBlazor()?{requestType:"table"}:{event:e,requestType:"table"};this.parent.trigger("resizing",a,function(i){if(i.cancel)n.cancelResizeAction();else{var o=n.contentModule.getEditPanel().querySelector(".e-table-box"),a=parseInt(getComputedStyle(n.curTable).width,10),l=parseInt(getComputedStyle(n.curTable).height,10),d=+getComputedStyle(n.contentModule.getEditPanel()).paddingRight.match(/\d/g).join(""),c=n.contentModule.getEditPanel().offsetWidth-2*d;if(n.resizeBtnStat.column){for(var p=n.curTable.rows[0].cells,h=parseFloat(n.columnEle.offsetWidth.toString())-r,u=parseFloat(n.columnEle.offsetWidth.toString())+parseFloat(p[n.colIndex-1].offsetWidth.toString()),m=0;m<n.curTable.rows.length;m++)if(u-h>20&&h>20){var g=u-h,f=h;n.curTable.rows[m].cells[n.colIndex-1].style.width=n.convertPixelToPercentage(g,a)+"%",n.curTable.rows[m].cells[n.colIndex].style.width=n.convertPixelToPercentage(f,a)+"%"}n.updateHelper()}else if(n.resizeBtnStat.row){n.parent.preventDefaultResize(e);var b=parseFloat(n.rowEle.clientHeight.toString())+s;b>20&&(n.rowEle.style.height=b+"px"),n.curTable.style.height="",t.isNullOrUndefined(o)||(o.style.cssText="top: "+(n.calcPos(n.curTable).top+l-4)+"px; left:"+(n.calcPos(n.curTable).left+a-4)+"px;"),n.updateHelper()}else if(n.resizeBtnStat.tableBox){t.Browser.isDevice||t.EventHandler.remove(n.contentModule.getEditPanel(),"mouseover",n.resizeHelper);var v=n.curTable.style.width.indexOf("%")>-1;n.curTable.style.width=v?n.convertPixelToPercentage(a+r,c)+"%":a+r+"px",n.curTable.style.height=l+s+"px",o.classList.add("e-rbox-select"),o.style.cssText="top: "+(n.calcPos(n.curTable).top+l-4)+"px; left:"+(n.calcPos(n.curTable).left+a-4)+"px;"}}})},n.prototype.convertPixelToPercentage=function(e,t){return e/t*100},n.prototype.cancelResizeAction=function(){t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),this.removeResizeElement()},n.prototype.resizeEnd=function(e){this.resizeBtnInit(),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),this.contentModule.getEditPanel().querySelector(".e-table-box")&&this.contentModule.getEditPanel().contains(this.contentModule.getEditPanel().querySelector(".e-table-box"))&&(t.Browser.isDevice||t.EventHandler.add(this.contentModule.getEditPanel(),"mouseover",this.resizeHelper,this),this.removeResizeElement(),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&(t.detach(this.helper),this.helper=null),this.pageX=null,this.pageY=null,this.moveEle=null);var n=t.isBlazor()?{requestType:"table"}:{event:e,requestType:"table"};this.parent.trigger("resizeStop",n),this.parent.formatter.saveData()},n.prototype.resizeBtnInit=function(){return this.resizeBtnStat={column:!1,row:!1,tableBox:!1}},n.prototype.addRow=function(e,t,n){var i;n&&(i={item:{command:"Table",subCommand:"InsertRowAfter"}});var o={selection:e,subCommand:n?i.item.subCommand:t.item.subCommand};this.parent.formatter.process(this.parent,n?i:t,t,o)},n.prototype.addColumn=function(e,t){this.parent.formatter.process(this.parent,t,t,{selection:e,width:this.parent.tableSettings.width,subCommand:t.item.subCommand})},n.prototype.removeRowColumn=function(e,t){this.parent.formatter.process(this.parent,t,t,{selection:e,subCommand:t.item.subCommand}),this.hideTableQuickToolbar()},n.prototype.removeTable=function(e,t,n){var i;n&&(i={item:{command:"Table",subCommand:"TableRemove"}});var o={selection:e,subCommand:n?i.item.subCommand:t.item.subCommand};this.parent.formatter.process(this.parent,n?i:t,t.originalEvent,o),this.contentModule.getEditPanel().focus(),this.removeResizeElement(),this.hideTableQuickToolbar()},n.prototype.renderDlgContent=function(e){var n=this;if(t.Browser.isDevice||this.parent.inlineMode.enable)return void this.insertTableDialog(e);if(this.popupObj)return void this.popupObj.hide();this.hideTableQuickToolbar();var i=this.l10n.getConstant("inserttablebtn");this.dlgDiv=this.parent.createElement("div",{className:"e-rte-table-popup",id:this.rteID+"_table"}),this.tblHeader=this.parent.createElement("div",{className:"e-rte-popup-header"}),this.tblHeader.innerHTML="1X1",this.dlgDiv.appendChild(this.tblHeader);var r=this.parent.createElement("div",{className:"e-rte-table-span"});this.drawTable(r,e),this.dlgDiv.appendChild(r),this.dlgDiv.appendChild(this.parent.createElement("span",{className:"e-span-border"}));var a=this.parent.createElement("button",{className:"e-insert-table-btn",id:this.rteID+"_insertTable",attrs:{type:"button",tabindex:"0"}});t.isNullOrUndefined(this.parent.getToolbarElement().querySelector(".e-expended-nav"))||this.parent.getToolbarElement().querySelector(".e-expended-nav").setAttribute("tabindex","1"),this.dlgDiv.appendChild(a);var l=new s.Button({iconCss:"e-icons e-create-table",content:i,cssClass:"e-flat",enableRtl:this.parent.enableRtl,locale:this.parent.locale});l.isStringTemplate=!0,l.appendTo(a),t.EventHandler.add(a,"click",this.insertTableDialog,{self:this,args:e.args,selection:e.selection}),this.parent.getToolbar().appendChild(this.dlgDiv);var d=e.args.originalEvent.target;d=d.classList.contains("e-toolbar-item")?d.firstChild:d.parentElement,this.popupObj=new o.Popup(this.dlgDiv,{targetType:"relative",relateTo:d,collision:{X:"fit",Y:"none"},offsetY:8,viewPortElement:this.parent.element,position:{X:"left",Y:"bottom"},enableRtl:this.parent.enableRtl,zIndex:10001,close:function(e){n.parent.isBlur=!1,n.popupObj.destroy(),t.detach(n.popupObj.element),n.popupObj=null}}),t.addClass([this.popupObj.element],"e-popup-open"),this.popupObj.refreshPosition(d)},n.prototype.docClick=function(e){var n=e.args.target;n&&n.classList&&(this.popupObj&&!t.closest(n,"[id='"+this.popupObj.element.id+"']")||this.editdlgObj&&!t.closest(n,"#"+this.editdlgObj.element.id))&&!n.classList.contains("e-create-table")&&n.offsetParent&&!n.offsetParent.classList.contains("e-rte-backgroundcolor-dropdown")&&(this.popupObj&&this.popupObj.hide(),this.editdlgObj&&this.editdlgObj.hide(),this.parent.isBlur=!0,S(this.parent.element,"focusout"));var i=t.closest(n,"td"),o=!(!i||!this.parent.contentModule.getEditPanel().contains(i));!n||"TD"===n.tagName||"TH"===n.tagName||o||null!==t.closest(n,".e-rte-quick-popup")||!n.offsetParent||n.offsetParent.classList.contains("e-quick-dropdown")||n.offsetParent.classList.contains("e-rte-backgroundcolor-dropdown")||t.closest(n,".e-rte-dropdown-popup")||t.closest(n,".e-rte-elements")||(t.removeClass(this.parent.element.querySelectorAll("table td"),"e-cell-select"),t.Browser.isIE||this.hideTableQuickToolbar()),!n||!n.classList||n.classList.contains("e-column-resize")||n.classList.contains("e-row-resize")||n.classList.contains("e-table-box")||this.removeResizeElement()},n.prototype.drawTable=function(e,n){for(var i,o,r=0;r<3;r++){i=this.parent.createElement("div",{className:"e-rte-table-row",attrs:{"data-column":""+r}});for(var s=0;s<10;s++){var a=r>2?"none":"inline-block";o=this.parent.createElement("div",{className:"e-rte-tablecell e-default",attrs:{"data-cell":""+s}}),i.appendChild(o),o.style.display=a,0===s&&0===r&&t.addClass([o],"e-active"),t.EventHandler.add(o,"mousemove",this.tableCellSelect,this),t.EventHandler.add(i,"mouseleave",this.tableCellLeave,this),t.EventHandler.add(o,"mouseup",this.tableCellClick,{self:this,args:n.args,selection:n.selection})}e.appendChild(i)}},n.prototype.editTable=function(e){var t=this;this.createDialog(e);var n=this.tableDlgContent(e),i=this.l10n.getConstant("dialogUpdate"),o=this.l10n.getConstant("dialogCancel"),r=this.l10n.getConstant("tableEditHeader");this.editdlgObj.setProperties({height:"initial",width:"290px",content:n,header:r,buttons:[{click:this.applyProperties.bind(this,e),buttonModel:{content:i,cssClass:"e-flat e-size-update",isPrimary:!0}},{click:function(e){t.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:o}}]}),this.editdlgObj.element.style.maxHeight="none",this.editdlgObj.content.querySelector("input").focus(),this.hideTableQuickToolbar()},n.prototype.insertTableDialog=function(e){var n=this.self?this.self:this;n.popupObj&&n.popupObj.hide(),n.createDialog(e);var i=n.tableCellDlgContent(),o=n.l10n.getConstant("dialogInsert"),r=n.l10n.getConstant("dialogCancel");t.isNullOrUndefined(n.editdlgObj)||(n.editdlgObj.setProperties({height:"initial",width:"290px",content:i,buttons:[{click:n.customTable.bind(this,e),buttonModel:{content:o,cssClass:"e-flat e-insert-table",isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:r}}]}),n.editdlgObj.element.style.maxHeight="none",n.editdlgObj.content.querySelector("input").focus())},n.prototype.tableCellDlgContent=function(){var e=this.l10n.getConstant("columns"),t=this.l10n.getConstant("rows"),n=this.parent.createElement("div",{className:"e-cell-wrap"}),i=T('<div class="e-rte-field"><input type="text" data-role ="none" id="tableColumn" class="e-table-column"/></div><div class="e-rte-field"><input type="text" data-role ="none" id="tableRow" class="e-table-row" /></div>');return n.appendChild(i),this.columnTextBox=new r.NumericTextBox({format:"n0",min:1,value:3,placeholder:e,floatLabelType:"Auto",max:50,enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.columnTextBox.isStringTemplate=!0,this.columnTextBox.appendTo(n.querySelector("#tableColumn")),this.rowTextBox=new r.NumericTextBox({format:"n0",min:1,value:3,placeholder:t,floatLabelType:"Auto",max:50,enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.rowTextBox.isStringTemplate=!0,this.rowTextBox.appendTo(n.querySelector("#tableRow")),n},n.prototype.clearDialogObj=function(){this.editdlgObj&&(this.editdlgObj.destroy(),t.detach(this.editdlgObj.element),this.editdlgObj=null)},n.prototype.createDialog=function(e){var n=this;if(this.editdlgObj)return void this.editdlgObj.hide({returnValue:!0});var i=this.parent.createElement("div",{className:"e-rte-edit-table",id:this.rteID+"_tabledialog"});this.parent.element.appendChild(i);var o=this.l10n.getConstant("dialogInsert"),r=this.l10n.getConstant("dialogCancel"),s={header:this.l10n.getConstant("tabledialogHeader"),cssClass:"e-rte-elements",enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"340px",height:"initial",position:{X:"center",Y:t.Browser.isDevice?"center":"top"},isModal:t.Browser.isDevice,buttons:[{buttonModel:{content:o,cssClass:"e-flat e-insert-table",isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:r}}],target:t.Browser.isDevice?document.body:this.parent.element,animationSettings:{effect:"None"},close:function(e){n.parent.isBlur=!1,n.editdlgObj.destroy(),t.detach(n.editdlgObj.element),n.dialogRenderObj.close(e),n.editdlgObj=null}};this.editdlgObj=this.dialogRenderObj.render(s),this.editdlgObj.appendTo(i),this.quickToolObj&&this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup()},n.prototype.customTable=function(e,n){var i=this.self?this.self:this;if(i.rowTextBox.value&&i.columnTextBox.value){var o=t.Browser.isDevice||!t.isNullOrUndefined(e.args)&&!t.isNullOrUndefined(e.args.originalEvent)&&"insert-table"===e.args.originalEvent.action||i.parent.inlineMode.enable?e:this;i.tableInsert(i.rowTextBox.value,i.columnTextBox.value,n,o)}},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.editdlgObj.hide({returnValue:!0})},n.prototype.applyProperties=function(e,n){var i=this.editdlgObj.element,o=t.closest(e.selectNode[0],"table");if(o.style.width=i.querySelector(".e-table-width").value+"px",""!==i.querySelector(".e-cell-padding").value)for(var r=o.querySelectorAll("td"),s=0;s<r.length;s++){var a="";""===r[s].style.padding?a=r[s].getAttribute("style")+" padding:"+i.querySelector(".e-cell-padding").value+"px;":(r[s].style.padding=i.querySelector(".e-cell-padding").value+"px",a=r[s].getAttribute("style")),r[s].setAttribute("style",a)}o.cellSpacing=i.querySelector(".e-cell-spacing").value,t.isNullOrUndefined(o.cellSpacing)&&"0"===o.cellSpacing?t.removeClass([o],"e-rte-table-border"):t.addClass([o],"e-rte-table-border"),this.parent.formatter.saveData(),this.editdlgObj.hide({returnValue:!0})},n.prototype.tableDlgContent=function(e){var n=e.selectParent[0],i=this.l10n.getConstant("tableWidth"),o=this.l10n.getConstant("cellpadding"),s=this.l10n.getConstant("cellspacing"),a=this.parent.createElement("div",{className:"e-table-sizewrap"}),l=t.closest(n,"table").getClientRects()[0].width,d=t.closest(n,"td").style.padding,c=t.closest(n,"table").getAttribute("cellspacing"),p=T('<div class="e-rte-field"><input type="text" data-role ="none" id="tableWidth" class="e-table-width" /></div><div class="e-rte-field"><input type="text" data-role ="none" id="cellPadding" class="e-cell-padding" /> </div><div class="e-rte-field"><input type="text" data-role ="none" id="cellSpacing" class="e-cell-spacing" /></div>');a.appendChild(p);var h=new r.NumericTextBox({format:"n0",min:0,value:l,placeholder:i,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale});h.isStringTemplate=!0,h.appendTo(a.querySelector("#tableWidth"));var u=new r.NumericTextBox({format:"n0",min:0,value:""!==d?parseInt(d,null):0,placeholder:o,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale});u.isStringTemplate=!0,u.appendTo(a.querySelector("#cellPadding"));var m=new r.NumericTextBox({format:"n0",min:0,value:""===c||t.isNullOrUndefined(c)?0:parseInt(c,null),placeholder:s,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale});return m.isStringTemplate=!0,m.appendTo(a.querySelector("#cellSpacing")),a},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.getModuleName=function(){return"table"},n}(),Sn=function(){function e(e){this.parent=e}return e.prototype.render=function(e){var n;return e.beforeOpen=this.beforeOpen.bind(this),e.open=this.open.bind(this),t.isNullOrUndefined(e.close)&&(e.close=this.close.bind(this)),e.beforeClose=this.beforeClose.bind(this),n=new o.Dialog(e),n.isStringTemplate=!0,n},e.prototype.beforeOpen=function(e){this.parent.trigger("beforeDialogOpen",e,this.beforeOpenCallback.bind(this,e))},e.prototype.beforeOpenCallback=function(e){e.cancel&&this.parent.notify("clearDialogObj",null)},e.prototype.open=function(e){this.parent.trigger("dialogOpen",e)},e.prototype.beforeClose=function(e){this.parent.trigger("beforeDialogClose",e,function(e){e.cancel||e.container.classList.contains("e-popup-close")&&(e.cancel=!0)})},e.prototype.close=function(e){this.parent.trigger("dialogClose",e)},e}(),Tn={bold:{command:"Style",subCommand:"Bold",value:"strong"},italic:{command:"Style",subCommand:"Italic",value:"em"},underline:{command:"Style",subCommand:"Underline",value:"span"},strikeThrough:{command:"Style",subCommand:"StrikeThrough",value:"span"},insertCode:{command:"Formats",subCommand:"Pre",value:"pre"},superscript:{command:"Effects",subCommand:"SuperScript",value:"sup"},subscript:{command:"Effects",subCommand:"SubScript",value:"sub"},uppercase:{command:"Casing",subCommand:"UpperCase"},lowercase:{command:"Casing",subCommand:"LowerCase"},fontColor:{command:"font",subCommand:"fontcolor",value:"#ff0000"},fontName:{command:"font",subCommand:"fontname",value:"Segoe UI"},fontSize:{command:"font",subCommand:"fontsize",value:"10pt"},backColor:{command:"font",subCommand:"backgroundcolor",value:"#ffff00"},justifyCenter:{command:"Alignments",subCommand:"JustifyCenter"},justifyFull:{command:"Alignments",subCommand:"JustifyFull"},justifyLeft:{command:"Alignments",subCommand:"JustifyLeft"},justifyRight:{command:"Alignments",subCommand:"JustifyRight"},undo:{command:"Actions",subCommand:"Undo"},redo:{command:"Actions",subCommand:"Redo"},createLink:{command:"Links",subCommand:"createLink"},editLink:{command:"Links",subCommand:"createLink"},createImage:{command:"Images",subCommand:"Images"},formatBlock:{command:"Formats",value:"P"},heading:{command:"Formats",value:"H1"},indent:{command:"Indents",subCommand:"Indent"},outdent:{command:"Indents",subCommand:"Outdent"},insertHTML:{command:"InsertHTML",subCommand:"InsertHTML",value:""},insertText:{command:"InsertText",subCommand:"InsertText",value:""},insertHorizontalRule:{command:"InsertHTML",subCommand:"InsertHTML",value:"<hr/>"},insertImage:{command:"Images",subCommand:"Image"},editImage:{command:"Images",subCommand:"Image"},insertTable:{command:"Table",subCommand:"CreateTable"},insertBrOnReturn:{command:"InsertHTML",subCommand:"InsertHTML",value:"<br/>"},insertOrderedList:{command:"Lists",value:"OL"},insertUnorderedList:{command:"Lists",value:"UL"},insertParagraph:{command:"Formats",value:"P"},removeFormat:{command:"Clear",subCommand:"ClearFormat"}},En=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Nn=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},wn=function(n){function i(){return null!==n&&n.apply(this,arguments)||this}return En(i,n),Nn([t.Property(!0)],i.prototype,"enable",void 0),Nn([t.Property(!0)],i.prototype,"enableFloating",void 0),Nn([t.Property(e.ToolbarType.Expand)],i.prototype,"type",void 0),Nn([t.Property(we)],i.prototype,"items",void 0),Nn([t.Property({})],i.prototype,"itemConfigs",void 0),i}(t.ChildProperty),kn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Property([".jpeg",".jpg",".png"])],n.prototype,"allowedTypes",void 0),Nn([t.Property("inline")],n.prototype,"display",void 0),Nn([t.Property("Blob")],n.prototype,"saveFormat",void 0),Nn([t.Property("auto")],n.prototype,"width",void 0),Nn([t.Property("auto")],n.prototype,"height",void 0),Nn([t.Property(null)],n.prototype,"saveUrl",void 0),Nn([t.Property(null)],n.prototype,"path",void 0),Nn([t.Property(!0)],n.prototype,"resize",void 0),Nn([t.Property(null)],n.prototype,"removeUrl",void 0),Nn([t.Property(0)],n.prototype,"minWidth",void 0),Nn([t.Property(null)],n.prototype,"maxWidth",void 0),Nn([t.Property(0)],n.prototype,"minHeight",void 0),Nn([t.Property(null)],n.prototype,"maxHeight",void 0),Nn([t.Property(!1)],n.prototype,"resizeByPercent",void 0),n}(t.ChildProperty),Ln=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Complex({getImageUrl:null,url:null,uploadUrl:null},a.AjaxSettings)],n.prototype,"ajaxSettings",void 0),Nn([t.Property(!1)],n.prototype,"allowDragAndDrop",void 0),Nn([t.Complex({visible:!0,file:["Open","|","Cut","Copy","|","Delete","Rename","|","Details"],folder:["Open","|","Cut","Copy","Paste","|","Delete","Rename","|","Details"],layout:["SortBy","View","Refresh","|","Paste","|","NewFolder","Upload","|","Details","|","SelectAll"]},a.ContextMenuSettings)],n.prototype,"contextMenuSettings",void 0),Nn([t.Property("")],n.prototype,"cssClass",void 0),Nn([t.Complex({},a.DetailsViewSettings)],n.prototype,"detailsViewSettings",void 0),Nn([t.Property(!1)],n.prototype,"enable",void 0),Nn([t.Complex({maxWidth:"650px",minWidth:"240px",visible:!0},a.NavigationPaneSettings)],n.prototype,"navigationPaneSettings",void 0),Nn([t.Property("/")],n.prototype,"path",void 0),Nn([t.Property(null)],n.prototype,"rootAliasName",void 0),Nn([t.Complex({},a.SearchSettings)],n.prototype,"searchSettings",void 0),Nn([t.Property(!0)],n.prototype,"showFileExtension",void 0),Nn([t.Property(!1)],n.prototype,"showHiddenItems",void 0),Nn([t.Property(!0)],n.prototype,"showThumbnail",void 0),Nn([t.Property("Ascending")],n.prototype,"sortOrder",void 0),Nn([t.Complex({visible:!0,items:["NewFolder","Upload","Cut","Copy","Paste","Delete","Download","Rename","SortBy","Refresh","Selection","View","Details"]},a.ToolbarSettings)],n.prototype,"toolbarSettings",void 0),Nn([t.Complex({autoUpload:!0,minFileSize:0,maxFileSize:3e7,allowedExtensions:"",autoClose:!1},a.UploadSettings)],n.prototype,"uploadSettings",void 0),Nn([t.Property("LargeIcons")],n.prototype,"view",void 0),n}(t.ChildProperty),xn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Property("100%")],n.prototype,"width",void 0),Nn([t.Property(Ne)],n.prototype,"styles",void 0),Nn([t.Property(!0)],n.prototype,"resize",void 0),Nn([t.Property(0)],n.prototype,"minWidth",void 0),Nn([t.Property(null)],n.prototype,"maxWidth",void 0),n}(t.ChildProperty),On=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Property(!0)],n.prototype,"enable",void 0),Nn([t.Property(!1)],n.prototype,"showOnRightClick",void 0),Nn([t.Property("hide")],n.prototype,"actionOnScroll",void 0),Nn([t.Property(["Open","Edit","UnLink"])],n.prototype,"link",void 0),Nn([t.Property(["Replace","Align","Caption","Remove","-","InsertLink","OpenImageLink","EditImageLink","RemoveImageLink","Display","AltText","Dimension"])],n.prototype,"image",void 0),Nn([t.Property(["Cut","Copy","Paste"])],n.prototype,"text",void 0),Nn([t.Property(["TableHeader","TableRows","TableColumns","BackgroundColor","-","TableRemove","Alignments","TableCellVerticalAlign","Styles"])],n.prototype,"table",void 0),n}(t.ChildProperty),Dn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Property(!1)],n.prototype,"prompt",void 0),Nn([t.Property(null)],n.prototype,"deniedAttrs",void 0),Nn([t.Property(["background","background-color","border","border-bottom","border-left","border-radius","border-right","border-style","border-top","border-width","clear","color","cursor","direction","display","float","font","font-family","font-size","font-weight","font-style","height","left","line-height","margin","margin-top","margin-left","margin-right","margin-bottom","max-height","max-width","min-height","min-width","overflow","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","position","right","table-layout","text-align","text-decoration","text-indent","top","vertical-align","visibility","white-space","width"])],n.prototype,"allowedStyleProps",void 0),Nn([t.Property(null)],n.prototype,"deniedTags",void 0),Nn([t.Property(!0)],n.prototype,"keepFormat",void 0),Nn([t.Property(!1)],n.prototype,"plainText",void 0),n}(t.ChildProperty),Mn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Property(null)],n.prototype,"default",void 0),Nn([t.Property("65px")],n.prototype,"width",void 0),Nn([t.Property(ke)],n.prototype,"items",void 0),n}(t.ChildProperty),Rn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Property(null)],n.prototype,"default",void 0),Nn([t.Property("35px")],n.prototype,"width",void 0),Nn([t.Property(Le)],n.prototype,"items",void 0),n}(t.ChildProperty),In=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Property(null)],n.prototype,"default",void 0),Nn([t.Property("65px")],n.prototype,"width",void 0),Nn([t.Property(xe)],n.prototype,"types",void 0),n}(t.ChildProperty),Bn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Property("#ff0000")],n.prototype,"default",void 0),Nn([t.Property("Palette")],n.prototype,"mode",void 0),Nn([t.Property(10)],n.prototype,"columns",void 0),Nn([t.Property(Oe)],n.prototype,"colorCode",void 0),Nn([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),Pn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return En(n,e),Nn([t.Property("#ffff00")],n.prototype,"default",void 0),Nn([t.Property("Palette")],n.prototype,"mode",void 0),Nn([t.Property(10)],n.prototype,"columns",void 0),Nn([t.Property(De)],n.prototype,"colorCode",void 0),Nn([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),An=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Hn=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Un=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return An(n,e),Hn([t.Property([])],n.prototype,"styles",void 0),Hn([t.Property([])],n.prototype,"scripts",void 0),n}(t.ChildProperty),jn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return An(n,e),Hn([t.Property(!1)],n.prototype,"enable",void 0),Hn([t.Property(null)],n.prototype,"attributes",void 0),Hn([t.Complex({},Un)],n.prototype,"resources",void 0),n}(t.ChildProperty),zn=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Fn=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},_n=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return zn(n,e),Fn([t.Property(!1)],n.prototype,"enable",void 0),Fn([t.Property(!0)],n.prototype,"onSelection",void 0),n}(t.ChildProperty),qn=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(t,n)};return function(t,n){function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}}(),Qn=function(){return(Qn=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e}).apply(this,arguments)},Vn=function(e,t,n,i){var o,r=arguments.length,s=r<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(r<3?o(s):r>3?o(t,n,s):o(t,n))||s);return r>3&&s&&Object.defineProperty(t,n,s),s},Wn=function(n){function i(e,t){var i=n.call(this,e,t)||this;return i.defaultResetValue=null,i.isResizeInitialized=!1,i.isFocusOut=!1,i.isRTE=!1,i.isBlur=!0,i.needsID=!0,i}return qn(i,n),i.prototype.requiredModules=function(){var e=[];return this.toolbarSettings.enable&&(e.push({member:"toolbar",args:[this,this.serviceLocator]}),e.push({member:"link",args:[this,this.serviceLocator]}),e.push({member:"table",args:[this,this.serviceLocator]}),e.push({member:"image",args:[this,this.serviceLocator]}),this.quickToolbarSettings.enable&&e.push({member:"quickToolbar",args:[this,this.serviceLocator]})),this.showCharCount&&e.push({member:"count",args:[this,this.serviceLocator]}),"Markdown"===this.editorMode&&e.push({member:"markdownEditor",args:[this,this.serviceLocator]}),"HTML"===this.editorMode&&(e.push({member:"htmlEditor",args:[this,this.serviceLocator]}),e.push({member:"pasteCleanup",args:[this,this.serviceLocator]})),this.fileManagerSettings.enable&&e.push({member:"fileManager",args:[this,this.serviceLocator]}),this.enableResize&&e.push({member:"resize",args:[this]}),e},i.prototype.updateEnable=function(){this.enabled?(t.removeClass([this.element],"e-disabled"),this.element.setAttribute("aria-disabled","false"),t.isNullOrUndefined(this.htmlAttributes.tabindex)?this.inputElement.setAttribute("tabindex","0"):this.inputElement.setAttribute("tabindex",this.htmlAttributes.tabindex)):(this.getToolbar()&&(t.removeClass(this.getToolbar().querySelectorAll("."+re),re),t.removeClass([this.getToolbar()],["e-rte-tb-float","e-rte-tb-abs-float"])),t.addClass([this.element],"e-disabled"),this.element.tabIndex=-1,this.element.setAttribute("aria-disabled","true"),this.inputElement.setAttribute("tabindex","-1"))},i.prototype.setEnable=function(){this.updateEnable(),this.enabled?this.eventInitializer():this.unWireEvents()},i.prototype.preRender=function(){this.onBlurHandler=this.blurHandler.bind(this),this.onFocusHandler=this.focusHandler.bind(this),this.onResizeHandler=this.resizeHandler.bind(this),this.clickPoints={clientX:0,clientY:0},this.initialValue=this.value,this.serviceLocator=new ze,this.initializeServices(),this.setContainer(),this.persistData(),t.setStyleAttribute(this.element,{width:t.formatUnit(this.width)}),t.attributes(this.element,{role:"application"})},i.prototype.persistData=function(){if(this.enablePersistence&&"TEXTAREA"===this.originalElement.tagName){this.element.id=this.originalElement.id+"_wrapper";var e=window.localStorage.getItem(this.getModuleName()+this.element.id);t.isNullOrUndefined(e)||""===e||this.setProperties(JSON.parse(e),!0)}},i.prototype.setContainer=function(){this.originalElement=this.element.cloneNode(!0),null!==this.value&&null===this.valueTemplate||this.setValue(),this.element.hasAttribute("tabindex")&&(this.htmlAttributes={tabindex:this.element.getAttribute("tabindex")},this.element.removeAttribute("tabindex")),this.isBlazor()||(this.element.innerHTML="");for(var e=["class","style","id","ejs-for"],n={},i=0;i<this.element.attributes.length;i++)-1!==e.indexOf(this.element.attributes[i].name)||/^data-val/.test(this.element.attributes[i].name)||(n[this.element.attributes[i].name]=this.element.getAttribute(this.element.attributes[i].name));if(t.extend(n,this.htmlAttributes,n),this.setProperties({htmlAttributes:n},!0),t.isNullOrUndefined(this.htmlAttributes.id)||(this.element.id=this.htmlAttributes.id),"TEXTAREA"===this.element.tagName){var o=this.createElement("div",{className:this.element.getAttribute("class")});this.isBlazor()||(this.element.innerHTML=""),this.element.parentElement.insertBefore(o,this.element),t.isBlazor()?(o.appendChild(this.element),this.valueContainer=this.createElement("textarea",{id:this.element.id+"-value"})):this.valueContainer=this.element,t.removeClass([this.valueContainer],this.element.getAttribute("class").split(" ")),this.isBlazor()&&t.addClass([this.element],"e-rte-hidden"),this.element=o}else this.valueContainer=this.createElement("textarea",{id:this.getID()+"-value"});this.valueContainer.name=this.getID(),t.addClass([this.valueContainer],"e-rte-hidden"),this.element.appendChild(this.valueContainer)},i.prototype.getPersistData=function(){return this.addOnPersist(["value"])},i.prototype.focusIn=function(){this.enabled&&(this.inputElement.focus(),this.focusHandler({}))},i.prototype.focusOut=function(){this.enabled&&(this.inputElement.blur(),this.blurHandler({}))},i.prototype.selectAll=function(){this.notify("selectAll",{})},i.prototype.selectRange=function(e){this.notify("selectRange",{range:e})},i.prototype.getSelection=function(){var e="";return this.notify("getSelectedHtml",{callBack:function(t){e=t}}),e},i.prototype.executeCommand=function(e,t,n){if(t=this.htmlPurifier(e,t),"HTML"===this.editorMode){var i=this.getRange();this.iframeSettings.enable&&this.formatter.editorManager.nodeSelection.Clear(this.element.ownerDocument),(!(!this.iframeSettings.enable||i.startContainer!==this.inputElement)||!this.inputElement.contains(i.startContainer))&&this.focusIn()}var o=Tn[e];n&&n.undo&&n.undo&&0===this.formatter.getUndoRedoStack().length&&this.formatter.saveData(),this.formatter.editorManager.execCommand(o.command,o.subCommand?o.subCommand:t||o.value,null,null,t||o.value,t||o.value),n&&n.undo&&(this.formatter.saveData(),this.formatter.enableUndo(this)),this.setPlaceHolder(),this.notify("content-changed",{})},i.prototype.htmlPurifier=function(e,n){if("HTML"===this.editorMode)switch(e){case"insertHTML":this.enableHtmlSanitizer&&(n="string"==typeof n?this.htmlEditorModule.sanitizeHelper(n):this.htmlEditorModule.sanitizeHelper(n.outerHTML));break;case"insertTable":t.isNullOrUndefined(n.width)&&(n.width={minWidth:this.tableSettings.minWidth,maxWidth:this.tableSettings.maxWidth,width:this.tableSettings.width});break;case"insertImage":var i=this.createElement("img",{attrs:{src:n.url}}),o=i.outerHTML;this.enableHtmlSanitizer&&(o=this.htmlEditorModule.sanitizeHelper(i.outerHTML));var r=""!==o&&this.createElement("div",{innerHTML:o}).firstElementChild.getAttribute("src")||null;r=t.isNullOrUndefined(r)?"":r,n.url=r,t.isNullOrUndefined(n.width)&&(n.width={minWidth:this.insertImageSettings.minWidth,maxWidth:this.insertImageSettings.maxWidth,width:this.insertImageSettings.width}),t.isNullOrUndefined(n.height)&&(n.height={minHeight:this.insertImageSettings.minHeight,maxHeight:this.insertImageSettings.maxHeight,height:this.insertImageSettings.height});break;case"createLink":var s=this.createElement("a",{attrs:{href:n.url}}),a=s.outerHTML;this.enableHtmlSanitizer&&(a=this.htmlEditorModule.sanitizeHelper(s.outerHTML));var l=""!==a&&this.createElement("div",{innerHTML:a}).firstElementChild.getAttribute("href")||null;l=t.isNullOrUndefined(l)?"":l,n.url=l}return n},i.prototype.encode=function(e){var t=this.createElement("div");return t.innerText=e.trim(),t.innerHTML.replace(/<br\s*[\/]?>/gi,"\n")},i.prototype.render=function(){this.value&&!this.valueTemplate&&this.setProperties({value:this.serializeValue(this.value)},!0),this.renderModule=new fn(this,this.serviceLocator),this.sourceCodeModule=new yn(this,this.serviceLocator),this.notify("initial-load",{}),this.trigger("load"),this.RTERender();new nt(this);this.notify(z,{}),this.enableXhtml&&this.setProperties({value:this.getXhtml()},!0),this.toolbarSettings.enable&&"Expand"===this.toolbarSettings.type&&!t.isNullOrUndefined(this.getToolbar())&&this.toolbarSettings.items.indexOf("Undo")>-1&&this.toolbarSettings.items.indexOf("Redo")>-1&&this.disableToolbarItem(["Undo","Redo"]),this.setContentHeight(),null!==this.value&&(this.isBlazor()?this.defaultResetValue=this.value:this.valueContainer.defaultValue=this.value),this.enabled?this.eventInitializer():this.unWireEvents(),this.renderComplete()},i.prototype.eventInitializer=function(){this.wireEvents()},i.prototype.keyDown=function(e){if(this.notify(Q,{member:"keydown",args:e}),this.restrict(e),"HTML"===this.editorMode&&(8===e.which&&"Backspace"===e.code||46===e.which&&"Delete"===e.code)){var n=this.getRange(),i="#text"===n.startContainer.nodeName?n.startContainer.parentElement:n.startContainer;if(t.closest(i,"pre")&&8===e.which&&8203===n.startContainer.textContent.charCodeAt(n.startOffset-1)||46===e.which&&8203===n.startContainer.textContent.charCodeAt(n.startOffset)){var o=new RegExp(String.fromCharCode(8203),"g"),r=8===e.which?n.startOffset-1:n.startOffset;n.startContainer.textContent=n.startContainer.textContent.replace(o,""),this.formatter.editorManager.nodeSelection.setCursorPoint(this.contentModule.getDocument(),n.startContainer,r)}else if("Backspace"===e.code&&8===e.which&&8203===n.startContainer.textContent.charCodeAt(0)&&n.collapsed){var s=n.startContainer.parentElement,a=void 0,l=void 0;for(l=0;l<s.childNodes.length;l++)s.childNodes[l]===n.startContainer&&(a=l);var d=!0,c=[];for(l=a;l>=0;l--)3===s.childNodes[l].nodeType&&8203===s.childNodes[l].textContent.charCodeAt(0)&&d?c.push(l):d=!1;if(c.length>0)for(l=c.length-1;l>0;l--)s.childNodes[c[l]].textContent="";this.formatter.editorManager.nodeSelection.setCursorPoint(this.contentModule.getDocument(),n.startContainer,n.startOffset)}}if(0===this.formatter.getUndoRedoStack().length&&this.formatter.saveData(),"insert-link"!==e.action&&(e.action&&"paste"!==e.action||9===e.which||"Backspace"===e.code&&8===e.which))switch(this.formatter.process(this,null,e),e.action){case"toolbar-focus":if(this.toolbarSettings.enable){this.toolbarModule.baseToolbar.toolbarObj.element.querySelector('.e-toolbar-item[aria-disabled="false"][title] [tabindex]').focus()}break;case"escape":this.contentModule.getEditPanel().focus()}t.isNullOrUndefined(this.placeholder)||(t.isNullOrUndefined(this.placeHolderWrapper)||1===this.inputElement.textContent.length?this.setPlaceHolder():this.placeHolderWrapper.style.display="none"),this.autoResize()},i.prototype.keyUp=function(e){this.notify(q,{member:"keyup",args:e}),"KeyX"!==e.code||88!==e.which||88!==e.keyCode||!e.ctrlKey||""!==this.inputElement.innerHTML&&"<br>"!==this.inputElement.innerHTML||(this.inputElement.innerHTML=w("<p><br></p>",this));var n=32===e.which||13===e.which||8===e.which||46===e.which;("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||n||"Markdown"===this.editorMode&&("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||n)&&!this.inlineMode.enable)&&this.formatter.onKeyHandler(this,e),this.inputElement&&0!==this.inputElement.textContent.length&&this.notify("toolbar-refresh",{args:e}),t.isNullOrUndefined(this.placeholder)||this.setPlaceHolder()},i.prototype.serializeValue=function(e){return"HTML"!==this.editorMode||t.isNullOrUndefined(e)||(this.enableHtmlEncode?(e=this.htmlEditorModule.sanitizeHelper(x(e)),e=this.encode(e)):e=this.htmlEditorModule.sanitizeHelper(e)),e},i.prototype.sanitizeHtml=function(e){return this.serializeValue(e)},i.prototype.updateValue=function(e){if(t.isNullOrUndefined(e)){var n=this.inputElement.innerHTML;this.setProperties({value:L(n)?null:n})}else this.setProperties({value:e})},i.prototype.triggerEditArea=function(e){if(u()){var t=e.touches?e.changedTouches[0]:e;this.clickPoints.clientX===t.clientX&&this.clickPoints.clientY===t.clientY&&this.notify("editAreaClick",{member:"editAreaClick",args:e})}else this.notify("editAreaClick",{member:"editAreaClick",args:e})},i.prototype.notifyMouseUp=function(e){var t=e.touches?e.changedTouches[0]:e;this.notify("mouseUp",{member:"mouseUp",args:e,touchData:{prevClientX:this.clickPoints.clientX,prevClientY:this.clickPoints.clientY,clientX:t.clientX,clientY:t.clientY}}),this.inputElement&&("HTML"===this.editorMode&&0!==this.inputElement.textContent.length||"Markdown"===this.editorMode&&0!==this.inputElement.value.length)&&this.notify("toolbar-refresh",{args:e}),this.triggerEditArea(e)},i.prototype.mouseUp=function(e){if(this.quickToolbarSettings.showOnRightClick&&t.Browser.isDevice){var n=e.target,i=t.closest(n,"table");if(n&&"A"===n.nodeName||"IMG"===n.nodeName||"TD"===n.nodeName||"TH"===n.nodeName||"TABLE"===n.nodeName||i&&this.contentModule.getEditPanel().contains(i))return}if(this.notifyMouseUp(e),3===e.detail){var o=this.getRange(),r=this.formatter.editorManager.domNode.getSelection();/\s+$/.test(r.toString())&&((t.isNullOrUndefined(o.startContainer.parentElement)||(t.isNullOrUndefined(o.startContainer.parentElement.nextSibling)||3===o.startContainer.parentElement.nextSibling.nodeType&&!/\s+$/.test(o.startContainer.parentElement.nextSibling.textContent))&&o.startOffset!==o.endOffset)&&"li"!==o.startContainer.parentElement.tagName.toLocaleLowerCase()||(o.setStart(o.startContainer,o.startOffset),o.setEnd(o.startContainer,o.startContainer.textContent.length)))}},i.prototype.ensureModuleInjected=function(e){return this.getInjectedModules().indexOf(e)>=0},i.prototype.onCopy=function(){this.contentModule.getDocument().execCommand("copy",!1,null)},i.prototype.onCut=function(){this.contentModule.getDocument().execCommand("cut",!1,null)},i.prototype.onPaste=function(e){var n=this,i={originalEvent:e,cancel:!1,requestType:"Paste"};this.trigger("actionBegin",i,function(i){var o=n.getText().length-n.getSelection().length+(t.isNullOrUndefined(e)||t.isNullOrUndefined(e.clipboardData)?0:e.clipboardData.getData("text/plain").length);if("Markdown"===n.editorMode)return void(-1===n.maxLength||o<n.maxLength||e.preventDefault());if(!i.cancel&&"true"===n.inputElement.contentEditable&&(-1===n.maxLength||o<n.maxLength))if(t.isNullOrUndefined(n.pasteCleanupModule)){var r={requestType:"Paste",editorMode:n.editorMode,event:e},s=null;e&&!t.isNullOrUndefined(e.clipboardData)&&(s=e.clipboardData.getData("text/plain"));var a=e&&e.clipboardData&&e.clipboardData.items.length>0?e.clipboardData.items[0].getAsFile():null;null!==s&&n.notify(G,{file:a,args:e,text:s}),setTimeout(function(){n.formatter.onSuccess(n,r)},0)}else n.notify("pasteClean",{args:e});else e.preventDefault()})},i.prototype.clipboardAction=function(e,t){switch(e.toLowerCase()){case"cut":this.onCut(),this.formatter.onSuccess(this,{requestType:"Cut",editorMode:this.editorMode,event:t});break;case"copy":this.onCopy(),this.formatter.onSuccess(this,{requestType:"Copy",editorMode:this.editorMode,event:t});break;case"paste":this.onPaste(t)}},i.prototype.destroy=function(){if(!this.isDestroyed&&this.isRendered){if(null===this.element.offsetParent)return void this.toolbarModule.destroy();if(this.notify(F,{}),this.destroyDependentModules(),t.isNullOrUndefined(this.timeInterval)||(clearInterval(this.timeInterval),this.timeInterval=null),this.unWireEvents(),"TEXTAREA"===this.originalElement.tagName){t.isBlazor()&&(t.detach(this.valueContainer),this.valueContainer=this.element.querySelector(".e-blazor-hidden.e-control.e-richtexteditor")),this.element.parentElement.insertBefore(this.valueContainer,this.element),this.valueContainer.id=this.getID(),this.valueContainer.removeAttribute("name"),t.detach(this.element),""!==this.originalElement.innerHTML.trim()?t.isBlazor()||(this.valueContainer.value=this.originalElement.innerHTML.trim(),this.setProperties({value:t.isNullOrUndefined(this.initialValue)?null:this.initialValue},!0)):this.valueContainer.value=this.isBlazor()?this.defaultResetValue:this.valueContainer.defaultValue,this.element=this.valueContainer;for(i=0;i<this.originalElement.classList.length;i++)t.addClass([this.element],this.originalElement.classList[i]);t.removeClass([this.element],"e-rte-hidden")}else""!==this.originalElement.innerHTML.trim()?(this.element.innerHTML=this.originalElement.innerHTML.trim(),this.setProperties({value:t.isNullOrUndefined(this.initialValue)?null:this.initialValue},!0)):this.element.innerHTML="";if(this.placeholder&&this.placeHolderWrapper&&(this.placeHolderWrapper=null),!t.isNullOrUndefined(this.cssClass))for(var e=this.cssClass.split(" "),i=0;i<e.length;i++)""!==e[i].trim()&&t.removeClass([this.element],e[i]);this.removeHtmlAttributes(),this.removeAttributes(),n.prototype.destroy.call(this),this.isRendered=!1,this.enablePersistence&&window.localStorage.removeItem(this.getModuleName()+this.element.id)}},i.prototype.removeHtmlAttributes=function(){if(this.htmlAttributes)for(var e=Object.keys(this.htmlAttributes),t=0;t<e.length&&this.element.hasAttribute(e[t]);t++)this.element.removeAttribute(e[t])},i.prototype.removeAttributes=function(){this.enabled||t.removeClass([this.element],"e-disabled"),this.enableRtl&&t.removeClass([this.element],"e-rtl"),this.readonly&&t.removeClass([this.element],"e-rte-readonly"),""!==this.element.style.width&&""===this.originalElement.style.width&&this.element.style.removeProperty("width"),""!==this.element.style.height&&""===this.originalElement.style.height&&this.element.style.removeProperty("height"),this.element.removeAttribute("aria-disabled"),this.element.removeAttribute("role"),this.element.removeAttribute("tabindex")},i.prototype.destroyDependentModules=function(){this.renderModule.destroy(),this.formatter.editorManager.undoRedoManager.destroy(),this.sourceCodeModule.destroy()},i.prototype.getContent=function(){return this.iframeSettings.enable&&t.isBlazor()?this.inputElement:this.contentModule.getPanel()},i.prototype.getText=function(){return this.contentModule.getText()},i.prototype.getSelectedHtml=function(){var e,t=this.createElement("div"),n=this.contentModule.getDocument().getSelection();if(n.rangeCount>0){var i=(e=n.getRangeAt(0)).cloneContents();t.appendChild(i)}return t.innerHTML},i.prototype.showInlineToolbar=function(){if(this.inlineMode.enable){var e=this.getRange(),t="#text"===e.endContainer.nodeName?e.endContainer.parentElement:e.endContainer,n=e.getClientRects()[0].left,i=e.getClientRects()[0].top;this.quickToolbarModule.showInlineQTBar(n,i,t)}},i.prototype.hideInlineToolbar=function(){this.quickToolbarModule.hideInlineQTBar()},i.prototype.getModuleName=function(){return"richtexteditor"},i.prototype.onPropertyChanged=function(e,i){for(var o=0,r=Object.keys(e);o<r.length;o++){var s=r[o];switch(s){case"value":var a=e[s],l="HTML"===this.editorMode?w(a,this):a;t.isNullOrUndefined(a)||""===a||(this.value=this.serializeValue(this.enableHtmlEncode?this.encode(x(l)):l)),this.updatePanelValue(),this.setPlaceHolder(),this.notify("xhtmlValidation",{module:"XhtmlValidation",newProp:e,oldProp:i}),this.enableXhtml&&this.setProperties({value:this.getXhtml()},!0),this.showCharCount&&this.countModule.refresh();break;case"valueTemplate":this.setValue(),this.showCharCount&&this.countModule.refresh();break;case"width":this.setWidth(e[s]),this.toolbarSettings.enable&&(this.toolbarModule.refreshToolbarOverflow(),this.resizeHandler());break;case"height":this.setHeight(e[s]),this.setContentHeight(),this.autoResize();break;case"readonly":this.setReadOnly(!1);break;case"cssClass":this.element.classList.remove(i[s]),this.setCssClass(e[s]);break;case"enabled":this.setEnable();break;case"enableRtl":this.updateRTL();break;case"placeholder":this.placeholder=e[s],this.setPlaceHolder();break;case"htmlAttributes":j(this.htmlAttributes,this,!1,!1);break;case"iframeSettings":var d=i[s];if(d.resources){var c=this.contentModule.getDocument().querySelector("head"),p=void 0;d.resources.scripts&&(p=c.querySelectorAll(".rte-iframe-script-sheet"),this.removeSheets(p)),d.resources.styles&&(p=c.querySelectorAll(".rte-iframe-style-sheet"),this.removeSheets(p))}this.setIframeSettings();break;case"locale":n.prototype.refresh.call(this);break;case"inlineMode":this.notify(_,{module:"quickToolbar",newProp:e,oldProp:i}),this.setContentHeight();break;case"toolbarSettings":this.notify(_,{module:"toolbar",newProp:e,oldProp:i}),this.setContentHeight();break;case"maxLength":this.showCharCount&&this.countModule.refresh();break;case"showCharCount":e[s]&&this.countModule?this.countModule.renderCount():!1===e[s]&&this.countModule&&this.countModule.destroy();break;case"enableHtmlEncode":this.updateValueData(),this.updatePanelValue(),this.setPlaceHolder(),this.showCharCount&&this.countModule.refresh();break;case"undoRedoSteps":case"undoRedoTimer":this.formatter.editorManager.observer.notify("model_changed",{newProp:e,oldProp:i});break;case"enableXhtml":this.notify("xhtmlValidation",{module:"XhtmlValidation",newProp:e,oldProp:i});break;case"quickToolbarSettings":e.quickToolbarSettings.showOnRightClick?this.wireContextEvent():this.unWireContextEvent(),this.notify(_,{newProp:e,oldProp:i});break;default:this.notify(_,{newProp:e,oldProp:i})}}},i.prototype.updateValueData=function(){this.enableHtmlEncode?this.setProperties({value:this.encode(x(this.inputElement.innerHTML))},!0):this.setProperties({value:/<[a-z][\s\S]*>/i.test(this.inputElement.innerHTML)?this.inputElement.innerHTML:x(this.inputElement.innerHTML)})},i.prototype.removeSheets=function(e){var n;for(n=0;n<e.length;n++)t.detach(e[n])},i.prototype.updatePanelValue=function(){var e=this.value;e=this.enableHtmlEncode&&this.value?x(e):e;var t=this.element.querySelector(".e-rte-srctextarea");e?(t&&"block"===t.style.display&&(t.value=this.value),this.valueContainer&&(this.valueContainer.value=this.enableHtmlEncode?this.value:e),"HTML"===this.editorMode&&this.inputElement&&this.inputElement.innerHTML.trim()!==e.trim()?this.inputElement.innerHTML=e:"Markdown"===this.editorMode&&this.inputElement&&this.inputElement.value.trim()!==e.trim()&&(this.inputElement.value=e)):(t&&"block"===t.style.display&&(t.value=""),"HTML"===this.editorMode?this.inputElement.innerHTML="<p><br/></p>":this.inputElement.value="",this.valueContainer&&(this.valueContainer.value="")),this.showCharCount&&this.countModule.refresh()},i.prototype.setHeight=function(e){this.element.style.height="auto"!==e?t.formatUnit(e):"auto","Expand"===this.toolbarSettings.type&&("string"==typeof this.height&&this.height.indexOf("px")>-1||"number"==typeof this.height)?this.element.classList.add("e-rte-fixed-tb-expand"):this.element.classList.remove("e-rte-fixed-tb-expand")},i.prototype.setPlaceHolder=function(){this.inputElement&&this.placeholder&&!0!==this.iframeSettings.enable&&("Markdown"!==this.editorMode?(this.placeHolderWrapper||(this.placeHolderWrapper=this.createElement("span",{className:"rte-placeholder e-rte-placeholder"}),this.inputElement&&this.inputElement.parentElement.insertBefore(this.placeHolderWrapper,this.inputElement),t.attributes(this.placeHolderWrapper,{style:"font-size: 14px; padding: 16px; margin-left: 0px; margin-right: 0px;"})),this.placeHolderWrapper.innerHTML=this.placeholder,0!==this.inputElement.textContent.length||t.isNullOrUndefined(this.inputElement.firstChild)||"P"!==this.inputElement.firstChild.nodeName||t.isNullOrUndefined(this.inputElement.firstChild.firstChild)||"BR"!==this.inputElement.firstChild.firstChild.nodeName||"<p><br></p><p><br></p>"===this.inputElement.innerHTML?this.placeHolderWrapper.style.display="none":this.placeHolderWrapper.style.display="block"):this.inputElement.setAttribute("placeholder",this.placeholder))},i.prototype.setWidth=function(e){"auto"!==e?t.setStyleAttribute(this.element,{width:t.formatUnit(this.width)}):this.element.style.width="auto"},i.prototype.setCssClass=function(e){if(!t.isNullOrUndefined(e))for(var n=e.split(" "),i=0;i<n.length;i++)""!==n[i].trim()&&this.element.classList.add(n[i])},i.prototype.updateRTL=function(){this.notify(K,{enableRtl:this.enableRtl}),this.enableRtl?this.element.classList.add("e-rtl"):this.element.classList.remove("e-rtl")},i.prototype.updateReadOnly=function(){this.notify("readOnlyMode",{editPanel:this.inputElement,mode:this.readonly})},i.prototype.setReadOnly=function(e){this.updateReadOnly(),e||(this.readonly&&this.enabled?this.unbindEvents():this.enabled&&this.bindEvents())},i.prototype.print=function(){var e,n=this,i={element:this.inputElement,requestType:"print",cancel:!1};this.trigger("actionBegin",i,function(i){if(e=window.open("","print","height="+window.outerHeight+",width="+window.outerWidth),"msie"===t.Browser.info.name&&e.resizeTo(screen.availWidth,screen.availHeight),e=t.print(n.inputElement,e),!i.cancel){var o={requestType:"print"};n.trigger("actionComplete",o)}})},i.prototype.refreshUI=function(){this.renderModule.refresh()},i.prototype.showFullScreen=function(){this.fullScreenModule.showFullScreen()},i.prototype.enableToolbarItem=function(e,t){this.toolbarModule.enableTBarItems(this.getBaseToolbarObject(),e,!0,t)},i.prototype.disableToolbarItem=function(e,t){this.toolbarModule.enableTBarItems(this.getBaseToolbarObject(),e,!1,t)},i.prototype.removeToolbarItem=function(e){this.toolbarModule.removeTBarItems(e)},i.prototype.getRange=function(){return this.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument())},i.prototype.initializeServices=function(){this.serviceLocator.register("rendererFactory",new Fe),this.serviceLocator.register("rteLocale",this.localeObj=new t.L10n(this.getModuleName(),Me,this.locale)),this.serviceLocator.register("dialogRenderObject",new Sn(this))},i.prototype.RTERender=function(){var n=this.serviceLocator.getService("rendererFactory");this.contentModule=n.getRenderer(e.RenderType.Content),this.fullScreenModule=new gn(this),this.renderModule.render(),this.inputElement=this.contentModule.getEditPanel(),this.setHeight(this.height),j(this.htmlAttributes,this,!1,!0),this.iframeSettings&&this.setIframeSettings(),this.setCssClass(this.cssClass),this.updateEnable(),this.setPlaceHolder(),this.updateRTL(),this.updateReadOnly(),this.updatePanelValue(),this.enableHtmlEncode&&!t.isNullOrUndefined(this.value)&&this.setProperties({value:this.encode(x(this.value))})},i.prototype.setIframeSettings=function(){if(this.iframeSettings.resources){var e=this.iframeSettings.resources.styles,t=this.iframeSettings.resources.scripts;this.iframeSettings.resources.scripts.length>0&&this.InjectSheet(!0,t),this.iframeSettings.resources.styles.length>0&&this.InjectSheet(!1,e)}this.iframeSettings.attributes&&j(this.iframeSettings.attributes,this,!0,!1)},i.prototype.InjectSheet=function(e,t){try{if(t&&t.length>0)for(var n=this.contentModule.getDocument().querySelector("head"),i=0;i<t.length;i++)if(e){var o=this.createScriptElement();o.src=t[i],n.appendChild(o)}else{var r=this.createStyleElement();r.href=t[i],n.appendChild(r)}}catch(e){return}},i.prototype.createScriptElement=function(){var e=this.createElement("script",{className:"rte-iframe-script-sheet"});return e.type="text/javascript",e},i.prototype.createStyleElement=function(){var e=this.createElement("link",{className:"rte-iframe-style-sheet"});return e.rel="stylesheet",e},i.prototype.isBlazor=function(){return!!t.isBlazor()},i.prototype.setValue=function(){if(this.valueTemplate)if("string"==typeof this.valueTemplate)this.setProperties({value:this.valueTemplate});else{for(var e=t.compile(this.valueTemplate)({}),n=0;n<e.length;n++){var i=e[n];t.append([i],this.element)}this.setProperties({value:this.element.innerHTML.trim()})}else{var o=!t.isNullOrUndefined(this.element.innerHTML)&&this.element.innerHTML.replace(/<(\/?|\!?)(!--!--)>/g,"").trim();""!==o&&("TEXTAREA"===this.element.tagName?this.setProperties({value:x(o)}):this.setProperties({value:o}))}},i.prototype.updateResizeFlag=function(){this.isResizeInitialized=!0},i.prototype.getInsertImgMaxWidth=function(){var e=this.insertImageSettings.maxWidth,n=this.contentModule.getEditPanel(),i=window.getComputedStyle(n),o=n.offsetWidth-(14+parseFloat(i.paddingLeft.split("px")[0])+parseFloat(i.paddingRight.split("px")[0])+parseFloat(i.marginLeft.split("px")[0])+parseFloat(i.marginRight.split("px")[0]));return t.isNullOrUndefined(e)?o:e},i.prototype.setContentHeight=function(n,i){var o,r,s,a=0,l=this.sourceCodeModule.getPanel()&&"block"===this.sourceCodeModule.getPanel().parentElement.style.display?this.sourceCodeModule.getPanel().parentElement:this.contentModule.getPanel(),d=this.element.offsetHeight;0!==this.element.offsetHeight||"auto"===this.height||this.getToolbar()||(d=parseInt(this.height,10),(s="string"==typeof this.height&&this.height.indexOf("%")>-1)&&(r=this.height));var c=this.getToolbar()?this.toolbarModule.getToolbarHeight():0,p=this.element.querySelector(".e-resize-handle"),h=this.enableResize?t.isNullOrUndefined(p)?0:p.offsetHeight+8:0,u=this.getToolbar()?this.toolbarModule.getExpandTBarPopHeight():0;if(this.toolbarSettings.type===e.ToolbarType.Expand&&i&&"preview"!==n?(o="auto"===this.height&&0===h?"auto":d-(c+u+h)+"px",a=this.toolbarSettings.enableFloating?0:u):o="auto"!==this.height||this.element.classList.contains("e-rte-full-screen")||this.isResizeInitialized?s?r:d-(c+h)+"px":"auto",t.setStyleAttribute(l,{height:o,marginTop:a+"px"}),this.iframeSettings.enable&&"sourceCode"===n){var m=t.select(".e-rte-content",this.element);t.setStyleAttribute(m,{height:o,marginTop:a+"px"})}if(this.toolbarSettings.enableFloating&&this.getToolbar()&&!this.inlineMode.enable){var g=(i?c+u:c)+"px";t.setStyleAttribute(this.getToolbar().parentElement,{height:g})}0===h&&this.autoResize()},i.prototype.getHtml=function(){return this.value},i.prototype.getXhtml=function(){var e=this.value;return this.enableXhtml&&(e=this.htmlEditorModule.xhtmlValidation.selfEncloseValidation(e)),e},i.prototype.showSourceCode=function(){this.readonly||this.notify("sourceCode",{})},i.prototype.getCharCount=function(){return("Markdown"===this.editorMode?this.inputElement.value.trim():this.inputElement.textContent.trim()).length},i.prototype.getBaseToolbarObject=function(){return!this.inlineMode.enable||t.Browser.isDevice&&!u()?this.toolbarModule&&this.toolbarModule.getBaseToolbar():this.quickToolbarModule&&this.quickToolbarModule.getInlineBaseToolbar()},i.prototype.getToolbar=function(){return this.toolbarModule?this.toolbarModule.getToolbarElement():null},i.prototype.getToolbarElement=function(){return this.toolbarModule&&this.toolbarModule.getToolbarElement()},i.prototype.getID=function(){return"TEXTAREA"===this.originalElement.tagName?this.valueContainer.id:this.element.id},i.prototype.mouseDownHandler=function(e){var n=e.touches?e.changedTouches[0]:e;t.addClass([this.element],["e-focused"]),this.preventDefaultResize(e),this.notify(W,{args:e}),this.clickPoints={clientX:n.clientX,clientY:n.clientY}},i.prototype.preventImgResize=function(e){"img"===e.target.nodeName.toLocaleLowerCase()&&e.preventDefault()},i.prototype.preventDefaultResize=function(e){"msie"===t.Browser.info.name?this.contentModule.getEditPanel().addEventListener("mscontrolselect",this.preventImgResize):"mozilla"===t.Browser.info.name&&(this.contentModule.getDocument().execCommand("enableObjectResizing",!1,"false"),this.contentModule.getDocument().execCommand("enableInlineTableEditing",!1,"false"))},i.prototype.defaultResize=function(e){"msie"===t.Browser.info.name?this.contentModule.getEditPanel().removeEventListener("mscontrolselect",this.preventImgResize):"mozilla"===t.Browser.info.name&&(this.contentModule.getDocument().execCommand("enableObjectResizing",!0,"true"),this.contentModule.getDocument().execCommand("enableInlineTableEditing",!0,"true"))},i.prototype.resizeHandler=function(){var e=!1;if(!document.body.contains(this.element))return void document.defaultView.removeEventListener("resize",this.onResizeHandler,!0);this.toolbarSettings.enable&&!this.inlineMode.enable&&(this.toolbarModule.refreshToolbarOverflow(),e=this.toolbarModule.baseToolbar.toolbarObj.element.classList.contains("e-expand-open")),this.setContentHeight("",e),this.notify("resize",null)},i.prototype.scrollHandler=function(e){this.notify("scroll",{args:e})},i.prototype.contentScrollHandler=function(e){this.notify("contentscroll",{args:e})},i.prototype.focusHandler=function(e){if(!this.isRTE||this.isFocusOut){this.isRTE=!this.isFocusOut,this.isFocusOut=!1,t.addClass([this.element],["e-focused"]),"HTML"===this.editorMode?this.cloneValue="<p><br></p>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(x(this.inputElement.innerHTML)):this.inputElement.innerHTML:this.cloneValue=""===this.inputElement.value?null:this.inputElement.value;var n=document.activeElement;if((n===this.element||n===this.getToolbarElement()||n===this.contentModule.getEditPanel()||this.iframeSettings.enable&&n===this.contentModule.getPanel()&&e.target&&!e.target.classList.contains("e-img-inner")&&e.target&&e.target.parentElement&&!e.target.parentElement.classList.contains("e-img-wrap")||t.closest(n,".e-rte-toolbar")===this.getToolbarElement())&&(this.contentModule.getEditPanel().focus(),!t.isNullOrUndefined(this.getToolbarElement()))){this.getToolbarElement().setAttribute("tabindex","-1");for(var i=this.getToolbarElement().querySelectorAll('[tabindex="0"]'),o=0;o<i.length;o++)i[o].setAttribute("tabindex","-1")}this.preventDefaultResize(e),this.trigger("focus",{event:e,isInteracted:0!==Object.keys(e).length}),!t.isNullOrUndefined(this.saveInterval)&&this.saveInterval>0&&!this.autoSaveOnIdle&&(this.timeInterval=setInterval(this.updateValueOnIdle.bind(this),this.saveInterval)),t.EventHandler.add(document,"mousedown",this.onDocumentClick,this)}if(!t.isNullOrUndefined(this.getToolbarElement()))for(var r=this.getToolbarElement().querySelectorAll("input,select,button,a,[tabindex]"),o=0;o<r.length;o++)r[o].classList.contains("e-rte-dropdown-btn")||r[o].classList.contains("e-insert-table-btn")||r[o].hasAttribute("tabindex")&&"-1"===r[o].getAttribute("tabindex")||r[o].setAttribute("tabindex","-1")},i.prototype.getUpdatedValue=function(){var e;t.isNullOrUndefined(this.tableModule)||this.tableModule.removeResizeElement();var n=this.element.querySelector(".e-rte-srctextarea");return"HTML"===this.editorMode?(e="<p><br></p>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(x(this.inputElement.innerHTML)):this.inputElement.innerHTML,n&&"block"===n.style.display&&(e=n.value)):e=""===this.inputElement.value?null:this.inputElement.value,e},i.prototype.updateValueOnIdle=function(){(t.isNullOrUndefined(this.tableModule)||t.isNullOrUndefined(this.inputElement.querySelector(".e-table-box.e-rbox-select")))&&(this.setProperties({value:this.getUpdatedValue()},!0),this.valueContainer.value=this.value,this.invokeChangeEvent())},i.prototype.updateIntervalValue=function(){clearTimeout(this.idleInterval),this.idleInterval=setTimeout(this.updateValueOnIdle.bind(this),0)},i.prototype.updateStatus=function(e){if(!t.isNullOrUndefined(e.html)||!t.isNullOrUndefined(e.markdown)){var n=this.formatter.editorManager.undoRedoManager.getUndoStatus(),i={undo:n.undo,redo:n.redo,html:e.html,markdown:e.markdown};this.trigger("updatedToolbarStatus",i)}},i.prototype.onDocumentClick=function(e){var n=e.target,i=t.closest(n,"."+Y);this.element.contains(e.target)||document===e.target||i===this.element||t.closest(n,'[aria-owns="'+this.getID()+'"]')||(this.isBlur=!0,this.isRTE=!1),this.notify("docClick",{args:e}),e.detail>3&&e.preventDefault()},i.prototype.blurHandler=function(e){var n=e.relatedTarget;if(n){var i=t.closest(n,"."+Y);i&&i===this.element?(this.isBlur=!1,n===this.getToolbarElement()&&n.setAttribute("tabindex","-1")):t.closest(n,'[aria-owns="'+this.getID()+'"]')?this.isBlur=!1:(this.isBlur=!0,n=null)}if(this.isBlur&&t.isNullOrUndefined(n)){t.removeClass([this.element],["e-focused"]),this.notify("focusChange",{});var o=this.getUpdatedValue();this.setProperties({value:o}),this.notify("toolbar-refresh",{args:e,documentNode:document}),this.invokeChangeEvent(),this.isFocusOut=!0,this.isBlur=!1,S(this.valueContainer,"focusout"),this.defaultResize(e),this.trigger("blur",{event:e,isInteracted:0!==Object.keys(e).length}),t.isNullOrUndefined(this.timeInterval)||(clearInterval(this.timeInterval),this.timeInterval=null),t.EventHandler.remove(document,"mousedown",this.onDocumentClick)}else this.isRTE=!0},i.prototype.contentChanged=function(){this.autoSaveOnIdle&&(t.isNullOrUndefined(this.saveInterval)||(clearTimeout(this.timeInterval),this.timeInterval=setTimeout(this.updateIntervalValue.bind(this),this.saveInterval)))},i.prototype.invokeChangeEvent=function(){var e,t={value:e=this.enableXhtml?this.getXhtml():this.value};this.value!==this.cloneValue&&(this.trigger("change",t),this.cloneValue=this.value)},i.prototype.wireScrollElementsEvents=function(){this.scrollParentElements=o.getScrollableParent(this.element);for(var e=0,n=this.scrollParentElements;e<n.length;e++){var i=n[e];t.EventHandler.add(i,"scroll",this.scrollHandler,this)}this.iframeSettings.enable||t.EventHandler.add(this.contentModule.getPanel(),"scroll",this.contentScrollHandler,this)},i.prototype.wireContextEvent=function(){this.quickToolbarSettings.showOnRightClick&&(t.EventHandler.add(this.inputElement,"contextmenu",this.contextHandler,this),t.Browser.isDevice&&(this.touchModule=new t.Touch(this.inputElement,{tapHold:this.touchHandler.bind(this),tapHoldThreshold:500})))},i.prototype.unWireContextEvent=function(){t.EventHandler.remove(this.inputElement,"contextmenu",this.contextHandler),t.Browser.isDevice&&this.touchModule&&this.touchModule.destroy()},i.prototype.unWireScrollElementsEvents=function(){this.scrollParentElements=o.getScrollableParent(this.element);for(var e=0,n=this.scrollParentElements;e<n.length;e++){var i=n[e];t.EventHandler.remove(i,"scroll",this.scrollHandler)}this.iframeSettings.enable||t.EventHandler.remove(this.contentModule.getPanel(),"scroll",this.contentScrollHandler)},i.prototype.touchHandler=function(e){this.notifyMouseUp(e.originalEvent),this.triggerEditArea(e.originalEvent)},i.prototype.contextHandler=function(e){var n=t.closest(e.target,"a, table, img");!1!==this.inlineMode.onSelection&&(t.isNullOrUndefined(n)||!this.inputElement.contains(n)||"IMG"!==n.tagName&&"TABLE"!==n.tagName&&"A"!==n.tagName)||e.preventDefault()},i.prototype.resetHandler=function(){var e=this.valueContainer.defaultValue.trim();this.setProperties({value:""===e?null:this.isBlazor()?this.defaultResetValue:e})},i.prototype.autoResize=function(){var e=this;if("auto"===this.height){if("Markdown"===this.editorMode)setTimeout(function(){e.setAutoHeight(e.inputElement)},0);else if(this.iframeSettings.enable){var t=this.element.querySelector("#"+this.getID()+"_rte-view");setTimeout(function(){e.setAutoHeight(t)},100),this.inputElement.style.overflow="hidden"}}else this.inputElement.style.overflow=null},i.prototype.setAutoHeight=function(e){t.isNullOrUndefined(e)||(e.style.height="",e.style.height=this.inputElement.scrollHeight+"px",e.style.overflow="hidden")},i.prototype.wireEvents=function(){this.element.addEventListener("focusin",this.onFocusHandler,!0),this.element.addEventListener("focusout",this.onBlurHandler,!0),this.on("content-changed",this.contentChanged,this),this.on("resizeInitialized",this.updateResizeFlag,this),this.on("updateTbItemsStatus",this.updateStatus,this),this.readonly&&this.enabled||this.bindEvents()},i.prototype.restrict=function(e){if(this.maxLength>=0){for(var t="Markdown"===this.editorMode?this.contentModule.getText():e.currentTarget.textContent.trim(),n=[8,16,17,37,38,39,40,46,65],i=void 0,o=0;o<=n.length-1;o++)if(e.which===n[o]){if(e.ctrlKey&&65===e.which)return;if(65!==e.which)return void(i=n[o])}t.length>=this.maxLength&&-1!==this.maxLength&&e.which!==i&&e.preventDefault()}},i.prototype.bindEvents=function(){this.keyboardModule=new Ge(this.inputElement,{keyAction:this.keyDown.bind(this),keyConfigs:Qn({},this.formatter.keyConfig,this.keyConfig),eventName:"keydown"});var e=t.closest(this.valueContainer,"form");e&&t.EventHandler.add(e,"reset",this.resetHandler,this),t.EventHandler.add(this.inputElement,"keyup",this.keyUp,this),t.EventHandler.add(this.inputElement,"paste",this.onPaste,this),t.EventHandler.add(this.inputElement,t.Browser.touchEndEvent,t.debounce(this.mouseUp,30),this),t.EventHandler.add(this.inputElement,t.Browser.touchStartEvent,this.mouseDownHandler,this),this.wireContextEvent(),this.formatter.editorManager.observer.on("keydown-handler",this.editorKeyDown,this),this.element.ownerDocument.defaultView.addEventListener("resize",this.onResizeHandler,!0),this.iframeSettings.enable&&(t.EventHandler.add(this.inputElement,"focusin",this.focusHandler,this),t.EventHandler.add(this.inputElement,"focusout",this.blurHandler,this),t.EventHandler.add(this.inputElement.ownerDocument,"scroll",this.contentScrollHandler,this),t.EventHandler.add(this.inputElement.ownerDocument,t.Browser.touchStartEvent,this.onIframeMouseDown,this)),this.wireScrollElementsEvents()},i.prototype.onIframeMouseDown=function(e){this.isBlur=!1,this.notify("iframe-click",e)},i.prototype.editorKeyDown=function(e){switch(e.event.action){case"copy":this.onCopy();break;case"cut":this.onCut()}!e.callBack||"copy"!==e.event.action&&"cut"!==e.event.action&&"delete"!==e.event.action||e.callBack({requestType:e.event.action,editorMode:"HTML",event:e.event})},i.prototype.unWireEvents=function(){this.element.removeEventListener("focusin",this.onFocusHandler,!0),this.element.removeEventListener("focusout",this.onBlurHandler,!0),this.off("content-changed",this.contentChanged),this.off("resizeInitialized",this.updateResizeFlag),this.off("updateTbItemsStatus",this.updateStatus),this.readonly&&this.enabled||this.unbindEvents()},i.prototype.unbindEvents=function(){this.keyboardModule&&this.keyboardModule.destroy();var e=t.closest(this.valueContainer,"form");e&&t.EventHandler.remove(e,"reset",this.resetHandler),t.EventHandler.remove(this.inputElement,"keyup",this.keyUp),t.EventHandler.remove(this.inputElement,"paste",this.onPaste),t.EventHandler.remove(this.inputElement,t.Browser.touchEndEvent,t.debounce(this.mouseUp,30)),t.EventHandler.remove(this.inputElement,t.Browser.touchStartEvent,this.mouseDownHandler),this.unWireContextEvent(),this.formatter&&this.formatter.editorManager.observer.off("keydown-handler",this.editorKeyDown),this.element.ownerDocument.defaultView.removeEventListener("resize",this.onResizeHandler,!0),this.iframeSettings.enable&&(t.EventHandler.remove(this.inputElement,"focusin",this.focusHandler),t.EventHandler.remove(this.inputElement,"focusout",this.blurHandler),t.EventHandler.remove(this.inputElement.ownerDocument,"scroll",this.contentScrollHandler),t.EventHandler.remove(this.inputElement.ownerDocument,t.Browser.touchStartEvent,this.onIframeMouseDown)),this.unWireScrollElementsEvents()},Vn([t.Complex({},wn)],i.prototype,"toolbarSettings",void 0),Vn([t.Complex({},On)],i.prototype,"quickToolbarSettings",void 0),Vn([t.Complex({},Dn)],i.prototype,"pasteCleanupSettings",void 0),Vn([t.Complex({},jn)],i.prototype,"iframeSettings",void 0),Vn([t.Complex({},kn)],i.prototype,"insertImageSettings",void 0),Vn([t.Complex({},xn)],i.prototype,"tableSettings",void 0),Vn([t.Property(0)],i.prototype,"floatingToolbarOffset",void 0),Vn([t.Complex({},_n)],i.prototype,"inlineMode",void 0),Vn([t.Complex({},Ln)],i.prototype,"fileManagerSettings",void 0),Vn([t.Property("100%")],i.prototype,"width",void 0),Vn([t.Property(!1)],i.prototype,"enablePersistence",void 0),Vn([t.Property(!1)],i.prototype,"enableResize",void 0),Vn([t.Property({})],i.prototype,"htmlAttributes",void 0),Vn([t.Property(null)],i.prototype,"placeholder",void 0),Vn([t.Property(!1)],i.prototype,"autoSaveOnIdle",void 0),Vn([t.Property(!1)],i.prototype,"readonly",void 0),Vn([t.Property(!0)],i.prototype,"enabled",void 0),Vn([t.Property(!0)],i.prototype,"enableHtmlSanitizer",void 0),Vn([t.Property(!1)],i.prototype,"enableHtmlEncode",void 0),Vn([t.Property(!1)],i.prototype,"enableXhtml",void 0),Vn([t.Property("auto")],i.prototype,"height",void 0),Vn([t.Property(null)],i.prototype,"cssClass",void 0),Vn([t.Property(null)],i.prototype,"value",void 0),Vn([t.Property(30)],i.prototype,"undoRedoSteps",void 0),Vn([t.Property(300)],i.prototype,"undoRedoTimer",void 0),Vn([t.Property("HTML")],i.prototype,"editorMode",void 0),Vn([t.Property(null)],i.prototype,"keyConfig",void 0),Vn([t.Property(!1)],i.prototype,"showCharCount",void 0),Vn([t.Property(!1)],i.prototype,"enableTabKey",void 0),Vn([t.Property(!1)],i.prototype,"enableAutoUrl",void 0),Vn([t.Property(-1)],i.prototype,"maxLength",void 0),Vn([t.Complex({},In)],i.prototype,"format",void 0),Vn([t.Complex({},Mn)],i.prototype,"fontFamily",void 0),Vn([t.Complex({},Rn)],i.prototype,"fontSize",void 0),Vn([t.Complex({},Bn)],i.prototype,"fontColor",void 0),Vn([t.Complex({},Pn)],i.prototype,"backgroundColor",void 0),Vn([t.Property(null)],i.prototype,"valueTemplate",void 0),Vn([t.Property(1e4)],i.prototype,"saveInterval",void 0),Vn([t.Event()],i.prototype,"actionBegin",void 0),Vn([t.Event()],i.prototype,"actionComplete",void 0),Vn([t.Event()],i.prototype,"beforeDialogOpen",void 0),Vn([t.Event()],i.prototype,"dialogOpen",void 0),Vn([t.Event()],i.prototype,"beforeDialogClose",void 0),Vn([t.Event()],i.prototype,"dialogClose",void 0),Vn([t.Event()],i.prototype,"beforeQuickToolbarOpen",void 0),Vn([t.Event()],i.prototype,"quickToolbarOpen",void 0),Vn([t.Event()],i.prototype,"quickToolbarClose",void 0),Vn([t.Event()],i.prototype,"toolbarStatusUpdate",void 0),Vn([t.Event()],i.prototype,"updatedToolbarStatus",void 0),Vn([t.Event()],i.prototype,"imageSelected",void 0),Vn([t.Event()],i.prototype,"beforeImageUpload",void 0),Vn([t.Event()],i.prototype,"imageUploading",void 0),Vn([t.Event()],i.prototype,"imageUploadSuccess",void 0),Vn([t.Event()],i.prototype,"imageUploadFailed",void 0),Vn([t.Event()],i.prototype,"imageRemoving",void 0),Vn([t.Event()],i.prototype,"afterImageDelete",void 0),Vn([t.Event()],i.prototype,"created",void 0),Vn([t.Event()],i.prototype,"destroyed",void 0),Vn([t.Event()],i.prototype,"beforeSanitizeHtml",void 0),Vn([t.Event()],i.prototype,"blur",void 0),Vn([t.Event()],i.prototype,"toolbarClick",void 0),Vn([t.Event()],i.prototype,"focus",void 0),Vn([t.Event()],i.prototype,"change",void 0),Vn([t.Event()],i.prototype,"resizing",void 0),Vn([t.Event()],i.prototype,"resizeStart",void 0),Vn([t.Event()],i.prototype,"resizeStop",void 0),Vn([t.Event()],i.prototype,"beforePasteCleanup",void 0),Vn([t.Event()],i.prototype,"afterPasteCleanup",void 0),Vn([t.Event()],i.prototype,"beforeImageDrop",void 0),Vn([t.Property(null)],i.prototype,"formatter",void 0),i=Vn([t.NotifyPropertyChanges],i)}(t.Component);return Wn.Inject(qe,bn,vn,$e,Je,pn,Et,Cn,hn,un,mn),e.Toolbar=qe,e.KeyboardEvents=Ge,e.BaseToolbar=Ue,e.BaseQuickToolbar=Xe,e.QuickToolbar=Je,e.Count=$e,e.ColorPickerInput=Ke,e.MarkdownToolbarStatus=tt,e.ExecCommandCallBack=nt,e.ToolbarAction=_e,e.MarkdownEditor=Et,e.HtmlEditor=pn,e.PasteCleanup=hn,e.Resize=un,e.DropDownButtons=je,e.FileManager=mn,e.FullScreen=gn,e.setAttributes=j,e.HtmlToolbarStatus=sn,e.XhtmlValidation=cn,e.HTMLFormatter=nn,e.Formatter=it,e.MarkdownFormatter=St,e.ContentRender=an,e.Render=fn,e.ToolbarRenderer=He,e.Link=bn,e.Image=vn,e.ViewSource=yn,e.Table=Cn,e.DialogRenderer=Sn,e.IframeContentRender=dn,e.MarkdownRender=Tt,e.PopupRenderer=Ye,e.RichTextEditor=Wn,e.executeGroup=Tn,e.created="create",e.destroyed="destroy",e.load="load",e.initialLoad="initial-load",e.contentChanged="content-changed",e.initialEnd=z,e.iframeMouseDown="iframe-click",e.destroy=F,e.toolbarClick="toolbarClick",e.toolbarRefresh="toolbar-refresh",e.refreshBegin="refresh-begin",e.toolbarUpdated="toolbar-updated",e.bindOnEnd="bind-on-end",e.renderColorPicker="render-color-picker",e.htmlToolbarClick="html-toolbar-click",e.markdownToolbarClick="markdown-toolbar-click",e.destroyColorPicker="destroy-color-picker",e.modelChanged=_,e.keyUp=q,e.keyDown=Q,e.mouseUp="mouseUp",e.toolbarCreated="toolbarCreated",e.toolbarRenderComplete="toolbarRenderComplete",e.enableFullScreen="enableFullScreen",e.disableFullScreen="disableFullScreen",e.dropDownSelect="dropDownSelect",e.beforeDropDownItemRender="beforeDropDownItemRender",e.execCommandCallBack="execCommandCallBack",e.imageToolbarAction="image-toolbar-action",e.linkToolbarAction="link-toolbar-action",e.windowResize="resize",e.resizeStart="resizeStart",e.onResize="resizing",e.resizeStop="resizeStop",e.undo="undo",e.redo="redo",e.insertLink="insertLink",e.unLink="unLink",e.editLink="editLink",e.openLink="openLink",e.actionBegin="actionBegin",e.actionComplete="actionComplete",e.updatedToolbarStatus="updatedToolbarStatus",e.actionSuccess="actionSuccess",e.updateToolbarItem="updateToolbarItem",e.insertImage="insertImage",e.insertCompleted="insertCompleted",e.imageLeft="justifyLeft",e.imageRight="justifyRight",e.imageCenter="justifyCenter",e.imageBreak="break",e.imageInline="inline",e.imageLink="insertImgLink",e.imageAlt="imgAltText",e.imageDelete="delete",e.imageCaption="caption",e.imageSize="imageSize",e.sourceCode="sourceCode",e.updateSource="updateSource",e.toolbarOpen="toolbarOpen",e.beforeDropDownOpen="beforeDropDownOpen",e.selectionSave=V,e.selectionRestore="selection-restore",e.expandPopupClick="expandPopupClick",e.count="count",e.contentFocus="contentFocus",e.contentBlur="contentBlur",e.mouseDown=W,e.sourceCodeMouseDown="sourceCodeMouseDown",e.editAreaClick="editAreaClick",e.scroll="scroll",e.contentscroll="contentscroll",e.colorPickerChanged="colorPickerChanged",e.tableColorPickerChanged="tableColorPickerChanged",e.focusChange="focusChange",e.selectAll="selectAll",e.selectRange="selectRange",e.getSelectedHtml="getSelectedHtml",e.renderInlineToolbar="renderInlineToolbar",e.paste=G,e.imgModule="imageModule",e.rtlMode=K,e.createTable="createTable",e.docClick="docClick",e.tableToolbarAction="table-toolbar-action",e.checkUndo=X,e.readOnlyMode="readOnlyMode",e.pasteClean="pasteClean",e.beforeDialogOpen="beforeDialogOpen",e.clearDialogObj="clearDialogObj",e.dialogOpen="dialogOpen",e.beforeDialogClose="beforeDialogClose",e.dialogClose="dialogClose",e.beforeQuickToolbarOpen="beforeQuickToolbarOpen",e.quickToolbarOpen="quickToolbarOpen",e.quickToolbarClose="quickToolbarClose",e.popupHide="popupHide",e.imageSelected="imageSelected",e.imageUploading="imageUploading",e.imageUploadSuccess="imageUploadSuccess",e.imageUploadFailed="imageUploadFailed",e.imageRemoving="imageRemoving",e.afterImageDelete="afterImageDelete",e.drop="drop",e.xhtmlValidation="xhtmlValidation",e.beforeImageUpload="beforeImageUpload",e.resizeInitialized="resizeInitialized",e.renderFileManager="renderFileManager",e.beforeImageDrop="beforeImageDrop",e.dynamicModule="dynamicModule",e.beforePasteCleanup="beforePasteCleanup",e.afterPasteCleanup="afterPasteCleanup",e.updateTbItemsStatus="updateTbItemsStatus",e.CLS_RTE=Y,e.CLS_RTL="e-rtl",e.CLS_CONTENT="e-content",e.CLS_DISABLED="e-disabled",e.CLS_SCRIPT_SHEET="rte-iframe-script-sheet",e.CLS_STYLE_SHEET="rte-iframe-style-sheet",e.CLS_TOOLBAR="e-rte-toolbar",e.CLS_TB_FIXED="e-rte-tb-fixed",e.CLS_TB_FLOAT="e-rte-tb-float",e.CLS_TB_ABS_FLOAT="e-rte-tb-abs-float",e.CLS_INLINE="e-rte-inline",e.CLS_TB_INLINE="e-rte-tb-inline",e.CLS_RTE_EXPAND_TB="e-rte-tb-expand",e.CLS_FULL_SCREEN="e-rte-full-screen",e.CLS_QUICK_TB=J,e.CLS_POP="e-rte-pop",e.CLS_TB_STATIC="e-tb-static",e.CLS_QUICK_POP="e-rte-quick-popup",e.CLS_QUICK_DROPDOWN="e-quick-dropdown",e.CLS_IMAGE_POP="e-rte-image-popup",e.CLS_INLINE_POP="e-rte-inline-popup",e.CLS_INLINE_DROPDOWN="e-rte-inline-dropdown",e.CLS_DROPDOWN_POPUP=$,e.CLS_DROPDOWN_ICONS="e-rte-dropdown-icons",e.CLS_DROPDOWN_ITEMS=Z,e.CLS_DROPDOWN_BTN=ee,e.CLS_RTE_CONTENT="e-rte-content",e.CLS_TB_ITEM=te,e.CLS_TB_EXTENDED="e-toolbar-extended",e.CLS_TB_WRAP="e-toolbar-wrapper",e.CLS_POPUP="e-popup",e.CLS_SEPARATOR="e-separator",e.CLS_MINIMIZE="e-minimize",e.CLS_MAXIMIZE="e-maximize",e.CLS_BACK="e-back",e.CLS_SHOW="e-show",e.CLS_HIDE="e-hide",e.CLS_VISIBLE="e-visible",e.CLS_FOCUS="e-focused",e.CLS_RM_WHITE_SPACE="e-remove-white-space",e.CLS_IMGRIGHT="e-imgright",e.CLS_IMGLEFT="e-imgleft",e.CLS_IMGCENTER="e-imgcenter",e.CLS_IMGBREAK=ne,e.CLS_CAPTION="e-img-caption",e.CLS_RTE_CAPTION="e-rte-img-caption",e.CLS_CAPINLINE="e-caption-inline",e.CLS_IMGINLINE=ie,e.CLS_COUNT=oe,e.CLS_WARNING="e-warning",e.CLS_ERROR="e-error",e.CLS_ICONS="e-icons",e.CLS_ACTIVE=re,e.CLS_EXPAND_OPEN="e-expand-open",e.CLS_RTE_ELEMENTS="e-rte-elements",e.CLS_TB_BTN="e-tbar-btn",e.CLS_HR_SEPARATOR="e-rte-horizontal-separator",e.CLS_TB_IOS_FIX="e-tbar-ios-fixed",e.CLS_FORMATS_TB_BTN="e-formats-tbar-btn",e.CLS_FONT_NAME_TB_BTN="e-font-name-tbar-btn",e.CLS_FONT_SIZE_TB_BTN="e-font-size-tbar-btn",e.CLS_FONT_COLOR_TARGET="e-rte-fontcolor-element",e.CLS_BACKGROUND_COLOR_TARGET="e-rte-backgroundcolor-element",e.CLS_COLOR_CONTENT="e-rte-color-content",e.CLS_FONT_COLOR_DROPDOWN="e-rte-fontcolor-dropdown",e.CLS_BACKGROUND_COLOR_DROPDOWN="e-rte-backgroundcolor-dropdown",e.CLS_COLOR_PALETTE="e-rte-square-palette",e.CLS_FONT_COLOR_PICKER="e-rte-fontcolor-colorpicker",e.CLS_BACKGROUND_COLOR_PICKER="e-rte-backgroundcolor-colorpicker",e.CLS_RTE_READONLY="e-rte-readonly",e.CLS_TABLE_SEL="e-cell-select",e.CLS_TB_DASH_BOR="e-dashed-border",e.CLS_TB_ALT_BOR=se,e.CLS_TB_COL_RES="e-column-resize",e.CLS_TB_ROW_RES="e-row-resize",e.CLS_TB_BOX_RES="e-table-box",e.CLS_RTE_HIDDEN="e-rte-hidden",e.CLS_RTE_PASTE_KEEP_FORMAT="e-rte-keepformat",e.CLS_RTE_PASTE_REMOVE_FORMAT="e-rte-removeformat",e.CLS_RTE_PASTE_PLAIN_FORMAT="e-rte-plainformat",e.CLS_RTE_PASTE_OK="e-rte-pasteok",e.CLS_RTE_PASTE_CANCEL="e-rte-pastecancel",e.CLS_RTE_DIALOG_MIN_HEIGHT="e-rte-dialog-minheight",e.CLS_RTE_RES_HANDLE="e-resize-handle",e.CLS_RTE_RES_EAST="e-south-east",e.CLS_RTE_IMAGE=ae,e.CLS_RESIZE="e-resize",e.CLS_IMG_FOCUS="e-img-focus",e.CLS_RTE_DRAG_IMAGE="e-rte-drag-image",e.CLS_RTE_UPLOAD_POPUP="e-rte-upload-popup",e.CLS_POPUP_OPEN="e-popup-open",e.CLS_IMG_RESIZE="e-img-resize",e.CLS_DROPAREA="e-droparea",e.CLS_IMG_INNER="e-img-inner",e.CLS_UPLOAD_FILES="e-upload-files",e.CLS_RTE_DIALOG_UPLOAD="e-rte-dialog-upload",e.CLS_RTE_RES_CNT="e-rte-resize",e.CLS_CUSTOM_TILE="e-custom-tile",e.CLS_NOCOLOR_ITEM="e-nocolor-item",e.CLS_TABLE=le,e.CLS_TABLE_BORDER="e-rte-table-border",e.CLS_RTE_TABLE_RESIZE="e-rte-table-resize",e.CLS_RTE_FIXED_TB_EXPAND="e-rte-fixed-tb-expand",e.CLS_RTE_TB_ENABLED="e-rte-toolbar-enabled",e.getIndex=c,e.hasClass=p,e.getDropDownValue=h,e.isIDevice=u,e.getFormattedFontSize=m,e.pageYOffset=g,e.getTooltipText=f,e.setToolbarStatus=b,e.getCollection=v,e.getTBarItemsIndex=y,e.updateUndoRedoStatus=C,e.dispatchEvent=S,e.parseHtml=T,e.getTextNodesUnder=E,e.toObjectLowerCase=N,e.getEditValue=w,e.updateTextNode=k,e.isEditableValueEmpty=L,e.decode=x,e.sanitizeHelper=O,e.convertToBlob=D,e.getLocaleFontFormat=M,e.updateDropDownFontFormatLocale=R,e.ServiceLocator=ze,e.RendererFactory=Fe,e.EditorManager=en,e.IMAGE=Nt,e.TABLE=wt,e.LINK=kt,e.INSERT_ROW="INSERT-ROW",e.INSERT_COLUMN="INSERT-COLUMN",e.DELETEROW="DELETE-ROW",e.DELETECOLUMN="DELETE-COLUMN",e.REMOVETABLE="REMOVE-TABLE",e.TABLEHEADER="TABLE-HEADER",e.TABLE_VERTICAL_ALIGN="TABLE_VERTICAL_ALIGN",e.TABLE_MERGE="TABLE_MERGE",e.TABLE_VERTICAL_SPLIT="TABLE_VERTICAL_SPLIT",e.TABLE_HORIZONTAL_SPLIT="TABLE_HORIZONTAL_SPLIT",e.TABLE_MOVE="TABLE_MOVE",e.ALIGNMENT_TYPE="alignment-type",e.INDENT_TYPE="indent-type",e.DEFAULT_TAG="p",e.BLOCK_TAGS=Lt,e.IGNORE_BLOCK_TAGS=xt,e.TABLE_BLOCK_TAGS=Ot,e.SELECTION_TYPE="selection-type",e.INSERTHTML_TYPE="inserthtml-type",e.INSERT_TEXT_TYPE="insert-text-type",e.CLEAR_TYPE="clear-type",e.CLASS_IMAGE_RIGHT="e-imgright",e.CLASS_IMAGE_LEFT="e-imgleft",e.CLASS_IMAGE_CENTER="e-imgcenter",e.CLASS_IMAGE_BREAK="e-imgbreak",e.CLASS_CAPTION=Ft,e.CLASS_RTE_CAPTION="e-rte-img-caption",e.CLASS_CAPTION_INLINE="e-caption-inline",e.CLASS_IMAGE_INLINE="e-imginline",e.Lists=It,e.markerClassName=Mt,e.DOMNode=Rt,e.Alignments=jt,e.Indents=zt,e.Formats=At,e.LinkCommand=Ut,e.InsertMethods=Bt,e.InsertTextExec=Zt,e.InsertHtmlExec=Kt,e.InsertHtml=Ht,e.IsFormatted=Vt,e.MsWordPaste=$t,e.NodeCutter=Pt,e.ImageCommand=_t,e.SelectionCommands=Wt,e.SelectionBasedExec=Gt,e.ClearFormatExec=Yt,e.UndoRedoManager=Jt,e.TableCommand=qt,e.statusCollection=on,e.ToolbarStatus=rn,e.NodeSelection=Dt,e.MarkdownParser=yt,e.LISTS_COMMAND="lists-commands",e.selectionCommand="command-type",e.LINK_COMMAND="link-commands",e.CLEAR_COMMAND="clear-commands",e.MD_TABLE="insert-table",e.ClearFormat=vt,e.MDLists=ot,e.MDFormats=rt,e.MarkdownSelection=Ze,e.UndoRedoCommands=gt,e.MDSelectionFormats=st,e.MDLink=ft,e.MDTable=bt,e.markdownFormatTags=at,e.markdownSelectionTags=lt,e.markdownListsTags=dt,e.htmlKeyConfig=ct,e.markdownKeyConfig=pt,e.pasteCleanupGroupingTags=ht,e.listConversionFilters=ut,e.selfClosingTags=mt,e.KEY_DOWN="keydown",e.ACTION="action",e.FORMAT_TYPE="format-type",e.KEY_DOWN_HANDLER="keydown-handler",e.LIST_TYPE="list-type",e.KEY_UP_HANDLER="keyup-handler",e.KEY_UP="keyup",e.MODEL_CHANGED_PLUGIN="model_changed_plugin",e.MODEL_CHANGED="model_changed",e.MS_WORD_CLEANUP_PLUGIN="ms_word_cleanup_plugin",e.MS_WORD_CLEANUP="ms_word_cleanup",e}({},ej.base,ej.navigations,ej.splitbuttons,ej.popups,ej.inputs,ej.buttons,ej.filemanager),this.ejs=ej;