@syncfusion/ej2-richtexteditor 24.2.3 → 24.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +43 -5
- package/dist/ej2-richtexteditor.min.js +2 -2
- package/dist/ej2-richtexteditor.umd.min.js +2 -2
- package/dist/ej2-richtexteditor.umd.min.js.map +1 -1
- package/dist/es6/ej2-richtexteditor.es2015.js +485 -193
- package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
- package/dist/es6/ej2-richtexteditor.es5.js +472 -186
- package/dist/es6/ej2-richtexteditor.es5.js.map +1 -1
- package/dist/global/ej2-richtexteditor.min.js +2 -2
- package/dist/global/ej2-richtexteditor.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +12 -12
- package/src/common/util.d.ts +6 -0
- package/src/common/util.js +31 -1
- package/src/editor-manager/plugin/formats.d.ts +1 -0
- package/src/editor-manager/plugin/formats.js +37 -2
- package/src/editor-manager/plugin/inserthtml.js +22 -4
- package/src/editor-manager/plugin/lists.js +14 -1
- package/src/editor-manager/plugin/ms-word-clean-up.js +87 -18
- package/src/editor-manager/plugin/nodecutter.js +1 -1
- package/src/editor-manager/plugin/selection-commands.d.ts +1 -0
- package/src/editor-manager/plugin/selection-commands.js +56 -1
- package/src/editor-manager/plugin/table.js +1 -1
- package/src/rich-text-editor/actions/base-quick-toolbar.js +2 -2
- package/src/rich-text-editor/actions/enter-key.js +2 -2
- package/src/rich-text-editor/actions/html-editor.js +25 -12
- package/src/rich-text-editor/actions/paste-clean-up.d.ts +1 -0
- package/src/rich-text-editor/actions/paste-clean-up.js +26 -5
- package/src/rich-text-editor/actions/toolbar-action.js +1 -1
- package/src/rich-text-editor/actions/toolbar.js +1 -1
- package/src/rich-text-editor/base/interface.d.ts +0 -8
- package/src/rich-text-editor/base/rich-text-editor-model.d.ts +1 -1
- package/src/rich-text-editor/base/rich-text-editor.d.ts +1 -1
- package/src/rich-text-editor/base/rich-text-editor.js +16 -6
- package/src/rich-text-editor/base/util.js +3 -0
- package/src/rich-text-editor/models/default-locale.js +8 -7
- package/src/rich-text-editor/renderer/iframe-content-renderer.js +1 -1
- package/src/rich-text-editor/renderer/image-module.js +3 -3
- package/src/rich-text-editor/renderer/table-module.d.ts +1 -0
- package/src/rich-text-editor/renderer/table-module.js +106 -98
- package/src/rich-text-editor/renderer/video-module.d.ts +2 -0
- package/src/rich-text-editor/renderer/video-module.js +33 -26
- package/src/selection/selection.js +3 -0
- package/styles/bootstrap-dark.css +25 -9
- package/styles/bootstrap.css +25 -9
- package/styles/bootstrap4.css +30 -14
- package/styles/bootstrap5-dark.css +25 -9
- package/styles/bootstrap5.css +25 -9
- package/styles/fabric-dark.css +25 -9
- package/styles/fabric.css +25 -9
- package/styles/fluent-dark.css +27 -11
- package/styles/fluent.css +27 -11
- package/styles/highcontrast-light.css +25 -9
- package/styles/highcontrast.css +25 -9
- package/styles/material-dark.css +25 -9
- package/styles/material.css +25 -9
- package/styles/material3-dark.css +33 -11
- package/styles/material3.css +33 -11
- package/styles/rich-text-editor/_bootstrap-dark-definition.scss +4 -2
- package/styles/rich-text-editor/_bootstrap-definition.scss +4 -2
- package/styles/rich-text-editor/_bootstrap4-definition.scss +8 -6
- package/styles/rich-text-editor/_bootstrap5-definition.scss +4 -2
- package/styles/rich-text-editor/_fabric-dark-definition.scss +4 -2
- package/styles/rich-text-editor/_fabric-definition.scss +4 -2
- package/styles/rich-text-editor/_fluent-definition.scss +5 -3
- package/styles/rich-text-editor/_fusionnew-definition.scss +4 -2
- package/styles/rich-text-editor/_highcontrast-definition.scss +4 -2
- package/styles/rich-text-editor/_highcontrast-light-definition.scss +4 -2
- package/styles/rich-text-editor/_layout.scss +38 -7
- package/styles/rich-text-editor/_material-dark-definition.scss +4 -2
- package/styles/rich-text-editor/_material-definition.scss +4 -2
- package/styles/rich-text-editor/_material3-definition.scss +5 -3
- package/styles/rich-text-editor/_tailwind-definition.scss +21 -19
- package/styles/rich-text-editor/_theme.scss +21 -3
- package/styles/rich-text-editor/bootstrap-dark.css +25 -9
- package/styles/rich-text-editor/bootstrap.css +25 -9
- package/styles/rich-text-editor/bootstrap4.css +30 -14
- package/styles/rich-text-editor/bootstrap5-dark.css +25 -9
- package/styles/rich-text-editor/bootstrap5.css +25 -9
- package/styles/rich-text-editor/fabric-dark.css +25 -9
- package/styles/rich-text-editor/fabric.css +25 -9
- package/styles/rich-text-editor/fluent-dark.css +27 -11
- package/styles/rich-text-editor/fluent.css +27 -11
- package/styles/rich-text-editor/highcontrast-light.css +25 -9
- package/styles/rich-text-editor/highcontrast.css +25 -9
- package/styles/rich-text-editor/material-dark.css +25 -9
- package/styles/rich-text-editor/material.css +25 -9
- package/styles/rich-text-editor/material3-dark.css +33 -11
- package/styles/rich-text-editor/material3.css +33 -11
- package/styles/rich-text-editor/tailwind-dark.css +68 -32
- package/styles/rich-text-editor/tailwind.css +68 -32
- package/styles/tailwind-dark.css +68 -32
- package/styles/tailwind.css +68 -32
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: ej2-richtexteditor.min.js
|
|
3
|
-
* version : 24.2.
|
|
3
|
+
* version : 24.2.7
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
|
|
5
5
|
* Use of this code is subject to the terms of our license.
|
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
|
7
7
|
* licensing@syncfusion.com. Any infringement will be prosecuted under
|
|
8
8
|
* applicable laws.
|
|
9
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){Te.forEach(function(t,n){Te[n].text=l(e,Ee,Te[n])}),De.forEach(function(t,n){De[n].text=l(e,ke,De[n])}),Me.forEach(function(t,n){Me[n].text=l(e,Le,Me[n])}),Re.forEach(function(t,n){Re[n].text=l(e,xe,Re[n])}),Ie.forEach(function(t,n){Ie[n].text=l(e,Ae,Ie[n])}),Ue.forEach(function(t,n){Ue[n].text=l(e,Pe,Ue[n])}),je.forEach(function(t,n){je[n].text=l(e,He,je[n])}),qe.forEach(function(t,n){qe[n].text=l(e,Fe,qe[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=Ze[""+e];return n.getConstant(i)}function b(e,t,n,i){if(n)for(var o=t.getService("rteLocale"),r=0;r<n.length;r++){var s=n[r].value.toLocaleLowerCase(),a=n[r].locale,l=$e[""+a].toLocaleLowerCase();if(e===s||e===l){var d=n[r].locale;return o.getConstant(d)}}else for(var c=i.fontSize.items,r=0;r<c.length;r++)if(e===i.fontSize.items[r].value)return i.fontSize.items[r].text;return""}function v(e){for(var t=Object.keys($e),n=0;n<t.length;n++){var i=$e[""+t[n]];if(e===i)return i}return""}function C(e,n,i){I(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||"NumberFormatList"===p&&"numberFormatList"===l||"BulletFormatList"===p&&"bulletFormatList"===l)if("boolean"==typeof r[""+l])!0===r[""+l]?t.addClass([e.tbElements[d]],[ve]):t.removeClass([e.tbElements[d]],[ve]);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="empty"===g?"":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(e.parent.cssClass)?"":" "+e.parent.cssClass)+'">'+(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(Te,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 C=e.parent.fontFamily.items;f="empty"===g?"":h(C,g,"value","text");var y=t.isNullOrUndefined(e.parent.fontFamily.default)?C[0].text:e.parent.fontFamily.default,N=t.isNullOrUndefined(f)?y:f;o.fontNameDropDown.content='<span style="display: inline-flex;width:'+e.parent.fontFamily.width+'" ><span class="e-rte-dropdown-btn-text'+(t.isNullOrUndefined(e.parent.cssClass)?"":" "+e.parent.cssClass)+'">'+N+"</span></span>",o.fontNameDropDown.dataBind();break;case"fontsize":if(t.isNullOrUndefined(o.fontSizeDropDown)||!t.isNullOrUndefined(o.fontSizeDropDown)&&o.fontSizeDropDown.isDestroyed)break;var S=e.parent.fontSize.items,E=t.isNullOrUndefined(e.parent.fontSize.default)?S[1].text:e.parent.fontSize.default;f="empty"===g?"":h(S,""===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'+(t.isNullOrUndefined(e.parent.cssClass)?"":" "+e.parent.cssClass)+'">'+m(f)+"</span></span>",o.fontSizeDropDown.dataBind();break;case"bulletFormatList":case"numberFormatList":t.removeClass([e.tbElements[d]],[ve])}}}}function y(e){return"object"==typeof e?e:[e]}function N(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]||"NumberFormatList"===e[i])&&"OL"===t[o].subCommand){n.push(o);break}if(("UnorderedList"===e[i]||"BulletFormatList"===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("object"==typeof e[i]&&"Custom"===e[i].command){n.push(i);break}if(e[i]===t[o].subCommand){n.push(o);break}}return n}function S(e,n){for(var i=0,o=N(y(ot),e.toolbarObj.items),r=t.selectAll("."+ue,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 E(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 O(e,t){var n=[];for(t=t.firstChild;t;t=t.nextSibling)3===t.nodeType?n.push(t):n=n.concat(O(e,t));return n}function w(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 k(e,t){var n;return null!==e&&""!==e?(n=t.enableHtmlEncode?L(M(e),t):L(e,t),t.setProperties({value:n},!0)):n="DIV"===t.enterKey?t.enableHtmlEncode?"<div><br/></div>":"<div><br/></div>":"BR"===t.enterKey?t.enableHtmlEncode?"<br/>":"<br/>":t.enableHtmlEncode?"<p><br/></p>":"<p><br/></p>",n}function L(e,n){var i=document.createElement("div"),o=document.createElement("div"),r=i.childNodes;if(i.innerHTML=e,i.setAttribute("class","tempDiv"),r.length>0){for(var s=void 0,a=void 0,l=void 0;i.firstChild;){for(var d=i.querySelectorAll(oe),c=0;c<d.length;c++)d[c].innerHTML="<br>";for(var p=i.querySelectorAll("p"),c=0;c<p.length;c++)0===p[c].textContent.trim().length&&1===p[c].childNodes.length&&"#text"===p[c].childNodes[0].nodeName&&t.isNullOrUndefined(p[c].childNodes[0].textContent.match(/\u00a0/g))&&(p[c].innerHTML="<br>");for(var h=i.querySelectorAll(re),c=0;c<h.length;c++)h[c].innerHTML="​";"BR"!==n.enterKey&&("#text"===i.firstChild.nodeName&&(i.firstChild.textContent.indexOf("\n")<0||""!==i.firstChild.textContent.trim())||rt.indexOf(i.firstChild.nodeName.toLocaleLowerCase())>=0)?(s?a.appendChild(i.firstChild):(l="DIV"===n.enterKey?t.createElement("div"):t.createElement("p"),o.appendChild(l),l.appendChild(i.firstChild)),a=l,s=!0):"#text"===i.firstChild.nodeName&&("\n"===i.firstChild.textContent||i.firstChild.textContent.indexOf("\n")>=0&&""===i.firstChild.textContent.trim())?t.detach(i.firstChild):(o.appendChild(i.firstChild),s=!1)}for(var u=o.querySelectorAll("img"),c=0;c<u.length;c++)u[c].classList.contains(ye)||u[c].classList.add(ye),u[c].classList.contains(fe)||u[c].classList.contains(me)||u[c].classList.add(fe)}return o.innerHTML}function x(e){return"DIV"===e.enterKey?e.enableHtmlEncode?"<div><br/></div>":"<div><br/></div>":"BR"===e.enterKey?e.enableHtmlEncode?"<br/>":"<br/>":e.enableHtmlEncode?"<p><br/></p>":"<p><br/></p>"}function D(e){return"<p><br></p>"===e||"<p><br></p>"===e||"<div><br></div>"===e||"<div><br></div>"===e||"<br>"===e||"<br>"===e||""===e}function M(e){return e.replace(/&/g,"&").replace(/&lt;/g,"<").replace(/</g,"<").replace(/&gt;/g,">").replace(/>/g,">").replace(/ /g," ").replace(/&nbsp;/g," ").replace(/"/g,"")}function R(e,n){if(n.enableHtmlSanitizer){var i=t.SanitizeHtmlHelper.beforeSanitize();i.selectors.tags[2]&&i.selectors.tags[2].indexOf("iframe")>-1&&(i.selectors.tags[2]="iframe:not(.e-rte-embed-url)");var 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 B(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 A(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 I(e){_e.forEach(function(t,n){_e[n].text=A(e,et,_e[n])}),Qe.forEach(function(t,n){Qe[n].text=A(e,tt,Qe[n])}),Ge.forEach(function(t,n){Ge[n].text=A(e,nt,Ge[n])}),Xe.forEach(function(t,n){Xe[n].text=A(e,it,Xe[n])})}function P(){var e=!1;return t.Browser.isDevice&&t.Browser.isIos&&(e=!0),e}function U(e,n){if("BODY"===e.nodeName&&!t.isNullOrUndefined(n)){var i=top.window.document.querySelector(n);t.isNullOrUndefined(i)||i.contentWindow.focus()}}function H(e,n){var i=document.createElement("div");i.innerHTML=e,i.setAttribute("class","tempDiv");var o=document.createElement("div");if(i.childNodes.length>0){for(var r=void 0,s=void 0,a=void 0;i.firstChild;)"#text"===i.firstChild.nodeName&&(i.firstChild.textContent.indexOf("\n")<0||""!==i.firstChild.textContent.trim())||Et.indexOf(i.firstChild.nodeName.toLocaleLowerCase())>=0?r?(s.appendChild(i.firstChild),s=a,r=!0):"BR"===n?(o.appendChild(i.firstChild),s=o):(a=t.createElement("p"),o.appendChild(a),a.appendChild(i.firstChild),s=a,r=!0):"#text"===i.firstChild.nodeName&&("\n"===i.firstChild.textContent||i.firstChild.textContent.indexOf("\n")>=0&&""===i.firstChild.textContent.trim())?t.detach(i.firstChild):(o.appendChild(i.firstChild),r=!1);for(var l=o.querySelectorAll("table"),d=0;d<l.length;d++)if(l[d].classList.length>0&&!l[d].classList.contains("e-rte-table")){if(l[d].classList.add("e-rte-paste-table"),l[d].classList.contains("e-rte-paste-word-table")){l[d].classList.remove("e-rte-paste-word-table");continue}if(l[d].classList.contains("e-rte-paste-excel-table")){l[d].classList.remove("e-rte-paste-excel-table"),"0"===l[d].getAttribute("border")&&l[d].removeAttribute("border");for(var c=l[d].querySelectorAll("td"),p=0;p<c.length;p++)"none"===c[p].style.borderLeft&&c[p].style.removeProperty("border-left"),"none"===c[p].style.borderRight&&c[p].style.removeProperty("border-right"),"none"===c[p].style.borderBottom&&c[p].style.removeProperty("border-bottom"),"none"===c[p].style.borderTop&&c[p].style.removeProperty("border-top"),"none"===c[p].style.border&&c[p].style.removeProperty("border")}else if(l[d].classList.contains("e-rte-paste-onenote-table")){l[d].classList.remove("e-rte-paste-onenote-table");continue}}for(var h=o.querySelectorAll("img"),d=0;d<h.length;d++)h[d].classList.contains("e-rte-image")||h[d].classList.add("e-rte-image"),h[d].classList.contains("e-imginline")||h[d].classList.contains("e-imgbreak")||h[d].classList.add("e-imginline")}return o.innerHTML}function j(e){var t=e;do{t.childNodes.length>0&&(t=t.childNodes[0])}while(t.childNodes.length>0);return t}function F(){return{bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,unorderedlist:!1,numberFormatList:!1,bulletFormatList:!1,underline:!1,alignments:null,backgroundcolor:null,fontcolor:null,fontname:null,fontsize:null,formats:null,createlink:!1,insertcode:!1}}function q(){return{bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,uppercase:!1,lowercase:!1,inlinecode:!1,unorderedlist:!1,formats:null}}function z(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 _="initial-end",V="destroy",Q="model-changed",W="keyUp",K="keyDown",G="actionBegin",X="selection-save",Y="selection-restore",J="mouseDown",$="scroll",Z="paste-content",ee="rtl-mode",te="checkUndoStack",ne="moduleDestroy",ie="closeTableDialog",oe="address:empty, article:empty, aside:empty, blockquote:empty,\n details:empty, dd:empty, div:empty, dl:empty, dt:empty, fieldset:empty, footer:empty,form:empty, h1:empty,\n h2:empty, h3:empty, h4:empty, h5:empty, h6:empty, header:empty, hgroup:empty, li:empty, main:empty, nav:empty,\n noscript:empty, output:empty, p:empty, pre:empty, section:empty, td:empty, th:empty",re="a:empty, abbr:empty, acronym:empty, b:empty, bdi:empty, bdo:empty, big:empty, button:empty,\ncanvas:empty, cite:empty, code:empty, data:empty, datalist:empty, del:empty, dfn:empty, em:empty, font:empty, i:empty, iframe:empty,\nins:empty, kbd:empty, label:empty, map:empty, mark:empty, meter:empty, noscript:empty, object:empty, output:empty, picture:empty, progress:empty,\nq:empty, ruby:empty, s:empty, samp:empty, script:empty, select:empty, slot:empty, small:empty, span:empty, strong:empty, strike:empty, sub:empty, sup:empty, svg:empty,\ntemplate:empty, textarea:empty, time:empty, u:empty, tt:empty, var:empty, wbr:empty",se=["px","em","rem","pt","cm","mm","in","pc","vw","vh","vmin","vmax"],ae={px:{px:1,em:.0625,rem:.0625,pt:.75,cm:.0264583,mm:.0026458,in:.0104167,pc:.0625,vw:.00625,vh:.00625,vmin:.00625,vmax:.00625},em:{px:16,em:1,rem:1,pt:12,cm:.423333,mm:.0423333,in:.166667,pc:.0625,vw:1,vh:1,vmin:1,vmax:1},rem:{px:16,em:1,rem:1,pt:12,cm:.423333,mm:.0423333,in:.166667,pc:.0625,vw:1,vh:1,vmin:1,vmax:1},pt:{px:1.33333,em:.0833333,rem:.0833333,pt:1,cm:.0352778,mm:.0035278,in:.0138889,pc:.0416667,vw:.00416667,vh:.00416667,vmin:.00416667,vmax:.00416667},cm:{px:37.7953,em:2.3622,rem:2.3622,pt:28.3465,cm:1,mm:.1,in:.393701,pc:.148148,vw:.0377953,vh:.0377953,vmin:.0377953,vmax:.0377953},mm:{px:3.77953,em:.23622,rem:.23622,pt:2.83465,cm:10,mm:1,in:.0393701,pc:.0148148,vw:.00377953,vh:.00377953,vmin:.00377953,vmax:.00377953},in:{px:96,em:6,rem:6,pt:72,cm:2.54,mm:25.4,in:1,pc:.375,vw:.09375,vh:.09375,vmin:.09375,vmax:.09375},pc:{px:16,em:1,rem:1,pt:12,cm:.423333,mm:.0423333,in:.166667,pc:1,vw:.0625,vh:.0625,vmin:.0625,vmax:.0625},vw:{px:160,em:10,rem:10,pt:120,cm:4.23333,mm:.423333,in:1.66667,pc:.625,vw:1,vh:1,vmin:1,vmax:1},vh:{px:160,em:10,rem:10,pt:120,cm:4.23333,mm:.423333,in:1.66667,pc:.625,vw:1,vh:1,vmin:1,vmax:1},vmin:{px:160,em:10,rem:10,pt:120,cm:4.23333,mm:.423333,in:1.66667,pc:.625,vw:1,vh:1,vmin:1,vmax:1},vmax:{px:160,em:10,rem:10,pt:120,cm:4.23333,mm:.423333,in:1.66667,pc:.625,vw:1,vh:1,vmin:1,vmax:1}},le="e-richtexteditor",de="e-rte-quick-toolbar",ce="e-rte-dropdown-popup",pe="e-rte-dropdown-items",he="e-rte-dropdown-btn",ue="e-toolbar-item",me="e-imgbreak",ge="e-img-caption",fe="e-imginline",be="e-rte-character-count",ve="e-active",Ce="e-alternate-border",ye="e-rte-image";!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.AudioToolbar=6]="AudioToolbar",e[e.VideoToolbar=7]="VideoToolbar",e[e.InlineToolbar=8]="InlineToolbar",e[e.TableToolbar=9]="TableToolbar"}(e.RenderType||(e.RenderType={})),function(e){e.Expand="Expand",e.MultiRow="MultiRow",e.Scrollable="Scrollable"}(e.ToolbarType||(e.ToolbarType={})),function(e){e.InsertLink="InsertLink",e.InsertImage="InsertImage",e.InsertAudio="InsertAudio",e.InsertVideo="InsertVideo",e.InsertTable="InsertTable"}(e.DialogType||(e.DialogType={}));var Ne=["alignments","formats","fontname","fontsize","fontcolor","backgroundcolor","align","display","audiolayoutoption","videolayoutoption","videoalign","tablerows","tablecolumns","tablecell","tablecellhorizontalalign","tablecellverticalalign","styles","numberformatlist","bulletformatlist"],Se={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-rte-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"},numberformatlist:{id:"NumberFormatList",icon:"e-order-list",tooltip:"Number Format List",command:"NumberFormatList",subCommand:"NumberFormatList"},bulletformatlist:{id:"BulletFormatList",icon:"e-unorder-list",tooltip:"Bullet Format List",command:"BulletFormatList",subCommand:"BulletFormatList"},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"},audio:{id:"Audio",icon:"e-audio",tooltip:"Insert Audio",command:"Audios",subCommand:"Audio"},video:{id:"Video",icon:"e-video",tooltip:"Insert Video",command:"Videos",subCommand:"Video"},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"},audioreplace:{id:"AudioReplace",icon:"e-audio-replace",tooltip:"Audio Replace",command:"Audios",subCommand:"AudioReplace"},audioremove:{id:"AudioRemove",icon:"e-audio-remove",tooltip:"Audio Remove",command:"Audios",subCommand:"AudioRemove"},audiolayoutoption:{id:"AudioLayoutOption",icon:"e-audio-display",tooltip:"Audio LayoutOption",command:"Audios",subCommand:"AudioLayoutOption"},videoreplace:{id:"VideoReplace",icon:"e-video-replace",tooltip:"Video Replace",command:"Videos",subCommand:"VideoReplace"},videoalign:{id:"VideoAlign",icon:"e-video-align",tooltip:"Video Align",command:"Videos",subCommand:"VideoAlign"},videoremove:{id:"VideoRemove",icon:"e-video-remove",tooltip:"Video Remove",command:"Videos",subCommand:"VideoRemove"},videolayoutoption:{id:"VideoLayoutOption",icon:"e-video-display",tooltip:"Video LayoutOption",command:"Videos",subCommand:"VideoLayoutOption"},videodimension:{id:"VideoDimension",icon:"e-video-dimension",tooltip:"Video Dimension",command:"Videos",subCommand:"VideoDimension"},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-img-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:"Code View (Ctrl+Shift+H)",command:"SourceCode",subCommand:"SourceCode"},preview:{id:"Preview",icon:"e-preview",tooltip:"Preview (Ctrl+Shift+H)",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"},formatpainter:{id:"FormatPainter",icon:"e-rte-format-painter",tooltip:"Format Painter",command:"FormatPainter",subCommand:"FormatPainter"},emojipicker:{id:"EmojiPicker",icon:"e-emoji",tooltip:"Emoji Icon",command:"EmojiPicker",subCommand:"EmojiPicker"}},Ee=[{locale:"alignmentsDropDownLeft",value:"JustifyLeft"},{locale:"alignmentsDropDownCenter",value:"JustifyCenter"},{locale:"alignmentsDropDownRight",value:"JustifyRight"},{locale:"alignmentsDropDownJustify",value:"JustifyFull"}],Te=[{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"}],Oe=[{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"}],we=[{iconCss:"e-icons e-justify-left",command:"Videos",subCommand:"JustifyLeft"},{iconCss:"e-icons e-justify-center",command:"Videos",subCommand:"JustifyCenter"},{iconCss:"e-icons e-justify-right",command:"Videos",subCommand:"JustifyRight"}],ke=[{locale:"imageDisplayDropDownInline",value:"Inline"},{locale:"imageDisplayDropDownBreak",value:"Break"}],Le=[{locale:"audioLayoutOptionDropDownInline",value:"Inline"},{locale:"audioLayoutOptionDropDownBreak",value:"Break"}],xe=[{locale:"videoLayoutOptionDropDownInline",value:"Inline"},{locale:"videoLayoutOptionDropDownBreak",value:"Break"}],De=[{text:"Inline",cssClass:"e-inline",command:"Images",subCommand:"Inline"},{text:"Break",cssClass:"e-break",command:"Images",subCommand:"Break"}],Me=[{text:"Inline",cssClass:"e-audio-inline",command:"Audios",subCommand:"Inline"},{text:"Break",cssClass:"e-audio-break",command:"Audios",subCommand:"Break"}],Re=[{text:"Inline",cssClass:"e-video-inline",command:"Videos",subCommand:"Inline"},{text:"Break",cssClass:"e-video-break",command:"Videos",subCommand:"Break"}],Be=[{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"}],Ae=[{locale:"tableInsertRowDropDownBefore",value:"InsertRowBefore"},{locale:"tableInsertRowDropDownAfter",value:"InsertRowAfter"},{locale:"tableInsertRowDropDownDelete",value:"DeleteRow"}],Ie=[{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"}],Pe=[{locale:"tableInsertColumnDropDownLeft",value:"InsertColumnLeft"},{locale:"tableInsertColumnDropDownRight",value:"InsertColumnRight"},{locale:"tableInsertColumnDropDownDelete",value:"DeleteColumn"}],Ue=[{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"}],He=[{locale:"tableVerticalAlignDropDownTop",value:"AlignTop"},{locale:"tableVerticalAlignDropDownMiddle",value:"AlignMiddle"},{locale:"tableVerticalAlignDropDownBottom",value:"AlignBottom"}],je=[{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"}],Fe=[{locale:"tableStylesDropDownDashedBorder",value:"Dashed"},{locale:"tableStylesDropDownAlternateRows",value:"Alternate"}],qe=[{text:"Dashed Borders",cssClass:"e-dashed-borders",command:"Table",subCommand:"Dashed"},{text:"Alternate Rows",cssClass:"e-alternate-rows",command:"Table",subCommand:"Alternate"}],ze=["Bold","Italic","Underline","|","Formats","Alignments","OrderedList","UnorderedList","|","CreateLink","Image","|","SourceCode","Undo","Redo"],_e=[{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"}],Ve=[{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"}],Qe=[{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"}],We={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"]},Ke={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"]},Ge=[{text:"None",command:"Lists",subCommand:"NumberFormatList",value:"none"},{text:"Number",command:"Lists",subCommand:"NumberFormatList",value:"decimal"},{text:"Lower Greek",command:"Lists",subCommand:"NumberFormatList",value:"lowerGreek"},{text:"Lower Roman",command:"Lists",subCommand:"NumberFormatList",value:"lowerRoman"},{text:"Upper Alpha",command:"Lists",subCommand:"NumberFormatList",value:"upperAlpha"},{text:"Lower Alpha",command:"Lists",subCommand:"NumberFormatList",value:"lowerAlpha"},{text:"Upper Roman",command:"Lists",subCommand:"NumberFormatList",value:"upperRoman"}],Xe=[{text:"None",command:"Lists",subCommand:"BulletFormatList",value:"none"},{text:"Disc",command:"Lists",subCommand:"BulletFormatList",value:"disc"},{text:"Circle",command:"Lists",subCommand:"BulletFormatList",value:"circle"},{text:"Square",command:"Lists",subCommand:"BulletFormatList",value:"square"}],Ye={"Insert Link":"Ctrl+K","Insert Image":"Ctrl+Shift+I","Create 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","Upper Case":"Ctrl+Shift+U","Lower Case":"Ctrl+Shift+L",Superscript:"Ctrl+Shift+=",Subscript:"Ctrl+=","Code View":"Ctrl+Shift+H",Maximize:"Ctrl+Shift+F",Minimize:"Esc","Clear Format":"Ctrl+Shift+R","Numbered List":"Ctrl+Shift+O","Bulleted List":"Ctrl+Alt+O","Number Format List":"Ctrl+Shift+O","Bullet Format List":"Ctrl+Alt+O","Insert Audio":"Ctrl+Shift+A","Insert Video":"Ctrl+Alt+V","Increase Indent":"Ctrl+]","Decrease Indent":"Ctrl+[","Decrease Fontsize":"Ctrl+Shift+<","Increase Fontsize":"Ctrl+Shift+>","Justify Center":"Ctrl+E","Justify Full":"Ctrl+J","Justify Left":"Ctrl+L","Justify Right":"Ctrl+R","Format Painter":"Alt+Shift+C, Alt+Shift+V"},Je=[{name:"Smilies & People",code:"1F600",iconCss:"e-emoji",icons:[{code:"1F600",desc:"Grinning face"},{code:"1F603",desc:"Grinning face with big eyes"},{code:"1F604",desc:"Grinning face with smiling eyes"},{code:"1F606",desc:"Grinning squinting face"},{code:"1F605",desc:"Grinning face with sweat"},{code:"1F602",desc:"Face with tears of joy"},{code:"1F923",desc:"Rolling on the floor laughing"},{code:"1F60A",desc:"Smiling face with smiling eyes"},{code:"1F607",desc:"Smiling face with halo"},{code:"1F642",desc:"Slightly smiling face"},{code:"1F643",desc:"Upside-down face"},{code:"1F60D",desc:"Smiling face with heart-eyes"},{code:"1F618",desc:"Face blowing a kiss"},{code:"1F61B",desc:"Face with tongue"},{code:"1F61C",desc:"Winking face with tongue"},{code:"1F604",desc:"Grinning face with smiling eyes"},{code:"1F469",desc:"Woman"},{code:"1F468",desc:"Man"},{code:"1F467",desc:"Girl"},{code:"1F466",desc:"Boy"},{code:"1F476",desc:"Baby"},{code:"1F475",desc:"Old woman"},{code:"1F474",desc:"Old man"},{code:"1F46E",desc:"Police officer"},{code:"1F477",desc:"Construction worker"},{code:"1F482",desc:"Guard"},{code:"1F575",desc:"Detective"},{code:"1F9D1",desc:"Cook"}]},{name:"Animals & Nature",code:"1F435",iconCss:"e-animals",icons:[{code:"1F436",desc:"Dog face"},{code:"1F431",desc:"Cat face"},{code:"1F42D",desc:"Mouse face"},{code:"1F439",desc:"Hamster face"},{code:"1F430",desc:"Rabbit face"},{code:"1F98A",desc:"Fox face"},{code:"1F43B",desc:"Bear face"},{code:"1F43C",desc:"Panda face"},{code:"1F428",desc:"Koala"},{code:"1F42F",desc:"Tiger face"},{code:"1F981",desc:"Lion face"},{code:"1F42E",desc:"Cow face"},{code:"1F437",desc:"Pig face"},{code:"1F43D",desc:"Pig nose"},{code:"1F438",desc:"Frog face"},{code:"1F435",desc:"Monkey face"},{code:"1F649",desc:"Hear-no-evil monkey"},{code:"1F64A",desc:"Speak-no-evil monkey"},{code:"1F412",desc:"Monkey"},{code:"1F414",desc:"Chicken"},{code:"1F427",desc:"Penguin"},{code:"1F426",desc:"Bird"},{code:"1F424",desc:"Baby chick"},{code:"1F986",desc:"Duck"},{code:"1F985",desc:"Eagle"}]},{name:"Food & Drink",code:"1F347",iconCss:"e-food-and-drinks",icons:[{code:"1F34E",desc:"Red apple"},{code:"1F34C",desc:"Banana"},{code:"1F347",desc:"Grapes"},{code:"1F353",desc:"Strawberry"},{code:"1F35E",desc:"Bread"},{code:"1F950",desc:"Croissant"},{code:"1F955",desc:"Carrot"},{code:"1F354",desc:"Hamburger"},{code:"1F355",desc:"Pizza"},{code:"1F32D",desc:"Hot dog"},{code:"1F35F",desc:"French fries"},{code:"1F37F",desc:"Popcorn"},{code:"1F366",desc:"Soft ice cream"},{code:"1F367",desc:"Shaved ice"},{code:"1F36A",desc:"Cookie"},{code:"1F382",desc:"Birthday cake"},{code:"1F370",desc:"Shortcake"},{code:"1F36B",desc:"Chocolate bar"},{code:"1F369",desc:"Donut"},{code:"1F36E",desc:"Custard"},{code:"1F36D",desc:"Lollipop"},{code:"1F36C",desc:"Candy"},{code:"1F377",desc:"Wine glass"},{code:"1F37A",desc:"Beer mug"},{code:"1F37E",desc:"Bottle with popping cork"}]},{name:"Activities",code:"1F383",iconCss:"e-activities",icons:[{code:"26BD",desc:"Soccer ball"},{code:"1F3C0",desc:"Basketball"},{code:"1F3C8",desc:"American football"},{code:"26BE",desc:"Baseball"},{code:"1F3BE",desc:"Tennis"},{code:"1F3D0",desc:"Volleyball"},{code:"1F3C9",desc:"Rugby football"},{code:"1F3B1",desc:"Pool 8 ball"},{code:"1F3D3",desc:"Ping pong"},{code:"1F3F8",desc:"Badminton"},{code:"1F94A",desc:"Boxing glove"},{code:"1F3CA",desc:"Swimmer"},{code:"1F3CB",desc:"Weightlifter"},{code:"1F6B4",desc:"Bicyclist"},{code:"1F6F9",desc:"Skateboard"},{code:"1F3AE",desc:"Video game"},{code:"1F579",desc:"Joystick"},{code:"1F3CF",desc:"Cricket"},{code:"1F3C7",desc:"Horse racing"},{code:"1F3AF",desc:"Direct hit"},{code:"1F3D1",desc:"Field hockey"},{code:"1F3B0",desc:"Slot machine"},{code:"1F3B3",desc:"Bowling"},{code:"1F3B2",desc:"Game die"},{code:"265F",desc:"Chess pawn"}]},{name:"Travel & Places",code:"1F30D",iconCss:"e-travel-and-places",icons:[{code:"2708",desc:"Airplane"},{code:"1F697",desc:"Automobile"},{code:"1F695",desc:"Taxi"},{code:"1F6B2",desc:"Bicycle"},{code:"1F68C",desc:"Bus"},{code:"1F682",desc:"Locomotive"},{code:"1F6F3",desc:"Passenger ship"},{code:"1F680",desc:"Rocket"},{code:"1F681",desc:"Helicopter"},{code:"1F6A2",desc:"Ship"},{code:"1F3DF",desc:"Stadium"},{code:"1F54C",desc:"Mosque"},{code:"26EA",desc:"Church"},{code:"1F6D5",desc:"Hindu Temple"},{code:"1F3D4",desc:"Snow-capped mountain"},{code:"1F3EB",desc:"School"},{code:"1F30B",desc:"Volcano"},{code:"1F3D6",desc:"Beach with umbrella"},{code:"1F3DD",desc:"Desert island"},{code:"1F3DE",desc:"National park"},{code:"1F3F0",desc:"Castle"},{code:"1F5FC",desc:"Tokyo tower"},{code:"1F5FD",desc:"Statue of liberty"},{code:"26E9",desc:"Shinto shrine"},{code:"1F3EF",desc:"Japanese castle"},{code:"1F3A2",desc:"Roller coaster"}]},{name:"Objects",code:"1F507",iconCss:"e-objects",icons:[{code:"1F4A1",desc:"Light bulb"},{code:"1F526",desc:"Flashlight"},{code:"1F4BB",desc:"Laptop computer"},{code:"1F5A5",desc:"Desktop computer"},{code:"1F5A8",desc:"Printer"},{code:"1F4F7",desc:"Camera"},{code:"1F4F8",desc:"Camera with flash"},{code:"1F4FD",desc:"Film projector"},{code:"1F3A5",desc:"Movie camera"},{code:"1F4FA",desc:"Television"},{code:"1F4FB",desc:"Radio"},{code:"1F50B",desc:"Battery"},{code:"231A",desc:"Watch"},{code:"1F4F1",desc:"Mobile phone"},{code:"260E",desc:"Telephone"},{code:"1F4BE",desc:"Floppy disk"},{code:"1F4BF",desc:"Optical disk"},{code:"1F4C0",desc:"Digital versatile disc"},{code:"1F4BD",desc:"Computer disk"},{code:"1F3A7",desc:"Headphone"},{code:"1F3A4",desc:"Microphone"},{code:"1F3B6",desc:"Multiple musical notes"},{code:"1F4DA",desc:"Books"}]},{name:"Symbols",code:"1F3E7",iconCss:"e-symbols",icons:[{code:"274C",desc:"Cross mark"},{code:"2714",desc:"Check mark"},{code:"26A0",desc:"Warning sign"},{code:"1F6AB",desc:"Prohibited"},{code:"2139",desc:"Information"},{code:"267B",desc:"Recycling symbol"},{code:"1F6AD",desc:"No smoking"},{code:"1F4F5",desc:"No mobile phones"},{code:"1F6AF",desc:"No littering"},{code:"1F6B3",desc:"No bicycles"},{code:"1F6B7",desc:"No pedestrians"},{code:"2795",desc:"Plus"},{code:"2796",desc:"Minus"},{code:"2797",desc:"Divide"},{code:"2716",desc:"Multiplication"},{code:"1F4B2",desc:"Dollar banknote"},{code:"1F4AC",desc:"Speech balloon"},{code:"2755",desc:"White exclamation mark"},{code:"2754",desc:"White question mark"},{code:"2764",desc:"Red heart"}]}],$e={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",audio:"Insert Audio",video:"Insert Video",replace:"Replace",numberFormatList:"Number Format List",bulletFormatList:"Bullet Format List",audioReplace:"Replace",videoReplace:"Replace",videoAlign:"Align",videoDimension:"Dimension",audioRemove:"Remove",videoRemove:"Remove",audioLayoutOption:"Layout option",videoLayoutOption:"Layout option",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",audioHeader:"Insert Audio",videoHeader:"Insert Video",imageLinkHeader:"You can also provide a link from the web",audioLinkHeader:"You can also provide a link from the web",videoLinkHeader:"Web URL",embedVideoLinkHeader:"Media Embed URL",mdimageLink:"Please provide a URL for your image",imageUploadMessage:"Drop image here or browse to upload",audioUploadMessage:"Drop an audio file or browse to upload",videoUploadMessage:"Drop a video file or browse to upload",imageDeviceUploadMessage:"Click here to upload",audioDeviceUploadMessage:"Click here to upload",videoDeviceUploadMessage:"Click here to upload",imageAlternateText:"Alternate Text",alternateHeader:"Alternative Text",browse:"Browse",imageUrl:"http://example.com/image.png",audioUrl:"http://example.com/audio.mp3",videoUrl:"http://example.com/video.mp3",webUrl:"Web URL",embedUrl:"Embed Code",imageCaption:"Caption",imageSizeHeader:"Image Size",videoSizeHeader:"Video Size",imageHeight:"Height",imageWidth:"Width",videoHeight:"Height",videoWidth:"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 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",editAudioHeader:"Edit Audio",editVideoHeader:"Edit Video",alignmentsDropDownLeft:"Align Left",alignmentsDropDownCenter:"Align Center",alignmentsDropDownRight:"Align Right",alignmentsDropDownJustify:"Align Justify",imageDisplayDropDownInline:"Inline",imageDisplayDropDownBreak:"Break",audioLayoutOptionDropDownInline:"Inline",audioLayoutOptionDropDownBreak:"Break",videoLayoutOptionDropDownInline:"Inline",videoLayoutOptionDropDownBreak:"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",numberFormatListNumber:"Number",numberFormatListLowerAlpha:"LowerAlpha",numberFormatListUpperAlpha:"UpperAlpha",numberFormatListLowerRoman:"LowerRoman",numberFormatListUpperRoman:"UpperRoman",numberFormatListLowerGreek:"LowerGreek",bulletFormatListDisc:"Disc",bulletFormatListCircle:"Circle",bulletFormatListSquare:"Square",numberFormatListNone:"None",bulletFormatListNone:"None",formatPainter:"Format Painter",emojiPicker:"Emoji Picker",embeddedCode:"Embedded code",pasteEmbeddedCodeHere:"Paste embedded code here",emojiPickerTypeToFind:"Type to find",emojiPickerNoResultFound:"No results found",emojiPickerTrySomethingElse:"Try something else",linkAriaLabel:"Open in new window"},Ze={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",numberformatlist:"numberFormatList",bulletformatlist:"bulletFormatList",undo:"undo",redo:"redo",filemanager:"fileManager",superscript:"superscript",subscript:"subscript",createlink:"createLink",openlink:"openLink",editlink:"editLink",removelink:"removeLink",openimagelink:"openLink",editimagelink:"editLink",removeimagelink:"removeLink",image:"image",audio:"audio",video:"video",replace:"replace",audioreplace:"audioReplace",videoreplace:"videoReplace",videoalign:"videoAlign",videodimension:"videoDimension",audioremove:"audioRemove",videoremove:"videoRemove",audiolayoutoption:"audioLayoutOption",videolayoutoption:"videoLayoutOption",align:"align",caption:"caption",remove:"remove",insertlink:"insertLink",display:"display",alttext:"alternateHeader",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",formatpainter:"formatPainter",emojipicker:"emojiPicker",embeddedCode:"Embedded code",pasteEmbeddedCodeHere:"Paste embedded code here",emojiPickerTypeToFind:"Type to find",emojiPickerNoResultFound:"No results found",emojiPickerTrySomethingElse:"Try something else",ImageLinkAriaLabel:"Open in new window"},et=[{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"}],tt=[{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"}],nt=[{locale:"numberFormatListNone",value:"none"},{locale:"numberFormatListNumber",value:"decimal"},{locale:"numberFormatListLowerAlpha",value:"lower-alpha"},{locale:"numberFormatListUpperAlpha",value:"upper-alpha"},{locale:"numberFormatListLowerRoman",value:"lower-roman"},{locale:"numberFormatListUpperRoman",value:"upper-roman"},{locale:"numberFormatListLowerGreek",value:"lower-greek"}],it=[{locale:"bulletFormatListNone",value:"none"},{locale:"bulletFormatListDisc",value:"disc"},{locale:"bulletFormatListCircle",value:"circle"},{locale:"bulletFormatListSquare",value:"square"}],ot=["Undo","Redo"],rt=["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"],st=function(){function e(e,t){this.parent=e,t&&(this.l10n=t.getService("rteLocale")),this.wireEvent()}return e.prototype.wireEvent=function(){this.parent.on(V,this.unWireEvent,this),this.parent.on("destroyTooltip",this.destroyTooltip,this)},e.prototype.destroyTooltip=function(){var e=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().ownerDocument:this.parent.contentModule.getDocument();if(!t.isNullOrUndefined(e.querySelector(".e-tooltip-wrap"))&&!t.isNullOrUndefined(e.querySelector("[data-tooltip-id]"))){var n=e.querySelector("[data-tooltip-id]"),i=new MouseEvent("mouseleave",{bubbles:!0,cancelable:!0});n.dispatchEvent(i)}},e.prototype.unWireEvent=function(){this.parent.off(V,this.unWireEvent)},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.trigger("toolbarClick",e),this.parent.readonly&&!t.isNullOrUndefined(e.item)||this.parent.notify("toolbarClick",e))},e.prototype.dropDownSelected=function(e){this.parent.notify("dropDownSelect",e),this.destroyTooltip()},e.prototype.beforeDropDownItemRender=function(e){!this.parent.readonly&&this.parent.enabled&&this.parent.notify("beforeDropDownItemRender",e)},e.prototype.tooltipBeforeRender=function(e){if(!t.isNullOrUndefined(e.target.getAttribute("title"))){var n=void 0;switch(e.target.getAttribute("title")){case"Minimize":n=this.l10n.getConstant("minimize"),e.target.setAttribute("title",n+" (Esc)");break;case"Maximize":n=this.l10n.getConstant("maximize"),e.target.setAttribute("title",n+" (Ctrl+Shift+F)")}}},e.prototype.dropDownOpen=function(e){if(e.element.parentElement.getAttribute("id").indexOf("TableCell")>-1&&!t.isNullOrUndefined(e.element.parentElement.querySelector(".e-cell-merge"))&&(!t.isNullOrUndefined(e.element.parentElement.querySelector(".e-cell-horizontal-split"))||!t.isNullOrUndefined(e.element.parentElement.querySelector(".e-cell-vertical-split")))){var n=e.element.querySelectorAll("li"),i=this.parent.inputElement.querySelectorAll(".e-cell-select");1===i.length?(t.addClass([n[0]],"e-disabled"),t.removeClass([n[1],n[2]],"e-disabled")):i.length>1&&(Array.from(i).every(function(e){return e.tagName.toLowerCase()===i[0].tagName.toLowerCase()})?t.removeClass([n[0]],"e-disabled"):t.addClass([n[0]],"e-disabled"),t.addClass([n[1],n[2]],"e-disabled"))}this.parent.notify(X,e)},e.prototype.dropDownClose=function(e){this.parent.notify(Y,e)},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,cssClass:e.cssClass}),e.rteToolbarObj.toolbarObj.isStringTemplate=!0,e.rteToolbarObj.toolbarObj.createElement=this.parent.createElement,e.rteToolbarObj.toolbarObj.appendTo(e.target),this.parent.showTooltip&&(this.tooltip=new o.Tooltip({target:"#"+this.parent.getID()+"_toolbar_wrapper [title]",showTipPointer:!0,openDelay:400,opensOn:"Hover",beforeRender:this.tooltipBeforeRender.bind(this),cssClass:this.parent.getCssClass(),windowCollision:!0,position:"BottomCenter"}),this.tooltip.appendTo(e.target)),this.parent.showTooltip&&(this.dropdownTooltip=new o.Tooltip({target:'[aria-owns="'+this.parent.getID()+'"].e-rte-elements [title]',showTipPointer:!0,openDelay:400,opensOn:"Hover",beforeRender:this.tooltipBeforeRender.bind(this),cssClass:this.parent.getCssClass(),windowCollision:!0,position:"BottomCenter"}),this.dropdownTooltip.appendTo(document.body))},e.prototype.renderDropDownButton=function(e){var n,o=this;e.element.classList.add(he),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);if("Markdown"!==r.parent.editorMode){var n=r.parent.getRange().startContainer.parentElement,i=n.closest("table"),a=n.closest("tr");if(!t.isNullOrUndefined(i)&&i.classList.contains("e-dashed-border"))for(h=0;h<e.element.childNodes.length;h++)e.element.childNodes[h].classList.contains("e-dashed-borders")&&t.addClass([e.element.childNodes[h]],"e-active");else if(!t.isNullOrUndefined(i)&&!i.classList.contains("e-dashed-border")&&i.classList.contains("e-alternate-rows")&&""!==window.getComputedStyle(a).backgroundColor)for(h=0;h<e.element.childNodes.length;h++)e.element.childNodes[h].classList.contains("e-alternate-rows")&&t.addClass([e.element.childNodes[h]],"e-active");for(var l=r.parent.getRange().startContainer;l!==r.parent.inputElement&&!t.isNullOrUndefined(l.parentElement);){"#text"===l.nodeName&&(l=l.parentElement);var d=window.getComputedStyle(l).textAlign;if("Alignments"===e.items[0].command){if("Align Left"===e.items[0].text&&"left"===d||"start"===d){t.addClass([e.element.childNodes[0]],"e-active");break}if("Align Center"===e.items[1].text&&"center"===d){t.addClass([e.element.childNodes[1]],"e-active");break}if("Align Right"===e.items[2].text&&"right"===d){t.addClass([e.element.childNodes[2]],"e-active");break}if("Align Justify"===e.items[3].text&&"justify"===d){t.addClass([e.element.childNodes[3]],"e-active");break}}l=l.parentElement}var c=n.closest("img"),p=c||n.querySelector("img");if("Images"===e.items[0].command&&!t.isNullOrUndefined(p)){h=void 0;p.classList.contains("e-imgleft")||p.classList.contains("e-imginline")?h=0:p.classList.contains("e-imgcenter")||p.classList.contains("e-imgbreak")?h=1:p.classList.contains("e-imgright")&&(h=2),t.isNullOrUndefined(e.element.childNodes[h])||t.addClass([e.element.childNodes[h]],"e-active")}if("Formats"===e.items[0].command||"Font"===e.items[0].command)for(var h=0;h<e.element.childNodes.length;h++){var u=o.parent.createElement("div");u.innerHTML=s.content.trim(),""!==u.textContent.trim()&&e.element.childNodes[h].textContent.trim()===u.textContent.trim()?e.element.childNodes[h].classList.contains("e-active")||t.addClass([e.element.childNodes[h]],"e-active"):t.removeClass([e.element.childNodes[h]],"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.renderListDropDown=function(e){var t=this,n="e-rte-elements e-tbar-btn"+(this.parent.inlineMode?" e-rte-inline-dropdown":"");n+=" "+("NumberFormatList"===e.itemName?"e-rte-numberformatlist-dropdown":"e-rte-bulletformatlist-dropdown");var o=t.parent.createElement("span",{className:"e-rte-list-primary-content"}),r=t.parent.createElement("span",{className:e.cssClass});o.appendChild(r);var s=new i.DropDownButton({items:e.items,cssClass:n,content:e.content,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,select:this.dropDownSelected.bind(this),beforeOpen:function(e){if(t.parent.readonly||!t.parent.enabled)return void(e.cancel=!0);t.parent.notify(Y,{});var n=e.event?e.event.target:null;if(t.currentElement=s.element,t.currentDropdown=s,e.event&&"click"===e.event.type&&(n.classList.contains("e-rte-list-primary-content")||n.parentElement.classList.contains("e-rte-list-primary-content")))return void(e.cancel=!0);t.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=t.parent.createElement,s.appendTo(e.element),e.element.tabIndex=-1,e.element.setAttribute("role","button"),document.getElementById(s.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),1===e.element.childElementCount&&s.element.insertBefore(o,s.element.querySelector(".e-caret")),e.element.tabIndex=-1,s.element.removeAttribute("type"),s.element.onmousedown=function(){t.parent.notify(X,{})},s.element.onkeydown=function(){t.parent.notify(X,{})},s},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,s){var a=this,l=this,d="e-rte-elements e-tbar-btn"+(this.parent.inlineMode?" e-rte-inline-dropdown":"");d+=" "+("backgroundcolor"===n?"e-rte-backgroundcolor-dropdown":"e-rte-fontcolor-dropdown"),d+=this.parent.getCssClass(!0);var c,h=l.parent.createElement("span",{className:"e-rte-color-content"}),u=l.parent.createElement("span",{className:e.cssClass}),m=t.isNullOrUndefined(s)?l.parent.backgroundColor.default:s;u.style.borderBottomColor="backgroundcolor"===n?m:l.parent.fontColor.default,h.appendChild(u);var g=new i.DropDownButton({target:o.element.parentElement,cssClass:d,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,beforeOpen:function(n){if(o.inline=!0,o.dataBind(),l.parent.readonly||!l.parent.enabled)return void(n.cancel=!0);var i=n.event?n.event.target:null;if(l.currentElement=g.element,l.currentDropdown=g,l.paletteSelection(n,l.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 s=i.classList.contains("e-rte-elements")?i.style.borderBottomColor:i.querySelector(".e-rte-elements").style.borderBottomColor;l.parent.notify(Y,{});var a=(c=l.parent.formatter.editorManager.nodeSelection.getRange(l.parent.contentModule.getDocument())).startContainer.parentNode,d=t.closest(c.startContainer.parentNode,"table");return void(("TD"===c.startContainer.nodeName||"TH"===c.startContainer.nodeName||t.closest(c.startContainer.parentNode,"td,th")||l.parent.iframeSettings.enable&&!p(a.ownerDocument.querySelector("body"),"e-lib"))&&c.collapsed&&"BackgroundColor"===e.subCommand&&t.closest(d,"."+le)?l.parent.notify("tableColorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:s}}):l.parent.notify("colorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:s}}))}var h=n.element.querySelector(".e-control.e-colorpicker"),u=t.getInstance(h,r.ColorPicker);u.showButtons=!n.element.querySelector(".e-color-palette"),u.dataBind(),n.element.onclick=function(e){e.target.classList.contains("e-cancel")&&g.toggle()}},open:function(e){a.setColorPickerContentWidth(o);var t,n=e.element.querySelector(".e-control.e-colorpicker");(t=e.element.querySelector(".e-color-palette")?n.parentElement.querySelector(".e-palette"):n.parentElement.querySelector("e-handler"))&&t.focus(),a.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 c=l.parent.formatter.editorManager.nodeSelection.getRange(l.parent.contentModule.getDocument()),void(("TD"===c.startContainer.nodeName||"TH"===c.startContainer.nodeName||t.closest(c.startContainer.parentNode,"td,th"))&&c.collapsed?l.parent.notify("tableColorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:o}}):l.parent.notify("colorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:o}}))}},close:function(e){l.parent.notify(Y,{})}});return g.isStringTemplate=!0,g.createElement=l.parent.createElement,e.element.setAttribute("role","button"),g.appendTo(e.element),document.getElementById(g.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),g.element.insertBefore(h,g.element.querySelector(".e-caret")),e.element.tabIndex=-1,g.element.removeAttribute("type"),g.element.onmousedown=function(){l.parent.notify(X,{})},g.element.onkeydown=function(){l.parent.notify(X,{})},g},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.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=this,a=new r.ColorPicker({enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,inline:!1,value:"#fff",created:function(){var e="backgroundcolor"===n?s.parent.backgroundColor.default:s.parent.fontColor.default;a.setProperties({value:e})},mode:"backgroundcolor"===n?s.parent.backgroundColor.mode:s.parent.fontColor.mode,modeSwitcher:"backgroundcolor"===n?s.parent.backgroundColor.modeSwitcher:s.parent.fontColor.modeSwitcher,beforeTileRender:function(e){if(e.element.classList.add("e-rte-square-palette"),e.element.classList.add("e-custom-tile"),!t.isNullOrUndefined(o.parent.cssClass))for(var n=o.parent.getCssClass().split(" "),i=0;i<n.length;i++)""!==n[i].trim()&&e.element.classList.add(n[i]);""===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},s.parent.notify(Y,{}),s.currentElement.querySelector(".e-rte-elements").style.borderBottomColor=i;var o=s.parent.formatter.editorManager.nodeSelection.getRange(s.parent.contentModule.getDocument()),r=t.closest(o.startContainer.parentNode,"table");("TD"===o.startContainer.nodeName||"TH"===o.startContainer.nodeName||"BODY"===o.startContainer.nodeName||t.closest(o.startContainer.parentNode,"td,th"))&&o.collapsed&&"BackgroundColor"===e.subCommand&&t.closest(r,"."+le)?s.parent.notify("tableColorPickerChanged",n):s.parent.notify("colorPickerChanged",n),s.currentDropdown.toggle()},beforeModeSwitch:function(e){""===(i=a.value)&&a.setProperties({value:"Picker"===e.mode?"#008000ff":""},!0),a.showButtons="Palette"!==e.mode}});return a.isStringTemplate=!0,a.columns="backgroundcolor"===n?this.parent.backgroundColor.columns:this.parent.fontColor.columns,a.presetColors="backgroundcolor"===n?this.parent.backgroundColor.colorCode:this.parent.fontColor.colorCode,a.cssClass=("backgroundcolor"===n?"e-rte-backgroundcolor-colorpicker":"e-rte-fontcolor-colorpicker")+" "+e.cssClass,a.createElement=this.parent.createElement,a.appendTo(document.getElementById(e.target)),a},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}(),at=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,Se,w(this.parent.toolbarSettings.itemConfigs),!0):this.tools=Se}return n.prototype.addEventListener=function(){this.parent.on(ee,this.setRtl,this),this.parent.on(ie,this.setCssClass,this),this.parent.on(V,this.removeEventListener,this)},n.prototype.removeEventListener=function(){this.parent.off(ee,this.setRtl),this.parent.off(ie,this.setCssClass),this.parent.off(V,this.removeEventListener)},n.prototype.setCssClass=function(e){t.isNullOrUndefined(this.toolbarObj)||(t.isNullOrUndefined(e.oldCssClass)?this.toolbarObj.setProperties({cssClass:(this.toolbarObj.cssClass+" "+e.cssClass).trim()}):this.toolbarObj.setProperties({cssClass:(this.toolbarObj.cssClass.replace(e.oldCssClass,"").trim()+" "+e.cssClass).trim()}))},n.prototype.setRtl=function(e){t.isNullOrUndefined(this.toolbarObj)||this.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.getClass=function(e){var t;switch(e){case"fontsize":t="e-rte-inline-size-template";break;case"fontcolor":case"backgroundcolor":t="e-rte-inline-color-template";break;default:t="e-rte-inline-template"}return t},n.prototype.getTemplateObject=function(e,t){var n;switch(e){case"fontcolor":case"backgroundcolor":case"numberformatlist":case"bulletformatlist":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,cssClass:this.parent.inlineMode.enable?this.getClass(e):"",tooltipText:f(e,this.locator)}},n.prototype.getObject=function(e,t){var n=e.toLowerCase();if(-1!==Ne.indexOf(n))return this.getTemplateObject(n,t);switch(n){case"|":return{type:"Separator"};case"-":return{type:"Separator",cssClass:"e-rte-horizontal-separator"};default:return this.parent.showTooltip?{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}:{id:this.parent.getID()+"_"+t+"_"+this.tools[n.toLocaleLowerCase()].id,prefixIcon:this.tools[n.toLocaleLowerCase()].icon,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(){if(s.undo&&0===i.parent.formatter.getUndoRedoStack().length&&i.parent.formatter.saveData(),a.call(i),i.parent.formatter.getUndoRedoStack().length>0){var e=i.parent.createElement("div"),t=i.parent.formatter.getUndoRedoStack()[i.parent.formatter.getUndoRedoStack().length-1].text.cloneNode(!0);if(e.appendChild(t),e.innerHTML.trim()===i.parent.inputElement.innerHTML.trim())return}s.undo&&i.parent.formatter.saveData()}}o.push(e)}}(a[s]);for(var l=0;l<o.length;l++){var d=o[l].tooltipText,c=void 0;(c=Ye[""+d]?t.Browser.isDevice&&u()?Ye[""+d].replace("Ctrl","Cmd"):Ye[""+d]:d)&&(o[l].tooltipText=d!==c?d+" ("+c+")":d)}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,cssClass:e.cssClass}},n.prototype.render=function(t){this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.toolbarRenderer.renderToolbar(this.getToolbarOptions(t))},n}(),lt=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),"Images"!==n.command&&"Videos"!==n.command&&"Audios"!==n.command&&"Table"!==n.command||e.element.setAttribute("title",v(n.text)),"Alignments"!==n.command&&"JustifyLeft"!==n.subCommand&&"JustifyRight"!==n.subCommand&&"JustifyCenter"!==n.subCommand||e.element.setAttribute("title",f(n.subCommand.toLocaleLowerCase(),this.locator)),"Formats"===n.command&&e.element.setAttribute("title",b(n.subCommand.toLocaleLowerCase(),this.locator,tt)),"Font"===n.command&&e.element.setAttribute("title",b(n.value.toLocaleLowerCase(),this.locator,et)),"BulletFormatList"===n.subCommand&&e.element.setAttribute("title",b(n.value.toLocaleLowerCase(),this.locator,it)),"NumberFormatList"===n.subCommand&&e.element.setAttribute("title",b(n.text.replace(/\s/g,"").toLocaleLowerCase(),this.locator,nt)),"FontSize"===n.subCommand&&e.element.setAttribute("title",b(n.value.toLocaleLowerCase(),null,null,this.parent))},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;Ne.forEach(function(r){var s=void 0;if(-1!==c(r,e.items))switch(r){case"numberformatlist":if(s=t.select("#"+n.parent.getID()+"_"+i+"_NumberFormatList",o),t.isNullOrUndefined(s)||s.classList.contains(he))return;var a=n.parent.numberFormatList.types.slice();a.forEach(function(e){Object.defineProperties(e,{command:{value:"Lists",enumerable:!0},subCommand:{value:"NumberFormatList",enumerable:!0}})}),n.numberFormatListDropDown=n.toolbarRenderer.renderListDropDown({cssClass:"e-order-list e-rte-elements e-icons",itemName:"NumberFormatList",items:a,element:s});break;case"bulletformatlist":if(s=t.select("#"+n.parent.getID()+"_"+i+"_BulletFormatList",o),t.isNullOrUndefined(s)||s.classList.contains(he))return;var l=n.parent.bulletFormatList.types.slice();l.forEach(function(e){Object.defineProperties(e,{command:{value:"Lists",enumerable:!0},subCommand:{value:"BulletFormatList",enumerable:!0}})}),n.bulletFormatListDropDown=n.toolbarRenderer.renderListDropDown({cssClass:"e-unorder-list e-rte-elements e-icons",itemName:"BulletFormatList",items:l,element:s});break;case"formats":if(s=t.select("#"+n.parent.getID()+"_"+i+"_Formats",o),t.isNullOrUndefined(s)||s.classList.contains(he))return;var d=n.parent.format.types.slice();d.forEach(function(e){Object.defineProperties(e,{command:{value:"Formats",enumerable:!0},subCommand:{value:e.value,enumerable:!0}})});var p=t.isNullOrUndefined(n.parent.format.default)?d[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(d,p,"text","text")),cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-formats-tbar-btn",itemName:"Formats",items:d,element:s});break;case"fontname":if(s=t.select("#"+n.parent.getID()+"_"+i+"_FontName",o),t.isNullOrUndefined(s)||s.classList.contains(he))return;var u=n.parent.fontFamily.items.slice();u.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontName",enumerable:!0}})});var g=t.isNullOrUndefined(n.parent.fontFamily.default)?u[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(u,g,"text","text")),cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-font-name-tbar-btn",itemName:"FontName",items:u,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(he))return;var f=!t.isNullOrUndefined(n.fontSizeDropDown)&&!t.isNullOrUndefined(n.fontSizeDropDown.items)&&n.fontSizeDropDown.items.length>0?n.fontSizeDropDown.items:JSON.parse(JSON.stringify(n.parent.fontSize.items.slice()));f.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontSize",enumerable:!0}})});var b=t.isNullOrUndefined(n.parent.fontSize.default)?f[1].text:n.parent.fontSize.default;n.fontSizeDropDown=n.toolbarRenderer.renderDropDownButton({content:n.dropdownContent(n.parent.fontSize.width,i,m(h(f,b.replace(/\s/g,""),"value","text"))),cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-font-size-tbar-btn",itemName:"FontSize",items:f,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(he))return;n.alignDropDown=n.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-alignment-tbar-btn",itemName:"Alignments",items:Te,element:s});break;case"align":case"videoalign":n.renderAlignmentDropDown(i,o,s,r);break;case"display":case"audiolayoutoption":case"videolayoutoption":n.renderDisplayDropDown(i,o,s,r);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)}}),this.parent.inlineMode.enable&&this.setCssClass({cssClass:this.parent.getCssClass()})},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,"."+de))?"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,"."+de))?"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 C=this.formatDropDown.items;n=t.isNullOrUndefined(t.closest(this.formatDropDown.element,"."+de))?"toolbar":"quick";var y=t.isNullOrUndefined(this.parent.format.default)?C[0].text:this.parent.format.default;i=this.dropdownContent(this.parent.format.width,n,"quick"===n?"":h(C,y,"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(he)||(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:Ie,element:i}))},n.prototype.columnDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableColumns",n)).classList.contains(he)||(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:Ue,element:i}))},n.prototype.cellDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableCell",n)).classList.contains(he)||(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:Be,element:i}))},n.prototype.verticalAlignDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableCellVerticalAlign",n)).classList.contains(he)||(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:je,element:i}))},n.prototype.renderDisplayDropDown=function(e,n,i,o){(i=t.select("#"+this.parent.getID()+"_"+e+("display"===o?"_Display":"videolayoutoption"===o?"_VideoLayoutOption":"_AudioLayoutOption"),n)).classList.contains(he)||(this.displayDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"display"===o?"e-display e-icons":"videolayoutoption"===o?"e-video-display e-icons":"e-audio-display e-icons",cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-quick-dropdown",itemName:"display"===o?"Display":"videolayoutoption"===o?"VideoLayoutOption":"AudioLayoutOption",items:"display"===o?De:"videolayoutoption"===o?Re:Me,element:i}))},n.prototype.renderAlignmentDropDown=function(e,n,i,o){(i=t.select("#"+this.parent.getID()+"_"+e+("align"===o?"_Align":"_VideoAlign"),n)).classList.contains(he)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:ce+" e-rte-dropdown-icons e-quick-dropdown",itemName:"align"===o?"Align":"VideoAlign",items:"align"===o?Oe:we,element:i}))},n.prototype.tableStylesDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Styles",n)).classList.contains(he)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-style e-icons",cssClass:ce+" e-rte-dropdown-icons e-quick-dropdown",itemName:"Styles",items:this.parent.tableSettings.styles,element:i}))},n.prototype.removeDropDownClasses=function(e){t.removeClass([e],[he,ce,"e-rte-dropdown-icons",pe])},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()),this.numberFormatListDropDown&&(this.removeDropDownClasses(this.numberFormatListDropDown.element),this.numberFormatListDropDown.destroy()),this.bulletFormatListDropDown&&(this.removeDropDownClasses(this.bulletFormatListDropDown.element),this.bulletFormatListDropDown.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}),this.numberFormatListDropDown&&this.numberFormatListDropDown.setProperties({enableRtl:e.enableRtl}),this.bulletFormatListDropDown&&this.bulletFormatListDropDown.setProperties({enableRtl:e.enableRtl})},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){for(var t=[this.formatDropDown,this.fontNameDropDown,this.fontSizeDropDown,this.alignDropDown,this.imageAlignDropDown,this.displayDropDown,this.numberFormatListDropDown,this.bulletFormatListDropDown,this.tableRowsDropDown,this.tableColumnsDropDown,this.tableCellVerticalAlignDropDown],n=0;n<t.length;n++)this.updateCss(t[n],e)},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(ee,this.setRtl,this),this.parent.on(V,this.removeEventListener,this),this.parent.on(Q,this.onPropertyChanged,this),this.parent.on(ie,this.setCssClass,this))},n.prototype.onIframeMouseDown=function(){this.parent.getToolbarElement().querySelectorAll('.e-rte-dropdown-btn[aria-expanded="true"]').length>0&&E(document,"mousedown")},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off(ee,this.setRtl),this.parent.off("beforeDropDownItemRender",this.beforeRender),this.parent.off(V,this.removeEventListener),this.parent.off(Q,this.onPropertyChanged),this.parent.off(ie,this.setCssClass))},n}(),dt=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}(),ct=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}(),pt=function(){function e(e){this.parent=e,this.addEventListener(),this.serviceLocator=new dt,this.serviceLocator.register("rendererFactory",new ct)}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(V,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)}"NumberFormatList"!==e.item.command&&"BulletFormatList"!==e.item.command||(e.originalEvent.target.classList.contains("e-order-list")||e.originalEvent.target.classList.contains("e-unorder-list"))&&(e.item.command="Lists",e.item.subCommand="NumberFormatList"===e.item.subCommand?"OL":"UL"),"Lists"===e.item.command&&e.originalEvent.target.classList.contains("e-caret")&&(e.originalEvent.target.parentElement.classList.contains("e-rte-bulletformatlist-dropdown")||e.originalEvent.target.parentElement.classList.contains("e-rte-numberformatlist-dropdown"))&&(e.item.command=e.item.subCommand=null),this.parent.notify("html-toolbar-click",e),this.parent.notify("markdown-toolbar-click",e)}},e.prototype.dropDownSelect=function(e){if(this.parent.notify(Y,{}),!document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))||!e.item||"Images"!==e.item.command&&"Audios"!==e.item.command&&"Videos"!==e.item.command&&"VideoLayoutOption"!==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;if("Lists"===e.item.command){var n={listStyle:e.item.value,listImage:e.item.listImage,type:e.item.subCommand};this.parent.formatter.process(this.parent,e,e.originalEvent,n)}else this.parent.formatter.process(this.parent,e,e.originalEvent,t)}this.parent.notify(X,{})},e.prototype.renderSelection=function(e){this.parent.notify(Y,{}),this.parent.formatter.process(this.parent,e,e.originalEvent,null),this.parent.notify(X,{})},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(V,this.removeEventListener)},e}(),ht=function(){function n(n,i){this.tools={},this.parent=n,this.isToolbar=!1,this.locator=i,this.isTransformChild=!1,this.renderFactory=this.locator.getService("rendererFactory"),d(this.parent),I(this.parent),this.renderFactory.addRenderer(e.RenderType.Toolbar,new st(this.parent,this.locator)),this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.baseToolbar=new at(this.parent,this.locator),this.addEventListener(),this.parent.toolbarSettings&&Object.keys(this.parent.toolbarSettings.itemConfigs).length>0?t.extend(this.tools,Se,w(this.parent.toolbarSettings.itemConfigs),!0):this.tools=Se}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();break;case"enter":e.target.classList.contains("e-hor-nav")&&this.adjustContentHeight(e.target,!0)}},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.inlineMode.enable?this.parent.element.insertBefore(this.tbElement,this.editPanel):(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)))},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,cssClass:this.parent.getCssClass()}),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||f.top<s+n)&&(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,cssClass:this.parent.getCssClass()}),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()];"en-US"!==this.parent.locale&&(n.tooltip=f(e.updateItem.toLocaleLowerCase(),this.locator));var i=N(y(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(),e.baseToolbar.toolbarObj.refreshOverflow()}},n.prototype.updateToolbarStatus=function(e){this.tbElement&&(!this.parent.inlineMode.enable||!u()&&t.Browser.isDevice)&&C({args:e,dropDownModule:this.dropDownModule,parent:this.parent,tbElements:t.selectAll("."+ue,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=N(y(n),e.toolbarObj.items);this.tbItems=t.selectAll("."+ue,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||S(e,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus())},n.prototype.removeTBarItems=function(e){t.isNullOrUndefined(this.baseToolbar.toolbarObj)&&(this.baseToolbar=this.parent.getBaseToolbarObject());var n=N(y(e),this.baseToolbar.toolbarObj.items);this.tbItems=this.parent.inlineMode.enable?t.selectAll("."+ue,this.baseToolbar.toolbarObj.element):t.selectAll("."+ue,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.parent.element.classList.remove("e-rtl"),this.baseToolbar.toolbarObj.refreshOverflow(),this.parent.enableRtl&&this.parent.element.classList.add("e-rtl")},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(){t.isNullOrUndefined(this.parent)||this.isToolbarDestroyed()&&(this.destroyToolbar(),this.keyBoardModule&&this.keyBoardModule.destroy())},n.prototype.moduleDestroy=function(){this.parent=null,this.baseToolbar.parent=null,this.toolbarActionModule.parent=null,this.dropDownModule.parent=null},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.toolbarClickHandler=function(e){var n=t.closest(e.originalEvent.target,".e-hor-nav");this.adjustContentHeight(n,!1)},n.prototype.adjustContentHeight=function(n,i){if(n&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&!t.isNullOrUndefined(n)){var o=this.tbElement.querySelector(".e-toolbar-extended");t.isNullOrUndefined(o)||(t.setStyleAttribute(o,{maxHeight:"",display:"block"}),t.setStyleAttribute(o,{maxHeight:o.offsetHeight+"px",display:""}));var r=n.classList.contains("e-nav-active"),s=i?!r:!!r;s?t.addClass([this.tbElement],["e-expand-open"]):t.removeClass([this.tbElement],["e-expand-open"]),this.parent.setContentHeight("toolbar",s)}else(t.Browser.isDevice||this.parent.inlineMode.enable)&&(this.isToolbar=!0);t.isNullOrUndefined(n)&&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)},n.prototype.unWireEvents=function(){t.EventHandler.remove(this.tbElement,"focusin",this.tbFocusHandler)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.dropDownModule=new lt(this.parent,this.locator),this.toolbarActionModule=new pt(this.parent),this.parent.on(_,this.renderToolbar,this),this.parent.on($,this.scrollHandler,this),this.parent.on("bind-on-end",this.toolbarBindEvent,this),this.parent.on("toolbar-updated",this.updateToolbarStatus,this),this.parent.on(Q,this.onPropertyChanged,this),this.parent.on("refresh-begin",this.onRefresh,this),this.parent.on(V,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(J,this.mouseDownHandler,this),this.parent.on("sourceCodeMouseDown",this.mouseDownHandler,this),this.parent.on(ie,this.setCssClass,this),this.parent.on(ne,this.moduleDestroy,this),this.parent.inlineMode.enable||u()||this.parent.on("toolbarClick",this.toolbarClickHandler,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(_,this.renderToolbar),this.parent.off($,this.scrollHandler),this.parent.off("bind-on-end",this.toolbarBindEvent),this.parent.off("toolbar-updated",this.updateToolbarStatus),this.parent.off(Q,this.onPropertyChanged),this.parent.off("refresh-begin",this.onRefresh),this.parent.off(V,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(J,this.mouseDownHandler),this.parent.off("sourceCodeMouseDown",this.mouseDownHandler),this.parent.off(ie,this.setCssClass),this.parent.off(ne,this.moduleDestroy),this.parent.inlineMode.enable||u()||this.parent.off("toolbarClick",this.toolbarClickHandler))},n.prototype.setCssClass=function(e){this.toolbarObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?this.toolbarObj.setProperties({cssClass:(this.toolbarObj.cssClass+" "+e.cssClass).trim()}):this.toolbarObj.setProperties({cssClass:(this.toolbarObj.cssClass.replace(e.oldCssClass,"").trim()+" "+e.cssClass).trim()}))},n.prototype.onRefresh=function(){this.parent.inlineMode.enable||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)||S(this.baseToolbar,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus()),this.parent.notify("dynamicModule",{}))},n.prototype.getModuleName=function(){return"toolbar"},n}(),ut=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)}}(),mt=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},gt={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,"<":188,">":190},ft=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}ut(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 gt[""+e]||e.toUpperCase().charCodeAt(0)};var i;return n.configCache={},mt([t.Property({})],n.prototype,"keyConfigs",void 0),mt([t.Property("keyup")],n.prototype,"eventName",void 0),mt([t.Event()],n.prototype,"keyAction",void 0),n=i=mt([t.NotifyPropertyChanges],n)}(t.Base),bt=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,Se,w(this.parent.toolbarSettings.itemConfigs),!0):this.tools=Se}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;Ne.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");if(l.id=i,l.classList.add("e-rte-fontcolor-element"),!t.isNullOrUndefined(n.parent.cssClass))for(var d=n.parent.cssClass.split(" "),p=0;p<d.length;p++)""!==d[p].trim()&&l.classList.add(d[p]);document.body.appendChild(l),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" e-rte-elements e-icons"+n.parent.getCssClass(!0),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 h=n.parent.createElement("input");if(h.id=i,h.classList.add("e-rte-backgroundcolor-element"),!t.isNullOrUndefined(n.parent.cssClass))for(var d=n.parent.cssClass.split(" "),p=0;p<d.length;p++)""!==d[p].trim()&&h.classList.add(d[p]);document.body.appendChild(h),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" e-rte-elements e-icons"+n.parent.getCssClass(!0),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.defaultColorPicker)}}),this.parent.inlineMode.enable&&this.setCssClass({cssClass:this.parent.getCssClass()})},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&&(this.defaultColorPicker=e.children[0].style.borderBottomColor,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.setCssClass=function(e){this.updateCss(this.fontColorPicker,this.fontColorDropDown,e),this.updateCss(this.backgroundColorPicker,this.backgroundColorDropDown,e)},n.prototype.updateCss=function(e,n,i){e&&i.cssClass&&(t.isNullOrUndefined(i.oldCssClass)?(e.setProperties({cssClass:(e.cssClass+" "+i.cssClass).trim()}),n.setProperties({cssClass:(n.cssClass+" "+i.cssClass).trim()})):(e.setProperties({cssClass:(e.cssClass.replace(i.oldCssClass,"").replace(" "," ").trim()+" "+i.cssClass).trim()}),n.setProperties({cssClass:(n.cssClass.replace(i.oldCssClass,"").replace(" "," ").trim()+" "+i.cssClass).trim()})))},n.prototype.addEventListener=function(){this.parent.on("toolbarRenderComplete",this.renderColorPickerInput,this),this.parent.on(ee,this.setRtl,this),this.parent.on(V,this.destroy,this),this.parent.on("destroy-color-picker",this.destroyColorPicker,this),this.parent.on(Q,this.onPropertyChanged,this),this.parent.on(ie,this.setCssClass,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(V,this.destroy),this.parent.off(ee,this.setRtl),this.parent.off("destroy-color-picker",this.destroyColorPicker),this.parent.off(Q,this.onPropertyChanged),this.parent.off(ie,this.setCssClass)},n}(),vt=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 lt(this.parent,this.locator),this.colorPickerObj=new bt(this.parent,this.locator)}return n.prototype.appendPopupContent=function(){this.toolbarElement=this.parent.createElement("div",{className:de}),this.element.classList.contains("e-rte-text-popup")&&this.toolbarElement.classList.add("e-rte-text-quicktoolbar"),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":"Text"===e.popupType?"e-rte-text-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,e.cssClass),this.popupRenderer.renderPopup(this),this.addEventListener()},n.prototype.createToolbar=function(e,t,n){this.quickTBarObj=new at(this.parent,this.locator),this.quickTBarObj.render({container:"quick",target:this.toolbarElement,items:e,mode:t,cssClass:n}),this.quickTBarObj.toolbarObj.refresh()},n.prototype.setPosition=function(e){var n,i,o=t.closest(e.target,".e-img-caption"),r=!e.target.classList.contains("e-imginline")&&!e.target.classList.contains("e-imgbreak"),s=t.isNullOrUndefined(o)?e.target:o;t.addClass([this.toolbarElement],["e-remove-white-space"]);var a=s.offsetTop,l=window.pageYOffset+e.parentData.top;i=a-e.editTop>e.popHeight?l+e.tBarElementHeight+(a-e.editTop)-e.popHeight-5:e.editTop+e.editHeight-(a+s.offsetHeight)>e.popHeight?l+e.tBarElementHeight+(a-e.editTop)+s.offsetHeight+5:e.y,n=(s=r?e.target:s).offsetWidth>e.popWidth?s.offsetWidth/2-e.popWidth/2+e.parentData.left+s.offsetLeft:e.parentData.left+s.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||"text"===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||"text"===n?window.pageXOffset+(e.windowWidth-(e.popWidth+e.bodyRightSpace+10)):e.x-e.popWidth;break;case"left":i="inline"===n||"text"===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,r){var s=this,a={popup:this.popupObj,cancel:!1,targetElement:i,positionX:e,positionY:n};this.parent.trigger("beforeQuickToolbarOpen",a,function(a){if(!a.cancel){var l=void 0,d=void 0,c=window.getComputedStyle(document.body),p=parseFloat(c.marginRight.split("px")[0])+parseFloat(c.paddingRight.split("px")[0]),h=window.innerHeight,m=window.innerWidth,g=s.parent.element,f=!t.isNullOrUndefined(s.parent.getToolbar()),b=f&&s.parent.toolbarModule.getToolbarHeight(),v=f&&s.parent.toolbarModule.getExpandTBarPopHeight(),C=f?b+v:0;if(t.addClass([s.element],["e-hide"]),t.Browser.isDevice&&!u()&&t.addClass([s.parent.getToolbar()],["e-hide"]),s.parent.iframeSettings.enable)l=(y=s.contentRenderer.getPanel().contentWindow).pageYOffset,d=y.innerHeight;else{var y=t.closest(i,".e-rte-content");l=y?y.scrollTop:0,d=y?y.offsetHeight:0}(s.parent.inlineMode.enable||t.closest(i,"table")||"text"===r||"link"===r)&&"IMG"!==i.tagName||(s.parent.disableToolbarItem(s.parent.toolbarSettings.items),s.parent.enableToolbarItem(["Undo","Redo"])),t.append([s.element],document.body),s.parent.showTooltip&&(s.tooltip=new o.Tooltip({target:"#"+s.element.id+" [title]",openDelay:400,showTipPointer:!0,windowCollision:!0,position:"BottomCenter"}),s.tooltip.appendTo(s.element)),s.popupObj.position.X=a.positionX+20,s.popupObj.position.Y=a.positionY+20,s.popupObj.dataBind(),s.popupObj.element.classList.add("e-popup-open"),s.dropDownButtons.renderDropDowns({container:s.toolbarElement,containerType:"quick",items:s.stringItems}),s.colorPickerObj.renderColorPickerInput({container:s.toolbarElement,containerType:"quick",items:s.stringItems});var N={x:e,y:n,target:i,editTop:l,editHeight:d,popup:s.popupObj.element,popHeight:s.popupObj.element.offsetHeight,popWidth:s.popupObj.element.offsetWidth,parentElement:g,bodyRightSpace:p,windowY:window.pageYOffset,windowHeight:h,windowWidth:m,parentData:g.getBoundingClientRect(),tBarElementHeight:C};("IMG"===i.tagName||"AUDIO"===i.tagName||"VIDEO"===i.tagName||"IFRAME"===i.tagName||i.classList&&(i.classList.contains("e-audio-wrap")||i.classList.contains("e-clickelem")||i.classList.contains("e-video-clickelem")))&&s.setPosition(N),s.parent.inlineMode.enable||s.checkCollision(N,"parent",""),s.checkCollision(N,"document",s.parent.inlineMode.enable?"inline":"text"===r?"text":""),s.popupObj.element.classList.remove("e-popup-open"),t.removeClass([s.element],["e-hide"]),s.popupObj.show({name:"ZoomIn",duration:t.Browser.isIE?250:400}),s.popupObj&&s.parent.cssClass&&(t.removeClass([s.popupObj.element],s.parent.cssClass),t.addClass([s.popupObj.element],s.parent.cssClass)),t.setStyleAttribute(s.element,{maxWidth:window.outerWidth+"px"}),t.addClass([s.element],["e-rte-pop"]),s.isDOMElement=!0}})},n.prototype.hidePopup=function(){var e=this.parent.sourceCodeModule.getViewPanel();if(t.Browser.isDevice&&!u()&&t.removeClass([this.parent.getToolbar()],["e-hide"]),t.isNullOrUndefined(document.querySelector(".e-tooltip-wrap")))t.isNullOrUndefined(this.tooltip)||this.tooltip.destroy();else{if(!t.isNullOrUndefined(document.querySelector("#"+this.element.id+" [data-tooltip-id]"))){var n=document.querySelector("#"+this.element.id+" [data-tooltip-id]"),i=n.getAttribute("data-content");n.removeAttribute("data-content"),n.setAttribute("title",i),n.removeAttribute("data-tooltip-id")}this.tooltip.destroy()}t.isNullOrUndefined(this.parent.getToolbar())||this.parent.inlineMode.enable||(t.isNullOrUndefined(e)||"none"===e.style.display)&&this.parent.enableToolbarItem(this.parent.toolbarSettings.items),this.parent.showTooltip&&!t.isNullOrUndefined(document.querySelector(".e-tooltip-wrap"))&&this.parent.notify("destroyTooltip",{args:event}),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=this.popupObj;this.parent.trigger("quickToolbarClose",n)}},n.prototype.updateStatus=function(e){C({args:e,dropDownModule:this.dropDownButtons,parent:this.parent,tbElements:t.selectAll("."+ue,this.element),tbItems:this.quickTBarObj.toolbarObj.items},!0,this.parent),this.parent.quickToolbarSettings.text&&this.parent.quickToolbarModule.textQTBar&&(C({args:e,dropDownModule:this.parent.quickToolbarModule.textQTBar.dropDownButtons,parent:this.parent,tbElements:t.selectAll("."+ue,this.parent.quickToolbarModule.textQTBar.element),tbItems:this.parent.quickToolbarModule.textQTBar.quickTBarObj.toolbarObj.items},!0,this.parent),S(this.parent.quickToolbarModule.textQTBar.quickTBarObj,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus())),t.select(".e-rte-srctextarea",this.parent.element)||S(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(V,this.destroy,this),this.parent.on(Q,this.onPropertyChanged,this),(this.parent.inlineMode.enable||this.parent.quickToolbarSettings.text)&&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(V,this.destroy),this.parent.off(Q,this.onPropertyChanged),(this.parent.inlineMode.enable||this.parent.quickToolbarSettings.text)&&this.parent.off("toolbar-updated",this.updateStatus))},n}(),Ct=function(){function e(e){this.parent=e}return e.prototype.quickToolbarOpen=function(){var e=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}(),yt=function(){function n(t,n){this.parent=t,this.locator=n,this.renderFactory=this.locator.getService("rendererFactory"),this.renderFactory.addRenderer(e.RenderType.Popup,new Ct(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,cssClass:this.parent.getCssClass()}},n.prototype.createQTBar=function(e,t,n,i){if(n.length<1)return null;var o=new vt(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.keyUpQT=function(e){27===e.which&&this.hideQuickToolbars()},n.prototype.renderQuickToolbars=function(){this.linkQTBar||this.imageQTBar||this.audioQTBar||this.videoQTBar||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),t.isNullOrUndefined(this.parent.quickToolbarSettings.text)||this.parent.inlineMode.enable||(this.textQTBar=this.createQTBar("Text","MultiRow",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.audioQTBar=this.createQTBar("Audio","MultiRow",this.parent.quickToolbarSettings.audio,e.RenderType.AudioToolbar),this.renderFactory.addRenderer(e.RenderType.AudioToolbar,this.audioQTBar),this.videoQTBar=this.createQTBar("Video","MultiRow",this.parent.quickToolbarSettings.video,e.RenderType.VideoToolbar),this.renderFactory.addRenderer(e.RenderType.VideoToolbar,this.videoQTBar),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),t.EventHandler.add(this.linkQTBar.element,"keyup",this.keyUpQT,this)),this.imageQTBar&&(t.EventHandler.add(this.imageQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.imageQTBar.element,"keyup",this.keyUpQT,this)),this.audioQTBar&&(t.EventHandler.add(this.audioQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.audioQTBar.element,"keyup",this.keyUpQT,this)),this.videoQTBar&&(t.EventHandler.add(this.videoQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.videoQTBar.element,"keyup",this.keyUpQT,this)),this.textQTBar&&(t.EventHandler.add(this.textQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.textQTBar.element,"keyup",this.keyUpQT,this)),this.tableQTBar&&(t.EventHandler.add(this.tableQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.tableQTBar.element,"keyup",this.keyUpQT,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),t.EventHandler.add(this.inlineQTBar.element,"keyup",this.keyUpQT,this))},n.prototype.showInlineQTBar=function(e,n,i){t.isNullOrUndefined(this.parent)||this.parent.readonly||"img"===i.tagName.toLowerCase()||this.inlineQTBar.showPopup(e,n,i)},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.audioQTBar&&!p(this.audioQTBar.element,"e-popup-close")&&document.body.contains(this.audioQTBar.element)&&this.audioQTBar.hidePopup(),this.videoQTBar&&!p(this.videoQTBar.element,"e-popup-close")&&document.body.contains(this.videoQTBar.element)&&this.videoQTBar.hidePopup(),this.tableQTBar&&!p(this.tableQTBar.element,"e-popup-close")&&document.body.contains(this.tableQTBar.element)&&this.tableQTBar.hidePopup(),t.isNullOrUndefined(this.parent)||!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;this.hideInlineQTBar();l=this.parent.element.getBoundingClientRect().left;if(this.offsetX=this.parent.iframeSettings.enable?window.pageXOffset+l+n.clientX: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");o=r||o;var s=this.parent.getRange().startContainer.parentElement,a=this.parent.getRange().endContainer.parentElement;if((t.isNullOrUndefined(t.closest(s,"A"))||t.isNullOrUndefined(t.closest(a,"A")))&&(!t.closest(o,"td,th")||!i.collapsed)&&("IMG"!==o.tagName||this.parent.getRange().startOffset!==this.parent.getRange().endOffset)){if(this.parent.inlineMode.onSelection&&i.collapsed)return;this.target=o,this.showInlineQTBar(this.offsetX,this.offsetY,o)}}}}if(!t.isNullOrUndefined(this.textQTBar)&&!t.isNullOrUndefined(this.parent.quickToolbarSettings.text)&&!this.parent.inlineMode.enable){var n=e.args.touches?e.args.changedTouches[0]:e.args,o=e.args.target;this.hideQuickToolbars();var l=this.parent.element.getBoundingClientRect().left;if(this.offsetX=this.parent.iframeSettings.enable?this.parent.element.ownerDocument.documentElement.scrollLeft+l+n.clientX:n.pageX,this.offsetY=g(n,this.parent.element,this.parent.iframeSettings.enable),(i=this.parent.getRange()).endContainer.parentElement.tagName===i.startContainer.parentElement.tagName&&"A"===i.startContainer.parentElement.tagName&&"A"===i.endContainer.parentElement.tagName||"IMG"===o.tagName||"VIDEO"===o.tagName||"AUDIO"===o.tagName||1===o.childNodes[0].nodeType&&o.childNodes[0].classList.contains("e-rte-audio")||this.parent.getRange().startOffset===this.parent.getRange().endOffset)return;this.target=o,this.textQTBar.showPopup(this.offsetX,this.offsetY,o,"text")}},n.prototype.keyDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!u()||t.isNullOrUndefined(t.select(".e-rte-inline-popup",document))||this.hideInlineQTBar(),this.textQTBar&&!p(this.textQTBar.element,"e-popup-close")&&this.textQTBar.hidePopup()},n.prototype.inlineQTBarMouseDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!u()||t.isNullOrUndefined(t.select(".e-rte-inline-popup",document))||this.hideInlineQTBar(),t.isNullOrUndefined(this.parent.quickToolbarSettings.text)||this.textQTBar&&!p(this.textQTBar.element,"e-popup-close")&&document.body.contains(this.textQTBar.element)&&this.textQTBar.hidePopup()},n.prototype.keyUpHandler=function(e){var n=e.args;if(this.parent.inlineMode.enable&&!t.Browser.isDevice){if(this.parent.inlineMode.onSelection)return void(this.parent.getSelection().length>0&&(n.ctrlKey&&65===n.keyCode||n.shiftKey&&(33===n.keyCode||34===n.keyCode||35===n.keyCode||36===n.keyCode||37===n.keyCode||38===n.keyCode||39===n.keyCode||40===n.keyCode))&&this.showInlineQTBar(this.offsetX,this.offsetY,n.target));this.deBounce(this.offsetX,this.offsetY,n.target)}this.parent.quickToolbarSettings.text&&!t.Browser.isDevice&&(n.ctrlKey&&65===n.keyCode||n.shiftKey&&(33===n.keyCode||34===n.keyCode||35===n.keyCode||36===n.keyCode||37===n.keyCode||38===n.keyCode||39===n.keyCode||40===n.keyCode))&&this.textQTBar.showPopup(this.offsetX,this.offsetY,n.target,"text")},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(){t.isNullOrUndefined(this.parent)||(this.linkQTBar&&(t.EventHandler.remove(this.linkQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.linkQTBar.element,"keyup",this.keyUpQT),this.linkQTBar.destroy()),this.textQTBar&&(t.EventHandler.remove(this.textQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.textQTBar.element,"keyup",this.keyUpQT),this.textQTBar.destroy()),this.imageQTBar&&(t.EventHandler.remove(this.imageQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.imageQTBar.element,"keyup",this.keyUpQT),this.imageQTBar.destroy()),this.audioQTBar&&(t.EventHandler.remove(this.audioQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.audioQTBar.element,"keyup",this.keyUpQT),this.audioQTBar.destroy()),this.videoQTBar&&(t.EventHandler.remove(this.videoQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.videoQTBar.element,"keyup",this.keyUpQT),this.videoQTBar.destroy()),this.tableQTBar&&(t.EventHandler.remove(this.tableQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.tableQTBar.element,"keyup",this.keyUpQT),this.tableQTBar.destroy()),this.inlineQTBar&&(t.EventHandler.remove(this.inlineQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.inlineQTBar.element,"keyup",this.keyUpQT),u()&&t.EventHandler.remove(document,"selectionchange",this.selectionChangeHandler),this.inlineQTBar.destroy()),this.removeEventListener())},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.wireInlineQTBarEvents=function(){this.parent.on("mouseUp",this.mouseUpHandler,this),this.parent.on(J,this.inlineQTBarMouseDownHandler,this),this.parent.on(K,this.keyDownHandler,this),this.parent.on(W,this.keyUpHandler,this),this.parent.on("sourceCodeMouseDown",this.mouseUpHandler,this),this.parent.on("renderInlineToolbar",this.renderInlineQuickToolbar,this),this.parent.on(ne,this.moduleDestroy,this)},n.prototype.unWireInlineQTBarEvents=function(){this.parent.off("mouseUp",this.mouseUpHandler),this.parent.off(J,this.inlineQTBarMouseDownHandler),this.parent.off(K,this.keyDownHandler),this.parent.off(W,this.keyUpHandler),this.parent.off("sourceCodeMouseDown",this.mouseUpHandler),this.parent.off("renderInlineToolbar",this.renderInlineQuickToolbar),this.parent.off(ne,this.moduleDestroy)},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.audioQTBar&&!p(this.audioQTBar.element,"e-popup-close")&&this.audioQTBar.hidePopup(),this.videoQTBar&&!p(this.videoQTBar.element,"e-popup-close")&&this.videoQTBar.hidePopup(),this.tableQTBar&&!p(this.tableQTBar.element,"e-popup-close")&&this.tableQTBar.hidePopup()},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(_,this.initializeQuickToolbars,this),this.parent.on(J,this.renderQuickToolbars,this),this.parent.on("toolbar-updated",this.toolbarUpdated,this),this.parent.on("drop",this.renderQuickToolbars,this),this.wireInlineQTBarEvents(),this.parent.on(Q,this.onPropertyChanged,this),"hide"===this.parent.quickToolbarSettings.actionOnScroll&&(this.parent.on($,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(V,this.destroy,this),this.parent.on(K,this.onKeyDown,this),this.parent.on(ee,this.setRtl,this),this.parent.on(ie,this.setCssClass,this),this.parent.on("hidePopup",this.hideQuickToolbars,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(),this.audioQTBar&&!p(this.audioQTBar.element,"e-popup-close")&&this.audioQTBar.hidePopup(),this.videoQTBar&&!p(this.videoQTBar.element,"e-popup-close")&&this.videoQTBar.hidePopup(),this.tableQTBar&&!p(this.tableQTBar.element,"e-popup-close")&&this.tableQTBar.hidePopup(),this.linkQTBar&&!p(this.linkQTBar.element,"e-popup-close")&&this.linkQTBar.hidePopup(),this.textQTBar&&!p(this.textQTBar.element,"e-popup-close")&&this.textQTBar.hidePopup())},n.prototype.onIframeMouseDown=function(){this.hideQuickToolbars(),this.hideInlineQTBar()},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass&&e.quickTBarObj.toolbarObj.cssClass!==n.cssClass)?e.quickTBarObj.toolbarObj.setProperties({cssClass:(e.quickTBarObj.toolbarObj.cssClass+" "+n.cssClass).trim()}):e.quickTBarObj.toolbarObj.setProperties({cssClass:(e.quickTBarObj.toolbarObj.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){for(var t=[this.inlineQTBar,this.imageQTBar,this.linkQTBar,this.textQTBar,this.tableQTBar],n=0;n<t.length;n++)this.updateCss(t[n],e)},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.audioQTBar&&this.audioQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.videoQTBar&&this.videoQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.linkQTBar&&this.linkQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.textQTBar&&this.textQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.removeEventListener=function(){this.deBouncer&&clearTimeout(this.deBouncer),this.parent.isDestroyed||(this.parent.off(_,this.initializeQuickToolbars),this.parent.off(J,this.renderQuickToolbars),this.parent.off("toolbar-updated",this.toolbarUpdated),this.parent.off("drop",this.renderQuickToolbars),this.unWireInlineQTBarEvents(),this.parent.off(Q,this.onPropertyChanged),"hide"===this.parent.quickToolbarSettings.actionOnScroll&&(this.parent.off($,this.hideQuickToolbars),this.parent.off("contentscroll",this.hideQuickToolbars)),this.parent.off("focusChange",this.hideQuickToolbars),this.parent.off(V,this.destroy),this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off(K,this.onKeyDown),this.parent.off(ee,this.setRtl),this.parent.off(ie,this.setCssClass),this.parent.off("hidePopup",this.hideQuickToolbars))},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($,this.hideQuickToolbars),this.parent.off("contentscroll",this.hideQuickToolbars)):(this.parent.on($,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}(),Nt=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:be}),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:this.parent.getText().replace(/(\r\n|\n|\r|\t)/gm,"");"Markdown"!==this.parent.editorMode&&-1!==e.indexOf("")?this.htmlLength=e.replace(/\u200B/g,"").length: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("."+be))&&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(_,this.renderCount,this),this.parent.on(W,this.refresh,this),this.parent.on("count",this.refresh,this),this.parent.on("refresh-begin",this.refresh,this),this.parent.on(J,this.refresh,this),this.parent.on(V,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(_,this.renderCount),this.parent.off(W,this.refresh),this.parent.off("refresh-begin",this.refresh),this.parent.off("count",this.refresh),this.parent.off(J,this.refresh),this.parent.off(V,this.destroy),this.parent.off("sourceCode",this.toggle),this.parent.off("updateSource",this.toggle))},n.prototype.getModuleName=function(){return"count"},n}(),St=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=q(),this.selection=new St,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(V,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off("toolbar-refresh",this.onRefreshHandler),this.parent.off(V,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}(),Ot=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("execCommandCallBack",this.commandCallBack,this),this.parent.on(V,this.removeEventListener,this)},e.prototype.commandCallBack=function(e){var n=!t.isNullOrUndefined(e.requestType)&&"FormatPainter"===e.requestType&&"format-copy"===e.action;t.isNullOrUndefined(e)||t.isNullOrUndefined(e.requestType)||"Undo"===e.requestType||"Redo"===e.requestType||n||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(V,this.removeEventListener)},e}(),wt=function(){function e(){}return e.prototype.process=function(e,n,i,o){var r,s,a=this,l=e.contentModule.getDocument().getSelection(),d=l.rangeCount>0?l.getRangeAt(l.rangeCount-1):null;t.isNullOrUndefined(o)||t.isNullOrUndefined(o.selection)||(s=o.selection.range);var c=!t.isNullOrUndefined(o)&&!t.isNullOrUndefined(o.cssClass)&&"e-video-inline"!==o.cssClass;if("HTML"===e.editorMode&&(t.isNullOrUndefined(n)||c||(t.isNullOrUndefined(n.name)||!t.isNullOrUndefined(n.name)&&"showDialog"!==n.name)&&(r=s?this.editorManager.nodeSelection.save(s,e.contentModule.getDocument()):this.editorManager.nodeSelection.save(d,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||"Audios"===n.item.command||"Videos"===n.item.command||"EmojiPicker"===n.item.command||!d||e.contentModule.getEditPanel().contains(this.getAncestorNode(d.commonAncestorContainer))||e.contentModule.getEditPanel()===d.commonAncestorContainer||e.contentModule.getPanel()===d.commonAncestorContainer){if(!t.isNullOrUndefined(n)&&-1!==e.maxLength&&!t.isNullOrUndefined(n.item.command)){var p=0;"Links"===n.item.command&&(p=0===o.text.length?o.url.length:o.text.length),"Images"!==n.item.command&&"Videos"!==n.item.command&&"Table"!==n.item.command&&"Files"!==n.item.command||(p=1);var h=e.getText().trim().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length-e.getSelection().length+p;if(!(-1===e.maxLength||h<=e.maxLength))return}if(t.isNullOrUndefined(n)){var u=i.action;n={};var m={originalEvent:i,cancel:!1,requestType:u||i.key+"Key",itemCollection:o};if(t.extend(n,n,m,!0),"tab"!==u&&"enter"!==u&&"space"!==u&&"escape"!==u&&("Markdown"===e.editorMode&&"insert-table"===u&&(o={headingText:e.localeObj.getConstant("TableHeadingText"),colText:e.localeObj.getConstant("TableColText")}),e.trigger(G,n,function(e){e.cancel&&("paste"!==u&&"cut"!==u&&"copy"!==u||i.preventDefault())})),!n.cancel){var g=!!t.isNullOrUndefined(e.tableModule)||!!e.tableModule&&e.tableModule.ensureInsideTableList;(9===i.which&&g||9!==i.which)&&(13===i.which&&"HTML"===e.editorMode&&(o={enterAction:e.enterKey}),this.editorManager.observer.notify("keydown"===i.type?"keydown":"keyup",{event:i,callBack:this.onSuccess.bind(this,e),value:o,enterAction:e.enterKey}))}}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||"FormatPainter"===n.item.subCommand||"EmojiPicker"===n.item.subCommand)&&(t.extend(n,n,{requestType:n.item.subCommand,cancel:!1,itemCollection:o,selectType:n.name},!0),e.trigger(G,n,function(s){if(!s.cancel){var l=!t.isNullOrUndefined(s.requestType)&&"FormatPainter"===s.requestType&&"format-copy"===s.name,d=!t.isNullOrUndefined(s.requestType)&&"FormatPainter"===s.requestType&&"format-paste"===s.name;(0===a.getUndoRedoStack().length&&"Links"!==s.item.command&&"Images"!==s.item.command&&!l||d)&&a.saveData(),e.isBlur=!1,!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(t.closest(r.range.startContainer.parentElement,".e-img-caption"))&&"false"==t.closest(r.range.startContainer.parentElement,".e-img-caption").getAttribute("contenteditable")||e.contentModule.getEditPanel().focus(),"HTML"!==e.editorMode||c||(t.isNullOrUndefined(n.selectType)||!t.isNullOrUndefined(n.selectType)&&"showDialog"!==n.selectType)&&r.restore();var p=s.item.subCommand.toLocaleLowerCase();"paste"===p||"cut"===p||"copy"===p?e.clipboardAction(p,i):(a.editorManager.observer.notify(te,{subCommand:s.item.subCommand}),a.editorManager.execCommand(s.item.command,s.item.subCommand,i,a.onSuccess.bind(a,e),s.item.value,"Pre"===s.item.subCommand&&"dropDownSelect"===s.selectType?{name:s.selectType}:o,"#"+e.getID()+" iframe",e.enterKey))}}));(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||"Audios"===t.requestType||"Videos"===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})}"VideosPlayPause"===t.requestType&&e.notify("editAreaClick",{args:event}),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&&S(e.toolbarModule.baseToolbar,n):S(e.quickToolbarModule.inlineQTBar.quickTBarObj,n)},e}(),kt=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 C=d;C<o.length;C++)o[C].start=0!==C?o[C].start+u:o[C].start,o[C].end=o[C].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,C=0,y="";p=""!==this.selection.getLine(o,r[0].line+1)?"":p+o.value.substr(r[0].end,o.value.length);for(var N=1;N<c&&!t.isNullOrUndefined(this.selection.getLine(o,r[0].line+N))&&""!==this.selection.getLine(o,r[0].line+N);N++){var S=this.selection.getLine(o,r[0].line+N),E=this.getTabSpace(S),T=S.split(". ");if(1===T.length){p+=o.value.substr(r[0].end+C,o.value.length);break}C+=S.length;var O=!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,O=!(!i.event.shiftKey||h.length!==E.length)&&(f=!1,!0)):v&&i.event.shiftKey&&h.length===E.length&&E.length===m.length&&(f=!1,O=!0),y=""===p?"":"\n",d===E.length&&f){w=i.event.shiftKey?(b++,this.nextOrderedListValue(b.toString())):this.previousOrderedListValue(T[0]);T.splice(0,1),p=p+y+E+w+T.join(". ")}else if(h.length===E.length&&g||O){var w=this.nextOrderedListValue(u.toString());u++,T.splice(0,1),p=p+y+E+w+T.join(". ")}else p=p+y+S,f=!1;m=this.getTabSpace(S)}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]){N=this.getTabSpace(s);this.currentAction=this.getAction(s);S=this.nextOrderedListValue(d[0]);r[0].text=N+S+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(". "),C=this.getTabSpace(b);if(C.length<m.length&&(g=!1),v.length>1&&/^\d+$/.test(v[0].trim())&&u.length===C.length&&g){var y=this.nextOrderedListValue(v[0]);v.splice(0,1),h=h+C+y+v.join(". ")+"\n"}else h=h+b+"\n",m=this.getTabSpace(b)}}n.value=n.value.substr(0,r[0].start)+u+S+this.selection.getLine(n,r[0].line)+h,i=i+S.length+N.length,c+=S.length+N.length}else if("UL"===this.currentAction&&s&&l.test(s.trim())&&""!==s.trim().replace(l,"")||"OL"===this.currentAction&&!a){var N=this.getTabSpace(s),S=this.syntax[this.currentAction];r[0].text=N+S+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+S.length+N.length,c+=S.length+N.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}(),Lt=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),0===this.selection.getSelectedText(n).length&&(i[a].text=this.syntax[e.subCommand],n.value=n.value.substr(0,i[a].start)+this.syntax[e.subCommand]+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(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}(),xt=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}(),Dt={h6:"###### ",h5:"##### ",h4:"#### ",h3:"### ",h2:"## ",h1:"# ",blockquote:"> ",pre:"```\n",p:""},Mt={Bold:"**",Italic:"*",StrikeThrough:"~~",InlineCode:"`",SubScript:"<sub>",SuperScript:"<sup>",UpperCase:"A-Z",LowerCase:"a-z"},Rt={OL:"1. ",UL:"- "},Bt={"toolbar-focus":"alt+f10",escape:"27","insert-link":"ctrl+k","insert-image":"ctrl+shift+i","insert-audio":"ctrl+shift+a","insert-video":"ctrl+alt+v","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","format-copy":"alt+shift+c","format-paste":"alt+shift+v"},At={"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"},It={b:["strong"],strong:["b"],i:["emp","cite"],emp:["i","cite"],cite:["i","emp"]},Pt={first:"MsoListParagraphCxSpFirst",middle:"MsoListParagraphCxSpMiddle",last:"MsoListParagraphCxSpLast"},Ut=["BR","IMG"],Ht=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}(),jt=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+")",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}(),Ft=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}(),qt=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}(),zt=function(){function e(e){this.parent=e,this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("insert-text",this.InsertTextExec,this)},e.prototype.InsertTextExec=function(e){var t=this.parent.element;t.focus();var n=t.selectionStart,i=t.selectionEnd,o=e.value.text,r=n+o.length,s=i+o.length;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}(),_t=function(){function e(e){this.initialize(),t.extend(this,this,e,!0),this.observer=new t.Observer(this),this.markdownSelection=new St,this.listObj=new kt({parent:this,syntax:this.listTags}),this.formatObj=new Lt({parent:this,syntax:this.formatTags}),this.undoRedoManager=new Ht(this,e.options),this.mdSelectionFormats=new xt({parent:this,syntax:this.selectionTags}),this.linkObj=new jt(this),this.tableObj=new Ft({parent:this,syntaxTag:{Formats:this.formatTags,List:this.listTags}}),this.clearObj=new qt(this),this.insertTextObj=new zt(this),this.wireEvents()}return e.prototype.initialize=function(){this.formatTags=Dt,this.listTags=Rt,this.selectionTags=Mt},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});break;case"inserttext":this.observer.notify("insert-text",{subCommand:t,event:n,callBack:i,value:{text:r}})}},e}(),Vt=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)}}(),Qt=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 Vt(n,e),n.prototype.initialize=function(){this.keyConfig=At,this.formatTags=Dt,this.listTags=Rt,this.selectionTags=Mt},n.prototype.updateFormatter=function(e,t,n){e&&(this.editorManager=new _t({element:e,formatTags:this.formatTags,listTags:this.listTags,selectionTags:this.selectionTags,options:n}))},n}(wt),Wt=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",attrs:{"aria-labelledby":this.parent.getID()+"_view"}}),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}(),Kt=function(){function n(e,t){this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null,this.toolbarUpdate.parent=null},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.saveSelection=new St,this.parent.on("initial-load",this.instantiateRenderer,this),this.parent.on(_,this.render,this),this.parent.on(Q,this.onPropertyChanged,this),this.parent.on("markdown-toolbar-click",this.onToolbarClick,this),this.parent.on(V,this.destroy,this),this.parent.on("selectAll",this.selectAll,this),this.parent.on("getSelectedHtml",this.getSelectedHtml,this),this.parent.on(X,this.onSelectionSave,this),this.parent.on(Y,this.onSelectionRestore,this),this.parent.on("readOnlyMode",this.updateReadOnly,this),this.parent.on(ne,this.moduleDestroy,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 Wt(this.parent))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(_,this.render),this.parent.off(Q,this.onPropertyChanged),this.parent.off(V,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(X,this.onSelectionSave),this.parent.off(Y,this.onSelectionRestore),this.parent.off("readOnlyMode",this.updateReadOnly),this.parent.off(ne,this.moduleDestroy))},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 Qt({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}(),Gt="INSERT-IMAGE",Xt="INSERT-AUDIO",Yt="INSERT-VIDEO",Jt="INSERT-TABLE",$t="INSERT-LINK",Zt=["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","body"],en=["td","th"],tn=["table","tbody","td","tfoot","th","thead","tr"],nn=["area","base","br","embed","hr","img","input","param","source","track","wbr","iframe","td","table"],on=["word","excel","onenote"],rn=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||"BR"===t.nodeName&&t===e.endContainer.childNodes[e.endOffset])&&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&&(3===o.nodeType&&" "===o.nodeValue.replace(/\u00a0/g," ")&&(s=o.textContent.length),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}(),sn={startSelection:"e-editor-select-start",endSelection:"e-editor-select-end"},an=function(){function e(e,t){this.parent=e,this.nodeSelection=new rn,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&&Zt.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,"""))+'"':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(sn.startSelection)||e.childNodes[t-1].classList.contains(sn.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,t){var n,i,o=this.parent.querySelector("."+sn.startSelection),r=this.parent.querySelector("."+sn.endSelection);if(this.hasClass(o,sn.startSelection)&&o.classList.length>1){s=this.createTagString("p",o,this.encode(o.textContent));this.replaceWith(o,s),(o=this.parent.querySelector("."+sn.startSelection)).classList.remove(sn.startSelection),n=o.childNodes[0]}else n=this.unWrap(o)[0];if(this.hasClass(r,sn.endSelection)&&r.classList.length>1){var s=this.createTagString("p",r,this.encode(r.textContent));this.replaceWith(r,s),(r=this.parent.querySelector("."+sn.endSelection)).classList.remove(sn.endSelection),i=r.childNodes[0]}else i=r?this.unWrap(r)[0]:n;return e.startContainer=e.getNodeArray(n,!0),e.endContainer=e.getNodeArray(i,!1),e},e.prototype.marker=function(e,t){return'<span class="'+e+'">'+t+"</span>"},e.prototype.setMarker=function(e){var n=e.range,i=n.startContainer.childNodes,o=(i.length>1&&"TABLE"===i[0].nodeName?j(i[n.startOffset+1]):i[n.startOffset>0?n.startOffset-1:n.startOffset])||n.startContainer,r=n.endContainer.childNodes[n.endOffset>0?n.endOffset-1:n.endOffset]||n.endContainer;if(o.nodeType===Node.ELEMENT_NODE&&r.nodeType===Node.ELEMENT_NODE&&(o.contains(r)||r.contains(o))){var s=o.contains(r)?o:r;if(s.nodeType!==Node.TEXT_NODE){for(var a=[],l=[],d=s;s.contains(d);null)a.indexOf(d)<0&&d.childNodes&&d.childNodes.length?(a.push(d),d=d.childNodes[0]):d.nextSibling?d=d.nextSibling:d.parentNode&&(d=d.parentNode,a.push(d)),l.indexOf(d)<0&&(d.nodeType===Node.TEXT_NODE||en.indexOf(d.parentNode.tagName.toLocaleLowerCase())>=0&&("BR"===d.tagName||"IMG"===d.tagName))&&l.push(d);l.length&&(o=o.contains(r)?l[0]:o,r=l[l.length-1])}}if(o!==r){if(o.nodeType!==Node.TEXT_NODE&&("BR"===o.tagName&&en.indexOf(o.parentNode.tagName.toLocaleLowerCase())>=0||"IMG"===o.tagName))this.replaceWith(o,this.marker(sn.startSelection,this.encode(o.textContent))),n.startContainer.querySelector("."+sn.startSelection).appendChild(o);else if(3!==o.nodeType&&"#text"!==o.nodeName&&"BR"!==o.nodeName){var c=this.marker(sn.startSelection,"");t.append([this.parseHTMLFragment(c)],o)}else this.replaceWith(o,this.marker(sn.startSelection,this.encode(o.textContent)));r.nodeType!==Node.TEXT_NODE&&"BR"===r.tagName&&en.indexOf(r.parentNode.tagName.toLocaleLowerCase())>=0?(this.replaceWith(r,this.marker(sn.endSelection,this.encode(r.textContent))),n.endContainer.querySelector("."+sn.endSelection).appendChild(r)):this.ensureSelfClosingTag(r,sn.endSelection,n)}else this.ensureSelfClosingTag(o,sn.startSelection,n)},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(n,this.encode(e.textContent)));var r=i.startContainer.querySelector("."+n);r&&r.parentElement.appendChild(e)}else{if("IMG"===e.tagName){var s=document.createElement("p");e.parentElement.insertBefore(s,e),s.appendChild(e),e=s.children[0]}if("TABLE"===e.tagName)if(o=!0,""===e.textContent){var a=e.querySelectorAll("td");e=a[a.length-1],e=t.isNullOrUndefined(e.childNodes[0])?e:e.childNodes[0]}else{for(var l=e.lastChild;3!==l.nodeType&&"#text"!==l.nodeName&&"BR"!==l.nodeName;)l=l.lastChild;e=l}for(var d=0;d<Ut.length;d++)e=e.tagName!==Ut[d]||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(sn.endSelection,this.encode(e.textContent))),i.endContainer.querySelector("."+sn.endSelection).appendChild(e);else{var c=this.marker(n,"");t.append([this.parseHTMLFragment(c)],e)}}},e.prototype.createTempNode=function(e){var t=e.textContent;if("BR"===e.tagName){var n="<p></p>",i=e.parentNode;en.indexOf(i.tagName.toLocaleLowerCase())>=0&&(e=this.wrap(e,this.parseHTMLFragment(n)))}else if(e.nodeType!==Node.TEXT_NODE&&(e.classList.contains(sn.startSelection)||e.classList.contains(sn.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(sn.startSelection)||o.classList.contains(sn.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(en.indexOf(r.tagName.toLocaleLowerCase())>=0&&("BR"===a.tagName||a.nodeType===Node.TEXT_NODE||a.classList.contains(sn.startSelection)||a.classList.contains(sn.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(sn.startSelection)||p.classList.contains(sn.endSelection)))&&en.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(sn.startSelection)||p.nextSibling.classList.contains(sn.endSelection))&&en.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&&en.indexOf(p.parentNode.tagName.toLocaleLowerCase())>=0&&(p.classList.contains(sn.startSelection)||p.classList.contains(sn.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!(tn.indexOf(e.tagName.toLocaleLowerCase())>=0)},e}(),ln=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("keyup-handler",this.onKeyUp,this),this.parent.observer.on("keydown-handler",this.keyDownHandler,this),this.parent.observer.on("actionBegin",this.spaceKeyAction,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=e.startContainer.textContent.replace(/\u200B/g,"").slice(0,e.startOffset).trim(),o=0;o<n.length;o++)if(n[o].test(i)&&2===i.length)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.replace(/\u200B/g,"").slice(0,n.startOffset).trim()&&"-"!==n.startContainer.textContent.replace(/\u200B/g,"").slice(0,n.startOffset).trim()||(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 n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i="LI"===n.startContainer.nodeName?n.startContainer:n.startContainer.parentElement.closest("LI"),o="LI"===n.endContainer.nodeName?n.endContainer:n.endContainer.parentElement.closest("LI"),r=!1;if(!t.isNullOrUndefined(i)){var s=i.querySelectorAll(".e-video-clickelem"),a=s.length>0&&"IFRAME"===s[0].childNodes[0].nodeName;r=i.querySelectorAll("IMG").length>0||i.querySelectorAll("AUDIO").length>0||i.querySelectorAll("VIDEO").length>0||a}if(!t.isNullOrUndefined(i)&&!t.isNullOrUndefined(o)&&i===o&&"LI"===i.tagName&&""===i.textContent.trim()&&!r){if(i.innerHTML.indexOf(" ")>=0)return;65279===i.textContent.charCodeAt(0)&&(i.textContent="");var l=i.parentElement;if(t.isNullOrUndefined(l.parentElement.closest("UL"))&&t.isNullOrUndefined(l.parentElement.closest("OL"))){if(!t.isNullOrUndefined(i.nextElementSibling)){var d=this.parent.domNode.blockParentNode(i);this.parent.nodeCutter.GetSpliceNode(n,d)}var c=void 0;"DIV"===e.enterAction?(c=t.createElement("div")).innerHTML="<br>":"P"===e.enterAction?(c=t.createElement("p")).innerHTML="<br>":c=t.createElement("br"),this.parent.domNode.insertAfter(c,l),e.event.preventDefault(),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,c,0),""===l.textContent&&0===l.querySelectorAll("audio,video").length?t.detach(l):t.detach(i)}}},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&&"LI"===i.tagName&&0===i.textContent.length&&t.isNullOrUndefined(i.previousElementSibling)&&i.removeAttribute("style"),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||t.isNullOrUndefined(i.childNodes[1])||"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)}this.removeList(n,e),this.firstListBackSpace(n,e)},e.prototype.removeList=function(e,n){var i=this.parent.domNode.getSelectedNode(e.startContainer,e.startOffset),o=this.parent.domNode.getSelectedNode(e.endContainer,e.endOffset);i="BR"===i.nodeName?i.parentElement:i,o="BR"===o.nodeName?o.parentElement:o,i="LI"===i.nodeName||t.isNullOrUndefined(i.closest("LI"))?i:i.closest("LI"),o="LI"===o.nodeName||t.isNullOrUndefined(o.closest("LI"))?o:o.closest("LI"),(("OL"===e.commonAncestorContainer.nodeName||"UL"===e.commonAncestorContainer.nodeName||"LI"===e.commonAncestorContainer.nodeName)&&t.isNullOrUndefined(o.nextElementSibling)&&o.textContent.length===e.endOffset&&t.isNullOrUndefined(i.previousElementSibling)&&0===e.startOffset||-1!==t.Browser.userAgent.indexOf("Firefox")&&e.startContainer===e.endContainer&&e.startContainer===this.parent.editableElement&&0===e.startOffset&&1===e.endOffset)&&(-1!==t.Browser.userAgent.indexOf("Firefox")?t.detach(e.commonAncestorContainer.childNodes[0]):"LI"===e.commonAncestorContainer.nodeName?t.detach(e.commonAncestorContainer.parentElement):t.detach(e.commonAncestorContainer),n.event.preventDefault())},e.prototype.onKeyUp=function(){if(!t.isNullOrUndefined(this.commonLIParent)&&!t.isNullOrUndefined(this.commonLIParent.querySelector(".removeList"))){for(var e=this.commonLIParent.querySelector(".removeList");!t.isNullOrUndefined(e.firstChild);)this.parent.domNode.insertAfter(e.firstChild,e);t.detach(e)}},e.prototype.firstListBackSpace=function(e,n){var i=this.parent.domNode.getSelectedNode(e.startContainer,e.startOffset);if(t.isNullOrUndefined(i.closest("OL"))?t.isNullOrUndefined(i.closest("UL"))||(this.commonLIParent=i.closest("UL")):this.commonLIParent=i.closest("OL"),"LI"===i.nodeName&&0===e.startOffset&&0===e.endOffset&&t.isNullOrUndefined(i.previousSibling)&&!t.isNullOrUndefined(this.commonLIParent)&&t.isNullOrUndefined(this.commonLIParent.previousSibling)&&t.isNullOrUndefined(this.commonLIParent.parentElement.closest("OL"))&&t.isNullOrUndefined(this.commonLIParent.parentElement.closest("UL"))&&t.isNullOrUndefined(this.commonLIParent.parentElement.closest("LI"))){var o=t.createElement("P");o.innerHTML="​",i.classList.add("removeList"),this.commonLIParent.parentElement.insertBefore(o,this.commonLIParent)}},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),this.removeList(a,e)}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)&&en.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,e),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.spaceKeyAction=function(e){32===e.event.which&&this.spaceList(e)},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"OL"!==o.tagName&&"UL"!==o.tagName||t.append([e[i]],o)}else{var u=e[i];n=!0,this.noPreviousElement(u)}}return n},e.prototype.applyListsHandler=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument);if(-1!==t.Browser.userAgent.indexOf("Firefox")&&n.startContainer===n.endContainer&&n.startContainer===this.parent.editableElement){for(var i=n.startContainer.childNodes[n.startOffset>0?n.startOffset-1:n.startOffset]||n.startContainer,o=n.endContainer.childNodes[n.endOffset>0?n.endOffset-1:n.endOffset]||n.endContainer,r="BR"===o.lastChild.nodeName?t.isNullOrUndefined(o.lastChild.previousSibling)?o:o.lastChild.previousSibling:o.lastChild;!t.isNullOrUndefined(r)&&"#text"!==r.nodeName&&"IMG"!==r.nodeName&&"BR"!==r.nodeName&&"HR"!==r.nodeName;)r=r.lastChild;this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,i,r,0,r.textContent.length),n=this.parent.nodeSelection.getRange(this.parent.currentDocument)}if(n.startContainer===n.endContainer&&n.startContainer===this.parent.editableElement&&n.startOffset===n.endOffset&&0===n.startOffset&&0===this.parent.editableElement.textContent.length&&"TABLE"!==this.parent.editableElement.childNodes[0].nodeName&&"IMG"!==this.parent.editableElement.childNodes[0].nodeName){var s=n.startContainer.childNodes[0];this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,s,s,0,0),n=this.parent.nodeSelection.getRange(this.parent.currentDocument)}this.saveSelection=this.parent.nodeSelection.save(n,this.parent.currentDocument),this.currentAction=e.subCommand,this.currentAction=e.subCommand="NumberFormatList"===this.currentAction?"OL":"BulletFormatList"===this.currentAction?"UL":this.currentAction,this.domNode.setMarker(this.saveSelection);var a=this.domNode.blockNodes();if("BR"===e.enterAction){this.setSelectionBRConfig();var l=this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument),d=this.parent.nodeSelection.getSelectionNodes(l),c=[];0===d.length&&d.push(a[0]);for(b=0;b<d.length;b++){for(var p=d[b],h=void 0;!this.parent.domNode.isBlockNode(p)&&p!==this.parent.editableElement;)h=p,p=p.parentElement;this.parent.domNode.isBlockNode(p)&&p===this.parent.editableElement&&c.push(h)}for(b=0;b<c.length;b++)if(!this.parent.domNode.isBlockNode(c[b])){for(var u=p=c[b];p===this.parent.editableElement;)u=p,p=p.parentElement;var m=void 0;this.parent.domNode.isBlockNode(u.parentElement)&&u.parentElement===this.parent.editableElement?(m=t.createElement("p"),u.parentElement.insertBefore(m,u),m.appendChild(u)):m=u;for(var g=m.previousSibling;!t.isNullOrUndefined(g)&&"BR"!==g.nodeName&&!this.parent.domNode.isBlockNode(g);)m.firstChild.parentElement.insertBefore(g,m.firstChild),g=m.previousSibling;t.isNullOrUndefined(g)||"BR"!==g.nodeName||t.detach(g);for(var f=m.nextSibling;!t.isNullOrUndefined(f)&&"BR"!==f.nodeName&&!this.parent.domNode.isBlockNode(f);)m.appendChild(f),f=m.nextSibling;t.isNullOrUndefined(f)||"BR"!==f.nodeName||t.detach(f)}this.setSelectionBRConfig(),a=this.parent.domNode.blockNodes()}for(var b=0;b<a.length;b++)"TABLE"!==a[b].tagName||n.collapsed||a.splice(b,1),a.length>0&&"LI"!==a[b].tagName&&"LI"===a[b].parentNode.tagName&&(a[b]=a[b].parentNode);this.applyLists(a,this.currentAction,e.selector,e.item,e),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.setSelectionBRConfig=function(){var e=this.parent.editableElement.querySelector("."+sn.startSelection),n=this.parent.editableElement.querySelector("."+sn.endSelection);t.isNullOrUndefined(n)?this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e,0):this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,e,n,0,0)},e.prototype.applyLists=function(e,n,i,o,r){if(this.isRevert(e,n,o)&&t.isNullOrUndefined(o))this.revertList(e,r),this.removeEmptyListElements();else{this.checkLists(e,n,o);for(var s=0;s<e.length;s++)if(t.isNullOrUndefined(o)||t.isNullOrUndefined(o.listStyle)||("listImage"===o.listStyle?t.setStyleAttribute(e[s],{"list-style-image":o.listImage}):(t.setStyleAttribute(e[s],{"list-style-image":"none"}),t.setStyleAttribute(e[s],{"list-style-type":o.listStyle.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}))),"true"===e[s].getAttribute("contenteditable")&&1===e[s].childNodes.length&&"TABLE"===e[s].childNodes[0].nodeName){var a=document.createElement(n);a.innerHTML="<li><br/></li>",e[s].appendChild(a)}else if("LI"!==e[s].tagName&&t.isNullOrUndefined(o)){var l="<"+n+">",d="</"+n+">",c="li"+(u="IMG"===e[s].tagName?"":this.domNode.attributes(e[s])),p="p"===e[s].tagName.toLowerCase()?e[s].innerHTML:e[s].outerHTML,h=l+(m=this.domNode.createTagString(c,null,p))+d;this.domNode.replaceWith(e[s],h)}else if(!t.isNullOrUndefined(o)&&"LI"!==e[s].tagName){var u="IMG"===e[s].tagName?"":this.domNode.attributes(e[s]),l="<"+n+u+">",d="</"+n+">",c="li",p="p"===e[s].tagName.toLowerCase()?e[s].innerHTML:e[s].outerHTML,m=this.domNode.createTagString(c,null,p),h=l+m+d;this.domNode.replaceWith(e[s],h)}}this.cleanNode(),this.parent.editableElement.focus(),P()&&U(this.parent.editableElement,i),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,n,i){for(var o=!0,r=0;r<e.length;r++){if("LI"!==e[r].tagName)return!1;(e[r].parentNode.tagName!==n||t.isNullOrUndefined(i)&&""!==e[r].parentNode.style.listStyleType)&&(o=!1)}return o},e.prototype.checkLists=function(e,n,i){for(var o=[],r=0;r<e.length;r++){var s=e[r].parentNode;t.isNullOrUndefined(i)||"LI"!==e[r].tagName||t.isNullOrUndefined(i.listStyle)||("listImage"===i.listStyle?t.setStyleAttribute(s,{"list-style-image":i.listImage}):(t.setStyleAttribute(s,{"list-style-image":"none"}),t.setStyleAttribute(s,{"list-style-type":i.listStyle.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}))),("LI"===e[r].tagName&&s.tagName!==n&&o.indexOf(s)<0||"LI"===e[r].tagName&&s.tagName===n&&o.indexOf(s)<0&&null!==i)&&o.push(s),t.isNullOrUndefined(i)&&(s.tagName===n||("UL"===s.tagName||"OL"===s.tagName)&&s.hasAttribute("style"))&&s.hasAttribute("style")&&s.removeAttribute("style")}for(var a=o.length-1;a>=0;a--){var l=o[a],d="<"+n.toLowerCase()+" "+this.domNode.attributes(l)+">"+l.innerHTML+"</"+n.toLowerCase()+">";this.domNode.replaceWith(o[a],d)}},e.prototype.cleanNode=function(){for(var e=this.parent.editableElement.querySelectorAll("ol + ol, ul + ul"),n=0;n<e.length;n++){var i=e[n];if(this.domNode.isList(i.previousElementSibling)&&this.domNode.openTagString(i)===this.domNode.openTagString(i.previousElementSibling)){for(var o=this.domNode.contents(i),r=0;r<o.length;r++)i.previousElementSibling.appendChild(o[r]);i.parentNode.removeChild(i)}else t.isNullOrUndefined(i.getAttribute("level"))||i.tagName===i.previousElementSibling.tagName&&i.previousElementSibling.lastChild.append(i)}},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,n){for(var i=[],o=e.length-1;o>=0;o--)for(var r=o-1;r>=0;r--)if(e[r].contains(e[o])||e[r]===e[o]){i.push(e[o]),e.splice(o,1);break}this.findUnSelected(i,e);for(var s=[],o=0;o<e.length;o++){var a=e[o];3===this.domNode.contents(a)[0].nodeType&&0===this.domNode.contents(a)[0].textContent.trim().length&&t.detach(this.domNode.contents(a)[0]);var l=e[o].parentNode,d=a.getAttribute("class");if(0===i.length){var c=e[o].querySelectorAll("ul, ol")[0];if(c&&c.querySelectorAll("li")){var p=t.createElement(c.tagName);t.append([p],c.parentNode);var h=t.createElement("li",{styles:"list-style-type: none;"});t.append([h],p),t.append([c],h)}}if(a.parentNode.insertBefore(this.closeTag(l.tagName),a),"LI"===l.parentNode.tagName||"OL"===l.parentNode.tagName||"UL"===l.parentNode.tagName)a.parentNode.insertBefore(this.closeTag("LI"),a);else{if(0===a.querySelectorAll(Zt.join(", ")).length){var u="<p"+(t.isNullOrUndefined(d)?' class="e-rte-wrap-inner"':' class="'+d+' e-rte-wrap-inner"')+this.domNode.attributes(l)+"></p>";"BR"!==n.enterAction&&this.domNode.wrapInner(a,this.domNode.parseHTMLFragment(u))}else if(3===this.domNode.contents(a)[0].nodeType){m=this.domNode.createTagString("p",l,this.parent.domNode.encode(this.domNode.contents(a)[0].textContent));this.domNode.replaceWith(this.domNode.contents(a)[0],m)}else if(this.domNode.contents(a)[0].classList.contains(sn.startSelection)||this.domNode.contents(a)[0].classList.contains(sn.endSelection)){var m=this.domNode.createTagString("p",l,this.domNode.contents(a)[0].outerHTML);this.domNode.replaceWith(this.domNode.contents(a)[0],m)}else{var g=a.firstChild;d=g.getAttribute("class"),t.attributes(g,this.domNode.rawAttributes(l)),d&&g.getAttribute("class")&&t.attributes(g,{class:d+" "+g.getAttribute("class")})}t.append([this.openTag("LI")],a),t.prepend([this.closeTag("LI")],a)}this.domNode.insertAfter(this.openTag(l.tagName),a),"LI"===l.parentNode.tagName&&(l=l.parentNode.parentNode),s.indexOf(l)<0&&s.push(l)}for(o=0;o<s.length;o++){var f=s[o],b=f.innerHTML;b=(b=b.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(f)+">"),this.domNode.replaceWith(f,this.domNode.openTagString(f)+b.trim()+this.domNode.closeTagString(f))}for(var v=this.parent.editableElement.querySelectorAll("ul:empty, ol:empty"),o=0;o<v.length;o++)t.detach(v[o]);for(var C=this.parent.editableElement.querySelectorAll("li:empty"),o=0;o<C.length;o++)t.detach(C[o])},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}(),dn=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}(),cn=function(){function e(){this.enterAction="P",this.position=-1,this.nodeSelection=new rn}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||s.querySelectorAll("img").length>0||!this.isRteElm(s)||""!==s.textContent))||(t?dn.AppendBefore(s,t):(o.appendChild(s),(l=document.createElement("div")).innerHTML="",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.isRteElm(s)||""!==s.textContent);if(!a)if(t)dn.AppendBefore(s,t,!0);else{o.appendChild(s);var l=document.createElement("div");l.innerHTML="",o.insertBefore(l.firstChild,o.firstChild),t=o.firstChild}}return t}return null},e.prototype.isRteElm=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||"SPAN"===i.childNodes[o].nodeName&&(i.childNodes[o].classList.contains("e-video-wrap")||i.childNodes[o].classList.contains("e-embed-video-wrap")||i.childNodes[o].classList.contains("e-audio-wrap")))&&(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||"IMG"===e.nodeName||e.classList.contains("e-video-wrap")||e.classList.contains("e-audio-wrap")||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&&t.endOffset!==r.length-1&&!new RegExp("\\s").test(r[0]))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}(),pn=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>",!t.isNullOrUndefined(o)&&o&&"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.enterAction)}}},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,n){var i;"DIV"===n?(i=t.createElement("div")).innerHTML="<br>":"BR"===n?i=t.createElement("br"):(i=t.createElement("p")).innerHTML="<br>",this.parent.domNode.insertAfter(i,e),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,i,0),t.detach(e.lastChild)},e.prototype.isNotEndCursor=function(e,n){var i=new cn,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);var r=this.parent.domNode.blockNodes();if("BR"===e.enterAction){this.setSelectionBRConfig();var s=this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument),a=this.parent.nodeSelection.getSelectionNodes(s),l=[];0===a.length&&a.push(r[0]);for(g=0;g<a.length;g++){for(var d=a[g],c=void 0;!this.parent.domNode.isBlockNode(d)&&d!==this.parent.editableElement;)c=d,d=d.parentElement;this.parent.domNode.isBlockNode(d)&&d===this.parent.editableElement&&l.push(c)}for(g=0;g<l.length;g++)if(!this.parent.domNode.isBlockNode(l[g])){for(var p=d=l[g];d===this.parent.editableElement;)p=d,d=d.parentElement;var h=void 0;this.parent.domNode.isBlockNode(p.parentElement)&&p.parentElement===this.parent.editableElement?(h=t.createElement("div"),p.parentElement.insertBefore(h,p),h.appendChild(p)):h=p;for(var u=h.previousSibling;!t.isNullOrUndefined(u)&&"BR"!==u.nodeName&&!this.parent.domNode.isBlockNode(u);)h.firstChild.parentElement.insertBefore(u,h.firstChild),u=h.previousSibling;t.isNullOrUndefined(u)||"BR"!==u.nodeName||t.detach(u);for(var m=h.nextSibling;!t.isNullOrUndefined(m)&&"BR"!==m.nodeName&&!this.parent.domNode.isBlockNode(m);)h.appendChild(m),m=h.nextSibling;t.isNullOrUndefined(m)||"BR"!==m.nodeName||t.detach(m)}this.setSelectionBRConfig(),r=this.parent.domNode.blockNodes()}for(var g=0;g<r.length;g++){var f=void 0,b=void 0;if("blockquote"===e.subCommand.toLowerCase()?(f=this.getParentNode(r[g]),b=this.parent.domNode.isList(f)||"TABLE"===f.tagName?f.outerHTML:f.innerHTML):b=(f=r[g]).innerHTML,!(e.subCommand.toLowerCase()===f.tagName.toLowerCase()&&("pre"!==e.subCommand.toLowerCase()||!t.isNullOrUndefined(e.exeValue)&&"dropDownSelect"===e.exeValue.name)||t.isNullOrUndefined(f.parentNode)||"TABLE"===f.tagName&&"pre"===e.subCommand.toLowerCase())){this.cleanFormats(f,e.subCommand);var v="pre"===e.subCommand.toLowerCase()&&"pre"===f.tagName.toLowerCase()?"p":e.subCommand,C=this.parent.domNode.createTagString(v,f,b.replace(/>\s+</g,"><"));"LI"===f.tagName?(f.innerHTML="",f.insertAdjacentHTML("beforeend",C)):this.parent.domNode.replaceWith(f,C)}}this.preFormatMerge();var y=this.parent.editableElement.querySelector("."+sn.startSelection),N=this.parent.editableElement.querySelector("."+sn.endSelection);t.isNullOrUndefined(y)||t.isNullOrUndefined(N)||(y=y.lastChild,N=N.lastChild),o=this.parent.domNode.saveMarker(o,null),P()&&U(this.parent.editableElement,e.selector),i?this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,y,N,0,N.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.setSelectionBRConfig=function(){var e=this.parent.editableElement.querySelector("."+sn.startSelection),n=this.parent.editableElement.querySelector("."+sn.endSelection);t.isNullOrUndefined(n)?this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e,0):this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,e,n,0,0)},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}(),hn=function(){function e(){}return e.Insert=function(e,n,i,o,r){var s;if("string"==typeof n)(a=document.createElement("div")).innerHTML=n,s=o?a:a.firstChild;else if(o&&(t.isNullOrUndefined(n)||t.isNullOrUndefined(n.classList)||!n.classList.contains("pasteContent"))){var a=document.createElement("div");a.appendChild(n),s=a}else s=n;var l=new rn,d=new cn,c=l.getRange(e);if(c.startContainer!==i||c.startContainer!==c.endContainer||0!==c.startOffset||c.startOffset!==c.endOffset||0!==i.textContent.length||"P"!==i.children[0].tagName&&"DIV"!==i.children[0].tagName&&"BR"!==i.children[0].tagName||(l.setSelectionText(e,c.startContainer.children[0],c.startContainer.children[0],0,0),c=l.getRange(e)),c.startContainer===i&&c.startContainer===c.endContainer&&0===c.startOffset&&c.startOffset===c.endOffset&&i.textContent.trim().length>0){var p=this.findFirstTextNode(c.startContainer);t.isNullOrUndefined(p)||(l.setSelectionText(e,p,p,0,0),c=l.getRange(e))}if("BR"===c.startContainer.nodeName&&0===c.startOffset&&c.startOffset===c.endOffset&&c.startContainer===c.endContainer){var h=Array.prototype.slice.call(c.startContainer.parentElement.childNodes).indexOf(c.startContainer);l.setSelectionText(e,c.startContainer.parentElement,c.startContainer.parentElement,h,h),c=l.getRange(e)}var u=c.startOffset===c.endOffset&&0===c.startOffset&&c.startContainer===c.endContainer,m=c.collapsed,g=this.getNodeCollection(c,l,s),f="table"===s.nodeName.toLowerCase()?this.closestEle(g[0].parentNode,i):g[0];if(o||!t.isNullOrUndefined(s)&&!t.isNullOrUndefined(s.classList)&&s.classList.contains("pasteContent"))return void this.pasteInsertHTML(g,s,c,l,d,e,m,f,i,r);if(i!==c.startContainer&&(!m&&(f.nodeType!==Node.ELEMENT_NODE||-1===tn.indexOf(f.tagName.toLocaleLowerCase()))||"table"===s.nodeName.toLowerCase()&&f&&-1===tn.indexOf(f.tagName.toLocaleLowerCase()))){var b=d.GetSpliceNode(c,f),v=b.previousSibling,C=b.parentNode;if(1===g.length||"table"===s.nodeName.toLowerCase()&&0===b.childElementCount)l.setSelectionContents(e,b),c=l.getRange(e);else{var y=d.GetSpliceNode(c,g[g.length-1].parentElement);y=t.isNullOrUndefined(y)?b:y,l.setSelectionText(e,b,y,0,3===y.nodeType?y.textContent.length:y.childNodes.length),c=l.getRange(e)}c.extractContents(),"TABLE"===n.tagName&&this.removeEmptyElements(i);for(var N=0;N<g.length;N++)if(3!==g[N].nodeType&&null!=g[N].parentNode){if("IMG"===g[N].nodeName)continue;g[N].parentNode.removeChild(g[N])}if(v)dn.AppendBefore(s,v,!0);else{for(var S=null;C!==i&&C.firstChild&&""===C.textContent.trim();)S=C,C=C.parentNode;null!==S&&(C=S),C.firstChild&&(C!==i||"TABLE"===s.nodeName&&u&&C===c.startContainer&&C===c.endContainer)?""===C.textContent.trim()&&C!==i?(dn.AppendBefore(s,C,!1),t.detach(C)):dn.AppendBefore(s,C.firstChild,!1):t.isNullOrUndefined(b.previousSibling)&&"TABLE"===n.tagName?C.prepend(s):C.appendChild(s)}"IMG"===s.nodeName?this.imageFocus(s,l,e):3!==s.nodeType?l.setSelectionText(e,s,s,0,s.childNodes.length):l.setSelectionText(e,s,s,0,s.textContent.length)}else{if(c.deleteContents(),u&&""===c.startContainer.textContent&&"BR"!==c.startContainer.nodeName&&(c.startContainer.innerHTML=""),t.Browser.isIE){var E=e.createDocumentFragment();E.appendChild(s),c.insertNode(E)}else if(1===c.startContainer.nodeType&&"hr"===c.startContainer.nodeName.toLowerCase()&&"hr"===c.endContainer.nodeName.toLowerCase()){var T=c.startContainer.nextElementSibling;T&&(T.querySelector("br")&&t.detach(T.querySelector("br")),T.appendChild(s))}else"BR"===c.startContainer.nodeName?c.startContainer.parentElement.insertBefore(s,c.startContainer):c.insertNode(s);3!==s.nodeType&&s.childNodes.length>0?l.setSelectionText(e,s,s,1,1):"IMG"===s.nodeName?this.imageFocus(s,l,e):3!==s.nodeType?l.setSelectionContents(e,s):l.setSelectionText(e,s,s,s.textContent.length,s.textContent.length)}},e.findFirstTextNode=function(e){if(e.nodeType===Node.TEXT_NODE)return e;for(var n=0;n<e.childNodes.length;n++){var i=this.findFirstTextNode(e.childNodes[n]);if(!t.isNullOrUndefined(i))return i}return null},e.pasteInsertHTML=function(e,n,i,o,r,s,a,l,d,c){var p=i.startOffset===i.endOffset&&i.startContainer===i.endContainer;if(p&&i.startContainer===d&&""===d.textContent){var h=this.getImmediateBlockNode(e[e.length-1],d);o.setSelectionText(s,h,h,0,0),i=o.getRange(s)}var u,m,g,f;d!==i.startContainer&&(!a&&(l.nodeType!==Node.ELEMENT_NODE||-1===tn.indexOf(l.tagName.toLocaleLowerCase()))||"table"===n.nodeName.toLowerCase()&&l&&-1===tn.indexOf(l.tagName.toLocaleLowerCase()))&&(f=r.GetSpliceNode(i,l),m=t.isNullOrUndefined(f.previousSibling)?f.parentNode.previousSibling:f.previousSibling,1===e.length?(o.setSelectionContents(s,f),i=o.getRange(s),g=!0):(u=r.GetSpliceNode(i,e[e.length-1].parentElement),u=t.isNullOrUndefined(u)?f:u,o.setSelectionText(s,f,u,0,3===u.nodeType?u.textContent.length:u.childNodes.length),i=o.getRange(s),g=!1));var b=!1;this.removingComments(n);for(var v=n.childNodes,C=0;C<v.length;C++)if(Zt.indexOf(v[C].nodeName.toLocaleLowerCase())>=0){b=!0;break}var y,N=document.createDocumentFragment();if(b){for(var S=i.startContainer;!t.isNullOrUndefined(S)&&"PRE"!==S.nodeName&&S!==d;)S=S.parentElement;if(t.isNullOrUndefined(n)||t.isNullOrUndefined(S)||"PRE"!==S.nodeName){this.insertTempNode(i,n,e,r,d);var E=!0,T=void 0,O=void 0,w=void 0;for(this.contentsDeleted||i.deleteContents();n.firstChild;)if("#text"!==n.firstChild.nodeName||""!==n.firstChild.textContent.trim())if("#text"===n.firstChild.nodeName&&E||this.inlineNode.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0&&E){if(y=n.firstChild,t.isNullOrUndefined(n.previousElementSibling)){var k="DIV"===c?t.createElement("div"):t.createElement("p");n.parentElement.insertBefore(k,n)}"BR"===n.previousElementSibling.nodeName?n.parentElement.insertBefore(n.firstChild,n):n.previousElementSibling.appendChild(n.firstChild)}else y=n.firstChild,"#text"===n.firstChild.nodeName||this.inlineNode.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(T?(w.appendChild(n.firstChild),N.appendChild(w)):((O="DIV"===c?t.createElement("div"):t.createElement("p")).appendChild(n.firstChild),N.appendChild(O)),w=O,T=!0):(N.appendChild(n.firstChild),T=!1),E=!1;else t.detach(n.firstChild);n.parentNode.replaceChild(N,n)}else i.insertNode(n),y=n.lastChild}else if(p){var L=t.createElement("span",{className:"tempSpan"}),x=t.closest(i.startContainer.parentElement,"a");if(3===i.startContainer.nodeType&&x&&t.closest(x,"span")){var D=this.getImmediateBlockNode(i.startContainer,d);D.querySelectorAll("br").length>0&&t.detach(D.querySelector("br")),t.closest(x,"span").appendChild(L)}else i.insertNode(L);for(;n.firstChild;)y=n.firstChild,N.appendChild(n.firstChild);L.parentNode.replaceChild(N,L)}else{for(;n.firstChild;)y=n.firstChild,N.appendChild(n.firstChild);g?f.parentNode.replaceChild(N,f):(i.deleteContents(),t.isNullOrUndefined(u)||t.detach(u),t.isNullOrUndefined(m)?d.appendChild(N):m.parentNode.appendChild(N))}"#text"===y.nodeName?this.placeCursorEnd(y,n,o,s,d):this.cursorPos(y,n,o,s,d,c)},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;){if(!t.isNullOrUndefined(e.lastChild)&&"P"===e.lastChild.nodeName&&""===e.lastChild.innerHTML){var s=t.createElement("br");e.lastChild.appendChild(s)}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&&"BR"!==e.startContainer.nodeName&&e.startContainer.childNodes.length>0&&("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)if(e.startContainer===e.endContainer&&3!==e.startContainer.nodeType&&"HR"===n.firstChild.nodeName)e.startContainer.classList.contains("e-content")||"BODY"===e.startContainer.nodeName?e.startContainer.appendChild(n):e.startContainer.parentNode.insertBefore(n,e.startContainer);else{var s=this.getImmediateBlockNode(i[i.length-1],r);if((t.isNullOrUndefined(s)||t.isNullOrUndefined(s.parentElement))&&3!==e.endContainer.nodeType&&(s=e.endContainer,e.setEnd(s,e.endContainer.textContent.length)),"BODY"===s.nodeName&&e.startContainer===e.endContainer&&1===e.startContainer.nodeType&&(s=e.startContainer),s.closest("LI")&&n&&n.firstElementChild&&("OL"===n.firstElementChild.tagName||"UL"===n.firstElementChild.tagName))for(var a=void 0;n.firstElementChild.lastElementChild&&"LI"===n.firstElementChild.lastElementChild.tagName;)(a=n.firstElementChild.lastElementChild).style.removeProperty("margin-left"),a.style.removeProperty("margin-top"),a.style.removeProperty("margin-bottom"),n.firstElementChild.insertAdjacentElement("afterend",a);if("TD"===s.nodeName||"TH"===s.nodeName||"TR"===s.nodeName){var l=t.createElement("span",{className:"tempSpan"});e.insertNode(l),l.parentNode.replaceChild(n,l)}else{var d=new rn,c=this.getNodeCollection(e,d,n)[this.getNodeCollection(e,d,n).length-1],p=void 0;if("BR"!==c.nodeName&&"HR"!==c.nodeName&&("#text"!==c.nodeName||t.isNullOrUndefined(c.parentElement)||"LI"!==c.parentElement.nodeName)||t.isNullOrUndefined(c.parentElement)||0!==c.parentElement.textContent.trim().length){if(("#text"===c.nodeName||"BR"===c.nodeName)&&!t.isNullOrUndefined(c.parentElement)&&("LI"===c.parentElement.nodeName||s===r&&c.parentElement===s)&&c.parentElement.textContent.trim().length>0)return p=c,"LI"!==c.parentElement.nodeName||t.isNullOrUndefined(c.nextSibling)||"BR"!==c.nextSibling.nodeName||t.detach(c.nextSibling),e.collapsed||e.deleteContents(),e.insertNode(n),void(this.contentsDeleted=!0);p=o.GetSpliceNode(e,s)}else p=c,"LI"!==c.parentElement.nodeName||t.isNullOrUndefined(c.nextSibling)||"BR"!==c.nextSibling.nodeName||t.detach(c.nextSibling);p.parentNode.replaceChild(n,p)}}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,s){e.classList.add("lastNode"),r.innerHTML=H(r.innerHTML,s),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(e&&Zt.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.length>0&&e.parentElement.textContent.match(/\u00a0/g)&&e.parentElement.textContent.match(/\u00a0/g).length>0)&&""===e.parentElement.textContent.trim()&&"true"!==e.parentElement.contentEditable&&t.isNullOrUndefined(e.parentElement.querySelector("img"))?this.findDetachEmptyElem(e.parentElement):e},e.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=Array.from(n).filter(function(e){return!e.closest("svg")&&!e.closest("canvas")}),o=0;o<i.length;o++){var r=!0;if("DIV"===i[o].tagName&&(r="none"===i[o].style.borderBottom||""===i[o].style.borderBottom),nn.indexOf(i[o].tagName.toLowerCase())<0&&r){var s=this.findDetachEmptyElem(i[o]);t.isNullOrUndefined(s)||t.detach(s)}}},e.closestEle=function(e,n){for(var i=e;i&&1===i.nodeType;){if(i.parentNode===n||!t.isNullOrUndefined(i.parentNode.tagName)&&-1!==en.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.contentsDeleted=!1,e}(),un=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on($t,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 rn,o=i.getRange(this.parent.currentDocument);"#text"!==o.endContainer.nodeName||o.startContainer.textContent.length!==o.endOffset+1||" "!==o.endContainer.textContent.charAt(o.endOffset)||t.isNullOrUndefined(o.endContainer.nextSibling)||"A"!==o.endContainer.nextSibling.nodeName||(i.setSelectionText(this.parent.currentDocument,o.startContainer,o.endContainer,o.startOffset,o.endOffset+1),o=i.getRange(this.parent.currentDocument));var r=!!t.isNullOrUndefined(e.item.text)||e.item.text.replace(/ /g,"").localeCompare(o.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||o.collapsed||r){var s=this.createAchorNode(e);s.innerText=""===e.item.text?e.item.url:e.item.text;var a=s.innerText.replace(/ +/g,function(e){return" ".repeat(e.length)});if(s.innerText=a,e.item.selection.restore(),hn.Insert(this.parent.currentDocument,s,this.parent.editableElement),!e.event||"keydown"!==e.event.type||32!==e.event.keyCode&&13!==e.event.keyCode){p="Paste"===e.item.action?s.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,s.childNodes[0],s.childNodes[0],p,s.childNodes[0].textContent.length)}else{var l=e.item.selection.range.startContainer;l.textContent=this.removeText(l.textContent,e.item.text)}}else this.createLinkNode(e)}else{var d=n,c="";if(t.isNullOrUndefined(e.item.url)||d.setAttribute("href",e.item.url),t.isNullOrUndefined(e.item.title)||d.setAttribute("title",e.item.title),t.isNullOrUndefined(e.item.text)||""===e.item.text||(c=d.innerText,d.innerText=e.item.text),t.isNullOrUndefined(e.item.target)?(d.removeAttribute("target"),d.removeAttribute("aria-label")):(d.setAttribute("target",e.item.target),d.setAttribute("aria-label",e.item.ariaLabel)),c===e.item.text)e.item.selection.setSelectionText(this.parent.currentDocument,d,d,1,1),e.item.selection.restore();else{var p="Paste"===e.item.action?d.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,d.childNodes[0],d.childNodes[0],p,d.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 rn,o=new cn,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||3===r.startContainer.nodeType?(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 C=h[f+1].cloneNode(!0);p[v].appendChild(C)}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,y=0,N=0;f<=h.length;f++)0===f&&(h[f].parentNode.insertBefore(p[y],h[f].nextSibling),1===this.parent.domNode.blockNodes().length&&this.parent.nodeSelection.setSelectionNode(this.parent.currentDocument,p[y]),c[N]=h[f],N++),f<h.length-1&&(h[f].parentNode===h[f+1].parentNode?(c[N]=h[f+1],N++):(y+=1,h[f+1].parentNode.insertBefore(p[y],h[f+1]),c[N]=h[f+1],N++));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),t.isNullOrUndefined(e.item.ariaLabel)||n.setAttribute("aria-label",e.item.ariaLabel),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&&Zt.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++)this.parent.currentDocument.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}(),mn=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),P()&&U(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}(),gn=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.editableElement,n=t.classList.contains("e-rtl"),i=this.parent.nodeSelection.getRange(this.parent.currentDocument),o=this.parent.nodeSelection.save(i,this.parent.currentDocument);this.parent.domNode.setMarker(o);for(var r=this.parent.domNode.blockNodes(),s=r.slice(),a=[],l=0;l<s.length;l++)"LI"!==s[l].tagName&&"LI"===s[l].parentNode.tagName?(r.splice(r.indexOf(s[l]),1),a.push(s[l].parentNode)):"LI"===s[l].tagName&&(r.splice(r.indexOf(s[l]),1),a.push(s[l]));a.length>0&&this.parent.observer.notify("keydown-handler",{event:{preventDefault:function(){},stopPropagation:function(){},shiftKey:"Indent"!==e.subCommand,which:9,action:"indent"},ignoreDefault:!0});for(l=0;l<r.length;l++){var d=r[l],c=n?d.style.marginRight:d.style.marginLeft,p=void 0;"Indent"===e.subCommand?(p=""===c?this.indentValue+"px":parseInt(c,null)+this.indentValue+"px",n?d.style.marginRight=p:d.style.marginLeft=p):(p=""===c||"0px"===c?"":parseInt(c,null)-this.indentValue+"px",n?d.style.marginRight=p:d.style.marginLeft=p)}t.focus(),P()&&U(t,e.selector),(o=this.parent.domNode.saveMarker(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}(),fn="e-img-caption",bn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Gt,this.imageCommand,this)},e.prototype.imageCommand=function(e){switch(e.value.toString().toLowerCase()){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?hn.Insert(this.parent.currentDocument,o,this.parent.editableElement):e.callBack({requestType:"Images",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:[o]})}else{var r=e.item.selectParent[0];i=!0,this.setStyle(r,e,i)}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(){"Replace"===e.value&&i||e.callBack({requestType:"Images",editorMode:"HTML",event:e.event,range:n.parent.nodeSelection.getRange(n.parent.currentDocument),elements:[a]})})}"Replace"===e.value&&(e.item.subCommand="Replace",this.callBack(e))},e.prototype.setStyle=function(e,n,i){t.isNullOrUndefined(n.item.url)||e.setAttribute("src",n.item.url);var o;if(i)for(var r={"e-imgcenter":"e-imgcenter","e-imgright":"e-imgright","e-imgleft":"e-imgleft"},s=e.classList,a=0;a<s.length;a++)t.isNullOrUndefined(r[s[a]])||(o=r[s[a]]);e.setAttribute("class","e-rte-image"+(t.isNullOrUndefined(n.item.cssClass)?"":" "+n.item.cssClass)+(t.isNullOrUndefined(o)?"":" "+o)),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),t.isNullOrUndefined(e.item.ariaLabel)||n.setAttribute("aria-label",e.item.ariaLabel),hn.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&&e.item.selection.restore(),hn.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.removeAttribute("aria-label")):(e.item.selectNode[0].parentElement.target=e.item.target,e.item.selectNode[0].parentElement.ariaLabel=e.item.ariaLabel),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.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 n=e.item.selectNode[0];n.style.height="",n.style.width="","auto"!==e.item.width?n.style.width=t.formatUnit(e.item.width):n.removeAttribute("width"),"auto"!==e.item.height?n.style.height=t.formatUnit(e.item.height):n.removeAttribute("height"),this.callBack(e)},e.prototype.imageCaption=function(e){hn.Insert(this.parent.currentDocument,e.item.insertElement,this.parent.editableElement),this.callBack(e)},e.prototype.imageJustifyLeft=function(e){var n=e.item.selectNode[0];t.isNullOrUndefined(n)||(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")):t.addClass([n],"e-imgleft"),this.callBack(e))},e.prototype.imageJustifyCenter=function(e){var n=e.item.selectNode[0];t.isNullOrUndefined(n)||(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];t.isNullOrUndefined(n)||(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")):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}(),vn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Xt,this.audioCommand,this)},e.prototype.audioCommand=function(e){var n,i=e.value.toString().toLowerCase();switch("inline"!==i&&"break"!==i&&"audioremove"!==i||(n=e.item.selectNode[0]),i){case"audio":case"audioreplace":this.createAudio(e);break;case"inline":n.removeAttribute("class"),n.closest(".e-audio-wrap").style.display="inline-block",t.addClass([n],["e-rte-audio","e-audio-inline","e-audio-focus"]),this.callBack(e);break;case"break":n.removeAttribute("class"),n.closest(".e-audio-wrap").style.display="block",t.addClass([n],["e-audio-break","e-rte-audio","e-audio-focus"]),this.callBack(e);break;case"audioremove":t.detach(n),this.callBack(e)}},e.prototype.createAudio=function(e){var n,i=this,o=!1;if(!t.isNullOrUndefined(e.item.selectParent)&&e.item.selectParent[0].classList&&(e.item.selectParent[0].classList.contains("e-clickelem")||e.item.selectParent[0].classList.contains("e-audio-wrap"))){var r=e.item.selectParent[0].querySelector("source");this.setStyle(r,e),o=!0}else{n=t.createElement("span",{className:"e-audio-wrap",attrs:{contentEditable:"false",title:e.item.fileName}});var s=t.createElement("audio",{className:"e-rte-audio e-audio-inline",attrs:{controls:""}}),a=t.createElement("source"),l=t.createElement("span",{className:"e-clickelem"});if(this.setStyle(a,e),s.appendChild(a),l.appendChild(s),n.appendChild(l),t.isNullOrUndefined(e.item.selection)||e.item.selection.restore(),hn.Insert(this.parent.currentDocument,n,this.parent.editableElement),null===n.nextElementSibling){var d=t.createElement("br");n.parentNode.insertBefore(d,n.nextSibling)}}if(e.callBack&&(t.isNullOrUndefined(e.selector)||!t.isNullOrUndefined(e.selector)&&"pasteCleanupModule"!==e.selector)){var c=this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)[0],p="AudioReplace"===e.value||o?e.item.selectParent[0].querySelector("audio"):t.Browser.isIE?c:c.querySelector("audio");p.addEventListener("loadeddata",function(){"AudioReplace"===e.value&&o||e.callBack({requestType:"Audios",editorMode:"HTML",event:e.event,range:i.parent.nodeSelection.getRange(i.parent.currentDocument),elements:[p]})}),o&&p.load()}},e.prototype.setStyle=function(e,n){t.isNullOrUndefined(n.item.url)||e.setAttribute("src",n.item.url);var i=n.item.fileName?n.item.fileName.split(".").pop().toLowerCase():n.item.url?n.item.url.split(".").pop().toLowerCase():"";e.type="opus"===i?"audio/ogg":"m4a"===i?"audio/mp4":n.item.fileName&&n.item.fileName.split(".").length>0?"audio/"+n.item.fileName.split(".")[n.item.fileName.split(".").length-1]:n.item.url&&n.item.url.split(".").length>0?"audio/"+n.item.url.split(".")[n.item.url.split(".").length-1]:""},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}(),Cn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Yt,this.videoCommand,this)},e.prototype.videoCommand=function(e){var n,i,o,r=e.value.toString().toLowerCase();switch("video"!==r&&"videoreplace"!==r&&(i=(n=e.item.selectNode[0]).closest(".e-embed-video-wrap"),o=n.closest(".e-video-clickelem")),r){case"video":case"videoreplace":this.createVideo(e);break;case"videodimension":this.videoDimension(e);break;case"inline":n.removeAttribute("class"),i&&(i.style.display="inline-block"),o&&(n.parentElement.style.cssFloat=""),t.addClass([n],["e-rte-video","e-video-inline","e-video-focus"]),this.callBack(e);break;case"break":n.removeAttribute("class"),i&&(i.style.display="block"),o&&(n.parentElement.style.cssFloat=""),t.addClass([n],["e-video-break","e-rte-video","e-video-focus"]),this.callBack(e);break;case"justifyleft":n.removeAttribute("class"),i&&(i.style.display="block"),o&&(n.parentElement.style.cssFloat="left"),t.addClass([n],["e-rte-video","e-video-left"]),this.callBack(e);break;case"justifycenter":n.removeAttribute("class"),i&&(i.style.display="block"),o&&(n.parentElement.style.cssFloat=""),t.addClass([n],["e-rte-video","e-video-center"]),this.callBack(e);break;case"justifyright":n.removeAttribute("class"),i&&(i.style.display="block"),o&&(n.parentElement.style.cssFloat="right"),t.addClass([n],["e-rte-video","e-video-right"]),this.callBack(e);break;case"videoremove":t.detach(n.parentElement),this.callBack(e)}},e.prototype.createVideo=function(e){var n,i,o,r=this,s=!1;if("VideoReplace"!==e.value||t.isNullOrUndefined(e.item.selectParent)||"VIDEO"!==e.item.selectParent[0].tagName)if("VideoReplace"===e.value&&!t.isNullOrUndefined(e.item.selectParent)&&e.item.selectParent[0].classList&&e.item.selectParent[0].classList.contains("e-video-clickelem"))e.item.selectParent[0].innerHTML=e.item.fileName,this.setStyle(e.item.selectParent[0].firstElementChild,e,e.item.selectParent[0].firstElementChild);else{if(e.item.isEmbedUrl){n=t.createElement("span",{className:"e-embed-video-wrap",attrs:{contentEditable:"false"}});var a=t.createElement("span",{className:"e-video-clickelem"}),l=t.createElement("template");l.innerHTML=e.item.fileName,a.appendChild(l.content),i=o=a.firstElementChild,this.setStyle(o,e,i),n.appendChild(a)}else n=t.createElement("span",{className:"e-video-wrap",attrs:{contentEditable:"false",title:e.item.fileName}}),i=t.createElement("video",{className:"e-rte-video e-video-inline",attrs:{controls:""}}),o=t.createElement("source"),this.setStyle(o,e,i),i.appendChild(o),n.appendChild(i);if(t.isNullOrUndefined(e.item.selection)||e.item.selection.restore(),hn.Insert(this.parent.currentDocument,n,this.parent.editableElement),null===n.nextElementSibling){var d=t.createElement("br");n.parentNode.insertBefore(d,n.nextSibling)}}else{var c=e.item.selectParent[0].querySelector("source");this.setStyle(c,e,c),s=!0}if(e.callBack&&(t.isNullOrUndefined(e.selector)||!t.isNullOrUndefined(e.selector)&&"pasteCleanupModule"!==e.selector)){var p=this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)[0],h="VideoReplace"===e.value||s?e.item.isEmbedUrl?e.item.selectParent[0].querySelector("iframe"):e.item.selectParent[0]:t.Browser.isIE?p:e.item.isEmbedUrl?p.querySelector("iframe"):p.lastElementChild;h.addEventListener("IFRAME"!==h.tagName?"loadeddata":"load",function(){"VideoReplace"===e.value&&s||(e.item.isEmbedUrl&&h&&h.classList.add("e-rte-embed-url"),e.callBack({requestType:"Videos",editorMode:"HTML",event:e.event,range:r.parent.nodeSelection.getRange(r.parent.currentDocument),elements:[h]}))}),s&&h.load(),-1!==t.Browser.userAgent.indexOf("Firefox")&&(i.addEventListener("play",function(){r.editAreaVideoClick(e)}),i.addEventListener("pause",function(){r.editAreaVideoClick(e)}))}},e.prototype.editAreaVideoClick=function(e){e.callBack({requestType:"VideosPlayPause",editorMode:"HTML",event:e.event})},e.prototype.setStyle=function(e,n,i){""===n.item.url||t.isNullOrUndefined(n.item.url)||e.setAttribute("src",n.item.url),n.item.isEmbedUrl||(e.type=n.item.fileName&&n.item.fileName.split(".").length>0?"video/"+n.item.fileName.split(".")[n.item.fileName.split(".").length-1]:n.item.url&&n.item.url.split(".").length>0?"video/"+n.item.url.split(".")[n.item.url.split(".").length-1]:""),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.width)||i.setAttribute("width",t.formatUnit(n.item.width.width)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.height)||i.setAttribute("height",t.formatUnit(n.item.height.height)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.minWidth)||(i.style.minWidth=t.formatUnit(n.item.width.minWidth)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.maxWidth)||(i.style.maxWidth=t.formatUnit(n.item.width.maxWidth)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.minHeight)||(i.style.minHeight=t.formatUnit(n.item.height.minHeight)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.maxHeight)||(i.style.maxHeight=t.formatUnit(n.item.height.maxHeight))},e.prototype.videoDimension=function(e){var n=e.item.selectNode[0].classList.contains("e-video-clickelem")?e.item.selectNode[0].querySelector("iframe"):e.item.selectNode[0];n.style.height="",n.style.width="","auto"!==e.item.width?n.style.width=t.formatUnit(e.item.width):n.removeAttribute("width"),"auto"!==e.item.height?n.style.height=t.formatUnit(e.item.height):n.removeAttribute("height"),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}(),yn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Jt,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.rows;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(),hn.Insert(this.parent.currentDocument,n,this.parent.editableElement),e.item.selection.setSelectionText(this.parent.currentDocument,n.querySelector("td"),n.querySelector("td"),0,0),null===n.nextElementSibling){var d=void 0;"DIV"===e.enterAction?(d=t.createElement("div")).appendChild(t.createElement("br")):"BR"===e.enterAction?d=t.createElement("br"):(d=t.createElement("p")).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")>=0||e.indexOf("%")>=0||e.indexOf("auto")>=0)?e:e+"px"},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("TH"!==i.nodeName&&"TD"!==i.nodeName&&(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=this.curTable.querySelectorAll("th.e-cell-select").length>0,p=0;p<s[l].length;p++)if(n&&l<s.length-1&&s[l][p]===s[l+1][p]||!n&&0<l&&s[l][p]===s[l-1][p])(0===p||0<p&&s[l][p]!==s[l][p-1])&&s[l][p].setAttribute("rowspan",(parseInt(s[l][p].getAttribute("rowspan"),10)+1).toString());else{var h=t.createElement("td");h.appendChild(t.createElement("br")),d.appendChild(h),h.setAttribute("style",s[c&&n&&s[l+1]?l+1:l][p].getAttribute("style"))}var u=void 0;u=c&&n?this.curTable.querySelector("tbody").childNodes[0]:this.curTable.rows[l],"InsertRowBefore"===e.item.subCommand?u.parentElement.insertBefore(d,u):c?u.parentElement.insertBefore(d,u):this.insertAfter(d,u)}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;"TH"!==n.nodeName&&"TD"!==n.nodeName&&(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(":scope > td, :scope > th")).indexOf(n),a=parseInt(e.item.width,10)/o.querySelectorAll(":scope > td, :scope > th").length,l=parseInt(e.item.width,10)/(o.querySelectorAll(":scope > td, :scope > th").length+1),d=t.closest(o,"table"),c=t.closest(o,"table").querySelectorAll("th,td"),p=0;p<c.length;p++)c[p].dataset.oldWidth=c[p].offsetWidth/d.offsetWidth*100+"%";for(p=0;p<r.length;p++){var h=(i=r[p].querySelectorAll(":scope > td, :scope > th")[s]).cloneNode(!0);h.innerHTML="",h.appendChild(t.createElement("br")),h.removeAttribute("class"),h.removeAttribute("colspan"),h.removeAttribute("rowspan"),"InsertColumnLeft"===e.item.subCommand?i.parentElement.insertBefore(h,i):this.insertAfter(h,i),h.style.width=l.toFixed(4)+"%",delete h.dataset.oldWidth}for(p=0;p<c.length;p++)c[p].style.width=(Number(c[p].dataset.oldWidth.split("%")[0])*l/a).toFixed(4)+"%",delete c[p].dataset.oldWidth;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;3===n.nodeType&&(n=t.closest(n.parentElement,"td,th"));var i=t.closest(n,"TH"===n.tagName?"thead":"tbody"),o=i&&Array.prototype.indexOf.call(i.childNodes,n.parentNode);if(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 r=void 0,s=this.getCorrespondingColumns(),a=this.getSelectedCellMinMaxIndex(s),l=a.startColumn,d=a.endColumn,c=0;c<s.length;c++)for(var p=s[c],h=0;h<p.length;h++){var u=p[h],m=this.getCorrespondingIndex(u,s),g=parseInt(u.getAttribute("colspan"),10)||1;m[1]+(g-1)>=l&&m[1]<=d&&(g>1?u.setAttribute("colspan",(g-1).toString()):(t.detach(u),r=h,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(r>-1){var f=i.children[o],b=f&&f.children[r<=f.children.length-1?r:r-1];b&&(e.item.selection.setSelectionText(this.parent.currentDocument,b,b,0,0),b.classList.add("e-cell-select"))}}if(e.callBack){var v=this.parent.nodeSelection.getRange(this.parent.currentDocument).startContainer;if("TD"!==v.nodeName){var C=this.parent.nodeSelection.getRange(this.parent.currentDocument).startOffset,y=v.children[C];y&&this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,y,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"));var i=Array.prototype.indexOf.call(n.parentNode.childNodes,n);this.curTable=t.closest(n,"table");var o,r,s,a=this.getCorrespondingColumns(),l=this.getSelectedCellMinMaxIndex(a);if(1===this.curTable.rows.length)e.item.selection.restore(),t.detach(t.closest(n.parentElement,"table"));else for(r=l.endRow;r>=l.startRow;r--){for(o=this.curTable.rows[r],s=0;s<a[r].length;s++){if((0===s||a[r][s]!==a[r][s-1])&&1<parseInt(a[r][s].getAttribute("rowspan"),10)){var d=parseInt(a[r][s].getAttribute("rowspan"),10)-1;if(1===d){a[r][s].removeAttribute("rowspan");var c=this.getMergedRow(this.getCorrespondingColumns())[s];if(c){var p=c.cloneNode(!0);p.innerHTML="<br>",c.parentElement&&c.parentElement.insertBefore(p,c)}}else a[r][s].setAttribute("rowspan",d.toString())}if(r<a.length-1&&a[r][s]===a[r+1][s]&&(0===r||a[r][s]!==a[r-1][s])){var h=a[r][s],u=void 0;for(u=s;0<u&&a[r][u]===a[r][u-1];u--)0===u?this.curTable.rows[r+1].prepend(h):a[r+1][u-1].insertAdjacentElement("afterend",h)}}var m=o.rowIndex;this.curTable.deleteRow(m);var g=t.isNullOrUndefined(this.curTable.rows[m])?this.curTable.querySelectorAll("tbody tr")[m-1]:this.curTable.querySelectorAll("tbody tr")[m],f=g&&g.querySelectorAll("td")[i];f?(e.item.selection.setSelectionText(this.parent.currentDocument,f,f,0,0),f.classList.add("e-cell-select")):(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.getMergedRow=function(e){for(var t,n=0;n<e.length;n++)e[n].length!==this.curTable.rows[0].childNodes.length&&(t=e[n]);return t},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){var t="";switch(e.item.subCommand){case"AlignTop":t="top";break;case"AlignMiddle":t="middle";break;case"AlignBottom":t="bottom"}e.item.tableCell.style.verticalAlign=t,t&&""!==t&&e.item.tableCell.getAttribute("valign")&&e.item.tableCell.removeAttribute("valign"),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&&o&&this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,o,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])&&d[i][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="<br>"===e[0].innerHTML?"":e[0].innerHTML,n=1;n<e.length;n++)"<br>"!==e[n].innerHTML&&(t=t?t+"<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.rows,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 Nn;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}(),Nn=function(){function e(){}return e}(),Sn=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&&"underline"!==e.style.textDecorationLine)},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&&"line-through"!==e.style.textDecorationLine)},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","font","i","kbd","label","q","samp","small","span","strong","sub","sup","tt","u","var","del"],e}(),En=function(){function e(){}return e.applyFormat=function(e,n,i,o,r,s,a){if(this.enterAction=o,["bold","italic","underline","strikethrough","superscript","subscript","uppercase","lowercase","fontcolor","fontname","fontsize","backgroundcolor"].indexOf(n)>-1||"formatPainter"===r){"backgroundcolor"===n&&""===r&&(r="transparent");var l=new rn,d=new an(i,e),c=new cn,p=new Sn,h=l.getRange(e);if(-1!==t.Browser.userAgent.indexOf("Firefox")&&h.startContainer===h.endContainer&&!t.isNullOrUndefined(i)&&h.startContainer===i){for(var u=h.startContainer.childNodes[h.startOffset>0?h.startOffset-1:h.startOffset]||h.startContainer,m=h.endContainer.childNodes[h.endOffset>0?h.endOffset-1:h.endOffset]||h.endContainer,g="BR"===m.lastChild.nodeName?t.isNullOrUndefined(m.lastChild.previousSibling)?m:m.lastChild.previousSibling:m.firstChild;!t.isNullOrUndefined(g)&&"#text"!==g.nodeName&&"IMG"!==g.nodeName&&"BR"!==g.nodeName&&"HR"!==g.nodeName;)g=g.lastChild;l.setSelectionText(e,u,g,0,0),h=l.getRange(e)}var f=l.save(h,e),b=h.collapsed?l.getSelectionNodeCollection(h):l.getSelectionNodeCollectionBr(h),v=!1,C=!1,y=!1,N=!1,S=["fontcolor","fontname","fontsize","backgroundcolor"].indexOf(n)>-1;if(h.collapsed){var E=p.getFormattedNode(h.startContainer,n,i),T=t.isNullOrUndefined(E)?null:null===E.getAttribute("style")?E.nodeName:E.nodeName+"[style='"+E.getAttribute("style")+"']";if(b.length>0)v=!0,h=c.GetCursorRange(e,h,b[0]);else if(3===h.startContainer.nodeType&&(h.startContainer.parentElement.childElementCount>0&&h.startOffset>0&&"br"!==h.startContainer.parentElement.firstElementChild.tagName.toLowerCase()||!t.isNullOrUndefined(E)&&E===h.startContainer.parentElement.closest(T)&&0!==h.startContainer.parentElement.closest(T).textContent.replace(new RegExp(String.fromCharCode(8203),"g"),"").trim().length))v=!0,h=c.GetCursorRange(e,h,h.startContainer),b.push(h.startContainer);else{var O=this.insertCursorNode(e,l,h,p,c,n,r,i);l.endContainer=l.startContainer=l.getNodeArray(O,!0);var w="BR"===O.nodeName&&O.parentNode.childNodes;t.isNullOrUndefined(w)||1!==w.length||"BR"!==w[0].nodeName||0!==b.length?l.endOffset=l.startOffset=1:(l.setSelectionText(e,h.startContainer,h.endContainer,0,0),N=!0),"BR"===O.nodeName&&0===O.parentNode.textContent.length&&(N=!0)}}y=h.collapsed;for(var k=!1,L=0;L<b.length;L++){var x=p.getFormattedNode(b[L],n,i);null===x&&("subscript"===n?k=null!==(x=p.getFormattedNode(b[L],"superscript",i)):"superscript"===n&&(k=null!==(x=p.getFormattedNode(b[L],"subscript",i)))),0===L&&null===x&&(C=!0),b[L]=null===x||C&&!S?this.insertFormat(e,b,L,x,y,C,S,h,c,n,r,a,d,i):this.removeFormat(b,L,x,y,C,S,h,c,n,r,l,i,d),l=this.applySelection(b,l,c,L,v)}P()&&U(i,s),N||f.restore(),k&&this.applyFormat(e,n,i,o)}},e.insertCursorNode=function(e,n,i,o,r,s,a,l){var d=n.getNodeCollection(i),c=new an(l,e),p=d.length>0?d.length>1&&i.startContainer===i.endContainer?this.getCursorFormat(o,d,s,l):o.getFormattedNode(d[0],s,l):null,h=null;if(p){if(h=d[0],8203===p.firstChild.textContent.charCodeAt(0)&&3===p.firstChild.nodeType){var u=new RegExp(String.fromCharCode(8203),"g"),m=void 0;p.firstChild===h?(h.textContent=p.parentElement&&(c.isBlockNode(p.parentElement)&&p.parentElement.textContent.length<=1?p.parentElement.childElementCount>1:0===p.childElementCount)&&(p.parentElement.textContent.length>1||p.parentElement.firstChild&&1===p.parentElement.firstChild.nodeType)?h.textContent:h.textContent.replace(u,""),m=h):(p.firstChild.textContent=p.firstChild.textContent.replace(u,""),m=p.firstChild);var g=void 0;if(0===m.textContent.length)if(t.isNullOrUndefined(m.previousSibling)){if(!t.isNullOrUndefined(m.parentElement)&&0===m.parentElement.textContent.length){var f=document.createElement("BR");m.parentElement.appendChild(f),t.detach(m),h=f,n.setCursorPoint(e,h.parentElement,0)}}else h=m.previousSibling,g=m.textContent.length-1,n.setCursorPoint(e,m,g)}["fontcolor","fontname","fontsize","backgroundcolor"].indexOf(s)>-1?("fontcolor"===s?p.style.color=a:"fontname"===s?p.style.fontFamily=a:"fontsize"===s?p.style.fontSize=a:p.style.backgroundColor=a,h=p):dn.unwrap(p)}else d.length>1&&i.startOffset>0&&d[0].firstElementChild&&"br"===d[0].firstElementChild.tagName.toLowerCase()&&(d[0].innerHTML=""),1!==d.length||0!==i.startOffset||"BR"!==d[0].nodeName&&(t.isNullOrUndefined(d[0].nextSibling)||"BR"!==d[0].nextSibling.nodeName)||t.detach("#text"===d[0].nodeName?d[0].nextSibling:d[0]),h=this.getInsertNode(e,i,s,a).firstChild;return h},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,g="#text"===a.startContainer.nodeName?a.startContainer.textContent.substring(a.startOffset,a.startContainer.textContent.length):a.startContainer.textContent,f=e[n].textContent;if(a.startContainer!==a.endContainer||0!==a.startOffset||a.endOffset!==a.startContainer.length){var b=[],v=e[n];do{b.push(p.getIndex(v)),v=v.parentNode}while(v&&v!==i);if("BR"!==e[n].nodeName&&(v=m=o&&i.textContent.length-1===a.startOffset?l.SplitNode(a,i,!0):l.GetSpliceNode(a,i)),o){for(var C=m;null!==C.firstChild&&3!==C.firstChild.nodeType;null)C=C.firstChild;C.innerHTML="​",e[n]=C.firstChild}else{for(;v&&v.childNodes.length>0&&b.length-1>=0&&v.childNodes.length>b[b.length-1];)v=v.childNodes[b[b.length-1]],b.pop();if("BR"!==e[n].nodeName)if(3!==v.nodeType||o&&""===v.nodeValue){var y=document.createElement("div");y.innerHTML="​",3!==v.nodeType?(v.insertBefore(y.firstChild,v.firstChild),e[n]=v.firstChild):(v.parentNode.insertBefore(y.firstChild,v),e[n]=v.previousSibling,v.parentNode.removeChild(v))}else e[n]=v}}else if(s&&!e[n].contains(i)&&3===e[n].nodeType&&e[n].textContent!==i.textContent){for(var N=e[n].textContent===e[n].wholeText,S=e[n],E=this.GetFormatNode(d,c);S&&S.textContent===S.parentElement.textContent;)S=S.parentElement;if(N&&i.textContent!==S.textContent){var T=[],O=this.getPriorityFormatNode(S,h);return O&&O.textContent===S.textContent&&(S=O),T.push(S),this.applyStyles(T,0,E),e[n]}}var w;"backgroundcolor"===d&&(w=i.style.fontSize);var k;if("fontsize"===d){var L=t.closest(e[n].parentElement,"span[style*=background-color]");t.isNullOrUndefined(L)||(k=L.style.backgroundColor)}var x,D=i.getAttribute("style"),M=i.tagName;if("A"===M&&"underline"===d)i.style.textDecoration="none",x=[i];else{x=dn.unwrap(i);P=e[n].parentElement;t.isNullOrUndefined(P)||"li"===P.tagName.toLowerCase()||(P=t.closest(P,"li")),t.isNullOrUndefined(P)||"li"!==P.tagName.toLowerCase()||P.textContent.trim()!==e[n].textContent.trim()||("bold"===d?P.style.fontWeight="normal":"italic"===d&&(P.style.fontStyle="normal"))}if(x[0]&&!s)for(var R=S=x[n]?x[n]:x[0];S&&S.parentElement&&S.parentElement!==h;S=S){var B=void 0;if(B="SPAN"===i.nodeName?S.parentElement.tagName.toLocaleLowerCase()===i.tagName.toLocaleLowerCase()&&S.parentElement.getAttribute("style")===D:S.parentElement.tagName.toLocaleLowerCase()===i.tagName.toLocaleLowerCase(),S.parentElement&&B&&(S.parentElement.childElementCount>1||a.startOffset>1)){if(R.parentElement&&R.parentElement.tagName.toLocaleLowerCase()===i.tagName.toLocaleLowerCase()&&a.startOffset===a.endOffset&&1!==R.nodeType&&!t.isNullOrUndefined(R.textContent)&&R.parentElement.childElementCount>1&&(a.setStart(R,0),a.setEnd(R,R.textContent.length),l.SplitNode(a,R.parentElement,!1)),"span"===S.parentElement.tagName.toLocaleLowerCase()&&"underline"===i.style.textDecoration&&"underline"!==S.parentElement.style.textDecoration){S=S.parentElement;continue}dn.unwrap(S.parentElement),S=t.isNullOrUndefined(S.parentElement)||u.isBlockNode(S.parentElement)?S.parentElement:R}else S=S.parentElement}if(x.length>0&&s){for(H=0;H<x.length;H++)if(3!==x[H].nodeType||x[H].textContent&&x[H].textContent.trim().length>0){x[H]=dn.Wrap(x[H],this.GetFormatNode(d,c,M,D));P=e[n].parentElement;t.isNullOrUndefined(P)||"li"===P.tagName.toLowerCase()||(P=t.closest(P,"li")),t.isNullOrUndefined(P)||"li"!==P.tagName.toLowerCase()||P.textContent.trim()!==e[n].textContent.trim()||"fontname"===d&&(P.style.fontFamily=c),x[H].textContent===g&&(0===H?a.setStartBefore(x[H]):H===x.length-1&&a.setEndAfter(x[H]))}var A=e[n].parentElement;if(t.isNullOrUndefined(w)||""===w||(A.style.fontSize=w),t.isNullOrUndefined(k)||""===k||(A.style.backgroundColor=k),"backgroundcolor"===d&&!t.isNullOrUndefined(w)&&""!==w&&A.parentElement.innerHTML===A.outerHTML){var I=A.parentElement;I.parentElement.insertBefore(A,I),t.detach(I)}if("fontsize"===d||"fontcolor"===d){for(var P=e[n].parentElement,U=e[n].parentElement;!t.isNullOrUndefined(U)&&"li"!==U.tagName.toLowerCase();)P=U=U.parentElement;for(var H=n,j="";H>=0&&!t.isNullOrUndefined(P)&&"li"===P.tagName.toLowerCase()&&P.textContent.replace("//g","").trim().includes(e[H].textContent.trim());)j=" "+e[H].textContent.trim()+j,H--;var F=!1,q=0,z=!1;if(!t.isNullOrUndefined(P)&&P.childNodes)for(var _=0;_<P.childNodes.length;_++)"OL"===P.childNodes[_].nodeName&&(q++,F=!0);if(t.isNullOrUndefined(P)||"li"!==P.tagName.toLowerCase()||P.textContent.split("").join("").trim()!==j.split("").join("").trim()){if(!t.isNullOrUndefined(P)&&"li"===P.tagName.toLowerCase()&&F){if(F&&q>0)for(var V=0;V<P.childNodes.length;V++)e[n].textContent===P.childNodes[V].textContent&&e[n].textContent===f&&P.textContent.replace("//g","").trim().includes(j.split("").join("").trim())&&(z=!0);if(z){for(var Q=0;Q<P.childNodes.length;Q++)"OL"===P.childNodes[Q].nodeName&&(P.childNodes[Q].style.fontSize="initial");"fontsize"===d?P.style.fontSize=c:(P.style.color=c,P.style.textDecoration="inherit")}}}else"fontsize"===d?P.style.fontSize=c:(P.style.color=c,P.style.textDecoration="inherit")}}return e[n]},e.insertFormat=function(e,n,i,o,r,s,a,l,d,c,p,h,u,m){if(r)if("uppercase"!==c&&"lowercase"!==c){g=this.getInsertNode(e,l,c,p);n[i]=g.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 g=this.GetFormatNode(c,p);if("formatPainter"===p||a){for(var f=n[i].parentElement,b=n[i].parentElement;!t.isNullOrUndefined(b)&&"li"!==b.tagName.toLowerCase();)f=b=b.parentElement;if(t.isNullOrUndefined(f)||"li"!==f.tagName.toLowerCase()||f.textContent.trim()!==n[i].textContent.trim()||("fontsize"===c?f.style.fontSize=p:"fontcolor"===c?(f.style.color=p,f.style.textDecoration="inherit"):"fontname"===c&&(f.style.fontFamily=p)),"formatPainter"===p)return this.insertFormatPainterElem(n,i,l,d,h,u);var v=n[i],C=this.getPriorityFormatNode(v,m);if(!t.isNullOrUndefined(C)||a){var y=t.isNullOrUndefined(C)?v:C;if(y=t.isNullOrUndefined(C)||""===C.style.fontSize?y:y.firstChild,t.isNullOrUndefined(C)||"fontsize"===c)for(;y;){var N=y.parentElement.textContent.trim()===n[i].textContent.trim(),S=y.parentElement;if(u.isBlockNode(S)||!N||"SPAN"===S.nodeName&&S.classList.contains("e-img-inner"))break;y=S}var E=[];if("fontcolor"===c){var T=t.closest(n[i].parentElement,"A");t.isNullOrUndefined(T)||T.firstChild.textContent.trim()!==n[i].textContent.trim()||(y=n[i])}n[i].textContent.trim()!==y.textContent.trim()&&(y=n[i]),E[0]=y,this.applyStyles(E,0,g)}else n[i]=this.applyStyles(n,i,g)}else{n[i]=this.applyStyles(n,i,g);f=n[i].parentElement;t.isNullOrUndefined(f)||"li"===f.tagName.toLowerCase()||(f=t.closest(f,"li")),t.isNullOrUndefined(f)||"li"!==f.tagName.toLowerCase()||f.textContent.trim()!==n[i].textContent.trim()||("bold"===c?f.style.fontWeight="bold":"italic"===c&&(f.style.fontStyle="italic"))}}}else n[i]=d.GetSpliceNode(l,n[i]);return n[i]},e.applyStyles=function(e,t,n){return"BR"===e[t].nodeName&&"BR"===this.enterAction||(e[t]=t===e.length-1||"BR"===e[t].nodeName?dn.Wrap(e[t],n):dn.WrapBefore(e[t],n,!0),e[t]=this.getChildNode(e[t],n)),e[t]},e.getPriorityFormatNode=function(e,n){var i,o,r,s=new Sn,a=s.getFormattedNode(e,"fontsize",n);return t.isNullOrUndefined(a)?(o=s.getFormattedNode(e,"backgroundcolor",n),t.isNullOrUndefined(o)?(r=s.getFormattedNode(e,"fontname",n),t.isNullOrUndefined(r)?(i=s.getFormattedNode(e,"fontcolor",n),t.isNullOrUndefined(i)?null:i):r):o):a},e.getInsertNode=function(e,n,i,o){var r=this.GetFormatNode(i,o);if(r.innerHTML="​",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="​",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.insertFormatPainterElem=function(e,n,i,o,r,s){var a=s.isBlockNode(e[n].parentElement)?e[n]:e[n].parentElement;if(!s.isBlockNode(a))for(;a.textContent.trim()===a.parentElement.textContent.trim()&&!s.isBlockNode(a.parentElement);)a=a.parentElement;t.isNullOrUndefined(a)||1!==a.nodeType||a.classList.contains("e-rte-img-caption")||a.classList.contains("e-img-inner")||this.formatPainterCleanup(n,e,a,i,o,s);var l=r.element;if(!t.isNullOrUndefined(l)){var d=l.cloneNode(!0),c=d.querySelectorAll(r.lastChild.nodeName),p=void 0;c.length>0?p=c[c.length-1]:t.isNullOrUndefined(d)||d.nodeName!==r.lastChild.nodeName||(p=d),p.textContent=e[n].textContent;var h=p.childNodes[0];e[n]=dn.Wrap(e[n],d),e[n].textContent="",e[n]=h}return e[n]},e.formatPainterCleanup=function(e,n,i,o,r,s){var a=["A","AUDIO","IMG","VIDEO","IFRAME"];if(0===e&&i.textContent.trim()!==n[e].textContent.trim()){r.SplitNode(o,i,!0);for(var l=n[e].parentElement.childNodes,d=0;d<l.length;d++)if(l[d].textContent.trim()===n[d].textContent.trim()){i.parentNode.insertBefore(l[d],i);break}for(var c=i.parentElement.childNodes,p=0;p<c.length;p++)""!==c[p].textContent.trim()&&0!==c[p].textContent.length||t.detach(c[p])}else if(i.textContent.trim()!==n[e].textContent.trim())i.parentElement.insertBefore(n[e],i);else for(;!t.isNullOrUndefined(i)&&3!==i.nodeType&&!s.isBlockNode(i);){for(var h=void 0,d=0;d<i.childNodes.length;d++){var u=i.childNodes[d];0!==u.textContent.trim().length&&3!==u.nodeType&&(h=i.childNodes[d])}-1===a.indexOf(i.tagName)&&dn.unwrap(i),i=h}},e.enterAction="P",e}(),Tn=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||e.event.metaKey)&&t.indexOf(e.event.action)>-1&&(e.event.preventDefault(),En.applyFormat(this.parent.currentDocument,e.event.action,this.parent.editableElement,e.enterAction),this.callBack(e,e.event.action))},e.prototype.applySelection=function(e){En.applyFormat(this.parent.currentDocument,e.subCommand.toLocaleLowerCase(),this.parent.editableElement,e.enterAction,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}(),On=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(hn.Insert(this.parent.currentDocument,e.value,this.parent.editableElement,!0,e.enterAction),"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}(),wn=function(){function e(){}return e.clear=function(e,n,i,o,r){this.domNode=new an(n,e),this.defaultTag="P"===i?this.defaultTag:"div";var s=new rn,a=new cn,l=s.getRange(e),d=l.collapsed?s.getSelectionNodeCollection(l):s.getSelectionNodeCollectionBr(l),c=s.save(l,e),p=!1;if(l.collapsed&&"ClearFormat"!==r&&(p=!0,l=a.GetCursorRange(e,l,d[0])),!l.collapsed){var h=void 0;if(h=d.length>0&&"BR"===d[0].nodeName&&t.closest(d[0],"table")?a.GetSpliceNode(l,t.closest(d[0],"table")):a.GetSpliceNode(l,d[d.length>1&&"IMG"===d[0].nodeName?1:0]),1===d.length)s.setSelectionContents(e,h),l=s.getRange(e);else if(d.length>1){for(var u=1,m=d[d.length-u];d.length<=u&&"BR"===d[d.length-u].nodeName;)u++,m=d[d.length-u];var g=a.GetSpliceNode(l,m);s.setSelectionText(e,h,g,0,3===g.nodeType?g.textContent.length:g.childNodes.length),l=s.getRange(e)}var f=s.getNodeCollection(l),b=f.slice();this.clearInlines(s.getSelectionNodes(b),b,s.getRange(e),a,n),this.reSelection(e,c,f),l=s.getRange(e);var v=(f=s.getNodeCollection(l)).slice();this.clearBlocks(e,v,n,a,s),P()&&U(n,o),this.reSelection(e,c,f)}p&&s.setCursorPoint(e,l.endContainer,l.endOffset)},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),dn.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()||dn.Wrap(t[o],e.createElement(this.defaultTag));var r=dn.unwrap(t[o]);1===r.length&&"p"===r[0].parentNode.nodeName.toLocaleLowerCase()&&(dn.Wrap(t[o],e.createElement(this.defaultTag)),dn.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()?dn.unwrap(r[s]):this.BLOCK_TAGS.indexOf(r[s].nodeName.toLocaleLowerCase())>-1&&"p"===r[s].nodeName.toLocaleLowerCase()&&(dn.Wrap(r[s],e.createElement(this.defaultTag)),dn.unwrap(r[s]))}else dn.Wrap(t[o],e.createElement(this.defaultTag)),dn.unwrap(t[o])},e.clearInlines=function(e,t,n,i,o){for(var r=0;r<e.length;r++){for(var s=e[r],a=void 0;!this.domNode.isBlockNode(s)&&s.parentElement&&!s.parentElement.classList.contains("e-img-inner");)a=s,s=s.parentElement;a&&Sn.inlineTags.indexOf(a.nodeName.toLocaleLowerCase())>-1&&(i.GetSpliceNode(n,a),this.removeInlineParent(a))}},e.removeInlineParent=function(e){for(var t=dn.unwrap(e),n=0;n<t.length;n++)1===t[n].parentNode.childNodes.length&&!t[n].parentNode.classList.contains("e-img-inner")&&Sn.inlineTags.indexOf(t[n].parentNode.nodeName.toLocaleLowerCase())>-1?this.removeInlineParent(t[n].parentNode):Sn.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.defaultTag="p",e}(),kn=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,enterAction:e.enterAction}),e.event.preventDefault()}},e.prototype.applyClear=function(e){"ClearFormat"===e.subCommand&&(wn.clear(this.parent.currentDocument,this.parent.editableElement,e.enterAction,e.selector,e.subCommand),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}(),Ln=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.getTextContentFromFragment=function(e){for(var t="",n=0;n<e.childNodes.length;n++){var i=e.childNodes[n];i.nodeType===Node.TEXT_NODE?t+=i.textContent:i.nodeType===Node.ELEMENT_NODE&&(t+=this.getTextContentFromFragment(i))}return t},e.prototype.isElementStructureEqual=function(e,t){if(e.childNodes.length!==t.childNodes.length)return!1;for(var n=0;n<e.childNodes.length;n++){var i=e.childNodes[n],o=t.childNodes[n];if(!i||!o)return!1;if(i.nodeType!==o.nodeType)return!1;if(i.outerHTML!==o.outerHTML)return!1}return!0},e.prototype.saveData=function(e){for(var n=(new rn).getRange(this.parent.currentDocument),i=this.parent.editableElement===n.startContainer.parentElement?n.startContainer.parentElement:n.startContainer,o=i.childNodes.length-1;o>=0;o--)!t.isNullOrUndefined(i.childNodes[o])&&"#text"===i.childNodes[o].nodeName&&0===i.childNodes[o].textContent.length&&"IMG"!==i.childNodes[o].nodeName&&"BR"!==i.childNodes[o].nodeName&&i.childNodes[o].nodeName&&t.detach(i.childNodes[o]);n=(new rn).getRange(this.parent.currentDocument);for(var r=(new rn).save(n,this.parent.currentDocument),s=this.parent.editableElement.cloneNode(!0),a=document.createDocumentFragment();s.firstChild;)a.appendChild(s.firstChild);var l={text:a,range:r};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===n.collapsed&&this.undoRedoStack[this.undoRedoStack.length-1].range.startOffset===r.range.startOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.endOffset===r.range.endOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.range.startContainer===r.range.startContainer&&this.getTextContentFromFragment(this.undoRedoStack[this.undoRedoStack.length-1].text).trim()===this.getTextContentFromFragment(l.text).trim()&&this.isElementStructureEqual(this.undoRedoStack[this.undoRedoStack.length-1].text,l.text)||(this.undoRedoStack.push(l),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="",this.parent.editableElement.appendChild(n.cloneNode(!0)),this.parent.editableElement.focus(),P()&&U(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,n=this.undoRedoStack[this.steps+1].text;this.parent.editableElement.innerHTML="",this.parent.editableElement.appendChild(n.cloneNode(!0)),this.parent.editableElement.focus(),P()&&U(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}(),xn=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.upperRomanNumber=["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII","XIII","XIV","XV","XVI","XVII","XVIII","XIX","XX"],this.lowerRomanNumber=["i","ii","iii","iv","v","vi","vii","viii","ix","x","xi","xii","xiii","xiv","xv","xvi","xvii","xviii","xix","xx"],this.lowerGreekNumber=["α","β","γ","δ","ε","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ρ","σ","τ","υ","φ","χ","ψ","ω"],this.removableElements=["o:p","style"],this.listContents=[],this.cropImageDimensions=[],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=t.isNullOrUndefined(e.allowedStylePropertiesArray)?[]: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;if(/class='?Mso|style='[^ ]*\bmso-/i.test(o)||a.test(o)||l.test(o)||d.test(o)){var c=this.findSource(s);this.imageConversion(s,r),o=o.replace(/<img[^>]+>/i,""),this.addListClass(s),i=this.cleanUp(s,i),t.isNullOrUndefined(i[0])||"UL"===i[0].parentElement.tagName||"OL"===i[0].parentElement.tagName||this.listConverter(i),this.cleanList(s,"UL"),this.cleanList(s,"OL"),this.styleCorrection(s,n),this.removingComments(s),this.removeUnwantedElements(s),this.removeEmptyElements(s),this.removeEmptyAnchorTag(s),this.breakLineAddition(s),this.removeClassName(s),d.test(o)&&this.addTableBorderClass(s),this.processMargin(s),e.callBack(s.innerHTML,this.cropImageDimensions,c)}else e.callBack(s.innerHTML)},e.prototype.cleanList=function(e,t){for(var n=e.querySelectorAll(t+" div"),i=n.length-1;i>=0;i--){for(var o=n[i].parentNode;n[i].firstChild;)o.insertBefore(n[i].firstChild,n[i]);var r=this.findClosestListElem(n[i]);r&&this.insertAfter(n[i],r)}},e.prototype.insertAfter=function(e,t){t.parentNode.insertBefore(e,t.nextSibling)},e.prototype.findClosestListElem=function(e){for(var n;!t.isNullOrUndefined(e);)e=t.isNullOrUndefined(e.closest("ul"))||"UL"===e.tagName?"OL"!==e.tagName?e.closest("ol"):null:e.closest("ul"),n=t.isNullOrUndefined(e)?n:e;return n},e.prototype.addListClass=function(e){for(var n=e.querySelectorAll("*"),i=0;i<n.length;i++)!t.isNullOrUndefined(n[i].getAttribute("style"))&&n[i].getAttribute("style").replace(/ /g,"").replace("\n","").indexOf("mso-list:l")>=0&&-1===n[i].className.toLowerCase().indexOf("msolistparagraph")&&"H"!==n[i].tagName.charAt(0)&&"LI"!==n[i].tagName&&"OL"!==n[i].tagName&&"UL"!==n[i].tagName&&n[i].classList.add("msolistparagraph")},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,n){this.checkVShape(e);for(var i=e.querySelectorAll("img"),o=0;o<i.length;o++)!t.isNullOrUndefined(i[o].getAttribute("v:shapes"))&&i[o].getAttribute("v:shapes").indexOf("Picture")<0&&i[o].getAttribute("v:shapes").indexOf("圖片")<0&&i[o].getAttribute("v:shapes").indexOf("Grafik")<0&&i[o].getAttribute("v:shapes").toLowerCase().indexOf("image")<0&&i[o].getAttribute("v:shapes").indexOf("Graphic")<0&&i[o].getAttribute("v:shapes").indexOf("_x0000_s")<0&&i[o].getAttribute("v:shapes").indexOf("_x0000_i")<0&&t.detach(i[o]);i=e.querySelectorAll("img");var r=[],s=[],a=[],l=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if(i.length>0){for(o=0;o<i.length;o++)r.push(i[o].getAttribute("src")),a.push(i[o].getAttribute("src").split("/")[i[o].getAttribute("src").split("/").length-1].split(".")[0]);for(var d=this.hexConversion(n),o=0;o<d.length;o++)s.push({base64Data:t.isNullOrUndefined(d[o].hex)?null:this.convertToBase64(d[o]),isCroppedImage:d[o].isCroppedImage}),d[o].isCroppedImage&&this.cropImageDimensions.push({goalWidth:d[o].goalWidth,goalHeight:d[o].goalHeight,cropLength:d[o].cropLength,cropTop:d[o].cropTop,cropR:d[o].cropR,cropB:d[o].cropB});for(o=0;o<i.length;o++)r[o].match(l)?i[o].setAttribute("src",r[o]):(t.isNullOrUndefined(s[o])||t.isNullOrUndefined(s[o].base64Data)?(i[o].removeAttribute("src"),i[o].setAttribute("alt","Unsupported file format")):i[o].setAttribute("src",s[o].base64Data),!t.isNullOrUndefined(s[o])&&s[o].isCroppedImage&&i[o].classList.add("e-img-cropped")),i[o].setAttribute("id","msWordImg-"+a[o])}},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++){var l=!1,d=0,c=0,p=0,h=0,u=0,m=0;if(i.test(r[a])){if(-1!==r[a].indexOf("\\pngblip"))n="image/png";else if(-1!==r[a].indexOf("\\jpegblip"))n="image/jpeg";else{if(-1===r[a].indexOf("\\picprop"))continue;n=null}(l=!!(this.extractCropValue("cropl",r[a])>0&&this.extractCropValue("cropt",r[a])>0||this.extractCropValue("cropr",r[a])>0||this.extractCropValue("cropb",r[a])))&&(d=this.extractCropValue("wgoal",r[a]),c=this.extractCropValue("hgoal",r[a]),p=this.extractCropValue("cropl",r[a]),h=this.extractCropValue("cropt",r[a]),u=this.extractCropValue("cropr",r[a]),m=this.extractCropValue("cropb",r[a])),s.push({hex:n?r[a].replace(i,"").replace(/[^\da-fA-F]/g,""):null,type:n,isCroppedImage:l,goalWidth:d,goalHeight:c,cropLength:p,cropTop:h,cropR:u,cropB:m})}}return s},e.prototype.extractCropValue=function(e,t){var n=new RegExp("\\\\pic"+e+"(\\-?\\d+)\\\\").exec(t.replace(/\r\n\\/g,"\\").replace(/\n/g,"\\"))[1];return parseInt(n,10)},e.prototype.removeClassName=function(e){for(var t=e.querySelectorAll("*[class]:not(.e-img-cropped)"),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&&" "===n[i].innerHTML&&" "===n[i].innerHTML&&!n[i].closest("li")&&!n[i].closest("td")&&("SPAN"!==n[i].nodeName||"SPAN"===n[i].nodeName&&t.isNullOrUndefined(n[i].previousElementSibling)&&t.isNullOrUndefined(n[i].nextElementSibling))){var o=this.findDetachElem(n[i]),r=t.createElement("br");o.textContent.length>0&&o.textContent.match(/\u00a0/g)&&o.textContent.match(/\u00a0/g).length>0||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){var n=e.querySelector("style");t.isNullOrUndefined(n)||t.detach(n);for(var i=e.innerHTML,o=0;o<this.removableElements.length;o++){var r=new RegExp("<"+this.removableElements[o]+">","g"),s=new RegExp("</"+this.removableElements[o]+">","g");i=(i=i.replace(r,"")).replace(s,"")}e.innerHTML=i,e.querySelectorAll(":empty")},e.prototype.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:e.parentElement.textContent.length>0&&e.parentElement.textContent.match(/\u00a0/g)&&e.parentElement.textContent.match(/\u00a0/g).length>0||""!==e.parentElement.textContent.trim()||"MSWord-Content"===e.parentElement.getAttribute("id")||this.hasParentWithClass(e,"MsoListParagraph")||!t.isNullOrUndefined(e.parentElement.querySelector("img"))?e:this.findDetachEmptyElem(e.parentElement)},e.prototype.hasParentWithClass=function(e,n){for(var i=e.parentElement;!t.isNullOrUndefined(i);){if(i.classList.contains(n))return!0;i=i.parentElement}return!1},e.prototype.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++){t.isNullOrUndefined(n[i].closest("td"))||t.isNullOrUndefined(n[i].closest("td").querySelector(".MsoNormal"))||(n[i].innerHTML="-");var o=!0;if("DIV"===n[i].tagName&&(o="none"===n[i].style.borderBottom||""===n[i].style.borderBottom),"IMG"!==n[i].tagName&&"BR"!==n[i].tagName&&"IFRAME"!==n[i].tagName&&"TD"!==n[i].tagName&&"HR"!==n[i].tagName&&o){var r=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(r)||t.detach(r)}}},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(m=0;m<l.length;m++)if(!l[m].closest("li")||"p"!==s[c]){g=l[m].getAttribute("style");if(t.isNullOrUndefined(g)||""===g.trim())a[c]=a[c].replace(/text-indent:-(.*?)(?=;|$)/gm,""),l[m].setAttribute("style",a[c]);else{f=a[c].split(";");if(!d)for(b=0;b<f.length;b++)g.indexOf(f[b].split(":")[0])>=0&&(f.splice(b,1),b--);var p=g+f.join(";")+";";l[m].setAttribute("style",p)}}d=!1}for(var h=["MsoListParagraphCxSpFirst","MsoListParagraphCxSpMiddle","MsoListParagraphCxSpLast"],c=0;c<h.length;c++)if(s.indexOf("li."+h[c])>-1)for(var u=e.querySelectorAll("ol."+h[c]+", ul."+h[c]),m=0;m<u.length;m++){var g=u[m].getAttribute("style");if(!t.isNullOrUndefined(g)&&""!==g.trim()&&""!==u[m].style.marginLeft)for(var f=a[s.indexOf("li."+h[c])].split(";"),b=0;b<f.length;b++)if("margin-left".indexOf(f[b].split(":")[0])>=0&&!t.isNullOrUndefined(f[b].split(":")[1])&&f[b].split(":")[1].indexOf("in")>=0&&u[m].style.marginLeft.indexOf("in")>=0){var v=parseFloat(f[b].split(":")[1].split("in")[0]),C=parseFloat(u[m].style.marginLeft.split("in")[0]);u[m].style.marginLeft=C-v+"in"}}}},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,n){for(var i,o=[],r=e.querySelectorAll("*"),s=0;s<r.length;s++)-1===this.ignorableNodes.indexOf(r[s].nodeName)||3===r[s].nodeType&&""===r[s].textContent.trim()?o.push(r[s]):(r[s].className&&-1!==r[s].className.toLowerCase().indexOf("msolistparagraph")&&!t.isNullOrUndefined(r[s].getAttribute("style"))&&r[s].getAttribute("style").indexOf("mso-list:")>=0&&(r[s].className.indexOf("MsoListParagraphCxSpFirst")>=0&&n.length>0&&null!==n[n.length-1]&&n.push(null),n.push(r[s])),!i||-1===this.blockNode.indexOf(r[s].nodeName.toLowerCase())||r[s].className&&-1!==r[s].className.toLowerCase().indexOf("msolistparagraph")&&!t.isNullOrUndefined(r[s].getAttribute("style"))&&r[s].getAttribute("style").indexOf("mso-list:")>=0||n.push(null),-1!==this.blockNode.indexOf(r[s].nodeName.toLowerCase())&&(i=!!(r[s].className&&-1!==r[s].className.toLowerCase().indexOf("msolistparagraph")&&!t.isNullOrUndefined(r[s].getAttribute("style"))&&r[s].getAttribute("style").indexOf("mso-list:")>=0)));return n.length&&null!==n[n.length-1]&&n.push(null),n},e.prototype.listConverter=function(e){for(var n,i,o=[],r=[],s="",a="",l=0;l<e.length;l++)if(null!==e[l]){e[l].getAttribute("style")&&-1!==e[l].getAttribute("style").indexOf("mso-outline-level")&&e[l].setAttribute("style",e[l].getAttribute("style").replace("mso-outline-level","mso-outline")),n=(s=e[l].getAttribute("style"))&&-1!==s.indexOf("level")?parseInt(s.charAt(s.indexOf("level")+5),null):1,this.listContents=[],this.getListContent(e[l]);var d=void 0,c=void 0,p=void 0,h=void 0;if(!t.isNullOrUndefined(this.listContents[0])){if(d=this.listContents[0].trim().length>1?"ol":"ul",c=this.getlistStyleType(this.listContents[0],d),"ol"===d&&(0===l||null===e[l-1])){var u=this.listContents[0].split(".")[0];-1===["A","a","I","i","α","1","1-"].indexOf(u)&&("decimal"===c?isNaN(parseInt(u,10))||(p=parseInt(u,10)):"upper-alpha"===c?p=u.split(".")[0].charCodeAt(0)-64:"lower-alpha"===c?p=u.split(".")[0].charCodeAt(0)-96:"upper-roman"===c?p=this.upperRomanNumber.indexOf(this.listContents[0].split(".")[0])+1:"lower-roman"===c?p=this.lowerRomanNumber.indexOf(this.listContents[0].split(".")[0])+1:"lower-greek"===c&&(p=this.lowerGreekNumber.indexOf(this.listContents[0].split(".")[0])+1)),""!==e[l].style.marginLeft&&(h=e[l].style.marginLeft)}for(var m=[],g=1;g<this.listContents.length;g++)m.push(this.listContents[g]);var f=void 0;t.isNullOrUndefined(e[l].className)||(f=e[l].className),t.isNullOrUndefined(e[l].getAttribute("style"))||(e[l].setAttribute("style",e[l].getAttribute("style").replace("text-align:start;","")),e[l].style.textIndent="",a=e[l].getAttribute("style")),r.push({listType:d,content:m,nestedLevel:n,class:f,listStyle:a,listStyleTypeName:c,start:p,styleMarginLeft:h})}}else o.push({content:this.makeConversion(r),node:e[l-1]}),r=[];for(i=e.shift();i;){for(var b=[],v=0;v<o.length;v++)if(o[v].node===i){for(C=0;C<o[v].content.childNodes.length;C++)b.push(o[v].content.childNodes[C]);for(var C=0;C<b.length;C++)i.parentElement.insertBefore(b[C],i);break}i.remove(),(i=e.shift())||(i=e.shift())}},e.prototype.getlistStyleType=function(e,t){var n;if("ol"===t){var i=e.split(".")[0].charCodeAt(0);switch(!0){case this.upperRomanNumber.indexOf(e.split(".")[0])>-1:n="upper-roman";break;case this.lowerRomanNumber.indexOf(e.split(".")[0])>-1:n="lower-roman";break;case this.lowerGreekNumber.indexOf(e.split(".")[0])>-1:n="lower-greek";break;case i>64&&i<91:n="upper-alpha";break;case i>96&&i<123:n="lower-alpha";break;default:n="decimal"}}else switch(e.split(".")[0]){case"o":n="circle";break;case"§":n="square";break;default:n="disc"}return n},e.prototype.makeConversion=function(e){for(var n,i,o,r=t.createElement("div"),s=1,a=0,l=0;l<e.length;l++){for(var d=["MsoListParagraphCxSpFirst","MsoListParagraphCxSpMiddle","MsoListParagraphCxSpLast"],c=!1,p=0;p<d.length;p++)if(d[p].indexOf(e[l].class)>=0){c=!0;break}t.isNullOrUndefined(i)||0===l||e[l-1].listType===e[l].listType||c||(i=null);var h=t.createElement("p",{className:"MsoNormal"});if(h.innerHTML=e[l].content.join(" "),1===e[l].nestedLevel&&0===a&&e[l].content)r.appendChild(n=t.createElement(e[l].listType,{className:e[l].class})),(i=t.createElement("li")).appendChild(h),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.marginLeft=e[l].styleMarginLeft,n.style.listStyleType=e[l].listStyleTypeName;else if(e[l].nestedLevel===s)t.isNullOrUndefined(i)||t.isNullOrUndefined(i.parentElement)||i.parentElement.tagName.toLowerCase()!==e[l].listType?t.isNullOrUndefined(i)?((n=t.createElement(e[l].listType)).style.listStyleType=e[l].listStyleTypeName,(i=t.createElement("li")).appendChild(h),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),r.appendChild(n)):((n=t.createElement(e[l].listType)).style.listStyleType=e[l].listStyleTypeName,i.parentElement.parentElement.appendChild(n),(i=t.createElement("li")).appendChild(h),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString())):(i.parentElement.appendChild(i=t.createElement("li")),i.appendChild(h));else if(e[l].nestedLevel>s)if(t.isNullOrUndefined(i))if(e[l].nestedLevel>s&&c){var u=t.createElement(e[l].listType);i=t.createElement("li"),u.appendChild(i),u.style.listStyleType="none";for(m=0;m<e[l].nestedLevel-1;m++)i.appendChild(n=t.createElement(e[l].listType)),i=t.createElement("li"),n.appendChild(i),n.style.listStyleType="none";i.appendChild(h),r.appendChild(u),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyleType=e[l].listStyleTypeName}else r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(h),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyleType=e[l].listStyleTypeName;else{for(var m=0;m<e[l].nestedLevel-s;m++)i.appendChild(n=t.createElement(e[l].listType)),i=t.createElement("li"),m!==e[l].nestedLevel-s-1&&e[l].nestedLevel-s>1&&(i.style.listStyleType="none"),n.appendChild(i);i.appendChild(h),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyleType=e[l].listStyleTypeName}else if(1===e[l].nestedLevel)r.lastChild.tagName.toLowerCase()===e[l].listType?n=r.lastChild:(r.appendChild(n=t.createElement(e[l].listType)),n.style.listStyleType=e[l].listStyleTypeName),(i=t.createElement("li")).appendChild(h),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString());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(h),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(h),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyleType=e[l].listStyleTypeName;break}}i.setAttribute("class",e[l].class),i.setAttribute("style",t.isNullOrUndefined(e[l].listStyle)?"":e[l].listStyle),s=e[l].nestedLevel,a++,t.isNullOrUndefined(e[l].start)||n.setAttribute("start",e[l].start.toString())}return r},e.prototype.getListContent=function(e){var n="",i=e.firstElementChild;if(""!==i.textContent.trim()||t.isNullOrUndefined(i.firstElementChild)||"IMG"!==i.firstElementChild.nodeName){if(i.childNodes.length>0){for(var o=i.querySelectorAll('[style*="mso-list"]'),r=0;r<o.length;r++)o[r].setAttribute("style",o[r].getAttribute("style").replace(/\n/g,""));var s=i.querySelector('span[style="mso-list:Ignore"]');t.isNullOrUndefined(s)||(this.listContents.push(s.textContent.trim()),t.detach(s),this.removingComments(e),this.removeUnwantedElements(e))}}else n=e.innerHTML.trim(),this.listContents.push(""),this.listContents.push(n);this.listContents.push(e.innerHTML)},e.prototype.processMargin=function(e){var n=e.querySelectorAll("li");if(n.length>0)for(o=0;o<n.length;o++)t.isNullOrUndefined(n[o].style.marginLeft)||(n[o].style.marginLeft="");var i=e.querySelectorAll("table");if(i.length>0)for(var o=0;o<i.length;o++)!t.isNullOrUndefined(i[o].style.marginLeft)&&i[o].style.marginLeft.indexOf("-")>=0&&(i[o].style.marginLeft="")},e.prototype.removeEmptyAnchorTag=function(e){for(var t=e.querySelectorAll("a:not([href])"),n=t.length-1;n>=0;n--){for(var i=t[n].parentNode;t[n].firstChild;)i.insertBefore(t[n].firstChild,t[n]);i.removeChild(t[n])}},e.prototype.findSource=function(e){for(var t=e.querySelectorAll("meta"),n=0;n<t.length;n++){var i=t[n],o=i.getAttribute("content"),r=i.getAttribute("name");if(r&&r.toLowerCase().indexOf("generator")>=0&&o&&o.toLowerCase().indexOf("microsoft")>=0)for(var s=0;s<on.length;s++)if(o.toLowerCase().indexOf(on[s])>=0)return on[s]}return"html"},e}(),Dn=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);hn.Insert(this.parent.currentDocument,t,this.parent.editableElement),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}(),Mn=F(),Rn=function(){function e(){}return e.get=function(e,t,n,i,o,r){for(var s=JSON.parse(JSON.stringify(Mn)),a=JSON.parse(JSON.stringify(Mn)),l=new rn,d=l.getRange(e),c=r?[r]:d.collapsed?l.getNodeCollection(d):l.getSelectionNodeCollectionBr(d),p=c.length,h=!1,u=0;u<c.length;u++){for(;3===c[u].nodeType&&3===d.startContainer.nodeType&&c[u].parentNode&&c[u].parentNode.lastElementChild&&"BR"!==c[u].parentNode.lastElementChild.nodeName&&0===this.getImmediateBlockNode(c[u].parentNode).textContent.replace(/\u200B/g,"").length&&0===d.startContainer.textContent.replace(/\u200B/g,"").length&&0===l.get(e).toString().replace(/\u200B/g,"").length;)c[u]=c[u].parentNode.lastElementChild.firstChild,h=!0;h&&c[u]&&(l.setCursorPoint(e,c[u],c[u].textContent.length),h=!1),("BR"!==c[u].nodeName&&3!==c[u].nodeType||p>1&&3===c[u].nodeType&&""===c[u].textContent.trim())&&(c.splice(u,1),u--)}for(u=0;u<c.length;u++)s=this.getFormatParent(e,s,c[u],t,n,i,o),(0===u&&s.bold||!s.bold)&&(a.bold=s.bold),(0===u&&s.insertcode||!s.insertcode)&&(a.insertcode=s.insertcode),(0===u&&s.italic||!s.italic)&&(a.italic=s.italic),(0===u&&s.underline||!s.underline)&&(a.underline=s.underline),(0===u&&s.strikethrough||!s.strikethrough)&&(a.strikethrough=s.strikethrough),(0===u&&s.superscript||!s.superscript)&&(a.superscript=s.superscript),(0===u&&s.subscript||!s.subscript)&&(a.subscript=s.subscript),(0===u&&s.fontcolor||!s.fontcolor)&&(a.fontcolor=s.fontcolor),0===u&&s.fontname?a.fontname=s.fontname:a.fontname=s.fontname===a.fontname?s.fontname:"empty",0===u&&s.fontsize?a.fontsize=s.fontsize:a.fontsize=s.fontsize===a.fontsize?s.fontsize:"empty",(0===u&&s.backgroundcolor||!s.backgroundcolor)&&(a.backgroundcolor=s.backgroundcolor),(0===u&&s.orderedlist||!s.orderedlist)&&(a.orderedlist=s.orderedlist),(0===u&&s.unorderedlist||!s.unorderedlist)&&(a.unorderedlist=s.unorderedlist),(0===u&&s.alignments||!s.alignments)&&(a.alignments=s.alignments),0===u&&s.formats?a.formats=s.formats:a.formats=s.formats===a.formats?s.formats:"empty",(0===u&&s.createlink||!s.createlink)&&(a.createlink=s.createlink),(0===u&&s.numberFormatList||!s.numberFormatList)&&(a.numberFormatList=s.numberFormatList),(0===u&&s.bulletFormatList||!s.bulletFormatList)&&(a.bulletFormatList=s.bulletFormatList),s=JSON.parse(JSON.stringify(Mn));return a},e.getImmediateBlockNode=function(e){do{e=e.parentNode}while(e&&Zt.indexOf(e.nodeName.toLocaleLowerCase())<0);return e},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=Sn.isBold(n)),t.italic||(t.italic=Sn.isItalic(n)),t.underline||(t.underline=Sn.isUnderline(n)),t.strikethrough||(t.strikethrough=Sn.isStrikethrough(n)),t.superscript||(t.superscript=Sn.isSuperscript(n)),t.subscript||(t.subscript=Sn.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(e,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.numberFormatList||(t.numberFormatList=this.isNumberFormatList(n)),t.bulletFormatList||(t.bulletFormatList=this.isBulletFormatList(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,n){var i=t.style&&t.style.fontSize;return null!==i&&void 0!==i&&""!==i||3===t.nodeType||!t.parentElement.classList.contains("e-content")||(i=this.getComputedStyle(e,t,"font-size")),null!==i&&""!==i&&void 0!==i&&(null===n||void 0===n||n.indexOf(i)>-1)?i:null},e.isFontName=function(e,n,i){var o=n.style&&n.style.fontFamily;null!==o&&void 0!==o&&""!==o||3===n.nodeType||(o=this.getComputedStyle(e,n,"font-family"));var r=null;return null!==o&&""!==o&&void 0!==o&&(null===i||void 0===i||i.filter(function(e,n){var i=new RegExp(o,"i");(e.replace(/"/g,"").replace(/ /g,"").toLowerCase()===o.replace(/"/g,"").replace(/ /g,"").toLowerCase()||e.split(",")[0]&&!t.isNullOrUndefined(e.split(",")[0].trim().match(i))&&e.split(",")[0].trim()===e.split(",")[0].trim().match(i)[0])&&(r=n)})&&null!==r)?null!==r?i[r]:o.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)&&Zt.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.isNumberFormatList=function(e){var t=e.style&&e.style.listStyleType;return"lower-alpha"===t?"Lower Alpha":"number"===t?"Number":"upper-alpha"===t?"Upper Alpha":"lower-roman"===t?"Lower Roman":"upper-roman"===t?"Upper Roman":"lower-greek"===t?"Lower Greek":"none"===t?"None":!!this.isOrderedList(e)||null},e.isBulletFormatList=function(e){var t=e.style&&e.style.listStyleType;return"circle"===t?"Circle":"square"===t?"Square":"none"===t?"None":"disc"===t?"Disc":!!this.isUnorderedList(e)||null},e}(),Bn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("emoji_picker_actions",this.emojiInsert,this)},e.prototype.emojiInsert=function(e){for(var t=document.createTextNode(e.value),n=this.parent.currentDocument.getSelection(),i=n.getRangeAt(0).startOffset,o=i-1;o>=i-15;o--){var r=n.focusNode.textContent.substring(o-1,o);if(/:$/.test(r)){this.beforeApplyFormat(!0);break}}var s=/:$/.test(n.focusNode.textContent.charAt(i-1)),a=n.focusNode.textContent.charAt(i-2),l=/\s/.test(a);s&&(l||1===n.focusOffset)&&this.beforeApplyFormat(!0),hn.Insert(this.parent.currentDocument,t,this.parent.editableElement),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.prototype.beforeApplyFormat=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument),n=this.parent.nodeSelection.getNodeCollection(t)[0],i=n;if(!(":"===n.parentElement.innerHTML.replace(/ |<br>/g,"").trim()||0===n.textContent.trim().indexOf("/"))&&e)for(;i!==this.parent.editableElement;)i=i.parentElement;for(var o=t.startOffset;-1===this.parent.nodeSelection.getRange(document).toString().indexOf(":");)this.parent.nodeSelection.setSelectionText(document,n,n,o,t.endOffset),o--;var r=this.parent.nodeSelection.getRange(this.parent.currentDocument),s=this.parent.nodeCutter.GetSpliceNode(r,n);s.parentNode.removeChild(s)},e}(),An=function(){function e(e,t){this.INVALID_TAGS=["A","AUDIO","IMG","VIDEO","IFRAME"],this.parent=e,this.settings=t,this.addEventListener(),this.setDeniedFormats()}return e.prototype.addEventListener=function(){this.parent.observer.on("format_painter_actions",this.actionHandler,this),this.parent.observer.on("model_changed_plugin",this.onPropertyChanged,this)},e.prototype.onPropertyChanged=function(e){e&&"formatPainter"===e.module&&(t.isNullOrUndefined(e.newProp.formatPainterSettings.allowedFormats)||(this.settings.allowedFormats=e.newProp.formatPainterSettings.allowedFormats),t.isNullOrUndefined(e.newProp.formatPainterSettings.deniedFormats)||(this.settings.deniedFormats=e.newProp.formatPainterSettings.deniedFormats,this.setDeniedFormats()))},e.prototype.removeEventListener=function(){this.parent.observer.off("format_painter_actions",this.actionHandler),this.parent.observer.off("model_changed_plugin",this.onPropertyChanged)},e.prototype.destroy=function(){this.removeEventListener(),this.INVALID_TAGS=null,this.copyCollection=null,this.deniedFormatsCollection=null,this.newElem=null,this.newElemLastChild=null,this.settings=null,this.parent=null},e.prototype.actionHandler=function(e){if(this.settings.allowedContext=["Text","List","Table"],!t.isNullOrUndefined(e)&&!t.isNullOrUndefined(e.item)&&!t.isNullOrUndefined(e.item.formatPainterAction)){switch(e.item.formatPainterAction){case"format-copy":this.copyAction();break;case"format-paste":this.pasteAction();break;case"escape":this.escapeAction()}this.callBack(e)}},e.prototype.callBack=function(e){e.callBack&&e.callBack({requestType:"FormatPainter",action:e.item.formatPainterAction,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.generateElement=function(){var e=this.copyCollection.slice();e.reverse();for(var n,i=e.length,o=t.createElement("div",{className:"e-format-paste-wrapper"}),r=0;r<i;r++){var s=e[r],a=s.attrs,l=s.className,d=s.styles,c=s.tagName,p=t.createElement(c);""!==l&&(p.className=l);for(var h=0;h<a.length;h++){var u=a[h].name,m=a[h].value;p.setAttribute(u,m)}for(var g=0;g<d.length;g++){var u=d[g].property,m=d[g].value,f=d[g].priority;p.style.setProperty(u,m,f)}0===o.childElementCount?(o.append(p),n=p):(n.append(p),n=p)}for(var b=this.removeDeniedFormats(o),v=b;v;)null===v.firstChild?(n=v,v=void 0):v=v.firstChild;this.newElem=b,this.newElemLastChild=n},e.prototype.pasteAction=function(){if(t.isNullOrUndefined(this.copyCollection)||0===this.copyCollection.length)return void this.paintPlainTextFormat();this.insertFormatNode(this.newElem,this.newElemLastChild)},e.prototype.removeDeniedFormats=function(e){if(!t.isNullOrUndefined(this.deniedFormatsCollection)&&this.deniedFormatsCollection.length>0)for(var n=this.deniedFormatsCollection,i=n.length,o=0;o<i;o++){var r=n[o].tag;if(n[o].tag)for(var s=e.querySelectorAll(r),a=0;a<s.length;a++){if(n[o].classes.length>0){for(var l=n[o].classes,d=l.length,c=0;c<d;c++)s[a].classList.contains(l[c])&&t.removeClass([s[a]],l[c].trim());0===s[a].classList.length&&s[a].removeAttribute("class")}if(n[o].styles.length>0){for(var p=n[o].styles,h=p.length,c=0;c<h;c++)s[a].style.removeProperty(p[c].trim());0===s[a].style.length&&s[a].removeAttribute("style")}if(n[o].attributes.length>0)for(var u=n[o].attributes,m=u.length,c=0;c<m;c++)s[a].removeAttribute(u[c].trim())}}return e.firstElementChild},e.prototype.copyAction=function(){var e=[],n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=this.parent.nodeSelection,o=n.collapsed?i.getSelectionNodeCollection(n):i.getSelectionNodeCollectionBr(n);if(0!==o.length||0!==i.getSelectionNodeCollectionBr(n).length){for(var r=(o=0===o.length?i.getSelectionNodeCollectionBr(n):o)[0].parentElement,s=this.findCurrentContext(r),a=this.settings.allowedFormats.indexOf(";")>-1?this.settings.allowedFormats.split(";"):[this.settings.allowedFormats],l=0;l<a.length;l++)a[l]=a[l].trim();var d=this.getRangeParentElem(s,r),c=d[0],p=d[1];if(null===s&&(s=p),!t.isNullOrUndefined(s)&&this.settings.allowedContext.indexOf(s)>-1){"#text"===n.startContainer.nodeName&&(r=n.startContainer.parentElement);var h=r;do{if(a.indexOf(r.nodeName.toLowerCase())>-1){for(var u=r.attributes,m=[],l=0;l<u.length;l++)"class"!==u[l].name&&"style"!==u[l].name&&m.push(u[l]);for(var g=r.className,f=r.style,b=[],l=0;l<f.length;l++){var v=f[l],C=f.getPropertyValue(v),y=f.getPropertyPriority(v);b.push({property:v,value:C,priority:y})}e.push({attrs:m,className:g,styles:b,tagName:r.nodeName})}if(c===r?r=void 0:t.isNullOrUndefined(r.parentElement)||(r=r.parentElement),h===r)break}while(!t.isNullOrUndefined(r)||r===this.parent.editableElement);this.copyCollection=e}this.generateElement()}},e.prototype.getRangeParentElem=function(e,n){var i,o=n;switch(3===o.nodeType&&(o=o.parentElement),e){case"Table":i=t.closest(o,"td"),t.isNullOrUndefined(i)&&(i=t.closest(o,"th"));break;case"List":i=t.closest(o,"li");break;case"Text":i=t.closest(o,"p")}if(t.isNullOrUndefined(i)){var r=this.getNearestBlockParentElement(n);t.isNullOrUndefined(r)||"UL"===r||"OL"===r||"LI"===r||(i=t.closest(o,r),e="Text")}return"List"===e&&(i=i.parentElement),[i,e]},e.prototype.getNearestBlockParentElement=function(e){var n=e;for(3===n.nodeType&&(n=n.parentNode);n&&n!==this.parent.editableElement;){if(!t.isNullOrUndefined(n)&&this.isBlockElement(n))return n.nodeName;n=n.parentNode}return null},e.prototype.isBlockElement=function(e){return["P","DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","ADDRESS","ARTICLE","ASIDE","BLOCKQUOTE","FIGCAPTION","FIGURE","FOOTER","HEADER","HR","MAIN","NAV","SECTION","SUMMARY","PRE"].indexOf(e.nodeName)>-1},e.prototype.escapeAction=function(){this.copyCollection=[]},e.prototype.paintPlainTextFormat=function(){var e,t=this.parent.nodeSelection.getRange(this.parent.currentDocument),n=this.parent.nodeSelection,i=t.collapsed?n.getSelectionNodeCollection(t):n.getSelectionNodeCollectionBr(t);if(i.length>1)for(var o=0;o<i.length;o++)e=this.validateELementTag(i[o]);else e=this.validateELementTag(t.startContainer)&&this.validateELementTag(t.endContainer);e||this.parent.execCommand("Clear","ClearFormat",null,null)},e.prototype.validateELementTag=function(e){return 3===e.nodeType&&(e=e.parentElement),this.INVALID_TAGS.indexOf(e.tagName)>-1},e.prototype.findCurrentContext=function(e){var n=t.closest(e,"p"),i=t.closest(e,"li");return n&&!i?"Text":t.closest(e,"li")?t.isNullOrUndefined(n)||t.isNullOrUndefined(i)||n.textContent.trim()===i.textContent.trim()?"List":"Text":t.closest(e,"td")||t.closest(e,"tr")||t.closest(e,"th")?"Table":null},e.prototype.insertFormatNode=function(e,n){var i=e.cloneNode(!0);if(!this.isBlockElement(e)){var o=t.createElement("P");o.appendChild(e),i=o.cloneNode(!0)}for(var r,s=this.parent.editableElement,a=this.parent.currentDocument,l=i.firstChild;l;){if(!this.isBlockElement(l)){r=l.parentNode.removeChild(l);break}l=l.firstChild}var d={element:r,lastChild:n};En.applyFormat(a,null,s,"P","formatPainter",null,d);var c=this.parent.nodeSelection.getRange(a),p=c.collapsed,h=this.parent.domNode.blockNodes(),u=!1;1===h.length&&(u=h[0].textContent.trim()===c.toString().trim()),(this.isBlockElement(i)&&p||h.length>1||u)&&this.insertBlockNode(i,c,a,h)},e.prototype.insertBlockNode=function(e,n,i,o){var r=this.parent.nodeSelection.save(n,i);this.parent.domNode.setMarker(r);var s,a,l=!1;"UL"!==e.nodeName&&"OL"!==e.nodeName||(s=(a=e.cloneNode(!0)).firstChild);for(var d=t.isNullOrUndefined(a)?e:e.firstChild,c=0;c<o.length;c++)if(!(this.INVALID_TAGS.indexOf(o[c].nodeName)>-1||o[c].querySelectorAll("img,audio,video,iframe").length>0)){for(var p=d.cloneNode(!1);o[c].firstChild;)0!==o[c].textContent.trim().length?p.appendChild(o[c].firstChild):o[c].removeChild(o[c].firstChild);if("TD"!==o[c].nodeName&&"TH"!==o[c].nodeName){if(t.isNullOrUndefined(a)||(l=this.isSameListType(e,o[c])),"LI"!==p.nodeName||l?l?this.insertSameList(o,c,a,p):o[c].parentNode.replaceChild(p,o[c]):this.insertNewList(n,o,c,a,p),"LI"!==p.nodeName&&("OL"===p.parentElement.nodeName||"UL"===p.parentElement.nodeName)){var h=p.parentElement;if(this.parent.nodeCutter.SplitNode(n,h,!0),t.isNullOrUndefined(h.previousElementSibling))h.parentElement.prepend(p);else if(h.previousElementSibling.after(p),p.childNodes.length>1)for(var u=0;u<p.childNodes.length;u++){var m=p.childNodes[u];"OL"!==m.nodeName&&"UL"!==m.nodeName||p.after(m)}}}else{if(t.isNullOrUndefined(a)){o[c].appendChild(p);continue}if(0!==c||t.isNullOrUndefined(a)){o[c].appendChild(p);continue}o[c].appendChild(a),a.appendChild(p)}}!t.isNullOrUndefined(s)&&t.detach(s),this.cleanEmptyLists(),this.parent.domNode.saveMarker(r,null).restore()},e.prototype.insertNewList=function(e,n,i,o,r){if(0===i){var s=n[i].nodeName;n[i]=n[i].parentNode.replaceChild(o,n[i]);var a="LI"===s?o.parentElement:o;if(this.parent.nodeCutter.SplitNode(e,a,!0),"LI"!==n[i].nodeName||t.isNullOrUndefined(a))if(t.isNullOrUndefined(a))o.append(r);else if(t.isNullOrUndefined(a.previousElementSibling)||a.previousElementSibling.nodeName!==o.nodeName)if(t.isNullOrUndefined(a.nextElementSibling)||a.nextElementSibling.nodeName!==o.nodeName)o.append(r);else{var l=a.nextElementSibling;for(l.prepend(r);l.firstChild;)o.append(l.firstChild)}else for((l=a.previousElementSibling).append(r);l.firstChild;)o.append(l.firstChild);else o.append(r),t.isNullOrUndefined(a.parentNode)||a.parentNode.insertBefore(o,a)}else o.append(r);this.detachEmptyBlockNodes(n[i])},e.prototype.insertSameList=function(e,n,i,o){if(0===n){if(!t.isNullOrUndefined(e[n].parentNode)&&("UL"===e[n].parentNode.nodeName||"OL"===e[n].parentNode.nodeName)){if(1===e.length){for(;o.firstChild;)e[n].append(o.firstChild);for(var r=0;r<e[n].parentNode.childNodes.length;r++){var s=e[n].parentNode.childNodes[r];i.append(s.cloneNode(!0))}}else i.append(o);e[n].parentNode.parentNode.replaceChild(i,e[n].parentNode)}}else i.append(o);this.detachEmptyBlockNodes(e[n])},e.prototype.isSameListType=function(e,n){var i=!1,o=t.closest(n,"ol, ul");return!t.isNullOrUndefined(o)&&o.querySelectorAll("li").length>0&&(i=o.nodeName===e.nodeName),i},e.prototype.cleanEmptyLists=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.setDeniedFormats=function(){var e=[];if(!t.isNullOrUndefined(this.settings)&&!t.isNullOrUndefined(this.settings.deniedFormats)){for(var n=this.settings.deniedFormats.indexOf(";")>-1?this.settings.deniedFormats.split(";"):[this.settings.deniedFormats],i=n.length,o=0;o<i;o++){var r=n[o];if(""!==r){r.trim();var s=this.makeDeniedFormatsCollection(r);t.isNullOrUndefined(s)||e.push(s)}}this.deniedFormatsCollection=e}},e.prototype.detachEmptyBlockNodes=function(e){t.isNullOrUndefined(e)||""!==e.textContent.trim()||t.detach(e)},e.prototype.makeDeniedFormatsCollection=function(e){var t=e.indexOf("("),n=e.indexOf(")"),i=e.indexOf("["),o=e.indexOf("]"),r=e.indexOf("{"),s=e.indexOf("}"),a="",l=[],d=[],c=[];t>-1&&n>-1&&(l=e.substring(t+1,n).split(" ")[0].split(")")[0].split(",")),i>-1&&o>-1&&(d=e.substring(i+1,o).split(",")),r>-1&&s>-1&&(c=e.substring(r+1,s).split(","));var p,h=[t,i,r],u=(h=h.filter(function(e){return e>-1})).length;return 1===u?p=h[0]:2===u?p=Math.min(h[0],h[1]):3===u&&(p=Math.min(h[0],h[1],h[2])),a=e.substring(0,p),a=a.trim(),{tag:a,styles:c,classes:l,attributes:d}},e}(),In=function(){function e(e){this.currentDocument=e.document,this.editableElement=e.editableElement,this.nodeSelection=new rn,this.nodeCutter=new cn,this.domNode=new an(this.editableElement,this.currentDocument),this.observer=new t.Observer(this),this.listObj=new ln(this),this.formatObj=new pn(this),this.alignmentObj=new mn(this),this.indentsObj=new gn(this),this.linkObj=new un(this),this.imgObj=new bn(this),this.audioObj=new vn(this),this.videoObj=new Cn(this),this.selectionObj=new Tn(this),this.inserthtmlObj=new On(this),this.insertTextObj=new Dn(this),this.clearObj=new kn(this),this.tableObj=new yn(this),this.undoRedoManager=new Ln(this,e.options),this.msWordPaste=new xn(this),this.formatPainterEditor=new An(this,e.formatPainterSettings),this.emojiPickerObj=new Bn(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),this.observer.on("onBegin",this.onBegin,this),this.observer.on("mouseDown",this.editorMouseDown,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.onBegin=function(e){this.observer.notify("actionBegin",e)},e.prototype.execCommand=function(e,t,n,i,o,r,s,a){switch(e.toLowerCase()){case"lists":this.observer.notify("list-type",{subCommand:t,event:n,callBack:i,selector:s,item:r,enterAction:a});break;case"formats":this.observer.notify("format-type",{subCommand:t,event:n,callBack:i,selector:s,exeValue:r,enterAction:a});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($t,{command:e,value:t,item:r,event:n,callBack:i});break;case"files":this.observer.notify(Gt,{command:e,value:"Image",item:r,event:n,callBack:i,selector:s});break;case"images":this.observer.notify(Gt,{command:e,value:t,item:r,event:n,callBack:i,selector:s});break;case"audios":this.observer.notify(Xt,{command:e,value:t,item:r,event:n,callBack:i,selector:s});break;case"videos":this.observer.notify(Yt,{command:e,value:t,item:r,event:n,callBack:i,selector:s});break;case"table":switch(t.toString().toLocaleLowerCase()){case"createtable":this.observer.notify(Jt,{item:r,event:n,callBack:i,enterAction:a});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,enterAction:a});break;case"inserthtml":this.observer.notify("inserthtml-type",{subCommand:t,callBack:i,value:o,enterAction:a});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,enterAction:a});break;case"actions":this.observer.notify("action",{subCommand:t,event:n,callBack:i,selector:s});break;case"formatpainter":this.observer.notify("format_painter_actions",{item:r,subCommand:t,event:n,callBack:i});break;case"emojipicker":this.observer.notify("emoji_picker_actions",{item:r,subCommand:t,value:o,event:n,callBack:i})}},e.prototype.editorMouseDown=function(e){3===e.args.detail&&this.tripleClickSelection(e.args)},e.prototype.tripleClickSelection=function(e){var t=this.nodeSelection.getRange(this.currentDocument),n=this.nodeSelection.get(this.currentDocument);if(n.rangeCount>0&&""!==n.toString()){var i=this.getParentBlockNode(t.startContainer),o=this.getParentBlockNode(t.endContainer);if(i&&o&&i===o){var r=this.currentDocument.createRange(),s=this.getFirstTextNode(i),a=this.getLastTextNode(o);s&&a&&(r.setStart(s,0),r.setEnd(a,a.textContent.length),this.nodeSelection.setRange(this.currentDocument,r),e.preventDefault())}}},e.prototype.getParentBlockNode=function(e){var t=this.currentDocument.createTreeWalker(this.editableElement,NodeFilter.SHOW_ELEMENT,{acceptNode:function(e){return window.getComputedStyle(e).display.indexOf("inline")<0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});return t.currentNode=e,t.parentNode()},e.prototype.getLastTextNode=function(e){for(var t=this.currentDocument.createTreeWalker(e,NodeFilter.SHOW_TEXT,null),n=null,i=t.nextNode();i;)n=i,i=t.nextNode();return n},e.prototype.getFirstTextNode=function(e){return this.currentDocument.createTreeWalker(e,NodeFilter.SHOW_TEXT,null).nextNode()},e}(),Pn=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)}}(),Un=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,n.formatPainterSettings),i}return Pn(n,e),n.prototype.initialize=function(){this.keyConfig=Bt},n.prototype.updateFormatter=function(e,t,n,i){e&&t&&(this.editorManager=new In({document:t,editableElement:e,options:n,formatPainterSettings:i}))},n}(wt),Hn=function(){function e(e){this.parent=e,this.toolbarStatus=this.prevToolbarStatus=F(),this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("toolbar-refresh",this.onRefreshHandler,this),this.parent.on(V,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off("toolbar-refresh",this.onRefreshHandler),this.parent.off(V,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}(),jn=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=k(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(){var e=this.getEditPanel().innerText;return"\n"===e?"":e},e.prototype.setPanel=function(e){this.contentPanel=e},e.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},e}(),Fn=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(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Fn(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, .e-rte-audio, .e-rte-video {border: 0;cursor: pointer;display:\n block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-imginline, .e-rte-audio.e-audio-inline, .e-rte-video.e-video-inline {display: inline-block;float: none;max-width: calc(100% - (2 * 5px));padding: 1px;vertical-align: bottom;}\n .e-rte-image.e-imgcenter, .e-rte-video.e-video-center {cursor: pointer;display: block;float: none;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-imgright, .e-rte-video.e-video-right { float: right; margin: 0 auto;margin-left: 5px;text-align: right;}\n .e-rte-image.e-imgleft, .e-rte-video.e-video-left {float: left;margin: 0 auto;margin-right: 5px;text-align: left;}\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, .e-video-left {float: left;margin: 0 5px 0 0;text-align: left;}\n .e-imgright, .e-video-right {float: right;margin: 0 0 0 5px;text-align: right;}\n .e-imgcenter, .e-video-center {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 , .e-audio-inline, .e-video-inline {display: inline-block;float: none;margin-left: 5px;margin-right: 5px;\n max-width: calc(100% - (2 * 5px));vertical-align: bottom;}\n .e-imgbreak, .e-audio-break, .e-video-break {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), .e-audio-focus:not(.e-resize), .e-video-focus:not(.e-resize) {border: solid 2px #4a90e2;}\n img.e-img-focus::selection, audio.e-audio-focus::selection, .e-video-focus::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, .e-rte-content .e-content video.e-resize { z-index: 1000; }\n .e-img-caption .e-img-inner { outline: 0; }\n .e-img-caption a:focus-visible { outline: none; }\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; padding: 2px 5px; 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 .e-rte-placeholder::before { content: attr(placeholder); opacity: 0.54; overflow: hidden; padding-top: 16px; position: absolute; text-align: start; top: 0; z-index: 1; }\n </style>\n </head>"+('<body spellcheck="false" autocorrect="off" contenteditable="true">'+k(e.value,e)+"</body></html>"),n=this.parent.createElement("iframe",{id:this.parent.getID()+"_rte-view",className:"e-rte-content",styles:"display:block;",attrs:{srcdoc:t}});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}(jn),zn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("xhtmlValidation",this.enableXhtmlValidation,this),this.parent.on(V,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off("xhtmlValidation",this.enableXhtmlValidation),this.parent.off(V,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.ImageTags(),this.removeTags(),this.RemoveUnsupported(),this.currentElement.innerHTML=this.selfEncloseValidation(this.currentElement.innerHTML,"\n"===this.currentElement.innerText?this.currentElement.innerText.length:this.currentElement.innerText.trim().length),this.parent.setProperties({value:this.currentElement.innerHTML},!0))},e.prototype.selfEncloseValidation=function(e,t){if(0===t&&e.indexOf("table")<0&&e.indexOf("img")<0&&e.includes(" ")){var n=e.split(" ");n[n.length-1]="​"+n[n.length-1],e=n.join("")}e=e.replace(/<br>/g,"<br/>").replace(/<hr>/g,"<hr/>").replace(/ /g," ");for(var i,o=[],r=[],s=[/<img(.*?)>/gi,/<area(.*?)>/gi,/<base(.*?)>/gi,/<col (.*?)>/gi,/<embed(.*?)>/gi,/<input(.*?)>/gi,/<link(.*?)>/gi,/<meta(.*?)>/gi,/<param(.*?)>/gi,/<source(.*?)>/gi,/<track(.*?)>/gi,/<wbr(.*?)>/gi],a=0;a<s.length;a++){for(i=s[a].exec(e);null!==i;)o.push(i[0].toString()),i=s[a].exec(e);r=o.slice(0);for(var l=0;l<o.length;l++)-1!==o[l].indexOf("/")&&o[l].lastIndexOf("/")===o[l].length-2||(o[l]=o[l].substr(0,o[l].length-1)+" /"+o[l].substr(o[l].length-1,o[l].length));for(var d=0;d<=o.length-1;d++)e=e.replace(r[d],o[d])}return 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.classList.contains("e-mention-chip")&&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}(),_n=function(){function n(e,t){this.rangeCollection=[],this.isImageDelete=!1,this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.xhtmlValidation=new zn(e),this.addEventListener()}return n.prototype.destroy=function(){this.removeEventListener()},n.prototype.sanitizeHelper=function(e){return e=R(e,this.parent)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.nodeSelectionObj=new rn,this.colorPickerModule=new bt(this.parent,this.locator),this.parent.on("initial-load",this.instantiateRenderer,this),this.parent.on("html-toolbar-click",this.onToolbarClick,this),this.parent.on(K,this.onKeyDown,this),this.parent.on(W,this.onKeyUp,this),this.parent.on("render-color-picker",this.renderColorPicker,this),this.parent.on(_,this.render,this),this.parent.on(Q,this.onPropertyChanged,this),this.parent.on(V,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(X,this.onSelectionSave,this),this.parent.on(Y,this.onSelectionRestore,this),this.parent.on("readOnlyMode",this.updateReadOnly,this),this.parent.on(Z,this.onPaste,this),this.parent.on("tableclass",this.isTableClassAdded,this),this.parent.on("onHandleFontsizeChange",this.onHandleFontsizeChange,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,!t.isNullOrUndefined(this.saveSelection)&&!t.isNullOrUndefined(t.closest(this.saveSelection.range.startContainer.parentElement,".e-img-caption"))&&"false"==t.closest(this.saveSelection.range.startContainer.parentElement,".e-img-caption").getAttribute("contenteditable")||this.contentRenderer.getEditPanel().focus(),(t.isNullOrUndefined(e.items)||e.items)&&this.saveSelection.restore()},n.prototype.isTableClassAdded=function(){for(var e=this.parent.inputElement.querySelectorAll("table"),t=0;t<e.length;t++)e[t].classList.contains("e-rte-table")||e[t].classList.contains("e-rte-paste-table")||e[t].classList.add("e-rte-table")},n.prototype.onHandleFontsizeChange=function(e){var n=e.args,i={name:"dropDownSelect"};i.item={command:"Font",subCommand:"FontSize"};var o,r=this.parent.fontSize.items;if(this.parent.toolbarModule&&this.parent.toolbarModule.dropDownModule&&this.parent.toolbarModule.dropDownModule.fontSizeDropDown&&!t.isNullOrUndefined(this.parent.toolbarModule.dropDownModule.fontSizeDropDown.activeElem[0].textContent)&&""!==this.parent.toolbarModule.dropDownModule.fontSizeDropDown.activeElem[0].textContent)o=this.parent.toolbarModule.dropDownModule.fontSizeDropDown.activeElem[0].textContent;else{var s=void 0,a=this.parent.contentModule.getDocument().getSelection();s=a&&a.focusNode&&a.focusNode.parentElement?document.defaultView.getComputedStyle(a.focusNode.parentElement,null).getPropertyValue("font-size"):this.parent.fontSize.width;var l=(s=t.isNullOrUndefined(s)?this.parent.fontSize.width:s).match(/^([\d.]+)(\D+)$/),d=parseInt(l[1],10),c=l[2],p=r[0].value.match(/^([\d.]+)(\D+)$/);if(p[2]===c){u=r.findIndex(function(e){var t=e.value;return parseInt(t,10)>=d});o=r[u].text}else{var h=this.convertFontSize(d,c,p[2]),u=r.findIndex(function(e){var t=e.value;return parseInt(t,10)>=h});o=r[u].text}}var m=r.findIndex(function(e){return e.text===o});if("increase-fontsize"===n.action&&-1!==m)if(m>=r.length-1){var g=r[m].value.match(/^([\d.]+)(\D+)$/);if(g){var f=parseInt(g[1],10),c=g[2],b=f%10==0?10*Math.ceil((f+1)/10):10*Math.ceil(f/10);i.item.value=b.toLocaleString()+c,i.item.text=b.toLocaleString()+" "+c}this.parent.fontSize.items.push(i.item)}else i.item.value=r[m+1].value,i.item.text=r[m+1].text;else"decrease-fontsize"===n.action&&-1!==m&&m>0?(i.item.value=r[m-1].value,i.item.text=r[m-1].text):m>=0&&m<r.length&&r[m]&&(i.item.value=r[m].value,i.item.text=r[m].text);this.parent.formatter.process(this.parent,i,n)},n.prototype.convertFontSize=function(e,t,n){return-1===se.indexOf(t)&&-1===se.indexOf(n)||(t="px"),e*ae[t][n]},n.prototype.onKeyUp=function(e){var n,i=e.args,o=[8,9,13,16,17,18,20,27,37,38,39,40,44,45,46,91,112,113,114,115,116,117,118,119,120,121,122,123],r=this.parent.getRange(),s=new RegExp(String.fromCharCode(8203),"g"),a=!1;if(o.indexOf(i.keyCode)<0&&!i.shiftKey&&!i.ctrlKey&&!i.altKey){if(n=r.startOffset,"#text"===r.startContainer.nodeName?r.startContainer.parentElement!==this.parent.inputElement?r.startContainer.parentElement.classList.add("currentStartMark"):a=!0:r.startContainer.classList.add("currentStartMark"),8203===r.startContainer.textContent.charCodeAt(0)){var l=r.startContainer.textContent.length,d=r.startOffset;r.startContainer.textContent=r.startContainer.textContent.replace(s,""),n=0===d?d:d-(l-r.startContainer.textContent.length),this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),r.startContainer,n)}var c=this.parent.inputElement.innerHTML.length,p=this.parent.inputElement.innerHTML.replace(s,"").length,h=r.startContainer;if(c>p&&!a){if(0!==h.textContent.trim().length&&h.previousSibling){var u=document.createElement("span");u.className="tempSpan",r.insertNode(u)}for(var m=this.parent.inputElement.firstChild;!t.isNullOrUndefined(m)&&m.textContent.replace(s,"").trim().length>0;)m.innerHTML=m.innerHTML.replace(s,""),m=m.nextElementSibling;var g=this.parent.inputElement.querySelector(".tempSpan");g&&g.previousSibling&&0!==h.textContent.trim().length&&(h=g.previousSibling,n=g.previousSibling.textContent.length,g.parentNode.removeChild(g),g=null);var f=this.parent.inputElement.querySelector(".currentStartMark").childNodes;if(f.length>1)for(var b=0;b<f.length;b++)"#text"===f[b].nodeName&&0===f[b].textContent.length&&(t.detach(f[b]),b--),t.isNullOrUndefined(f[b])||h.textContent.replace(s,"")!==f[b].textContent||(n=h.textContent.length>1?h.textContent===f[b].textContent?n:n-(h.textContent.length-h.textContent.replace(s,"").length):h.textContent.length,h=f[b]);else 1===f.length&&h.textContent.replace(s,"")===f[0].textContent&&(h=f[0]);this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),h,n)}var v=this.parent.inputElement.querySelector(".currentStartMark");t.isNullOrUndefined(v)||(v.classList.remove("currentStartMark"),""===v.getAttribute("class").trim()&&v.removeAttribute("class")),!t.isNullOrUndefined(r.startContainer.previousSibling)&&!t.isNullOrUndefined(r.startContainer.previousSibling.parentElement)&&r.startContainer.parentElement===r.startContainer.previousSibling.parentElement&&8203===r.startContainer.previousSibling.textContent.charCodeAt(0)&&r.startContainer.previousSibling.textContent.length<=1&&(r.startContainer.previousSibling.textContent=r.startContainer.previousSibling.textContent.replace(s,"")),8203===r.endContainer.textContent.charCodeAt(r.endOffset)&&(n=r.startOffset,r.endContainer.textContent=r.endContainer.textContent.replace(s,""),this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),r.startContainer,n))}},n.prototype.onKeyDown=function(e){var n,i=this,o=e.args;if("chrome"===t.Browser.info.name&&(n=this.parent.getRange(),this.backSpaceCleanup(e,n),this.deleteCleanup(e,n)),9===o.keyCode&&this.parent.enableTabKey&&!t.isNullOrUndefined(o.target)&&t.isNullOrUndefined(t.closest(o.target,".e-rte-toolbar"))){var r=this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()),s=this.nodeSelectionObj.getParentNodeCollection(r);if("LI"!==s[0].nodeName&&!t.closest(s[0],"li")&&!t.closest(s[0],"table")||0!==r.startOffset)if(o.preventDefault(),o.shiftKey){if(this.rangeCollection.length>0&&4===this.rangeCollection[this.rangeCollection.length-1].startContainer.textContent.length){var a=this.rangeCollection[this.rangeCollection.length-1].startContainer;this.nodeSelectionObj.setSelectionText(this.contentRenderer.getDocument(),a,a,0,a.textContent.length),hn.Insert(this.contentRenderer.getDocument(),document.createTextNode("")),this.rangeCollection.pop()}}else hn.Insert(this.contentRenderer.getDocument()," "),this.rangeCollection.push(this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()))}if(("space"===e.args.action||"enter"===e.args.action||13===e.args.keyCode)&&(this.spaceLink(e.args),"HTML"===this.parent.editorMode&&!this.parent.readonly)){var l=this.parent.getText().trim().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length-this.parent.getSelection().length+1;if(!(-1===this.parent.maxLength||l<=this.parent.maxLength||13!==e.args.keyCode))return void e.args.preventDefault();this.parent.notify("enterHandler",{args:e.args});var d=this.parent.getRange();t.isNullOrUndefined(d.startContainer)||d.startContainer!==this.parent.inputElement.lastChild||"#text"===d.startContainer.nodeName||"auto"===this.parent.height||d.startContainer.scrollIntoView({block:"end",inline:"nearest"})}if("space"===e.args.action){var c=this.parent.getRange(),p=c.startContainer.textContent.slice(0,c.startOffset),h=this.isOrderedList(p),u=this.isUnOrderedList(p);if(h&&!u||u&&!h){var m={callBack:null,event:e.args,name:"keydown-handler"},g={cancel:!1,item:{command:"Lists",subCommand:h?"OL":"UL"},name:"actionBegin",originalEvent:e.args,requestType:h?"OL":"UL"};this.parent.trigger(G,g,function(t){t.cancel||(i.parent.formatter.editorManager.observer.notify("onBegin",m),i.parent.trigger("actionComplete",{editorMode:i.parent.editorMode,elements:i.parent.formatter.editorManager.domNode.blockNodes(),event:e.args,name:"actionComplete",range:i.parent.getRange(),requestType:h?"OL":"UL"}))})}}"chrome"!==t.Browser.info.name||(t.isNullOrUndefined(this.rangeElement)||t.isNullOrUndefined(this.oldRangeElement))&&(t.isNullOrUndefined(this.deleteRangeElement)||t.isNullOrUndefined(this.deleteOldRangeElement))||"TD"===n.startContainer.parentElement.tagName||"TH"===n.startContainer.parentElement.tagName||(this.rangeElement=null,this.oldRangeElement=null,this.deleteRangeElement=null,this.deleteOldRangeElement=null,this.isImageDelete||o.preventDefault(),o.preventDefault())},n.prototype.isOrderedList=function(e){e=e.replace(/\u200B/g,"");var n=[/^[1]+[.]+$/,/^[i]+[.]+$/,/^[a]+[.]+$/];if(!t.isNullOrUndefined(e))for(var i=0;i<n.length;i++)if(n[i].test(e))return!0;return!1},n.prototype.isUnOrderedList=function(e){e=e.replace(/\u200B/g,"");var n=[/^[*]$/,/^[-]$/];if(!t.isNullOrUndefined(e))for(var i=0;i<n.length;i++)if(n[i].test(e))return!0;return!1},n.prototype.backSpaceCleanup=function(e,n){var i=!1,o=!0;if(t.isNullOrUndefined(n.startContainer.previousSibling)||"SPAN"!==n.startContainer.previousSibling.nodeName||(o="false"!==n.startContainer.previousSibling.contentEditable),"Backspace"===e.args.code&&8===e.args.keyCode&&0===n.startOffset&&0===n.endOffset&&0===this.parent.getSelection().length&&n.startContainer.textContent.length>0&&"TD"!==n.startContainer.parentElement.tagName&&"TH"!==n.startContainer.parentElement.tagName&&o){var r="#text"===n.startContainer.nodeName?n.startContainer.parentElement:n.startContainer;if(!this.parent.formatter.editorManager.domNode.isBlockNode(r)&&!t.isNullOrUndefined(r.previousSibling)&&"BR"===r.previousSibling.nodeName||!t.isNullOrUndefined(n.startContainer.previousSibling)&&"BR"===n.startContainer.previousSibling.nodeName)return;if(this.rangeElement=this.getRootBlockNode(n.startContainer),"OL"===this.rangeElement.tagName||"UL"===this.rangeElement.tagName){var s=this.getRangeLiNode(n.startContainer);s.previousElementSibling&&s.previousElementSibling.childElementCount>0&&(this.oldRangeElement="BR"===s.previousElementSibling.lastElementChild.nodeName?s.previousElementSibling:s.previousElementSibling.lastElementChild,t.isNullOrUndefined(s.lastElementChild)||"BR"===s.lastElementChild.nodeName?this.rangeElement=s:(this.rangeElement=s.lastElementChild,i=!0))}else{if(this.rangeElement===this.parent.inputElement||"TABLE"===this.rangeElement.tagName||!t.isNullOrUndefined(this.rangeElement.previousElementSibling)&&"TABLE"===this.rangeElement.previousElementSibling.tagName)return;this.oldRangeElement=this.rangeElement.previousElementSibling}if(t.isNullOrUndefined(this.oldRangeElement))return;"OL"!==this.oldRangeElement.tagName&&"UL"!==this.oldRangeElement.tagName||(this.oldRangeElement=this.oldRangeElement.lastElementChild.lastElementChild?this.oldRangeElement.lastElementChild.lastElementChild:this.oldRangeElement.lastElementChild);for(var a=this.oldRangeElement.lastChild;3!==a.nodeType&&"#text"!==a.nodeName&&"BR"!==a.nodeName;)a=a.lastChild;if(this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),a,a.textContent.length),1===this.oldRangeElement.querySelectorAll("BR").length&&t.detach(this.oldRangeElement.querySelector("BR")),!t.isNullOrUndefined(this.rangeElement)&&this.oldRangeElement!==this.rangeElement){for(;this.rangeElement.firstChild;)this.oldRangeElement.appendChild(this.rangeElement.childNodes[0]);i?t.detach(this.rangeElement.parentElement):t.detach(this.rangeElement),this.oldRangeElement.normalize()}}},n.prototype.deleteCleanup=function(e,n){var i,o,r=!1;if("Delete"===e.args.code&&46===e.args.keyCode&&0!==this.parent.contentModule.getText().trim().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length&&0===this.parent.getSelection().length&&"TD"!==n.startContainer.parentElement.tagName&&"TH"!==n.startContainer.parentElement.tagName){if(this.deleteRangeElement=o=this.getRootBlockNode(n.startContainer),"OL"===this.deleteRangeElement.tagName||"UL"===this.deleteRangeElement.tagName)(i=this.getRangeLiNode(n.startContainer)).nextElementSibling&&i.nextElementSibling.childElementCount>0&&!i.nextElementSibling.querySelector("BR")?t.isNullOrUndefined(i.lastElementChild)?this.deleteRangeElement=i:(this.deleteRangeElement=i.lastElementChild,r=!0):this.deleteRangeElement=this.getRangeElement(i);else if(3===this.deleteRangeElement.nodeType||"TABLE"===this.deleteRangeElement.tagName||!t.isNullOrUndefined(this.deleteRangeElement.nextElementSibling)&&"TABLE"===this.deleteRangeElement.nextElementSibling.tagName)return;if(this.getCaretIndex(n,this.deleteRangeElement)===this.deleteRangeElement.textContent.length){if(t.isNullOrUndefined(i)?this.deleteOldRangeElement=this.deleteRangeElement.nextElementSibling:r||!t.isNullOrUndefined(i.nextElementSibling)?this.deleteOldRangeElement=this.getRangeElement(i.nextElementSibling):this.deleteOldRangeElement=o.nextElementSibling,t.isNullOrUndefined(this.deleteOldRangeElement))return;0===n.startOffset&&1===n.endOffset&&"IMG"===this.deleteRangeElement.childNodes[0].nodeName?(this.parent.formatter.editorManager.nodeSelection.setSelectionText(this.parent.contentModule.getDocument(),this.deleteRangeElement,this.deleteRangeElement,0,1),this.isImageDelete=!0):(this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),this.deleteRangeElement,this.deleteRangeElement.childNodes.length),this.isImageDelete=!1);var s=this.deleteRangeElement.querySelector("BR");if(s&&s.classList.contains("e-rte-image-remove-focus"))return void t.removeClass([s],["e-rte-image-focus"]);if(s&&t.detach(s),t.isNullOrUndefined(this.deleteRangeElement)||"OL"===this.deleteOldRangeElement.tagName||"UL"===this.deleteOldRangeElement.tagName||this.deleteOldRangeElement===this.deleteRangeElement)this.deleteRangeElement=null,this.deleteOldRangeElement=null;else{for(;this.deleteOldRangeElement.firstChild;)this.deleteRangeElement.appendChild(this.deleteOldRangeElement.childNodes[0]);r?t.detach(this.deleteOldRangeElement.parentElement):t.detach(this.deleteOldRangeElement),this.deleteRangeElement.normalize()}}else this.deleteRangeElement=null}},n.prototype.getCaretIndex=function(e,t){var n=0;if(0!==this.parent.contentModule.getDocument().getSelection().rangeCount){var i=e.cloneRange();i.selectNodeContents(t),i.setEnd(e.endContainer,e.endOffset),n=i.toString().length}return n},n.prototype.getRangeElement=function(e){return e.lastElementChild?"BR"===e.lastElementChild.tagName?e.lastElementChild.previousElementSibling?e.lastElementChild.previousElementSibling:e:e.lastElementChild:e},n.prototype.getRootBlockNode=function(e){for(;e&&this.parent&&this.parent.inputElement!==e&&e.parentElement!==this.parent.inputElement;e=e)e=e.parentElement;return e},n.prototype.getRangeLiNode=function(e){for(var t=e.parentElement;t!==this.parent.inputElement&&(1!==t.nodeType||"LI"!==t.tagName);)t=t.parentElement;return t},n.prototype.onPaste=function(e){var n=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if(e.text.match(n)){if(e.isWordPaste)return;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+=x(this.parent);else{for(var d="",c=!0,p=s[l].split(" "),h=0;h<p.length;h++)""===p[h].trim()?d+=c?" ":" ":(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.replace("¶","&para");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 class="e-rte-anchor" href="'+g[h]+'" title="'+g[h]+'" target="_blank" aria-label="'+this.parent.serviceLocator.getService("rteLocale").getConstant("linkAriaLabel")+'">'+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.mouseOutHandler=function(){if(t.isNullOrUndefined(this.tooltipTargetEle)){var e=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().ownerDocument:this.parent.contentModule.getDocument();this.tooltipTargetEle=e.querySelector("[data-title]"),this.tooltipTargetEle.setAttribute("title",this.tooltipTargetEle.getAttribute("data-title"))}else this.tooltipTargetEle.setAttribute("title",this.tooltipTargetEle.getAttribute("data-title"));this.tooltipTargetEle.removeAttribute("data-title"),t.EventHandler.remove(this.tooltipTargetEle,"mouseout",this.mouseOutHandler)},n.prototype.onToolbarClick=function(e){var n,i,o,r=this,s=e.item,a=t.closest(e.originalEvent.target,".e-rte-quick-popup"),l=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().ownerDocument:this.parent.contentModule.getDocument();if(this.tooltipTargetEle=t.closest(e.originalEvent.target,"[data-tooltip-id]"),t.isNullOrUndefined(this.tooltipTargetEle)||!this.parent.showTooltip||t.isNullOrUndefined(l.querySelector(".e-tooltip-wrap"))||(this.parent.notify("destroyTooltip",{args:event}),this.tooltipTargetEle.setAttribute("data-title",this.tooltipTargetEle.getAttribute("title")),this.tooltipTargetEle.removeAttribute("title"),t.EventHandler.add(this.tooltipTargetEle,"mouseout",this.mouseOutHandler,this)),"FormatPainter"!==s.command)if(!a||a.classList.contains("e-rte-inline-popup")||a.classList.contains("e-rte-text-popup")){var d=document.getElementById(this.parent.getID()+"_rtelink"),c=document.getElementById(this.parent.getID()+"_image");if("SourceCode"!==s.subCommand&&"Preview"!==s.subCommand&&"FontColor"!==s.subCommand&&"BackgroundColor"!==s.subCommand){p=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());t.isNullOrUndefined(d)&&t.isNullOrUndefined(c)&&(n=this.nodeSelectionObj.save(p,this.parent.contentModule.getDocument())),i=this.nodeSelectionObj.getNodeCollection(p),o=this.nodeSelectionObj.getParentNodeCollection(p)}switch(s.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"Audio":this.parent.notify("insertAudio",{member:"audio",args:e,selectNode:i,selection:n,selectParent:o});break;case"Video":this.parent.notify("insertVideo",{member:"video",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;case"EmojiPicker":this.parent.notify("emojiPicker",{member:"emojiPicker",args:e});break;default:this.parent.formatter.process(this.parent,e,e.originalEvent,null)}}else{if("SourceCode"!==s.subCommand&&"Preview"!==s.subCommand&&"FontColor"!==s.subCommand&&"BackgroundColor"!==s.subCommand){P()&&"Images"===s.command&&this.nodeSelectionObj.restore();var p=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());n=this.nodeSelectionObj.save(p,this.parent.contentModule.getDocument()),i=this.nodeSelectionObj.getNodeCollection(p),o=this.nodeSelectionObj.getParentNodeCollection(p)}"Images"===s.command&&this.parent.notify("image-toolbar-action",{member:"image",args:e,selectNode:i,selection:n,selectParent:o}),"Audios"===s.command&&this.parent.notify("audio-toolbar-action",{member:"audio",args:e,selectNode:i,selection:n,selectParent:o}),"Videos"===s.command&&this.parent.notify("video-toolbar-action",{member:"video",args:e,selectNode:i,selection:n,selectParent:o}),"Links"===s.command&&this.parent.notify("link-toolbar-action",{member:"link",args:e,selectNode:i,selection:n,selectParent:o}),"Table"===s.command&&this.parent.notify("table-toolbar-action",{member:"table",args:e,selectNode:i,selection:n,selectParent:o})}else 1===e.originalEvent.detail?(clearTimeout(this.clickTimeout),this.clickTimeout=setTimeout(function(){r.parent.notify("formatPainterClick",{member:"formatPainter",args:e})},200)):(clearTimeout(this.clickTimeout),this.parent.notify("formatPainterDoubleClick",{member:"formatPainter",args:e}))},n.prototype.renderColorPicker=function(e){this.colorPickerModule.renderColorPickerInput(e)},n.prototype.instantiateRenderer=function(){this.parent.iframeSettings.enable?this.renderFactory.addRenderer(e.RenderType.Content,new qn(this.parent,this.locator)):this.renderFactory.addRenderer(e.RenderType.Content,new jn(this.parent,this.locator))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(_,this.render),this.parent.off(Q,this.onPropertyChanged),this.parent.off("html-toolbar-click",this.onToolbarClick),this.parent.off("render-color-picker",this.renderColorPicker),this.parent.off(V,this.destroy),this.parent.off(K,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(X,this.onSelectionSave),this.parent.off(Y,this.onSelectionRestore),this.parent.off("readOnlyMode",this.updateReadOnly),this.parent.off(Z,this.onPaste),this.parent.off("tableclass",this.isTableClassAdded))},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 Un({currentDocument:this.contentRenderer.getDocument(),element:n,options:i,formatPainterSettings:this.parent.formatPainterSettings});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 Hn(this.parent)),this.parent.inlineMode.enable&&(t.isNullOrUndefined(this.parent.fontFamily.default)||(n.style.fontFamily=this.parent.fontFamily.default),t.isNullOrUndefined(this.parent.fontSize.default)||(n.style.fontSize=this.parent.fontSize.default)),this.parent.notify("bind-on-end",{})},n.prototype.onPropertyChanged=function(e){if(t.isNullOrUndefined(e)||t.isNullOrUndefined(e.newProp.toolbarSettings)||t.isNullOrUndefined(e.newProp.toolbarSettings.enable)||(this.toolbarUpdate=new Hn(this.parent)),!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=O(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}(),Vn=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.cropImageData=[],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 rn,this.parent.isDestroyed||(this.parent.on("pasteClean",this.pasteClean,this),this.parent.on(ie,this.setCssClass,this),this.parent.on(V,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(ie,this.setCssClass),this.parent.off(V,this.destroy))},n.prototype.pasteClean=function(n){var i,o=this,r={requestType:"Paste",editorMode:this.parent.editorMode,event:n},s=null,a=!1;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){var l=void 0;if(0===s.length){var d=new RegExp(/<\/[a-z][\s\S]*>/i);if(s=n.args.clipboardData.getData("text/plain"),this.isNotFromHtml=""!==s,s=s.replace(/</g,"<"),s=s.replace(/>/g,">"),this.containsHtml=d.test(s),l=n&&n.args.clipboardData&&n.args.clipboardData.items.length>0?null===n.args.clipboardData.items[0].getAsFile()?t.isNullOrUndefined(n.args.clipboardData.items[1])?null:n.args.clipboardData.items[1].getAsFile():n.args.clipboardData.items[0].getAsFile():null,this.parent.notify(Z,{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}}),!d.test(s)){var c=this.parent.createElement("div");c.innerHTML=this.splitBreakLine(s),s=c.innerHTML,a=!0}}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,t,n){r.pasteTableSource=n,s=e.trim(),o.cropImageData=t}});this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var p=this.contentRenderer.getDocument(),h=this.nodeSelectionObj.getRange(p);this.saveSelection=this.nodeSelectionObj.save(h,p);var u=this.parent.createElement("div");u.innerHTML=s;var m=""!==u.textContent||!t.isNullOrUndefined(u.querySelector("img"))||!t.isNullOrUndefined(u.querySelector("table"));this.parent.notify("cleanupResizeElements",{value:s,callBack:function(e){s=e}}),this.parent.pasteCleanupSettings.prompt?m?(n.args.preventDefault(),this.pasteDialog(s,r,a)):-1!==t.Browser.userAgent.indexOf("Firefox")&&t.isNullOrUndefined(l)&&this.fireFoxImageUpload():m||this.parent.pasteCleanupSettings.plainText||-1===t.Browser.userAgent.indexOf("Firefox")?this.parent.pasteCleanupSettings.plainText?(n.args.preventDefault(),this.plainFormatting(s,r,a)):this.parent.pasteCleanupSettings.keepFormat?(n.args.preventDefault(),this.formatting(s,!1,r)):(n.args.preventDefault(),this.formatting(s,!0,r)):this.fireFoxImageUpload()}},n.prototype.fireFoxImageUpload=function(){var e=this;setTimeout(function(){if(-1!==t.Browser.userAgent.indexOf("Firefox")){var n=e.nodeSelectionObj.getRange(e.contentRenderer.getDocument()).startContainer;"#text"!==n.nodeName&&(n=n.childNodes[e.nodeSelectionObj.getRange(e.contentRenderer.getDocument()).startOffset]),"IMG"===n.previousSibling.nodeName&&(t.isNullOrUndefined(n.previousSibling.getAttribute("src"))||n.previousSibling.classList.add("pasteContent_Img"),n.previousSibling.classList.add(ye),"inline"===e.parent.insertImageSettings.display?n.previousSibling.classList.add(fe):n.previousSibling.classList.add(me),n.previousSibling.classList.add(),e.setImageProperties(n.previousSibling))}e.imgUploading(e.parent.inputElement)},500)},n.prototype.splitBreakLine=function(e){for(var t=e.split("\n"),n="",i="P"===this.parent.enterKey?"<p>":"DIV"===this.parent.enterKey?"<div>":"",o="P"===this.parent.enterKey?"</p>":"DIV"===this.parent.enterKey?"</div>":"<br>",r=0;r<t.length;r++)if(""===t[r].trim())n+=x(this.parent);else{var s=this.makeSpace(t[r]);n+=(0===r&&"BR"!==this.parent.enterKey?"<span>":i)+(""===s.trim()?"<br>":s.trim())+(t.length-1===r&&"BR"===this.parent.enterKey?"":0===r&&"BR"!==this.parent.enterKey?"</span>":o)}return n},n.prototype.makeSpace=function(e){for(var t="",n=!0,i=(e=e.replace(/\t/g," ")).split(" "),o=0;o<i.length;o++)""===i[o].trim()?t+=n?" ":" ":(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++)!t.isNullOrUndefined(n[s].getAttribute("src"))&&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(B(e[n].getAttribute("src")));e[n].setAttribute("src",i)}},n.prototype.toolbarEnableDisable=function(e){this.parent.inlineMode.enable||this.parent.toolbarModule.baseToolbar.toolbarObj.disable(e)},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.getID()+"_upload",attrs:{type:"File",name:"UploadFiles"}}),d=this.parent.iframeSettings.enable?-50:-90;this.popupObj=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,i.popupObj.destroy(),t.detach(i.popupObj.element)}}),this.popupObj.element.style.display="none",t.addClass([this.popupObj.element],["e-popup-open","e-rte-upload-popup"]),t.isNullOrUndefined(this.parent.cssClass)||t.addClass([this.popupObj.element],this.parent.cssClass);var c=e.size>1e6?300:100;setTimeout(function(){i.refreshPopup(n,i.popupObj)},c),this.uploadObj=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(i.popupObj,i.uploadObj,n,e)},900)},uploading:function(e){i.parent.isServerRendered||i.parent.trigger("imageUploading",e,function(e){e.cancel?(t.isNullOrUndefined(n)||t.detach(n),t.isNullOrUndefined(i.popupObj.element)||t.detach(i.popupObj.element)):i.parent.inputElement.contentEditable="false"})},beforeUpload:function(e){i.parent.trigger("beforeImageUpload",e),i.toolbarEnableDisable(!0)},failure:function(e){setTimeout(function(){i.uploadFailure(n,i.uploadObj,i.popupObj,e)},900)},canceling:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),i.popupObj.close()},selected:function(e){e.cancel=!0},removing:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),i.popupObj.close()}}),this.uploadObj.appendTo(this.popupObj.element.childNodes[0]);var p=[{name:e.name,rawFile:e,size:e.size,type:e.type,validationMessages:{minSize:"",maxSize:""},statusCode:"1"}];this.uploadObj.createFileList(p),this.uploadObj.upload(p),this.popupObj.element.getElementsByClassName("e-file-select-wrap")[0].style.display="none",t.detach(this.popupObj.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(),this.toolbarEnableDisable(!1)},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(n,i){t.isNullOrUndefined(i.elements[0].getAttribute("src"))||i.elements[0].classList.add("pasteContent_Img");var o=this.parent.createElement("span");o.appendChild(i.elements[0]);var r=o.innerHTML;this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var s=this.contentRenderer.getDocument(),a=this.nodeSelectionObj.getRange(s);this.saveSelection=this.nodeSelectionObj.save(a,s),this.parent.pasteCleanupSettings.prompt?this.pasteDialog(r,n,!1):this.parent.pasteCleanupSettings.plainText?this.plainFormatting(r,n,!1):this.parent.pasteCleanupSettings.keepFormat?this.formatting(r,!1,n):this.formatting(r,!0,n)},n.prototype.radioRender=function(){this.keepRadioButton=new s.RadioButton({label:this.i10n.getConstant("keepFormat"),name:"pasteOption",checked:!0}),this.keepRadioButton.isStringTemplate=!0;var e=this.parent.element.querySelector("#keepFormating");this.keepRadioButton.appendTo(e),this.cleanRadioButton=new s.RadioButton({label:this.i10n.getConstant("cleanFormat"),name:"pasteOption"}),this.cleanRadioButton.isStringTemplate=!0;var t=this.parent.element.querySelector("#cleanFormat");this.cleanRadioButton.appendTo(t),this.plainTextRadioButton=new s.RadioButton({label:this.i10n.getConstant("plainText"),name:"pasteOption"}),this.plainTextRadioButton.isStringTemplate=!0;var n=this.parent.element.querySelector("#plainTextFormat");this.plainTextRadioButton.appendTo(n)},n.prototype.selectFormatting=function(e,t,n,i,o){n?this.formatting(e,!1,t):i?this.formatting(e,!0,t):this.plainFormatting(e,t,o)},n.prototype.pasteDialog=function(e,t,n){var i=this,o=!1,r=this.parent.height,s={buttons:[{click:function(){if(!i.dialogObj.isDestroyed){var s=i.parent.element.querySelector("#keepFormating").checked,a=i.parent.element.querySelector("#cleanFormat").checked;i.dialogObj.hide(),i.parent.height=o?r:i.parent.height,o=!1;var l=i.dialogObj;i.dialogRenderObj.close(l),i.dialogObj.destroy(),i.selectFormatting(e,t,s,a,n)}},buttonModel:{isPrimary:!0,cssClass:"e-flat e-rte-pasteok",content:this.i10n.getConstant("pasteDialogOk")}},{click:function(){if(!i.dialogObj.isDestroyed){i.dialogObj.hide(),i.parent.height=o?r:i.parent.height,o=!1;var e=i.dialogObj;i.dialogRenderObj.close(e),i.dialogObj.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};this.dialogObj=this.dialogRenderObj.render(s);var a=this.parent.element.querySelector("#"+this.parent.getID()+"_pasteCleanupDialog");null!==a&&""!==a.innerHTML&&this.destroyDialog(a),null===a&&(a=this.parent.createElement("div",{id:this.parent.getID()+"_pasteCleanupDialog"}),this.parent.element.appendChild(a)),this.dialogObj.appendTo(a),this.radioRender(),this.parent.element.offsetHeight<parseInt(this.dialogObj.height.split("px")[0],null)&&(this.parent.setProperties({height:parseInt(this.dialogObj.height.split("px")[0],null)+40}),o=!0),this.dialogObj.show(),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){this.popupObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?t.addClass([this.popupObj.element],e.cssClass):(t.removeClass([this.popupObj.element],e.oldCssClass),t.addClass([this.popupObj.element],e.cssClass))),this.updateCss(this.dialogObj,e),this.updateCss(this.uploadObj,e),this.updateCss(this.plainTextRadioButton,e),this.updateCss(this.cleanRadioButton,e),this.updateCss(this.keepRadioButton,e)},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.cleanAppleClass=function(e){for(var n=e.querySelectorAll("br.Apple-interchange-newline"),i=0;i<n.length;i++)t.detach(n[i]);return e},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,r=this.cleanAppleClass(r),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++)t.isNullOrUndefined(s[a].getAttribute("src"))||s[a].classList.add("pasteContent_Img"),this.setImageProperties(s[a]);if(this.addTempClass(r),""!==r.textContent||!t.isNullOrUndefined(r.querySelector("img"))||!t.isNullOrUndefined(r.querySelector("table"))){var l=this.parent.createElement("div");l.innerHTML=e;var d=[];if(!t.isNullOrUndefined(l.querySelector("img"))){for(var c=l.querySelectorAll("img"),p=[],h=[],u=[],a=0;a<c.length;a++)c[a].getAttribute("src")&&c[a].getAttribute("src").split(",")[0].indexOf("base64")>=0&&(p.push(c[a].getAttribute("src")),h.push(t.getUniqueID("rte_image")),u.push(c[a]));for(var m=[],g=void 0,a=0;a<p.length;a++)m.push(this.base64ToFile(p[a],h[a])),g={name:m[a].name,rawFile:m[a],size:m[a].size,type:m[a].type,status:"",validationMessages:{minSize:"",maxSize:""},statusCode:"1"},d.push(g)}this.parent.trigger("afterPasteCleanup",{value:r.innerHTML,filesData:d},function(t){e=t.value}),r.innerHTML=this.parent.addAnchorAriaLabel(e),r=this.addTableClass(r,i.pasteTableSource),this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",i,function(e){if(t.extend(i,{elements:e.elements,imageElements:e.imgElem},!0),o.parent.formatter.onSuccess(o.parent,i),!t.isNullOrUndefined(e.elements)&&!t.isNullOrUndefined(e.imgElem)){var n=e.elements,r=e.imgElem,s=o.findLastElement(n[n.length-1]);(!t.isNullOrUndefined(s)&&"IMG"===s.nodeName||n[n.length-1]===r[r.length-1])&&o.parent.notify("insertCompleted",{args:i.event,type:"Images",isNotify:!0,elements:r[r.length-1]})}},r,null,null,this.parent.enterKey),this.removeTempClass(),this.parent.notify("toolbar-refresh",{}),this.cropImageHandler(this.parent.inputElement)}},n.prototype.cropImageHandler=function(e){var t=this,n=e.querySelectorAll(".e-img-cropped");if(n.length>0)for(var i=0;i<n.length;i++)!function(e){if(n[e].getAttribute("src").split(",")[0].indexOf("base64")>=0){var i=new Image;i.src=n[e].getAttribute("src");var o=document.createElement("canvas"),r=o.getContext("2d");i.onload=function(){var s=t.cropImageData[e].goalWidth/i.naturalWidth,a=t.cropImageData[e].goalHeight/i.naturalHeight,l=t.cropImageData[e].cropLength/s,d=t.cropImageData[e].cropTop/a,c=(t.cropImageData[e].goalWidth-t.cropImageData[e].cropLength-t.cropImageData[e].cropR)/s,p=(t.cropImageData[e].goalHeight-t.cropImageData[e].cropTop-t.cropImageData[e].cropB)/a;o.width=c,o.height=p,r.drawImage(i,l,d,c,p,0,0,c,p);var h=o.toDataURL("image/png");n[e].setAttribute("src",h),n[e].classList.remove("e-img-cropped"),t.imgUploading(t.parent.inputElement),t.parent.iframeSettings.enable&&t.parent.updateValue()}}}(i);else this.imgUploading(this.parent.inputElement),this.parent.iframeSettings.enable&&this.parent.updateValue()},n.prototype.addTableClass=function(e,t){for(var n=e.querySelectorAll("table"),i=0;i<n.length;i++)n[i].classList.contains("e-rte-table")||"html"!==t&&""!==t?t&&"html"!==t&&n[i].classList.add("e-rte-paste-"+t+"-table"):n[i].classList.add("e-rte-table");return e},n.prototype.setImageProperties=function(e){"auto"!==this.parent.insertImageSettings.width&&e.setAttribute("width",this.parent.insertImageSettings.width),"0"!==this.parent.insertImageSettings.minWidth&&0!==this.parent.insertImageSettings.minWidth&&(e.style.minWidth=this.parent.insertImageSettings.minWidth.toString()),null!==this.parent.insertImageSettings.maxWidth&&(e.style.maxWidth=this.parent.getInsertImgMaxWidth().toString()),"auto"!==this.parent.insertImageSettings.height&&e.setAttribute("height",this.parent.insertImageSettings.height),"0"!==this.parent.insertImageSettings.minHeight&&0!==this.parent.insertImageSettings.minHeight&&(e.style.minHeight=this.parent.insertImageSettings.minHeight.toString()),null!==this.parent.insertImageSettings.maxHeight&&(e.style.maxHeight=this.parent.insertImageSettings.maxHeight.toString())},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=R(e,this.parent)},n.prototype.plainFormatting=function(e,n,i){var o=this,r=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});if(r.innerHTML=e,this.detachInlineElements(r),this.getTextContent(r),""!==r.textContent.trim()){if(!t.isNullOrUndefined(r.firstElementChild)&&"BR"!==r.firstElementChild.tagName){var s=r.firstElementChild;if(!t.isNullOrUndefined(r.firstElementChild)){for(var a=this.parent.createElement("span"),l=0,d=0;l<s.childNodes.length;l++,d++)if("#text"===s.childNodes[l].nodeName)a.appendChild(s.childNodes[l]),r.insertBefore(a,r.firstElementChild),l--;else{if("#text"===s.childNodes[l].nodeName||0!==d)break;for(var c=0;c<s.childNodes[l].childNodes.length;c++)a.appendChild(s.childNodes[l].childNodes[c]),r.insertBefore(a,r.firstElementChild),c--;l--}s.hasChildNodes()||t.detach(s)}}this.removeEmptyElements(r),this.saveSelection.restore(),r.innerHTML=this.sanitizeHelper(r.innerHTML),this.addTempClass(r),this.removingComments(r),"BR"!==this.parent.enterKey||i?"DIV"===this.parent.enterKey&&(r.innerHTML=r.innerHTML.replace(/<p class="pasteContent_RTE">/g,"<div>").replace(/<\/p>/g,"</div>")):r=this.reframeToBrContent(r),this.parent.trigger("afterPasteCleanup",{value:r.innerHTML,filesData:null},function(t){e=t.value}),r.innerHTML=e,this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",n,function(e){t.extend(n,{elements:e.elements,imageElements:e.imgElem},!0),o.parent.formatter.onSuccess(o.parent,n)},r,null,null,this.parent.enterKey),this.removeTempClass()}else this.saveSelection.restore(),t.extend(n,{elements:[]},!0),this.parent.formatter.onSuccess(this.parent,n)},n.prototype.removingComments=function(e){var t=e.innerHTML;t=t.replace(/<!--[\s\S]*?-->/g,""),e.innerHTML=t},n.prototype.reframeToBrContent=function(e){for(var n=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});!t.isNullOrUndefined(e.firstChild);){var i=this.parent.createElement("br"),o=e.firstChild;if("#text"===o.nodeName){var r=!t.isNullOrUndefined(o.nextSibling);n.appendChild(o),r&&n.appendChild(i)}else{var s="BR"===o.nodeName;s?n.appendChild(o):n.appendChild(o.childNodes[0]),t.isNullOrUndefined(o)||t.isNullOrUndefined(o.nextSibling)||n.appendChild(i),s||t.isNullOrUndefined(o)||t.detach(o)}}return 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&&" "!==n[i].childNodes[r].nodeValue.replace(/\u00a0/g," ")&&""===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++)if(i[o]!==e.firstChild||"SPAN"!==i[o].nodeName){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.length>0&&e.parentElement.textContent.match(/\u00a0/g)&&e.parentElement.textContent.match(/\u00a0/g).length>0||""!==e.parentElement.textContent.trim()||"pasteContent"===e.parentElement.getAttribute("class")?e:this.findDetachEmptyElem(e.parentElement)},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(It),i=n.map(function(e){return It[""+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.findLastElement=function(e){if(!t.isNullOrUndefined(e)&&!t.isNullOrUndefined(e.lastElementChild)){for(var n=e.lastElementChild;n&&n.lastElementChild;)n=n.lastElementChild;return n}return null},n.prototype.getModuleName=function(){return"pasteCleanup"},n}(),Qn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(_,this.renderResizable,this),this.parent.on(V,this.destroy,this))},e.prototype.renderResizable=function(){var e=this.parent.enableRtl?"e-south-west":"e-south-east";this.resizer=this.parent.createElement("div",{id:this.parent.getID()+"-resizable",className:"e-icons e-resize-handle "+e}),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 t=this;e.cancelable&&e.preventDefault(),this.wireResizeEvents(),this.parent.notify("resizeInitialized",{});var n={event:e,requestType:"editor"};this.parent.trigger("resizeStart",n,function(e){e.cancel&&t.unwireResizeEvents()})},e.prototype.performResize=function(e){var n=this,i={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=this.parent.enableRtl?o.right-e.clientX+"px":e.clientX-o.left+"px";var r=this.parent.toolbarModule.getToolbarElement();if(null!==r&&r.classList.contains("e-rte-tb-float")&&this.parent.toolbarSettings.enableFloating&&this.parent.getToolbar()&&!this.parent.inlineMode.enable){var s=this.parent.contentModule.getPanel().getBoundingClientRect().width;r.style.width=s+"px"}}else{var a="msie"!==t.Browser.info.name?e.touches[0]:e;this.parent.element.style.height=a.clientY-o.top+"px",this.parent.element.style.width=this.parent.enableRtl?o.right-a.clientX+"px":a.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 t={event:e,requestType:"editor"};this.parent.trigger("resizeStop",t)},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(_,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(V,this.destroy))},e.prototype.getModuleName=function(){return"resize"},e}(),Wn=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),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.setCssClass=function(e){this.dialogObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?this.dialogObj.setProperties({cssClass:(this.dialogObj.cssClass+" "+e.cssClass).trim()}):this.dialogObj.setProperties({cssClass:(this.dialogObj.cssClass.replace(e.oldCssClass,"").trim()+" "+e.cssClass).trim()}))},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,beforeSend:this.parent.fileManagerSettings.beforeSend,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?fe:me,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,E(this.parent.element,"focusout"))},n.prototype.addEventListener=function(){this.parent.on(_,this.initialize,this),this.parent.on("renderFileManager",this.render,this),this.parent.on(ie,this.setCssClass,this),this.parent.on(V,this.destroy,this)},n.prototype.removeEventListener=function(){t.EventHandler.remove(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick),this.parent.off(_,this.initialize),this.parent.off("renderFileManager",this.render),this.parent.off(ie,this.setCssClass),this.parent.off(V,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}(),Kn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.showFullScreen=function(e){var n=this;if(!0!==this.parent.toolbarSettings.enable||"Markdown"===this.parent.editorMode||t.isNullOrUndefined(this.parent.quickToolbarModule)||this.parent.quickToolbarModule.hideQuickToolbars(),this.parent.showTooltip&&!t.isNullOrUndefined(document.querySelector(".e-tooltip-wrap"))&&this.parent.notify("destroyTooltip",{args:e}),this.scrollableParent=o.getScrollableParent(this.parent.element),!this.parent.element.classList.contains("e-rte-full-screen")){var i={cancel:!1,requestType:"Maximize",targetItem:"Maximize",args:e};this.parent.trigger(G,i,function(i){if(!i.cancel){n.parent.toolbarSettings.enableFloating&&!n.parent.inlineMode.enable&&n.parent.toolbarSettings.enable&&(n.parent.getToolbarElement().style.width="100%",n.parent.getToolbarElement().style.top="0px"),n.parent.element.classList.add("e-rte-full-screen"),n.toggleParentOverflow(!0);var o=n.parent.element.querySelectorAll(".e-toolbar-extended.e-popup-open").length>0;n.parent.setContentHeight(null,o),n.parent.toolbarModule&&(n.parent.getBaseToolbarObject().toolbarObj.items[0].properties||n.parent.getBaseToolbarObject().toolbarObj.removeItems(0),t.Browser.isDevice&&n.parent.toolbarModule.removeFixedTBarClass(),n.parent.toolbarModule.updateItem({targetItem:"Maximize",updateItem:"Minimize",baseToolbar:n.parent.getBaseToolbarObject()})),n.parent.refreshUI(),n.parent.trigger("actionComplete",{requestType:"Maximize",targetItem:"Maximize",args:e})}})}},e.prototype.hideFullScreen=function(e){var n=this;if(!0!==this.parent.toolbarSettings.enable||"Markdown"===this.parent.editorMode||t.isNullOrUndefined(this.parent.quickToolbarModule)||this.parent.quickToolbarModule.hideQuickToolbars(),this.parent.showTooltip&&!t.isNullOrUndefined(document.querySelector(".e-tooltip-wrap"))&&this.parent.notify("destroyTooltip",{args:e}),this.parent.element.classList.contains("e-rte-full-screen")){var i={cancel:!1,requestType:"Minimize",targetItem:"Minimize",args:e};this.parent.trigger(G,i,function(i){if(!i.cancel){n.parent.element.classList.remove("e-rte-full-screen");for(var o=document.querySelectorAll(".e-rte-overflow"),r=0;r<o.length;r++)t.removeClass([o[r]],["e-rte-overflow"]);var s=n.parent.element.querySelectorAll(".e-toolbar-extended.e-popup-open").length>0;n.parent.setContentHeight(null,s),n.parent.toolbarModule&&(n.parent.getBaseToolbarObject().toolbarObj.items[0].properties||n.parent.getBaseToolbarObject().toolbarObj.removeItems(0),n.parent.toolbarModule.updateItem({targetItem:"Minimize",updateItem:"Maximize",baseToolbar:n.parent.getBaseToolbarObject()}),t.Browser.isDevice&&n.parent.inlineMode.enable&&n.parent.toolbarModule.addFixedTBarClass()),n.parent.refreshUI(),n.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(K,this.onKeyDown,this),this.parent.on(V,this.destroy,this),this.parent.on(ne,this.moduleDestroy,this)},e.prototype.removeEventListener=function(){this.parent.off(K,this.onKeyDown),this.parent.off(V,this.destroy),this.parent.off(ne,this.moduleDestroy)},e.prototype.destroy=function(){if(!t.isNullOrUndefined(this.parent)){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.prototype.moduleDestroy=function(){this.parent=null},e}(),Gn=function(){function e(e){this.isSticky=!1,this.isActive=!1,this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("formatPainterClick",this.toolbarClick,this),this.parent.on("formatPainterDoubleClick",this.toolbarDoubleClick,this),this.parent.on("editAreaClick",this.editAreaClick,this),this.parent.on(K,this.onKeyDown,this),this.parent.on(V,this.destroy,this)},e.prototype.toolbarClick=function(e){this.parent.focusIn(),this.isSticky?(e.args.action="escape",this.actionHandler(e,"keyBoard")):(this.isActive=!0,this.actionHandler(e,"click")),this.parent.quickToolbarModule&&!t.isNullOrUndefined(this.parent.quickToolbarSettings.text)&&this.parent.element.ownerDocument.contains(this.parent.quickToolbarModule.textQTBar.element)&&this.parent.quickToolbarModule.textQTBar.hidePopup()},e.prototype.toolbarDoubleClick=function(e){this.isActive=!0,this.isSticky=!0,this.parent.focusIn(),this.actionHandler(e,"dbClick")},e.prototype.onKeyDown=function(e){var n=e.args;(t.isNullOrUndefined(n)||t.isNullOrUndefined(n.action)||"format-copy"!==n.action&&"format-paste"!==n.action)&&("escape"!==n.action||"format-copy"!==this.previousAction&&"format-paste"!==this.previousAction)||("format-copy"!==n.action&&"format-paste"!==n.action||n.stopPropagation(),this.actionHandler(e,"keyBoard"))},e.prototype.actionHandler=function(e,n){var i,o,r,s=!1;switch(n){case"dbClick":r=e.args.item,o=e.args.originalEvent,i="format-copy";break;case"keyBoard":null,o=e.args,s=!0,"escape"===(i=e.args.action)&&(this.isSticky=!1,this.isActive=!1);break;case"click":r=e.args.item,o=e.args.originalEvent,i="format-copy";break;case"docClick":o=e,i="format-paste"}this.updateCursor(s);var a="docClick"!==n&&"escape"!==i;this.updateToolbarBtn(a),t.isNullOrUndefined(r)&&(r={command:"FormatPainter",subCommand:"FormatPainter"});var l={requestType:"FormatPainter",originalEvent:o,name:i,item:r},d={formatPainterAction:i};this.parent.formatter.process(this.parent,l,o,d),this.previousAction=i},e.prototype.updateCursor=function(e){this.parent.inputElement.classList.contains("e-rte-cursor-brush")||e?this.isSticky||t.removeClass([this.parent.inputElement],"e-rte-cursor-brush"):t.addClass([this.parent.inputElement],"e-rte-cursor-brush")},e.prototype.updateToolbarBtn=function(e){if(!t.isNullOrUndefined(this.parent.element.querySelector(".e-rte-format-painter"))){var n=this.parent.element.querySelector(".e-rte-format-painter").parentElement.parentElement;e?t.addClass([n],"e-active"):this.isSticky||t.removeClass([n],"e-active")}},e.prototype.editAreaClick=function(e){this.isActive&&(this.isSticky||(this.isActive=!1),this.actionHandler(e,"docClick"),this.updateToolbarBtn(!1))},e.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.parent.isDestroyed||(this.parent.off("formatPainterClick",this.toolbarClick),this.parent.off("editAreaClick",this.editAreaClick),this.parent.off("formatPainterDoubleClick",this.toolbarDoubleClick),this.parent.off(K,this.onKeyDown),this.parent.off(V,this.destroy),t.isNullOrUndefined(this.parent.formatter.editorManager.formatPainterEditor)||this.parent.formatter.editorManager.formatPainterEditor.destroy(),this.parent=void 0,this.isSticky=void 0,this.isActive=void 0,this.previousAction=void 0)},e.prototype.getModuleName=function(){return"formatPainter"},e}(),Xn=function(){function e(e,t){this.parent=e,this.locator=t,this.i10n=t.getService("rteLocale"),this.renderFactory=this.locator.getService("rendererFactory"),this.baseToolbar=new at(this.parent,this.locator),this.addEventListener()}return e.prototype.destroy=function(){this.removeEventListener()},e.prototype.addEventListener=function(){this.parent.on("emojiPicker",this.toolbarClick,this),this.parent.on("docClick",this.docClick,this),this.parent.on(K,this.onkeyPress,this),this.parent.on(W,this.onkeyUp,this),this.parent.on("contentscroll",this.contentscroll,this),this.parent.on($,this.contentscroll,this)},e.prototype.toolbarClick=function(e){var i,s,a,l=this;t.isNullOrUndefined(this.parent.element.querySelector(".e-emoji"))?this.parent.inlineMode.enable&&(a=this.parent.element.ownerDocument.querySelector(".e-emoji")):a=this.parent.element.querySelector(".e-emoji"),this.divElement=a.closest("div"),this.parent.inputElement.contains(this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()).startContainer)||this.parent.contentModule.getEditPanel().focus();var d=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());this.save=this.parent.formatter.editorManager.nodeSelection.save(d,this.parent.contentModule.getDocument()),this.clickEvent=e.args;var c=this.parent.emojiPickerSettings.iconsSet;if(this.popupObj){if(t.removeClass([this.divElement],"e-active"),this.popupObj.element.querySelector(".e-rte-emoji-search")||!this.parent.emojiPickerSettings.showSearchBox)return void this.popupObj.hide();this.popupObj.hide()}this.popDiv=this.parent.createElement("div",{className:"e-rte-emojipicker-popup",id:this.parent.getID()+"_emojiPicker"}),t.isNullOrUndefined(this.parent.getToolbar())||this.parent.inlineMode.enable?this.parent.inlineMode.enable&&this.parent.inputElement.appendChild(this.popDiv):this.parent.getToolbar().appendChild(this.popDiv),t.EventHandler.add(this.popDiv,"keydown",this.onKeyDown,this),t.EventHandler.add(this.popDiv,"keyup",this.searchFilter,this);var p,h=this.parent.element.querySelector(".e-toolbar-extended");p=t.isNullOrUndefined(h)?"10001":window.getComputedStyle(h).getPropertyValue("z-index");var u,m,g;if(t.isNullOrUndefined(e.args)||this.parent.inlineMode.enable||!t.isNullOrUndefined(this.parent.quickToolbarSettings.text))if(t.isNullOrUndefined(e.x)&&t.isNullOrUndefined(e.y)&&!this.parent.inlineMode.enable&&t.isNullOrUndefined(this.parent.quickToolbarSettings.text))u=this.parent.inputElement,this.parent.contentModule.getDocument().getSelection().rangeCount>0&&(m=(f=this.getCoordinates()).left,g=f.top);else if(t.isNullOrUndefined(e.x)&&t.isNullOrUndefined(e.y)&&(this.parent.inlineMode.enable||!t.isNullOrUndefined(this.parent.quickToolbarSettings.text))){if(this.parent.notify("hidePopup",{}),this.parent.contentModule.getDocument().getSelection().rangeCount>0){var f=this.getCoordinates();m=f.left,g=f.top}}else u=this.parent.inputElement,m=e.x,g=e.y;else u=(u=e.args.originalEvent.target).classList.contains("e-toolbar-item")?u.firstChild:u.parentElement,m="left",g="bottom";if(this.popupObj=new o.Popup(this.popDiv,{targetType:"relative",relateTo:u,collision:{X:"fit",Y:"none"},offsetY:8,viewPortElement:this.parent.element,position:{X:m,Y:g},enableRtl:this.parent.enableRtl,zIndex:parseInt(p,10)+1,actionOnScroll:"hide",close:function(e){l.parent.isBlur=!1,l.popupObj.destroy(),t.detach(l.popupObj.element),l.popupObj=null}}),t.addClass([this.popupObj.element],"e-popup-open"),this.popupObj.refreshPosition(u),(!t.isNullOrUndefined(e.args)||t.isNullOrUndefined(e.x)&&t.isNullOrUndefined(e.y))&&this.parent.emojiPickerSettings.showSearchBox){var b=t.createElement("input",{id:"e-rte-emoji-search",className:"e-rte-emoji-search"});this.popDiv.append(b),new r.TextBox({placeholder:this.i10n.getConstant("emojiPickerTypeToFind"),showClearButton:!0}).appendTo(b),b.focus()}var v=this.popupObj.element.querySelector(".e-clear-icon");t.isNullOrUndefined(v)||t.EventHandler.add(v,"mousedown",this.searchFilter,this);var C=this.parent.createElement("div",{className:"e-rte-emojipicker-toolbar"});this.popDiv.appendChild(C);for(var y=[],N=0;N<this.parent.emojiPickerSettings.iconsSet.length;N++)t.isNullOrUndefined(this.parent.emojiPickerSettings.iconsSet[N].iconCss)?y.push({text:"&#x"+this.parent.emojiPickerSettings.iconsSet[N].code+";",htmlAttributes:(s={},s.title=this.parent.emojiPickerSettings.iconsSet[N].name,s)}):y.push({prefixIcon:this.parent.emojiPickerSettings.iconsSet[N].iconCss,htmlAttributes:(i={},i.title=this.parent.emojiPickerSettings.iconsSet[N].name,i)});new n.Toolbar({items:y,clicked:this.emojiToolbarClick.bind(this)}).appendTo(C);var S=this.parent.createElement("div",{className:"e-rte-emojipicker-btn"});this.popDiv.appendChild(S);var E,T=window.getComputedStyle(this.popDiv);if((!t.isNullOrUndefined(e.args)||t.isNullOrUndefined(e.x)&&t.isNullOrUndefined(e.y))&&this.parent.emojiPickerSettings.showSearchBox){var O=this.parent.element.querySelector(".e-rte-emoji-search").parentElement,w=window.getComputedStyle(O);E=this.popDiv.getBoundingClientRect().height-C.getBoundingClientRect().height-O.getBoundingClientRect().height-parseFloat(w.marginTop)-parseFloat(w.marginBottom)-2*parseFloat(T.borderWidth)+"px",S.style.setProperty("height",E,"important")}else E=this.popDiv.getBoundingClientRect().height-C.getBoundingClientRect().height-2*parseFloat(T.borderWidth)+"px",S.style.setProperty("height",E,"important");for(N=0;N<c.length;N++){var k=this.parent.createElement("div",{className:"e-rte-emojipicker-group"});S.appendChild(k);var L=this.parent.createElement("div",{className:"e-rte-emojipicker-name"});L.innerText=this.parent.emojiPickerSettings.iconsSet[N].name,L.setAttribute("aria-label",this.parent.emojiPickerSettings.iconsSet[N].name),k.appendChild(L);var x=this.parent.createElement("div",{className:"e-rte-emojipickerbtn-group"});k.appendChild(x);for(var D=0;D<c[N].icons.length;D++){var M=this.parent.createElement("button",{className:"e-btn e-control"});M.innerHTML=this.buttoncode(this.parent.emojiPickerSettings.iconsSet[N].icons[D].code),M.setAttribute("aria-label",this.parent.emojiPickerSettings.iconsSet[N].icons[D].desc),M.setAttribute("title",this.parent.emojiPickerSettings.iconsSet[N].icons[D].desc),x.appendChild(M),M.innerHTML.length>2&&(M.style.fontSize="17px")}}t.EventHandler.add(S,"scroll",this.scrollEvent,this),t.EventHandler.add(S,"click",this.emojiBtnClick,this);var R=this.parent.element.querySelectorAll(".e-rte-emojipicker-btn button");t.isNullOrUndefined(this.parent.element.querySelector(".e-rte-emoji-search"))&&!t.isNullOrUndefined(e.args)&&(R[0].focus(),t.addClass([R[0]],"e-focus"));var B,A=this.parent.element.querySelector(".e-rte-emojipicker-btn"),I=this.parent.element.querySelectorAll(".e-rte-emojipicker-toolbar button");t.isNullOrUndefined(A)||(B=Math.round(A.scrollTop)),B<I[0].offsetHeight&&t.addClass([I[0]],"e-selected"),this.popupObj&&t.addClass([this.divElement],"e-active")},e.prototype.buttoncode=function(e){return e.split("-").map(function(e){return String.fromCodePoint(parseInt(e,16))}).join("")},e.prototype.docClick=function(e){var n=e.args.target;n&&n.classList&&this.popupObj&&!t.closest(n,"[id='"+this.popupObj.element.id+"']")&&!n.classList.contains("e-emoji")&&!n.classList.contains("e-toolbar-item")&&this.popupObj&&(t.removeClass([this.divElement],"e-active"),this.popupObj.hide())},e.prototype.scrollEvent=function(){var e,n=this.parent.element.querySelector(".e-rte-emojipicker-btn"),i=this.parent.element.querySelectorAll(".e-rte-emojipicker-group"),o=this.parent.element.querySelectorAll(".e-rte-emojipicker-toolbar button");t.isNullOrUndefined(n)||(e=Math.round(n.scrollTop));for(var r=0,s=0;s<o.length;s++)e<o[0].offsetHeight&&(t.isNullOrUndefined(o[s+1])||t.removeClass([o[s+1]],"e-selected"),t.addClass([o[0]],"e-selected"));for(var a=0;a<i.length;a++)if(r+=Math.round(i[a].offsetHeight),e>=r){for(var l=0;l<o.length;l++)o[l].classList.contains("e-selected")&&t.removeClass([o[l]],"e-selected");t.isNullOrUndefined(o[a+1])||t.addClass([o[a+1]],"e-selected")}},e.prototype.contentscroll=function(){if(t.isNullOrUndefined(this.clickEvent)&&this.popupObj)return t.removeClass([this.divElement],"e-active"),void this.popupObj.hide()},e.prototype.emojiToolbarClick=function(e){for(var n={text:e.item.htmlAttributes.title}.text,i=this.parent.element.querySelectorAll(".e-rte-emojipicker-group"),o=this.parent.element.querySelectorAll(".e-rte-emojipicker-btn button"),r=this.parent.element.querySelectorAll(".e-rte-emojipicker-toolbar button"),s=0;s<r.length;s++)r[s].classList.contains("e-selected")&&t.removeClass([r[s]],"e-selected");for(s=0;s<o.length;s++)o[s].classList.contains("e-focus")&&t.removeClass([o[s]],"e-focus");var a=this.parent.element.querySelector(".e-rte-emojipicker-btn"),l=0;i.forEach(function(e){var i=e.childNodes[0],o=e.childNodes[1].childNodes[0],r=i.getAttribute("aria-label");n===r?i&&(a.scrollTop=l+10,t.addClass([o],"e-focus"),o.focus()):(l+=e.scrollHeight,t.removeClass([o],"e-focus"))})},e.prototype.onKeyDown=function(e){var n=this.parent.element.querySelectorAll(".e-rte-emojipicker-btn button"),i=this.parent.element.querySelectorAll(".e-rte-emojipickerbtn-group"),o=this.parent.element.querySelector(".e-rte-emojisearch-btn button");27===e.keyCode&&this.popupObj&&(t.removeClass([this.divElement],"e-active"),this.popupObj.hide()),13===e.keyCode&&document.activeElement.classList.contains("e-btn")&&(this.emojiBtnClick(e),e.preventDefault());var r=e.srcElement;if(!t.isNullOrUndefined(r)&&r.classList.contains("e-rte-emoji-search")&&40===e.keyCode)for(s=0;s<n.length;s++)n[s].classList.contains("e-focus")&&t.removeClass([n[s]],"e-focus");if(t.isNullOrUndefined(o))for(var s=0;s<n.length;s++){var a=s;if(n[s].classList.contains("e-focus"))if(40===e.keyCode){if(n.length-4>s){for(var l=0,d=0;d<i.length;d++)for(f=0;f<i[d].childNodes.length;f++)if((b=i[d].childNodes[f]).classList.contains("e-focus")&&1!==l){var c=f,p=i[d].lastChild,h=Math.floor(f%6),u=i[d].childNodes.length-1,m=Math.floor(u%6);if(-1!==c){var g=c+6;if(t.isNullOrUndefined(i[d].childNodes[g])){if(t.isNullOrUndefined(i[d].childNodes[g])&&!p.classList.contains("e-focus")&&m<h){S=n[s];t.removeClass([S],"e-focus");y=i[d].lastChild;t.addClass([y],"e-focus"),y.focus(),l=1;break}S=n[s];t.removeClass([S],"e-focus");y=i[d+1].childNodes[h];t.addClass([y],"e-focus"),y.focus(),l=1;break}S=n[s];t.removeClass([S],"e-focus");y=n[a+=6];t.addClass([y],"e-focus"),y.focus();break}}break}}else{if(38===e.keyCode){if(s>=6)for(var l=0,d=0;d<i.length;d++)for(var f=0;f<i[d].childNodes.length;f++){var b=i[d].childNodes[f];if(b.classList.contains("e-focus")&&1!==l){var c=f,v=t.isNullOrUndefined(i[d-1])?null:i[d-1].childNodes.length%6||6;if(-1!==c){var C=c-6;if(t.isNullOrUndefined(i[d].childNodes[C])){if(t.isNullOrUndefined(i[d-1].childNodes[i[d-1].childNodes.length-(v-f)])){S=n[s];t.removeClass([S],"e-focus");y=i[d-1].lastChild;t.addClass([y],"e-focus"),y.focus(),l=1;break}S=n[s];t.removeClass([S],"e-focus");y=i[d-1].childNodes[i[d-1].childNodes.length-(v-f)];t.addClass([y],"e-focus"),y.focus(),l=1;break}S=n[s];t.removeClass([S],"e-focus");y=n[a-=6];t.addClass([y],"e-focus"),y.focus();break}}}else{S=n[s];t.removeClass([S],"e-focus");var y=n[a-=1],N=this.popupObj.element.querySelector(".e-rte-emoji-search");if(t.isNullOrUndefined(y)&&!t.isNullOrUndefined(N)){N.focus();break}t.addClass([y],"e-focus"),y.focus()}break}if(39===e.keyCode){if(n.length!==s+1){S=n[s];t.removeClass([S],"e-focus");y=n[a+=1];t.addClass([y],"e-focus"),n[a].focus()}break}if(37===e.keyCode){if(s>0){S=n[s];t.removeClass([S],"e-focus");y=n[a-=1];t.addClass([y],"e-focus"),n[a].focus()}break}}}else this.filterKeyHandler(e);if(40===e.keyCode){var S=this.parent.element.querySelector(".e-focus");if(t.isNullOrUndefined(S)){y=n[0];t.addClass([y],"e-focus"),n[0].focus()}}},e.prototype.filterKeyHandler=function(e){var n=this.parent.element.querySelectorAll(".e-rte-emojisearch-btn button"),i=this.parent.element.querySelector(".e-focus");if(t.isNullOrUndefined(i)&&40===e.keyCode){l=n[0];t.addClass([l],"e-focus"),n[0].focus()}else for(var o=0;o<n.length;o++){var r=o;if(n[o].classList.contains("e-focus"))if(38===e.keyCode){if(o>=6){var s=n[o];t.removeClass([s],"e-focus");l=n[r-=6];t.addClass([l],"e-focus"),l.focus();break}var a=n[o];t.removeClass([a],"e-focus");var l=n[r-=1],d=this.popupObj.element.querySelector(".e-rte-emoji-search");if(t.isNullOrUndefined(l)&&!t.isNullOrUndefined(d)){d.focus();break}t.addClass([l],"e-focus"),l.focus()}else if(40===e.keyCode){if(n.length-6>o){var c=n[o];t.removeClass([c],"e-focus");l=n[r+=6];t.addClass([l],"e-focus"),l.focus();break}}else{if(39===e.keyCode){if(n.length!==o+1){var p=n[o];t.removeClass([p],"e-focus");l=n[r+=1];t.addClass([l],"e-focus"),n[r].focus()}break}if(37===e.keyCode&&o>0){var h=n[o];t.removeClass([h],"e-focus");l=n[r-=1];t.addClass([l],"e-focus"),n[r].focus();break}}}},e.prototype.searchFilter=function(e,n){var i=this.parent.element.querySelector(".e-rte-emoji-search"),o=this.parent.element.querySelector(".e-content");if(document.activeElement===i||document.activeElement===o){var r=void 0;":"===n||t.isNullOrUndefined(n)?t.isNullOrUndefined(n)||(r=n):r=n.replace(/^:/,"");var s=t.isNullOrUndefined(i)?r:i.value,a=this.parent.element.querySelectorAll(".e-rte-emojipicker-btn button"),l=this.parent.element.querySelector(".e-rte-emojipicker-btn"),d=this.parent.element.querySelectorAll(".e-rte-emojipicker-group"),c=this.parent.element.querySelector(".e-rte-emojipicker-toolbar"),p=this.parent.element.querySelector(".e-rte-emojisearch-btn"),h=this.popDiv.childNodes[0],u=window.getComputedStyle(h),m="SPAN"===h.nodeName?h.getBoundingClientRect().height+parseFloat(u.marginTop)+parseFloat(u.marginBottom):0,g=window.getComputedStyle(this.popDiv),f=t.isNullOrUndefined(p)?a:Array.from(a).filter(function(e){return!p.contains(e)});""===s||":"===n?(c.style.display="",l.style.height=this.popDiv.getBoundingClientRect().height-c.getBoundingClientRect().height-m-2*parseFloat(g.borderWidth)+"px",d.forEach(function(e){e.style.display=""})):(d.forEach(function(e){e.style.display="none"}),c.style.display="none",l.style.height=this.popDiv.getBoundingClientRect().height-m-2*parseFloat(g.borderWidth)+"px");var b=this.parent.createElement("div",{className:"e-rte-emojisearch-btn"}),v=this.parent.element.querySelector(".e-rte-emojisearch-btn");v&&v.remove();for(var C=this.parent.createElement("div",{className:"e-rte-emojiSearch-noEmoji"}),y=!0,N=0;N<f.length;N++)if(!t.isNullOrUndefined(f[N].getAttribute("title")))for(var S=f[N].getAttribute("title").toLowerCase().split(" "),E=0;E<S.length;E++)if(S[E].startsWith(s.toLowerCase())&&""!==s){var T=f[N].cloneNode(!0);b.appendChild(T),y=!1;break}y&&!this.parent.element.querySelector(".e-rte-emojiSearch-noEmoji")&&""!==s&&":"!==n?(C.innerHTML='<span style="color: rgba(0, 0, 0, 0.75); font-weight: 500; font-size: 16px;">'+this.i10n.getConstant("emojiPickerNoResultFound")+' 😥 </span><br><span style="color: rgba(0, 0, 0, 0.75);"> '+this.i10n.getConstant("emojiPickerTrySomethingElse")+" ? </span>",C.style.margin="55px",l.appendChild(C)):(!y&&this.parent.element.querySelector(".e-rte-emojiSearch-noEmoji")||""===s&&":"===n||""===s&&this.parent.element.querySelector(".e-rte-emojiSearch-noEmoji"))&&l.removeChild(this.parent.element.querySelector(".e-rte-emojiSearch-noEmoji")),l.appendChild(b)}},e.prototype.emojiBtnClick=function(e){for(var n=new MouseEvent("mouseleave",{bubbles:!0,cancelable:!0}),i=this.parent.element.querySelectorAll(".e-rte-emojipicker-popup [data-tooltip-id]"),o=0;o<i.length;o++)i[o].dispatchEvent(n);var r=e.target;if("BUTTON"===r.tagName){r.focus();var s=this.save.startOffset,a=this.save.range.startContainer.textContent.substring(s,s+1);t.isNullOrUndefined(this.clickEvent)&&":"===a||this.save.restore(),this.popupObj&&(t.removeClass([this.divElement],"e-active"),this.popupObj.hide());var l=e;this.parent.formatter.process(this.parent,{item:{command:"EmojiPicker",subCommand:"EmojiPicker",value:r.innerHTML}},e,l)}},e.prototype.onkeyPress=function(e){var n=e.args,i=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().contentWindow.getSelection():this.parent.contentModule.getDocument().getSelection();if(!(i.rangeCount<=0)){var o=i.getRangeAt(0).startOffset,r=i.focusNode.textContent.substring(o-1,o),s=/\s/.test(r),a=":"===i.focusNode.textContent.substring(o-1,o),l=":"===i.focusNode.textContent.charAt(o-1);if(186===n.keyCode&&n.shiftKey&&(s||0===i.focusOffset)){var d=this.getCoordinates();this.parent.showEmojiPicker(d.left,d.top)}if(8===n.keyCode&&l&&this.popupObj&&(t.removeClass([this.divElement],"e-active"),this.popupObj.hide()),32===n.keyCode&&a&&this.popupObj){t.removeClass([this.divElement],"e-active");var c=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().ownerDocument:this.parent.contentModule.getDocument();this.parent.showTooltip&&!t.isNullOrUndefined(c.querySelector(".e-tooltip-wrap"))&&this.parent.notify("destroyTooltip",{args:event}),this.popupObj.hide()}!this.popupObj||37!==n.keyCode&&38!==n.keyCode&&39!==n.keyCode&&27!==n.keyCode&&40!==n.keyCode||(this.onKeyDown(n),n.preventDefault())}},e.prototype.onkeyUp=function(e){var n=e.args,i=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().contentWindow.getSelection():this.parent.contentModule.getDocument().getSelection();if(!(i.rangeCount<=0)){for(var o,r=i.getRangeAt(0),s=r.startOffset,a=0,l=s-1;l>=s-15;l--){var d=i.focusNode.textContent.substring(l-1,l);/:$/.test(d)&&!t.isNullOrUndefined(this.popDiv)&&0===a&&(o=r.startContainer.textContent.substring(l-1,s),this.searchFilter(n,o),a=1)}var c=i.focusNode.textContent.substring(s-1,s);":"!==c||t.isNullOrUndefined(this.popupObj)||(o=c,this.searchFilter(n,o))}},e.prototype.getCoordinates=function(){var e,n,i=(this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().contentWindow.getSelection():window.getSelection()).getRangeAt(0);"P"!==i.startContainer.nodeName&&"DIV"!==i.startContainer.nodeName||"#text"!==i.startContainer.childNodes[0].nodeName&&(n=i.startContainer.childNodes[0]);var o=t.isNullOrUndefined(n)?i.getBoundingClientRect():n.getBoundingClientRect(),r=this.parent.element.querySelector(".e-rte-content"),s=this.parent.element,a=s.offsetHeight-r.offsetHeight,l=o.top-this.parent.inputElement.getBoundingClientRect().top,d=o.left-this.parent.inputElement.getBoundingClientRect().left,c=window.innerHeight,p=l,h=d+o.width;return s.getBoundingClientRect().top<0&&(p=p+r.getBoundingClientRect().top-a),o.top<330?p=p:o.top+330>c&&(p-=350),this.parent.inputElement&&(e={top:p+60,left:h+8}),e},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("emojiPicker",this.toolbarClick),this.parent.off("docClick",this.docClick),this.parent.off(K,this.onkeyPress),this.parent.off(W,this.onkeyUp),this.parent.off("contentscroll",this.contentscroll),this.parent.off($,this.contentscroll))},e.prototype.getModuleName=function(){return"emojiPicker"},e}(),Yn=function(){function n(e,t){this.parent=e,this.locator=t,this.renderer=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.render=function(){this.parent;this.contentRenderer=this.renderer.getRenderer(e.RenderType.Content),this.contentRenderer.renderPanel()},n.prototype.refresh=function(e){void 0===e&&(e={requestType:"refresh"}),this.parent.notify(e.requestType+"-begin",e)},n.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(Q,this.refresh,this),this.parent.on(W,this.keyUp,this),this.parent.on(ne,this.moduleDestroy,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(Q,this.refresh),this.parent.off(W,this.keyUp),this.parent.off(ne,this.moduleDestroy))},n.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||"DIV"===t[0].tagName)&&""===t[0].textContent)){var n=this.parent.contentModule.getEditPanel();"DIV"===this.parent.enterKey?n.innerHTML="<div><br/></div>":"BR"===this.parent.enterKey?n.innerHTML="<br/>":n.innerHTML="<p><br/></p>",this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),n.childNodes[0],0)}}},n}(),Jn=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("showLinkDialog",this.showDialog,this),this.parent.on("closeLinkDialog",this.closeDialog,this),this.parent.on(K,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(ie,this.setCssClass,this),this.parent.on(V,this.destroy,this),this.parent.on(ne,this.moduleDestroy,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("showLinkDialog",this.showDialog),this.parent.off("closeLinkDialog",this.closeDialog),this.parent.off(K,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(ie,this.setCssClass),this.parent.off(V,this.destroy),this.parent.off(ne,this.moduleDestroy))},n.prototype.onIframeMouseDown=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){this.updateCss(this.checkBoxObj,e),this.updateCss(this.dialogObj,e)},n.prototype.showLinkQuickToolbar=function(e){if(!t.isNullOrUndefined(e.args)&&"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,"link")}},n.prototype.hideLinkQuickToolbar=function(){this.quickToolObj&&this.quickToolObj.linkQTBar&&document.body.contains(this.quickToolObj.linkQTBar.element)&&this.quickToolObj.linkQTBar.hidePopup()},n.prototype.editAreaClickHandler=function(n){if(this.parent.readonly)return void this.hideLinkQuickToolbar();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.linkQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;r=this.getAnchorNode(r),this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var s=this.quickToolObj.linkQTBar.element.classList.contains("e-rte-pop");if("A"===r.nodeName&&r.childNodes.length>0&&"IMG"!==r.childNodes[0].nodeName&&"IMG"!==n.args.target.nodeName&&!t.isNullOrUndefined(t.closest(this.parent.getRange().startContainer.parentElement,"A"))&&!t.isNullOrUndefined(t.closest(this.parent.getRange().endContainer.parentElement,"A"))){if(s)return;if(!1===n.args.ctrlKey)this.showLinkQuickToolbar({args:i,isNotify:!1,type:"Links",elements:[i.target]});else{var a=this.parent.formatter.editorManager.nodeSelection,l=a.getRange(this.parent.contentModule.getDocument()),d={args:{item:{subCommand:"OpenLink",command:"Links",name:""},originalEvent:n.args},selectNode:a.getNodeCollection(l),selectParent:a.getParentNodeCollection(l),selection:a.save(l,this.parent.contentModule.getDocument())};this.parent.notify("openLink",d)}}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":this.openDialog(!0,e),n.preventDefault()}},n.prototype.openDialog=function(e,t){if(e||this.parent.contentModule.getEditPanel().focus(),"HTML"===this.parent.editorMode){var 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={args:t?t.args:{item:{command:"Links",subCommand:"CreateLink"},originalEvent:void 0,name:e?null:"showDialog"},selectNode:o,selection:i,selectParent:r};this.linkDialog(s)}else{var a=this.parent.contentModule.getEditPanel();this.parent.formatter.editorManager.markdownSelection.save(a.selectionStart,a.selectionEnd),this.linkDialog({args:{item:{command:"Links",subCommand:"Link"},originalEvent:t&&t.args},member:"link",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertLink"})}},n.prototype.showDialog=function(){this.openDialog(!1),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.closeDialog=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},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"+this.parent.getCssClass(!0),id:this.rteID+"_rtelink"});this.parent.element.appendChild(p);var h=this.parent.createElement("div",{className:"e-rte-linkcontent"+this.parent.getCssClass(!0),id:this.rteID+"_linkContent"}),u="HTML"===this.parent.editorMode?"<label>"+a+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" spellcheck="false" placeholder = "'+c+'"aria-label="'+this.i10n.getConstant("linkTitle")+'" class="e-input e-rte-linkTitle'+this.parent.getCssClass(!0)+'"></div><div class="e-rte-label'+this.parent.getCssClass(!0)+'"></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="checkbox" class="e-rte-linkTarget'+this.parent.getCssClass(!0)+'" data-role ="none"></div>':"",m=T('<div class="e-rte-label'+this.parent.getCssClass(!0)+'"><label>'+o+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" spellcheck="false" placeholder="'+l+'"aria-label="'+this.i10n.getConstant("linkWebUrl")+'" class="e-input e-rte-linkurl'+this.parent.getCssClass(!0)+'"/></div><div class="e-rte-label'+this.parent.getCssClass(!0)+'"><label>'+r+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"> <input type="text" data-role ="none" spellcheck="false" class="e-input e-rte-linkText'+this.parent.getCssClass(!0)+'"aria-label="'+this.i10n.getConstant("linkText")+'" placeholder="'+d+'"></div><div class="e-rte-label'+this.parent.getCssClass(!0)+'">'+u);h.appendChild(m);var g=h.querySelector(".e-rte-linkTarget"),f=h.querySelector(".e-rte-linkurl"),b=h.querySelector(".e-rte-linkText"),v=h.querySelector(".e-rte-linkTitle"),C=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:C,checked:!0,enableRtl:this.parent.enableRtl,cssClass:this.parent.getCssClass()}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(g);var y="HTML"===this.parent.editorMode?e.selection.getRange(this.parent.contentModule.getDocument()).toString():e.text,N=this.i10n.getConstant("dialogInsert"),S=this.i10n.getConstant("dialogCancel"),E=e.selection,O={selfLink:this,selection:e.selection,selectParent:e.selectParent,args:e.args},w={header:this.i10n.getConstant("linkHeader"),content:h,cssClass:"e-rte-elements"+this.parent.getCssClass(!0),enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"310px",isModal:t.Browser.isDevice,buttons:[{click:this.insertlink.bind(O),buttonModel:{content:N,cssClass:"e-flat e-insertLink"+this.parent.getCssClass(!0),isPrimary:!0}},{click:this.cancelDialog.bind(O),buttonModel:{cssClass:"e-flat"+this.parent.getCssClass(!0),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=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)||(f.value=n.url,b.value=n.text,v.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)&&(b.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(),this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.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,a=this.selfLink.checkBoxObj.checked?this.selfLink.i10n.getConstant("linkAriaLabel"):null;if("Markdown"===this.selfLink.parent.editorMode&&""===o&&(o="http://"),""===o)return void this.selfLink.checkUrl(!0);this.selfLink.isUrl(o)?this.selfLink.checkUrl(!1):(r="Markdown"===this.selfLink.parent.editorMode?""!==r?r:"":""===r?o:r,o=this.selfLink.parent.enableAutoUrl?o:o.indexOf("http")>-1?o:"http://"+o);var l=this.selfLink;if("HTML"===l.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"[id='"+l.parent.contentModule.getPanel().id+"']"))){l.parent.contentModule.getEditPanel().focus(),t.Browser.isIE&&l.parent.iframeSettings.enable&&this.selection.restore();var d=l.parent.formatter.editorManager.nodeSelection.getRange(l.parent.contentModule.getDocument());this.selection=l.parent.formatter.editorManager.nodeSelection.save(d,l.parent.contentModule.getDocument()),this.selectParent=l.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(d)}var c={url:o,text:r,title:n,target:s,ariaLabel:a,selection:this.selection,selectParent:this.selectParent};document.body.contains(l.dialogObj.element)&&this.selfLink.dialogObj.hide({returnValue:!1}),P()&&l.parent.iframeSettings.enable&&t.select("iframe",l.parent.element).contentWindow.focus(),"HTML"===l.parent.editorMode&&this.selection.restore(),0===l.parent.formatter.getUndoRedoStack().length&&l.parent.formatter.saveData();var p;if(t.isNullOrUndefined(this.args)||"KeyK"!==this.args.code)p=this.args;else{var h=this.args;t.extend(this.args,{item:{command:"Links",subCommand:"CreateLink"},originalEvent:h},!0),p={item:{command:"Links",subCommand:"CreateLink"},originalEvent:h}}this.selfLink.parent.formatter.process(this.selfLink.parent,p,!t.isNullOrUndefined(this.args)&&this.args.originalEvent,c),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();var n=this.getAnchorNode(e.selectParent[0]);this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,selectParent:e.selectParent,selection:e.selection,text:n.innerText,subCommand:e.args.item.subCommand}),P()&&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,text:t.innerText,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}),P()?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.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.dialogObj.hide({returnValue:!0}),t.EventHandler.remove(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick),this.parent.isBlur=!0,E(this.parent.element,"focusout"))},n.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.getModuleName=function(){return"link"},n}(),$n=function(){function n(e,t){this.isImgUploaded=!1,this.isAllowedTypes=!0,this.pageX=null,this.pageY=null,this.mouseX=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(K,this.onKeyDown,this),this.parent.on(W,this.onKeyUp,this),this.parent.on("insertImage",this.insertImage,this),this.parent.on("showImageDialog",this.showDialog,this),this.parent.on("closeImageDialog",this.closeDialog,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(_,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on(Z,this.imagePaste,this),this.parent.on(ie,this.setCssClass,this),this.parent.on(V,this.removeEventListener,this),this.parent.on(ne,this.moduleDestroy,this))},n.prototype.removeEventListener=function(){if(!this.parent.isDestroyed){this.parent.off(K,this.onKeyDown),this.parent.off(W,this.onKeyUp),this.parent.off("resize",this.onWindowResize),this.parent.off("insertImage",this.insertImage),this.parent.off("showImageDialog",this.showDialog),this.parent.off("closeImageDialog",this.closeDialog),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(_,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off(Z,this.imagePaste),this.parent.off(ie,this.setCssClass),this.parent.off(V,this.removeEventListener),this.parent.off(ne,this.moduleDestroy);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(te,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),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing)))}},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){this.popupObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?t.addClass([this.popupObj.element],e.cssClass):(t.removeClass([this.popupObj.element],e.oldCssClass),t.addClass([this.popupObj.element],e.cssClass))),this.updateCss(this.checkBoxObj,e),this.updateCss(this.widthNum,e),this.updateCss(this.heightNum,e),this.updateCss(this.uploadObj,e),this.updateCss(this.dialogObj,e)},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=this.parent.formatter.getUndoRedoStack()[n].text;i.appendChild(o.cloneNode(!0));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"));for(var a=i.cloneNode(!0),l=document.createDocumentFragment();a.firstChild;)l.appendChild(a.firstChild);this.parent.formatter.getUndoRedoStack()[n].text=l}}},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={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(te,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={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"+this.parent.getCssClass(!0),id:this.rteID+"_imgResize"}),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topLeft"+this.parent.getCssClass(!0),styles:"cursor: nwse-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topRight"+this.parent.getCssClass(!0),styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botLeft"+this.parent.getCssClass(!0),styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botRight"+this.parent.getCssClass(!0),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.getBoundingClientRect().width,a=e.getBoundingClientRect().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,i=["TD","TH","TABLE","A"],o={top:0,left:0},r=e.ownerDocument,s=(e.offsetParent&&(e.offsetParent.classList.contains("e-img-caption")||i.indexOf(e.offsetParent.tagName)>-1)?t.closest(e,"#"+this.parent.getID()+"_rte-edit-view"):e.offsetParent)||r.documentElement;s&&(s===r.body||s===r.documentElement)&&"static"===s.style.position;)s=s.parentNode;return s&&s!==e&&1===s.nodeType&&(o=s.getBoundingClientRect()),e.offsetParent&&e.offsetParent.classList.contains("e-img-caption")?(n=e.getBoundingClientRect(),{top:n.top-o.top,left:n.left-o.left}):{top:e.offsetTop,left:e.offsetLeft}},n.prototype.setAspectRatio=function(e,n,i,o){if(!t.isNullOrUndefined(e.width)){var r=""!==e.style.width?e.style.width.match(/^\d+(\.\d*)?%$/g)?parseFloat(e.style.width):parseInt(e.style.width,10):e.width,s=""!==e.style.height?parseInt(e.style.height,10):e.height;if(r>s)if(e.style.minWidth=0===this.parent.insertImageSettings.minWidth?"20px":t.formatUnit(this.parent.insertImageSettings.minWidth),this.parent.insertImageSettings.resizeByPercent){if(0!==parseInt(""+e.getBoundingClientRect().width,10)&&0!==parseInt(""+r,10)){d=(l=e.offsetWidth+this.mouseX)/e.offsetWidth*("NaN"===parseFloat(e.style.width).toString()?e.offsetWidth/parseFloat(getComputedStyle(this.parent.element).width)*100:parseFloat(e.style.width));e.style.width=(d>3?d:3)+"%"}else e.style.width=this.pixToPerc(r/s*i,e.previousElementSibling||e.parentElement)+"%";e.style.height=null,e.removeAttribute("height")}else if(""===e.style.width&&""!==e.style.height)e.style.height=i+"px";else if(""!==e.style.width&&""===e.style.height){a=r/s*i+r/s<this.parent.inputElement.getBoundingClientRect().right-32?r/s*i+r/s:this.parent.inputElement.getBoundingClientRect().right-32;e.style.width=a.toString()+"px",e.style.height=i+"px"}else if(""!==e.style.width){a=r/s*i<this.parent.inputElement.getBoundingClientRect().right-32?r/s*i:this.parent.inputElement.getBoundingClientRect().right-32;e.style.width=a+"px",e.style.height=i+"px"}else if(this.parent.iframeSettings.enable)e.setAttribute("width",(e.width+this.mouseX).toString());else{var a=0===e.offsetWidth?e.width+this.mouseX+parseInt(e.style.outlineWidth.split("p")[0],10):e.offsetWidth+this.mouseX;e.setAttribute("width",a.toString())}else if(s>r)if(this.parent.insertImageSettings.resizeByPercent){if(0!==parseInt(""+e.getBoundingClientRect().width,10)&&0!==parseInt(""+r,10)){var l=e.offsetWidth+this.mouseX,d=l/e.offsetWidth*("NaN"===parseFloat(e.style.width).toString()?e.offsetWidth/parseFloat(getComputedStyle(this.parent.element).width)*100:parseFloat(e.style.width));e.style.width=(d>3?d:3)+"%"}else e.style.width=this.pixToPerc(n/s*i,e.previousElementSibling||e.parentElement)+"%";e.style.height=null,e.removeAttribute("height")}else""!==e.style.width?(e.style.width=n+"px",e.style.height=s/r*n+"px"):e.setAttribute("width",this.resizeBtnStat.botRight?(this.getPointX(o.event)-e.getBoundingClientRect().left).toString():n.toString());else this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(n,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):(e.style.width=(n>=15?n:15)+"px",e.style.height=(n>=15?n:15)+"px")}},n.prototype.pixToPerc=function(e,t){return e/parseFloat(getComputedStyle(t).width)*100},n.prototype.imgDupMouseMove=function(e,n,i){var o=this,r={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),r),o.resizeImgDupPos(o.imgEle),o.imgResizePos(o.imgEle,o.imgResizeDiv)}})},n.prototype.resizing=function(e){if(!this.parent)return void this.cancelResizeAction();this.imgEle.offsetWidth>=this.parent.getInsertImgMaxWidth()?this.imgEle.style.maxHeight=this.imgEle.offsetHeight+"px":t.isNullOrUndefined(this.parent.insertImageSettings.maxHeight)&&(this.imgEle.style.maxHeight=""),this.imgEle.style.maxWidth=(null!=t.closest(this.imgEle,"ol,ul")?this.parent.getInsertImgMaxWidth()-parseInt(getComputedStyle(t.closest(this.imgEle,"ol,ul")).paddingLeft,0):this.parent.getInsertImgMaxWidth())+"px";var n=this.getPointX(e),i=this.getPointY(e),o=this.resizeBtnStat.botLeft||this.resizeBtnStat.topLeft?-(n-this.pageX):n-this.pageX,r=this.resizeBtnStat.botLeft||this.resizeBtnStat.topLeft?-(i-this.pageY):i-this.pageY,s=parseInt(this.imgDupPos.width,10)+o,a=parseInt(this.imgDupPos.height,10)+r;this.mouseX=o,this.pageX=n,this.pageY=i,this.resizeBtnStat.botRight?this.imgDupMouseMove(s+"px",a+"px",e):this.resizeBtnStat.botLeft?this.imgDupMouseMove(s+"px",a+"px",e):this.resizeBtnStat.topRight?this.imgDupMouseMove(s+"px",a+"px",e):this.resizeBtnStat.topLeft&&this.imgDupMouseMove(s+"px",a+"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.width&&this.parent.insertImageSettings&&!this.parent.insertImageSettings.resizeByPercent?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(P()&&this.parent.notify(Y,{}),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()),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)&&!t.isNullOrUndefined(r[0])&&"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){t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),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)}if("Markdown"!==this.parent.editorMode)if(3===n.startContainer.nodeType)"Backspace"===s.code?n.startContainer.previousElementSibling&&0===n.startOffset&&n.startContainer.previousElementSibling.classList.contains(ge)&&n.startContainer.previousElementSibling.classList.contains("e-caption-inline")&&t.detach(n.startContainer.previousElementSibling):n.startContainer.nextElementSibling&&n.endContainer.textContent.length===n.endOffset&&n.startContainer.nextElementSibling.classList.contains(ge)&&n.startContainer.nextElementSibling.classList.contains("e-caption-inline")&&t.detach(n.startContainer.nextElementSibling);else if(1===n.startContainer.nodeType)if(n.startContainer.querySelector(".e-img-caption.e-caption-inline"))t.detach(n.startContainer.querySelector(".e-img-caption.e-caption-inline"));else if(n.startContainer.querySelector(".e-img-caption."+me))t.detach(n.startContainer.querySelector(".e-img-caption."+me));else if(n.startContainer.classList.contains("e-img-wrap")&&t.closest(n.startContainer,"."+ge)){var g=n.startContainer.parentElement.parentElement;if(t.detach(t.closest(n.startContainer,"."+ge)),g&&""===g.textContent.trim()){var f=this.parent.createElement("br");f.classList.add("e-rte-image-remove-focus"),g.appendChild(f)}}break;case"insert-image":t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),this.openDialog(!0,s,i,o,r),s.preventDefault()}s.ctrlKey&&"a"===s.key&&this.handleSelectAll()},n.prototype.handleSelectAll=function(){this.cancelResizeAction();var e=this.parent.inputElement.querySelectorAll(".e-img-focus");t.removeClass(e,"e-img-focus")},n.prototype.openDialog=function(e,n,i,o,r){var s,a,l,d;e||t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)?(a=i,l=o,d=r):(s=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),a=this.parent.formatter.editorManager.nodeSelection.save(s,this.parent.contentModule.getDocument()),l=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(s),d=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(s)),"HTML"===this.parent.editorMode?this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:n,name:e?null:"showDialog"},selectNode:l,selection:a,selectParent:d}):this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:n,name:e?null:"showDialog"},member:"image",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertImage"})},n.prototype.showDialog=function(){this.openDialog(!1),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.closeDialog=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},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)||t.isNullOrUndefined(e.args))){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;if(this.parent.quickToolbarModule.imageQTBar)if(e.isNotify)setTimeout(function(){n.parent.formatter.editorManager.nodeSelection.Clear(n.contentModule.getDocument()),n.parent.formatter.editorManager.nodeSelection.setSelectionContents(n.contentModule.getDocument(),o),n.quickToolObj.imageQTBar.showPopup(i.pageX,r,o),n.resizeStart(e.args,o)},400);else{var s=o.getBoundingClientRect();this.quickToolObj.imageQTBar.showPopup(s.left,s.top,o,"Image")}}},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),P()&&this.parent.notify(X,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"+this.parent.getCssClass(!0)}),r=this.i10n.getConstant("linkurl"),a=T('<div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" class="e-input e-img-link'+this.parent.getCssClass(!0)+'" spellcheck="false" placeholder="'+r+'"/></div><div class="e-rte-label"></div><div class="e-rte-field"><input type="checkbox" class="e-rte-linkTarget'+this.parent.getCssClass(!0)+'" data-role ="none"></div>');o.appendChild(a);var l=o.querySelector(".e-rte-linkTarget"),d=o.querySelector(".e-img-link"),c=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:c,checked:!0,enableRtl:this.parent.enableRtl,cssClass:this.parent.getCssClass(),change:function(e){p=e.checked?"_blank":null}}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(l);var p=this.checkBoxObj.checked?"_blank":null,h=this.checkBoxObj.checked?this.i10n.getConstant("ImageLinkAriaLabel"):null,u=this.i10n.getConstant("dialogUpdate"),m={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,selectParent:e.selectParent,link:d,target:p,ariaLabel:h};this.dialogObj.setProperties({height:"inherit",width:"290px",header:this.parent.localeObj.getConstant("imageInsertLinkHeader"),content:o,buttons:[{click:function(e){i.insertlink(m)},buttonModel:{content:u,cssClass:"e-flat e-update-link"+this.parent.getCssClass(!0),isPrimary:!0}}],cssClass:this.dialogObj.cssClass+" e-rte-img-link-dialog"}),t.isNullOrUndefined(this.parent.cssClass)||this.dialogObj.setProperties({cssClass:this.parent.cssClass}),t.isNullOrUndefined(n)||(d.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"+this.parent.getCssClass(!0)}),r=this.i10n.getConstant("alternateHeader"),s=this.i10n.getConstant("dialogUpdate"),a=null===e.selectNode[0].getAttribute("alt")?"":e.selectNode[0].getAttribute("alt"),l=T('<div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" spellcheck="false" class="e-input e-img-alt'+this.parent.getCssClass(!0)+'" placeholder="'+i+'"/></div>');l.querySelector("input").setAttribute("value",a),o.appendChild(l);var d=o.querySelector(".e-img-alt"),c={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,alt:d};this.dialogObj.setProperties({height:"inherit",width:"290px",header:r,content:o,buttons:[{click:function(e){n.insertAlt(c)},buttonModel:{content:s,cssClass:"e-flat e-update-alt"+this.parent.getCssClass(!0),isPrimary:!0}}],cssClass:this.dialogObj.cssClass+" e-rte-img-alt-dialog"}),t.isNullOrUndefined(this.parent.cssClass)||this.dialogObj.setProperties({cssClass:this.parent.cssClass}),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,ariaLabel:i.checkBoxObj.checked?this.i10n.getConstant("ImageLinkAriaLabel"):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,ariaLabel:i.checkBoxObj.checked?this.i10n.getConstant("ImageLinkAriaLabel"):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:ge,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,i="";if(!t.isNullOrUndefined(this.parent.insertImageSettings.removeUrl)&&""!==this.parent.insertImageSettings.removeUrl){i=e.indexOf("http://")>-1||e.indexOf("https://")>-1?e:new URL(e,document.baseURI).href,this.removingImgName=i.replace(/^.*[\\\/]/,"");var o=new XMLHttpRequest;o.addEventListener("readystatechange",function(){4===this.readyState&&200===this.status&&n.triggerPost(this.response)}),o.open("GET",i),o.responseType="blob",o.send()}},n.prototype.triggerPost=function(e){var n=this.parent.insertImageSettings.removeUrl;if(!t.isNullOrUndefined(n)&&""!==n){var i=new File([e],this.removingImgName),o=new t.Ajax(n,"POST",!0,null),r=new FormData;r.append("UploadFiles",i),o.send(r)}},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,"."+ge))){this.captionEle=this.parent.createElement("span",{className:ge+" e-rte-img-caption"+this.parent.getCssClass(!0),attrs:{contenteditable:"false",draggable:"false",style:"width:"+this.parent.insertImageSettings.width}});var o=this.parent.createElement("span",{className:"e-img-wrap"+this.parent.getCssClass(!0)}),r=this.parent.createElement("span",{className:"e-img-inner"+this.parent.getCssClass(!0),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(fe)&&t.addClass([this.captionEle],"e-caption-inline"),n.classList.contains(me)&&t.addClass([this.captionEle],me),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,"."+ge)),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:t.Browser.isDevice?"300px":"inherit",width:"290px",header:i,content:r,buttons:[{click:function(e){n.insertSize(s)},buttonModel:{content:o,cssClass:"e-flat e-update-size"+this.parent.getCssClass(!0),isPrimary:!0}}],cssClass:this.dialogObj.cssClass+" e-rte-img-size-dialog"}),t.isNullOrUndefined(this.parent.cssClass)||this.dialogObj.setProperties({cssClass:this.parent.cssClass}),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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"340px",isModal:t.Browser.isDevice,buttons:[{click:this.insertImageUrl.bind(l),buttonModel:{content:o,cssClass:"e-flat e-insertImage"+this.parent.getCssClass(!0),isPrimary:!0,disabled:"Markdown"!==this.parent.editorMode}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0)});(!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"+this.parent.getCssClass(!0)}),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(),this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.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;if("IMG"===n.nodeName&&(this.imgEle=n),this.parent&&("#document"!==n.nodeName&&(this.parent.currentTarget=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)&&!t.closest(n,"#"+this.parent.getID()+"_toolbar_Image")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_Image"))&&(e.offsetX>e.target.clientWidth||e.offsetY>e.target.clientHeight||(this.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,E(this.parent.element,"focusout"))),this.parent.iframeSettings.enable&&!t.isNullOrUndefined(this.parent.currentTarget)&&"IMG"===this.parent.currentTarget.nodeName||"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")||this.parent.iframeSettings.enable&&"IMG"===this.parent.currentTarget.nodeName||("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=""),"IMG"!==n.tagName))for(var i=this.contentModule.getEditPanel().querySelectorAll("img"),o=0;o<i.length;o++)t.removeClass([i[o]],"e-img-focus"),t.removeClass([i[o]],"e-resize"),i[o].style.maxWidth=""},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 n=this,i=this.parent.createElement("div",{className:"imgUrl"+this.parent.getCssClass(!0)}),o=this.i10n.getConstant("imageUrl");if(this.inputUrl=this.parent.createElement("input",{className:"e-input e-img-url"+this.parent.getCssClass(!0),attrs:{placeholder:o,spellcheck:"false","aria-label":this.i10n.getConstant("imageLinkHeader")}}),this.inputUrl.addEventListener("input",function(){t.isNullOrUndefined(n.inputUrl)||(0===n.inputUrl.value.length?n.dialogObj.getButtons(0).element.disabled=!0:n.dialogObj.getButtons(0).element.removeAttribute("disabled"))}),e.selectNode&&"IMG"===e.selectNode[0].nodeName){var r=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);this.inputUrl.value=e.selectNode[0].src.match(r)?e.selectNode[0].src:""}return i.appendChild(this.inputUrl),i},n.prototype.insertImageUrl=function(e){var n=this.selfImage;n.isImgUploaded=!1;var i=n.inputUrl.value;if("Markdown"===n.parent.editorMode&&""===i&&(i="http://"),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?fe:me,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?fe:me,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=this,i=e.selectNode[0],o=this.i10n.getConstant("imageHeight"),s=this.i10n.getConstant("imageWidth"),a=this.parent.createElement("div",{className:"e-img-sizewrap"+this.parent.getCssClass(!0)}),l=!t.isNullOrUndefined(this.changedWidthValue)||"auto"!==i.style.width.toString()&&""===i.style.width?t.isNullOrUndefined(this.changedWidthValue)?parseInt(i.getClientRects()[0].width.toString(),10).toString():this.changedWidthValue:i.style.width,d=!t.isNullOrUndefined(this.changedHeightValue)||"auto"!==i.style.height.toString()&&""===i.style.height?t.isNullOrUndefined(this.changedHeightValue)?parseInt(i.getClientRects()[0].height.toString(),10).toString():this.changedHeightValue:i.style.height;this.changedWidthValue=null,this.changedHeightValue=null;var c=T('<div class="e-rte-label'+this.parent.getCssClass(!0)+'"><label>'+s+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" id="imgwidth" class="e-img-width'+this.parent.getCssClass(!0)+'"/></div><div class="e-rte-label'+this.parent.getCssClass(!0)+'"><label>'+o+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"> <input type="text" id="imgheight" class="e-img-height'+this.parent.getCssClass(!0)+'"/></div>');return c.getElementById("imgwidth").setAttribute("value",l),c.getElementById("imgheight").setAttribute("value",d),a.appendChild(c),this.widthNum=new r.TextBox({value:t.formatUnit(l),enableRtl:this.parent.enableRtl,cssClass:this.parent.getCssClass(),input:function(e){n.inputWidthValue=t.formatUnit(n.inputValue(e.value))}}),this.widthNum.createElement=this.parent.createElement,this.widthNum.appendTo(a.querySelector("#imgwidth")),this.heightNum=new r.TextBox({value:t.formatUnit(d),enableRtl:this.parent.enableRtl,cssClass:this.parent.getCssClass(),input:function(e){n.inputHeightValue=t.formatUnit(n.inputValue(e.value))}}),this.heightNum.createElement=this.parent.createElement,this.heightNum.appendTo(a.querySelector("#imgheight")),a},n.prototype.inputValue=function(e){return"auto"===e||-1!==e.indexOf("%")||-1!==e.indexOf("px")||e.match(/(\d+)/)?e:"auto"},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;this.changedWidthValue=this.inputWidthValue,this.changedHeightValue=this.inputHeightValue;var i=n.querySelector(".e-img-width").value,o=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"+this.parent.getCssClass(!0)}),h=this.i10n.getConstant("imageDeviceUploadMessage"),u=this.i10n.getConstant("imageUploadMessage"),m=this.parent.createElement("span",{className:"e-droptext"+this.parent.getCssClass(!0)}),g=this.parent.createElement("span",{className:"e-rte-upload-text"+this.parent.getCssClass(!0),innerHTML:t.Browser.isDevice?h:u});m.appendChild(g);var f=this.parent.createElement("button",{className:"e-browsebtn"+this.parent.getCssClass(!0),id:this.rteID+"_insertImage",attrs:{autofocus:"true",type:"button"}});m.appendChild(f),c.appendChild(m);var b=this.i10n.getConstant("browse");this.browseButton=new s.Button({content:b,enableRtl:this.parent.enableRtl}),this.browseButton.isStringTemplate=!0,this.browseButton.createElement=this.parent.createElement,this.browseButton.appendTo(f);var v=t.Browser.isDevice?m:f;t.EventHandler.add(v,"click",this.fileSelect,this);var C=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"},className:this.parent.getCssClass()});c.appendChild(C);var y,N,S;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,cssClass:this.parent.getCssClass(),allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),selected:function(e){a.isImgUploaded=!0,N=e,S=e.filesData,o.parent.trigger("imageSelected",N,function(e){if(!e.cancel&&(o.checkExtension(e.filesData[0]),y=e.filesData[0].name,"HTML"===o.parent.editorMode&&t.isNullOrUndefined(o.parent.insertImageSettings.path))){var r=new FileReader;r.addEventListener("load",function(e){var s="Base64"===o.parent.insertImageSettings.saveFormat?r.result:URL.createObjectURL(B(r.result));a.uploadUrl={url:s,selection:n,altText:y,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"),t.isNullOrUndefined(a.parent.insertImageSettings.saveUrl)&&o.isAllowedTypes&&!t.isNullOrUndefined(o.dialogObj)&&o.dialogObj.getButtons(0).element.removeAttribute("disabled")}),r.readAsDataURL(e.filesData[0].rawFile)}})},beforeUpload:function(e){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:y,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")}"upload"!==e.operation||t.isNullOrUndefined(o.dialogObj)||o.dialogObj.getButtons(0).element.removeAttribute("disabled")})},failure:function(e){o.parent.trigger("imageUploadFailed",e)},removing:function(e){o.parent.trigger("imageRemoving",e,function(e){a.isImgUploaded=!1,o.dialogObj.getButtons(0).element.disabled=!0,a.inputUrl.removeAttribute("disabled"),a.uploadUrl&&(a.uploadUrl.url="")})}}),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.isAllowedTypes=!1):this.isAllowedTypes=!0)},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(G,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(G,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");this.parent.notify("drop",{args:e}),n&&n.classList.add("e-hide");var i=this.parent.inputElement.ownerDocument.querySelector(".e-rte-drag-image");if(e.dataTransfer.files.length>0&&null===i){if(e.dataTransfer.files.length>1)return;for(var o=e.dataTransfer.files,r=o[0].name,s=r.substring(r.lastIndexOf(".")),a=this.parent.insertImageSettings.allowedTypes,l=0;l<a.length;l++)if(s.toLocaleLowerCase()===a[l].toLowerCase())if(this.parent.insertImageSettings.saveUrl)this.onSelect(e);else{p={args:e,text:"",file:o[0]};e.preventDefault(),this.imagePaste(p)}}else{var d=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());if(i&&"IMG"===i.tagName){i.nextElementSibling&&i.nextElementSibling.classList.contains("e-img-inner")?d.insertNode(i.parentElement.parentElement):d.insertNode(i),i.classList.remove("e-rte-drag-image");var c={elements:[i]};i.addEventListener("load",function(){t.parent.trigger("actionComplete",c)}),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());var p=e;this.resizeStart(p,i),this.hideImageQuickToolbar()}}},n.prototype.onSelect=function(e){var n=this,i=this,o=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),r=this.parent.createElement("ul",{className:"e-upload-files"});this.parent.element.appendChild(r);var s={name:"",size:0,status:"",statusCode:"",type:"",rawFile:e.dataTransfer.files[0],validationMessages:{}},a=this.parent.createElement("IMG");a.style.opacity="0.5",a.classList.add(ye),a.classList.add(fe),a.classList.add("e-resize");var l=s.rawFile,d=new FileReader;d.addEventListener("load",function(){var e=URL.createObjectURL(B(d.result));a.src="Blob"===i.parent.insertImageSettings.saveFormat?e:d.result}),l&&d.readAsDataURL(l),o.insertNode(a),this.uploadMethod(e,a);var c={elements:[a]};a.addEventListener("load",function(){n.parent.trigger("actionComplete",c)}),t.detach(r)},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,i.parent.inlineMode.enable||i.parent.toolbarModule.baseToolbar.toolbarObj.disable(!1)}}),this.popupObj.element.style.display="none",t.addClass([this.popupObj.element],"e-popup-open"),t.addClass([this.popupObj.element],"e-rte-upload-popup"),t.isNullOrUndefined(this.parent.cssClass)||t.addClass([this.popupObj.element],this.parent.cssClass);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),this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl,removeUrl:this.parent.insertImageSettings.removeUrl},cssClass:"e-rte-dialog-upload"+this.parent.getCssClass(!0),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(),i.quickToolObj.imageQTBar.hidePopup(),setTimeout(function(){i.uploadObj.destroy()},900)},beforeUpload:function(e){i.parent.trigger("beforeImageUpload",e),i.parent.inlineMode.enable||i.parent.toolbarModule.baseToolbar.toolbarObj.disable(!0)},uploading:function(e){i.parent.isServerRendered||(s=!0,i.parent.trigger("imageUploading",e,function(e){e.cancel?(t.isNullOrUndefined(n)||t.detach(n),t.isNullOrUndefined(i.popupObj.element)||t.detach(i.popupObj.element)):i.parent.inputElement.contentEditable="false"}))},selected:function(e){s&&(e.cancel=!0)},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){if("cancel"!==t.operation){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]),this.popupObj.element.querySelector(".e-rte-dialog-upload .e-file-select-wrap").style.display="none",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?fe:me,url:"Base64"!==n.parent.insertImageSettings.saveFormat&&t.isNullOrUndefined(e.callBack)?URL.createObjectURL(B(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(){t.isNullOrUndefined(this.parent)||(this.prevSelectedImgEle=void 0,this.removeEventListener())},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.getModuleName=function(){return"image"},n}(),Zn=function(){function n(e,t){this.isAudioUploaded=!1,this.isAllowedTypes=!0,this.deletedAudio=[],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(K,this.onKeyDown,this),this.parent.on(W,this.onKeyUp,this),this.parent.on("insertAudio",this.insertingAudio,this),this.parent.on(_,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on("showAudioDialog",this.showDialog,this),this.parent.on("closeAudioDialog",this.closeDialog,this),this.parent.on("audio-toolbar-action",this.onToolbarAction,this),this.parent.on("dropDownSelect",this.alignmentSelect,this),this.parent.on("delete",this.deleteAudio,this),this.parent.on("editAreaClick",this.editAreaClickHandler,this),this.parent.on("insertCompleted",this.showAudioQuickToolbar,this),this.parent.on(V,this.removeEventListener,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(K,this.onKeyDown),this.parent.off(W,this.onKeyUp),this.parent.off("insertAudio",this.insertingAudio),this.parent.off(_,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off("showAudioDialog",this.showDialog),this.parent.off("closeAudioDialog",this.closeDialog),this.parent.off("audio-toolbar-action",this.onToolbarAction),this.parent.off("dropDownSelect",this.alignmentSelect),this.parent.off("delete",this.deleteAudio),this.parent.off("editAreaClick",this.editAreaClickHandler),this.parent.off("insertCompleted",this.showAudioQuickToolbar),this.parent.off(V,this.removeEventListener),t.isNullOrUndefined(this.contentModule)||(t.EventHandler.remove(this.parent.contentModule.getEditPanel(),t.Browser.touchStartEvent,this.touchStart),t.EventHandler.remove(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.audioClick),t.EventHandler.remove(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick)))},n.prototype.afterRender=function(){this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),t.EventHandler.add(this.parent.contentModule.getEditPanel(),t.Browser.touchStartEvent,this.touchStart,this),t.EventHandler.add(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.audioClick,this),t.EventHandler.add(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick,this)},n.prototype.checkAudioBack=function(e){"#text"===e.startContainer.nodeName&&0===e.startOffset&&!t.isNullOrUndefined(e.startContainer.previousSibling)&&this.isAudioElem(e.startContainer.previousSibling)?this.deletedAudio.push(e.startContainer.previousSibling):"#text"!==e.startContainer.nodeName&&!t.isNullOrUndefined(e.startContainer.childNodes[e.startOffset-1])&&this.isAudioElem(e.startContainer.childNodes[e.startOffset-1])&&this.deletedAudio.push(e.startContainer.childNodes[e.startOffset-1])},n.prototype.checkAudioDel=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])&&this.isAudioElem(e.startContainer.childNodes[e.startOffset])&&this.deletedAudio.push(e.startContainer.childNodes[e.startOffset]):this.deletedAudio.push(e.startContainer.nextSibling)},n.prototype.undoStack=function(e){if("undo"===e.subCommand.toLowerCase()||"redo"===e.subCommand.toLowerCase())for(var t=0;t<this.parent.formatter.getUndoRedoStack().length;t++){var n=this.parent.createElement("div"),i=this.parent.formatter.getUndoRedoStack()[t].text;n.appendChild(i.cloneNode(!0))}},n.prototype.touchStart=function(e,t){this.parent.readonly||(this.prevSelectedAudEle=this.audEle)},n.prototype.onToolbarAction=function(e){switch(P()&&this.parent.notify(Y,{}),e.args.item.subCommand){case"AudioReplace":this.parent.notify("insertAudio",e);break;case"AudioRemove":this.parent.notify("delete",e)}},n.prototype.onKeyUp=function(e){if(!t.isNullOrUndefined(this.deletedAudio)&&this.deletedAudio.length>0)for(var n=0;n<this.deletedAudio.length-1;n++){var i={element:this.deletedAudio[n].querySelector("audio"),src:this.deletedAudio[n].querySelector("source").getAttribute("src")};this.parent.trigger("afterMediaDelete",i)}},n.prototype.onKeyDown=function(e){var n,i,o,r,s=e.args;this.deletedAudio=[];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++)this.isAudioElem(d[c])&&this.deletedAudio.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.checkAudioBack(n):46===s.which&&"Delete"===s.code&&p&&this.checkAudioDel(n)}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&"KeyK"!==s.code&&(n=this.parent.formatter.editorManager.nodeSelection.getRange(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)&&this.isAudioElem(r[0])&&r[0].parentElement)){var h=r[0].parentElement.childNodes[0];this.parent.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),h,h,h.textContent.length,h.textContent.length),t.removeClass([r[0]],"e-audio-focus"),this.quickToolObj.audioQTBar.hidePopup()}if(!s.ctrlKey||89!==s.keyCode&&90!==s.keyCode||this.undoStack({subCommand:90===s.keyCode?"undo":"redo"}),(8===s.keyCode||46===s.keyCode)&&o&&this.isAudioElem(o[0])&&o.length<1){t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),s.preventDefault();var u={selectNode:o,selection:i,selectParent:r,args:{item:{command:"Audios",subCommand:"AudioRemove"},originalEvent:s}};this.deleteAudio(u,s.keyCode)}switch(s.action){case"escape":t.isNullOrUndefined(this.dialogObj)||this.dialogObj.close();break;case"backspace":case"delete":for(c=0;c<this.deletedAudio.length;c++){var m=this.deletedAudio[c].src;this.audioRemovePost(m)}"Markdown"!==this.parent.editorMode&&(3===n.startContainer.nodeType?"Backspace"===s.code?n.startContainer.previousElementSibling&&0===n.startOffset&&n.startContainer.previousElementSibling.classList.contains("e-audio-wrap")&&t.detach(n.startContainer.previousElementSibling):n.startContainer.nextElementSibling&&n.endContainer.textContent.length===n.endOffset&&n.startContainer.nextElementSibling.classList.contains("e-audio-wrap")&&t.detach(n.startContainer.nextElementSibling):1===n.startContainer.nodeType&&n.startContainer.classList&&(n.startContainer.classList.contains("e-audio-wrap")||n.startContainer.classList.contains("e-clickelem")||n.startContainer.classList.contains("e-video-clickelem"))&&t.detach(n.startContainer));break;case"insert-audio":t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),this.openDialog(!0,s,i,o,r),s.preventDefault()}s.ctrlKey&&"a"===s.key&&this.handleSelectAll()},n.prototype.handleSelectAll=function(){var e=this.parent.inputElement.querySelectorAll(".e-audio-focus");t.removeClass(e,"e-audio-focus")},n.prototype.openDialog=function(e,n,i,o,r){var s,a,l,d;e||t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)?(a=i,l=o,d=r):(s=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),a=this.parent.formatter.editorManager.nodeSelection.save(s,this.parent.contentModule.getDocument()),l=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(s),d=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(s)),"HTML"===this.parent.editorMode&&this.insertAudio({args:{item:{command:"Audios",subCommand:"Audio"},originalEvent:n,name:e?null:"showDialog"},selectNode:l,selection:a,selectParent:d})},n.prototype.showDialog=function(){this.openDialog(!1)},n.prototype.closeDialog=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.deleteAudio=function(e,n){if(this.isAudioElem(e.selectNode[0])){this.audEle&&(3===e.selectNode[0].nodeType?e.selectNode[0]=this.audEle:this.isAudioElem(e.selectNode[0])&&(e.selectNode[0]=e.selectNode[0].classList.contains("e-audio-wrap")?e.selectNode[0]:e.selectNode[0].parentElement));var i={element:e.selectNode[0].querySelector("audio"),src:e.selectNode[0].querySelector("source").getAttribute("src")};0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),e.selection.restore(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.audioRemovePost(i.src),this.quickToolObj&&document.body.contains(this.quickToolObj.audioQTBar.element)&&this.quickToolObj.audioQTBar.hidePopup(),t.isNullOrUndefined(n)&&this.parent.trigger("afterMediaDelete",i)}},n.prototype.audioRemovePost=function(e){var n=this,i="";if(!t.isNullOrUndefined(this.parent.insertAudioSettings.removeUrl)&&""!==this.parent.insertAudioSettings.removeUrl){i=e.indexOf("http://")>-1||e.indexOf("https://")>-1?e:new URL(e,document.baseURI).href,this.removingAudioName=i.replace(/^.*[\\\/]/,"");var o=new XMLHttpRequest;o.addEventListener("readystatechange",function(){4===this.readyState&&200===this.status&&n.triggerPost(this.response)}),o.open("GET",i),o.responseType="blob",o.send()}},n.prototype.triggerPost=function(e){var n=this.parent.insertAudioSettings.removeUrl;if(!t.isNullOrUndefined(n)&&""!==n){var i=new File([e],this.removingAudioName),o=new t.Ajax(n,"POST",!0,null),r=new FormData;r.append("UploadFiles",i),o.send(r)}},n.prototype.audioClick=function(e){t.Browser.isDevice&&(this.isAudioElem(e.target)?(this.contentModule.getEditPanel().setAttribute("contenteditable","false"),e.target.focus()):this.parent.readonly||this.contentModule.getEditPanel().setAttribute("contenteditable","true")),this.isAudioElem(e.target)&&(this.audEle=e.target.querySelector("audio"),e.preventDefault())},n.prototype.onDocumentClick=function(e){var n=e.target;this.isAudioElem(n)&&(this.audEle=n.querySelector("audio")),!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_Audio")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_Audio"))&&(e.offsetX>e.target.clientWidth||e.offsetY>e.target.clientHeight||(this.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,E(this.parent.element,"focusout"))),this.contentModule.getEditPanel().querySelector(".e-audio-focus")&&(this.isAudioElem(e.target)||t.isNullOrUndefined(this.audEle)?t.isNullOrUndefined(this.prevSelectedAudEle)||this.prevSelectedAudEle===n||(this.prevSelectedAudEle.style.outline=""):this.audEle.style.outline="")},n.prototype.alignmentSelect=function(e){var n=e.item;if(document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))&&"Audios"===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=[this.audEle]};switch(0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),n.subCommand){case"Inline":this.inline(r);break;case"Break":this.break(r)}this.quickToolObj&&document.body.contains(this.quickToolObj.audioQTBar.element)&&(this.quickToolObj.audioQTBar.hidePopup(),t.removeClass([o[0]],"e-audio-focus"))}},n.prototype.break=function(e){if("AUDIO"===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("AUDIO"===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.editAreaClickHandler=function(n){if(this.parent.readonly)return void this.hideAudioQuickToolbar();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)&&this.isAudioElem(i.target)&&(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.audioQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var s=this.quickToolObj.audioQTBar.element.classList.contains("e-rte-pop");if(this.isAudioElem(r)&&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),P()&&this.parent.notify(X,n),r.querySelector("audio").style.outline="2px solid #4a90e2",this.showAudioQuickToolbar({args:i,type:"Audios",elements:[i.target]})}else this.hideAudioQuickToolbar()}},n.prototype.isAudioElem=function(e){return!(!e||3===e.nodeType||"BR"===e.nodeName||!e.classList||!e.classList.contains("e-audio-wrap")&&!e.classList.contains("e-clickelem"))},n.prototype.showAudioQuickToolbar=function(e){var n=this;if(!("Audios"!==e.type||t.isNullOrUndefined(this.parent.quickToolbarModule)||t.isNullOrUndefined(this.parent.quickToolbarModule.audioQTBar)||t.isNullOrUndefined(e.args))){this.quickToolObj=this.parent.quickToolbarModule;var i=e.args,o=e.elements;[].forEach.call(e.elements,function(e,t){0===t&&(o=e)}),this.isAudioElem(o)&&(t.addClass([o.querySelector("audio")],["e-audio-focus"]),o.querySelector("audio").style.outline="2px solid #4a90e2"),this.parent.quickToolbarModule.audioQTBar&&(e.isNotify?setTimeout(function(){n.parent.formatter.editorManager.nodeSelection.Clear(n.contentModule.getDocument()),n.parent.formatter.editorManager.nodeSelection.setSelectionContents(n.contentModule.getDocument(),o),n.quickToolObj.audioQTBar.showPopup(i.pageX-50,o.getBoundingClientRect().top+34,o)},400):this.quickToolObj.audioQTBar.showPopup(i.pageX-50,o.getBoundingClientRect().top+34,o))}},n.prototype.hideAudioQuickToolbar=function(){t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-audio-focus"))||(t.removeClass([this.contentModule.getEditPanel().querySelector(".e-audio-focus")],"e-audio-focus"),t.isNullOrUndefined(this.audEle)||(this.audEle.style.outline=""),this.quickToolObj&&this.quickToolObj.audioQTBar&&document.body.contains(this.quickToolObj.audioQTBar.element)&&this.quickToolObj.audioQTBar.hidePopup())},n.prototype.insertingAudio=function(e){if(this.insertAudio(e),!t.isNullOrUndefined(this.dialogObj)){this.dialogObj.element.style.maxHeight="inherit";var n=this.dialogObj.element.querySelector(".e-audio-content");t.isNullOrUndefined(this.parent.insertAudioSettings.path)&&"HTML"!==this.parent.editorMode?n.querySelector(".e-audio-url").focus():document.getElementById(this.rteID+"_insertAudio").focus()}},n.prototype.insertAudio=function(e){var n=this;if(this.dialogObj)return void this.dialogObj.hide({returnValue:!0});var i=this.parent.createElement("div",{className:"e-rte-audio-dialog",id:this.rteID+"_audio"});this.parent.element.appendChild(i);var o=this.i10n.getConstant("dialogInsert"),r=this.i10n.getConstant("dialogCancel"),s=this.i10n.getConstant("audioHeader"),a=e.selection,l={selfAudio: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",isModal:t.Browser.isDevice,buttons:[{click:this.insertAudioUrl.bind(l),buttonModel:{content:o,cssClass:"e-flat e-insertAudio",isPrimary:!0,disabled:!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.isAudioUploaded&&n.uploadObj.removing(),n.parent.isBlur=!1,e&&e.event.returnValue&&"HTML"===n.parent.editorMode&&a.restore(),n.dialogObj.destroy(),t.detach(n.dialogObj.element),n.dialogRenderObj.close(e),n.dialogObj=null}},c=this.parent.createElement("div",{className:"e-audio-content"});t.isNullOrUndefined(this.parent.insertAudioSettings.path)&&"HTML"!==this.parent.editorMode||c.appendChild(this.audioUpload(e));var p=this.parent.createElement("div",{className:"e-audioheader"}),h=this.i10n.getConstant("audioLinkHeader");"HTML"===this.parent.editorMode&&(p.innerHTML=h),c.appendChild(p),c.appendChild(this.audioUrlPopup(e)),e.selectNode&&1===e.selectNode[0].nodeType&&this.isAudioElem(e.selectNode[0])?(d.header=this.parent.localeObj.getConstant("editAudioHeader"),d.content=c):d.content=c,this.dialogObj=this.dialogRenderObj.render(d),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(i),e.selectNode&&1===e.selectNode[0].nodeType&&this.isAudioElem(e.selectNode[0])&&"insertAudio"===e.name&&(this.dialogObj.element.querySelector(".e-insertAudio").textContent=this.parent.localeObj.getConstant("dialogUpdate")),i.style.maxHeight="inherit",this.quickToolObj&&(this.quickToolObj.audioQTBar&&document.body.contains(this.quickToolObj.audioQTBar.element)&&this.quickToolObj.audioQTBar.hidePopup(),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup(),this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.hidePopup())},n.prototype.audioUrlPopup=function(e){var n=this,i=this.parent.createElement("div",{className:"audioUrl"}),o=this.i10n.getConstant("audioUrl");if(this.inputUrl=this.parent.createElement("input",{className:"e-input e-audio-url",attrs:{placeholder:o,spellcheck:"false","aria-label":this.i10n.getConstant("audioLinkHeader")}}),this.inputUrl.addEventListener("input",function(){t.isNullOrUndefined(n.inputUrl)||(0===n.inputUrl.value.length?n.dialogObj.getButtons(0).element.disabled=!0:n.dialogObj.getButtons(0).element.removeAttribute("disabled"))}),e.selectNode&&this.isAudioElem(e.selectNode[0])){var r=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi),s=e.selectNode[0].querySelector("source");this.inputUrl.value=s.src.match(r)?s.src:""}return i.appendChild(this.inputUrl),i},n.prototype.audioUpload=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-aud-uploadwrap e-droparea"}),h=this.i10n.getConstant("audioDeviceUploadMessage"),u=this.i10n.getConstant("audioUploadMessage"),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+"_insertAudio",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 C=t.Browser.isDevice?m:f;t.EventHandler.add(C,"click",this.fileSelect,this);var y=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"}});c.appendChild(y);var N,S,E;return this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertAudioSettings.saveUrl,removeUrl:this.parent.insertAudioSettings.removeUrl},dropArea:m,multiple:!1,enableRtl:this.parent.enableRtl,allowedExtensions:this.parent.insertAudioSettings.allowedTypes.toString(),selected:function(e){a.isAudioUploaded=!0,S=e,E=e.filesData,o.parent.trigger("fileSelected",S,function(e){if(!e.cancel&&(o.checkExtension(e.filesData[0]),N=e.filesData[0].name,"HTML"===o.parent.editorMode&&t.isNullOrUndefined(o.parent.insertAudioSettings.path))){var r=new FileReader;r.addEventListener("load",function(e){var s="Base64"===o.parent.insertAudioSettings.saveFormat?r.result:URL.createObjectURL(B(r.result));a.uploadUrl={url:s,selection:n,fileName:N,selectParent:i},a.inputUrl.setAttribute("disabled","true"),t.isNullOrUndefined(a.parent.insertAudioSettings.saveUrl)&&o.isAllowedTypes&&!t.isNullOrUndefined(o.dialogObj)&&o.dialogObj.getButtons(0).element.removeAttribute("disabled")}),r.readAsDataURL(e.filesData[0].rawFile)}})},beforeUpload:function(e){o.parent.trigger("beforeFileUpload",e)},uploading:function(e){o.parent.isServerRendered||o.parent.trigger("fileUploading",e)},success:function(e){o.parent.trigger("fileUploadSuccess",e,function(e){if(!t.isNullOrUndefined(o.parent.insertAudioSettings.path)){var r=o.parent.insertAudioSettings.path+e.file.name;a.uploadUrl={url:r,selection:n,fileName:N,selectParent:i},a.inputUrl.setAttribute("disabled","true")}"upload"!==e.operation||t.isNullOrUndefined(o.dialogObj)||o.dialogObj.getButtons(0).element.removeAttribute("disabled")})},failure:function(e){o.parent.trigger("fileUploadFailed",e)},removing:function(){o.parent.trigger("fileRemoving",e,function(e){a.isAudioUploaded=!1,o.dialogObj.getButtons(0).element.disabled=!0,a.inputUrl.removeAttribute("disabled"),a.uploadUrl&&(a.uploadUrl.url="")})}}),this.uploadObj.isStringTemplate=!0,this.uploadObj.createElement=this.parent.createElement,this.uploadObj.appendTo(y),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.isAllowedTypes=!1):this.isAllowedTypes=!0)},n.prototype.fileSelect=function(){return this.dialogObj.element.getElementsByClassName("e-file-select-wrap")[0].querySelector("button").click(),!1},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.dialogObj.hide({returnValue:!0}),this.isAudioUploaded&&this.uploadObj.removing()},n.prototype.insertAudioUrl=function(e){var n=this.selfAudio;n.isAudioUploaded=!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="HTML"===n.parent.editorMode?i.split("/")[i.split("/").length-1]:"",s={cssClass:"Inline"===n.parent.insertAudioSettings.layoutOption?"e-audio-inline":"e-audio-break",url:i,selection:this.selection,fileName:r,selectParent:this.selectParent};n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,s),n.dialogObj.hide({returnValue:!1})}}else n.uploadUrl.cssClass="Inline"===n.parent.insertAudioSettings.layoutOption?"e-audio-inline":"e-audio-break",n.dialogObj.hide({returnValue:!1}),n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,n.uploadUrl),n.uploadUrl.url=""},n.prototype.destroy=function(){this.prevSelectedAudEle=void 0,this.removeEventListener()},n.prototype.getModuleName=function(){return"audio"},n}(),ei=function(){function n(e,t){this.isVideoUploaded=!1,this.isAllowedTypes=!0,this.pageX=null,this.pageY=null,this.deletedVid=[],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(K,this.onKeyDown,this),this.parent.on(W,this.onKeyUp,this),this.parent.on("insertVideo",this.insertingVideo,this),this.parent.on(_,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on("resize",this.onWindowResize,this),this.parent.on("showVideoDialog",this.showDialog,this),this.parent.on("closeVideoDialog",this.closeDialog,this),this.parent.on("dropDownSelect",this.alignmentSelect,this),this.parent.on("delete",this.deleteVideo,this),this.parent.on("video-toolbar-action",this.onToolbarAction,this),this.parent.on("editAreaClick",this.editAreaClickHandler,this),this.parent.on("iframe-click",this.onIframeMouseDown,this),this.parent.on("videoSize",this.videoSize,this),this.parent.on("insertCompleted",this.showVideoQuickToolbar,this),this.parent.on("clearDialogObj",this.clearDialogObj,this),this.parent.on(V,this.removeEventListener,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(K,this.onKeyDown),this.parent.off(W,this.onKeyUp),this.parent.off("insertVideo",this.insertingVideo),this.parent.off("resize",this.onWindowResize),this.parent.off(_,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off("showVideoDialog",this.showDialog),this.parent.off("closeVideoDialog",this.closeDialog),this.parent.off("dropDownSelect",this.alignmentSelect),this.parent.off("delete",this.deleteVideo),this.parent.off("video-toolbar-action",this.onToolbarAction),this.parent.off("editAreaClick",this.editAreaClickHandler),this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off("videoSize",this.videoSize),this.parent.off("insertCompleted",this.showVideoQuickToolbar),this.parent.off("clearDialogObj",this.clearDialogObj),this.parent.off(V,this.removeEventListener),t.isNullOrUndefined(this.contentModule)||(t.EventHandler.remove(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.videoClick),this.parent.formatter.editorManager.observer.off(te,this.undoStack),this.parent.insertVideoSettings.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),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing))))},n.prototype.afterRender=function(){this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),t.EventHandler.add(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.videoClick,this),this.parent.insertVideoSettings.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))},n.prototype.clearDialogObj=function(){this.dialogObj&&(this.dialogObj.destroy(),t.detach(this.dialogObj.element),this.dialogObj=null)},n.prototype.onKeyUp=function(e){if(!t.isNullOrUndefined(this.deletedVid)&&this.deletedVid.length>0)for(var n=0;n<this.deletedVid.length;n++){var i={element:this.deletedVid[n],src:"IFRAME"!==this.deletedVid[n].tagName?this.deletedVid[n].querySelector("source").getAttribute("src"):this.deletedVid[n].src};this.parent.trigger("afterMediaDelete",i)}},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=this.parent.formatter.getUndoRedoStack()[n].text;i.appendChild(o.cloneNode(!0));var r=i.querySelectorAll("video");if(i.querySelector(".e-vid-resize")&&r.length>0){for(var s=0;s<r.length;s++)r[s].style.outline="";t.detach(i.querySelector(".e-vid-resize"));for(var a=i.cloneNode(!0),l=document.createDocumentFragment();a.firstChild;)l.appendChild(a.firstChild);this.parent.formatter.getUndoRedoStack()[n].text=l}}},n.prototype.onIframeMouseDown=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.videoSize=function(e){var n=this;if(("VIDEO"===e.selectNode[0].nodeName||this.isEmbedVidElem(e.selectNode[0]))&&(this.insertVideo(e),!t.isNullOrUndefined(this.dialogObj))){var i=this.i10n.getConstant("videoSizeHeader"),o=this.i10n.getConstant("dialogUpdate"),r=this.vidsizeInput(e),s={args:e.args,selfVideo:this,selection:e.selection,selectNode:e.selectNode};this.dialogObj.setProperties({height:"inherit",width:"290px",header:i,content:r,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.vidsizeInput=function(e){var n=this,i=e.selectNode[0],o=this.i10n.getConstant("videoHeight"),s=this.i10n.getConstant("videoWidth"),a=this.parent.createElement("div",{className:"e-video-sizewrap"}),l=!t.isNullOrUndefined(this.changedWidthValue)||"auto"!==i.style.width.toString()&&""===i.style.width?t.isNullOrUndefined(this.changedWidthValue)?parseInt(i.getClientRects()[0].width.toString(),10).toString():this.changedWidthValue:i.style.width,d=!t.isNullOrUndefined(this.changedHeightValue)||"auto"!==i.style.height.toString()&&""===i.style.height?t.isNullOrUndefined(this.changedHeightValue)?parseInt(i.getClientRects()[0].height.toString(),10).toString():this.changedHeightValue:i.style.height;this.changedWidthValue=null,this.changedHeightValue=null;var c=T('<div class="e-rte-label"><label>'+s+'</label></div><div class="e-rte-field"><input type="text" id="vidwidth" class="e-vid-width" value='+l+' /></div><div class="e-rte-label"><label>'+o+'</label></div><div class="e-rte-field"> <input type="text" id="vidheight" class="e-vid-height" value='+d+" /></div>");a.appendChild(c);var p=new r.TextBox({value:t.formatUnit(l),enableRtl:this.parent.enableRtl,input:function(e){n.inputWidthValue=t.formatUnit(e.value)}});p.createElement=this.parent.createElement,p.appendTo(a.querySelector("#vidwidth"));var h=new r.TextBox({value:t.formatUnit(d),enableRtl:this.parent.enableRtl,input:function(e){n.inputHeightValue=t.formatUnit(e.value)}});return h.createElement=this.parent.createElement,h.appendTo(a.querySelector("#vidheight")),a},n.prototype.insertSize=function(e){e.selection.restore();var t=e.selfVideo;0===t.parent.formatter.getUndoRedoStack().length&&t.parent.formatter.saveData();var n=t.dialogObj.element;this.changedWidthValue=this.inputWidthValue,this.changedHeightValue=this.inputHeightValue;var i=n.querySelector(".e-vid-width").value,o=n.parentElement.querySelector(".e-vid-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.vidResizeDiv&&(e.selectNode[0]="VIDEO"===e.selectNode[0].tagName||"IFRAME"===e.selectNode[0].tagName?e.selectNode[0]:e.selectNode[0].querySelector("iframe"),t.vidResizePos(e.selectNode[0],this.vidResizeDiv)),t.dialogObj.hide({returnValue:!0})},n.prototype.resizeEnd=function(e){this.resizeBtnInit(),this.videoEle.parentElement.style.cursor="auto",t.Browser.isDevice&&t.removeClass([e.target.parentElement],"e-mob-span");var n={event:e,requestType:"videos"};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(te,this.undoStack,this),this.parent.formatter.saveData()},n.prototype.resizeStart=function(e,n){var i=this;if(!this.parent.readonly){var o=n||(this.isEmbedVidElem(e.target)?e.target.querySelector("iframe"):e.target);if(this.prevSelectedVidEle=this.videoEle,"VIDEO"===o.tagName||"IFRAME"===o.tagName){this.parent.preventDefaultResize(e);var r=o;this.vidResizeDiv&&this.contentModule.getEditPanel().contains(this.vidResizeDiv)&&t.detach(this.vidResizeDiv),this.videoResize(r)}if(o.classList.contains("e-rte-videoboxmark")){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.videoQTBar.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.vidResizeDiv)&&!this.vidResizeDiv.classList.contains("e-mob-span"))t.addClass([this.vidResizeDiv],"e-mob-span");else{var s={event:e,requestType:"videos"};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.videoClick=function(e){t.Browser.isDevice&&("VIDEO"===e.target.tagName||this.isEmbedVidElem(e.target)?(this.contentModule.getEditPanel().setAttribute("contenteditable","false"),e.target.focus()):this.parent.readonly||this.contentModule.getEditPanel().setAttribute("contenteditable","true")),("VIDEO"===e.target.tagName||this.isEmbedVidElem(e.target))&&e.preventDefault()},n.prototype.onCutHandler=function(){this.vidResizeDiv&&this.contentModule.getEditPanel().contains(this.vidResizeDiv)&&this.cancelResizeAction()},n.prototype.videoResize=function(e){this.resizeBtnInit(),this.videoEle=e,t.addClass([this.videoEle],"e-resize"),this.vidResizeDiv=this.parent.createElement("span",{className:"e-vid-resize",id:this.rteID+"_vidResize"}),this.vidResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-videoboxmark e-rte-topLeft",styles:"cursor: nwse-resize"})),this.vidResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-videoboxmark e-rte-topRight",styles:"cursor: nesw-resize"})),this.vidResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-videoboxmark e-rte-botLeft",styles:"cursor: nesw-resize"})),this.vidResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-videoboxmark e-rte-botRight",styles:"cursor: nwse-resize"})),t.Browser.isDevice&&t.addClass([this.vidResizeDiv],"e-mob-rte"),e.style.outline="2px solid #4a90e2",this.vidResizePos(e,this.vidResizeDiv),this.resizeVidDupPos(e),this.contentModule.getEditPanel().appendChild(this.vidResizeDiv),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.vidResizePos=function(e,n){if(!t.isNullOrUndefined(n)){var i=this.calcPos(e),o=i.top,r=i.left,s=0!==e.width&&"auto"!==e.width&&"NaN"!==e.width?e.width:e.getBoundingClientRect().width,a=0!==e.height&&"auto"!==e.height&&"NaN"!==e.height?e.height:e.getBoundingClientRect().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=parseInt(a.toString(),10)-l+o+"px",n.querySelector(".e-rte-botRight").style.left=parseInt(s.toString(),10)-(l-d)+r+"px",n.querySelector(".e-rte-botRight").style.top=parseInt(a.toString(),10)-l+o+"px",n.querySelector(".e-rte-topRight").style.left=parseInt(s.toString(),10)-(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,i=["TD","TH","TABLE","A"],o={top:0,left:0},r=e.ownerDocument,s=(e.offsetParent&&(e.offsetParent.classList.contains("e-video-clickelem")||i.indexOf(e.offsetParent.tagName)>-1)?t.closest(e,"#"+this.parent.getID()+"_rte-edit-view"):e.offsetParent)||r.documentElement;s&&(s===r.body||s===r.documentElement)&&"static"===s.style.position;)s=s.parentNode;return s&&s!==e&&1===s.nodeType&&(o=s.getBoundingClientRect()),e&&1===e.nodeType&&"IFRAME"===e.tagName?(n=e.getBoundingClientRect(),{top:n.top-o.top,left:n.left-o.left}):{top:e.offsetTop,left:e.offsetLeft}},n.prototype.setAspectRatio=function(e,n,i,o){var r=getComputedStyle(e);if(!t.isNullOrUndefined(r)){var s=""!==r.width?r.width.match(/^\d+(\.\d*)?%$/g)?parseFloat(r.width):parseInt(r.width,10):""!==e.style.width?e.style.width:e.width,a=""!==r.height?parseInt(r.height,10):""!==e.style.height?e.style.height:e.height;if(s>a)if(e.style.minWidth=0===this.parent.insertVideoSettings.minWidth?"200px":t.formatUnit(this.parent.insertVideoSettings.minWidth),e.style.minHeight=0===this.parent.insertVideoSettings.minHeight?"90px":t.formatUnit(this.parent.insertVideoSettings.minHeight),this.parent.insertVideoSettings.resizeByPercent){if(0!==parseInt(""+e.getBoundingClientRect().width,10)&&0!==parseInt(""+s,10)){var l=this.pixToPerc(parseInt(s.toString(),10)/parseInt(a.toString(),10)*i,e.previousElementSibling||e.parentElement);e.style.width=Math.min(Math.round(l/e.getBoundingClientRect().width*n*100)/100,100)+"%"}else e.style.width=this.pixToPerc(parseInt(s.toString(),10)/parseInt(a.toString(),10)*i,e.previousElementSibling||e.parentElement)+"%";e.style.height=null,e.removeAttribute("height")}else if(""===e.style.width&&""!==e.style.height||""===r.width&&""!==r.height)e.style.height=i+"px";else if(""!==e.style.width&&""===e.style.height||""!==r.width&&""===r.height){d=parseInt(s.toString(),10)/parseInt(a.toString(),10)*i+parseInt(s.toString(),10)/parseInt(a.toString(),10)<this.parent.inputElement.getBoundingClientRect().right-32?parseInt(s.toString(),10)/parseInt(a.toString(),10)*i+parseInt(s.toString(),10)/parseInt(a.toString(),10):this.parent.inputElement.getBoundingClientRect().right-32;e.style.width=d.toString()+"px"}else if(""!==e.style.width||""!==r.width){var d=parseInt(s.toString(),10)/parseInt(a.toString(),10)*i<this.parent.inputElement.getBoundingClientRect().right-32?parseInt(s.toString(),10)/parseInt(a.toString(),10)*i:this.parent.inputElement.getBoundingClientRect().right-32;e.style.width=d+"px",e.style.height=i+"px"}else e.setAttribute("width",parseInt((parseInt(s.toString(),10)/parseInt(a.toString(),10)*i+parseInt(s.toString(),10)/parseInt(a.toString(),10)).toString(),10).toString());else a>s?this.parent.insertVideoSettings.resizeByPercent?(0!==parseInt(""+e.getBoundingClientRect().width,10)&&0!==parseInt(""+s,10)?e.style.width=Math.min(Math.round(parseInt(s.toString(),10)/e.getBoundingClientRect().width*n*100)/100,100)+"%":e.style.width=this.pixToPerc(n/parseInt(a.toString(),10)*i,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width||""!==r.width?(e.style.width=n+"px",e.style.height=parseInt(a.toString(),10)/parseInt(s.toString(),10)*n+"px"):e.setAttribute("width",this.resizeBtnStat.botRight?(this.getPointX(o.event)-e.getBoundingClientRect().left).toString():n.toString()):this.parent.insertVideoSettings.resizeByPercent?(e.style.width=this.pixToPerc(n,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):(e.style.width=n+"px",e.style.height=n+"px")}},n.prototype.pixToPerc=function(e,t){return e/parseFloat(getComputedStyle(t).width)*100},n.prototype.vidDupMouseMove=function(e,n,i){var o=this,r={event:i,requestType:"videos"};this.parent.trigger("resizing",r,function(i){if(i.cancel)o.cancelResizeAction();else{if(parseInt(o.parent.insertVideoSettings.minWidth,10)>=parseInt(e,10)||parseInt(o.parent.getInsertVidMaxWidth(),10)<=parseInt(e,10)&&t.isNullOrUndefined(o.videoEle.style.width))return;if(!o.parent.insertVideoSettings.resizeByPercent&&(parseInt(o.parent.insertVideoSettings.minHeight,10)>=parseInt(n,10)||parseInt(o.parent.insertVideoSettings.maxHeight,10)<=parseInt(n,10)))return;o.videoEle.parentElement.style.cursor="pointer",o.setAspectRatio(o.videoEle,parseInt(e,10),parseInt(n,10),r),o.resizeVidDupPos(o.videoEle),o.vidResizePos(o.videoEle,o.vidResizeDiv),o.parent.setContentHeight("",!1)}})},n.prototype.resizing=function(e){this.videoEle.offsetWidth>=this.parent.getInsertVidMaxWidth()&&(this.videoEle.style.maxHeight=this.videoEle.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.vidDupPos.width,10)+i,s=parseInt(this.vidDupPos.height,10)+o;this.pageX=t,this.pageY=n,this.resizeBtnStat.botRight?this.vidDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.botLeft?this.vidDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topRight?this.vidDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topLeft&&this.vidDupMouseMove(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.videoEle&&this.vidResizeDiv&&this.contentModule.getEditPanel().contains(this.vidResizeDiv)&&(t.detach(this.vidResizeDiv),this.videoEle.style.outline="",this.vidResizeDiv=null,this.pageX=null,this.pageY=null)},n.prototype.resizeVidDupPos=function(e){this.vidDupPos={width:""!==e.style.width&&this.parent.insertVideoSettings&&!this.parent.insertVideoSettings.resizeByPercent?this.videoEle.style.width:"auto"!==e.width&&0!==e.width&&"NaN"!==e.width?e.width+"px":parseInt(getComputedStyle(e).width,10)+"px",height:""!==e.style.height?this.videoEle.style.height:"auto"!==e.height&&0!==e.height&&"NaN"!==e.height?e.height+"px":parseInt(getComputedStyle(e).height,10)+"px"}},n.prototype.resizeBtnInit=function(){return this.resizeBtnStat={botLeft:!1,botRight:!1,topRight:!1,topLeft:!1}},n.prototype.onToolbarAction=function(e){switch(P()&&this.parent.notify(Y,{}),e.args.item.subCommand){case"VideoReplace":this.parent.notify("insertVideo",e);break;case"VideoRemove":this.parent.notify("delete",e);break;case"VideoDimension":this.parent.notify("videoSize",e)}},n.prototype.onKeyDown=function(e){var n,i,o,r,s=e.args;this.deletedVid=[];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++)"VIDEO"!==d[c].nodeName&&"IFRAME"!==d[c].nodeName||this.deletedVid.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.checkVideoBack(n):46===s.which&&"Delete"===s.code&&p&&this.checkVideoDel(n)}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&"KeyK"!==s.code&&(n=this.parent.formatter.editorManager.nodeSelection.getRange(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)&&(!t.isNullOrUndefined(r[0])&&"VIDEO"===r[0].tagName||this.isEmbedVidElem(r[0]))&&r[0].parentElement)){var h=r[0].parentElement.childNodes[0];this.contentModule.getEditPanel().querySelector(".e-vid-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-video-focus"),this.quickToolObj.videoQTBar.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&&("VIDEO"===o[0].nodeName||this.isEmbedVidElem(o[0]))&&o.length<1){t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),s.preventDefault();var u={selectNode:o,selection:i,selectParent:r,args:{item:{command:"Videos",subCommand:"VideoRemove"},originalEvent:s}};this.deleteVideo(u,s.keyCode)}this.parent.contentModule.getEditPanel().querySelector(".e-vid-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.deletedVid.length;c++){var m=this.deletedVid[c].src;this.videoRemovePost(m)}"Markdown"!==this.parent.editorMode&&(3===n.startContainer.nodeType?"Backspace"===s.code?n.startContainer.previousElementSibling&&0===n.startOffset&&n.startContainer.previousElementSibling.classList.contains("e-video-wrap")&&t.detach(n.startContainer.previousElementSibling):n.startContainer.nextElementSibling&&n.endContainer.textContent.length===n.endOffset&&n.startContainer.nextElementSibling.classList.contains("e-video-wrap")&&t.detach(n.startContainer.nextElementSibling):1===n.startContainer.nodeType&&n.startContainer.classList&&n.startContainer.classList.contains("e-video-wrap")&&t.detach(n.startContainer));break;case"insert-video":t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),this.openDialog(!0,s,i,o,r),s.preventDefault()}s.ctrlKey&&"a"===s.key&&this.handleSelectAll()},n.prototype.handleSelectAll=function(){this.cancelResizeAction();var e=this.parent.inputElement.querySelectorAll(".e-video-focus");t.removeClass(e,"e-video-focus")},n.prototype.openDialog=function(e,n,i,o,r){var s,a,l,d;e||t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)?(a=i,l=o,d=r):(s=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),a=this.parent.formatter.editorManager.nodeSelection.save(s,this.parent.contentModule.getDocument()),l=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(s),d=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(s)),"HTML"===this.parent.editorMode&&this.insertVideo({args:{item:{command:"Videos",subCommand:"Video"},originalEvent:n,name:e?null:"showDialog"},selectNode:l,selection:a,selectParent:d})},n.prototype.showDialog=function(){this.openDialog(!1)},n.prototype.closeDialog=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.checkVideoBack=function(e){"#text"!==e.startContainer.nodeName||0!==e.startOffset||t.isNullOrUndefined(e.startContainer.previousSibling)||"VIDEO"!==e.startContainer.previousSibling.nodeName&&!this.isEmbedVidElem(e.startContainer.previousSibling)?"#text"===e.startContainer.nodeName||t.isNullOrUndefined(e.startContainer.childNodes[e.startOffset-1])||"VIDEO"!==e.startContainer.childNodes[e.startOffset-1].nodeName&&!this.isEmbedVidElem(e.startContainer.childNodes[e.startOffset-1])||this.deletedVid.push(e.startContainer.childNodes[e.startOffset-1]):this.deletedVid.push(e.startContainer.previousSibling)},n.prototype.checkVideoDel=function(e){"#text"!==e.startContainer.nodeName||e.startOffset!==e.startContainer.textContent.length||t.isNullOrUndefined(e.startContainer.nextSibling)||"VIDEO"!==e.startContainer.nextSibling.nodeName&&!this.isEmbedVidElem(e.startContainer.nextSibling)?"#text"===e.startContainer.nodeName||t.isNullOrUndefined(e.startContainer.childNodes[e.startOffset])||"VIDEO"!==e.startContainer.childNodes[e.startOffset].nodeName&&!this.isEmbedVidElem(e.startContainer.childNodes[e.startOffset])||this.deletedVid.push(e.startContainer.childNodes[e.startOffset]):this.deletedVid.push(e.startContainer.nextSibling)},n.prototype.alignmentSelect=function(e){var n=e.item;if(document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))&&"Videos"===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="VIDEO"===o[0].nodeName?o:[this.videoEle]};switch(0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),n.subCommand){case"JustifyLeft":case"JustifyCenter":case"JustifyRight":this.alignVideo(r,n.subCommand);break;case"Inline":this.inline(r);break;case"Break":this.break(r)}this.quickToolObj&&document.body.contains(this.quickToolObj.videoQTBar.element)&&(this.quickToolObj.videoQTBar.hidePopup(),t.removeClass([o[0]],"e-video-focus")),this.cancelResizeAction()}},n.prototype.deleteVideo=function(e,n){if("VIDEO"===e.selectNode[0].nodeName||this.isEmbedVidElem(e.selectNode[0])){this.isEmbedVidElem(e.selectNode[0])&&(e.selectNode[0]=e.selectNode[0].classList.contains("e-video-clickelem")?e.selectNode[0]:e.selectNode[0].parentElement);var i={element:this.isEmbedVidElem(e.selectNode[0])?e.selectNode[0]:e.selectNode[0].querySelector("iframe"),src:this.isEmbedVidElem(e.selectNode[0])?e.selectNode[0].querySelector("iframe").getAttribute("src"):e.selectNode[0].querySelector("source").getAttribute("src")};0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),e.selection.restore(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.videoRemovePost(i.src),this.quickToolObj&&document.body.contains(this.quickToolObj.videoQTBar.element)&&this.quickToolObj.videoQTBar.hidePopup(),this.cancelResizeAction(),t.isNullOrUndefined(n)&&this.parent.trigger("afterMediaDelete",i)}},n.prototype.videoRemovePost=function(e){var n=this,i="";if(!t.isNullOrUndefined(this.parent.insertVideoSettings.removeUrl)&&""!==this.parent.insertVideoSettings.removeUrl){i=e.indexOf("http://")>-1||e.indexOf("https://")>-1?e:new URL(e,document.baseURI).href,this.removingVideoName=i.replace(/^.*[\\\/]/,"");var o=new XMLHttpRequest;o.addEventListener("readystatechange",function(){4===this.readyState&&200===this.status&&n.triggerPost(this.response)}),o.open("GET",i),o.responseType="blob",o.send()}},n.prototype.triggerPost=function(e){var n=this.parent.insertVideoSettings.removeUrl;if(!t.isNullOrUndefined(n)&&""!==n){var i=new File([e],this.removingVideoName),o=new t.Ajax(n,"POST",!0,null),r=new FormData;r.append("UploadFiles",i),o.send(r)}},n.prototype.onDocumentClick=function(e){var n=e.target;("VIDEO"===n.nodeName||this.isEmbedVidElem(n))&&(this.videoEle=this.isEmbedVidElem(n)?n.querySelector("iframe"):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_Video")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_Video"))&&(e.offsetX>e.target.clientWidth||e.offsetY>e.target.clientHeight||(this.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,E(this.parent.element,"focusout"))),this.contentModule.getEditPanel().querySelector(".e-vid-resize")&&("VIDEO"===n.tagName||this.isEmbedVidElem(n)||this.removeResizeEle(),"VIDEO"===n.tagName||this.isEmbedVidElem(n)||t.isNullOrUndefined(this.videoEle)?t.isNullOrUndefined(this.prevSelectedVidEle)||this.prevSelectedVidEle===("IFRAME"===n.tagName||"VIDEO"===n.tagName?n:n.querySelector("iframe"))||(this.prevSelectedVidEle.style.outline=""):this.videoEle.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-vid-resize"))},n.prototype.onWindowResize=function(){t.isNullOrUndefined(this.contentModule)||t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-vid-resize"))||this.cancelResizeAction()},n.prototype.break=function(e){if("VIDEO"===e.selectNode[0].nodeName||this.isEmbedVidElem(e.selectNode[0])){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("VIDEO"===e.selectNode[0].nodeName||this.isEmbedVidElem(e.selectNode[0])){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.alignVideo=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.editAreaClickHandler=function(n){if(this.parent.readonly)return void this.hideVideoQuickToolbar();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)||"VIDEO"!==i.target.tagName&&!this.isEmbedVidElem(i.target)||(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.videoQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var s=this.quickToolObj.videoQTBar.element.classList.contains("e-rte-pop");if(("VIDEO"===r.nodeName||this.isEmbedVidElem(r))&&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),P()&&this.parent.notify(X,n),t.addClass([this.isEmbedVidElem(r)?r.querySelector("iframe"):r],"e-video-focus"),this.showVideoQuickToolbar({args:i,type:"Videos",elements:[i.target]})}else this.hideVideoQuickToolbar()}},n.prototype.showVideoQuickToolbar=function(e){var n=this;if(!("Videos"!==e.type||!t.isNullOrUndefined(e.args)&&2===e.args.detail||t.isNullOrUndefined(this.parent.quickToolbarModule)||t.isNullOrUndefined(this.parent.quickToolbarModule.videoQTBar)||t.isNullOrUndefined(e.args))){this.quickToolObj=this.parent.quickToolbarModule;var i=e.args,o=e.elements;[].forEach.call(e.elements,function(e,t){0===t&&(o=e)}),("VIDEO"===o.tagName||this.isEmbedVidElem(o))&&t.addClass([this.isEmbedVidElem(o)&&"IFRAME"!==o.tagName?o.querySelector("iframe"):o],["e-video-focus"]);var r=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+i.clientY:i.pageY;this.parent.quickToolbarModule.videoQTBar&&(e.isNotify?setTimeout(function(){n.parent.formatter.editorManager.nodeSelection.Clear(n.contentModule.getDocument()),n.parent.formatter.editorManager.nodeSelection.setSelectionContents(n.contentModule.getDocument(),o),n.quickToolObj.videoQTBar.showPopup(i.pageX-50,r+o.getBoundingClientRect().height/2-o.offsetTop,o)},400):this.quickToolObj.videoQTBar.showPopup(i.pageX-50,r+o.getBoundingClientRect().height/2-o.offsetTop,o))}},n.prototype.hideVideoQuickToolbar=function(){t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-video-focus"))||(t.removeClass([this.contentModule.getEditPanel().querySelector(".e-video-focus")],"e-video-focus"),t.isNullOrUndefined(this.videoEle)||(this.videoEle.style.outline=""),t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-vid-resize"))||t.detach(this.contentModule.getEditPanel().querySelector(".e-vid-resize")),this.quickToolObj&&this.quickToolObj.videoQTBar&&document.body.contains(this.quickToolObj.videoQTBar.element)&&this.quickToolObj.videoQTBar.hidePopup())},n.prototype.isEmbedVidElem=function(e){return!!(e&&3!==e.nodeType&&"BR"!==e.nodeName&&e.classList&&e.classList.contains("e-video-clickelem")||e&&"IFRAME"===e.nodeName)},n.prototype.insertingVideo=function(e){if(this.insertVideo(e),!t.isNullOrUndefined(this.dialogObj)){this.dialogObj.element.style.maxHeight="inherit";var n=this.dialogObj.element.querySelector(".e-video-content");t.isNullOrUndefined(this.parent.insertVideoSettings.path)&&"HTML"!==this.parent.editorMode?n.querySelector(".e-video-url").focus():document.getElementById(this.rteID+"_insertVideo").focus()}},n.prototype.insertVideo=function(e){var n=this;if(this.dialogObj)return void this.dialogObj.hide({returnValue:!0});var i=this.parent.createElement("div",{className:"e-rte-video-dialog",id:this.rteID+"_video"});this.parent.element.appendChild(i);var o=this.i10n.getConstant("dialogInsert"),r=this.i10n.getConstant("dialogCancel"),s=this.i10n.getConstant("videoHeader"),a=e.selection,l={selfVideo: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",isModal:t.Browser.isDevice,buttons:[{click:this.insertVideoUrl.bind(l),buttonModel:{content:o,cssClass:"e-flat e-insertVideo",isPrimary:!0,disabled:!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.isVideoUploaded&&n.uploadObj.removing(),n.parent.isBlur=!1,e&&e.event.returnValue&&"HTML"===n.parent.editorMode&&a.restore(),n.dialogObj.destroy(),t.detach(n.dialogObj.element),n.dialogRenderObj.close(e),n.dialogObj=null}},c=this.parent.createElement("div",{className:"e-video-content"});t.isNullOrUndefined(this.parent.insertVideoSettings.path)&&"HTML"!==this.parent.editorMode||c.appendChild(this.videoUpload(e));var p=this.parent.createElement("div",{className:"e-videoheader"}),h=this.parent.createElement("div",{className:"e-embed-videoheader"}),u=this.i10n.getConstant("videoLinkHeader"),m=this.i10n.getConstant("embedVideoLinkHeader");"HTML"===this.parent.editorMode&&(p.innerHTML=u,h.innerHTML=m),c.appendChild(this.urlPopup(e)),e.selectNode&&1===e.selectNode[0].nodeType&&("VIDEO"===e.selectNode[0].tagName||this.isEmbedVidElem(e.selectNode[0]))?(d.header=this.parent.localeObj.getConstant("editVideoHeader"),d.content=c):d.content=c,this.dialogObj=this.dialogRenderObj.render(d),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(i),e.selectNode&&1===e.selectNode[0].nodeType&&("VIDEO"===e.selectNode[0].tagName||this.isEmbedVidElem(e.selectNode[0]))&&"insertVideo"===e.name&&(this.dialogObj.element.querySelector(".e-insertVideo").textContent=this.parent.localeObj.getConstant("dialogUpdate")),i.style.maxHeight="inherit",this.quickToolObj&&(this.quickToolObj.videoQTBar&&document.body.contains(this.quickToolObj.videoQTBar.element)&&(this.quickToolObj.videoQTBar.hidePopup(),t.isNullOrUndefined(e.selectParent)||t.removeClass([e.selectParent[0]],"e-video-focus")),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup(),this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.hidePopup())},n.prototype.urlPopup=function(e){var n=this,i=this.parent.createElement("div",{className:"e-video-url-wrap"}),o=this.parent.createElement("div",{id:"urlcontent"}),r=this.i10n.getConstant("videoUrl"),a=T('<input id="embedURL" type="radio"><input id="webURL" type="radio" >');if(i.appendChild(a),i.appendChild(o),this.embedInputUrl=this.parent.createElement("textarea",{className:"e-input e-embed-video-url",attrs:{placeholder:this.i10n.getConstant("pasteEmbeddedCodeHere"),type:"text",tabindex:"-1","aria-label":this.i10n.getConstant("embedVideoLinkHeader")}}),this.embedInputUrl.addEventListener("keyup",function(){t.isNullOrUndefined(n.embedInputUrl)||(0===n.embedInputUrl.value.length?n.dialogObj.getButtons(0).element.disabled=!0:n.dialogObj.getButtons(0).element.removeAttribute("disabled"))}),this.inputUrl=this.parent.createElement("input",{className:"e-input e-video-url",attrs:{placeholder:r,spellcheck:"false"}}),this.inputUrl.addEventListener("input",function(){t.isNullOrUndefined(n.inputUrl)||(0===n.inputUrl.value.length?n.dialogObj.getButtons(0).element.disabled=!0:n.dialogObj.getButtons(0).element.removeAttribute("disabled"))}),e.selectNode&&(e.selectNode[0]&&3!==e.selectNode[0].nodeType&&"BR"!==e.selectNode[0].nodeName&&e.selectNode[0].classList&&e.selectNode[0].classList.contains("e-video-clickelem")||"IFRAME"===e.selectNode[0].nodeName||"VIDEO"===e.selectNode[0].nodeName)){var l=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi),d=e.selectNode[0].querySelector("source");this.inputUrl.value=d.src.match(l)?d.src:""}return new s.RadioButton({label:this.i10n.getConstant("embeddedCode"),checked:!0,name:"URL",created:function(){o.appendChild(n.embedInputUrl)},change:function(){o.innerHTML="",o.appendChild(n.embedInputUrl)}}).appendTo(i.querySelector("#embedURL")),new s.RadioButton({label:this.i10n.getConstant("webUrl"),name:"URL",change:function(){o.innerHTML="",o.appendChild(n.inputUrl)}}).appendTo(i.querySelector("#webURL")),i},n.prototype.videoUpload=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-vid-uploadwrap e-droparea"}),h=this.i10n.getConstant("videoDeviceUploadMessage"),u=this.i10n.getConstant("videoUploadMessage"),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+"_insertVideo",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 C=t.Browser.isDevice?m:f;t.EventHandler.add(C,"click",this.fileSelect,this);var y=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"}});c.appendChild(y);var N,S,E;return this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertVideoSettings.saveUrl,removeUrl:this.parent.insertVideoSettings.removeUrl},dropArea:m,multiple:!1,enableRtl:this.parent.enableRtl,allowedExtensions:this.parent.insertVideoSettings.allowedTypes.toString(),selected:function(e){a.isVideoUploaded=!0,S=e,E=e.filesData,o.parent.trigger("fileSelected",S,function(e){if(!e.cancel&&(o.checkExtension(e.filesData[0]),N=e.filesData[0].name,"HTML"===o.parent.editorMode&&t.isNullOrUndefined(o.parent.insertVideoSettings.path))){var r=new FileReader;r.addEventListener("load",function(e){var s="Base64"===o.parent.insertVideoSettings.saveFormat?r.result:URL.createObjectURL(B(r.result));a.uploadUrl={url:s,selection:n,fileName:N,selectParent:i},a.inputUrl.setAttribute("disabled","true"),a.embedInputUrl.setAttribute("disabled","true"),t.isNullOrUndefined(a.parent.insertVideoSettings.saveUrl)&&o.isAllowedTypes&&!t.isNullOrUndefined(o.dialogObj)&&o.dialogObj.getButtons(0).element.removeAttribute("disabled")}),r.readAsDataURL(e.filesData[0].rawFile)}})},beforeUpload:function(e){o.parent.trigger("beforeFileUpload",e)},uploading:function(e){o.parent.isServerRendered||o.parent.trigger("fileUploading",e)},success:function(e){o.parent.trigger("fileUploadSuccess",e,function(e){if(!t.isNullOrUndefined(o.parent.insertVideoSettings.path)){var r=o.parent.insertVideoSettings.path+e.file.name;a.uploadUrl={url:r,selection:n,fileName:N,selectParent:i,width:{width:a.parent.insertVideoSettings.width,minWidth:a.parent.insertVideoSettings.minWidth,maxWidth:a.parent.getInsertImgMaxWidth()},height:{height:a.parent.insertVideoSettings.height,minHeight:a.parent.insertVideoSettings.minHeight,maxHeight:a.parent.insertVideoSettings.maxHeight}},a.embedInputUrl.setAttribute("disabled","true")}"upload"!==e.operation||t.isNullOrUndefined(o.dialogObj)||o.dialogObj.getButtons(0).element.removeAttribute("disabled")})},failure:function(e){o.parent.trigger("fileUploadFailed",e)},removing:function(){o.parent.trigger("fileRemoving",e,function(e){a.isVideoUploaded=!1,o.dialogObj.getButtons(0).element.disabled=!0,a.embedInputUrl.removeAttribute("disabled"),a.uploadUrl&&(a.uploadUrl.url="")})}}),this.uploadObj.isStringTemplate=!0,this.uploadObj.createElement=this.parent.createElement,this.uploadObj.appendTo(y),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.isAllowedTypes=!1):this.isAllowedTypes=!0)},n.prototype.fileSelect=function(){return this.dialogObj.element.getElementsByClassName("e-file-select-wrap")[0].querySelector("button").click(),!1},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.dialogObj.hide({returnValue:!0}),this.isVideoUploaded&&this.uploadObj.removing()},n.prototype.insertVideoUrl=function(e){var n=this.selfVideo;n.isVideoUploaded=!1;var i=n.inputUrl.value,o=n.embedInputUrl.value;if(0===n.parent.formatter.getUndoRedoStack().length&&n.parent.formatter.saveData(),t.isNullOrUndefined(n.uploadUrl)||""===n.uploadUrl.url){if("HTML"===n.parent.editorMode&&(""!==i||""!==o)){if("HTML"===n.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"[id='"+n.contentModule.getPanel().id+"']"))){n.contentModule.getEditPanel().focus();var r=n.parent.formatter.editorManager.nodeSelection.getRange(n.contentModule.getDocument());this.selection=n.parent.formatter.editorManager.nodeSelection.save(r,n.contentModule.getDocument()),this.selectParent=n.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(r)}var s=document.getElementById("webURL"),a=s.checked?i.split("/")[i.split("/").length-1]:o,l={cssClass:"Inline"===n.parent.insertVideoSettings.layoutOption?"e-video-inline":"e-video-break",url:i,selection:this.selection,fileName:a,isEmbedUrl:!s.checked,selectParent:this.selectParent,width:{width:n.parent.insertVideoSettings.width,minWidth:n.parent.insertVideoSettings.minWidth,maxWidth:n.parent.getInsertImgMaxWidth()},height:{height:n.parent.insertVideoSettings.height,minHeight:n.parent.insertVideoSettings.minHeight,maxHeight:n.parent.insertVideoSettings.maxHeight}};n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,l),n.dialogObj.hide({returnValue:!1})}}else n.uploadUrl.cssClass="Inline"===n.parent.insertVideoSettings.layoutOption?"e-video-inline":"e-video-break",n.dialogObj.hide({returnValue:!1}),n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,n.uploadUrl),n.uploadUrl.url=""},n.prototype.destroy=function(){this.prevSelectedVidEle=void 0,this.removeEventListener()},n.prototype.getModuleName=function(){return"video"},n}(),ti=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(_,this.onInitialEnd,this),this.parent.on("updateSource",this.updateSourceCode,this),this.parent.on(V,this.destroy,this),this.parent.on(ne,this.moduleDestroy,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(_,this.onInitialEnd),this.parent.off(V,this.destroy),this.parent.off(ne,this.moduleDestroy),this.parent.formatter.editorManager.observer.off("keydown-handler",this.onKeyDown)},n.prototype.getSourceCode=function(){return this.parent.createElement("textarea",{className:"e-rte-srctextarea"+this.parent.getCssClass(!0)})},n.prototype.wireEvent=function(e){this.keyboardModule=new ft(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 ft(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.getToolbarElement()){var t=this.parent.getToolbarElement().querySelector(".e-toolbar-item:not(.e-overlay)[title]");t.firstElementChild.removeAttribute("tabindex"),t.firstElementChild.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){var i=this;this.parent.notify("hidePopup",{}),this.parent.isBlur=!1,this.parent.trigger(G,{requestType:"SourceCode",targetItem:"SourceCode",args:n});var o=t.selectAll("."+ue,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 r=void 0;(r=t.isNullOrUndefined(this.parent.element.querySelector("#"+this.parent.getID()+"_source-view"))?this.parent.createElement("div",{className:"e-source-content",id:this.parent.getID()+"_source-view"}):this.parent.element.querySelector("#"+this.parent.getID()+"_source-view")).appendChild(this.previewElement),this.parent.element.appendChild(r),r.style.height=this.contentModule.getPanel().style.height,r.style.marginTop=this.contentModule.getPanel().style.marginTop,this.getPanel().value=this.getTextAreaValue(),this.contentModule.getPanel().style.display="none",r.style.display="block",this.getPanel().style.display="block"}else{var s=this.parent.inputElement.offsetHeight;this.contentModule.getPanel().appendChild(this.previewElement),this.getPanel().value=this.getTextAreaValue(),this.previewElement.style.height=s+"px",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(o,[ve]),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(),!t.isNullOrUndefined(this.parent.saveInterval)&&this.parent.saveInterval>0&&this.parent.autoSaveOnIdle&&(this.codeViewTimeInterval=setInterval(function(){i.parent.notify("updateValueOnIdle",{})},this.parent.saveInterval))},n.prototype.updateSourceCode=function(e){this.parent.isBlur=!1,this.parent.trigger(G,{requestType:"Preview",targetItem:"Preview",args:e});var n=this.getPanel();this.parent.notify("updateToolbarItem",{targetItem:"Preview",updateItem:"SourceCode",baseToolbar:this.parent.getBaseToolbarObject()});var i,o=this.parent.serializeValue(n.value);i=null===o||""===o?"DIV"===this.parent.enterKey?"<div><br/></div>":"BR"===this.parent.enterKey?"<br/>":"<p><br/></p>":o,this.parent.iframeSettings.enable?(n.parentElement.style.display="none",n.style.display="none",this.contentModule.getPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=i):(n.style.display="none",this.contentModule.getEditPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=i),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.addAudioVideoWrapper(),clearTimeout(this.codeViewTimeInterval),this.parent.invokeChangeEvent(),this.parent.notify("tableclass",{})},n.prototype.getTextAreaValue=function(){return"<p><br></p>"===this.contentModule.getEditPanel().innerHTML||"<div><br></div>"===this.contentModule.getEditPanel().innerHTML||"<br>"===this.contentModule.getEditPanel().innerHTML||1===this.contentModule.getEditPanel().childNodes.length&&"P"===this.contentModule.getEditPanel().childNodes[0].tagName&&7===this.contentModule.getEditPanel().innerHTML.length||"DIV"===this.contentModule.getEditPanel().childNodes[0].tagName&&11===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(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null},n}(),ni=function(){function n(e,t){this.ensureInsideTableList=!0,this.pageX=null,this.pageY=null,this.moveEle=null,this.currentColumnResize="",this.currentMarginLeft=0,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(_,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on("showTableDialog",this.showDialog,this),this.parent.on("closeTableDialog",this.closeDialog,this),this.parent.on("docClick",this.docClick,this),this.parent.on("iframe-click",this.onIframeMouseDown,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(K,this.keyDown,this),this.parent.on(W,this.keyUp,this),this.parent.on("mouseUp",this.selectionTable,this),this.parent.on("tableModulekeyUp",this.tableModulekeyUp,this),this.parent.on(ie,this.setCssClass,this),this.parent.on(V,this.destroy,this),this.parent.on(ne,this.moduleDestroy,this),this.parent.on("afterKeyDown",this.afterKeyDown,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("createTable",this.renderDlgContent),this.parent.off(_,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off("docClick",this.docClick),this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off("showTableDialog",this.showDialog),this.parent.off("closeTableDialog",this.closeDialog),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(J,this.cellSelect),this.parent.off("tableColorPickerChanged",this.setBGColor),this.parent.off(K,this.keyDown),this.parent.off(W,this.keyUp),this.parent.off("mouseUp",this.selectionTable),this.parent.off("tableModulekeyUp",this.tableModulekeyUp),this.parent.off(ie,this.setCssClass),this.parent.off(V,this.destroy),this.parent.off(ne,this.moduleDestroy),this.parent.off("afterKeyDown",this.afterKeyDown),!t.Browser.isDevice&&this.parent.tableSettings.resize&&t.EventHandler.remove(this.contentModule.getEditPanel(),"mouseover",this.resizeHelper))},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){this.popupObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?t.addClass([this.popupObj.element],e.cssClass):(t.removeClass([this.popupObj.element],e.oldCssClass),t.addClass([this.popupObj.element],e.cssClass))),this.updateCss(this.createTableButton,e),this.updateCss(this.editdlgObj,e);for(var n=[this.columnTextBox,this.rowTextBox,this.tableWidthNum,this.tableCellPadding,this.tableCellSpacing],i=0;i<n.length;i++)this.updateCss(n[i],e)},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(){t.isNullOrUndefined(this.contentModule)&&(this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),this.parent.on("tableColorPickerChanged",this.setBGColor,this),this.parent.on(J,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":case"Custom":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.keyUp=function(e){var n=e.args.target;"escape"===e.args.key.toLocaleLowerCase()&&n&&n.classList&&this.popupObj&&!t.closest(n,"[id='"+this.popupObj.element.id+"']")&&this.popupObj&&this.popupObj.hide()},n.prototype.keyDown=function(e){var n=e.args,i=this;switch(n.action){case"escape":break;case"insert-table":this.openDialog(!0,e),n.preventDefault()}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule&&"KeyK"!==n.code){var o=void 0,r=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),s=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(r)[0];if(s=s&&"TD"!==s.tagName&&"TH"!==s.tagName?s.parentElement:s,(8===n.keyCode||46===n.keyCode||n.ctrlKey&&88===n.keyCode)&&(s&&"TBODY"===s.tagName?(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule&&(o=this.parent.formatter.editorManager.nodeSelection.save(r,this.contentModule.getDocument())),n.preventDefault(),i.removeTable(o,n,!0)):s&&s.querySelectorAll("table").length>0&&(this.removeResizeElement(),this.hideTableQuickToolbar())),s&&"TD"!==s.tagName&&"TH"!==s.tagName){var a=t.closest(s,"td");s=!t.isNullOrUndefined(a)&&this.parent.inputElement.contains(a)?a:s}if(s&&("TD"===s.tagName||"TH"===s.tagName))switch(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule&&(o=this.parent.formatter.editorManager.nodeSelection.save(r,this.contentModule.getDocument())),n.keyCode){case 9:case 37:case 39:i.tabSelection(n,o,s);break;case 40:case 38:i.tableArrowNavigation(n,o,s)}}n.ctrlKey&&"a"===n.key&&this.handleSelectAll()},n.prototype.handleSelectAll=function(){this.cancelResizeAction();var e=this.parent.inputElement.querySelectorAll(".e-cell-select");t.removeClass(e,"e-cell-select")},n.prototype.tableModulekeyUp=function(e){if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule){var n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(n)[0];if((i=i&&"TD"!==i.tagName&&"TH"!==i.tagName?i.parentElement:i)&&"TD"!==i.tagName&&"TH"!==i.tagName){var o=t.closest(i,"td");i=!t.isNullOrUndefined(o)&&this.parent.inputElement.contains(o)?o:i}this.previousTableElement===i||t.isNullOrUndefined(this.previousTableElement)||this.previousTableElement.classList.remove("e-cell-select")}},n.prototype.openDialog=function(e,t){if(e||this.parent.contentModule.getEditPanel().focus(),"HTML"===this.parent.editorMode){var n=this.parent.contentModule.getDocument(),i=this.parent.formatter.editorManager.nodeSelection.getRange(n),o=this.parent.formatter.editorManager.nodeSelection.save(i,n),r={originalEvent:t?t.args:{action:"insert-table"},item:{command:"Table",subCommand:"CreateTable"},name:e?null:"showDialog"};this.insertTableDialog({self:this,args:r,selection:o})}},n.prototype.showDialog=function(){this.openDialog(!1),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.closeDialog=function(){this.editdlgObj&&this.editdlgObj.hide({returnValue:!0})},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");if("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(Ce)?this.parent.element.classList.remove(Ce):this.parent.element.classList.add(Ce),i.classList.contains(Ce)?i.classList.remove(Ce):i.classList.add(Ce)),e.args&&e.args.item.cssClass)for(var o=e.args.item.cssClass.split(" "),r=0;r<o.length;r++)i.classList.contains(o[r])?i.classList.remove(o[r]):i.classList.add(o[r]);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){this.previousTableElement=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?a.parentElement.nextSibling.firstChild:a.parentElement.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.getAnchorNode=function(e){var n=t.closest(e,"a");return n||e},n.prototype.editAreaClickHandler=function(n){if(!this.parent.readonly&&t.isNullOrUndefined(t.closest(n.args.target,".e-img-caption"))){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"),l=this.parent.getRange().startContainer.parentElement,d=this.parent.getRange().endContainer.parentElement,c=this.getAnchorNode(r);if(r&&"A"!==r.nodeName&&"A"!==c.nodeName&&"IMG"!==r.nodeName&&"VIDEO"!==r.nodeName&&!r.classList.contains("e-clickelem")&&"AUDIO"!==r.nodeName&&l===d&&("TD"===r.nodeName||"TH"===r.nodeName||"TABLE"===r.nodeName||a&&this.parent.contentModule.getEditPanel().contains(a))&&(3!==s.startContainer.nodeType||s.collapsed)){var p=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument());this.parent.formatter.editorManager.nodeSelection.save(p,this.contentModule.getDocument()),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());var h=void 0,u=void 0;t.Browser.isDevice&&n.args.touches?(h=this.parent.iframeSettings.enable?window.pageXOffset+this.parent.element.getBoundingClientRect().left+n.args.changedTouches[0].clientX:n.args.changedTouches[0].pageX,u=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+(this.parent.inlineMode.enable?0:this.parent.toolbarModule.getToolbarHeight())+n.args.changedTouches[0].clientY:n.args.changedTouches[0].pageY):(h=this.parent.iframeSettings.enable?window.pageXOffset+this.parent.element.getBoundingClientRect().left+i.clientX:i.pageX,u=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+this.parent.toolbarModule.getToolbarHeight()+i.clientY:i.pageY),this.quickToolObj.tableQTBar.showPopup(h,u,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={rows: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(J,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||(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.e-rte-table, table.e-rte-paste-table");t.isNullOrUndefined(this.curTable)||t.isNullOrUndefined(i)||i===this.curTable||!this.parent.contentModule.getEditPanel().contains(i)||(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=e.rows[this.calMaxCol(e)].cells,o=[],r=0;r<e.rows.length;r++)for(var s=0;s<e.rows[r].cells.length;s++)if(!e.rows[r].cells[s].hasAttribute("rowspan")){o.push(Array.prototype.slice.call(e.rows[r].cells,0,e.rows[r].cells.length)[s]);break}for(var a=parseInt(getComputedStyle(e).height,10),l=parseInt(getComputedStyle(e).width,10),d=this.calcPos(e),r=0;i.length>=r;r++){var c=this.parent.createElement("span",{attrs:{"data-col":r.toString(),unselectable:"on",contenteditable:"false"}});c.classList.add("e-rte-table-resize","e-column-resize"),i.length===r?c.style.cssText="height: "+a+"px; width: 4px; top: "+d.top+"px; left:"+(d.left+this.calcPos(i[r-1]).left+i[r-1].offsetWidth)+"px;":c.style.cssText="height: "+a+"px; width: 4px; top: "+d.top+"px; left:"+(d.left+this.calcPos(i[r]).left)+"px;",this.contentModule.getEditPanel().appendChild(c)}for(r=0;o.length>r;r++){var p=this.parent.createElement("span",{attrs:{"data-row":r.toString(),unselectable:"on",contenteditable:"false"}});p.classList.add("e-rte-table-resize","e-row-resize");var h=t.isNullOrUndefined(e.getAttribute("cellspacing"))&&""===e.getAttribute("cellspacing")?this.calcPos(o[r]).left:0;p.style.cssText="width: "+l+"px; height: 4px; top: "+(this.calcPos(o[r]).top+d.top+o[r].offsetHeight-2)+"px; left:"+(h+d.left)+"px;",this.contentModule.getEditPanel().appendChild(p)}var u=this.parent.createElement("span",{className:"e-table-box"+this.parent.getCssClass(!0),attrs:{"data-col":i.length.toString(),unselectable:"on",contenteditable:"false"}});u.style.cssText="top: "+(d.top+a-4)+"px; left:"+(d.left+l-4)+"px;",t.Browser.isDevice&&u.classList.add("e-rmob"),this.contentModule.getEditPanel().appendChild(u)},n.prototype.removeResizeElement=function(){var e=this.parent.contentModule.getEditPanel().querySelectorAll(".e-column-resize, .e-row-resize, .e-table-box, .e-table-rhelper");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,s=!1;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-rte-content"),s=!0),r&&r!==e&&1===r.nodeType&&(n=r.getBoundingClientRect()),s?(s=!1,{top:this.parent.inputElement&&this.parent.inputElement.scrollTop>0?this.parent.inputElement.scrollTop+i.top-n.top:i.top-n.top,left:this.parent.inputElement&&this.parent.inputElement.scrollLeft>0?this.parent.inputElement.scrollLeft+i.left-n.left:i.left-n.left}):{top:e.offsetTop,left:e.offsetLeft}},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,parseInt(i.getAttribute("data-col"),10)===this.curTable.rows[this.calMaxCol(this.curTable)].cells.length?(this.currentColumnResize="last",this.columnEle=this.curTable.rows[this.calMaxCol(this.curTable)].cells[parseInt(i.getAttribute("data-col"),10)-1]):(0===parseInt(i.getAttribute("data-col"),10)?this.currentColumnResize="first":this.currentColumnResize="middle",this.columnEle=this.curTable.rows[this.calMaxCol(this.curTable)].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={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"+this.parent.getCssClass(!0)}),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+("last"===this.currentColumnResize?this.columnEle.offsetWidth+2:0)-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+("last"===this.currentColumnResize?this.columnEle.offsetWidth+2:0)-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.calMaxCol=function(e){for(var t,n=0,i=0;i<e.rows.length;i++)n<e.rows[i].cells.length&&(t=i,n=e.rows[i].cells.length);return t},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,l,d,c=this.curTable.closest("td"),p={event:e,requestType:"table"},h=!1,u=!1;this.parent.trigger("resizing",p,function(i){if(i.cancel)n.cancelResizeAction();else{var o=n.contentModule.getEditPanel().querySelector(".e-table-box"),p=parseInt(getComputedStyle(n.curTable).width,10),m=parseInt(getComputedStyle(n.curTable).height,10),g=+getComputedStyle(n.contentModule.getEditPanel()).paddingRight.match(/\d/g).join(""),f=n.contentModule.getEditPanel().offsetWidth-(n.contentModule.getEditPanel().offsetWidth-n.contentModule.getEditPanel().clientWidth)-2*g,b=void 0;if(t.isNullOrUndefined(n.curTable.parentElement.closest("table"))||t.isNullOrUndefined(n.curTable.closest("td"))||!n.contentModule.getEditPanel().contains(n.curTable.closest("td")))b=f;else{var v=n.curTable.closest("td"),C=+getComputedStyle(v).paddingRight.match(/\d/g).join("");b=v.offsetWidth-(v.offsetWidth-v.clientWidth)-2*C}if(n.resizeBtnStat.column){var y=parseFloat(n.columnEle.offsetWidth.toString()),N="TH"===n.curTable.rows[0].cells[0].nodeName?1:0,S=void 0;S=""!==n.curTable.style.width&&n.curTable.style.width.includes("%")?parseFloat(n.curTable.style.width.split("%")[0]):n.getCurrentTableWidth(n.curTable.offsetWidth,n.parent.inputElement.offsetWidth);var E=parseFloat(n.curTable.rows[N].cells[n.colIndex>=n.curTable.rows[N].cells.length?n.curTable.rows[N].cells.length-1:n.colIndex].style.width.split("%")[0]);if("first"===n.currentColumnResize){if(r-=.75,n.removeResizeElement(),c&&(a=n.curTable.getBoundingClientRect().right-n.calcPos(c).left,n.curTable.style.maxWidth=a+"px"),(0!==r&&5<E||r<0)&&S<=100&&n.convertPixelToPercentage(p-r,b)<=100){var T=n.findFirstLastColCells(n.curTable,!0);n.curTable.style.width=n.convertPixelToPercentage(p-r,b)>100?"100%":n.convertPixelToPercentage(p-r,b)+"%";w=S-n.convertPixelToPercentage(p-r,b);n.currentMarginLeft=n.currentMarginLeft+w,n.curTable.style.marginLeft="calc("+("100%"===n.curTable.style.width?0:n.currentMarginLeft)+"%)";for(k=0;k<T.length;k++)n.curTable.rows[k].cells[n.colIndex].style.width=E-w+"%"}}else if("last"===n.currentColumnResize){if(r+=.75,n.removeResizeElement(),c&&(a=c.getBoundingClientRect().right-n.curTable.getBoundingClientRect().left,n.curTable.style.maxWidth=a+"px"),(0!==r&&5<E||r>0)&&S<=100&&n.convertPixelToPercentage(p+r,b)<=100){var O=n.findFirstLastColCells(n.curTable,!1);n.curTable.style.width=n.convertPixelToPercentage(p+r,b)>100?"100%":n.convertPixelToPercentage(p+r,b)+"%";for(var w=S-n.convertPixelToPercentage(p+r,b),k=0;k<O.length;k++)n.curTable.rows[k].cells[n.colIndex]&&(n.curTable.rows[k].cells[n.curTable.rows[k].cells.length===n.colIndex?n.colIndex-1:n.colIndex].style.width=E-w+"%")}}else for(var L=n.curTable.rows[n.calMaxCol(n.curTable)].cells,x=y-r,D=parseFloat(n.columnEle.offsetWidth.toString())+parseFloat(L[n.colIndex-1].offsetWidth.toString()),k=0;k<n.curTable.rows.length;k++){var M=n.curTable.rows[k];if(D-x>20&&x>20){var R=D-x,B=x,A=void 0,I=!1,P=void 0,U=void 0;u=!1,h=!1;for(var H=0;H<M.cells.length;H++)M.cells[H].hasAttribute("rowspan")&&H<=n.colIndex?(h=!0,l=k,d=M.cells[H]):M.cells[H].hasAttribute("colspan")&&H<=M.cells.length&&(u=!0,l=k,d=M.cells[H]);if(A=!t.isNullOrUndefined(M.cells[k])&&M.cells[k].hasAttribute("colspan")?parseInt(M.cells[k].getAttribute("colspan"),10)-1:n.colIndex,h||u){var j=void 0;M.cells.length<L.length?(A=M.cells.length===n.colIndex||M===n.curTable.rows[n.curTable.rows.length-1]?n.colIndex-1:n.colIndex,I=!(!(j=n.curTable.rows[t.isNullOrUndefined(l)?n.colIndex-1:l])||j===M||j.cells[n.colIndex-1]!==d&&j.cells[j.cells.length-1]!==d)):A=n.colIndex,P=I?j&&j.cells[j.cells.length-1]!==d?j.cells[n.colIndex-1]:M.cells[M.cells.length-1]:M.cells[A-1],U=I?U&&U.hasAttribute("rowspan")?j.cells[n.colIndex]:j&&j.cells[j.cells.length-1]!==d?M.cells[A-1]:j.cells[j.cells.length-1]:M.cells[A]}t.isNullOrUndefined(M.cells[A-1])||h||u?P&&(P.style.width=n.convertPixelToPercentage(R,p)+"%"):M.cells[A-1].style.width=n.convertPixelToPercentage(R,p)+"%",t.isNullOrUndefined(M.cells[A])||h||u?U&&(U.style.width=n.convertPixelToPercentage(B,p)+"%"):M.cells[A].style.width=n.convertPixelToPercentage(B,p)+"%"}}n.updateHelper()}else if(n.resizeBtnStat.row){n.parent.preventDefaultResize(e);var F=parseFloat(n.rowEle.clientHeight.toString())+s;F>20&&(n.rowEle.style.height=F+"px"),n.curTable.style.height="",t.isNullOrUndefined(o)||(o.style.cssText="top: "+(n.calcPos(n.curTable).top+m-4)+"px; left:"+(n.calcPos(n.curTable).left+p-4)+"px;"),n.updateHelper()}else if(n.resizeBtnStat.tableBox){if(c){var q=n.curTable.getBoundingClientRect().left-c.getBoundingClientRect().left;a=Math.abs(q-c.getBoundingClientRect().width)-5,n.curTable.style.maxWidth=a+"px"}var z=n.curTable.style.width.indexOf("%")>-1;n.curTable.style.width=z?n.convertPixelToPercentage(p+r,b)+"%":p+r+"px",n.curTable.style.height=m+s+"px",t.isNullOrUndefined(o)||(o.classList.add("e-rbox-select"),o.style.cssText="top: "+(n.calcPos(n.curTable).top+m-4)+"px; left:"+(n.calcPos(n.curTable).left+p-4)+"px;")}}})},n.prototype.getCurrentTableWidth=function(e,t){return e/t*100},n.prototype.findFirstLastColCells=function(e,t){for(var n=[],i=e.querySelectorAll("tr"),o=0;o<i.length;o++)if(i[o].closest("table")===e){var r=i[o].querySelectorAll("th, td");n.push(t?r[0]:r[r.length-1])}return n},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"))&&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={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(),null!==this.parent.inputElement.innerHTML&&""!==this.parent.inputElement.innerHTML||("DIV"===this.parent.enterKey?this.contentModule.getEditPanel().innerHTML="<div><br/></div>":"BR"===this.parent.enterKey?this.contentModule.getEditPanel().innerHTML="<br/>":this.contentModule.getEditPanel().innerHTML="<p><br/></p>"),this.removeResizeElement(),this.hideTableQuickToolbar()},n.prototype.renderDlgContent=function(e){var n=this,i=e.args.originalEvent.target;if(t.Browser.isDevice||this.parent.inlineMode.enable||!t.isNullOrUndefined(t.closest(i,".e-rte-text-popup")))return void this.insertTableDialog(e);if(this.popupObj)return void this.popupObj.hide();this.hideTableQuickToolbar();var r=this.l10n.getConstant("inserttablebtn");this.dlgDiv=this.parent.createElement("div",{className:"e-rte-table-popup"+this.parent.getCssClass(!0),id:this.rteID+"_table"}),this.tblHeader=this.parent.createElement("div",{className:"e-rte-popup-header"+this.parent.getCssClass(!0)}),this.tblHeader.innerHTML="1X1",this.dlgDiv.appendChild(this.tblHeader);var a=this.parent.createElement("div",{className:"e-rte-table-span"+this.parent.getCssClass(!0)});this.drawTable(a,e),this.dlgDiv.appendChild(a),this.dlgDiv.appendChild(this.parent.createElement("span",{className:"e-span-border"+this.parent.getCssClass(!0)}));var l=this.parent.createElement("button",{className:"e-insert-table-btn"+this.parent.getCssClass(!0),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(l),this.createTableButton=new s.Button({iconCss:"e-icons e-create-table",content:r,cssClass:"e-flat"+this.parent.getCssClass(!0),enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.createTableButton.isStringTemplate=!0,this.createTableButton.appendTo(l),t.EventHandler.add(l,"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"),t.isNullOrUndefined(this.parent.cssClass)||t.addClass([this.popupObj.element],this.parent.getCssClass()),this.popupObj.refreshPosition(d)},n.prototype.onIframeMouseDown=function(){this.popupObj&&this.popupObj.hide()},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.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.editdlgObj.hide()),this.parent.isBlur=!0,E(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.inputElement.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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),isPrimary:!0}},{click:function(e){t.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel"+this.parent.getCssClass(!0),content:o}}],cssClass:this.editdlgObj.cssClass+" e-rte-edit-table-prop-dialog"}),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 "+n.parent.cssClass,isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel "+n.parent.cssClass,content:r}}]}),t.isNullOrUndefined(n.parent.cssClass)||n.editdlgObj.setProperties({cssClass:n.parent.cssClass}),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"+this.parent.getCssClass(!0)}),i=T('<div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="tableColumn" class="e-table-column'+this.parent.getCssClass(!0)+'"/></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="tableRow" class="e-table-row'+this.parent.getCssClass(!0)+'" /></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,cssClass:this.parent.getCssClass()}),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:1e3,enableRtl:this.parent.enableRtl,locale:this.parent.locale,cssClass:this.parent.getCssClass()}),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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel"+this.parent.getCssClass(!0),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(),this.quickToolObj&&this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.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||!t.isNullOrUndefined(i.parent.quickToolbarSettings.text)?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"+this.parent.getCssClass(!0)}),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'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="tableWidth" class="e-table-width'+this.parent.getCssClass(!0)+'" /></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="cellPadding" class="e-cell-padding'+this.parent.getCssClass(!0)+'" /> </div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="cellSpacing" class="e-cell-spacing'+this.parent.getCssClass(!0)+'" /></div>');return a.appendChild(p),this.tableWidthNum=new r.NumericTextBox({format:"n0",min:0,value:l,placeholder:i,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.tableWidthNum.isStringTemplate=!0,this.tableWidthNum.appendTo(a.querySelector("#tableWidth")),this.tableCellPadding=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}),this.tableCellPadding.isStringTemplate=!0,this.tableCellPadding.appendTo(a.querySelector("#cellPadding")),this.tableCellSpacing=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}),this.tableCellSpacing.isStringTemplate=!0,this.tableCellSpacing.appendTo(a.querySelector("#cellSpacing")),a},n.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.getModuleName=function(){return"table"},n.prototype.afterKeyDown=function(e){var t=this;this.curTable&&setTimeout(function(){var e=document.createEvent("MouseEvents");e.initEvent("mouseover",!0,!0),t.curTable.dispatchEvent(e)},1)},n}(),ii=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(ne,this.moduleDestroy,this),this.parent.on(V,this.removeEventListener,this),this.parent.on("documentClickClosedBy",this.documentClickClosedBy,this))},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(V,this.removeEventListener),this.parent.off(ne,this.moduleDestroy),this.parent.off("documentClickClosedBy",this.documentClickClosedBy))},e.prototype.render=function(e){var n;return e.beforeOpen=this.beforeOpen.bind(this),e.open=this.open.bind(this),e.position={X:"center",Y:this.getDialogPosition()},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){if(e.element.classList.contains("e-dialog")){var n=t.closest(e.target,"form");t.isNullOrUndefined(n)||(this.dialogEle=e.element,this.dialogEle.addEventListener("keydown",this.handleEnterKeyDown))}this.parent.trigger("beforeDialogOpen",e,this.beforeOpenCallback.bind(this,e))},e.prototype.handleEnterKeyDown=function(e){"Enter"===e.code&&e.preventDefault()},e.prototype.beforeOpenCallback=function(e){e.cancel&&this.parent.notify("clearDialogObj",null)},e.prototype.open=function(e){this.parent.trigger("dialogOpen",e)},e.prototype.documentClickClosedBy=function(e){this.outsideClickClosedBy=e.closedBy},e.prototype.beforeClose=function(e){this.dialogEle&&this.dialogEle.removeEventListener("keydown",this.handleEnterKeyDown),e.closedBy="outside click"===this.outsideClickClosedBy?this.outsideClickClosedBy:e.closedBy,this.parent.trigger("beforeDialogClose",e,function(e){e.cancel||e.container.classList.contains("e-popup-close")&&(e.cancel=!0)}),this.outsideClickClosedBy=""},e.prototype.getDialogPosition=function(){var e=this.parent.element.getBoundingClientRect().top;if(e<0){for(var t=0,n=this.parent.element;"BODY"!==n.nodeName;){var i=n.getBoundingClientRect().top;i>0&&(t=i),n=n.parentElement}return(e=Math.abs(e)+t).toString()}return"top"},e.prototype.close=function(e){this.parent.trigger("dialogClose",e)},e.prototype.moduleDestroy=function(){this.parent=null},e}(),oi={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"},insertAudio:{command:"Audios",subCommand:"Audio"},insertVideo:{command:"Videos",subCommand:"Video"},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"},copyFormatPainter:{command:"FormatPainter",value:"format-copy"},applyFormatPainter:{command:"FormatPainter",value:"format-paste"},escapeFormatPainter:{command:"FormatPainter",value:"escape"}},ri=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)}}(),si=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},ai=function(n){function i(){return null!==n&&n.apply(this,arguments)||this}return ri(i,n),si([t.Property(!0)],i.prototype,"enable",void 0),si([t.Property(!0)],i.prototype,"enableFloating",void 0),si([t.Property(e.ToolbarType.Expand)],i.prototype,"type",void 0),si([t.Property(ze)],i.prototype,"items",void 0),si([t.Property({})],i.prototype,"itemConfigs",void 0),i}(t.ChildProperty),li=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property([".jpeg",".jpg",".png"])],n.prototype,"allowedTypes",void 0),si([t.Property("inline")],n.prototype,"display",void 0),si([t.Property("Blob")],n.prototype,"saveFormat",void 0),si([t.Property("auto")],n.prototype,"width",void 0),si([t.Property("auto")],n.prototype,"height",void 0),si([t.Property(null)],n.prototype,"saveUrl",void 0),si([t.Property(null)],n.prototype,"path",void 0),si([t.Property(!0)],n.prototype,"resize",void 0),si([t.Property(null)],n.prototype,"removeUrl",void 0),si([t.Property(0)],n.prototype,"minWidth",void 0),si([t.Property(null)],n.prototype,"maxWidth",void 0),si([t.Property(0)],n.prototype,"minHeight",void 0),si([t.Property(null)],n.prototype,"maxHeight",void 0),si([t.Property(!1)],n.prototype,"resizeByPercent",void 0),n}(t.ChildProperty),di=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property([".wav",".mp3",".m4a",".wma"])],n.prototype,"allowedTypes",void 0),si([t.Property("Inline")],n.prototype,"layoutOption",void 0),si([t.Property("Blob")],n.prototype,"saveFormat",void 0),si([t.Property(null)],n.prototype,"saveUrl",void 0),si([t.Property(null)],n.prototype,"removeUrl",void 0),si([t.Property(null)],n.prototype,"path",void 0),n}(t.ChildProperty),ci=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property([".mp4",".mov",".wmv",".avi"])],n.prototype,"allowedTypes",void 0),si([t.Property("Inline")],n.prototype,"layoutOption",void 0),si([t.Property("Blob")],n.prototype,"saveFormat",void 0),si([t.Property("auto")],n.prototype,"width",void 0),si([t.Property("auto")],n.prototype,"height",void 0),si([t.Property(null)],n.prototype,"saveUrl",void 0),si([t.Property(null)],n.prototype,"path",void 0),si([t.Property(!0)],n.prototype,"resize",void 0),si([t.Property(null)],n.prototype,"removeUrl",void 0),si([t.Property(0)],n.prototype,"minWidth",void 0),si([t.Property(null)],n.prototype,"maxWidth",void 0),si([t.Property(0)],n.prototype,"minHeight",void 0),si([t.Property(null)],n.prototype,"maxHeight",void 0),si([t.Property(!1)],n.prototype,"resizeByPercent",void 0),n}(t.ChildProperty),pi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Event()],n.prototype,"beforeSend",void 0),si([t.Complex({getImageUrl:null,url:null,uploadUrl:null},a.AjaxSettings)],n.prototype,"ajaxSettings",void 0),si([t.Property(!1)],n.prototype,"allowDragAndDrop",void 0),si([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),si([t.Property("")],n.prototype,"cssClass",void 0),si([t.Complex({},a.DetailsViewSettings)],n.prototype,"detailsViewSettings",void 0),si([t.Property(!1)],n.prototype,"enable",void 0),si([t.Complex({maxWidth:"650px",minWidth:"240px",visible:!0},a.NavigationPaneSettings)],n.prototype,"navigationPaneSettings",void 0),si([t.Property("/")],n.prototype,"path",void 0),si([t.Property(null)],n.prototype,"rootAliasName",void 0),si([t.Complex({},a.SearchSettings)],n.prototype,"searchSettings",void 0),si([t.Property(!0)],n.prototype,"showFileExtension",void 0),si([t.Property(!1)],n.prototype,"showHiddenItems",void 0),si([t.Property(!0)],n.prototype,"showThumbnail",void 0),si([t.Property("Ascending")],n.prototype,"sortOrder",void 0),si([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),si([t.Complex({autoUpload:!0,minFileSize:0,maxFileSize:3e7,allowedExtensions:"",autoClose:!1},a.UploadSettings)],n.prototype,"uploadSettings",void 0),si([t.Property("LargeIcons")],n.prototype,"view",void 0),n}(t.ChildProperty),hi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property("100%")],n.prototype,"width",void 0),si([t.Property(qe)],n.prototype,"styles",void 0),si([t.Property(!0)],n.prototype,"resize",void 0),si([t.Property(0)],n.prototype,"minWidth",void 0),si([t.Property(null)],n.prototype,"maxWidth",void 0),n}(t.ChildProperty),ui=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property(!0)],n.prototype,"enable",void 0),si([t.Property(!1)],n.prototype,"showOnRightClick",void 0),si([t.Property("hide")],n.prototype,"actionOnScroll",void 0),si([t.Property(["Open","Edit","UnLink"])],n.prototype,"link",void 0),si([t.Property(["Replace","Align","Caption","Remove","-","InsertLink","OpenImageLink","EditImageLink","RemoveImageLink","Display","AltText","Dimension"])],n.prototype,"image",void 0),si([t.Property(["AudioReplace","AudioRemove","AudioLayoutOption"])],n.prototype,"audio",void 0),si([t.Property(["VideoReplace","VideoAlign","VideoRemove","VideoLayoutOption","VideoDimension"])],n.prototype,"video",void 0),si([t.Property(null)],n.prototype,"text",void 0),si([t.Property(["TableHeader","TableRows","TableColumns","BackgroundColor","-","TableRemove","Alignments","TableCellVerticalAlign","Styles"])],n.prototype,"table",void 0),n}(t.ChildProperty),mi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property("b; em; font; sub; sup; kbd; i; s; u; code; strong; span; p; div; h1; h2; h3; h4; h5; h6; blockquote; ol; ul; li; pre;")],n.prototype,"allowedFormats",void 0),si([t.Property(null)],n.prototype,"deniedFormats",void 0),n}(t.ChildProperty),gi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property(Je)],n.prototype,"iconsSet",void 0),si([t.Property(!0)],n.prototype,"showSearchBox",void 0),n}(t.ChildProperty),fi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property(!1)],n.prototype,"prompt",void 0),si([t.Property(null)],n.prototype,"deniedAttrs",void 0),si([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","list-style-type","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),si([t.Property(null)],n.prototype,"deniedTags",void 0),si([t.Property(!0)],n.prototype,"keepFormat",void 0),si([t.Property(!1)],n.prototype,"plainText",void 0),n}(t.ChildProperty),bi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property(null)],n.prototype,"default",void 0),si([t.Property("65px")],n.prototype,"width",void 0),si([t.Property(_e)],n.prototype,"items",void 0),n}(t.ChildProperty),vi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property(null)],n.prototype,"default",void 0),si([t.Property("35px")],n.prototype,"width",void 0),si([t.Property(Ve)],n.prototype,"items",void 0),n}(t.ChildProperty),Ci=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property(null)],n.prototype,"default",void 0),si([t.Property("65px")],n.prototype,"width",void 0),si([t.Property(Qe)],n.prototype,"types",void 0),n}(t.ChildProperty),yi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property("#ff0000")],n.prototype,"default",void 0),si([t.Property("Palette")],n.prototype,"mode",void 0),si([t.Property(10)],n.prototype,"columns",void 0),si([t.Property(We)],n.prototype,"colorCode",void 0),si([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),Ni=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property("#ffff00")],n.prototype,"default",void 0),si([t.Property("Palette")],n.prototype,"mode",void 0),si([t.Property(10)],n.prototype,"columns",void 0),si([t.Property(Ke)],n.prototype,"colorCode",void 0),si([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),Si=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property(Ge)],n.prototype,"types",void 0),n}(t.ChildProperty),Ei=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return ri(n,e),si([t.Property(Xe)],n.prototype,"types",void 0),n}(t.ChildProperty),Ti=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)}}(),Oi=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},wi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Ti(n,e),Oi([t.Property([])],n.prototype,"styles",void 0),Oi([t.Property([])],n.prototype,"scripts",void 0),n}(t.ChildProperty),ki=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Ti(n,e),Oi([t.Property(!1)],n.prototype,"enable",void 0),Oi([t.Property(null)],n.prototype,"attributes",void 0),Oi([t.Complex({},wi)],n.prototype,"resources",void 0),n}(t.ChildProperty),Li=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)}}(),xi=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},Di=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Li(n,e),xi([t.Property(!1)],n.prototype,"enable",void 0),xi([t.Property(!0)],n.prototype,"onSelection",void 0),n}(t.ChildProperty),Mi=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("enterHandler",this.enterHandler,this),this.parent.on(V,this.destroy,this),this.parent.on(ne,this.moduleDestroy,this)},e.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},e.prototype.moduleDestroy=function(){this.parent=null},e.prototype.removeEventListener=function(){this.parent.off("enterHandler",this.enterHandler),this.parent.off(V,this.destroy),this.parent.off(ne,this.moduleDestroy)},e.prototype.getRangeNode=function(){this.range=this.parent.getRange(),this.startNode="#text"===this.range.startContainer.nodeName?this.range.startContainer.parentElement:this.range.startContainer,this.endNode="#text"===this.range.endContainer.nodeName?this.range.endContainer.parentElement:this.range.endContainer},e.prototype.enterHandler=function(e){var n=this;this.getRangeNode();var i=!0;if(this.formatTags=["h1","h2","h3","h4","h5","h6","blockquote"],!t.isNullOrUndefined(this.startNode.closest("TABLE"))&&!t.isNullOrUndefined(this.endNode.closest("TABLE"))){i=!1;for(var o=this.startNode,r=o;!this.parent.formatter.editorManager.domNode.isBlockNode(o);)r=o=o.parentElement;i="TD"!==r.tagName&&"TBODY"!==r.tagName}if(13===e.args.which&&!e.args.ctrlKey&&(t.Browser.isDevice?"Enter"===e.args.key:"Enter"===e.args.code)&&t.isNullOrUndefined(this.startNode.closest("LI, UL, OL"))&&t.isNullOrUndefined(this.endNode.closest("LI, UL, OL"))&&i&&t.isNullOrUndefined(this.startNode.closest("PRE"))&&t.isNullOrUndefined(this.endNode.closest("PRE"))){var s=e.args.shiftKey,a={cancel:!1,name:G,requestType:s?"ShiftEnterAction":"EnterAction",originalEvent:e.args};this.parent.trigger(G,a,function(o){if(!o.cancel){if(n.range.startOffset!==n.range.endOffset||n.range.startContainer!==n.range.endContainer)if("SPAN"===n.range.startContainer.nodeName&&(n.range.startContainer.classList.contains("e-video-wrap")||n.range.startContainer.classList.contains("e-audio-wrap"))||n.range.deleteContents(),"#text"===n.range.startContainer.nodeName&&0===n.range.startContainer.textContent.length&&n.range.startContainer.parentElement!==n.parent.inputElement)"BR"===n.parent.enterKey?n.range.startContainer.parentElement.innerHTML="​":n.range.startContainer.parentElement.innerHTML="<br>";else if(n.range.startContainer===n.parent.inputElement&&""===n.range.startContainer.innerHTML){n.range.startContainer.innerHTML="<br>";C=n.range.startContainer.childNodes[n.range.startOffset];n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),C,0)}else if(n.parent.inputElement===n.range.startContainer){if("#text"===(C=n.range.startContainer.childNodes[n.range.startOffset]).nodeName&&0===C.textContent.length)n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),C,0===C.textContent.length?0:C.previousSibling.textContent.length);else if(n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),C,C.textContent.length>=0?0:1),0===C.previousSibling.textContent.length){if(t.detach(C.previousSibling),!s){for(m=t.isNullOrUndefined(C.lastChild)?C:C.lastChild;!t.isNullOrUndefined(m)&&"#text"!==m.nodeName&&"BR"!==m.nodeName;)m=m.lastChild;"BR"!==m.nodeName&&0===m.parentElement.textContent.length&&0===m.parentElement.innerHTML.length&&"BR"!==m.parentElement.nodeName&&m.parentElement.appendChild(n.parent.createElement("BR")),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),"BR"===m.nodeName?m:m.parentElement,m.parentElement.textContent.length>=0||"BR"===m.nodeName?0:1)}}else if(0===C.textContent.length){for(m="#text"===C.previousSibling.nodeName?C.previousSibling:C.previousSibling.lastChild;!t.isNullOrUndefined(m)&&"#text"!==m.nodeName;)m=m.lastChild;n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),m,m.textContent.length),t.detach(C)}else if("BR"!==n.parent.enterKey&&0!==C.previousSibling.textContent.length&&0!==C.textContent.length)return void e.args.preventDefault();n.getRangeNode()}if(n.range.startContainer===n.range.endContainer&&n.range.startOffset===n.range.endOffset&&n.range.startContainer===n.parent.inputElement){if(1!==n.parent.inputElement.childNodes.length||"TABLE"!==n.parent.inputElement.childNodes[0].nodeName)if(t.isNullOrUndefined(n.range.startContainer.childNodes[n.range.startOffset])){for(var r=n.range.startContainer.childNodes[n.range.startOffset-1];null!==r.lastChild&&"#text"!==r.nodeName;)r=r.lastChild;n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),r,"BR"===r.nodeName?0:r.textContent.length)}else n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),n.range.startContainer.childNodes[n.range.startOffset],0);n.getRangeNode()}if("P"===n.parent.enterKey&&!s||"DIV"===n.parent.enterKey&&!s||"P"===n.parent.shiftEnterKey&&s||"DIV"===n.parent.shiftEnterKey&&s){if(1===n.range.startOffset&&1===n.parent.inputElement.childNodes.length&&"TABLE"===n.parent.inputElement.childNodes[0].nodeName)(h=n.createInsertElement(s)).appendChild(n.parent.createElement("BR")),n.parent.inputElement.appendChild(h),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),h,0);else{var a=void 0;a=i&&n.parent.formatter.editorManager.domNode.isBlockNode(n.startNode)?n.startNode:n.parent.formatter.editorManager.domNode.blockParentNode(n.startNode);var l=!1,d=!1;if(0===n.range.startOffset||0===n.range.endOffset||n.range.startContainer!==n.range.endContainer||!t.isNullOrUndefined(a.childNodes[0])&&("IMG"===a.childNodes[0].nodeName||a.querySelectorAll("img, audio, video").length>0))0===n.range.startOffset&&0===n.range.endOffset&&(d=!0);else{var c=n.range.startContainer.textContent.substring(0,n.range.startOffset);160!==c.charCodeAt(n.range.startOffset-1)&&0===c.trim().length&&(d=!0)}if(n.removeBRElement(a),!(-1!==t.Browser.userAgent.indexOf("Firefox")&&0===n.range.startOffset&&n.range.startContainer===n.range.endContainer&&"#text"===n.range.startContainer.nodeName&&!n.parent.formatter.editorManager.domNode.isBlockNode(n.range.startContainer.previousSibling)&&n.range.startContainer.parentElement===n.range.startContainer.previousSibling.parentElement)&&(0===n.range.startOffset&&0===n.range.endOffset||d)&&(t.isNullOrUndefined(n.range.startContainer.previousSibling)||"IMG"!==n.range.startContainer.previousSibling.nodeName&&"BR"!==n.range.startContainer.previousSibling.nodeName)){var p=void 0,h=void 0;t.isNullOrUndefined(n.range.startContainer.childNodes)||0!==n.range.startContainer.textContent.length&&("#text"===n.range.startContainer.nodeName||t.isNullOrUndefined(n.range.startContainer.querySelector(".e-video-clickelem"))||0!==n.range.startContainer.querySelector(".e-video-clickelem").textContent.length)||!(n.range.startContainer.querySelectorAll("img, audio, video").length>0)&&t.isNullOrUndefined(n.range.startContainer.querySelector(".e-video-clickelem"))&&"IMG"!==n.range.startContainer.nodeName&&"TABLE"!==n.range.startContainer.nodeName?0!==a.textContent.trim().length||"IMG"===a.childNodes[0].nodeName||""===a.textContent.trim()&&a.querySelectorAll("img, audio, video").length>0?(n.range.startOffset===n.range.endOffset&&0!==n.range.startOffset?h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!1).cloneNode(!0):(h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0).cloneNode(!0),l=!0),p=!1):(h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0).cloneNode(!0),p=!0):(h=n.createInsertElement(s),l=!0,p=!1);var u=void 0;for(u=n.formatTags.indexOf(h.nodeName.toLocaleLowerCase())<0?n.createInsertElement(s):n.parent.createElement(h.nodeName);h.firstChild;)u.appendChild(h.firstChild);if(a.parentElement.insertBefore(u,a),!p){var m=u,g=void 0;if(n.range.startOffset===n.range.endOffset&&0!==n.range.startOffset)for(;!t.isNullOrUndefined(m)&&"#text"!==m.nodeName&&"BR"!==m.nodeName;)g=m,m=m.lastChild;else g=m;g.innerHTML="<br>",l||t.detach(a)}n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),u.nextElementSibling,0)}else if(0!==a.textContent.length||(!t.isNullOrUndefined(a.childNodes[0])&&"IMG"===a.childNodes[0].nodeName||a.querySelectorAll("video").length>0||a.querySelectorAll("audio").length>0||a.querySelectorAll("img").length>0))if(n.range.startContainer===n.range.endContainer&&"SPAN"===n.range.startContainer.nodeName&&(n.range.startContainer.classList.contains("e-video-wrap")||n.range.startContainer.classList.contains("e-audio-wrap"))){if(a.textContent.trim().length>0){for(var h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0),f=t.isNullOrUndefined(h.previousSibling.querySelector(".e-video-wrap"))?h.previousSibling.querySelector(".e-audio-wrap"):h.previousSibling.querySelector(".e-video-wrap"),b=!1,v=f.previousSibling;!t.isNullOrUndefined(v)&&"#text"!==v.nodeName;)v=v.lastChild;if(t.isNullOrUndefined(v)){y=n.parent.createElement("br");f.parentElement.appendChild(y),b=!0}b?n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),f.parentElement,0):n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),v,v.textContent.length),t.detach(f)}else{for(var C=(h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0)).previousSibling;!t.isNullOrUndefined(C.firstChild);)t.detach(C.firstChild);y=n.parent.createElement("br");C.appendChild(y),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),C,0)}t.isNullOrUndefined(n.parent.audioModule)||n.parent.audioModule.hideAudioQuickToolbar(),t.isNullOrUndefined(n.parent.videoModule)||n.parent.videoModule.hideVideoQuickToolbar()}else{h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0);if(t.isNullOrUndefined(h.childNodes[0])||"#text"!==h.childNodes[0].nodeName||0!==h.childNodes[0].textContent.length||t.detach(h.childNodes[0]),0===h.textContent.trim().length){var y=n.parent.createElement("br");if("A"===n.startNode.nodeName){var N=n.startNode.parentElement;n.startNode.parentElement.insertBefore(y,n.startNode),t.detach(n.startNode),n.startNode=N}else"BR"!==n.startNode.nodeName&&n.startNode.appendChild(y);"\n"===h.childNodes[0].textContent&&t.detach(h.childNodes[0]),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),n.startNode,0)}if(("P"===n.parent.enterKey||"DIV"===n.parent.enterKey)&&!s||("DIV"===n.parent.shiftEnterKey||"P"===n.parent.shiftEnterKey)&&s){var S=n.formatTags.indexOf(h.nodeName.toLocaleLowerCase());if(S<0||S>=0&&0===h.textContent.trim().length){for(var E=n.createInsertElement(s);h.firstChild;)E.appendChild(h.firstChild);n.parent.formatter.editorManager.domNode.insertAfter(E,h),t.detach(h),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),n.parent.formatter.editorManager.domNode.isBlockNode(n.startNode)?E:n.startNode,0)}}}else if(t.isNullOrUndefined(a.children[0])||"BR"===a.children[0].tagName)(u=n.createInsertElement(s)).innerHTML="<br>",n.parent.formatter.editorManager.domNode.insertAfter(u,a),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),u,0);else{h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!1).cloneNode(!0);n.parent.formatter.editorManager.domNode.insertAfter(h,a),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),h,h.textContent.length>=0?0:1)}}e.args.preventDefault()}if("BR"===n.parent.enterKey&&!s||"BR"===n.parent.shiftEnterKey&&s){var T=void 0;if(n.parent.formatter.editorManager.domNode.isBlockNode(n.startNode))T=n.startNode;else{for(var O=n.startNode,w=O;!n.parent.formatter.editorManager.domNode.isBlockNode(O);)w=O,O=O.parentElement;T=O===n.parent.inputElement?w:O}n.removeBRElement(T);for(var k=T.lastChild;!t.isNullOrUndefined(k)&&"#text"!==k.nodeName&&"BR"!==k.nodeName&&"IMG"!==k.nodeName;)k=k.lastChild;var L=n.range.startContainer===k?n.range.startContainer.textContent.length:T.textContent.length,x="IMG"===n.range.startContainer.nodeName||n.range.startContainer.childNodes.length>0&&"IMG"===n.range.startContainer.childNodes[n.range.startOffset].nodeName;if(T!==n.parent.inputElement&&n.parent.formatter.editorManager.domNode.isBlockNode(T)&&n.range.startOffset===n.range.endOffset&&(n.range.startOffset===L||0===T.textContent.trim().length&&x)){var D=n.parent.createElement("br");if(0===n.range.startOffset&&"TABLE"===n.range.startContainer.nodeName)n.range.startContainer.parentElement.insertBefore(D,n.range.startContainer);else if("BR"===k.nodeName&&0===T.textContent.length)n.parent.formatter.editorManager.domNode.insertAfter(D,k);else if(0===n.range.startOffset&&0===n.range.endOffset&&x){var M="IMG"===n.range.startContainer.nodeName?n.range.startContainer:n.range.startContainer.childNodes[n.range.startOffset];T.insertBefore(D,M),D=M}else{var R=n.parent.createElement("br");n.parent.formatter.editorManager.domNode.insertAfter(D,n.range.startContainer),n.parent.formatter.editorManager.domNode.insertAfter(R,n.range.startContainer)}n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),D,0)}else if(t.isNullOrUndefined(T)||T===n.parent.inputElement||"BR"===T.nodeName)n.insertBRElement();else if(0===T.textContent.trim().length||1===T.textContent.trim().length&&8203===T.textContent.charCodeAt(0)){h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,T,!0).cloneNode(!0);n.parent.formatter.editorManager.domNode.insertAfter(h,T);B=n.parent.createElement("br");h.parentElement.insertBefore(B,h),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),h,0)}else{var h=void 0,B=n.parent.createElement("br");if(0!==n.range.startOffset||0!==n.range.endOffset||t.isNullOrUndefined(T.previousSibling)||"BR"!==T.previousSibling.nodeName||"P"===T.nodeName||"DIV"===T.nodeName)n.insertBRElement();else{h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,T,!1).cloneNode(!0),n.parent.formatter.editorManager.domNode.insertAfter(B,T),n.insertFocusContent();for(m=B.nextSibling;!t.isNullOrUndefined(m)&&"#text"!==m.nodeName;)m=m.lastChild;n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),m,0)}}e.args.preventDefault()}n.parent.trigger("actionComplete",{requestType:s?"ShiftEnterAction":"EnterAction",args:e.args})}})}},e.prototype.removeBRElement=function(e){-1!==t.Browser.userAgent.indexOf("Firefox")&&this.range.endOffset===e.textContent.length&&(0!==e.textContent.length||e.querySelectorAll("BR").length>1)&&!t.isNullOrUndefined(e.lastChild)&&"BR"===e.lastChild.nodeName&&t.detach(e.lastChild)},e.prototype.insertBRElement=function(){var e=!1,n=!0;0===this.range.endContainer.textContent.length&&"BR"===this.range.startContainer.nodeName&&(n=!1);var i=this.parent.createElement("br");if("BR"===this.startNode.nodeName&&"BR"===this.endNode.nodeName&&0===this.range.startOffset&&this.range.startOffset===this.range.endOffset?(this.parent.formatter.editorManager.domNode.insertAfter(i,this.startNode),e=!0):(this.startNode!==this.parent.inputElement||t.isNullOrUndefined(this.range.startContainer.previousSibling)||"BR"!==this.range.startContainer.previousSibling.nodeName||0!==this.range.startContainer.textContent.length||(e=!0),this.range.insertNode(i)),e||!t.isNullOrUndefined(i.nextElementSibling)&&"BR"===i.nextElementSibling.tagName||!t.isNullOrUndefined(i.nextSibling)&&i.nextSibling.textContent.length>0)this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),!t.isNullOrUndefined(i.nextSibling)&&n?i.nextSibling:i,0),e=!1;else{var o=this.parent.createElement("br");this.range.insertNode(o),this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),i,0)}},e.prototype.insertFocusContent=function(){0===this.range.startContainer.textContent.length&&("#text"===this.range.startContainer.nodeName?this.range.startContainer.parentElement.innerHTML="​":this.range.startContainer.innerHTML="​")},e.prototype.createInsertElement=function(e){var n;"DIV"===this.parent.enterKey&&!e||"DIV"===this.parent.shiftEnterKey&&e?n=this.parent.createElement("div"):("P"===this.parent.enterKey&&!e||"P"===this.parent.shiftEnterKey&&e)&&(n=this.parent.createElement("p"));var i=this.parent.formatter.editorManager.domNode.blockNodes()[0].previousSibling,o=this.parent.formatter.editorManager.domNode.blockNodes()[0].nextSibling;return!t.isNullOrUndefined(i)&&i.hasAttribute("style")&&n.setAttribute("style",i.getAttribute("style")),t.isNullOrUndefined(i)&&!t.isNullOrUndefined(o)&&o.hasAttribute("style")&&n.setAttribute("style",o.getAttribute("style")),n},e}(),Ri=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)}}(),Bi=function(){return(Bi=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)},Ai=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},Ii=function(n){function i(e,t){var i=n.call(this,e,t)||this;return i.needsID=!0,i}return Ri(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]}),e.push({member:"audio",args:[this,this.serviceLocator]}),e.push({member:"video",args:[this,this.serviceLocator]}),e.push({member:"formatPainter",args:[this]}),e.push({member:"emojiPicker",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("."+ve),ve),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.initializeValue=function(){this.isFocusOut=!1,this.isRTE=!1,this.isBlur=!0,this.defaultResetValue=null,this.isResizeInitialized=!1},i.prototype.preRender=function(){this.initializeValue(),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 dt,this.initializeServices(),this.setContainer(),this.persistData(),t.setStyleAttribute(this.element,{width:t.formatUnit(this.width)}),t.attributes(this.element,{role:"application","aria-label":"Rich Text Editor"})},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.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.element.innerHTML="",this.element.parentElement.insertBefore(o,this.element),this.valueContainer=this.element,t.removeClass([this.valueContainer],this.element.getAttribute("class").split(" ")),this.element=o}else this.valueContainer=this.createElement("textarea",{id:this.getID()+"-value",attrs:{"aria-labelledby":this.getID()}});if(this.valueContainer.name=this.getID(),t.addClass([this.valueContainer],"e-rte-hidden"),!t.isNullOrUndefined(this.cssClass))for(var r=this.cssClass.split(" "),s=0;s<r.length;s++)t.addClass([this.valueContainer],r[s]);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.showEmojiPicker=function(e,t){this.readonly||this.notify("emojiPicker",{x:e,y:t})},i.prototype.executeCommand=function(e,n,i){n=this.htmlPurifier(e,n);var o;if("HTML"===this.editorMode){var r=this.getRange();this.iframeSettings.enable&&this.formatter.editorManager.nodeSelection.Clear(this.element.ownerDocument),(!(!this.iframeSettings.enable||r.startContainer!==this.inputElement)||!this.inputElement.contains(r.startContainer))&&this.focusIn()}var s=oi[""+e];if(i&&i.undo&&i.undo&&0===this.formatter.getUndoRedoStack().length&&this.formatter.saveData(),-1!==this.maxLength&&!t.isNullOrUndefined(s.command)){var a=0;if("Links"===s.command&&(a=0===n.text.length?n.url.length:n.text.length),"Images"!==s.command&&"Table"!==s.command&&"Files"!==s.command||(a=1),"InsertHTML"===s.command)if(t.isNullOrUndefined(n))t.isNullOrUndefined(s.value)||"<hr/>"!==s.value&&"<br/>"!==s.value||(a=1);else{var l=this.createElement("div");l.innerHTML=n,a=l.textContent.length}"InsertText"===s.command&&(a=n.length);var d=this.getText().trim().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length-this.getSelection().length+a;if(!(-1===this.maxLength||d<=this.maxLength))return}o=n,"FormatPainter"===s.command&&(t.isNullOrUndefined(n)||(this.formatPainterSettings=n),o={formatPainterAction:s.value}),this.formatter.editorManager.execCommand(s.command,s.subCommand?s.subCommand:o||s.value,null,null,o||s.value,o||s.value),i&&i.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=(r=this.createElement("img",{attrs:{src:n.url}})).outerHTML;this.enableHtmlSanitizer&&(i=this.htmlEditorModule.sanitizeHelper(r.outerHTML));a=""!==i&&this.createElement("div",{innerHTML:i}).firstElementChild.getAttribute("src")||null;a=t.isNullOrUndefined(a)?"":a,n.url=a,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"insertAudio":var o=this.createElement("audio",{attrs:{controls:""}}),r=this.createElement("source",{attrs:{src:n.url,type:n.url&&n.url.split(".").length>0?"audio/"+n.url.split(".")[n.url.split(".").length-1]:""}});o.appendChild(r);s=o.outerHTML;this.enableHtmlSanitizer&&(s=this.htmlEditorModule.sanitizeHelper(o.outerHTML));a=""!==s&&this.createElement("div",{innerHTML:s}).firstElementChild.firstElementChild.getAttribute("src")||null;a=t.isNullOrUndefined(a)?"":a,n.url=a;break;case"insertVideo":var o=this.createElement("video",{attrs:{controls:""}}),r=this.createElement("source",{attrs:{src:n.url,type:n.url&&n.url.split(".").length>0?"video/"+n.url.split(".")[n.url.split(".").length-1]:""}});o.appendChild(r);var s=o.outerHTML;this.enableHtmlSanitizer&&(s=this.htmlEditorModule.sanitizeHelper(r.outerHTML));var a=""!==s&&this.createElement("div",{innerHTML:s}).firstElementChild.getAttribute("src")||null;a=t.isNullOrUndefined(a)?"":a,n.url=a,t.isNullOrUndefined(n.width)&&(n.width={minWidth:this.insertVideoSettings.minWidth,maxWidth:this.insertVideoSettings.maxWidth,width:this.insertVideoSettings.width}),t.isNullOrUndefined(n.height)&&(n.height={minHeight:this.insertVideoSettings.minHeight,maxHeight:this.insertVideoSettings.maxHeight,height:this.insertVideoSettings.height});break;case"createLink":var l=this.createElement("a",{attrs:{href:n.url}}),d=l.outerHTML;this.enableHtmlSanitizer&&(d=this.htmlEditorModule.sanitizeHelper(l.outerHTML));var c=""!==d&&this.createElement("div",{innerHTML:d}).firstElementChild.getAttribute("href")||null;c=t.isNullOrUndefined(c)?"":c,n.url=c}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="Markdown"===this.editorMode||t.isNullOrUndefined(this.value)?this.value:this.addAnchorAriaLabel(this.value),this.value&&!this.valueTemplate&&this.setProperties({value:this.serializeValue(this.value)},!0),this.renderModule=new Yn(this,this.serviceLocator),this.sourceCodeModule=new ti(this,this.serviceLocator),this.notify("initial-load",{}),this.trigger("load"),this.RTERender();new Ot(this);this.notify(_,{}),this.enableXhtml&&this.setProperties({value:this.getXhtml()},!0),this.toolbarSettings.enable&&("Expand"===this.toolbarSettings.type||"MultiRow"===this.toolbarSettings.type||"Scrollable"===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.valueContainer.defaultValue=this.value),this.enabled&&!this.readonly?this.eventInitializer():this.unWireEvents(),this.notify(ie,{cssClass:this.getCssClass()}),this.addAudioVideoWrapper(),this.notify("tableclass",{}),this.renderComplete()},i.prototype.addAudioVideoWrapper=function(){for(var e,n=this,i=this.element.querySelectorAll("audio"),o=0;o<i.length;o++)if(i[o].classList.contains("e-rte-audio")||(i[o].classList.add("e-rte-audio"),i[o].classList.add("e-audio-inline")),!i[o].parentElement.classList.contains("e-clickelem")&&!i[o].parentElement.classList.contains("e-audio-wrap")){var r=this.createElement("span",{className:"e-audio-wrap"});r.setAttribute("style","width:300px; margin:0 auto;"),r.contentEditable="false";var s=this.createElement("span",{className:"e-clickelem"});r.appendChild(s),i[o].parentNode.insertBefore(r,i[o].nextSibling),s.appendChild(i[o]),null===r.nextElementSibling&&(e=this.createElement("br"),r.parentNode.insertBefore(e,r.nextSibling))}for(var a=this.element.querySelectorAll("video"),o=0;o<a.length;o++){if(a[o].classList.contains("e-rte-video")||(a[o].classList.add("e-rte-video"),a[o].classList.add("e-video-inline")),!a[o].parentElement.classList.contains("e-clickelem")&&!a[o].parentElement.classList.contains("e-video-wrap")){var l=this.createElement("span",{className:"e-video-wrap"});l.contentEditable="false",a[o].parentNode.insertBefore(l,a[o].nextSibling),l.appendChild(a[o]),null===l.nextElementSibling&&(e=this.createElement("br"),l.parentNode.insertBefore(e,l.nextSibling))}-1!==t.Browser.userAgent.indexOf("Firefox")&&(a[o].addEventListener("play",function(e){n.notify(J,{args:e}),n.notify("editAreaClick",{args:e})}),a[o].addEventListener("pause",function(e){n.notify(J,{args:e}),n.notify("editAreaClick",{args:e})}))}},i.prototype.eventInitializer=function(){this.wireEvents()},i.prototype.cleanList=function(e){var n=this.getRange(),i=n.startContainer,o=n.endContainer,r=n.startOffset,s=i===o,a=(o.textContent.length,"#text"===n.endContainer.nodeName?n.endContainer.parentElement:n.endContainer),l=t.closest(a,"LI"),d=!1,c=n.endOffset;if(o.nodeType===Node.TEXT_NODE&&"\ufeff"===o.textContent.charAt(c-1)&&c--,!t.isNullOrUndefined(l)&&a.textContent.trim().length===c&&!n.collapsed&&t.isNullOrUndefined(a.nextElementSibling)){for(var p=0;p<l.childNodes.length;p++)"#text"===l.childNodes[p].nodeName&&0===l.childNodes[p].textContent.trim().length&&(t.detach(l.childNodes[p]),d=!0,p--);for(var h=l;null!==h.lastChild&&"#text"!==h.nodeName;)h=h.lastChild;if(d){var u="BR"!==h.nodeName||t.isNullOrUndefined(h.previousSibling)?h:h.previousSibling;this.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),s?u:i,u,r,"BR"===u.nodeName?0:u.textContent.length)}}},i.prototype.keyDown=function(e){if(this.notify(K,{member:"keydown",args:e}),this.restrict(e),"HTML"===this.editorMode&&this.cleanList(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)}}var p=!!t.isNullOrUndefined(e.action)||"format-copy"!==e.action;if(0===this.formatter.getUndoRedoStack().length&&p&&!(e.altKey||e.shiftKey||e.altKey&&e.shiftKey&&67==e.which)&&this.formatter.saveData(),"insert-link"!==e.action&&"format-copy"!==e.action&&"format-paste"!==e.action&&(!e.target||!e.target.classList.contains("e-mention")||t.isNullOrUndefined(document.querySelector("#"+e.target.id+"_popup.e-popup-open"))||"Tab"!==e.code)&&(e.action&&"paste"!==e.action&&"space"!==e.action||9===e.which||"Backspace"===e.code&&8===e.which)){var h=!1;switch(t.isNullOrUndefined(this.formatPainterModule)||(h="escape"===this.formatPainterModule.previousAction),h||("HTML"!==this.editorMode||"increase-fontsize"!==e.action&&"decrease-fontsize"!==e.action?this.formatter.process(this,null,e):this.notify("onHandleFontsizeChange",{member:"onHandleFontsizeChange",args:e})),e.action){case"toolbar-focus":if(this.toolbarSettings.enable&&this.getToolbarElement()){var u=this.getToolbarElement().querySelector(".e-toolbar-item:not(.e-overlay)[title]");u.firstElementChild.removeAttribute("tabindex"),u.firstElementChild.focus()}break;case"escape":this.contentModule.getEditPanel().focus()}}t.isNullOrUndefined(this.placeholder)||(t.isNullOrUndefined(this.placeHolderWrapper)||1===this.inputElement.textContent.length?this.iframeSettings.enable&&this.inputElement.classList.contains("e-rte-placeholder")?t.removeClass([this.inputElement],"e-rte-placeholder"):this.setPlaceHolder():this.placeHolderWrapper.style.display="none"),this.notify("afterKeyDown",{member:"afterKeyDown",args:e}),this.autoResize()},i.prototype.keyUp=function(e){if("HTML"===this.editorMode){var n=this.getRange();if(-1!==t.Browser.userAgent.indexOf("Firefox")&&"#text"===n.startContainer.nodeName&&n.startContainer.parentElement===this.inputElement&&"BR"!==this.enterKey){var i=this.getRange(),o=this.createElement(this.enterKey);i.startContainer.parentElement.insertBefore(o,i.startContainer),o.appendChild(i.startContainer),this.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),o.childNodes[0],o.childNodes[0],o.childNodes[0].textContent.length,o.childNodes[0].textContent.length)}}this.notify(W,{member:"keyup",args:e}),39!==e.keyCode&&37!==e.keyCode||this.notify("tableModulekeyUp",{member:"tableModulekeyUp",args:e}),"KeyX"!==e.code||88!==e.which||88!==e.keyCode||!e.ctrlKey||""!==this.inputElement.innerHTML&&"<br>"!==this.inputElement.innerHTML||(this.inputElement.innerHTML=k(x(this),this));var r=32===e.which||13===e.which||8===e.which||46===e.which,s="C"===e.key&&e.altKey&&e.shiftKey,a="V"===e.key&&e.altKey&&e.shiftKey;(!s&&!a&&("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||r)||"Markdown"===this.editorMode&&("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||r)||this.autoSaveOnIdle&&t.Browser.isDevice&&!this.inlineMode.enable)&&this.formatter.onKeyHandler(this,e),(this.inputElement&&0!==this.inputElement.textContent.length||this.element.querySelectorAll(".e-toolbar-item.e-active").length>0||this.formatter.getUndoRedoStack().length>0)&&this.notify("toolbar-refresh",{args:e}),t.isNullOrUndefined(this.placeholder)||"Enter"===e.key&&13===e.keyCode||"<p><br></p>"!==this.inputElement.innerHTML&&"<div><br></div>"!==this.inputElement.innerHTML&&"<br>"!==this.inputElement.innerHTML||this.setPlaceHolder()},i.prototype.serializeValue=function(e){return"HTML"!==this.editorMode||t.isNullOrUndefined(e)||(this.enableHtmlEncode?(e=this.htmlEditorModule.sanitizeHelper(M(e)),e=this.encode(e)):(e=this.htmlEditorModule.sanitizeHelper(e),e=this.enableXhtml?this.htmlEditorModule.xhtmlValidation.selfEncloseValidation(e):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:D(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)||e.target&&("VIDEO"===e.target.nodeName||e.target.querySelectorAll(".e-video-wrap").length>0)||e.target&&"BR"!==e.target.nodeName&&(e.target.classList.contains("e-audio-wrap")||e.target.classList.contains("e-clickelem")||e.target.classList.contains("e-video-clickelem")))&&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}this.notifyMouseUp(e)},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(G,i,function(i){var o=n.getText().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length-n.getSelection().length+(t.isNullOrUndefined(e)||t.isNullOrUndefined(e.clipboardData)?0:e.clipboardData.getData("text/plain").replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length);if("Markdown"===n.editorMode){var r={requestType:"Paste",editorMode:n.editorMode,event:e};return setTimeout(function(){n.formatter.onSuccess(n,r)},0),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 s={requestType:"Paste",editorMode:n.editorMode,event:e},a=null,l=!1;e&&!t.isNullOrUndefined(e.clipboardData)&&(a=e.clipboardData.getData("text/plain"),l=e.clipboardData.getData("text/html").indexOf("MsoNormal")>0);var d=e&&e.clipboardData&&e.clipboardData.items.length>0?e.clipboardData.items[0].getAsFile():null;null!==a&&n.notify(Z,{file:d,args:e,text:a,isWordPaste:l}),setTimeout(function(){n.formatter.onSuccess(n,s)},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(t.isNullOrUndefined(this.timeInterval)||(clearInterval(this.timeInterval),this.timeInterval=null),null===this.element.offsetParent)return t.isNullOrUndefined(this.toolbarModule)||this.toolbarModule.destroy(),this.notify(ne,{}),n.prototype.destroy.call(this),void(this.isRendered=!1);if(this.notify(V,{}),this.destroyDependentModules(),this.unWireEvents(),"TEXTAREA"===this.originalElement.tagName){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()?(this.valueContainer.value=this.originalElement.innerHTML.trim(),this.setProperties({value:t.isNullOrUndefined(this.initialValue)?null:this.initialValue},!0)):this.valueContainer.value=this.valueContainer.defaultValue,this.element=this.valueContainer;for(i=0;i<this.originalElement.classList.length;i++)t.addClass([this.element],this.originalElement.classList[i]);if(!t.isNullOrUndefined(this.cssClass))for(var e=this.cssClass.split(" "),i=0;i<e.length;i++)t.addClass([this.element],e[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 o=this.cssClass.split(" "),i=0;i<o.length;i++)""!==o[i].trim()&&t.removeClass([this.element],o[i]);this.removeHtmlAttributes(),this.removeAttributes(),n.prototype.destroy.call(this),this.isRendered=!1}},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.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"enterKey":case"value":var a=void 0;a="enterKey"===s?null===this.value||"<div><br></div>"===this.value||"<p><br></p>"===this.value||"<br>"===this.value?null:this.value:e[s],a=this.serializeValue(a);var l="HTML"===this.editorMode?k(a,this):a;(!t.isNullOrUndefined(a)&&""!==a||"enterKey"===s)&&this.setProperties({value:this.enableHtmlEncode?this.encode(M(l)):l},!0),this.updatePanelValue(),this.inputElement&&this.notify("tableclass",{}),this.setPlaceHolder(),this.notify("xhtmlValidation",{module:"XhtmlValidation",newProp:e,oldProp:i}),this.enableXhtml&&this.setProperties({value:this.getXhtml()},!0),this.showCharCount&&this.countModule.refresh(),this.addAudioVideoWrapper();break;case"valueTemplate":this.setValue(!0),this.showCharCount&&this.countModule.refresh();break;case"width":this.setWidth(e[s]),this.toolbarSettings.enable&&!this.inlineMode.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]),this.notify(ie,{cssClass:e[s],oldCssClass:i[s]});break;case"enabled":this.setEnable();break;case"enableRtl":this.updateRTL();break;case"placeholder":this.placeholder=e[s],this.setPlaceHolder();break;case"htmlAttributes":z(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(Q,{module:"quickToolbar",newProp:e,oldProp:i}),this.setContentHeight();break;case"toolbarSettings":this.notify(Q,{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(Q,{newProp:e,oldProp:i});break;case"formatPainterSettings":this.formatter.editorManager.observer.notify("model_changed",{module:"formatPainter",newProp:e});break;default:this.notify(Q,{newProp:e,oldProp:i})}}},i.prototype.updateValueData=function(){this.enableHtmlEncode?this.setProperties({value:this.encode(M(this.inputElement.innerHTML))},!0):this.setProperties({value:/<[a-z][\s\S]*>/i.test(this.inputElement.innerHTML)?this.inputElement.innerHTML:M(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?M(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.replace("&","&").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?"DIV"===this.enterKey?this.inputElement.innerHTML="<div><br/></div>":"BR"===this.enterKey?this.inputElement.innerHTML="<br/>":(this.inputElement.innerHTML="<p><br/></p>",""===e&&this.formatter&&this.inputElement&&this.formatter.editorManager.nodeSelection.setCursorPoint(this.contentModule.getDocument(),this.inputElement.firstElementChild,this.inputElement.firstElementChild.childElementCount)):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.cssClass}),this.inputElement&&this.inputElement.parentElement.insertBefore(this.placeHolderWrapper,this.inputElement),t.attributes(this.placeHolderWrapper,{style:"font-size: 14px; margin-left: 0px; margin-right: 0px;"})),this.placeHolderWrapper.innerHTML=this.placeholder,!(0===this.inputElement.textContent.length&&this.inputElement.childNodes.length<2)||t.isNullOrUndefined(this.inputElement.firstChild)||"BR"!==this.inputElement.firstChild.nodeName&&("P"!==this.inputElement.firstChild.nodeName&&"DIV"!==this.inputElement.firstChild.nodeName||t.isNullOrUndefined(this.inputElement.firstChild.firstChild)||"BR"!==this.inputElement.firstChild.firstChild.nodeName)?this.placeHolderWrapper.style.display="none":this.placeHolderWrapper.style.display="block"):this.inputElement.setAttribute("placeholder",this.placeholder)),this.placeholder&&this.iframeSettings.enable&&(!(0===this.inputElement.textContent.length&&this.inputElement.childNodes.length<2)||t.isNullOrUndefined(this.inputElement.firstChild)||"BR"!==this.inputElement.firstChild.nodeName&&("P"!==this.inputElement.firstChild.nodeName&&"DIV"!==this.inputElement.firstChild.nodeName||t.isNullOrUndefined(this.inputElement.firstChild.firstChild)||"BR"!==this.inputElement.firstChild.firstChild.nodeName)?t.removeClass([this.inputElement],"e-rte-placeholder"):(t.addClass([this.inputElement],"e-rte-placeholder"),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(ee,{enableRtl:this.enableRtl}),this.enableRtl?(this.element.classList.add("e-rtl"),this.inputElement.classList.add("e-rtl")):(this.element.classList.remove("e-rtl"),this.inputElement.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.unWireEvents()):this.enabled&&this.wireEvents())},i.prototype.print=function(){var e,n=this,i={element:this.inputElement,requestType:"print",cancel:!1};this.trigger(G,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 ct),this.serviceLocator.register("rteLocale",this.localeObj=new t.L10n(this.getModuleName(),$e,this.locale)),this.serviceLocator.register("dialogRenderObject",new ii(this))},i.prototype.RTERender=function(){var n=this.serviceLocator.getService("rendererFactory");this.contentModule=n.getRenderer(e.RenderType.Content),this.fullScreenModule=new Kn(this),this.enterKeyModule=new Mi(this),this.renderModule.render(),this.inputElement=this.contentModule.getEditPanel(),this.setHeight(this.height),z(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(M(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&&z(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.setValue=function(e){var n=this;if(this.valueTemplate){var i=new RegExp(/<(?=.*? .*?\/ ?>|br|hr|input|!--|wbr)[a-z]+.*?>|<([a-z]+).*?<\/\1>/i);if("string"==typeof this.valueTemplate&&i.test(this.valueTemplate))this.setProperties({value:this.valueTemplate});else{var o=t.compile(this.valueTemplate)("",this,"valueTemplate");if("string"!=typeof this.valueTemplate&&this.isReact){this.displayTempElem=this.createElement("div");for(s=0;s<o.length;s++){a=o[s];t.append([a],this.displayTempElem)}this.renderTemplates(function(){n.inputElement.innerHTML=n.displayTempElem.childNodes[0].innerHTML,n.setProperties({value:n.inputElement.innerHTML.trim()})})}else{var r=this.element;e&&(this.inputElement.innerHTML="",r=this.inputElement);for(var s=0;s<o.length;s++){var a=o[s];t.append([a],r)}this.setProperties({value:r.innerHTML.trim()}),this.renderReactTemplates()}}}else{var l=!t.isNullOrUndefined(this.element.innerHTML)&&this.element.innerHTML.replace(/<(\/?|\!?)(!--!--)>/g,"").trim();""!==l&&("TEXTAREA"===this.element.tagName?this.setProperties({value:M(l)}):this.setProperties({value:l}))}},i.prototype.renderTemplates=function(e){this.renderReactTemplates(e)},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.getInsertVidMaxWidth=function(){var e=this.insertVideoSettings.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=0,a="string"==typeof this.height&&this.height.indexOf("%")>-1,l=this.sourceCodeModule.getPanel()&&"block"===this.sourceCodeModule.getPanel().parentElement.style.display?this.sourceCodeModule.getPanel().parentElement:this.contentModule.getPanel(),d=this.element.offsetHeight;0!==d||"auto"===this.height||this.getToolbar()||(d=parseInt(this.height,10),a&&(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?(o="auto"===this.height&&0===h?"auto":d-(c+u+h)+"px",s=this.toolbarSettings.enableFloating?0:u):o="auto"!==this.height||this.element.classList.contains("e-rte-full-screen")||this.isResizeInitialized?a&&r?r:d-(c+h)+"px":"auto",("windowResize"!==n||a)&&(this.iframeSettings.enable?"auto"!==o&&t.setStyleAttribute(l,{height:o,marginTop:s+"px"}):("windowResize"===n&&a&&(o=parseInt(o,10)-2+"px"),t.setStyleAttribute(l,{height:o,marginTop:s+"px"}))),this.iframeSettings.enable&&"sourceCode"===n){var m=t.select(".e-rte-content",this.element);t.setStyleAttribute(m,{height:o,marginTop:s+"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(){var e=this.removeResizeElement(this.contentModule.getEditPanel().innerHTML);return!this.enableXhtml||"<p><br></p>"!==e&&"<div><br></div>"!==e&&"<br>"!==e?this.serializeValue(e):null},i.prototype.getXhtml=function(){var e=this.removeResizeElement(this.value);return!t.isNullOrUndefined(e)&&this.enableXhtml&&(e=this.htmlEditorModule.xhtmlValidation.selfEncloseValidation(e)),e},i.prototype.showSourceCode=function(){this.readonly||this.notify("sourceCode",{})},i.prototype.getCharCount=function(){var e="Markdown"===this.editorMode?this.inputElement.value.trim():this.inputElement.textContent.trim();return"Markdown"!==this.editorMode&&-1!==e.indexOf("")?e.replace(/\u200B/g,"").length:e.length},i.prototype.showDialog=function(t){t===e.DialogType.InsertLink?this.notify("showLinkDialog",{}):t===e.DialogType.InsertImage?this.notify("showImageDialog",{}):t===e.DialogType.InsertAudio?this.notify("showAudioDialog",{}):t===e.DialogType.InsertVideo?this.notify("showVideoDialog",{}):t===e.DialogType.InsertTable&&this.notify("showTableDialog",{})},i.prototype.closeDialog=function(t){t===e.DialogType.InsertLink?this.notify("closeLinkDialog",{}):t===e.DialogType.InsertImage?this.notify("closeImageDialog",{}):t===e.DialogType.InsertAudio?this.notify("closeAudioDialog",{}):t===e.DialogType.InsertVideo?this.notify("closeVideoDialog",{}):t===e.DialogType.InsertTable&&this.notify("closeTableDialog",{})},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.getCssClass=function(e){return t.isNullOrUndefined(this.cssClass)?"":e?" "+this.cssClass:this.cssClass},i.prototype.mouseDownHandler=function(e){var n=e.touches?e.changedTouches[0]:e;t.addClass([this.element],["e-focused"]),this.preventDefaultResize(e),this.notify(J,{args:e}),this.formatter.editorManager.observer.notify(J,{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")),!0!==this.iframeSettings.enable&&(this.contentModule.getPanel().style.borderBottom="none"),this.setContentHeight("windowResize",e),this.notify("resize",null)},i.prototype.scrollHandler=function(e){this.element&&this.notify($,{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||"<div><br></div>"===this.inputElement.innerHTML||"<br>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(M(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(!this.readonly){var r=this.getCurrentFocus(e);"editArea"!==r&&"textArea"!==r&&"sourceCode"!==r||this.resetToolbarTabIndex()}},i.prototype.getUpdatedValue=function(){var e,t=this.element.querySelector(".e-rte-srctextarea");return"HTML"===this.editorMode?(e="<p><br></p>"===this.inputElement.innerHTML||"<div><br></div>"===this.inputElement.innerHTML||"<br>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(M(this.removeResizeElement(this.inputElement.innerHTML))):this.inputElement.innerHTML,t&&"block"===t.style.display&&(e=t.value)):e=""===this.inputElement.value?null:this.inputElement.value,null==e||this.enableHtmlEncode||(e=this.removeResizeElement(e)),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.isValueChangeBlurhandler=!1,this.invokeChangeEvent())},i.prototype.updateIntervalValue=function(){clearTimeout(this.idleInterval),this.idleInterval=setTimeout(this.updateValueOnIdle.bind(this),0)},i.prototype.cleanupResizeElements=function(e){var t=this.removeResizeElement(e.value);e.callBack(t)},i.prototype.addAnchorAriaLabel=function(e){var t=document.createElement("div");t.innerHTML=e;var n=t.querySelectorAll("a");if(n.length>0)for(var i=0;i<n.length;i++)n[i].hasAttribute("target")&&"_blank"===n[i].getAttribute("target")?n[i].setAttribute("aria-label",this.serviceLocator.getService("rteLocale").getConstant("linkAriaLabel")):n[i];return t.innerHTML},i.prototype.removeResizeElement=function(e){var n=document.createElement("div");n.innerHTML=e;var i=n.querySelectorAll(".e-column-resize, .e-row-resize, .e-table-box, .e-table-rhelper, .e-img-resize");if(i.length>0)for(var o=0;o<i.length;o++)t.detach(i[o]);return this.removeSelectionClassStates(n),n.innerHTML},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,"."+le);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}),"msie"!==t.Browser.info.name&&e.detail>3&&e.preventDefault()},i.prototype.blurHandler=function(e){var n=e.relatedTarget;if(n){var i=t.closest(n,"."+le);i&&i===this.element?(this.isBlur=!1,n===this.getToolbarElement()&&n.setAttribute("tabindex","-1")):t.closest(n,'[aria-owns="'+this.getID()+'"]')||t.closest(n,".e-rte-elements")?this.isBlur=!1:(this.isBlur=!0,n=null)}if(this.isBlur&&t.isNullOrUndefined(n)){t.removeClass([this.element],["e-focused"]),this.removeSelectionClassStates(this.inputElement),this.notify("focusChange",{});var o=this.getUpdatedValue();this.setProperties({value:o}),this.valueContainer.value=this.value,this.notify("toolbar-refresh",{args:e,documentNode:document}),this.isValueChangeBlurhandler=!0,this.invokeChangeEvent(),this.isFocusOut=!0,this.isBlur=!1,E(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.isNullOrUndefined(this.placeHolderWrapper)&&this.element.querySelector("[title = Preview]")&&(this.placeHolderWrapper.style.display="none"),t.EventHandler.remove(document,"mousedown",this.onDocumentClick)}else this.isRTE=!0;this.readonly||"outside"!==this.getCurrentFocus(e)||this.resetToolbarTabIndex()},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,isInteracted:this.isValueChangeBlurhandler};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.inputElement,"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.inputElement,"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: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=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.on("cleanupResizeElements",this.cleanupResizeElements,this),this.on("updateValueOnIdle",this.updateValueOnIdle,this),this.readonly&&this.enabled||this.bindEvents()},i.prototype.restrict=function(e){if(this.maxLength>=0){var t="Markdown"===this.editorMode?this.contentModule.getText():this.getText().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"");if(!t)return;for(var 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 ft(this.inputElement,{keyAction:this.keyDown.bind(this),keyConfigs:Bi({},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,"content-changed",this.contentChanged,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.currentTarget=e.target,this.notify("iframe-click",e)},i.prototype.editorKeyDown=function(e){switch(e.event.action){case"copy":this.onCopy();break;case"cut":this.onCut();break;case"tab":this.iframeSettings.enable&&(this.isBlur=!0)}!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.off("cleanupResizeElements",this.cleanupResizeElements),this.off("updateValueOnIdle",this.updateValueOnIdle),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,"content-changed",this.contentChanged),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()},i.prototype.getCurrentFocus=function(e){return e.target===this.inputElement&&document.activeElement===this.inputElement?"editArea":e.target===this.getToolbarElement()||!t.isNullOrUndefined(e.relatedTarget)&&t.closest(e.relatedTarget,".e-rte-toolbar")===this.getToolbarElement()?"toolbar":e.target===this.valueContainer&&document.activeElement===this.valueContainer?"textArea":!t.isNullOrUndefined(e.target)&&e.target.classList.contains("e-rte-srctextarea")&&document.activeElement===e.target?"sourceCode":"outside"},i.prototype.resetToolbarTabIndex=function(){if(this.getToolbarElement())for(var e=this.getToolbarElement().querySelectorAll("input,select,button,a,[tabindex]"),t=0;t<e.length;t++)e[t].classList.contains("e-rte-dropdown-btn")||e[t].classList.contains("e-insert-table-btn")||e[t].hasAttribute("tabindex")&&"-1"===e[t].getAttribute("tabindex")||e[t].setAttribute("tabindex","-1")},i.prototype.removeSelectionClassStates=function(e){for(var n=["e-img-focus","e-cell-select","e-video-focus","e-audio-focus"],i=0;i<n.length;i++){var o=e.querySelectorAll("."+n[i]);if(t.removeClass(o,n[i]),0!==o.length)for(var r=0;r<o.length;r++)0===o[r].classList.length&&o[r].removeAttribute("class")}},Ai([t.Complex({},ai)],i.prototype,"toolbarSettings",void 0),Ai([t.Complex({},ui)],i.prototype,"quickToolbarSettings",void 0),Ai([t.Complex({},fi)],i.prototype,"pasteCleanupSettings",void 0),Ai([t.Complex({},mi)],i.prototype,"formatPainterSettings",void 0),Ai([t.Complex({},gi)],i.prototype,"emojiPickerSettings",void 0),Ai([t.Complex({},ki)],i.prototype,"iframeSettings",void 0),Ai([t.Complex({},li)],i.prototype,"insertImageSettings",void 0),Ai([t.Complex({},di)],i.prototype,"insertAudioSettings",void 0),Ai([t.Complex({},ci)],i.prototype,"insertVideoSettings",void 0),Ai([t.Complex({},hi)],i.prototype,"tableSettings",void 0),Ai([t.Property(0)],i.prototype,"floatingToolbarOffset",void 0),Ai([t.Complex({},Di)],i.prototype,"inlineMode",void 0),Ai([t.Complex({},pi)],i.prototype,"fileManagerSettings",void 0),Ai([t.Property("100%")],i.prototype,"width",void 0),Ai([t.Property(!1)],i.prototype,"enablePersistence",void 0),Ai([t.Property(!0)],i.prototype,"showTooltip",void 0),Ai([t.Property(!1)],i.prototype,"enableResize",void 0),Ai([t.Property({})],i.prototype,"htmlAttributes",void 0),Ai([t.Property(null)],i.prototype,"placeholder",void 0),Ai([t.Property(!1)],i.prototype,"autoSaveOnIdle",void 0),Ai([t.Property(!1)],i.prototype,"readonly",void 0),Ai([t.Property(!0)],i.prototype,"enabled",void 0),Ai([t.Property(!0)],i.prototype,"enableHtmlSanitizer",void 0),Ai([t.Property(!1)],i.prototype,"enableHtmlEncode",void 0),Ai([t.Property(!1)],i.prototype,"enableXhtml",void 0),Ai([t.Property("auto")],i.prototype,"height",void 0),Ai([t.Property(null)],i.prototype,"cssClass",void 0),Ai([t.Property(null)],i.prototype,"value",void 0),Ai([t.Property("P")],i.prototype,"enterKey",void 0),Ai([t.Property("BR")],i.prototype,"shiftEnterKey",void 0),Ai([t.Property(30)],i.prototype,"undoRedoSteps",void 0),Ai([t.Property(300)],i.prototype,"undoRedoTimer",void 0),Ai([t.Property("HTML")],i.prototype,"editorMode",void 0),Ai([t.Property(null)],i.prototype,"keyConfig",void 0),Ai([t.Property(!1)],i.prototype,"showCharCount",void 0),Ai([t.Property(!1)],i.prototype,"enableTabKey",void 0),Ai([t.Property(!1)],i.prototype,"enableAutoUrl",void 0),Ai([t.Property(-1)],i.prototype,"maxLength",void 0),Ai([t.Complex({},Ci)],i.prototype,"format",void 0),Ai([t.Complex({},Si)],i.prototype,"numberFormatList",void 0),Ai([t.Complex({},Ei)],i.prototype,"bulletFormatList",void 0),Ai([t.Complex({},bi)],i.prototype,"fontFamily",void 0),Ai([t.Complex({},vi)],i.prototype,"fontSize",void 0),Ai([t.Complex({},yi)],i.prototype,"fontColor",void 0),Ai([t.Complex({},Ni)],i.prototype,"backgroundColor",void 0),Ai([t.Property(null)],i.prototype,"valueTemplate",void 0),Ai([t.Property(1e4)],i.prototype,"saveInterval",void 0),Ai([t.Event()],i.prototype,"actionBegin",void 0),Ai([t.Event()],i.prototype,"actionComplete",void 0),Ai([t.Event()],i.prototype,"beforeDialogOpen",void 0),Ai([t.Event()],i.prototype,"dialogOpen",void 0),Ai([t.Event()],i.prototype,"beforeDialogClose",void 0),Ai([t.Event()],i.prototype,"dialogClose",void 0),Ai([t.Event()],i.prototype,"beforeQuickToolbarOpen",void 0),Ai([t.Event()],i.prototype,"quickToolbarOpen",void 0),Ai([t.Event()],i.prototype,"quickToolbarClose",void 0),Ai([t.Event()],i.prototype,"toolbarStatusUpdate",void 0),Ai([t.Event()],i.prototype,"updatedToolbarStatus",void 0),Ai([t.Event()],i.prototype,"imageSelected",void 0),Ai([t.Event()],i.prototype,"beforeImageUpload",void 0),Ai([t.Event()],i.prototype,"imageUploading",void 0),Ai([t.Event()],i.prototype,"imageUploadSuccess",void 0),Ai([t.Event()],i.prototype,"imageUploadFailed",void 0),Ai([t.Event()],i.prototype,"imageRemoving",void 0),Ai([t.Event()],i.prototype,"afterImageDelete",void 0),Ai([t.Event()],i.prototype,"fileSelected",void 0),Ai([t.Event()],i.prototype,"beforeFileUpload",void 0),Ai([t.Event()],i.prototype,"fileUploading",void 0),Ai([t.Event()],i.prototype,"fileUploadSuccess",void 0),Ai([t.Event()],i.prototype,"fileUploadFailed",void 0),Ai([t.Event()],i.prototype,"fileRemoving",void 0),Ai([t.Event()],i.prototype,"afterMediaDelete",void 0),Ai([t.Event()],i.prototype,"created",void 0),Ai([t.Event()],i.prototype,"destroyed",void 0),Ai([t.Event()],i.prototype,"beforeSanitizeHtml",void 0),Ai([t.Event()],i.prototype,"blur",void 0),Ai([t.Event()],i.prototype,"toolbarClick",void 0),Ai([t.Event()],i.prototype,"focus",void 0),Ai([t.Event()],i.prototype,"change",void 0),Ai([t.Event()],i.prototype,"resizing",void 0),Ai([t.Event()],i.prototype,"resizeStart",void 0),Ai([t.Event()],i.prototype,"resizeStop",void 0),Ai([t.Event()],i.prototype,"beforePasteCleanup",void 0),Ai([t.Event()],i.prototype,"afterPasteCleanup",void 0),Ai([t.Event()],i.prototype,"beforeImageDrop",void 0),Ai([t.Property(null)],i.prototype,"formatter",void 0),i=Ai([t.NotifyPropertyChanges],i)}(t.Component);return Ii.Inject(ht,Jn,$n,Zn,ei,Nt,yt,_n,Kt,ni,Vn,Qn,Wn,Gn,Xn),e.Toolbar=ht,e.KeyboardEvents=ft,e.BaseToolbar=at,e.BaseQuickToolbar=vt,e.QuickToolbar=yt,e.Count=Nt,e.ColorPickerInput=bt,e.MarkdownToolbarStatus=Tt,e.ExecCommandCallBack=Ot,e.ToolbarAction=pt,e.MarkdownEditor=Kt,e.HtmlEditor=_n,e.PasteCleanup=Vn,e.Resize=Qn,e.DropDownButtons=lt,e.FileManager=Wn,e.FullScreen=Kn,e.setAttributes=z,e.HtmlToolbarStatus=Hn,e.XhtmlValidation=zn,e.FormatPainter=Gn,e.EmojiPicker=Xn,e.HTMLFormatter=Un,e.Formatter=wt,e.MarkdownFormatter=Qt,e.ContentRender=jn,e.Render=Yn,e.ToolbarRenderer=st,e.Link=Jn,e.Image=$n,e.Audio=Zn,e.Video=ei,e.ViewSource=ti,e.Table=ni,e.DialogRenderer=ii,e.IframeContentRender=qn,e.MarkdownRender=Wt,e.PopupRenderer=Ct,e.RichTextEditor=Ii,e.executeGroup=oi,e.created="create",e.destroyed="destroy",e.tableclass="tableclass",e.load="load",e.initialLoad="initial-load",e.contentChanged="content-changed",e.initialEnd=_,e.iframeMouseDown="iframe-click",e.destroy=V,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=Q,e.tableModulekeyUp="tableModulekeyUp",e.keyUp=W,e.keyDown=K,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.audioToolbarAction="audio-toolbar-action",e.videoToolbarAction="video-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=G,e.actionComplete="actionComplete",e.updatedToolbarStatus="updatedToolbarStatus",e.actionSuccess="actionSuccess",e.updateToolbarItem="updateToolbarItem",e.insertImage="insertImage",e.insertAudio="insertAudio",e.insertVideo="insertVideo",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.audioDelete="delete",e.videoDelete="delete",e.imageCaption="caption",e.imageSize="imageSize",e.videoSize="videoSize",e.sourceCode="sourceCode",e.updateSource="updateSource",e.toolbarOpen="toolbarOpen",e.beforeDropDownOpen="beforeDropDownOpen",e.selectionSave=X,e.selectionRestore=Y,e.expandPopupClick="expandPopupClick",e.count="count",e.contentFocus="contentFocus",e.contentBlur="contentBlur",e.mouseDown=J,e.sourceCodeMouseDown="sourceCodeMouseDown",e.editAreaClick="editAreaClick",e.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=Z,e.imgModule="imageModule",e.rtlMode=ee,e.createTable="createTable",e.docClick="docClick",e.tableToolbarAction="table-toolbar-action",e.checkUndo=te,e.readOnlyMode="readOnlyMode",e.moduleDestroy=ne,e.pasteClean="pasteClean",e.enterHandler="enterHandler",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.fileSelected="fileSelected",e.fileUploading="fileUploading",e.fileUploadSuccess="fileUploadSuccess",e.fileUploadFailed="fileUploadFailed",e.fileRemoving="fileRemoving",e.afterImageDelete="afterImageDelete",e.afterMediaDelete="afterMediaDelete",e.drop="drop",e.xhtmlValidation="xhtmlValidation",e.beforeImageUpload="beforeImageUpload",e.beforeFileUpload="beforeFileUpload",e.resizeInitialized="resizeInitialized",e.renderFileManager="renderFileManager",e.beforeImageDrop="beforeImageDrop",e.dynamicModule="dynamicModule",e.beforePasteCleanup="beforePasteCleanup",e.afterPasteCleanup="afterPasteCleanup",e.updateTbItemsStatus="updateTbItemsStatus",e.showLinkDialog="showLinkDialog",e.closeLinkDialog="closeLinkDialog",e.showImageDialog="showImageDialog",e.showAudioDialog="showAudioDialog",e.showVideoDialog="showVideoDialog",e.closeImageDialog="closeImageDialog",e.closeAudioDialog="closeAudioDialog",e.closeVideoDialog="closeVideoDialog",e.showTableDialog="showTableDialog",e.closeTableDialog="closeTableDialog",e.bindCssClass=ie,e.formatPainterClick="formatPainterClick",e.formatPainterDoubleClick="formatPainterDoubleClick",e.emojiPicker="emojiPicker",e.destroyTooltip="destroyTooltip",e.hidePopup="hidePopup",e.cleanupResizeElements="cleanupResizeElements",e.afterKeyDown="afterKeyDown",e.updateValueOnIdle="updateValueOnIdle",e.documentClickClosedBy="documentClickClosedBy",e.blockEmptyNodes=oe,e.inlineEmptyNodes=re,e.supportedUnits=se,e.conversionFactors=ae,e.onHandleFontsizeChange="onHandleFontsizeChange",e.CLS_RTE=le,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=de,e.CLS_TEXT_QUICK_TB="e-rte-text-quicktoolbar",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_TEXT_POP="e-rte-text-popup",e.CLS_INLINE_POP="e-rte-inline-popup",e.CLS_INLINE_DROPDOWN="e-rte-inline-dropdown",e.CLS_DROPDOWN_POPUP=ce,e.CLS_DROPDOWN_ICONS="e-rte-dropdown-icons",e.CLS_DROPDOWN_ITEMS=pe,e.CLS_DROPDOWN_BTN=he,e.CLS_RTE_CONTENT="e-rte-content",e.CLS_TB_ITEM=ue,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=me,e.CLS_AUDIOBREAK="e-audio-break",e.CLS_CLICKELEM="e-clickelem",e.CLS_VID_CLICK_ELEM="e-video-clickelem",e.CLS_AUDIOWRAP="e-audio-wrap",e.CLS_VIDEOWRAP="e-video-wrap",e.CLS_VIDEOBREAK="e-video-break",e.CLS_CAPTION=ge,e.CLS_RTE_CAPTION="e-rte-img-caption",e.CLS_CAPINLINE="e-caption-inline",e.CLS_IMGINLINE=fe,e.CLS_AUDIOINLINE="e-audio-inline",e.CLS_VIDEOINLINE="e-video-inline",e.CLS_COUNT=be,e.CLS_WARNING="e-warning",e.CLS_ERROR="e-error",e.CLS_ICONS="e-icons",e.CLS_ACTIVE=ve,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_LIST_PRIMARY_CONTENT="e-rte-list-primary-content",e.CLS_NUMBERFORMATLIST_TB_BTN="e-rte-numberformatlist-dropdown",e.CLS_BULLETFORMATLIST_TB_BTN="e-rte-bulletformatlist-dropdown",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_ALIGN_TB_BTN="e-alignment-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=Ce,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=ye,e.CLS_RESIZE="e-resize",e.CLS_IMG_FOCUS="e-img-focus",e.CLS_AUD_FOCUS="e-audio-focus",e.CLS_VID_FOCUS="e-video-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="e-rte-table",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.CLS_RTE_RES_WEST="e-south-west",e.CLS_RTE_SOURCE_CODE_TXTAREA="e-rte-srctextarea",e.getIndex=c,e.hasClass=p,e.getDropDownValue=h,e.isIDevice=u,e.getFormattedFontSize=m,e.pageYOffset=g,e.getTooltipText=f,e.getTooltipTextDropdownItems=b,e.getQuickToolbarTooltipText=v,e.setToolbarStatus=C,e.getCollection=y,e.getTBarItemsIndex=N,e.updateUndoRedoStatus=S,e.dispatchEvent=E,e.parseHtml=T,e.getTextNodesUnder=O,e.toObjectLowerCase=w,e.getEditValue=k,e.updateTextNode=L,e.getDefaultValue=x,e.isEditableValueEmpty=D,e.decode=M,e.sanitizeHelper=R,e.convertToBlob=B,e.getLocaleFontFormat=A,e.updateDropDownFontFormatLocale=I,e.ServiceLocator=dt,e.RendererFactory=ct,e.EditorManager=In,e.IMAGE=Gt,e.AUDIO=Xt,e.VIDEO=Yt,e.TABLE=Jt,e.LINK=$t,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=Zt,e.IGNORE_BLOCK_TAGS=en,e.TABLE_BLOCK_TAGS=tn,e.SELECTION_TYPE="selection-type",e.INSERTHTML_TYPE="inserthtml-type",e.INSERT_TEXT_TYPE="insert-text-type",e.CLEAR_TYPE="clear-type",e.SELF_CLOSING_TAGS=nn,e.PASTE_SOURCE=on,e.CLASS_IMAGE_RIGHT="e-imgright",e.CLASS_IMAGE_LEFT="e-imgleft",e.CLASS_IMAGE_CENTER="e-imgcenter",e.CLASS_VIDEO_RIGHT="e-video-right",e.CLASS_VIDEO_LEFT="e-video-left",e.CLASS_VIDEO_CENTER="e-video-center",e.CLASS_IMAGE_BREAK="e-imgbreak",e.CLASS_AUDIO_BREAK="e-audio-break",e.CLASS_VIDEO_BREAK="e-video-break",e.CLASS_CAPTION=fn,e.CLASS_RTE_CAPTION="e-rte-img-caption",e.CLASS_CAPTION_INLINE="e-caption-inline",e.CLASS_IMAGE_INLINE="e-imginline",e.CLASS_AUDIO_INLINE="e-audio-inline",e.CLASS_CLICK_ELEM="e-clickelem",e.CLASS_VIDEO_CLICK_ELEM="e-video-clickelem",e.CLASS_AUDIO="e-rte-audio",e.CLASS_VIDEO="e-rte-video",e.CLASS_AUDIO_WRAP="e-audio-wrap",e.CLASS_VIDEO_WRAP="e-video-wrap",e.CLASS_EMBED_VIDEO_WRAP="e-embed-video-wrap",e.CLASS_AUDIO_FOCUS="e-audio-focus",e.CLASS_VIDEO_FOCUS="e-video-focus",e.CLASS_VIDEO_INLINE="e-video-inline",e.Lists=ln,e.markerClassName=sn,e.DOMNode=an,e.Alignments=mn,e.Indents=gn,e.Formats=pn,e.LinkCommand=un,e.InsertMethods=dn,e.InsertTextExec=Dn,e.InsertHtmlExec=On,e.InsertHtml=hn,e.IsFormatted=Sn,e.MsWordPaste=xn,e.NodeCutter=cn,e.ImageCommand=bn,e.AudioCommand=vn,e.VideoCommand=Cn,e.SelectionCommands=En,e.SelectionBasedExec=Tn,e.ClearFormatExec=kn,e.UndoRedoManager=Ln,e.TableCommand=yn,e.statusCollection=Mn,e.ToolbarStatus=Rn,e.FormatPainterActions=An,e.EmojiPickerAction=Bn,e.NodeSelection=rn,e.MarkdownParser=_t,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.INSERT_TEXT_COMMAND="insert-text",e.ClearFormat=qt,e.MDLists=kt,e.MDFormats=Lt,e.MarkdownSelection=St,e.UndoRedoCommands=Ht,e.MDSelectionFormats=xt,e.MDLink=jt,e.MDTable=Ft,e.markdownFormatTags=Dt,e.markdownSelectionTags=Mt,e.markdownListsTags=Rt,e.htmlKeyConfig=Bt,e.markdownKeyConfig=At,e.pasteCleanupGroupingTags=It,e.listConversionFilters=Pt,e.selfClosingTags=Ut,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.ON_BEGIN="onBegin",e.SPACE_ACTION="actionBegin",e.FORMAT_PAINTER_ACTIONS="format_painter_actions",e.EMOJI_PICKER_ACTIONS="emoji_picker_actions",e.MOUSE_DOWN="mouseDown",e}({},ej.base,ej.navigations,ej.splitbuttons,ej.popups,ej.inputs,ej.buttons,ej.filemanager),this.ejs=ej;
|
|
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){Oe.forEach(function(t,n){Oe[n].text=l(e,Te,Oe[n])}),Me.forEach(function(t,n){Me[n].text=l(e,Le,Me[n])}),Re.forEach(function(t,n){Re[n].text=l(e,xe,Re[n])}),Be.forEach(function(t,n){Be[n].text=l(e,De,Be[n])}),Pe.forEach(function(t,n){Pe[n].text=l(e,Ie,Pe[n])}),He.forEach(function(t,n){He[n].text=l(e,Ue,He[n])}),Fe.forEach(function(t,n){Fe[n].text=l(e,je,Fe[n])}),ze.forEach(function(t,n){ze[n].text=l(e,qe,ze[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=et[""+e];return n.getConstant(i)}function b(e,t,n,i){if(n)for(var o=t.getService("rteLocale"),r=0;r<n.length;r++){var s=n[r].value.toLocaleLowerCase(),a=n[r].locale,l=Ze[""+a].toLocaleLowerCase();if(e===s||e===l){var d=n[r].locale;return o.getConstant(d)}}else for(var c=i.fontSize.items,r=0;r<c.length;r++)if(e===i.fontSize.items[r].value)return i.fontSize.items[r].text;return""}function v(e){for(var t=Object.keys(Ze),n=0;n<t.length;n++){var i=Ze[""+t[n]];if(e===i)return i}return""}function C(e,n,i){I(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||"NumberFormatList"===p&&"numberFormatList"===l||"BulletFormatList"===p&&"bulletFormatList"===l)if("boolean"==typeof r[""+l])!0===r[""+l]?t.addClass([e.tbElements[d]],[Ce]):t.removeClass([e.tbElements[d]],[Ce]);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="empty"===g?"":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(e.parent.cssClass)?"":" "+e.parent.cssClass)+'">'+(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(Oe,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 C=e.parent.fontFamily.items;f="empty"===g?"":h(C,g,"value","text");var y=t.isNullOrUndefined(e.parent.fontFamily.default)?C[0].text:e.parent.fontFamily.default,N=t.isNullOrUndefined(f)?y:f;o.fontNameDropDown.content='<span style="display: inline-flex;width:'+e.parent.fontFamily.width+'" ><span class="e-rte-dropdown-btn-text'+(t.isNullOrUndefined(e.parent.cssClass)?"":" "+e.parent.cssClass)+'">'+N+"</span></span>",o.fontNameDropDown.dataBind();break;case"fontsize":if(t.isNullOrUndefined(o.fontSizeDropDown)||!t.isNullOrUndefined(o.fontSizeDropDown)&&o.fontSizeDropDown.isDestroyed)break;var S=e.parent.fontSize.items,E=t.isNullOrUndefined(e.parent.fontSize.default)?S[1].text:e.parent.fontSize.default;f="empty"===g?"":h(S,""===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'+(t.isNullOrUndefined(e.parent.cssClass)?"":" "+e.parent.cssClass)+'">'+m(f)+"</span></span>",o.fontSizeDropDown.dataBind();break;case"bulletFormatList":case"numberFormatList":t.removeClass([e.tbElements[d]],[Ce])}}}}function y(e){return"object"==typeof e?e:[e]}function N(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]||"NumberFormatList"===e[i])&&"OL"===t[o].subCommand){n.push(o);break}if(("UnorderedList"===e[i]||"BulletFormatList"===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("object"==typeof e[i]&&"Custom"===e[i].command){n.push(i);break}if(e[i]===t[o].subCommand){n.push(o);break}}return n}function S(e,n){for(var i=0,o=N(y(rt),e.toolbarObj.items),r=t.selectAll("."+me,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 E(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 O(e,t){var n=[];for(t=t.firstChild;t;t=t.nextSibling)3===t.nodeType?n.push(t):n=n.concat(O(e,t));return n}function w(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 k(e,t){var n;return null!==e&&""!==e?(n=t.enableHtmlEncode?L(M(e),t):L(e,t),t.setProperties({value:n},!0)):n="DIV"===t.enterKey?t.enableHtmlEncode?"<div><br/></div>":"<div><br/></div>":"BR"===t.enterKey?t.enableHtmlEncode?"<br/>":"<br/>":t.enableHtmlEncode?"<p><br/></p>":"<p><br/></p>",n}function L(e,n){var i=document.createElement("div"),o=document.createElement("div"),r=i.childNodes;if(i.innerHTML=e,i.setAttribute("class","tempDiv"),r.length>0){for(var s=void 0,a=void 0,l=void 0;i.firstChild;){for(var d=i.querySelectorAll(re),c=0;c<d.length;c++)d[c].innerHTML="<br>";for(var p=i.querySelectorAll("p"),c=0;c<p.length;c++)0===p[c].textContent.trim().length&&1===p[c].childNodes.length&&"#text"===p[c].childNodes[0].nodeName&&t.isNullOrUndefined(p[c].childNodes[0].textContent.match(/\u00a0/g))&&(p[c].innerHTML="<br>");for(var h=i.querySelectorAll(se),c=0;c<h.length;c++)h[c].innerHTML="​";"BR"!==n.enterKey&&("#text"===i.firstChild.nodeName&&(i.firstChild.textContent.indexOf("\n")<0||""!==i.firstChild.textContent.trim())||st.indexOf(i.firstChild.nodeName.toLocaleLowerCase())>=0)?(s?a.appendChild(i.firstChild):(l="DIV"===n.enterKey?t.createElement("div"):t.createElement("p"),o.appendChild(l),l.appendChild(i.firstChild)),a=l,s=!0):"#text"===i.firstChild.nodeName&&("\n"===i.firstChild.textContent||i.firstChild.textContent.indexOf("\n")>=0&&""===i.firstChild.textContent.trim())?t.detach(i.firstChild):(o.appendChild(i.firstChild),s=!1)}for(var u=o.querySelectorAll("img"),c=0;c<u.length;c++)u[c].classList.contains("e-rte-image-unsupported")||(u[c].classList.contains(Ne)||u[c].classList.add(Ne),u[c].classList.contains(be)||u[c].classList.contains(ge)||u[c].classList.add(be))}return o.innerHTML}function x(e){return"DIV"===e.enterKey?e.enableHtmlEncode?"<div><br/></div>":"<div><br/></div>":"BR"===e.enterKey?e.enableHtmlEncode?"<br/>":"<br/>":e.enableHtmlEncode?"<p><br/></p>":"<p><br/></p>"}function D(e){return"<p><br></p>"===e||"<p><br></p>"===e||"<div><br></div>"===e||"<div><br></div>"===e||"<br>"===e||"<br>"===e||""===e}function M(e){return e.replace(/&/g,"&").replace(/&lt;/g,"<").replace(/</g,"<").replace(/&gt;/g,">").replace(/>/g,">").replace(/ /g," ").replace(/&nbsp;/g," ").replace(/"/g,"")}function R(e,n){if(n.enableHtmlSanitizer){var i=t.SanitizeHtmlHelper.beforeSanitize();i.selectors.tags[2]&&i.selectors.tags[2].indexOf("iframe")>-1&&(i.selectors.tags[2]="iframe:not(.e-rte-embed-url)");var 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 B(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 A(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 I(e){Ve.forEach(function(t,n){Ve[n].text=A(e,tt,Ve[n])}),We.forEach(function(t,n){We[n].text=A(e,nt,We[n])}),Xe.forEach(function(t,n){Xe[n].text=A(e,it,Xe[n])}),Ye.forEach(function(t,n){Ye[n].text=A(e,ot,Ye[n])})}function P(){var e=!1;return t.Browser.isDevice&&t.Browser.isIos&&(e=!0),e}function U(e,n){if("BODY"===e.nodeName&&!t.isNullOrUndefined(n)){var i=top.window.document.querySelector(n);t.isNullOrUndefined(i)||i.contentWindow.focus()}}function H(e,n){var i=document.createElement("div");i.innerHTML=e,i.setAttribute("class","tempDiv");var o=document.createElement("div");if(i.childNodes.length>0){for(var r=void 0,s=void 0,a=void 0;i.firstChild;)"#text"===i.firstChild.nodeName&&(i.firstChild.textContent.indexOf("\n")<0||""!==i.firstChild.textContent.trim())||Tt.indexOf(i.firstChild.nodeName.toLocaleLowerCase())>=0?r?(s.appendChild(i.firstChild),s=a,r=!0):"BR"===n?(o.appendChild(i.firstChild),s=o):(a=t.createElement("p"),o.appendChild(a),a.appendChild(i.firstChild),s=a,r=!0):"#text"===i.firstChild.nodeName&&("\n"===i.firstChild.textContent||i.firstChild.textContent.indexOf("\n")>=0&&""===i.firstChild.textContent.trim())?t.detach(i.firstChild):(o.appendChild(i.firstChild),r=!1);for(var l=o.querySelectorAll("table"),d=0;d<l.length;d++)if(l[d].classList.length>0&&!l[d].classList.contains("e-rte-table")){if(l[d].classList.add("e-rte-paste-table"),l[d].classList.contains("e-rte-paste-word-table")){l[d].classList.remove("e-rte-paste-word-table");continue}if(l[d].classList.contains("e-rte-paste-excel-table")){l[d].classList.remove("e-rte-paste-excel-table"),"0"===l[d].getAttribute("border")&&l[d].removeAttribute("border");for(var c=l[d].querySelectorAll("td"),p=0;p<c.length;p++)"none"===c[p].style.borderLeft&&c[p].style.removeProperty("border-left"),"none"===c[p].style.borderRight&&c[p].style.removeProperty("border-right"),"none"===c[p].style.borderBottom&&c[p].style.removeProperty("border-bottom"),"none"===c[p].style.borderTop&&c[p].style.removeProperty("border-top"),"none"===c[p].style.border&&c[p].style.removeProperty("border")}else if(l[d].classList.contains("e-rte-paste-onenote-table")){l[d].classList.remove("e-rte-paste-onenote-table");continue}}for(var h=o.querySelectorAll("img"),d=0;d<h.length;d++)h[d].classList.contains("e-rte-image-unsupported")||(h[d].classList.contains("e-rte-image")||h[d].classList.add("e-rte-image"),h[d].classList.contains("e-imginline")||h[d].classList.contains("e-imgbreak")||h[d].classList.add("e-imginline"))}return o.innerHTML}function j(e){var t=e;do{t.childNodes.length>0&&(t=t.childNodes[0])}while(t.childNodes.length>0);return t}function F(){return{bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,unorderedlist:!1,numberFormatList:!1,bulletFormatList:!1,underline:!1,alignments:null,backgroundcolor:null,fontcolor:null,fontname:null,fontsize:null,formats:null,createlink:!1,insertcode:!1}}function q(){return{bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,uppercase:!1,lowercase:!1,inlinecode:!1,unorderedlist:!1,formats:null}}function z(e){if(null!==e.startContainer.parentElement.closest("ol,ul")&&null!==e.endContainer.parentElement.closest("ol,ul")){for(e.extractContents();("#text"===e.startContainer.nodeName?e.startContainer.parentElement:e.startContainer).querySelectorAll("li :empty").length>0||("#text"===e.startContainer.nodeName?e.startContainer.parentElement:e.startContainer).querySelectorAll("ol :empty").length>0;){var t=("#text"===e.startContainer.nodeName?e.startContainer.parentElement:e.startContainer).querySelectorAll("li :empty");t.length>0&&t.forEach(function(e){e.remove()})}var n=("#text"===e.startContainer.nodeName?e.startContainer.parentElement:e.startContainer).querySelectorAll("li");n.length>0&&n.forEach(function(e){"OL"!==e.firstChild.nodeName&&"UL"!==e.firstChild.nodeName||(e.style.listStyleType="none")})}}function _(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 V="initial-end",Q="destroy",W="model-changed",K="keyUp",G="keyDown",X="actionBegin",Y="selection-save",J="selection-restore",$="mouseDown",Z="scroll",ee="paste-content",te="rtl-mode",ne="checkUndoStack",ie="moduleDestroy",oe="closeTableDialog",re="address:empty, article:empty, aside:empty, blockquote:empty,\n details:empty, dd:empty, div:empty, dl:empty, dt:empty, fieldset:empty, footer:empty,form:empty, h1:empty,\n h2:empty, h3:empty, h4:empty, h5:empty, h6:empty, header:empty, hgroup:empty, li:empty, main:empty, nav:empty,\n noscript:empty, output:empty, p:empty, pre:empty, section:empty, td:empty, th:empty",se="a:empty, abbr:empty, acronym:empty, b:empty, bdi:empty, bdo:empty, big:empty, button:empty,\ncanvas:empty, cite:empty, code:empty, data:empty, datalist:empty, del:empty, dfn:empty, em:empty, font:empty, i:empty, iframe:empty,\nins:empty, kbd:empty, label:empty, map:empty, mark:empty, meter:empty, noscript:empty, object:empty, output:empty, picture:empty, progress:empty,\nq:empty, ruby:empty, s:empty, samp:empty, script:empty, select:empty, slot:empty, small:empty, span:empty, strong:empty, strike:empty, sub:empty, sup:empty, svg:empty,\ntemplate:empty, textarea:empty, time:empty, u:empty, tt:empty, var:empty, wbr:empty",ae=["px","em","rem","pt","cm","mm","in","pc","vw","vh","vmin","vmax"],le={px:{px:1,em:.0625,rem:.0625,pt:.75,cm:.0264583,mm:.0026458,in:.0104167,pc:.0625,vw:.00625,vh:.00625,vmin:.00625,vmax:.00625},em:{px:16,em:1,rem:1,pt:12,cm:.423333,mm:.0423333,in:.166667,pc:.0625,vw:1,vh:1,vmin:1,vmax:1},rem:{px:16,em:1,rem:1,pt:12,cm:.423333,mm:.0423333,in:.166667,pc:.0625,vw:1,vh:1,vmin:1,vmax:1},pt:{px:1.33333,em:.0833333,rem:.0833333,pt:1,cm:.0352778,mm:.0035278,in:.0138889,pc:.0416667,vw:.00416667,vh:.00416667,vmin:.00416667,vmax:.00416667},cm:{px:37.7953,em:2.3622,rem:2.3622,pt:28.3465,cm:1,mm:.1,in:.393701,pc:.148148,vw:.0377953,vh:.0377953,vmin:.0377953,vmax:.0377953},mm:{px:3.77953,em:.23622,rem:.23622,pt:2.83465,cm:10,mm:1,in:.0393701,pc:.0148148,vw:.00377953,vh:.00377953,vmin:.00377953,vmax:.00377953},in:{px:96,em:6,rem:6,pt:72,cm:2.54,mm:25.4,in:1,pc:.375,vw:.09375,vh:.09375,vmin:.09375,vmax:.09375},pc:{px:16,em:1,rem:1,pt:12,cm:.423333,mm:.0423333,in:.166667,pc:1,vw:.0625,vh:.0625,vmin:.0625,vmax:.0625},vw:{px:160,em:10,rem:10,pt:120,cm:4.23333,mm:.423333,in:1.66667,pc:.625,vw:1,vh:1,vmin:1,vmax:1},vh:{px:160,em:10,rem:10,pt:120,cm:4.23333,mm:.423333,in:1.66667,pc:.625,vw:1,vh:1,vmin:1,vmax:1},vmin:{px:160,em:10,rem:10,pt:120,cm:4.23333,mm:.423333,in:1.66667,pc:.625,vw:1,vh:1,vmin:1,vmax:1},vmax:{px:160,em:10,rem:10,pt:120,cm:4.23333,mm:.423333,in:1.66667,pc:.625,vw:1,vh:1,vmin:1,vmax:1}},de="e-richtexteditor",ce="e-rte-quick-toolbar",pe="e-rte-dropdown-popup",he="e-rte-dropdown-items",ue="e-rte-dropdown-btn",me="e-toolbar-item",ge="e-imgbreak",fe="e-img-caption",be="e-imginline",ve="e-rte-character-count",Ce="e-active",ye="e-alternate-border",Ne="e-rte-image";!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.AudioToolbar=6]="AudioToolbar",e[e.VideoToolbar=7]="VideoToolbar",e[e.InlineToolbar=8]="InlineToolbar",e[e.TableToolbar=9]="TableToolbar"}(e.RenderType||(e.RenderType={})),function(e){e.Expand="Expand",e.MultiRow="MultiRow",e.Scrollable="Scrollable"}(e.ToolbarType||(e.ToolbarType={})),function(e){e.InsertLink="InsertLink",e.InsertImage="InsertImage",e.InsertAudio="InsertAudio",e.InsertVideo="InsertVideo",e.InsertTable="InsertTable"}(e.DialogType||(e.DialogType={}));var Se=["alignments","formats","fontname","fontsize","fontcolor","backgroundcolor","align","display","audiolayoutoption","videolayoutoption","videoalign","tablerows","tablecolumns","tablecell","tablecellhorizontalalign","tablecellverticalalign","styles","numberformatlist","bulletformatlist"],Ee={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-rte-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"},numberformatlist:{id:"NumberFormatList",icon:"e-order-list",tooltip:"Number Format List",command:"NumberFormatList",subCommand:"NumberFormatList"},bulletformatlist:{id:"BulletFormatList",icon:"e-unorder-list",tooltip:"Bullet Format List",command:"BulletFormatList",subCommand:"BulletFormatList"},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"},audio:{id:"Audio",icon:"e-audio",tooltip:"Insert Audio",command:"Audios",subCommand:"Audio"},video:{id:"Video",icon:"e-video",tooltip:"Insert Video",command:"Videos",subCommand:"Video"},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"},audioreplace:{id:"AudioReplace",icon:"e-audio-replace",tooltip:"Audio Replace",command:"Audios",subCommand:"AudioReplace"},audioremove:{id:"AudioRemove",icon:"e-audio-remove",tooltip:"Audio Remove",command:"Audios",subCommand:"AudioRemove"},audiolayoutoption:{id:"AudioLayoutOption",icon:"e-audio-display",tooltip:"Audio LayoutOption",command:"Audios",subCommand:"AudioLayoutOption"},videoreplace:{id:"VideoReplace",icon:"e-video-replace",tooltip:"Video Replace",command:"Videos",subCommand:"VideoReplace"},videoalign:{id:"VideoAlign",icon:"e-video-align",tooltip:"Video Align",command:"Videos",subCommand:"VideoAlign"},videoremove:{id:"VideoRemove",icon:"e-video-remove",tooltip:"Video Remove",command:"Videos",subCommand:"VideoRemove"},videolayoutoption:{id:"VideoLayoutOption",icon:"e-video-display",tooltip:"Video LayoutOption",command:"Videos",subCommand:"VideoLayoutOption"},videodimension:{id:"VideoDimension",icon:"e-video-dimension",tooltip:"Video Dimension",command:"Videos",subCommand:"VideoDimension"},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-img-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:"Code View (Ctrl+Shift+H)",command:"SourceCode",subCommand:"SourceCode"},preview:{id:"Preview",icon:"e-preview",tooltip:"Preview (Ctrl+Shift+H)",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"},formatpainter:{id:"FormatPainter",icon:"e-rte-format-painter",tooltip:"Format Painter",command:"FormatPainter",subCommand:"FormatPainter"},emojipicker:{id:"EmojiPicker",icon:"e-emoji",tooltip:"Emoji Icon",command:"EmojiPicker",subCommand:"EmojiPicker"}},Te=[{locale:"alignmentsDropDownLeft",value:"JustifyLeft"},{locale:"alignmentsDropDownCenter",value:"JustifyCenter"},{locale:"alignmentsDropDownRight",value:"JustifyRight"},{locale:"alignmentsDropDownJustify",value:"JustifyFull"}],Oe=[{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"}],we=[{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"}],ke=[{iconCss:"e-icons e-justify-left",command:"Videos",subCommand:"JustifyLeft"},{iconCss:"e-icons e-justify-center",command:"Videos",subCommand:"JustifyCenter"},{iconCss:"e-icons e-justify-right",command:"Videos",subCommand:"JustifyRight"}],Le=[{locale:"imageDisplayDropDownInline",value:"Inline"},{locale:"imageDisplayDropDownBreak",value:"Break"}],xe=[{locale:"audioLayoutOptionDropDownInline",value:"Inline"},{locale:"audioLayoutOptionDropDownBreak",value:"Break"}],De=[{locale:"videoLayoutOptionDropDownInline",value:"Inline"},{locale:"videoLayoutOptionDropDownBreak",value:"Break"}],Me=[{text:"Inline",cssClass:"e-inline",command:"Images",subCommand:"Inline"},{text:"Break",cssClass:"e-break",command:"Images",subCommand:"Break"}],Re=[{text:"Inline",cssClass:"e-audio-inline",command:"Audios",subCommand:"Inline"},{text:"Break",cssClass:"e-audio-break",command:"Audios",subCommand:"Break"}],Be=[{text:"Inline",cssClass:"e-video-inline",command:"Videos",subCommand:"Inline"},{text:"Break",cssClass:"e-video-break",command:"Videos",subCommand:"Break"}],Ae=[{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"}],Ie=[{locale:"tableInsertRowDropDownBefore",value:"InsertRowBefore"},{locale:"tableInsertRowDropDownAfter",value:"InsertRowAfter"},{locale:"tableInsertRowDropDownDelete",value:"DeleteRow"}],Pe=[{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"}],Ue=[{locale:"tableInsertColumnDropDownLeft",value:"InsertColumnLeft"},{locale:"tableInsertColumnDropDownRight",value:"InsertColumnRight"},{locale:"tableInsertColumnDropDownDelete",value:"DeleteColumn"}],He=[{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"}],je=[{locale:"tableVerticalAlignDropDownTop",value:"AlignTop"},{locale:"tableVerticalAlignDropDownMiddle",value:"AlignMiddle"},{locale:"tableVerticalAlignDropDownBottom",value:"AlignBottom"}],Fe=[{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"}],qe=[{locale:"tableStylesDropDownDashedBorder",value:"Dashed"},{locale:"tableStylesDropDownAlternateRows",value:"Alternate"}],ze=[{text:"Dashed Borders",cssClass:"e-dashed-borders",command:"Table",subCommand:"Dashed"},{text:"Alternate Rows",cssClass:"e-alternate-rows",command:"Table",subCommand:"Alternate"}],_e=["Bold","Italic","Underline","|","Formats","Alignments","OrderedList","UnorderedList","|","CreateLink","Image","|","SourceCode","Undo","Redo"],Ve=[{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"}],Qe=[{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"}],We=[{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"}],Ke={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"]},Ge={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"]},Xe=[{text:"None",command:"Lists",subCommand:"NumberFormatList",value:"none"},{text:"Number",command:"Lists",subCommand:"NumberFormatList",value:"decimal"},{text:"Lower Greek",command:"Lists",subCommand:"NumberFormatList",value:"lowerGreek"},{text:"Lower Roman",command:"Lists",subCommand:"NumberFormatList",value:"lowerRoman"},{text:"Upper Alpha",command:"Lists",subCommand:"NumberFormatList",value:"upperAlpha"},{text:"Lower Alpha",command:"Lists",subCommand:"NumberFormatList",value:"lowerAlpha"},{text:"Upper Roman",command:"Lists",subCommand:"NumberFormatList",value:"upperRoman"}],Ye=[{text:"None",command:"Lists",subCommand:"BulletFormatList",value:"none"},{text:"Disc",command:"Lists",subCommand:"BulletFormatList",value:"disc"},{text:"Circle",command:"Lists",subCommand:"BulletFormatList",value:"circle"},{text:"Square",command:"Lists",subCommand:"BulletFormatList",value:"square"}],Je={"Insert Link":"Ctrl+K","Insert Image":"Ctrl+Shift+I","Create 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","Upper Case":"Ctrl+Shift+U","Lower Case":"Ctrl+Shift+L",Superscript:"Ctrl+Shift+=",Subscript:"Ctrl+=","Code View":"Ctrl+Shift+H",Maximize:"Ctrl+Shift+F",Minimize:"Esc","Clear Format":"Ctrl+Shift+R","Numbered List":"Ctrl+Shift+O","Bulleted List":"Ctrl+Alt+O","Number Format List":"Ctrl+Shift+O","Bullet Format List":"Ctrl+Alt+O","Insert Audio":"Ctrl+Shift+A","Insert Video":"Ctrl+Alt+V","Increase Indent":"Ctrl+]","Decrease Indent":"Ctrl+[","Decrease Fontsize":"Ctrl+Shift+<","Increase Fontsize":"Ctrl+Shift+>","Justify Center":"Ctrl+E","Justify Full":"Ctrl+J","Justify Left":"Ctrl+L","Justify Right":"Ctrl+R","Format Painter":"Alt+Shift+C, Alt+Shift+V"},$e=[{name:"Smilies & People",code:"1F600",iconCss:"e-emoji",icons:[{code:"1F600",desc:"Grinning face"},{code:"1F603",desc:"Grinning face with big eyes"},{code:"1F604",desc:"Grinning face with smiling eyes"},{code:"1F606",desc:"Grinning squinting face"},{code:"1F605",desc:"Grinning face with sweat"},{code:"1F602",desc:"Face with tears of joy"},{code:"1F923",desc:"Rolling on the floor laughing"},{code:"1F60A",desc:"Smiling face with smiling eyes"},{code:"1F607",desc:"Smiling face with halo"},{code:"1F642",desc:"Slightly smiling face"},{code:"1F643",desc:"Upside-down face"},{code:"1F60D",desc:"Smiling face with heart-eyes"},{code:"1F618",desc:"Face blowing a kiss"},{code:"1F61B",desc:"Face with tongue"},{code:"1F61C",desc:"Winking face with tongue"},{code:"1F604",desc:"Grinning face with smiling eyes"},{code:"1F469",desc:"Woman"},{code:"1F468",desc:"Man"},{code:"1F467",desc:"Girl"},{code:"1F466",desc:"Boy"},{code:"1F476",desc:"Baby"},{code:"1F475",desc:"Old woman"},{code:"1F474",desc:"Old man"},{code:"1F46E",desc:"Police officer"},{code:"1F477",desc:"Construction worker"},{code:"1F482",desc:"Guard"},{code:"1F575",desc:"Detective"},{code:"1F9D1",desc:"Cook"}]},{name:"Animals & Nature",code:"1F435",iconCss:"e-animals",icons:[{code:"1F436",desc:"Dog face"},{code:"1F431",desc:"Cat face"},{code:"1F42D",desc:"Mouse face"},{code:"1F439",desc:"Hamster face"},{code:"1F430",desc:"Rabbit face"},{code:"1F98A",desc:"Fox face"},{code:"1F43B",desc:"Bear face"},{code:"1F43C",desc:"Panda face"},{code:"1F428",desc:"Koala"},{code:"1F42F",desc:"Tiger face"},{code:"1F981",desc:"Lion face"},{code:"1F42E",desc:"Cow face"},{code:"1F437",desc:"Pig face"},{code:"1F43D",desc:"Pig nose"},{code:"1F438",desc:"Frog face"},{code:"1F435",desc:"Monkey face"},{code:"1F649",desc:"Hear-no-evil monkey"},{code:"1F64A",desc:"Speak-no-evil monkey"},{code:"1F412",desc:"Monkey"},{code:"1F414",desc:"Chicken"},{code:"1F427",desc:"Penguin"},{code:"1F426",desc:"Bird"},{code:"1F424",desc:"Baby chick"},{code:"1F986",desc:"Duck"},{code:"1F985",desc:"Eagle"}]},{name:"Food & Drink",code:"1F347",iconCss:"e-food-and-drinks",icons:[{code:"1F34E",desc:"Red apple"},{code:"1F34C",desc:"Banana"},{code:"1F347",desc:"Grapes"},{code:"1F353",desc:"Strawberry"},{code:"1F35E",desc:"Bread"},{code:"1F950",desc:"Croissant"},{code:"1F955",desc:"Carrot"},{code:"1F354",desc:"Hamburger"},{code:"1F355",desc:"Pizza"},{code:"1F32D",desc:"Hot dog"},{code:"1F35F",desc:"French fries"},{code:"1F37F",desc:"Popcorn"},{code:"1F366",desc:"Soft ice cream"},{code:"1F367",desc:"Shaved ice"},{code:"1F36A",desc:"Cookie"},{code:"1F382",desc:"Birthday cake"},{code:"1F370",desc:"Shortcake"},{code:"1F36B",desc:"Chocolate bar"},{code:"1F369",desc:"Donut"},{code:"1F36E",desc:"Custard"},{code:"1F36D",desc:"Lollipop"},{code:"1F36C",desc:"Candy"},{code:"1F377",desc:"Wine glass"},{code:"1F37A",desc:"Beer mug"},{code:"1F37E",desc:"Bottle with popping cork"}]},{name:"Activities",code:"1F383",iconCss:"e-activities",icons:[{code:"26BD",desc:"Soccer ball"},{code:"1F3C0",desc:"Basketball"},{code:"1F3C8",desc:"American football"},{code:"26BE",desc:"Baseball"},{code:"1F3BE",desc:"Tennis"},{code:"1F3D0",desc:"Volleyball"},{code:"1F3C9",desc:"Rugby football"},{code:"1F3B1",desc:"Pool 8 ball"},{code:"1F3D3",desc:"Ping pong"},{code:"1F3F8",desc:"Badminton"},{code:"1F94A",desc:"Boxing glove"},{code:"1F3CA",desc:"Swimmer"},{code:"1F3CB",desc:"Weightlifter"},{code:"1F6B4",desc:"Bicyclist"},{code:"1F6F9",desc:"Skateboard"},{code:"1F3AE",desc:"Video game"},{code:"1F579",desc:"Joystick"},{code:"1F3CF",desc:"Cricket"},{code:"1F3C7",desc:"Horse racing"},{code:"1F3AF",desc:"Direct hit"},{code:"1F3D1",desc:"Field hockey"},{code:"1F3B0",desc:"Slot machine"},{code:"1F3B3",desc:"Bowling"},{code:"1F3B2",desc:"Game die"},{code:"265F",desc:"Chess pawn"}]},{name:"Travel & Places",code:"1F30D",iconCss:"e-travel-and-places",icons:[{code:"2708",desc:"Airplane"},{code:"1F697",desc:"Automobile"},{code:"1F695",desc:"Taxi"},{code:"1F6B2",desc:"Bicycle"},{code:"1F68C",desc:"Bus"},{code:"1F682",desc:"Locomotive"},{code:"1F6F3",desc:"Passenger ship"},{code:"1F680",desc:"Rocket"},{code:"1F681",desc:"Helicopter"},{code:"1F6A2",desc:"Ship"},{code:"1F3DF",desc:"Stadium"},{code:"1F54C",desc:"Mosque"},{code:"26EA",desc:"Church"},{code:"1F6D5",desc:"Hindu Temple"},{code:"1F3D4",desc:"Snow-capped mountain"},{code:"1F3EB",desc:"School"},{code:"1F30B",desc:"Volcano"},{code:"1F3D6",desc:"Beach with umbrella"},{code:"1F3DD",desc:"Desert island"},{code:"1F3DE",desc:"National park"},{code:"1F3F0",desc:"Castle"},{code:"1F5FC",desc:"Tokyo tower"},{code:"1F5FD",desc:"Statue of liberty"},{code:"26E9",desc:"Shinto shrine"},{code:"1F3EF",desc:"Japanese castle"},{code:"1F3A2",desc:"Roller coaster"}]},{name:"Objects",code:"1F507",iconCss:"e-objects",icons:[{code:"1F4A1",desc:"Light bulb"},{code:"1F526",desc:"Flashlight"},{code:"1F4BB",desc:"Laptop computer"},{code:"1F5A5",desc:"Desktop computer"},{code:"1F5A8",desc:"Printer"},{code:"1F4F7",desc:"Camera"},{code:"1F4F8",desc:"Camera with flash"},{code:"1F4FD",desc:"Film projector"},{code:"1F3A5",desc:"Movie camera"},{code:"1F4FA",desc:"Television"},{code:"1F4FB",desc:"Radio"},{code:"1F50B",desc:"Battery"},{code:"231A",desc:"Watch"},{code:"1F4F1",desc:"Mobile phone"},{code:"260E",desc:"Telephone"},{code:"1F4BE",desc:"Floppy disk"},{code:"1F4BF",desc:"Optical disk"},{code:"1F4C0",desc:"Digital versatile disc"},{code:"1F4BD",desc:"Computer disk"},{code:"1F3A7",desc:"Headphone"},{code:"1F3A4",desc:"Microphone"},{code:"1F3B6",desc:"Multiple musical notes"},{code:"1F4DA",desc:"Books"}]},{name:"Symbols",code:"1F3E7",iconCss:"e-symbols",icons:[{code:"274C",desc:"Cross mark"},{code:"2714",desc:"Check mark"},{code:"26A0",desc:"Warning sign"},{code:"1F6AB",desc:"Prohibited"},{code:"2139",desc:"Information"},{code:"267B",desc:"Recycling symbol"},{code:"1F6AD",desc:"No smoking"},{code:"1F4F5",desc:"No mobile phones"},{code:"1F6AF",desc:"No littering"},{code:"1F6B3",desc:"No bicycles"},{code:"1F6B7",desc:"No pedestrians"},{code:"2795",desc:"Plus"},{code:"2796",desc:"Minus"},{code:"2797",desc:"Divide"},{code:"2716",desc:"Multiplication"},{code:"1F4B2",desc:"Dollar banknote"},{code:"1F4AC",desc:"Speech balloon"},{code:"2755",desc:"White exclamation mark"},{code:"2754",desc:"White question mark"},{code:"2764",desc:"Red heart"}]}],Ze={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",audio:"Insert Audio",video:"Insert Video",replace:"Replace",numberFormatList:"Number Format List",bulletFormatList:"Bullet Format List",audioReplace:"Replace",videoReplace:"Replace",videoAlign:"Align",videoDimension:"Dimension",audioRemove:"Remove",videoRemove:"Remove",audioLayoutOption:"Layout option",videoLayoutOption:"Layout option",align:"Align",caption:"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",audioHeader:"Insert Audio",videoHeader:"Insert Video",imageLinkHeader:"You can also provide a link from the web",audioLinkHeader:"You can also provide a link from the web",videoLinkHeader:"Web URL",embedVideoLinkHeader:"Media Embed URL",mdimageLink:"Please provide a URL for your image",imageUploadMessage:"Drop image here or browse to upload",audioUploadMessage:"Drop an audio file or browse to upload",videoUploadMessage:"Drop a video file or browse to upload",imageDeviceUploadMessage:"Click here to upload",audioDeviceUploadMessage:"Click here to upload",videoDeviceUploadMessage:"Click here to upload",imageAlternateText:"Alternate Text",alternateHeader:"Alternative Text",browse:"Browse",imageUrl:"http://example.com/image.png",audioUrl:"http://example.com/audio.mp3",videoUrl:"http://example.com/video.mp3",webUrl:"Web URL",embedUrl:"Embed Code",imageCaption:"Caption",imageSizeHeader:"Image Size",videoSizeHeader:"Video Size",imageHeight:"Height",imageWidth:"Width",videoHeight:"Height",videoWidth:"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:"Row",tableColumns:"Column",tableCellHorizontalAlign:"Table Cell Horizontal Align",tableCellVerticalAlign:"Vertical Align",createTable:"Create Table",removeTable:"Remove Table",tableHeader:"Header Row",tableRemove:"Delete",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",editAudioHeader:"Edit Audio",editVideoHeader:"Edit Video",alignmentsDropDownLeft:"Align Left",alignmentsDropDownCenter:"Align Center",alignmentsDropDownRight:"Align Right",alignmentsDropDownJustify:"Align Justify",imageDisplayDropDownInline:"Inline",imageDisplayDropDownBreak:"Break",audioLayoutOptionDropDownInline:"Inline",audioLayoutOptionDropDownBreak:"Break",videoLayoutOptionDropDownInline:"Inline",videoLayoutOptionDropDownBreak:"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",numberFormatListNumber:"Number",numberFormatListLowerAlpha:"LowerAlpha",numberFormatListUpperAlpha:"UpperAlpha",numberFormatListLowerRoman:"LowerRoman",numberFormatListUpperRoman:"UpperRoman",numberFormatListLowerGreek:"LowerGreek",bulletFormatListDisc:"Disc",bulletFormatListCircle:"Circle",bulletFormatListSquare:"Square",numberFormatListNone:"None",bulletFormatListNone:"None",formatPainter:"Format Painter",emojiPicker:"Emoji Picker",embeddedCode:"Embedded code",pasteEmbeddedCodeHere:"Paste embedded code here",emojiPickerTypeToFind:"Type to find",emojiPickerNoResultFound:"No results found",emojiPickerTrySomethingElse:"Try something else",linkAriaLabel:"Open in new window",unsupportedImage:"Unsupported file format"},et={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",numberformatlist:"numberFormatList",bulletformatlist:"bulletFormatList",undo:"undo",redo:"redo",filemanager:"fileManager",superscript:"superscript",subscript:"subscript",createlink:"createLink",openlink:"openLink",editlink:"editLink",removelink:"removeLink",openimagelink:"openLink",editimagelink:"editLink",removeimagelink:"removeLink",image:"image",audio:"audio",video:"video",replace:"replace",audioreplace:"audioReplace",videoreplace:"videoReplace",videoalign:"videoAlign",videodimension:"videoDimension",audioremove:"audioRemove",videoremove:"videoRemove",audiolayoutoption:"audioLayoutOption",videolayoutoption:"videoLayoutOption",align:"align",caption:"caption",remove:"remove",insertlink:"insertLink",display:"display",alttext:"alternateHeader",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",formatpainter:"formatPainter",emojipicker:"emojiPicker",embeddedCode:"Embedded code",pasteEmbeddedCodeHere:"Paste embedded code here",emojiPickerTypeToFind:"Type to find",emojiPickerNoResultFound:"No results found",emojiPickerTrySomethingElse:"Try something else",imageLinkAriaLabel:"Open in new window"},tt=[{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"}],nt=[{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"}],it=[{locale:"numberFormatListNone",value:"none"},{locale:"numberFormatListNumber",value:"decimal"},{locale:"numberFormatListLowerAlpha",value:"lower-alpha"},{locale:"numberFormatListUpperAlpha",value:"upper-alpha"},{locale:"numberFormatListLowerRoman",value:"lower-roman"},{locale:"numberFormatListUpperRoman",value:"upper-roman"},{locale:"numberFormatListLowerGreek",value:"lower-greek"}],ot=[{locale:"bulletFormatListNone",value:"none"},{locale:"bulletFormatListDisc",value:"disc"},{locale:"bulletFormatListCircle",value:"circle"},{locale:"bulletFormatListSquare",value:"square"}],rt=["Undo","Redo"],st=["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"],at=function(){function e(e,t){this.parent=e,t&&(this.l10n=t.getService("rteLocale")),this.wireEvent()}return e.prototype.wireEvent=function(){this.parent.on(Q,this.unWireEvent,this),this.parent.on("destroyTooltip",this.destroyTooltip,this)},e.prototype.destroyTooltip=function(){var e=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().ownerDocument:this.parent.contentModule.getDocument();if(!t.isNullOrUndefined(e.querySelector(".e-tooltip-wrap"))&&!t.isNullOrUndefined(e.querySelector("[data-tooltip-id]"))){var n=e.querySelector("[data-tooltip-id]"),i=new MouseEvent("mouseleave",{bubbles:!0,cancelable:!0});n.dispatchEvent(i)}},e.prototype.unWireEvent=function(){this.parent.off(Q,this.unWireEvent)},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.trigger("toolbarClick",e),this.parent.readonly&&!t.isNullOrUndefined(e.item)||this.parent.notify("toolbarClick",e))},e.prototype.dropDownSelected=function(e){this.parent.notify("dropDownSelect",e),this.destroyTooltip()},e.prototype.beforeDropDownItemRender=function(e){!this.parent.readonly&&this.parent.enabled&&this.parent.notify("beforeDropDownItemRender",e)},e.prototype.tooltipBeforeRender=function(e){if(!t.isNullOrUndefined(e.target.getAttribute("title"))){var n=void 0;switch(e.target.getAttribute("title")){case"Minimize":n=this.l10n.getConstant("minimize"),e.target.setAttribute("title",n+" (Esc)");break;case"Maximize":n=this.l10n.getConstant("maximize"),e.target.setAttribute("title",n+" (Ctrl+Shift+F)")}}},e.prototype.dropDownOpen=function(e){if(e.element.parentElement.getAttribute("id").indexOf("TableCell")>-1&&!t.isNullOrUndefined(e.element.parentElement.querySelector(".e-cell-merge"))&&(!t.isNullOrUndefined(e.element.parentElement.querySelector(".e-cell-horizontal-split"))||!t.isNullOrUndefined(e.element.parentElement.querySelector(".e-cell-vertical-split")))){var n=e.element.querySelectorAll("li"),i=this.parent.inputElement.querySelectorAll(".e-cell-select");1===i.length?(t.addClass([n[0]],"e-disabled"),t.removeClass([n[1],n[2]],"e-disabled")):i.length>1&&(Array.from(i).every(function(e){return e.tagName.toLowerCase()===i[0].tagName.toLowerCase()})?t.removeClass([n[0]],"e-disabled"):t.addClass([n[0]],"e-disabled"),t.addClass([n[1],n[2]],"e-disabled"))}this.parent.notify(Y,e)},e.prototype.dropDownClose=function(e){this.parent.notify(J,e)},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,cssClass:e.cssClass}),e.rteToolbarObj.toolbarObj.isStringTemplate=!0,e.rteToolbarObj.toolbarObj.createElement=this.parent.createElement,e.rteToolbarObj.toolbarObj.appendTo(e.target),this.parent.showTooltip&&(this.tooltip=new o.Tooltip({target:"#"+this.parent.getID()+"_toolbar_wrapper [title]",showTipPointer:!0,openDelay:400,opensOn:"Hover",beforeRender:this.tooltipBeforeRender.bind(this),cssClass:this.parent.getCssClass(),windowCollision:!0,position:"BottomCenter"}),this.tooltip.appendTo(e.target)),this.parent.showTooltip&&(this.dropdownTooltip=new o.Tooltip({target:'[aria-owns="'+this.parent.getID()+'"].e-rte-elements [title]',showTipPointer:!0,openDelay:400,opensOn:"Hover",beforeRender:this.tooltipBeforeRender.bind(this),cssClass:this.parent.getCssClass(),windowCollision:!0,position:"BottomCenter"}),this.dropdownTooltip.appendTo(document.body))},e.prototype.renderDropDownButton=function(e){var n,o=this;e.element.classList.add(ue),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);if("Markdown"!==r.parent.editorMode){var n=r.parent.getRange().startContainer.parentElement,i=n.closest("table"),a=n.closest("tr");if(!t.isNullOrUndefined(i)&&i.classList.contains("e-dashed-border"))for(h=0;h<e.element.childNodes.length;h++)e.element.childNodes[h].classList.contains("e-dashed-borders")&&t.addClass([e.element.childNodes[h]],"e-active");else if(!t.isNullOrUndefined(i)&&!i.classList.contains("e-dashed-border")&&i.classList.contains("e-alternate-rows")&&""!==window.getComputedStyle(a).backgroundColor)for(h=0;h<e.element.childNodes.length;h++)e.element.childNodes[h].classList.contains("e-alternate-rows")&&t.addClass([e.element.childNodes[h]],"e-active");for(var l=r.parent.getRange().startContainer;l!==r.parent.inputElement&&!t.isNullOrUndefined(l.parentElement);){"#text"===l.nodeName&&(l=l.parentElement);var d=window.getComputedStyle(l).textAlign;if("Alignments"===e.items[0].command){if("Align Left"===e.items[0].text&&"left"===d||"start"===d){t.addClass([e.element.childNodes[0]],"e-active");break}if("Align Center"===e.items[1].text&&"center"===d){t.addClass([e.element.childNodes[1]],"e-active");break}if("Align Right"===e.items[2].text&&"right"===d){t.addClass([e.element.childNodes[2]],"e-active");break}if("Align Justify"===e.items[3].text&&"justify"===d){t.addClass([e.element.childNodes[3]],"e-active");break}}l=l.parentElement}var c=n.closest("img"),p=c||n.querySelector("img");if("Images"===e.items[0].command&&!t.isNullOrUndefined(p)){h=void 0;p.classList.contains("e-imgleft")||p.classList.contains("e-imginline")?h=0:p.classList.contains("e-imgcenter")||p.classList.contains("e-imgbreak")?h=1:p.classList.contains("e-imgright")&&(h=2),t.isNullOrUndefined(e.element.childNodes[h])||t.addClass([e.element.childNodes[h]],"e-active")}if("Formats"===e.items[0].command||"Font"===e.items[0].command)for(var h=0;h<e.element.childNodes.length;h++){var u=o.parent.createElement("div");u.innerHTML=s.content.trim(),""!==u.textContent.trim()&&e.element.childNodes[h].textContent.trim()===u.textContent.trim()?e.element.childNodes[h].classList.contains("e-active")||t.addClass([e.element.childNodes[h]],"e-active"):t.removeClass([e.element.childNodes[h]],"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.renderListDropDown=function(e){var t=this,n="e-rte-elements e-tbar-btn"+(this.parent.inlineMode?" e-rte-inline-dropdown":"");n+=" "+("NumberFormatList"===e.itemName?"e-rte-numberformatlist-dropdown":"e-rte-bulletformatlist-dropdown");var o=t.parent.createElement("span",{className:"e-rte-list-primary-content"}),r=t.parent.createElement("span",{className:e.cssClass});o.appendChild(r);var s=new i.DropDownButton({items:e.items,cssClass:n,content:e.content,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,select:this.dropDownSelected.bind(this),beforeOpen:function(e){if(t.parent.readonly||!t.parent.enabled)return void(e.cancel=!0);t.parent.notify(J,{});var n=e.event?e.event.target:null;if(t.currentElement=s.element,t.currentDropdown=s,e.event&&"click"===e.event.type&&(n.classList.contains("e-rte-list-primary-content")||n.parentElement.classList.contains("e-rte-list-primary-content")))return void(e.cancel=!0);t.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=t.parent.createElement,s.appendTo(e.element),e.element.tabIndex=-1,e.element.setAttribute("role","button"),document.getElementById(s.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),1===e.element.childElementCount&&s.element.insertBefore(o,s.element.querySelector(".e-caret")),e.element.tabIndex=-1,s.element.removeAttribute("type"),s.element.onmousedown=function(){t.parent.notify(Y,{})},s.element.onkeydown=function(){t.parent.notify(Y,{})},s},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,s){var a=this,l=this,d="e-rte-elements e-tbar-btn"+(this.parent.inlineMode?" e-rte-inline-dropdown":"");d+=" "+("backgroundcolor"===n?"e-rte-backgroundcolor-dropdown":"e-rte-fontcolor-dropdown"),d+=this.parent.getCssClass(!0);var c,h=l.parent.createElement("span",{className:"e-rte-color-content"}),u=l.parent.createElement("span",{className:e.cssClass}),m=t.isNullOrUndefined(s)?l.parent.backgroundColor.default:s;u.style.borderBottomColor="backgroundcolor"===n?m:l.parent.fontColor.default,h.appendChild(u);var g=new i.DropDownButton({target:o.element.parentElement,cssClass:d,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,beforeOpen:function(n){if(o.inline=!0,o.dataBind(),l.parent.readonly||!l.parent.enabled)return void(n.cancel=!0);var i=n.event?n.event.target:null;if(l.currentElement=g.element,l.currentDropdown=g,l.paletteSelection(n,l.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 s=i.classList.contains("e-rte-elements")?i.style.borderBottomColor:i.querySelector(".e-rte-elements").style.borderBottomColor;l.parent.notify(J,{});var a=(c=l.parent.formatter.editorManager.nodeSelection.getRange(l.parent.contentModule.getDocument())).startContainer.parentNode,d=t.closest(c.startContainer.parentNode,"table");return void(("TD"===c.startContainer.nodeName||"TH"===c.startContainer.nodeName||t.closest(c.startContainer.parentNode,"td,th")||l.parent.iframeSettings.enable&&!p(a.ownerDocument.querySelector("body"),"e-lib"))&&c.collapsed&&"BackgroundColor"===e.subCommand&&t.closest(d,"."+de)?l.parent.notify("tableColorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:s}}):l.parent.notify("colorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:s}}))}var h=n.element.querySelector(".e-control.e-colorpicker"),u=t.getInstance(h,r.ColorPicker);u.showButtons=!n.element.querySelector(".e-color-palette"),u.dataBind(),n.element.onclick=function(e){e.target.classList.contains("e-cancel")&&g.toggle()}},open:function(e){a.setColorPickerContentWidth(o);var t,n=e.element.querySelector(".e-control.e-colorpicker");(t=e.element.querySelector(".e-color-palette")?n.parentElement.querySelector(".e-palette"):n.parentElement.querySelector("e-handler"))&&t.focus(),a.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 c=l.parent.formatter.editorManager.nodeSelection.getRange(l.parent.contentModule.getDocument()),void(("TD"===c.startContainer.nodeName||"TH"===c.startContainer.nodeName||t.closest(c.startContainer.parentNode,"td,th"))&&c.collapsed?l.parent.notify("tableColorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:o}}):l.parent.notify("colorPickerChanged",{item:{command:e.command,subCommand:e.subCommand,value:o}}))}},close:function(e){l.parent.notify(J,{})}});return g.isStringTemplate=!0,g.createElement=l.parent.createElement,e.element.setAttribute("role","button"),g.appendTo(e.element),document.getElementById(g.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),g.element.insertBefore(h,g.element.querySelector(".e-caret")),e.element.tabIndex=-1,g.element.removeAttribute("type"),g.element.onmousedown=function(){l.parent.notify(Y,{})},g.element.onkeydown=function(){l.parent.notify(Y,{})},g},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.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=this,a=new r.ColorPicker({enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,inline:!1,value:"#fff",created:function(){var e="backgroundcolor"===n?s.parent.backgroundColor.default:s.parent.fontColor.default;a.setProperties({value:e})},mode:"backgroundcolor"===n?s.parent.backgroundColor.mode:s.parent.fontColor.mode,modeSwitcher:"backgroundcolor"===n?s.parent.backgroundColor.modeSwitcher:s.parent.fontColor.modeSwitcher,beforeTileRender:function(e){if(e.element.classList.add("e-rte-square-palette"),e.element.classList.add("e-custom-tile"),!t.isNullOrUndefined(o.parent.cssClass))for(var n=o.parent.getCssClass().split(" "),i=0;i<n.length;i++)""!==n[i].trim()&&e.element.classList.add(n[i]);""===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},s.parent.notify(J,{}),s.currentElement.querySelector(".e-rte-elements").style.borderBottomColor=i;var o=s.parent.formatter.editorManager.nodeSelection.getRange(s.parent.contentModule.getDocument()),r=t.closest(o.startContainer.parentNode,"table");("TD"===o.startContainer.nodeName||"TH"===o.startContainer.nodeName||"BODY"===o.startContainer.nodeName||t.closest(o.startContainer.parentNode,"td,th"))&&o.collapsed&&"BackgroundColor"===e.subCommand&&t.closest(r,"."+de)?s.parent.notify("tableColorPickerChanged",n):s.parent.notify("colorPickerChanged",n),s.currentDropdown.toggle()},beforeModeSwitch:function(e){""===(i=a.value)&&a.setProperties({value:"Picker"===e.mode?"#008000ff":""},!0),a.showButtons="Palette"!==e.mode}});return a.isStringTemplate=!0,a.columns="backgroundcolor"===n?this.parent.backgroundColor.columns:this.parent.fontColor.columns,a.presetColors="backgroundcolor"===n?this.parent.backgroundColor.colorCode:this.parent.fontColor.colorCode,a.cssClass=("backgroundcolor"===n?"e-rte-backgroundcolor-colorpicker":"e-rte-fontcolor-colorpicker")+" "+e.cssClass,a.createElement=this.parent.createElement,a.appendTo(document.getElementById(e.target)),a},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}(),lt=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,Ee,w(this.parent.toolbarSettings.itemConfigs),!0):this.tools=Ee}return n.prototype.addEventListener=function(){this.parent.on(te,this.setRtl,this),this.parent.on(oe,this.setCssClass,this),this.parent.on(Q,this.removeEventListener,this)},n.prototype.removeEventListener=function(){this.parent.off(te,this.setRtl),this.parent.off(oe,this.setCssClass),this.parent.off(Q,this.removeEventListener)},n.prototype.setCssClass=function(e){t.isNullOrUndefined(this.toolbarObj)||(t.isNullOrUndefined(e.oldCssClass)?this.toolbarObj.setProperties({cssClass:(this.toolbarObj.cssClass+" "+e.cssClass).trim()}):this.toolbarObj.setProperties({cssClass:(this.toolbarObj.cssClass.replace(e.oldCssClass,"").trim()+" "+e.cssClass).trim()}))},n.prototype.setRtl=function(e){t.isNullOrUndefined(this.toolbarObj)||this.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.getClass=function(e){var t;switch(e){case"fontsize":t="e-rte-inline-size-template";break;case"fontcolor":case"backgroundcolor":t="e-rte-inline-color-template";break;default:t="e-rte-inline-template"}return t},n.prototype.getTemplateObject=function(e,t){var n;switch(e){case"fontcolor":case"backgroundcolor":case"numberformatlist":case"bulletformatlist":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,cssClass:this.parent.inlineMode.enable?this.getClass(e):"",tooltipText:f(e,this.locator)}},n.prototype.getObject=function(e,t){var n=e.toLowerCase();if(-1!==Se.indexOf(n))return this.getTemplateObject(n,t);switch(n){case"|":return{type:"Separator"};case"-":return{type:"Separator",cssClass:"e-rte-horizontal-separator"};default:return this.parent.showTooltip?{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}:{id:this.parent.getID()+"_"+t+"_"+this.tools[n.toLocaleLowerCase()].id,prefixIcon:this.tools[n.toLocaleLowerCase()].icon,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(){if(s.undo&&0===i.parent.formatter.getUndoRedoStack().length&&i.parent.formatter.saveData(),a.call(i),i.parent.formatter.getUndoRedoStack().length>0){var e=i.parent.createElement("div"),t=i.parent.formatter.getUndoRedoStack()[i.parent.formatter.getUndoRedoStack().length-1].text.cloneNode(!0);if(e.appendChild(t),e.innerHTML.trim()===i.parent.inputElement.innerHTML.trim())return}s.undo&&i.parent.formatter.saveData()}}o.push(e)}}(a[s]);for(var l=0;l<o.length;l++){var d=o[l].tooltipText,c=void 0;(c=Je[""+d]?t.Browser.isDevice&&u()?Je[""+d].replace("Ctrl","Cmd"):Je[""+d]:d)&&(o[l].tooltipText=d!==c?d+" ("+c+")":d)}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,cssClass:e.cssClass}},n.prototype.render=function(t){this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.toolbarRenderer.renderToolbar(this.getToolbarOptions(t))},n}(),dt=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),"Images"!==n.command&&"Videos"!==n.command&&"Audios"!==n.command&&"Table"!==n.command||e.element.setAttribute("title",v(n.text)),"Alignments"!==n.command&&"JustifyLeft"!==n.subCommand&&"JustifyRight"!==n.subCommand&&"JustifyCenter"!==n.subCommand||e.element.setAttribute("title",f(n.subCommand.toLocaleLowerCase(),this.locator)),"Formats"===n.command&&e.element.setAttribute("title",b(n.subCommand.toLocaleLowerCase(),this.locator,nt)),"Font"===n.command&&e.element.setAttribute("title",b(n.value.toLocaleLowerCase(),this.locator,tt)),"BulletFormatList"===n.subCommand&&e.element.setAttribute("title",b(n.value.toLocaleLowerCase(),this.locator,ot)),"NumberFormatList"===n.subCommand&&e.element.setAttribute("title",b(n.text.replace(/\s/g,"").toLocaleLowerCase(),this.locator,it)),"FontSize"===n.subCommand&&e.element.setAttribute("title",b(n.value.toLocaleLowerCase(),null,null,this.parent))},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;Se.forEach(function(r){var s=void 0;if(-1!==c(r,e.items))switch(r){case"numberformatlist":if(s=t.select("#"+n.parent.getID()+"_"+i+"_NumberFormatList",o),t.isNullOrUndefined(s)||s.classList.contains(ue))return;var a=n.parent.numberFormatList.types.slice();a.forEach(function(e){Object.defineProperties(e,{command:{value:"Lists",enumerable:!0},subCommand:{value:"NumberFormatList",enumerable:!0}})}),n.numberFormatListDropDown=n.toolbarRenderer.renderListDropDown({cssClass:"e-order-list e-rte-elements e-icons",itemName:"NumberFormatList",items:a,element:s});break;case"bulletformatlist":if(s=t.select("#"+n.parent.getID()+"_"+i+"_BulletFormatList",o),t.isNullOrUndefined(s)||s.classList.contains(ue))return;var l=n.parent.bulletFormatList.types.slice();l.forEach(function(e){Object.defineProperties(e,{command:{value:"Lists",enumerable:!0},subCommand:{value:"BulletFormatList",enumerable:!0}})}),n.bulletFormatListDropDown=n.toolbarRenderer.renderListDropDown({cssClass:"e-unorder-list e-rte-elements e-icons",itemName:"BulletFormatList",items:l,element:s});break;case"formats":if(s=t.select("#"+n.parent.getID()+"_"+i+"_Formats",o),t.isNullOrUndefined(s)||s.classList.contains(ue))return;var d=n.parent.format.types.slice();d.forEach(function(e){Object.defineProperties(e,{command:{value:"Formats",enumerable:!0},subCommand:{value:e.value,enumerable:!0}})});var p=t.isNullOrUndefined(n.parent.format.default)?d[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(d,p,"text","text")),cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-formats-tbar-btn",itemName:"Formats",items:d,element:s});break;case"fontname":if(s=t.select("#"+n.parent.getID()+"_"+i+"_FontName",o),t.isNullOrUndefined(s)||s.classList.contains(ue))return;var u=n.parent.fontFamily.items.slice();u.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontName",enumerable:!0}})});var g=t.isNullOrUndefined(n.parent.fontFamily.default)?u[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(u,g,"text","text")),cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-font-name-tbar-btn",itemName:"FontName",items:u,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(ue))return;var f=!t.isNullOrUndefined(n.fontSizeDropDown)&&!t.isNullOrUndefined(n.fontSizeDropDown.items)&&n.fontSizeDropDown.items.length>0?n.fontSizeDropDown.items:JSON.parse(JSON.stringify(n.parent.fontSize.items.slice()));f.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontSize",enumerable:!0}})});var b=t.isNullOrUndefined(n.parent.fontSize.default)?f[1].text:n.parent.fontSize.default;n.fontSizeDropDown=n.toolbarRenderer.renderDropDownButton({content:n.dropdownContent(n.parent.fontSize.width,i,m(h(f,b.replace(/\s/g,""),"value","text"))),cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-font-size-tbar-btn",itemName:"FontSize",items:f,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(ue))return;n.alignDropDown=n.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-alignment-tbar-btn",itemName:"Alignments",items:Oe,element:s});break;case"align":case"videoalign":n.renderAlignmentDropDown(i,o,s,r);break;case"display":case"audiolayoutoption":case"videolayoutoption":n.renderDisplayDropDown(i,o,s,r);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)}}),this.parent.inlineMode.enable&&this.setCssClass({cssClass:this.parent.getCssClass()})},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,"."+ce))?"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,"."+ce))?"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 C=this.formatDropDown.items;n=t.isNullOrUndefined(t.closest(this.formatDropDown.element,"."+ce))?"toolbar":"quick";var y=t.isNullOrUndefined(this.parent.format.default)?C[0].text:this.parent.format.default;i=this.dropdownContent(this.parent.format.width,n,"quick"===n?"":h(C,y,"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(ue)||(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:Pe,element:i}))},n.prototype.columnDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableColumns",n)).classList.contains(ue)||(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:He,element:i}))},n.prototype.cellDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableCell",n)).classList.contains(ue)||(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:Ae,element:i}))},n.prototype.verticalAlignDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableCellVerticalAlign",n)).classList.contains(ue)||(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:Fe,element:i}))},n.prototype.renderDisplayDropDown=function(e,n,i,o){(i=t.select("#"+this.parent.getID()+"_"+e+("display"===o?"_Display":"videolayoutoption"===o?"_VideoLayoutOption":"_AudioLayoutOption"),n)).classList.contains(ue)||(this.displayDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"display"===o?"e-display e-icons":"videolayoutoption"===o?"e-video-display e-icons":"e-audio-display e-icons",cssClass:"e-rte-dropdown-popup e-rte-dropdown-items e-quick-dropdown",itemName:"display"===o?"Display":"videolayoutoption"===o?"VideoLayoutOption":"AudioLayoutOption",items:"display"===o?Me:"videolayoutoption"===o?Be:Re,element:i}))},n.prototype.renderAlignmentDropDown=function(e,n,i,o){(i=t.select("#"+this.parent.getID()+"_"+e+("align"===o?"_Align":"_VideoAlign"),n)).classList.contains(ue)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:pe+" e-rte-dropdown-icons e-quick-dropdown",itemName:"align"===o?"Align":"VideoAlign",items:"align"===o?we:ke,element:i}))},n.prototype.tableStylesDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Styles",n)).classList.contains(ue)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-style e-icons",cssClass:pe+" e-rte-dropdown-icons e-quick-dropdown",itemName:"Styles",items:this.parent.tableSettings.styles,element:i}))},n.prototype.removeDropDownClasses=function(e){t.removeClass([e],[ue,pe,"e-rte-dropdown-icons",he])},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()),this.numberFormatListDropDown&&(this.removeDropDownClasses(this.numberFormatListDropDown.element),this.numberFormatListDropDown.destroy()),this.bulletFormatListDropDown&&(this.removeDropDownClasses(this.bulletFormatListDropDown.element),this.bulletFormatListDropDown.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}),this.numberFormatListDropDown&&this.numberFormatListDropDown.setProperties({enableRtl:e.enableRtl}),this.bulletFormatListDropDown&&this.bulletFormatListDropDown.setProperties({enableRtl:e.enableRtl})},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){for(var t=[this.formatDropDown,this.fontNameDropDown,this.fontSizeDropDown,this.alignDropDown,this.imageAlignDropDown,this.displayDropDown,this.numberFormatListDropDown,this.bulletFormatListDropDown,this.tableRowsDropDown,this.tableColumnsDropDown,this.tableCellVerticalAlignDropDown],n=0;n<t.length;n++)this.updateCss(t[n],e)},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(te,this.setRtl,this),this.parent.on(Q,this.removeEventListener,this),this.parent.on(W,this.onPropertyChanged,this),this.parent.on(oe,this.setCssClass,this))},n.prototype.onIframeMouseDown=function(){this.parent.getToolbarElement().querySelectorAll('.e-rte-dropdown-btn[aria-expanded="true"]').length>0&&E(document,"mousedown")},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off(te,this.setRtl),this.parent.off("beforeDropDownItemRender",this.beforeRender),this.parent.off(Q,this.removeEventListener),this.parent.off(W,this.onPropertyChanged),this.parent.off(oe,this.setCssClass))},n}(),ct=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}(),pt=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}(),ht=function(){function e(e){this.parent=e,this.addEventListener(),this.serviceLocator=new ct,this.serviceLocator.register("rendererFactory",new pt)}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(Q,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)}"NumberFormatList"!==e.item.command&&"BulletFormatList"!==e.item.command||(e.originalEvent.target.classList.contains("e-order-list")||e.originalEvent.target.classList.contains("e-unorder-list"))&&(e.item.command="Lists",e.item.subCommand="NumberFormatList"===e.item.subCommand?"OL":"UL"),"Lists"===e.item.command&&e.originalEvent.target.classList.contains("e-caret")&&(e.originalEvent.target.parentElement.classList.contains("e-rte-bulletformatlist-dropdown")||e.originalEvent.target.parentElement.classList.contains("e-rte-numberformatlist-dropdown"))||(this.parent.notify("html-toolbar-click",e),this.parent.notify("markdown-toolbar-click",e))}},e.prototype.dropDownSelect=function(e){if(this.parent.notify(J,{}),!document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))||!e.item||"Images"!==e.item.command&&"Audios"!==e.item.command&&"Videos"!==e.item.command&&"VideoLayoutOption"!==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;if("Lists"===e.item.command){var n={listStyle:e.item.value,listImage:e.item.listImage,type:e.item.subCommand};this.parent.formatter.process(this.parent,e,e.originalEvent,n)}else this.parent.formatter.process(this.parent,e,e.originalEvent,t)}this.parent.notify(Y,{})},e.prototype.renderSelection=function(e){this.parent.notify(J,{}),this.parent.formatter.process(this.parent,e,e.originalEvent,null),this.parent.notify(Y,{})},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(Q,this.removeEventListener)},e}(),ut=function(){function n(n,i){this.tools={},this.parent=n,this.isToolbar=!1,this.locator=i,this.isTransformChild=!1,this.renderFactory=this.locator.getService("rendererFactory"),d(this.parent),I(this.parent),this.renderFactory.addRenderer(e.RenderType.Toolbar,new at(this.parent,this.locator)),this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.baseToolbar=new lt(this.parent,this.locator),this.addEventListener(),this.parent.toolbarSettings&&Object.keys(this.parent.toolbarSettings.itemConfigs).length>0?t.extend(this.tools,Ee,w(this.parent.toolbarSettings.itemConfigs),!0):this.tools=Ee}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();break;case"enter":e.target.classList.contains("e-hor-nav")&&this.adjustContentHeight(e.target,!0)}},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.inlineMode.enable?this.parent.element.insertBefore(this.tbElement,this.editPanel):(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)))},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,cssClass:this.parent.getCssClass()}),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||f.top<s+n)&&(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,cssClass:this.parent.getCssClass()}),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()];"en-US"!==this.parent.locale&&(n.tooltip=f(e.updateItem.toLocaleLowerCase(),this.locator));var i=N(y(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(),e.baseToolbar.toolbarObj.refreshOverflow()}},n.prototype.updateToolbarStatus=function(e){this.tbElement&&(!this.parent.inlineMode.enable||!u()&&t.Browser.isDevice)&&C({args:e,dropDownModule:this.dropDownModule,parent:this.parent,tbElements:t.selectAll("."+me,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=N(y(n),e.toolbarObj.items);this.tbItems=t.selectAll("."+me,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||S(e,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus())},n.prototype.removeTBarItems=function(e){t.isNullOrUndefined(this.baseToolbar.toolbarObj)&&(this.baseToolbar=this.parent.getBaseToolbarObject());var n=N(y(e),this.baseToolbar.toolbarObj.items);this.tbItems=this.parent.inlineMode.enable?t.selectAll("."+me,this.baseToolbar.toolbarObj.element):t.selectAll("."+me,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.parent.element.classList.remove("e-rtl"),this.baseToolbar.toolbarObj.refreshOverflow(),this.parent.enableRtl&&this.parent.element.classList.add("e-rtl")},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(){t.isNullOrUndefined(this.parent)||this.isToolbarDestroyed()&&(this.destroyToolbar(),this.keyBoardModule&&this.keyBoardModule.destroy())},n.prototype.moduleDestroy=function(){this.parent=null,this.baseToolbar.parent=null,this.toolbarActionModule.parent=null,this.dropDownModule.parent=null},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.toolbarClickHandler=function(e){var n=t.closest(e.originalEvent.target,".e-hor-nav");this.adjustContentHeight(n,!1)},n.prototype.adjustContentHeight=function(n,i){if(n&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&!t.isNullOrUndefined(n)){var o=this.tbElement.querySelector(".e-toolbar-extended");t.isNullOrUndefined(o)||(t.setStyleAttribute(o,{maxHeight:"",display:"block"}),t.setStyleAttribute(o,{maxHeight:o.offsetHeight+"px",display:""}));var r=n.classList.contains("e-nav-active"),s=i?!r:!!r;s?t.addClass([this.tbElement],["e-expand-open"]):t.removeClass([this.tbElement],["e-expand-open"]),this.parent.setContentHeight("toolbar",s)}else(t.Browser.isDevice||this.parent.inlineMode.enable)&&(this.isToolbar=!0);t.isNullOrUndefined(n)&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&0===this.parent.toolbarModule.getExpandTBarPopHeight()&&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)},n.prototype.unWireEvents=function(){t.EventHandler.remove(this.tbElement,"focusin",this.tbFocusHandler)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.dropDownModule=new dt(this.parent,this.locator),this.toolbarActionModule=new ht(this.parent),this.parent.on(V,this.renderToolbar,this),this.parent.on(Z,this.scrollHandler,this),this.parent.on("bind-on-end",this.toolbarBindEvent,this),this.parent.on("toolbar-updated",this.updateToolbarStatus,this),this.parent.on(W,this.onPropertyChanged,this),this.parent.on("refresh-begin",this.onRefresh,this),this.parent.on(Q,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($,this.mouseDownHandler,this),this.parent.on("sourceCodeMouseDown",this.mouseDownHandler,this),this.parent.on(oe,this.setCssClass,this),this.parent.on(ie,this.moduleDestroy,this),this.parent.inlineMode.enable||u()||this.parent.on("toolbarClick",this.toolbarClickHandler,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(V,this.renderToolbar),this.parent.off(Z,this.scrollHandler),this.parent.off("bind-on-end",this.toolbarBindEvent),this.parent.off("toolbar-updated",this.updateToolbarStatus),this.parent.off(W,this.onPropertyChanged),this.parent.off("refresh-begin",this.onRefresh),this.parent.off(Q,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($,this.mouseDownHandler),this.parent.off("sourceCodeMouseDown",this.mouseDownHandler),this.parent.off(oe,this.setCssClass),this.parent.off(ie,this.moduleDestroy),this.parent.inlineMode.enable||u()||this.parent.off("toolbarClick",this.toolbarClickHandler))},n.prototype.setCssClass=function(e){this.toolbarObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?this.toolbarObj.setProperties({cssClass:(this.toolbarObj.cssClass+" "+e.cssClass).trim()}):this.toolbarObj.setProperties({cssClass:(this.toolbarObj.cssClass.replace(e.oldCssClass,"").trim()+" "+e.cssClass).trim()}))},n.prototype.onRefresh=function(){this.parent.inlineMode.enable||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)||S(this.baseToolbar,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus()),this.parent.notify("dynamicModule",{}))},n.prototype.getModuleName=function(){return"toolbar"},n}(),mt=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)}}(),gt=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},ft={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,"<":188,">":190},bt=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}mt(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 ft[""+e]||e.toUpperCase().charCodeAt(0)};var i;return n.configCache={},gt([t.Property({})],n.prototype,"keyConfigs",void 0),gt([t.Property("keyup")],n.prototype,"eventName",void 0),gt([t.Event()],n.prototype,"keyAction",void 0),n=i=gt([t.NotifyPropertyChanges],n)}(t.Base),vt=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,Ee,w(this.parent.toolbarSettings.itemConfigs),!0):this.tools=Ee}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;Se.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");if(l.id=i,l.classList.add("e-rte-fontcolor-element"),!t.isNullOrUndefined(n.parent.cssClass))for(var d=n.parent.cssClass.split(" "),p=0;p<d.length;p++)""!==d[p].trim()&&l.classList.add(d[p]);document.body.appendChild(l),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" e-rte-elements e-icons"+n.parent.getCssClass(!0),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 h=n.parent.createElement("input");if(h.id=i,h.classList.add("e-rte-backgroundcolor-element"),!t.isNullOrUndefined(n.parent.cssClass))for(var d=n.parent.cssClass.split(" "),p=0;p<d.length;p++)""!==d[p].trim()&&h.classList.add(d[p]);document.body.appendChild(h),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" e-rte-elements e-icons"+n.parent.getCssClass(!0),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.defaultColorPicker)}}),this.parent.inlineMode.enable&&this.setCssClass({cssClass:this.parent.getCssClass()})},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&&(this.defaultColorPicker=e.children[0].style.borderBottomColor,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.setCssClass=function(e){this.updateCss(this.fontColorPicker,this.fontColorDropDown,e),this.updateCss(this.backgroundColorPicker,this.backgroundColorDropDown,e)},n.prototype.updateCss=function(e,n,i){e&&i.cssClass&&(t.isNullOrUndefined(i.oldCssClass)?(e.setProperties({cssClass:(e.cssClass+" "+i.cssClass).trim()}),n.setProperties({cssClass:(n.cssClass+" "+i.cssClass).trim()})):(e.setProperties({cssClass:(e.cssClass.replace(i.oldCssClass,"").replace(" "," ").trim()+" "+i.cssClass).trim()}),n.setProperties({cssClass:(n.cssClass.replace(i.oldCssClass,"").replace(" "," ").trim()+" "+i.cssClass).trim()})))},n.prototype.addEventListener=function(){this.parent.on("toolbarRenderComplete",this.renderColorPickerInput,this),this.parent.on(te,this.setRtl,this),this.parent.on(Q,this.destroy,this),this.parent.on("destroy-color-picker",this.destroyColorPicker,this),this.parent.on(W,this.onPropertyChanged,this),this.parent.on(oe,this.setCssClass,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(Q,this.destroy),this.parent.off(te,this.setRtl),this.parent.off("destroy-color-picker",this.destroyColorPicker),this.parent.off(W,this.onPropertyChanged),this.parent.off(oe,this.setCssClass)},n}(),Ct=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 dt(this.parent,this.locator),this.colorPickerObj=new vt(this.parent,this.locator)}return n.prototype.appendPopupContent=function(){this.toolbarElement=this.parent.createElement("div",{className:ce}),this.element.classList.contains("e-rte-text-popup")&&this.toolbarElement.classList.add("e-rte-text-quicktoolbar"),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":"Text"===e.popupType?"e-rte-text-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,e.cssClass),this.popupRenderer.renderPopup(this),this.addEventListener()},n.prototype.createToolbar=function(e,t,n){this.quickTBarObj=new lt(this.parent,this.locator),this.quickTBarObj.render({container:"quick",target:this.toolbarElement,items:e,mode:t,cssClass:n}),this.quickTBarObj.toolbarObj.refresh()},n.prototype.setPosition=function(e){var n,i,o=t.closest(e.target,".e-img-caption"),r=!e.target.classList.contains("e-imginline")&&!e.target.classList.contains("e-imgbreak"),s=t.isNullOrUndefined(o)?e.target:o;t.addClass([this.toolbarElement],["e-remove-white-space"]);var a=s.classList.contains("e-rte-audio")?s.parentElement.offsetTop:s.offsetTop,l=window.pageYOffset+e.parentData.top;i=a-e.editTop>e.popHeight?l+e.tBarElementHeight+(a-e.editTop)-e.popHeight-5:e.editTop+e.editHeight-(a+s.offsetHeight)>e.popHeight?l+e.tBarElementHeight+(a-e.editTop)+s.offsetHeight+5:e.y,n=(s=r?e.target:s).offsetWidth>e.popWidth?s.offsetWidth/2-e.popWidth/2+e.parentData.left+(s.classList.contains("e-rte-audio")?s.parentElement.offsetLeft:s.offsetLeft):e.parentData.left+s.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||"text"===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||"text"===n?window.pageXOffset+(e.windowWidth-(e.popWidth+e.bodyRightSpace+10)):e.x-e.popWidth;break;case"left":i="inline"===n||"text"===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,r){var s=this,a={popup:this.popupObj,cancel:!1,targetElement:i,positionX:e,positionY:n};this.parent.trigger("beforeQuickToolbarOpen",a,function(a){if(!a.cancel){var l=void 0,d=void 0,c=window.getComputedStyle(document.body),p=parseFloat(c.marginRight.split("px")[0])+parseFloat(c.paddingRight.split("px")[0]),h=window.innerHeight,m=window.innerWidth,g=s.parent.element,f=!t.isNullOrUndefined(s.parent.getToolbar()),b=f&&s.parent.toolbarModule.getToolbarHeight(),v=f&&s.parent.toolbarModule.getExpandTBarPopHeight(),C=f?b+v:0;if(t.addClass([s.element],["e-hide"]),t.Browser.isDevice&&!u()&&t.addClass([s.parent.getToolbar()],["e-hide"]),s.parent.iframeSettings.enable)l=(y=s.contentRenderer.getPanel().contentWindow).pageYOffset,d=y.innerHeight;else{var y=t.closest(i,".e-rte-content");l=y?y.scrollTop:0,d=y?y.offsetHeight:0}(s.parent.inlineMode.enable||t.closest(i,"table")||"text"===r||"link"===r)&&"IMG"!==i.tagName||(s.parent.disableToolbarItem(s.parent.toolbarSettings.items),s.parent.enableToolbarItem(["Undo","Redo"])),t.append([s.element],document.body),s.parent.showTooltip&&(s.tooltip=new o.Tooltip({target:"#"+s.element.id+" [title]",openDelay:400,showTipPointer:!0,windowCollision:!0,position:"BottomCenter"}),s.tooltip.appendTo(s.element)),s.popupObj.position.X=a.positionX+20,s.popupObj.position.Y=a.positionY+20,s.popupObj.dataBind(),s.popupObj.element.classList.add("e-popup-open"),s.dropDownButtons.renderDropDowns({container:s.toolbarElement,containerType:"quick",items:s.stringItems}),s.colorPickerObj.renderColorPickerInput({container:s.toolbarElement,containerType:"quick",items:s.stringItems});var N={x:e,y:n,target:i,editTop:l,editHeight:d,popup:s.popupObj.element,popHeight:s.popupObj.element.offsetHeight,popWidth:s.popupObj.element.offsetWidth,parentElement:g,bodyRightSpace:p,windowY:window.pageYOffset,windowHeight:h,windowWidth:m,parentData:g.getBoundingClientRect(),tBarElementHeight:C};("IMG"===i.tagName||"AUDIO"===i.tagName||"VIDEO"===i.tagName||"IFRAME"===i.tagName||i.classList&&(i.classList.contains("e-audio-wrap")||i.classList.contains("e-clickelem")||i.classList.contains("e-video-clickelem")))&&s.setPosition(N),s.parent.inlineMode.enable||s.checkCollision(N,"parent",""),s.checkCollision(N,"document",s.parent.inlineMode.enable?"inline":"text"===r?"text":""),s.popupObj.element.classList.remove("e-popup-open"),t.removeClass([s.element],["e-hide"]),s.popupObj.show({name:"ZoomIn",duration:t.Browser.isIE?250:400}),s.popupObj&&s.parent.cssClass&&(t.removeClass([s.popupObj.element],s.parent.cssClass),t.addClass([s.popupObj.element],s.parent.cssClass)),t.setStyleAttribute(s.element,{maxWidth:window.outerWidth+"px"}),t.addClass([s.element],["e-rte-pop"]),s.isDOMElement=!0}})},n.prototype.hidePopup=function(){var e=this.parent.sourceCodeModule.getViewPanel();if(t.Browser.isDevice&&!u()&&t.removeClass([this.parent.getToolbar()],["e-hide"]),t.isNullOrUndefined(document.querySelector(".e-tooltip-wrap")))t.isNullOrUndefined(this.tooltip)||this.tooltip.destroy();else{if(!t.isNullOrUndefined(document.querySelector("#"+this.element.id+" [data-tooltip-id]"))){var n=document.querySelector("#"+this.element.id+" [data-tooltip-id]"),i=n.getAttribute("data-content");n.removeAttribute("data-content"),n.setAttribute("title",i),n.removeAttribute("data-tooltip-id")}this.tooltip.destroy()}t.isNullOrUndefined(this.parent.getToolbar())||this.parent.inlineMode.enable||(t.isNullOrUndefined(e)||"none"===e.style.display)&&this.parent.enableToolbarItem(this.parent.toolbarSettings.items),this.parent.showTooltip&&!t.isNullOrUndefined(document.querySelector(".e-tooltip-wrap"))&&this.parent.notify("destroyTooltip",{args:event}),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=this.popupObj;this.parent.trigger("quickToolbarClose",n)}},n.prototype.updateStatus=function(e){C({args:e,dropDownModule:this.dropDownButtons,parent:this.parent,tbElements:t.selectAll("."+me,this.element),tbItems:this.quickTBarObj.toolbarObj.items},!0,this.parent),this.parent.quickToolbarSettings.text&&this.parent.quickToolbarModule.textQTBar&&(C({args:e,dropDownModule:this.parent.quickToolbarModule.textQTBar.dropDownButtons,parent:this.parent,tbElements:t.selectAll("."+me,this.parent.quickToolbarModule.textQTBar.element),tbItems:this.parent.quickToolbarModule.textQTBar.quickTBarObj.toolbarObj.items},!0,this.parent),S(this.parent.quickToolbarModule.textQTBar.quickTBarObj,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus())),t.select(".e-rte-srctextarea",this.parent.element)||S(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(Q,this.destroy,this),this.parent.on(W,this.onPropertyChanged,this),(this.parent.inlineMode.enable||this.parent.quickToolbarSettings.text)&&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(Q,this.destroy),this.parent.off(W,this.onPropertyChanged),(this.parent.inlineMode.enable||this.parent.quickToolbarSettings.text)&&this.parent.off("toolbar-updated",this.updateStatus))},n}(),yt=function(){function e(e){this.parent=e}return e.prototype.quickToolbarOpen=function(){var e=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}(),Nt=function(){function n(t,n){this.parent=t,this.locator=n,this.renderFactory=this.locator.getService("rendererFactory"),this.renderFactory.addRenderer(e.RenderType.Popup,new yt(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,cssClass:this.parent.getCssClass()}},n.prototype.createQTBar=function(e,t,n,i){if(n.length<1)return null;var o=new Ct(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.keyUpQT=function(e){27===e.which&&this.hideQuickToolbars()},n.prototype.renderQuickToolbars=function(){this.linkQTBar||this.imageQTBar||this.audioQTBar||this.videoQTBar||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),t.isNullOrUndefined(this.parent.quickToolbarSettings.text)||this.parent.inlineMode.enable||(this.textQTBar=this.createQTBar("Text","MultiRow",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.audioQTBar=this.createQTBar("Audio","MultiRow",this.parent.quickToolbarSettings.audio,e.RenderType.AudioToolbar),this.renderFactory.addRenderer(e.RenderType.AudioToolbar,this.audioQTBar),this.videoQTBar=this.createQTBar("Video","MultiRow",this.parent.quickToolbarSettings.video,e.RenderType.VideoToolbar),this.renderFactory.addRenderer(e.RenderType.VideoToolbar,this.videoQTBar),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),t.EventHandler.add(this.linkQTBar.element,"keyup",this.keyUpQT,this)),this.imageQTBar&&(t.EventHandler.add(this.imageQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.imageQTBar.element,"keyup",this.keyUpQT,this)),this.audioQTBar&&(t.EventHandler.add(this.audioQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.audioQTBar.element,"keyup",this.keyUpQT,this)),this.videoQTBar&&(t.EventHandler.add(this.videoQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.videoQTBar.element,"keyup",this.keyUpQT,this)),this.textQTBar&&(t.EventHandler.add(this.textQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.textQTBar.element,"keyup",this.keyUpQT,this)),this.tableQTBar&&(t.EventHandler.add(this.tableQTBar.element,"mousedown",this.onMouseDown,this),t.EventHandler.add(this.tableQTBar.element,"keyup",this.keyUpQT,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),t.EventHandler.add(this.inlineQTBar.element,"keyup",this.keyUpQT,this))},n.prototype.showInlineQTBar=function(e,n,i){t.isNullOrUndefined(this.parent)||this.parent.readonly||"img"===i.tagName.toLowerCase()||this.inlineQTBar.showPopup(e,n,i)},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.audioQTBar&&!p(this.audioQTBar.element,"e-popup-close")&&document.body.contains(this.audioQTBar.element)&&this.audioQTBar.hidePopup(),this.videoQTBar&&!p(this.videoQTBar.element,"e-popup-close")&&document.body.contains(this.videoQTBar.element)&&this.videoQTBar.hidePopup(),this.tableQTBar&&!p(this.tableQTBar.element,"e-popup-close")&&document.body.contains(this.tableQTBar.element)&&this.tableQTBar.hidePopup(),t.isNullOrUndefined(this.parent)||!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;this.hideInlineQTBar();l=this.parent.element.getBoundingClientRect().left;if(this.offsetX=this.parent.iframeSettings.enable?window.pageXOffset+l+n.clientX: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");o=r||o;var s=this.parent.getRange().startContainer.parentElement,a=this.parent.getRange().endContainer.parentElement;if((t.isNullOrUndefined(t.closest(s,"A"))||t.isNullOrUndefined(t.closest(a,"A")))&&(!t.closest(o,"td,th")||!i.collapsed)&&("IMG"!==o.tagName||this.parent.getRange().startOffset!==this.parent.getRange().endOffset)){if(this.parent.inlineMode.onSelection&&i.collapsed)return;this.target=o,this.showInlineQTBar(this.offsetX,this.offsetY,o)}}}}if(!t.isNullOrUndefined(this.textQTBar)&&!t.isNullOrUndefined(this.parent.quickToolbarSettings.text)&&!this.parent.inlineMode.enable){var n=e.args.touches?e.args.changedTouches[0]:e.args,o=e.args.target;this.hideQuickToolbars();var l=this.parent.element.getBoundingClientRect().left;if(this.offsetX=this.parent.iframeSettings.enable?this.parent.element.ownerDocument.documentElement.scrollLeft+l+n.clientX:n.pageX,this.offsetY=g(n,this.parent.element,this.parent.iframeSettings.enable),(i=this.parent.getRange()).endContainer.parentElement.tagName===i.startContainer.parentElement.tagName&&"A"===i.startContainer.parentElement.tagName&&"A"===i.endContainer.parentElement.tagName||"IMG"===o.tagName||"VIDEO"===o.tagName||"AUDIO"===o.tagName||1===o.childNodes[0].nodeType&&o.childNodes[0].classList.contains("e-rte-audio")||this.parent.getRange().startOffset===this.parent.getRange().endOffset)return;this.target=o,this.textQTBar.showPopup(this.offsetX,this.offsetY,o,"text")}},n.prototype.keyDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!u()||t.isNullOrUndefined(t.select(".e-rte-inline-popup",document))||this.hideInlineQTBar(),this.textQTBar&&!p(this.textQTBar.element,"e-popup-close")&&this.textQTBar.hidePopup()},n.prototype.inlineQTBarMouseDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!u()||t.isNullOrUndefined(t.select(".e-rte-inline-popup",document))||this.hideInlineQTBar(),t.isNullOrUndefined(this.parent.quickToolbarSettings.text)||this.textQTBar&&!p(this.textQTBar.element,"e-popup-close")&&document.body.contains(this.textQTBar.element)&&this.textQTBar.hidePopup()},n.prototype.keyUpHandler=function(e){var n=e.args;if(this.parent.inlineMode.enable&&!t.Browser.isDevice){if(this.parent.inlineMode.onSelection)return void(this.parent.getSelection().length>0&&(n.ctrlKey&&65===n.keyCode||n.shiftKey&&(33===n.keyCode||34===n.keyCode||35===n.keyCode||36===n.keyCode||37===n.keyCode||38===n.keyCode||39===n.keyCode||40===n.keyCode))&&this.showInlineQTBar(this.offsetX,this.offsetY,n.target));this.deBounce(this.offsetX,this.offsetY,n.target)}this.parent.quickToolbarSettings.text&&!t.Browser.isDevice&&(n.ctrlKey&&65===n.keyCode||n.shiftKey&&(33===n.keyCode||34===n.keyCode||35===n.keyCode||36===n.keyCode||37===n.keyCode||38===n.keyCode||39===n.keyCode||40===n.keyCode))&&this.textQTBar.showPopup(this.offsetX,this.offsetY,n.target,"text")},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(){t.isNullOrUndefined(this.parent)||(this.linkQTBar&&(t.EventHandler.remove(this.linkQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.linkQTBar.element,"keyup",this.keyUpQT),this.linkQTBar.destroy()),this.textQTBar&&(t.EventHandler.remove(this.textQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.textQTBar.element,"keyup",this.keyUpQT),this.textQTBar.destroy()),this.imageQTBar&&(t.EventHandler.remove(this.imageQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.imageQTBar.element,"keyup",this.keyUpQT),this.imageQTBar.destroy()),this.audioQTBar&&(t.EventHandler.remove(this.audioQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.audioQTBar.element,"keyup",this.keyUpQT),this.audioQTBar.destroy()),this.videoQTBar&&(t.EventHandler.remove(this.videoQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.videoQTBar.element,"keyup",this.keyUpQT),this.videoQTBar.destroy()),this.tableQTBar&&(t.EventHandler.remove(this.tableQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.tableQTBar.element,"keyup",this.keyUpQT),this.tableQTBar.destroy()),this.inlineQTBar&&(t.EventHandler.remove(this.inlineQTBar.element,"mousedown",this.onMouseDown),t.EventHandler.remove(this.inlineQTBar.element,"keyup",this.keyUpQT),u()&&t.EventHandler.remove(document,"selectionchange",this.selectionChangeHandler),this.inlineQTBar.destroy()),this.removeEventListener())},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.wireInlineQTBarEvents=function(){this.parent.on("mouseUp",this.mouseUpHandler,this),this.parent.on($,this.inlineQTBarMouseDownHandler,this),this.parent.on(G,this.keyDownHandler,this),this.parent.on(K,this.keyUpHandler,this),this.parent.on("sourceCodeMouseDown",this.mouseUpHandler,this),this.parent.on("renderInlineToolbar",this.renderInlineQuickToolbar,this),this.parent.on(ie,this.moduleDestroy,this)},n.prototype.unWireInlineQTBarEvents=function(){this.parent.off("mouseUp",this.mouseUpHandler),this.parent.off($,this.inlineQTBarMouseDownHandler),this.parent.off(G,this.keyDownHandler),this.parent.off(K,this.keyUpHandler),this.parent.off("sourceCodeMouseDown",this.mouseUpHandler),this.parent.off("renderInlineToolbar",this.renderInlineQuickToolbar),this.parent.off(ie,this.moduleDestroy)},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.audioQTBar&&!p(this.audioQTBar.element,"e-popup-close")&&this.audioQTBar.hidePopup(),this.videoQTBar&&!p(this.videoQTBar.element,"e-popup-close")&&this.videoQTBar.hidePopup(),this.tableQTBar&&!p(this.tableQTBar.element,"e-popup-close")&&this.tableQTBar.hidePopup()},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(V,this.initializeQuickToolbars,this),this.parent.on($,this.renderQuickToolbars,this),this.parent.on("toolbar-updated",this.toolbarUpdated,this),this.parent.on("drop",this.renderQuickToolbars,this),this.wireInlineQTBarEvents(),this.parent.on(W,this.onPropertyChanged,this),"hide"===this.parent.quickToolbarSettings.actionOnScroll&&(this.parent.on(Z,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(Q,this.destroy,this),this.parent.on(G,this.onKeyDown,this),this.parent.on(te,this.setRtl,this),this.parent.on(oe,this.setCssClass,this),this.parent.on("hidePopup",this.hideQuickToolbars,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(),this.audioQTBar&&!p(this.audioQTBar.element,"e-popup-close")&&this.audioQTBar.hidePopup(),this.videoQTBar&&!p(this.videoQTBar.element,"e-popup-close")&&this.videoQTBar.hidePopup(),this.tableQTBar&&!p(this.tableQTBar.element,"e-popup-close")&&this.tableQTBar.hidePopup(),this.linkQTBar&&!p(this.linkQTBar.element,"e-popup-close")&&this.linkQTBar.hidePopup(),this.textQTBar&&!p(this.textQTBar.element,"e-popup-close")&&this.textQTBar.hidePopup())},n.prototype.onIframeMouseDown=function(){this.hideQuickToolbars(),this.hideInlineQTBar()},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass&&e.quickTBarObj.toolbarObj.cssClass!==n.cssClass)?e.quickTBarObj.toolbarObj.setProperties({cssClass:(e.quickTBarObj.toolbarObj.cssClass+" "+n.cssClass).trim()}):e.quickTBarObj.toolbarObj.setProperties({cssClass:(e.quickTBarObj.toolbarObj.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){for(var t=[this.inlineQTBar,this.imageQTBar,this.linkQTBar,this.textQTBar,this.tableQTBar],n=0;n<t.length;n++)this.updateCss(t[n],e)},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.audioQTBar&&this.audioQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.videoQTBar&&this.videoQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.linkQTBar&&this.linkQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.textQTBar&&this.textQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.removeEventListener=function(){this.deBouncer&&clearTimeout(this.deBouncer),this.parent.isDestroyed||(this.parent.off(V,this.initializeQuickToolbars),this.parent.off($,this.renderQuickToolbars),this.parent.off("toolbar-updated",this.toolbarUpdated),this.parent.off("drop",this.renderQuickToolbars),this.unWireInlineQTBarEvents(),this.parent.off(W,this.onPropertyChanged),"hide"===this.parent.quickToolbarSettings.actionOnScroll&&(this.parent.off(Z,this.hideQuickToolbars),this.parent.off("contentscroll",this.hideQuickToolbars)),this.parent.off("focusChange",this.hideQuickToolbars),this.parent.off(Q,this.destroy),this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off(G,this.onKeyDown),this.parent.off(te,this.setRtl),this.parent.off(oe,this.setCssClass),this.parent.off("hidePopup",this.hideQuickToolbars))},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(Z,this.hideQuickToolbars),this.parent.off("contentscroll",this.hideQuickToolbars)):(this.parent.on(Z,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}(),St=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:ve}),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:this.parent.getText().replace(/(\r\n|\n|\r|\t)/gm,"");"Markdown"!==this.parent.editorMode&&-1!==e.indexOf("")?this.htmlLength=e.replace(/\u200B/g,"").length: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("."+ve))&&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(V,this.renderCount,this),this.parent.on(K,this.refresh,this),this.parent.on("count",this.refresh,this),this.parent.on("refresh-begin",this.refresh,this),this.parent.on($,this.refresh,this),this.parent.on(Q,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(V,this.renderCount),this.parent.off(K,this.refresh),this.parent.off("refresh-begin",this.refresh),this.parent.off("count",this.refresh),this.parent.off($,this.refresh),this.parent.off(Q,this.destroy),this.parent.off("sourceCode",this.toggle),this.parent.off("updateSource",this.toggle))},n.prototype.getModuleName=function(){return"count"},n}(),Et=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}(),Tt=["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"],Ot=function(){function e(e){this.toolbarStatus=this.prevToolbarStatus=q(),this.selection=new Et,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(Q,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off("toolbar-refresh",this.onRefreshHandler),this.parent.off(Q,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}(),wt=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("execCommandCallBack",this.commandCallBack,this),this.parent.on(Q,this.removeEventListener,this)},e.prototype.commandCallBack=function(e){var n=!t.isNullOrUndefined(e.requestType)&&"FormatPainter"===e.requestType&&"format-copy"===e.action;t.isNullOrUndefined(e)||t.isNullOrUndefined(e.requestType)||"Undo"===e.requestType||"Redo"===e.requestType||n||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(Q,this.removeEventListener)},e}(),kt=function(){function e(){}return e.prototype.process=function(e,n,i,o){var r,s,a=this,l=e.contentModule.getDocument().getSelection(),d=l.rangeCount>0?l.getRangeAt(l.rangeCount-1):null;t.isNullOrUndefined(o)||t.isNullOrUndefined(o.selection)||(s=o.selection.range);var c=!t.isNullOrUndefined(o)&&!t.isNullOrUndefined(o.cssClass)&&"e-video-inline"!==o.cssClass;if("HTML"===e.editorMode&&(t.isNullOrUndefined(n)||c||(t.isNullOrUndefined(n.name)||!t.isNullOrUndefined(n.name)&&"showDialog"!==n.name)&&(r=s?this.editorManager.nodeSelection.save(s,e.contentModule.getDocument()):this.editorManager.nodeSelection.save(d,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||"Audios"===n.item.command||"Videos"===n.item.command||"EmojiPicker"===n.item.command||!d||e.contentModule.getEditPanel().contains(this.getAncestorNode(d.commonAncestorContainer))||e.contentModule.getEditPanel()===d.commonAncestorContainer||e.contentModule.getPanel()===d.commonAncestorContainer){if(!t.isNullOrUndefined(n)&&-1!==e.maxLength&&!t.isNullOrUndefined(n.item.command)){var p=0;"Links"===n.item.command&&(p=0===o.text.length?o.url.length:o.text.length),"Images"!==n.item.command&&"Videos"!==n.item.command&&"Table"!==n.item.command&&"Files"!==n.item.command||(p=1);var h=e.getText().trim().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length-e.getSelection().length+p;if(!(-1===e.maxLength||h<=e.maxLength))return}if(t.isNullOrUndefined(n)){var u=i.action;n={};var m={originalEvent:i,cancel:!1,requestType:u||i.key+"Key",itemCollection:o};if(t.extend(n,n,m,!0),"tab"!==u&&"enter"!==u&&"space"!==u&&"escape"!==u&&("Markdown"===e.editorMode&&"insert-table"===u&&(o={headingText:e.localeObj.getConstant("TableHeadingText"),colText:e.localeObj.getConstant("TableColText")}),e.trigger(X,n,function(e){e.cancel&&("paste"!==u&&"cut"!==u&&"copy"!==u||i.preventDefault())})),!n.cancel){var g=!!t.isNullOrUndefined(e.tableModule)||!!e.tableModule&&e.tableModule.ensureInsideTableList;(9===i.which&&g||9!==i.which)&&(13===i.which&&"HTML"===e.editorMode&&(o={enterAction:e.enterKey}),this.editorManager.observer.notify("keydown"===i.type?"keydown":"keyup",{event:i,callBack:this.onSuccess.bind(this,e),value:o,enterAction:e.enterKey}))}}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||"FormatPainter"===n.item.subCommand||"EmojiPicker"===n.item.subCommand)&&(t.extend(n,n,{requestType:n.item.subCommand,cancel:!1,itemCollection:o,selectType:n.name},!0),e.trigger(X,n,function(s){if(!s.cancel){var l=!t.isNullOrUndefined(s.requestType)&&"FormatPainter"===s.requestType&&"format-copy"===s.name,d=!t.isNullOrUndefined(s.requestType)&&"FormatPainter"===s.requestType&&"format-paste"===s.name;(0===a.getUndoRedoStack().length&&"Links"!==s.item.command&&"Images"!==s.item.command&&!l||d)&&a.saveData(),e.isBlur=!1,!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(t.closest(r.range.startContainer.parentElement,".e-img-caption"))&&"false"==t.closest(r.range.startContainer.parentElement,".e-img-caption").getAttribute("contenteditable")||e.contentModule.getEditPanel().focus(),"HTML"!==e.editorMode||c||(t.isNullOrUndefined(n.selectType)||!t.isNullOrUndefined(n.selectType)&&"showDialog"!==n.selectType)&&r.restore();var p=s.item.subCommand.toLocaleLowerCase();"paste"===p||"cut"===p||"copy"===p?e.clipboardAction(p,i):(a.editorManager.observer.notify(ne,{subCommand:s.item.subCommand}),a.editorManager.execCommand(s.item.command,s.item.subCommand,i,a.onSuccess.bind(a,e),s.item.value,"Pre"===s.item.subCommand&&"dropDownSelect"===s.selectType?{name:s.selectType}:o,"#"+e.getID()+" iframe",e.enterKey))}}));(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||"Audios"===t.requestType||"Videos"===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})}"VideosPlayPause"===t.requestType&&e.notify("editAreaClick",{args:event}),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&&S(e.toolbarModule.baseToolbar,n):S(e.quickToolbarModule.inlineQTBar.quickTBarObj,n)},e}(),Lt=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 C=d;C<o.length;C++)o[C].start=0!==C?o[C].start+u:o[C].start,o[C].end=o[C].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,C=0,y="";p=""!==this.selection.getLine(o,r[0].line+1)?"":p+o.value.substr(r[0].end,o.value.length);for(var N=1;N<c&&!t.isNullOrUndefined(this.selection.getLine(o,r[0].line+N))&&""!==this.selection.getLine(o,r[0].line+N);N++){var S=this.selection.getLine(o,r[0].line+N),E=this.getTabSpace(S),T=S.split(". ");if(1===T.length){p+=o.value.substr(r[0].end+C,o.value.length);break}C+=S.length;var O=!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,O=!(!i.event.shiftKey||h.length!==E.length)&&(f=!1,!0)):v&&i.event.shiftKey&&h.length===E.length&&E.length===m.length&&(f=!1,O=!0),y=""===p?"":"\n",d===E.length&&f){w=i.event.shiftKey?(b++,this.nextOrderedListValue(b.toString())):this.previousOrderedListValue(T[0]);T.splice(0,1),p=p+y+E+w+T.join(". ")}else if(h.length===E.length&&g||O){var w=this.nextOrderedListValue(u.toString());u++,T.splice(0,1),p=p+y+E+w+T.join(". ")}else p=p+y+S,f=!1;m=this.getTabSpace(S)}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]){N=this.getTabSpace(s);this.currentAction=this.getAction(s);S=this.nextOrderedListValue(d[0]);r[0].text=N+S+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(". "),C=this.getTabSpace(b);if(C.length<m.length&&(g=!1),v.length>1&&/^\d+$/.test(v[0].trim())&&u.length===C.length&&g){var y=this.nextOrderedListValue(v[0]);v.splice(0,1),h=h+C+y+v.join(". ")+"\n"}else h=h+b+"\n",m=this.getTabSpace(b)}}n.value=n.value.substr(0,r[0].start)+u+S+this.selection.getLine(n,r[0].line)+h,i=i+S.length+N.length,c+=S.length+N.length}else if("UL"===this.currentAction&&s&&l.test(s.trim())&&""!==s.trim().replace(l,"")||"OL"===this.currentAction&&!a){var N=this.getTabSpace(s),S=this.syntax[this.currentAction];r[0].text=N+S+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+S.length+N.length,c+=S.length+N.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}(),xt=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),0===this.selection.getSelectedText(n).length&&(i[a].text=this.syntax[e.subCommand],n.value=n.value.substr(0,i[a].start)+this.syntax[e.subCommand]+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(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}(),Dt=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}(),Mt={h6:"###### ",h5:"##### ",h4:"#### ",h3:"### ",h2:"## ",h1:"# ",blockquote:"> ",pre:"```\n",p:""},Rt={Bold:"**",Italic:"*",StrikeThrough:"~~",InlineCode:"`",SubScript:"<sub>",SuperScript:"<sup>",UpperCase:"A-Z",LowerCase:"a-z"},Bt={OL:"1. ",UL:"- "},At={"toolbar-focus":"alt+f10",escape:"27","insert-link":"ctrl+k","insert-image":"ctrl+shift+i","insert-audio":"ctrl+shift+a","insert-video":"ctrl+alt+v","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","format-copy":"alt+shift+c","format-paste":"alt+shift+v"},It={"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"},Pt={b:["strong"],strong:["b"],i:["emp","cite"],emp:["i","cite"],cite:["i","emp"]},Ut={first:"MsoListParagraphCxSpFirst",middle:"MsoListParagraphCxSpMiddle",last:"MsoListParagraphCxSpLast"},Ht=["BR","IMG"],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.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+")",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}(),qt=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}(),zt=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}(),_t=function(){function e(e){this.parent=e,this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("insert-text",this.InsertTextExec,this)},e.prototype.InsertTextExec=function(e){var t=this.parent.element;t.focus();var n=t.selectionStart,i=t.selectionEnd,o=e.value.text,r=n+o.length,s=i+o.length;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}(),Vt=function(){function e(e){this.initialize(),t.extend(this,this,e,!0),this.observer=new t.Observer(this),this.markdownSelection=new Et,this.listObj=new Lt({parent:this,syntax:this.listTags}),this.formatObj=new xt({parent:this,syntax:this.formatTags}),this.undoRedoManager=new jt(this,e.options),this.mdSelectionFormats=new Dt({parent:this,syntax:this.selectionTags}),this.linkObj=new Ft(this),this.tableObj=new qt({parent:this,syntaxTag:{Formats:this.formatTags,List:this.listTags}}),this.clearObj=new zt(this),this.insertTextObj=new _t(this),this.wireEvents()}return e.prototype.initialize=function(){this.formatTags=Mt,this.listTags=Bt,this.selectionTags=Rt},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});break;case"inserttext":this.observer.notify("insert-text",{subCommand:t,event:n,callBack:i,value:{text:r}})}},e}(),Qt=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)}}(),Wt=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 Qt(n,e),n.prototype.initialize=function(){this.keyConfig=It,this.formatTags=Mt,this.listTags=Bt,this.selectionTags=Rt},n.prototype.updateFormatter=function(e,t,n){e&&(this.editorManager=new Vt({element:e,formatTags:this.formatTags,listTags:this.listTags,selectionTags:this.selectionTags,options:n}))},n}(kt),Kt=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",attrs:{"aria-labelledby":this.parent.getID()+"_view"}}),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}(),Gt=function(){function n(e,t){this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null,this.toolbarUpdate.parent=null},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.saveSelection=new Et,this.parent.on("initial-load",this.instantiateRenderer,this),this.parent.on(V,this.render,this),this.parent.on(W,this.onPropertyChanged,this),this.parent.on("markdown-toolbar-click",this.onToolbarClick,this),this.parent.on(Q,this.destroy,this),this.parent.on("selectAll",this.selectAll,this),this.parent.on("getSelectedHtml",this.getSelectedHtml,this),this.parent.on(Y,this.onSelectionSave,this),this.parent.on(J,this.onSelectionRestore,this),this.parent.on("readOnlyMode",this.updateReadOnly,this),this.parent.on(ie,this.moduleDestroy,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 Kt(this.parent))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(V,this.render),this.parent.off(W,this.onPropertyChanged),this.parent.off(Q,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(Y,this.onSelectionSave),this.parent.off(J,this.onSelectionRestore),this.parent.off("readOnlyMode",this.updateReadOnly),this.parent.off(ie,this.moduleDestroy))},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 Wt({element:n,options:i}):this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i),this.parent.toolbarSettings.enable&&(this.toolbarUpdate=new Ot(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}(),Xt="INSERT-IMAGE",Yt="INSERT-AUDIO",Jt="INSERT-VIDEO",$t="INSERT-TABLE",Zt="INSERT-LINK",en=["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","body"],tn=["td","th"],nn=["table","tbody","td","tfoot","th","thead","tr"],on=["area","base","br","embed","hr","img","input","param","source","track","wbr","iframe","td","table"],rn=["word","excel","onenote"],sn=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)?3===e.nodeType&&e.previousSibling===t&&"IMG"===t.nodeName?null:-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||"BR"===t.nodeName&&t===e.endContainer.childNodes[e.endOffset])&&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&&(3===o.nodeType&&" "===o.nodeValue.replace(/\u00a0/g," ")&&(s=o.textContent.length),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}(),an={startSelection:"e-editor-select-start",endSelection:"e-editor-select-end"},ln=function(){function e(e,t){this.parent=e,this.nodeSelection=new sn,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&&en.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,"""))+'"':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(an.startSelection)||e.childNodes[t-1].classList.contains(an.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,t){var n,i,o=this.parent.querySelector("."+an.startSelection),r=this.parent.querySelector("."+an.endSelection);if(this.hasClass(o,an.startSelection)&&o.classList.length>1){s=this.createTagString("p",o,this.encode(o.textContent));this.replaceWith(o,s),(o=this.parent.querySelector("."+an.startSelection)).classList.remove(an.startSelection),n=o.childNodes[0]}else n=this.unWrap(o)[0];if(this.hasClass(r,an.endSelection)&&r.classList.length>1){var s=this.createTagString("p",r,this.encode(r.textContent));this.replaceWith(r,s),(r=this.parent.querySelector("."+an.endSelection)).classList.remove(an.endSelection),i=r.childNodes[0]}else i=r?this.unWrap(r)[0]:n;return e.startContainer=e.getNodeArray(n,!0),e.endContainer=e.getNodeArray(i,!1),e},e.prototype.marker=function(e,t){return'<span class="'+e+'">'+t+"</span>"},e.prototype.setMarker=function(e){var n=e.range,i=n.startContainer.childNodes,o=(i.length>1&&"TABLE"===i[0].nodeName?j(i[n.startOffset+1]):i[n.startOffset>0?n.startOffset-1:n.startOffset])||n.startContainer,r=n.endContainer.childNodes[n.endOffset>0?n.endOffset-1:n.endOffset]||n.endContainer;if(o.nodeType===Node.ELEMENT_NODE&&r.nodeType===Node.ELEMENT_NODE&&(o.contains(r)||r.contains(o))){var s=o.contains(r)?o:r;if(s.nodeType!==Node.TEXT_NODE){for(var a=[],l=[],d=s;s.contains(d);null)a.indexOf(d)<0&&d.childNodes&&d.childNodes.length?(a.push(d),d=d.childNodes[0]):d.nextSibling?d=d.nextSibling:d.parentNode&&(d=d.parentNode,a.push(d)),l.indexOf(d)<0&&(d.nodeType===Node.TEXT_NODE||tn.indexOf(d.parentNode.tagName.toLocaleLowerCase())>=0&&("BR"===d.tagName||"IMG"===d.tagName))&&l.push(d);l.length&&(o=o.contains(r)?l[0]:o,r=l[l.length-1])}}if(o!==r){if(o.nodeType!==Node.TEXT_NODE&&("BR"===o.tagName&&tn.indexOf(o.parentNode.tagName.toLocaleLowerCase())>=0||"IMG"===o.tagName))this.replaceWith(o,this.marker(an.startSelection,this.encode(o.textContent))),n.startContainer.querySelector("."+an.startSelection).appendChild(o);else if(3!==o.nodeType&&"#text"!==o.nodeName&&"BR"!==o.nodeName){var c=this.marker(an.startSelection,"");t.append([this.parseHTMLFragment(c)],o)}else this.replaceWith(o,this.marker(an.startSelection,this.encode(o.textContent)));r.nodeType!==Node.TEXT_NODE&&"BR"===r.tagName&&tn.indexOf(r.parentNode.tagName.toLocaleLowerCase())>=0?(this.replaceWith(r,this.marker(an.endSelection,this.encode(r.textContent))),n.endContainer.querySelector("."+an.endSelection).appendChild(r)):this.ensureSelfClosingTag(r,an.endSelection,n)}else this.ensureSelfClosingTag(o,an.startSelection,n)},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(n,this.encode(e.textContent)));var r=i.startContainer.querySelector("."+n);r&&r.parentElement.appendChild(e)}else{if("IMG"===e.tagName){var s=document.createElement("p");e.parentElement.insertBefore(s,e),s.appendChild(e),e=s.children[0]}if("TABLE"===e.tagName)if(o=!0,""===e.textContent){var a=e.querySelectorAll("td");e=a[a.length-1],e=t.isNullOrUndefined(e.childNodes[0])?e:e.childNodes[0]}else{for(var l=e.lastChild;3!==l.nodeType&&"#text"!==l.nodeName&&"BR"!==l.nodeName;)l=l.lastChild;e=l}for(var d=0;d<Ht.length;d++)e=e.tagName!==Ht[d]||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(an.endSelection,this.encode(e.textContent))),i.endContainer.querySelector("."+an.endSelection).appendChild(e);else{var c=this.marker(n,"");t.append([this.parseHTMLFragment(c)],e)}}},e.prototype.createTempNode=function(e){var t=e.textContent;if("BR"===e.tagName){var n="<p></p>",i=e.parentNode;tn.indexOf(i.tagName.toLocaleLowerCase())>=0&&(e=this.wrap(e,this.parseHTMLFragment(n)))}else if(e.nodeType!==Node.TEXT_NODE&&(e.classList.contains(an.startSelection)||e.classList.contains(an.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(an.startSelection)||o.classList.contains(an.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(tn.indexOf(r.tagName.toLocaleLowerCase())>=0&&("BR"===a.tagName||a.nodeType===Node.TEXT_NODE||a.classList.contains(an.startSelection)||a.classList.contains(an.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(an.startSelection)||p.classList.contains(an.endSelection)))&&tn.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(an.startSelection)||p.nextSibling.classList.contains(an.endSelection))&&tn.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&&tn.indexOf(p.parentNode.tagName.toLocaleLowerCase())>=0&&(p.classList.contains(an.startSelection)||p.classList.contains(an.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!(nn.indexOf(e.tagName.toLocaleLowerCase())>=0)},e}(),dn=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("keyup-handler",this.onKeyUp,this),this.parent.observer.on("keydown-handler",this.keyDownHandler,this),this.parent.observer.on("actionBegin",this.spaceKeyAction,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=e.startContainer.textContent.replace(/\u200B/g,"").slice(0,e.startOffset).trim(),o=0;o<n.length;o++)if(n[o].test(i)&&2===i.length)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.replace(/\u200B/g,"").slice(0,n.startOffset).trim()&&"-"!==n.startContainer.textContent.replace(/\u200B/g,"").slice(0,n.startOffset).trim()||(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 n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i="LI"===n.startContainer.nodeName?n.startContainer:n.startContainer.parentElement.closest("LI"),o="LI"===n.endContainer.nodeName?n.endContainer:n.endContainer.parentElement.closest("LI"),r=!1;if(!t.isNullOrUndefined(i)){var s=i.querySelectorAll(".e-video-clickelem"),a=s.length>0&&"IFRAME"===s[0].childNodes[0].nodeName;r=i.querySelectorAll("IMG").length>0||i.querySelectorAll("AUDIO").length>0||i.querySelectorAll("VIDEO").length>0||a}if(!t.isNullOrUndefined(i)&&!t.isNullOrUndefined(o)&&i===o&&"LI"===i.tagName&&""===i.textContent.trim()&&!r){if(i.innerHTML.indexOf(" ")>=0)return;65279===i.textContent.charCodeAt(0)&&(i.textContent="");var l=i.parentElement;if(t.isNullOrUndefined(l.parentElement.closest("UL"))&&t.isNullOrUndefined(l.parentElement.closest("OL"))){if(!t.isNullOrUndefined(i.nextElementSibling)){var d=this.parent.domNode.blockParentNode(i);this.parent.nodeCutter.GetSpliceNode(n,d)}var c=void 0;"DIV"===e.enterAction?(c=t.createElement("div")).innerHTML="<br>":"P"===e.enterAction?(c=t.createElement("p")).innerHTML="<br>":c=t.createElement("br"),this.parent.domNode.insertAfter(c,l),e.event.preventDefault(),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,c,0),""===l.textContent&&0===l.querySelectorAll("audio,video").length?t.detach(l):t.detach(i)}}},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&&"LI"===i.tagName&&0===i.textContent.length&&t.isNullOrUndefined(i.previousElementSibling)&&i.removeAttribute("style"),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||t.isNullOrUndefined(i.childNodes[1])||"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)}this.removeList(n,e),this.firstListBackSpace(n,e)},e.prototype.removeList=function(e,n){var i=this.parent.domNode.getSelectedNode(e.startContainer,e.startOffset),o=this.parent.domNode.getSelectedNode(e.endContainer,e.endOffset);i="BR"===i.nodeName?i.parentElement:i,o="BR"===o.nodeName?o.parentElement:o,i="LI"===i.nodeName||t.isNullOrUndefined(i.closest("LI"))?i:i.closest("LI"),o="LI"===o.nodeName||t.isNullOrUndefined(o.closest("LI"))?o:o.closest("LI"),(("OL"===e.commonAncestorContainer.nodeName||"UL"===e.commonAncestorContainer.nodeName||"LI"===e.commonAncestorContainer.nodeName)&&t.isNullOrUndefined(o.nextElementSibling)&&o.textContent.length===e.endOffset&&t.isNullOrUndefined(i.previousElementSibling)&&0===e.startOffset||-1!==t.Browser.userAgent.indexOf("Firefox")&&e.startContainer===e.endContainer&&e.startContainer===this.parent.editableElement&&0===e.startOffset&&1===e.endOffset)&&(-1!==t.Browser.userAgent.indexOf("Firefox")?t.detach(e.commonAncestorContainer.childNodes[0]):"LI"===e.commonAncestorContainer.nodeName?t.detach(e.commonAncestorContainer.parentElement):t.detach(e.commonAncestorContainer),n.event.preventDefault())},e.prototype.onKeyUp=function(){if(!t.isNullOrUndefined(this.commonLIParent)&&!t.isNullOrUndefined(this.commonLIParent.querySelector(".removeList"))){for(var e=this.commonLIParent.querySelector(".removeList");!t.isNullOrUndefined(e.firstChild);)this.parent.domNode.insertAfter(e.firstChild,e);t.detach(e)}},e.prototype.firstListBackSpace=function(e,n){var i=this.parent.domNode.getSelectedNode(e.startContainer,e.startOffset);if(t.isNullOrUndefined(i.closest("OL"))?t.isNullOrUndefined(i.closest("UL"))||(this.commonLIParent=i.closest("UL")):this.commonLIParent=i.closest("OL"),"LI"===i.nodeName&&0===e.startOffset&&0===e.endOffset&&t.isNullOrUndefined(i.previousSibling)&&!t.isNullOrUndefined(this.commonLIParent)&&t.isNullOrUndefined(this.commonLIParent.previousSibling)&&t.isNullOrUndefined(this.commonLIParent.parentElement.closest("OL"))&&t.isNullOrUndefined(this.commonLIParent.parentElement.closest("UL"))&&t.isNullOrUndefined(this.commonLIParent.parentElement.closest("LI"))){var o=t.createElement("P");o.innerHTML="​",i.classList.add("removeList"),this.commonLIParent.parentElement.insertBefore(o,this.commonLIParent)}},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),this.removeList(a,e)}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)&&tn.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,e),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.spaceKeyAction=function(e){32===e.event.which&&this.spaceList(e)},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"OL"!==o.tagName&&"UL"!==o.tagName||t.append([e[i]],o)}else{var u=e[i];n=!0,this.noPreviousElement(u)}}return n},e.prototype.applyListsHandler=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument);if(-1!==t.Browser.userAgent.indexOf("Firefox")&&n.startContainer===n.endContainer&&n.startContainer===this.parent.editableElement){for(var i=n.startContainer.childNodes[n.startOffset>0?n.startOffset-1:n.startOffset]||n.startContainer,o=n.endContainer.childNodes[n.endOffset>0?n.endOffset-1:n.endOffset]||n.endContainer,r="BR"===o.lastChild.nodeName?t.isNullOrUndefined(o.lastChild.previousSibling)?o:o.lastChild.previousSibling:o.lastChild;!t.isNullOrUndefined(r)&&"#text"!==r.nodeName&&"IMG"!==r.nodeName&&"BR"!==r.nodeName&&"HR"!==r.nodeName;)r=r.lastChild;this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,i,r,0,r.textContent.length),n=this.parent.nodeSelection.getRange(this.parent.currentDocument)}if(n.startContainer===n.endContainer&&n.startContainer===this.parent.editableElement&&n.startOffset===n.endOffset&&0===n.startOffset&&0===this.parent.editableElement.textContent.length&&"TABLE"!==this.parent.editableElement.childNodes[0].nodeName&&"IMG"!==this.parent.editableElement.childNodes[0].nodeName){var s=n.startContainer.childNodes[0];this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,s,s,0,0),n=this.parent.nodeSelection.getRange(this.parent.currentDocument)}this.saveSelection=this.parent.nodeSelection.save(n,this.parent.currentDocument),this.currentAction=e.subCommand,this.currentAction=e.subCommand="NumberFormatList"===this.currentAction?"OL":"BulletFormatList"===this.currentAction?"UL":this.currentAction,this.domNode.setMarker(this.saveSelection);var a=this.domNode.blockNodes();if("BR"===e.enterAction){this.setSelectionBRConfig();var l=this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument),d=this.parent.nodeSelection.getSelectionNodes(l),c=[];0===d.length&&d.push(a[0]);for(b=0;b<d.length;b++){for(var p=d[b],h=void 0;!this.parent.domNode.isBlockNode(p)&&p!==this.parent.editableElement;)h=p,p=p.parentElement;this.parent.domNode.isBlockNode(p)&&p===this.parent.editableElement&&c.push(h)}for(b=0;b<c.length;b++)if(!this.parent.domNode.isBlockNode(c[b])){for(var u=p=c[b];p===this.parent.editableElement;)u=p,p=p.parentElement;var m=void 0;this.parent.domNode.isBlockNode(u.parentElement)&&u.parentElement===this.parent.editableElement?(m=t.createElement("p"),u.parentElement.insertBefore(m,u),m.appendChild(u)):m=u;for(var g=m.previousSibling;!t.isNullOrUndefined(g)&&"BR"!==g.nodeName&&!this.parent.domNode.isBlockNode(g);)m.firstChild.parentElement.insertBefore(g,m.firstChild),g=m.previousSibling;t.isNullOrUndefined(g)||"BR"!==g.nodeName||t.detach(g);for(var f=m.nextSibling;!t.isNullOrUndefined(f)&&"BR"!==f.nodeName&&!this.parent.domNode.isBlockNode(f);)m.appendChild(f),f=m.nextSibling;t.isNullOrUndefined(f)||"BR"!==f.nodeName||t.detach(f)}this.setSelectionBRConfig(),a=this.parent.domNode.blockNodes()}for(var b=0;b<a.length;b++)"TABLE"!==a[b].tagName||n.collapsed||a.splice(b,1),a.length>0&&"LI"!==a[b].tagName&&"LI"===a[b].parentNode.tagName&&(a[b]=a[b].parentNode);this.applyLists(a,this.currentAction,e.selector,e.item,e),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.setSelectionBRConfig=function(){var e=this.parent.editableElement.querySelector("."+an.startSelection),n=this.parent.editableElement.querySelector("."+an.endSelection);t.isNullOrUndefined(n)?this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e,0):this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,e,n,0,0)},e.prototype.applyLists=function(e,n,i,o,r){if(this.isRevert(e,n,o)&&t.isNullOrUndefined(o))this.revertList(e,r),this.removeEmptyListElements();else{this.checkLists(e,n,o);for(var s=0;s<e.length;s++)if(t.isNullOrUndefined(o)||t.isNullOrUndefined(o.listStyle)||("listImage"===o.listStyle?t.setStyleAttribute(e[s],{"list-style-image":o.listImage}):(t.setStyleAttribute(e[s],{"list-style-image":"none"}),t.setStyleAttribute(e[s],{"list-style-type":o.listStyle.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}))),"true"===e[s].getAttribute("contenteditable")&&1===e[s].childNodes.length&&"TABLE"===e[s].childNodes[0].nodeName){var a=document.createElement(n);a.innerHTML="<li><br/></li>",e[s].appendChild(a)}else if("LI"!==e[s].tagName&&t.isNullOrUndefined(o)){var l="<"+n+">",d="</"+n+">",c="li"+(u="IMG"===e[s].tagName?"":this.domNode.attributes(e[s])),p="p"===e[s].tagName.toLowerCase()?e[s].innerHTML:e[s].outerHTML,h=l+(m=this.domNode.createTagString(c,null,p))+d;this.domNode.replaceWith(e[s],h)}else if(!t.isNullOrUndefined(o)&&"LI"!==e[s].tagName){var u="IMG"===e[s].tagName?"":this.domNode.attributes(e[s]),l="<"+n+u+">",d="</"+n+">",c="li",p="p"===e[s].tagName.toLowerCase()?e[s].innerHTML:e[s].outerHTML,m=this.domNode.createTagString(c,null,p),h=l+m+d;this.domNode.replaceWith(e[s],h)}}this.cleanNode(),this.parent.editableElement.focus(),P()&&U(this.parent.editableElement,i),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,n,i){for(var o=!0,r=0;r<e.length;r++){if("LI"!==e[r].tagName)return!1;(e[r].parentNode.tagName!==n||t.isNullOrUndefined(i)&&""!==e[r].parentNode.style.listStyleType)&&(o=!1),e[r].parentNode.tagName===n&&""!==e[r].parentNode.style.listStyleType&&(o=!0)}return o},e.prototype.checkLists=function(e,n,i){for(var o=[],r=0;r<e.length;r++){var s=e[r].parentNode;t.isNullOrUndefined(i)||"LI"!==e[r].tagName||t.isNullOrUndefined(i.listStyle)||("listImage"===i.listStyle?t.setStyleAttribute(s,{"list-style-image":i.listImage}):(t.setStyleAttribute(s,{"list-style-image":"none"}),t.setStyleAttribute(s,{"list-style-type":i.listStyle.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}))),("LI"===e[r].tagName&&s.tagName!==n&&o.indexOf(s)<0||"LI"===e[r].tagName&&s.tagName===n&&o.indexOf(s)<0&&null!==i)&&o.push(s),t.isNullOrUndefined(i)&&(s.tagName===n||("UL"===s.tagName||"OL"===s.tagName)&&s.hasAttribute("style"))&&s.hasAttribute("style")&&s.removeAttribute("style")}for(var a=o.length-1;a>=0;a--){var l=o[a],d="<"+n.toLowerCase()+" "+this.domNode.attributes(l)+">"+l.innerHTML+"</"+n.toLowerCase()+">";this.domNode.replaceWith(o[a],d)}},e.prototype.cleanNode=function(){for(var e=this.parent.editableElement.querySelectorAll("ol + ol, ul + ul"),n=0;n<e.length;n++){var i=e[n];if(this.domNode.isList(i.previousElementSibling)&&this.domNode.openTagString(i)===this.domNode.openTagString(i.previousElementSibling)){for(var o=this.domNode.contents(i),r=0;r<o.length;r++)i.previousElementSibling.appendChild(o[r]);i.parentNode.removeChild(i)}else t.isNullOrUndefined(i.getAttribute("level"))||i.tagName===i.previousElementSibling.tagName&&i.previousElementSibling.lastChild.append(i)}},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,n){for(var i=[],o=e.length-1;o>=0;o--)for(var r=o-1;r>=0;r--)if(e[r].contains(e[o])||e[r]===e[o]){i.push(e[o]),e.splice(o,1);break}this.findUnSelected(i,e);for(var s=[],o=0;o<e.length;o++){var a=e[o];3===this.domNode.contents(a)[0].nodeType&&0===this.domNode.contents(a)[0].textContent.trim().length&&t.detach(this.domNode.contents(a)[0]);var l=e[o].parentNode,d=a.getAttribute("class");if(0===i.length){var c=e[o].querySelectorAll("ul, ol")[0];if(c&&c.querySelectorAll("li")){var p=t.createElement(c.tagName);t.append([p],c.parentNode);var h=t.createElement("li",{styles:"list-style-type: none;"});t.append([h],p),t.append([c],h)}}if(a.parentNode.insertBefore(this.closeTag(l.tagName),a),"LI"===l.parentNode.tagName||"OL"===l.parentNode.tagName||"UL"===l.parentNode.tagName)a.parentNode.insertBefore(this.closeTag("LI"),a);else{if(0===a.querySelectorAll(en.join(", ")).length){var u=t.isNullOrUndefined(d)?' class="e-rte-wrap-inner"':' class="'+d+' e-rte-wrap-inner"',m=l;t.isNullOrUndefined(m.style.listStyleType)||l.style.removeProperty("list-style-type"),t.isNullOrUndefined(m.style.listStyleImage)||l.style.removeProperty("list-style-image"),0===m.style.length&&l.removeAttribute("style");var g="<p"+u+this.domNode.attributes(m)+"></p>";"BR"!==n.enterAction&&this.domNode.wrapInner(a,this.domNode.parseHTMLFragment(g))}else if(3===this.domNode.contents(a)[0].nodeType){f=this.domNode.createTagString("p",l,this.parent.domNode.encode(this.domNode.contents(a)[0].textContent));this.domNode.replaceWith(this.domNode.contents(a)[0],f)}else if(this.domNode.contents(a)[0].classList.contains(an.startSelection)||this.domNode.contents(a)[0].classList.contains(an.endSelection)){var f=this.domNode.createTagString("p",l,this.domNode.contents(a)[0].outerHTML);this.domNode.replaceWith(this.domNode.contents(a)[0],f)}else{var b=a.firstChild;d=b.getAttribute("class"),t.attributes(b,this.domNode.rawAttributes(l)),d&&b.getAttribute("class")&&t.attributes(b,{class:d+" "+b.getAttribute("class")})}t.append([this.openTag("LI")],a),t.prepend([this.closeTag("LI")],a)}this.domNode.insertAfter(this.openTag(l.tagName),a),"LI"===l.parentNode.tagName&&(l=l.parentNode.parentNode),s.indexOf(l)<0&&s.push(l)}for(o=0;o<s.length;o++){var v=s[o],C=v.innerHTML;C=(C=C.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(v)+">"),this.domNode.replaceWith(v,this.domNode.openTagString(v)+C.trim()+this.domNode.closeTagString(v))}for(var y=this.parent.editableElement.querySelectorAll("ul:empty, ol:empty"),o=0;o<y.length;o++)t.detach(y[o]);for(var N=this.parent.editableElement.querySelectorAll("li:empty"),o=0;o<N.length;o++)t.detach(N[o])},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}(),cn=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}(),pn=function(){function e(){this.enterAction="P",this.position=-1,this.nodeSelection=new sn}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||s.querySelectorAll("img").length>0||!this.isRteElm(s)||""!==s.textContent))||(t?cn.AppendBefore(s,t):(o.appendChild(s),(l=document.createElement("div")).innerHTML="",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.isRteElm(s)||""!==s.textContent);if(!a)if(t)cn.AppendBefore(s,t,!0);else{o.appendChild(s);var l=document.createElement("div");l.innerHTML="",o.insertBefore(l.firstChild,o.firstChild),t=o.firstChild}}return t}return null},e.prototype.isRteElm=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||"SPAN"===i.childNodes[o].nodeName&&(i.childNodes[o].classList.contains("e-video-wrap")||i.childNodes[o].classList.contains("e-embed-video-wrap")||i.childNodes[o].classList.contains("e-audio-wrap")))&&(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||"IMG"===e.nodeName||e.querySelectorAll("img").length>0||e.classList.contains("e-video-wrap")||e.classList.contains("e-audio-wrap")||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&&t.endOffset!==r.length-1&&!new RegExp("\\s").test(r[0]))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}(),hn=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>",!t.isNullOrUndefined(o)&&o&&"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.getBlockParent=function(e,t){for(var n;e!=t;)n=e,e=e.parentElement;return n},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"),a=t.closest(i,"blockquote"),l=t.closest(o,"blockquote");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(a)&&!t.isNullOrUndefined(l)||!t.isNullOrUndefined(a)&&t.isNullOrUndefined(l))&&(8203===(p=this.getBlockParent(n.startContainer,a)).textContent.charCodeAt(0)&&1===p.textContent.length||0===p.textContent.length)&&t.isNullOrUndefined(p.nextSibling)&&(8203===p.previousSibling.textContent.charCodeAt(0)&&1===p.previousSibling.textContent.length||0===p.previousSibling.textContent.length)&&(e.event.preventDefault(),this.paraFocus(p.parentElement)),13===e.event.which&&!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(s)){e.event.preventDefault(),this.deleteContent(n),this.removeCodeContent(n);var d=(n=this.parent.nodeSelection.getRange(this.parent.currentDocument)).startContainer.childNodes[n.endOffset],c=n.startContainer.childNodes[n.endOffset-1],p=n.startContainer;if(t.isNullOrUndefined(d)||t.isNullOrUndefined(c)||!t.isNullOrUndefined(d.nextSibling)||"BR"!==d.nodeName||"BR"!==c.nodeName)if(8203===p.textContent.charCodeAt(0)&&1===p.textContent.length||0===p.textContent.length){for(;"PRE"!==p.parentElement.nodeName&&(1===p.textContent.length||0===p.textContent.length);)p=p.parentElement;!t.isNullOrUndefined(p.previousSibling)&&"BR"===p.previousSibling.nodeName&&t.isNullOrUndefined(p.nextSibling)?this.paraFocus(p.parentElement):this.isNotEndCursor(r,n)}else this.isNotEndCursor(r,n);else this.paraFocus(n.startContainer,e.enterAction)}}},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,n){var i;"DIV"===n?(i=t.createElement("div")).innerHTML="<br>":"BR"===n?i=t.createElement("br"):(i=t.createElement("p")).innerHTML="<br>",this.parent.domNode.insertAfter(i,e),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,i,0),t.detach(e.lastChild)},e.prototype.isNotEndCursor=function(e,n){var i=new pn,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);var r=this.parent.domNode.blockNodes();if("BR"===e.enterAction){this.setSelectionBRConfig();var s=this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument),a=this.parent.nodeSelection.getSelectionNodes(s),l=[];0===a.length&&a.push(r[0]);for(g=0;g<a.length;g++){for(var d=a[g],c=void 0;!this.parent.domNode.isBlockNode(d)&&d!==this.parent.editableElement;)c=d,d=d.parentElement;this.parent.domNode.isBlockNode(d)&&d===this.parent.editableElement&&l.push(c)}for(g=0;g<l.length;g++)if(!this.parent.domNode.isBlockNode(l[g])){for(var p=d=l[g];d===this.parent.editableElement;)p=d,d=d.parentElement;var h=void 0;this.parent.domNode.isBlockNode(p.parentElement)&&p.parentElement===this.parent.editableElement?(h=t.createElement("div"),p.parentElement.insertBefore(h,p),h.appendChild(p)):h=p;for(var u=h.previousSibling;!t.isNullOrUndefined(u)&&"BR"!==u.nodeName&&!this.parent.domNode.isBlockNode(u);)h.firstChild.parentElement.insertBefore(u,h.firstChild),u=h.previousSibling;t.isNullOrUndefined(u)||"BR"!==u.nodeName||t.detach(u);for(var m=h.nextSibling;!t.isNullOrUndefined(m)&&"BR"!==m.nodeName&&!this.parent.domNode.isBlockNode(m);)h.appendChild(m),m=h.nextSibling;t.isNullOrUndefined(m)||"BR"!==m.nodeName||t.detach(m)}this.setSelectionBRConfig(),r=this.parent.domNode.blockNodes()}for(var g=0;g<r.length;g++){var f=void 0,b=void 0;if("blockquote"===e.subCommand.toLowerCase()?(f=this.getParentNode(r[g]),b=this.parent.domNode.isList(f)||"TABLE"===f.tagName?f.outerHTML:f.innerHTML):b=(f=r[g]).innerHTML,!(e.subCommand.toLowerCase()===f.tagName.toLowerCase()&&("pre"!==e.subCommand.toLowerCase()&&"blockquote"!==e.subCommand.toLowerCase()||!t.isNullOrUndefined(e.exeValue)&&"dropDownSelect"===e.exeValue.name)||t.isNullOrUndefined(f.parentNode)||"TABLE"===f.tagName&&"pre"===e.subCommand.toLowerCase())){this.cleanFormats(f,e.subCommand);var v="pre"===e.subCommand.toLowerCase()&&"pre"===f.tagName.toLowerCase()?"p":e.subCommand,C=e.subCommand.toLowerCase()===f.tagName.toLowerCase()&&"blockquote"===e.subCommand.toLowerCase()&&this.parent.domNode.isList(f.firstElementChild),y=e.subCommand.toLowerCase()===f.tagName.toLowerCase()&&"blockquote"===e.subCommand.toLowerCase(),N=void 0;if(C)N=b.replace(/>\s+</g,"><");else if(y){var S="BR"==e.enterAction||"P"==e.enterAction?"P":e.enterAction;N=this.parent.domNode.createTagString(S,f,b.replace(/>\s+</g,"><"))}else N=this.parent.domNode.createTagString(v,f,b.replace(/>\s+</g,"><"));"LI"===f.tagName?(f.innerHTML="",f.insertAdjacentHTML("beforeend",N)):this.parent.domNode.replaceWith(f,N)}}this.preFormatMerge();var E=this.parent.editableElement.querySelector("."+an.startSelection),T=this.parent.editableElement.querySelector("."+an.endSelection);t.isNullOrUndefined(E)||t.isNullOrUndefined(T)||(E=E.lastChild,T=T.lastChild),o=this.parent.domNode.saveMarker(o,null),P()&&U(this.parent.editableElement,e.selector),i?this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,E,T,0,T.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.setSelectionBRConfig=function(){var e=this.parent.editableElement.querySelector("."+an.startSelection),n=this.parent.editableElement.querySelector("."+an.endSelection);t.isNullOrUndefined(n)?this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e,0):this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,e,n,0,0)},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}(),un=function(){function e(){}return e.Insert=function(e,n,i,o,r){var s;if("string"==typeof n)(a=document.createElement("div")).innerHTML=n,s=o?a:a.firstChild;else if(o&&(t.isNullOrUndefined(n)||t.isNullOrUndefined(n.classList)||!n.classList.contains("pasteContent"))){var a=document.createElement("div");a.appendChild(n),s=a}else s=n;var l=new sn,d=new pn,c=l.getRange(e);if(c.startContainer!==i||c.startContainer!==c.endContainer||0!==c.startOffset||c.startOffset!==c.endOffset||0!==i.textContent.length||"P"!==i.children[0].tagName&&"DIV"!==i.children[0].tagName&&"BR"!==i.children[0].tagName||(l.setSelectionText(e,c.startContainer.children[0],c.startContainer.children[0],0,0),c=l.getRange(e)),c.startContainer===i&&c.startContainer===c.endContainer&&0===c.startOffset&&c.startOffset===c.endOffset&&i.textContent.trim().length>0){var p=this.findFirstTextNode(c.startContainer);t.isNullOrUndefined(p)||(l.setSelectionText(e,p,p,0,0),c=l.getRange(e))}if("BR"===c.startContainer.nodeName&&0===c.startOffset&&c.startOffset===c.endOffset&&c.startContainer===c.endContainer){var h=Array.prototype.slice.call(c.startContainer.parentElement.childNodes).indexOf(c.startContainer);l.setSelectionText(e,c.startContainer.parentElement,c.startContainer.parentElement,h,h),c=l.getRange(e)}var u=c.startOffset===c.endOffset&&0===c.startOffset&&c.startContainer===c.endContainer,m=c.collapsed,g=this.getNodeCollection(c,l,s),f="table"===s.nodeName.toLowerCase()?this.closestEle(g[0].parentNode,i):g[0];if(o||!t.isNullOrUndefined(s)&&!t.isNullOrUndefined(s.classList)&&s.classList.contains("pasteContent"))return void this.pasteInsertHTML(g,s,c,l,d,e,m,f,i,r);if(i!==c.startContainer&&(!m&&(f.nodeType!==Node.ELEMENT_NODE||-1===nn.indexOf(f.tagName.toLocaleLowerCase()))||"table"===s.nodeName.toLowerCase()&&f&&-1===nn.indexOf(f.tagName.toLocaleLowerCase()))){var b=d.GetSpliceNode(c,f),v=b.previousSibling,C=b.parentNode;if(1===g.length||"table"===s.nodeName.toLowerCase()&&0===b.childElementCount)l.setSelectionContents(e,b),c=l.getRange(e);else{var y=d.GetSpliceNode(c,g[g.length-1].parentElement);y=t.isNullOrUndefined(y)?b:y,l.setSelectionText(e,b,y,0,3===y.nodeType?y.textContent.length:y.childNodes.length),c=l.getRange(e)}null!==c.startContainer.parentElement.closest("ol,ul")&&null!==c.endContainer.parentElement.closest("ol,ul")?z(c):c.extractContents(),"TABLE"===n.tagName&&this.removeEmptyElements(i);for(var N=0;N<g.length;N++)if(3!==g[N].nodeType&&null!=g[N].parentNode){if("IMG"===g[N].nodeName)continue;g[N].parentNode.removeChild(g[N])}if(v)cn.AppendBefore(s,v,!0);else{for(var S=null;C!==i&&C.firstChild&&""===C.textContent.trim();)S=C,C=C.parentNode;null!==S&&(C=S),C.firstChild&&(C!==i||"TABLE"===s.nodeName&&u&&C===c.startContainer&&C===c.endContainer)?""===C.textContent.trim()&&C!==i?(cn.AppendBefore(s,C,!1),t.detach(C)):cn.AppendBefore(s,C.firstChild,!1):t.isNullOrUndefined(b.previousSibling)&&"TABLE"===n.tagName?C.prepend(s):C.appendChild(s)}"IMG"===s.nodeName?this.imageFocus(s,l,e):3!==s.nodeType?l.setSelectionText(e,s,s,0,s.childNodes.length):l.setSelectionText(e,s,s,0,s.textContent.length)}else{if(c.deleteContents(),u&&""===c.startContainer.textContent&&"BR"!==c.startContainer.nodeName&&(c.startContainer.innerHTML=""),t.Browser.isIE){var E=e.createDocumentFragment();E.appendChild(s),c.insertNode(E)}else if(1===c.startContainer.nodeType&&"hr"===c.startContainer.nodeName.toLowerCase()&&"hr"===c.endContainer.nodeName.toLowerCase()){var T=c.startContainer.nextElementSibling;T&&(T.querySelector("br")&&t.detach(T.querySelector("br")),T.appendChild(s))}else"BR"===c.startContainer.nodeName?c.startContainer.parentElement.insertBefore(s,c.startContainer):c.insertNode(s);3!==s.nodeType&&s.childNodes.length>0?l.setSelectionText(e,s,s,1,1):"IMG"===s.nodeName?this.imageFocus(s,l,e):3!==s.nodeType?l.setSelectionContents(e,s):l.setSelectionText(e,s,s,s.textContent.length,s.textContent.length)}},e.findFirstTextNode=function(e){if(e.nodeType===Node.TEXT_NODE)return e;for(var n=0;n<e.childNodes.length;n++){var i=this.findFirstTextNode(e.childNodes[n]);if(!t.isNullOrUndefined(i))return i}return null},e.pasteInsertHTML=function(e,n,i,o,r,s,a,l,d,c){var p=i.startOffset===i.endOffset&&i.startContainer===i.endContainer;if(p&&i.startContainer===d&&""===d.textContent){var h=this.getImmediateBlockNode(e[e.length-1],d);o.setSelectionText(s,h,h,0,0),i=o.getRange(s)}var u,m,g,f;d!==i.startContainer&&(!a&&(l.nodeType!==Node.ELEMENT_NODE||-1===nn.indexOf(l.tagName.toLocaleLowerCase()))||"table"===n.nodeName.toLowerCase()&&l&&-1===nn.indexOf(l.tagName.toLocaleLowerCase()))&&(f=r.GetSpliceNode(i,l),m=t.isNullOrUndefined(f.previousSibling)?f.parentNode.previousSibling:f.previousSibling,1===e.length?(o.setSelectionContents(s,f),i=o.getRange(s),g=!0):(u=r.GetSpliceNode(i,e[e.length-1].parentElement),u=t.isNullOrUndefined(u)?f:u,o.setSelectionText(s,f,u,0,3===u.nodeType?u.textContent.length:u.childNodes.length),i=o.getRange(s),g=!1));var b=!1;this.removingComments(n);for(var v=n.childNodes,C=0;C<v.length;C++)if(en.indexOf(v[C].nodeName.toLocaleLowerCase())>=0){b=!0;break}var y,N=document.createDocumentFragment();if(b){for(var S=i.startContainer;!t.isNullOrUndefined(S)&&"PRE"!==S.nodeName&&S!==d;)S=S.parentElement;if(t.isNullOrUndefined(n)||t.isNullOrUndefined(S)||"PRE"!==S.nodeName){this.insertTempNode(i,n,e,r,d);var E=!0,T=void 0,O=void 0,w=void 0;for(this.contentsDeleted||i.deleteContents();n.firstChild;)if("#text"!==n.firstChild.nodeName||""!==n.firstChild.textContent.trim())if("#text"===n.firstChild.nodeName&&E||this.inlineNode.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0&&E){if(y=n.firstChild,t.isNullOrUndefined(n.previousElementSibling)){var k="DIV"===c?t.createElement("div"):t.createElement("p");n.parentElement.insertBefore(k,n)}"BR"===n.previousElementSibling.nodeName?n.parentElement.insertBefore(n.firstChild,n):n.previousElementSibling.appendChild(n.firstChild)}else y=n.firstChild,"#text"===n.firstChild.nodeName||this.inlineNode.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(T?(w.appendChild(n.firstChild),N.appendChild(w)):((O="DIV"===c?t.createElement("div"):t.createElement("p")).appendChild(n.firstChild),N.appendChild(O)),w=O,T=!0):(N.appendChild(n.firstChild),T=!1),E=!1;else t.detach(n.firstChild);n.parentNode.replaceChild(N,n)}else i.insertNode(n),y=n.lastChild}else if(p){var L=t.createElement("span",{className:"tempSpan"}),x=t.closest(i.startContainer.parentElement,"a");if(3===i.startContainer.nodeType&&x&&t.closest(x,"span")){var D=this.getImmediateBlockNode(i.startContainer,d);D.querySelectorAll("br").length>0&&t.detach(D.querySelector("br")),t.closest(x,"span").appendChild(L)}else i.insertNode(L);for(;n.firstChild;)y=n.firstChild,N.appendChild(n.firstChild);L.parentNode.replaceChild(N,L)}else{for(;n.firstChild;)y=n.firstChild,N.appendChild(n.firstChild);if(g)f.parentNode.replaceChild(N,f);else{var M=i.startContainer.parentNode,R=Array.prototype.indexOf.call(M.childNodes,i.startContainer);i.deleteContents(),i.setStart(M,R),i.setEnd(M,R),t.isNullOrUndefined(u)||t.detach(u),t.isNullOrUndefined(m)?i.insertNode(N):m.parentNode===d?m.appendChild(N):m.parentNode.appendChild(N)}}"#text"===y.nodeName?this.placeCursorEnd(y,n,o,s,d):this.cursorPos(y,n,o,s,d,c)},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;){if(!t.isNullOrUndefined(e.lastChild)&&"P"===e.lastChild.nodeName&&""===e.lastChild.innerHTML){var s=t.createElement("br");e.lastChild.appendChild(s)}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&&"BR"!==e.startContainer.nodeName&&e.startContainer.childNodes.length>0&&("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)if(e.startContainer===e.endContainer&&3!==e.startContainer.nodeType&&"HR"===n.firstChild.nodeName)e.startContainer.classList.contains("e-content")||"BODY"===e.startContainer.nodeName?e.startContainer.appendChild(n):e.startContainer.parentNode.insertBefore(n,e.startContainer);else{var s=this.getImmediateBlockNode(i[i.length-1],r);if((t.isNullOrUndefined(s)||t.isNullOrUndefined(s.parentElement))&&3!==e.endContainer.nodeType&&(s=e.endContainer,e.setEnd(s,e.endContainer.textContent.length)),"BODY"===s.nodeName&&e.startContainer===e.endContainer&&1===e.startContainer.nodeType&&(s=e.startContainer),s.closest("LI")&&n&&n.firstElementChild&&("OL"===n.firstElementChild.tagName||"UL"===n.firstElementChild.tagName))for(var a=void 0;n.firstElementChild.lastElementChild&&"LI"===n.firstElementChild.lastElementChild.tagName;)(a=n.firstElementChild.lastElementChild).style.removeProperty("margin-left"),a.style.removeProperty("margin-top"),a.style.removeProperty("margin-bottom"),n.firstElementChild.insertAdjacentElement("afterend",a);if("TD"===s.nodeName||"TH"===s.nodeName||"TR"===s.nodeName){var l=t.createElement("span",{className:"tempSpan"});e.insertNode(l),l.parentNode.replaceChild(n,l)}else{var d=new sn,c=this.getNodeCollection(e,d,n)[this.getNodeCollection(e,d,n).length-1],p=void 0;if("BR"!==c.nodeName&&"HR"!==c.nodeName&&("#text"!==c.nodeName||t.isNullOrUndefined(c.parentElement)||"LI"!==c.parentElement.nodeName)||t.isNullOrUndefined(c.parentElement)||0!==c.parentElement.textContent.trim().length){if(("#text"===c.nodeName||"BR"===c.nodeName)&&!t.isNullOrUndefined(c.parentElement)&&("LI"===c.parentElement.nodeName||s===r&&c.parentElement===s)&&c.parentElement.textContent.trim().length>0)return p=c,"LI"!==c.parentElement.nodeName||t.isNullOrUndefined(c.nextSibling)||"BR"!==c.nextSibling.nodeName||t.detach(c.nextSibling),e.collapsed||e.deleteContents(),e.insertNode(n),void(this.contentsDeleted=!0);p=o.GetSpliceNode(e,s)}else p=c,"LI"!==c.parentElement.nodeName||t.isNullOrUndefined(c.nextSibling)||"BR"!==c.nextSibling.nodeName||t.detach(c.nextSibling);p.parentNode.replaceChild(n,p)}}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,s){e.classList.add("lastNode"),r.innerHTML=H(r.innerHTML,s),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(" ");if(e.parentNode&&"A"===e.parentNode.nodeName){var o=e.parentNode,r=o.parentNode;r.insertBefore(i,o.nextSibling),r.insertBefore(e,i)}else 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(e&&en.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.length>0&&e.parentElement.textContent.match(/\u00a0/g)&&e.parentElement.textContent.match(/\u00a0/g).length>0)&&""===e.parentElement.textContent.trim()&&"true"!==e.parentElement.contentEditable&&t.isNullOrUndefined(e.parentElement.querySelector("img"))?this.findDetachEmptyElem(e.parentElement):e},e.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=Array.from(n).filter(function(e){return!e.closest("svg")&&!e.closest("canvas")}),o=0;o<i.length;o++){var r=!0;if("DIV"===i[o].tagName&&(r="none"===i[o].style.borderBottom||""===i[o].style.borderBottom),on.indexOf(i[o].tagName.toLowerCase())<0&&r){var s=this.findDetachEmptyElem(i[o]);t.isNullOrUndefined(s)||t.detach(s)}}},e.closestEle=function(e,n){for(var i=e;i&&1===i.nodeType;){if(i.parentNode===n||!t.isNullOrUndefined(i.parentNode.tagName)&&-1!==tn.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.contentsDeleted=!1,e}(),mn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Zt,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 sn,o=i.getRange(this.parent.currentDocument);"#text"!==o.endContainer.nodeName||o.startContainer.textContent.length!==o.endOffset+1||" "!==o.endContainer.textContent.charAt(o.endOffset)||t.isNullOrUndefined(o.endContainer.nextSibling)||"A"!==o.endContainer.nextSibling.nodeName||(i.setSelectionText(this.parent.currentDocument,o.startContainer,o.endContainer,o.startOffset,o.endOffset+1),o=i.getRange(this.parent.currentDocument));var r=!!t.isNullOrUndefined(e.item.text)||e.item.text.replace(/ /g,"").localeCompare(o.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||o.collapsed||r){var s=this.createAchorNode(e);s.innerText=""===e.item.text?e.item.url:e.item.text;var a=s.innerText.replace(/ +/g,function(e){return" ".repeat(e.length)});if(s.innerText=a,e.item.selection.restore(),un.Insert(this.parent.currentDocument,s,this.parent.editableElement),!e.event||"keydown"!==e.event.type||32!==e.event.keyCode&&13!==e.event.keyCode){p="Paste"===e.item.action?s.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,s.childNodes[0],s.childNodes[0],p,s.childNodes[0].textContent.length)}else{var l=e.item.selection.range.startContainer;l.textContent=this.removeText(l.textContent,e.item.text)}}else this.createLinkNode(e)}else{var d=n,c="";if(t.isNullOrUndefined(e.item.url)||d.setAttribute("href",e.item.url),t.isNullOrUndefined(e.item.title)||d.setAttribute("title",e.item.title),t.isNullOrUndefined(e.item.text)||""===e.item.text||(c=d.innerText,d.innerText=e.item.text),t.isNullOrUndefined(e.item.target)?(d.removeAttribute("target"),d.removeAttribute("aria-label")):(d.setAttribute("target",e.item.target),d.setAttribute("aria-label",e.item.ariaLabel)),c===e.item.text)e.item.selection.setSelectionText(this.parent.currentDocument,d,d,1,1),e.item.selection.restore();else{var p="Paste"===e.item.action?d.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,d.childNodes[0],d.childNodes[0],p,d.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 sn,o=new pn,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||3===r.startContainer.nodeType?(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 C=h[f+1].cloneNode(!0);p[v].appendChild(C)}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,y=0,N=0;f<=h.length;f++)0===f&&(h[f].parentNode.insertBefore(p[y],h[f].nextSibling),1===this.parent.domNode.blockNodes().length&&this.parent.nodeSelection.setSelectionNode(this.parent.currentDocument,p[y]),c[N]=h[f],N++),f<h.length-1&&(h[f].parentNode===h[f+1].parentNode?(c[N]=h[f+1],N++):(y+=1,h[f+1].parentNode.insertBefore(p[y],h[f+1]),c[N]=h[f+1],N++));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),t.isNullOrUndefined(e.item.ariaLabel)||n.setAttribute("aria-label",e.item.ariaLabel),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&&en.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++)this.parent.currentDocument.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}(),gn=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),P()&&U(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}(),fn=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.editableElement,n=t.classList.contains("e-rtl"),i=this.parent.nodeSelection.getRange(this.parent.currentDocument),o=this.parent.nodeSelection.save(i,this.parent.currentDocument);this.parent.domNode.setMarker(o);for(var r=this.parent.domNode.blockNodes(),s=r.slice(),a=[],l=0;l<s.length;l++)"LI"!==s[l].tagName&&"LI"===s[l].parentNode.tagName?(r.splice(r.indexOf(s[l]),1),a.push(s[l].parentNode)):"LI"===s[l].tagName&&(r.splice(r.indexOf(s[l]),1),a.push(s[l]));a.length>0&&this.parent.observer.notify("keydown-handler",{event:{preventDefault:function(){},stopPropagation:function(){},shiftKey:"Indent"!==e.subCommand,which:9,action:"indent"},ignoreDefault:!0});for(l=0;l<r.length;l++){var d=r[l],c=n?d.style.marginRight:d.style.marginLeft,p=void 0;"Indent"===e.subCommand?(p=""===c?this.indentValue+"px":parseInt(c,null)+this.indentValue+"px",n?d.style.marginRight=p:d.style.marginLeft=p):(p=""===c||"0px"===c?"":parseInt(c,null)-this.indentValue+"px",n?d.style.marginRight=p:d.style.marginLeft=p)}t.focus(),P()&&U(t,e.selector),(o=this.parent.domNode.saveMarker(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}(),bn="e-img-caption",vn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Xt,this.imageCommand,this)},e.prototype.imageCommand=function(e){switch(e.value.toString().toLowerCase()){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?un.Insert(this.parent.currentDocument,o,this.parent.editableElement):e.callBack({requestType:"Images",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:[o]})}else{var r=e.item.selectParent[0];i=!0,this.setStyle(r,e,i)}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(){"Replace"===e.value&&i||e.callBack({requestType:"Images",editorMode:"HTML",event:e.event,range:n.parent.nodeSelection.getRange(n.parent.currentDocument),elements:[a]})})}"Replace"===e.value&&(e.item.subCommand="Replace",this.callBack(e))},e.prototype.setStyle=function(e,n,i){t.isNullOrUndefined(n.item.url)||e.setAttribute("src",n.item.url);var o;if(i)for(var r={"e-imgcenter":"e-imgcenter","e-imgright":"e-imgright","e-imgleft":"e-imgleft"},s=e.classList,a=0;a<s.length;a++)t.isNullOrUndefined(r[s[a]])||(o=r[s[a]]);e.setAttribute("class","e-rte-image"+(t.isNullOrUndefined(n.item.cssClass)?"":" "+n.item.cssClass)+(t.isNullOrUndefined(o)?"":" "+o)),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),t.isNullOrUndefined(e.item.ariaLabel)||n.setAttribute("aria-label",e.item.ariaLabel),un.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&&e.item.selection.restore(),un.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.removeAttribute("aria-label")):(e.item.selectNode[0].parentElement.target=e.item.target,e.item.selectNode[0].parentElement.ariaLabel=e.item.ariaLabel),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.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 n=e.item.selectNode[0];n.style.height="",n.style.width="","auto"!==e.item.width?n.style.width=t.formatUnit(e.item.width):n.removeAttribute("width"),"auto"!==e.item.height?n.style.height=t.formatUnit(e.item.height):n.removeAttribute("height"),this.callBack(e)},e.prototype.imageCaption=function(e){un.Insert(this.parent.currentDocument,e.item.insertElement,this.parent.editableElement),this.callBack(e)},e.prototype.imageJustifyLeft=function(e){var n=e.item.selectNode[0];t.isNullOrUndefined(n)||(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")):t.addClass([n],"e-imgleft"),this.callBack(e))},e.prototype.imageJustifyCenter=function(e){var n=e.item.selectNode[0];t.isNullOrUndefined(n)||(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];t.isNullOrUndefined(n)||(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")):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}(),Cn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Yt,this.audioCommand,this)},e.prototype.audioCommand=function(e){var n,i=e.value.toString().toLowerCase();switch("inline"!==i&&"break"!==i&&"audioremove"!==i||(n=e.item.selectNode[0]),i){case"audio":case"audioreplace":this.createAudio(e);break;case"inline":n.removeAttribute("class"),n.closest(".e-audio-wrap").style.display="inline-block",t.addClass([n],["e-rte-audio","e-audio-inline","e-audio-focus"]),this.callBack(e);break;case"break":n.removeAttribute("class"),n.closest(".e-audio-wrap").style.display="block",t.addClass([n],["e-audio-break","e-rte-audio","e-audio-focus"]),this.callBack(e);break;case"audioremove":t.detach(n),this.callBack(e)}},e.prototype.createAudio=function(e){var n,i=this,o=!1;if(!t.isNullOrUndefined(e.item.selectParent)&&e.item.selectParent[0].classList&&(e.item.selectParent[0].classList.contains("e-clickelem")||e.item.selectParent[0].classList.contains("e-audio-wrap"))){var r=e.item.selectParent[0].querySelector("source");this.setStyle(r,e),o=!0}else{n=t.createElement("span",{className:"e-audio-wrap",attrs:{contentEditable:"false",title:e.item.fileName}});var s=t.createElement("audio",{className:"e-rte-audio e-audio-inline",attrs:{controls:""}}),a=t.createElement("source"),l=t.createElement("span",{className:"e-clickelem"});if(this.setStyle(a,e),s.appendChild(a),l.appendChild(s),n.appendChild(l),t.isNullOrUndefined(e.item.selection)||e.item.selection.restore(),un.Insert(this.parent.currentDocument,n,this.parent.editableElement),null===n.nextElementSibling){var d=t.createElement("br");n.parentNode.insertBefore(d,n.nextSibling)}}if(e.callBack&&(t.isNullOrUndefined(e.selector)||!t.isNullOrUndefined(e.selector)&&"pasteCleanupModule"!==e.selector)){var c=this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)[0],p="AudioReplace"===e.value||o?e.item.selectParent[0].querySelector("audio"):t.Browser.isIE?c:c.querySelector("audio");p.addEventListener("loadeddata",function(){"AudioReplace"===e.value&&o||e.callBack({requestType:"Audios",editorMode:"HTML",event:e.event,range:i.parent.nodeSelection.getRange(i.parent.currentDocument),elements:[p]})}),o&&p.load()}},e.prototype.setStyle=function(e,n){t.isNullOrUndefined(n.item.url)||e.setAttribute("src",n.item.url);var i=n.item.fileName?n.item.fileName.split(".").pop().toLowerCase():n.item.url?n.item.url.split(".").pop().toLowerCase():"";e.type="opus"===i?"audio/ogg":"m4a"===i?"audio/mp4":n.item.fileName&&n.item.fileName.split(".").length>0?"audio/"+n.item.fileName.split(".")[n.item.fileName.split(".").length-1]:n.item.url&&n.item.url.split(".").length>0?"audio/"+n.item.url.split(".")[n.item.url.split(".").length-1]:""},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}(),yn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Jt,this.videoCommand,this)},e.prototype.videoCommand=function(e){var n,i,o,r=e.value.toString().toLowerCase();switch("video"!==r&&"videoreplace"!==r&&(i=(n=e.item.selectNode[0]).closest(".e-embed-video-wrap"),o=n.closest(".e-video-clickelem")),r){case"video":case"videoreplace":this.createVideo(e);break;case"videodimension":this.videoDimension(e);break;case"inline":n.removeAttribute("class"),i&&(i.style.display="inline-block"),o&&(n.parentElement.style.cssFloat=""),t.addClass([n],["e-rte-video","e-video-inline","e-video-focus"]),this.callBack(e);break;case"break":n.removeAttribute("class"),i&&(i.style.display="block"),o&&(n.parentElement.style.cssFloat=""),t.addClass([n],["e-video-break","e-rte-video","e-video-focus"]),this.callBack(e);break;case"justifyleft":n.removeAttribute("class"),i&&(i.style.display="block"),o&&(n.parentElement.style.cssFloat="left"),t.addClass([n],["e-rte-video","e-video-left"]),this.callBack(e);break;case"justifycenter":n.removeAttribute("class"),i&&(i.style.display="block"),o&&(n.parentElement.style.cssFloat=""),t.addClass([n],["e-rte-video","e-video-center"]),this.callBack(e);break;case"justifyright":n.removeAttribute("class"),i&&(i.style.display="block"),o&&(n.parentElement.style.cssFloat="right"),t.addClass([n],["e-rte-video","e-video-right"]),this.callBack(e);break;case"videoremove":t.detach(n.parentElement),this.callBack(e)}},e.prototype.createVideo=function(e){var n,i,o,r=this,s=!1;if("VideoReplace"!==e.value||t.isNullOrUndefined(e.item.selectParent)||"VIDEO"!==e.item.selectParent[0].tagName)if("VideoReplace"===e.value&&!t.isNullOrUndefined(e.item.selectParent)&&e.item.selectParent[0].classList&&e.item.selectParent[0].classList.contains("e-video-clickelem"))e.item.selectParent[0].innerHTML=e.item.fileName,this.setStyle(e.item.selectParent[0].firstElementChild,e,e.item.selectParent[0].firstElementChild);else{if(e.item.isEmbedUrl){n=t.createElement("span",{className:"e-embed-video-wrap",attrs:{contentEditable:"false"}});var a=t.createElement("span",{className:"e-video-clickelem"}),l=t.createElement("template");l.innerHTML=e.item.fileName,a.appendChild(l.content),i=o=a.firstElementChild,this.setStyle(o,e,i),n.appendChild(a)}else n=t.createElement("span",{className:"e-video-wrap",attrs:{contentEditable:"false",title:e.item.fileName}}),i=t.createElement("video",{className:"e-rte-video e-video-inline",attrs:{controls:""}}),o=t.createElement("source"),this.setStyle(o,e,i),i.appendChild(o),n.appendChild(i);if(t.isNullOrUndefined(e.item.selection)||e.item.selection.restore(),un.Insert(this.parent.currentDocument,n,this.parent.editableElement),null===n.nextElementSibling){var d=t.createElement("br");n.parentNode.insertBefore(d,n.nextSibling)}}else{var c=e.item.selectParent[0].querySelector("source");this.setStyle(c,e,c),s=!0}if(e.callBack&&(t.isNullOrUndefined(e.selector)||!t.isNullOrUndefined(e.selector)&&"pasteCleanupModule"!==e.selector)){var p=this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)[0],h="VideoReplace"===e.value||s?e.item.isEmbedUrl?e.item.selectParent[0].querySelector("iframe"):e.item.selectParent[0]:t.Browser.isIE?p:e.item.isEmbedUrl?p.querySelector("iframe"):p.lastElementChild;h.addEventListener("IFRAME"!==h.tagName?"loadeddata":"load",function(){"VideoReplace"===e.value&&s||(e.item.isEmbedUrl&&h&&h.classList.add("e-rte-embed-url"),e.callBack({requestType:"Videos",editorMode:"HTML",event:e.event,range:r.parent.nodeSelection.getRange(r.parent.currentDocument),elements:[h]}))}),s&&h.load(),-1!==t.Browser.userAgent.indexOf("Firefox")&&(i.addEventListener("play",function(){r.editAreaVideoClick(e)}),i.addEventListener("pause",function(){r.editAreaVideoClick(e)}))}},e.prototype.editAreaVideoClick=function(e){e.callBack({requestType:"VideosPlayPause",editorMode:"HTML",event:e.event})},e.prototype.setStyle=function(e,n,i){""===n.item.url||t.isNullOrUndefined(n.item.url)||e.setAttribute("src",n.item.url),n.item.isEmbedUrl||(e.type=n.item.fileName&&n.item.fileName.split(".").length>0?"video/"+n.item.fileName.split(".")[n.item.fileName.split(".").length-1]:n.item.url&&n.item.url.split(".").length>0?"video/"+n.item.url.split(".")[n.item.url.split(".").length-1]:""),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.width)||i.setAttribute("width",t.formatUnit(n.item.width.width)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.height)||i.setAttribute("height",t.formatUnit(n.item.height.height)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.minWidth)||(i.style.minWidth=t.formatUnit(n.item.width.minWidth)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.maxWidth)||(i.style.maxWidth=t.formatUnit(n.item.width.maxWidth)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.minHeight)||(i.style.minHeight=t.formatUnit(n.item.height.minHeight)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.maxHeight)||(i.style.maxHeight=t.formatUnit(n.item.height.maxHeight))},e.prototype.videoDimension=function(e){var n=e.item.selectNode[0].classList.contains("e-video-clickelem")?e.item.selectNode[0].querySelector("iframe"):e.item.selectNode[0];n.style.height="",n.style.width="","auto"!==e.item.width?n.style.width=t.formatUnit(e.item.width):n.removeAttribute("width"),"auto"!==e.item.height?n.style.height=t.formatUnit(e.item.height):n.removeAttribute("height"),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}(),Nn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on($t,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.rows;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(),un.Insert(this.parent.currentDocument,n,this.parent.editableElement),e.item.selection.setSelectionText(this.parent.currentDocument,n.querySelector("td"),n.querySelector("td"),0,0),null===n.nextElementSibling){var d=void 0;"DIV"===e.enterAction?(d=t.createElement("div")).appendChild(t.createElement("br")):"BR"===e.enterAction?d=t.createElement("br"):(d=t.createElement("p")).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")>=0||e.indexOf("%")>=0||e.indexOf("auto")>=0)?e:e+"px"},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("TH"!==i.nodeName&&"TD"!==i.nodeName&&(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=this.curTable.querySelectorAll("th.e-cell-select").length>0,p=0;p<s[l].length;p++)if(n&&l<s.length-1&&s[l][p]===s[l+1][p]||!n&&0<l&&s[l][p]===s[l-1][p])(0===p||0<p&&s[l][p]!==s[l][p-1])&&s[l][p].setAttribute("rowspan",(parseInt(s[l][p].getAttribute("rowspan"),10)+1).toString());else{var h=t.createElement("td");h.appendChild(t.createElement("br")),d.appendChild(h),h.setAttribute("style",s[c&&n&&s[l+1]?l+1:l][p].getAttribute("style"))}var u=void 0;u=c&&n?this.curTable.querySelector("tbody").childNodes[0]:this.curTable.rows[l],"InsertRowBefore"===e.item.subCommand?u.parentElement.insertBefore(d,u):c?u.parentElement.insertBefore(d,u):this.insertAfter(d,u)}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;"TH"!==n.nodeName&&"TD"!==n.nodeName&&(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(":scope > td, :scope > th")).indexOf(n),a=parseInt(e.item.width,10)/o.querySelectorAll(":scope > td, :scope > th").length,l=parseInt(e.item.width,10)/(o.querySelectorAll(":scope > td, :scope > th").length+1),d=t.closest(o,"table"),c=t.closest(o,"table").querySelectorAll("th,td"),p=0;p<c.length;p++)c[p].dataset.oldWidth=c[p].offsetWidth/d.offsetWidth*100+"%";for(p=0;p<r.length;p++){var h=(i=r[p].querySelectorAll(":scope > td, :scope > th")[s]).cloneNode(!0);h.innerHTML="",h.appendChild(t.createElement("br")),h.removeAttribute("class"),h.removeAttribute("colspan"),h.removeAttribute("rowspan"),"InsertColumnLeft"===e.item.subCommand?i.parentElement.insertBefore(h,i):this.insertAfter(h,i),h.style.width=l.toFixed(4)+"%",delete h.dataset.oldWidth}for(p=0;p<c.length;p++)c[p].style.width=(Number(c[p].dataset.oldWidth.split("%")[0])*l/a).toFixed(4)+"%",delete c[p].dataset.oldWidth;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;3===n.nodeType&&(n=t.closest(n.parentElement,"td,th"));var i=t.closest(n,"TH"===n.tagName?"thead":"tbody"),o=i&&Array.prototype.indexOf.call(i.childNodes,n.parentNode);if(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 r=void 0,s=this.getCorrespondingColumns(),a=this.getSelectedCellMinMaxIndex(s),l=a.startColumn,d=a.endColumn,c=0;c<s.length;c++)for(var p=s[c],h=0;h<p.length;h++){var u=p[h],m=this.getCorrespondingIndex(u,s),g=parseInt(u.getAttribute("colspan"),10)||1;m[1]+(g-1)>=l&&m[1]<=d&&(g>1?u.setAttribute("colspan",(g-1).toString()):(t.detach(u),r=h,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(r>-1){var f=i.children[o],b=f&&f.children[r<=f.children.length-1?r:r-1];b&&(e.item.selection.setSelectionText(this.parent.currentDocument,b,b,0,0),b.classList.add("e-cell-select"))}}if(e.callBack){var v=this.parent.nodeSelection.getRange(this.parent.currentDocument).startContainer;if("TD"!==v.nodeName){var C=this.parent.nodeSelection.getRange(this.parent.currentDocument).startOffset,y=v.children[C];y&&this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,y,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"));var i=Array.prototype.indexOf.call(n.parentNode.childNodes,n);this.curTable=t.closest(n,"table");var o,r,s,a=this.getCorrespondingColumns(),l=this.getSelectedCellMinMaxIndex(a);if(1===this.curTable.rows.length)e.item.selection.restore(),t.detach(t.closest(n.parentElement,"table"));else for(r=l.endRow;r>=l.startRow;r--){for(o=this.curTable.rows[r],s=0;s<a[r].length;s++){if((0===s||a[r][s]!==a[r][s-1])&&1<parseInt(a[r][s].getAttribute("rowspan"),10)){var d=parseInt(a[r][s].getAttribute("rowspan"),10)-1;if(1===d){a[r][s].removeAttribute("rowspan");var c=this.getMergedRow(this.getCorrespondingColumns())[s];if(c){var p=c.cloneNode(!0);p.innerHTML="<br>",c.parentElement&&c.parentElement.insertBefore(p,c)}}else a[r][s].setAttribute("rowspan",d.toString())}if(r<a.length-1&&a[r][s]===a[r+1][s]&&(0===r||a[r][s]!==a[r-1][s])){var h=a[r][s],u=void 0;for(u=s;0<u&&a[r][u]===a[r][u-1];u--)0===u?this.curTable.rows[r+1].prepend(h):a[r+1][u-1].insertAdjacentElement("afterend",h)}}var m=o.rowIndex;this.curTable.deleteRow(m);var g=t.isNullOrUndefined(this.curTable.rows[m])?this.curTable.querySelectorAll("tbody tr")[m-1]:this.curTable.querySelectorAll("tbody tr")[m],f=g&&g.querySelectorAll("td")[i];f?(e.item.selection.setSelectionText(this.parent.currentDocument,f,f,0,0),f.classList.add("e-cell-select")):(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.getMergedRow=function(e){for(var t,n=0;n<e.length;n++)e[n].length!==this.curTable.rows[0].childNodes.length&&(t=e[n]);return t},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){var t="";switch(e.item.subCommand){case"AlignTop":t="top";break;case"AlignMiddle":t="middle";break;case"AlignBottom":t="bottom"}e.item.tableCell.style.verticalAlign=t,t&&""!==t&&e.item.tableCell.getAttribute("valign")&&e.item.tableCell.removeAttribute("valign"),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&&o&&this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,o,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])&&d[i][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="<br>"===e[0].innerHTML?"":e[0].innerHTML,n=1;n<e.length;n++)"<br>"!==e[n].innerHTML&&(t=t?t+"<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.rows,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 Sn;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}(),Sn=function(){function e(){}return e}(),En=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&&"underline"!==e.style.textDecorationLine)},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&&"line-through"!==e.style.textDecorationLine)},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","font","i","kbd","label","q","samp","small","span","strong","sub","sup","tt","u","var","del"],e}(),Tn=function(){function e(){}return e.applyFormat=function(e,n,i,o,r,s,a){if(this.enterAction=o,["bold","italic","underline","strikethrough","superscript","subscript","uppercase","lowercase","fontcolor","fontname","fontsize","backgroundcolor"].indexOf(n)>-1||"formatPainter"===r){"backgroundcolor"===n&&""===r&&(r="transparent");var l=new sn,d=new ln(i,e),c=new pn,p=new En,h=l.getRange(e),u=h.startContainer.parentElement;if(h.collapsed&&!t.isNullOrUndefined(u)&&"A"===u.tagName&&(h.startOffset===u.textContent.length||0===h.startOffset)){var m=document.createTextNode("");0===h.startOffset?u.parentNode.insertBefore(m,u):t.isNullOrUndefined(u.nextSibling)?u.parentNode.appendChild(m):u.parentElement.insertBefore(m,u.nextSibling);var g=e.createRange();h.setStart(m,0),h.setEnd(m,0),h.collapse(!0),l.setRange(e,g)}if(-1!==t.Browser.userAgent.indexOf("Firefox")&&h.startContainer===h.endContainer&&!t.isNullOrUndefined(i)&&h.startContainer===i){for(var f=h.startContainer.childNodes[h.startOffset>0?h.startOffset-1:h.startOffset]||h.startContainer,b=h.endContainer.childNodes[h.endOffset>0?h.endOffset-1:h.endOffset]||h.endContainer,v="BR"===b.lastChild.nodeName?t.isNullOrUndefined(b.lastChild.previousSibling)?b:b.lastChild.previousSibling:b.firstChild;!t.isNullOrUndefined(v)&&"#text"!==v.nodeName&&"IMG"!==v.nodeName&&"BR"!==v.nodeName&&"HR"!==v.nodeName;)v=v.lastChild;l.setSelectionText(e,f,v,0,0),h=l.getRange(e)}var C=l.save(h,e),y=h.collapsed?l.getSelectionNodeCollection(h):l.getSelectionNodeCollectionBr(h),N=!1,S=!1,E=!1,T=!1,O=["fontcolor","fontname","fontsize","backgroundcolor"].indexOf(n)>-1;if(h.collapsed){var w=p.getFormattedNode(h.startContainer,n,i),k=t.isNullOrUndefined(w)?null:null===w.getAttribute("style")?w.nodeName:w.nodeName+"[style='"+w.getAttribute("style")+"']";if(y.length>0)N=!0,h=c.GetCursorRange(e,h,y[0]);else if(3===h.startContainer.nodeType&&(h.startContainer.parentElement.childElementCount>0&&h.startOffset>0&&"br"!==h.startContainer.parentElement.firstElementChild.tagName.toLowerCase()||!t.isNullOrUndefined(w)&&w===h.startContainer.parentElement.closest(k)&&0!==h.startContainer.parentElement.closest(k).textContent.replace(new RegExp(String.fromCharCode(8203),"g"),"").trim().length))N=!0,h=c.GetCursorRange(e,h,h.startContainer),y.push(h.startContainer);else{var L=this.insertCursorNode(e,l,h,p,c,n,r,i);l.endContainer=l.startContainer=l.getNodeArray(L,!0);var x="BR"===L.nodeName&&L.parentNode.childNodes;t.isNullOrUndefined(x)||1!==x.length||"BR"!==x[0].nodeName||0!==y.length?l.endOffset=l.startOffset=1:(l.setSelectionText(e,h.startContainer,h.endContainer,0,0),T=!0),"BR"===L.nodeName&&0===L.parentNode.textContent.length&&(T=!0)}}E=h.collapsed;for(var D=!1,M=0;M<y.length;M++){var R=p.getFormattedNode(y[M],n,i);null===R&&("subscript"===n?D=null!==(R=p.getFormattedNode(y[M],"superscript",i)):"superscript"===n&&(D=null!==(R=p.getFormattedNode(y[M],"subscript",i)))),0===M&&null===R&&(S=!0),y[M]=null===R||S&&!O?this.insertFormat(e,y,M,R,E,S,O,h,c,n,r,a,d,i):this.removeFormat(y,M,R,E,S,O,h,c,n,r,l,i,d),l=this.applySelection(y,l,c,M,N)}P()&&U(i,s),T||C.restore(),D&&this.applyFormat(e,n,i,o)}},e.insertCursorNode=function(e,n,i,o,r,s,a,l){var d=n.getNodeCollection(i),c=new ln(l,e),p=d.length>0?d.length>1&&i.startContainer===i.endContainer?this.getCursorFormat(o,d,s,l):o.getFormattedNode(d[0],s,l):null,h=null;if(p){if(h=d[0],8203===p.firstChild.textContent.charCodeAt(0)&&3===p.firstChild.nodeType){var u=new RegExp(String.fromCharCode(8203),"g"),m=void 0;p.firstChild===h?(h.textContent=p.parentElement&&(c.isBlockNode(p.parentElement)&&p.parentElement.textContent.length<=1?p.parentElement.childElementCount>1:0===p.childElementCount)&&(p.parentElement.textContent.length>1||p.parentElement.firstChild&&1===p.parentElement.firstChild.nodeType)?h.textContent:h.textContent.replace(u,""),m=h):(p.firstChild.textContent=p.firstChild.textContent.replace(u,""),m=p.firstChild);var g=void 0;if(0===m.textContent.length)if(t.isNullOrUndefined(m.previousSibling)){if(!t.isNullOrUndefined(m.parentElement)&&0===m.parentElement.textContent.length){var f=document.createElement("BR");m.parentElement.appendChild(f),t.detach(m),h=f,n.setCursorPoint(e,h.parentElement,0)}}else h=m.previousSibling,g=m.textContent.length-1,n.setCursorPoint(e,m,g)}["fontcolor","fontname","fontsize","backgroundcolor"].indexOf(s)>-1?("fontcolor"===s?p.style.color=a:"fontname"===s?p.style.fontFamily=a:"fontsize"===s?p.style.fontSize=a:p.style.backgroundColor=a,h=p):cn.unwrap(p)}else d.length>1&&i.startOffset>0&&d[0].firstElementChild&&"br"===d[0].firstElementChild.tagName.toLowerCase()&&(d[0].innerHTML=""),1!==d.length||0!==i.startOffset||"BR"!==d[0].nodeName&&(t.isNullOrUndefined(d[0].nextSibling)||"BR"!==d[0].nextSibling.nodeName)||t.detach("#text"===d[0].nodeName?d[0].nextSibling:d[0]),h=this.getInsertNode(e,i,s,a).firstChild;return h},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,g="#text"===a.startContainer.nodeName?a.startContainer.textContent.substring(a.startOffset,a.startContainer.textContent.length):a.startContainer.textContent,f=e[n].textContent;if(a.startContainer!==a.endContainer||0!==a.startOffset||a.endOffset!==a.startContainer.length){var b=[],v=e[n];do{b.push(p.getIndex(v)),v=v.parentNode}while(v&&v!==i);if("BR"!==e[n].nodeName&&(v=m=o&&i.textContent.length-1===a.startOffset?l.SplitNode(a,i,!0):l.GetSpliceNode(a,i)),o){for(var C=m;null!==C.firstChild&&3!==C.firstChild.nodeType;null)C=C.firstChild;C.innerHTML="​",e[n]=C.firstChild}else{for(;v&&v.childNodes.length>0&&b.length-1>=0&&v.childNodes.length>b[b.length-1];)v=v.childNodes[b[b.length-1]],b.pop();if("BR"!==e[n].nodeName)if(3!==v.nodeType||o&&""===v.nodeValue){var y=document.createElement("div");y.innerHTML="​",3!==v.nodeType?(v.insertBefore(y.firstChild,v.firstChild),e[n]=v.firstChild):(v.parentNode.insertBefore(y.firstChild,v),e[n]=v.previousSibling,v.parentNode.removeChild(v))}else e[n]=v}}else if(s&&!e[n].contains(i)&&3===e[n].nodeType&&e[n].textContent!==i.textContent){for(var N=e[n].textContent===e[n].wholeText,S=e[n],E=this.GetFormatNode(d,c);S&&S.textContent===S.parentElement.textContent;)S=S.parentElement;if(N&&i.textContent!==S.textContent){var T=[],O=this.getPriorityFormatNode(S,h);return O&&O.textContent===S.textContent&&(S=O),T.push(S),this.applyStyles(T,0,E),e[n]}}var w;"backgroundcolor"===d&&(w=i.style.fontSize);var k;if("fontsize"===d){var L=t.closest(e[n].parentElement,"span[style*=background-color]");t.isNullOrUndefined(L)||(k=L.style.backgroundColor)}var x,D=i.getAttribute("style"),M=i.tagName;if("A"===M&&"underline"===d)i.style.textDecoration="none",x=[i];else{x=cn.unwrap(i);P=e[n].parentElement;t.isNullOrUndefined(P)||"li"===P.tagName.toLowerCase()||(P=t.closest(P,"li")),t.isNullOrUndefined(P)||"li"!==P.tagName.toLowerCase()||P.textContent.trim()!==e[n].textContent.trim()||("bold"===d?P.style.fontWeight="normal":"italic"===d&&(P.style.fontStyle="normal"))}if(x[0]&&!s)for(var R=S=x[n]?x[n]:x[0];S&&S.parentElement&&S.parentElement!==h;S=S){var B=void 0;if(B="SPAN"===i.nodeName?S.parentElement.tagName.toLocaleLowerCase()===i.tagName.toLocaleLowerCase()&&S.parentElement.getAttribute("style")===D:S.parentElement.tagName.toLocaleLowerCase()===i.tagName.toLocaleLowerCase(),S.parentElement&&B&&(S.parentElement.childElementCount>1||a.startOffset>1)){if(R.parentElement&&R.parentElement.tagName.toLocaleLowerCase()===i.tagName.toLocaleLowerCase()&&a.startOffset===a.endOffset&&1!==R.nodeType&&!t.isNullOrUndefined(R.textContent)&&R.parentElement.childElementCount>1&&(a.setStart(R,0),a.setEnd(R,R.textContent.length),l.SplitNode(a,R.parentElement,!1)),"span"===S.parentElement.tagName.toLocaleLowerCase()&&"underline"===i.style.textDecoration&&"underline"!==S.parentElement.style.textDecoration){S=S.parentElement;continue}cn.unwrap(S.parentElement),S=t.isNullOrUndefined(S.parentElement)||u.isBlockNode(S.parentElement)?S.parentElement:R}else S=S.parentElement}if(x.length>0&&s){for(H=0;H<x.length;H++)if(3!==x[H].nodeType||x[H].textContent&&x[H].textContent.trim().length>0){x[H]=cn.Wrap(x[H],this.GetFormatNode(d,c,M,D));P=e[n].parentElement;t.isNullOrUndefined(P)||"li"===P.tagName.toLowerCase()||(P=t.closest(P,"li")),t.isNullOrUndefined(P)||"li"!==P.tagName.toLowerCase()||P.textContent.trim()!==e[n].textContent.trim()||"fontname"===d&&(P.style.fontFamily=c),x[H].textContent===g&&(0===H?a.setStartBefore(x[H]):H===x.length-1&&a.setEndAfter(x[H]))}var A=e[n].parentElement;if(t.isNullOrUndefined(w)||""===w||(A.style.fontSize=w),t.isNullOrUndefined(k)||""===k||(A.style.backgroundColor=k),"backgroundcolor"===d&&!t.isNullOrUndefined(w)&&""!==w&&A.parentElement.innerHTML===A.outerHTML){var I=A.parentElement;I.parentElement.insertBefore(A,I),t.detach(I)}if("fontsize"===d||"fontcolor"===d){for(var P=e[n].parentElement,U=e[n].parentElement;!t.isNullOrUndefined(U)&&"li"!==U.tagName.toLowerCase();)P=U=U.parentElement;for(var H=n,j="";H>=0&&!t.isNullOrUndefined(P)&&"li"===P.tagName.toLowerCase()&&P.contains(e[H])&&P.textContent.replace("//g","").trim().includes(e[H].textContent.trim());)j=" "+e[H].textContent.trim()+j,H--;var F=!1,q=0,z=!1;if(!t.isNullOrUndefined(P)&&P.childNodes)for(var _=0;_<P.childNodes.length;_++)"OL"===P.childNodes[_].nodeName&&(q++,F=!0);if(t.isNullOrUndefined(P)||"li"!==P.tagName.toLowerCase()||P.textContent.split("").join("").trim()!==j.split("").join("").trim()){if(!t.isNullOrUndefined(P)&&"li"===P.tagName.toLowerCase()&&F){if(F&&q>0)for(var V=0;V<P.childNodes.length;V++)e[n].textContent===P.childNodes[V].textContent&&e[n].textContent===f&&P.textContent.replace("//g","").trim().includes(j.split("").join("").trim())&&(z=!0);if(z){for(var Q=0;Q<P.childNodes.length;Q++)"OL"===P.childNodes[Q].nodeName&&(P.childNodes[Q].style.fontSize="initial");"fontsize"===d?P.style.fontSize=c:(P.style.color=c,P.style.textDecoration="inherit")}}}else"fontsize"===d?P.style.fontSize=c:(P.style.color=c,P.style.textDecoration="inherit")}}return e[n]},e.insertFormat=function(e,n,i,o,r,s,a,l,d,c,p,h,u,m){if(r)if("uppercase"!==c&&"lowercase"!==c){g=this.getInsertNode(e,l,c,p);n[i]=g.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 g=this.GetFormatNode(c,p);if("formatPainter"===p||a){for(var f=n[i].parentElement,b=n[i].parentElement;!t.isNullOrUndefined(b)&&"li"!==b.tagName.toLowerCase();)f=b=b.parentElement;if("fontcolor"===c){var v=n[i].parentElement;if(!t.isNullOrUndefined(v)&&v.childNodes)for(var C=0;C<v.childNodes.length;C++){this.concatenateTextExcludingList(n,i)===n[i].textContent&&"LI"===v.tagName&&(v.style.color=p);var y=v.childNodes[C];"OL"!==y.tagName&&"UL"!==y.tagName||(y.style.color="initial")}}if(t.isNullOrUndefined(f)||"li"!==f.tagName.toLowerCase()||f.textContent.trim()!==n[i].textContent.trim()||("fontsize"===c?f.style.fontSize=p:"fontcolor"===c?(f.style.color=p,f.style.textDecoration="inherit"):"fontname"===c&&(f.style.fontFamily=p)),"formatPainter"===p)return this.insertFormatPainterElem(n,i,l,d,h,u);var N=n[i],S=this.getPriorityFormatNode(N,m);if(!t.isNullOrUndefined(S)||a){var E=t.isNullOrUndefined(S)?N:S;if(E=t.isNullOrUndefined(S)||""===S.style.fontSize?E:E.firstChild,t.isNullOrUndefined(S)||"fontsize"===c)for(;E;){var T=E.parentElement.textContent.trim()===n[i].textContent.trim(),O=E.parentElement;if(u.isBlockNode(O)||!T||"SPAN"===O.nodeName&&O.classList.contains("e-img-inner"))break;E=O}var w=[];if("fontcolor"===c){var k=t.closest(n[i].parentElement,"A");t.isNullOrUndefined(k)||k.firstChild.textContent.trim()!==n[i].textContent.trim()||(E=n[i])}n[i].textContent.trim()!==E.textContent.trim()&&(E=n[i]),w[0]=E,this.applyStyles(w,0,g)}else n[i]=this.applyStyles(n,i,g)}else{n[i]=this.applyStyles(n,i,g);f=n[i].parentElement;t.isNullOrUndefined(f)||"li"===f.tagName.toLowerCase()||(f=t.closest(f,"li")),t.isNullOrUndefined(f)||"li"!==f.tagName.toLowerCase()||f.textContent.trim()!==n[i].textContent.trim()||("bold"===c?f.style.fontWeight="bold":"italic"===c&&(f.style.fontStyle="italic"))}}}else n[i]=d.GetSpliceNode(l,n[i]);return n[i]},e.applyStyles=function(e,t,n){return"BR"===e[t].nodeName&&"BR"===this.enterAction||(e[t]=t===e.length-1||"BR"===e[t].nodeName?cn.Wrap(e[t],n):cn.WrapBefore(e[t],n,!0),e[t]=this.getChildNode(e[t],n)),e[t]},e.getPriorityFormatNode=function(e,n){var i,o,r,s=new En,a=s.getFormattedNode(e,"fontsize",n);return t.isNullOrUndefined(a)?(o=s.getFormattedNode(e,"backgroundcolor",n),t.isNullOrUndefined(o)?(r=s.getFormattedNode(e,"fontname",n),t.isNullOrUndefined(r)?(i=s.getFormattedNode(e,"fontcolor",n),t.isNullOrUndefined(i)?null:i):r):o):a},e.getInsertNode=function(e,n,i,o){var r=this.GetFormatNode(i,o);if(r.innerHTML="​",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="​",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.insertFormatPainterElem=function(e,n,i,o,r,s){var a=s.isBlockNode(e[n].parentElement)?e[n]:e[n].parentElement;if(!s.isBlockNode(a))for(;a.textContent.trim()===a.parentElement.textContent.trim()&&!s.isBlockNode(a.parentElement);)a=a.parentElement;t.isNullOrUndefined(a)||1!==a.nodeType||a.classList.contains("e-rte-img-caption")||a.classList.contains("e-img-inner")||this.formatPainterCleanup(n,e,a,i,o,s);var l=r.element;if(!t.isNullOrUndefined(l)){var d=l.cloneNode(!0),c=d.querySelectorAll(r.lastChild.nodeName),p=void 0;c.length>0?p=c[c.length-1]:t.isNullOrUndefined(d)||d.nodeName!==r.lastChild.nodeName||(p=d),p.textContent=e[n].textContent;var h=p.childNodes[0];e[n]=cn.Wrap(e[n],d),e[n].textContent="",e[n]=h}return e[n]},e.formatPainterCleanup=function(e,n,i,o,r,s){var a=["A","AUDIO","IMG","VIDEO","IFRAME"];if(0===e&&i.textContent.trim()!==n[e].textContent.trim()){r.SplitNode(o,i,!0);for(var l=n[e].parentElement.childNodes,d=0;d<l.length;d++)if(l[d].textContent.trim()===n[d].textContent.trim()){i.parentNode.insertBefore(l[d],i);break}for(var c=i.parentElement.childNodes,p=0;p<c.length;p++)""!==c[p].textContent.trim()&&0!==c[p].textContent.length||t.detach(c[p])}else if(i.textContent.trim()!==n[e].textContent.trim())i.parentElement.insertBefore(n[e],i);else for(;!t.isNullOrUndefined(i)&&3!==i.nodeType&&!s.isBlockNode(i);){for(var h=void 0,d=0;d<i.childNodes.length;d++){var u=i.childNodes[d];0!==u.textContent.trim().length&&3!==u.nodeType&&(h=i.childNodes[d])}-1===a.indexOf(i.tagName)&&cn.unwrap(i),i=h}},e.concatenateTextExcludingList=function(e,t){for(var n="",i=e[t].parentElement,o=0;o<i.childNodes.length;o++){var r=i.childNodes[o];(3===r.nodeType||1===r.nodeType&&"OL"!==r.tagName&&"UL"!==r.tagName)&&(n+=r.textContent)}return n},e.enterAction="P",e}(),On=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||e.event.metaKey)&&t.indexOf(e.event.action)>-1&&(e.event.preventDefault(),Tn.applyFormat(this.parent.currentDocument,e.event.action,this.parent.editableElement,e.enterAction),this.callBack(e,e.event.action))},e.prototype.applySelection=function(e){Tn.applyFormat(this.parent.currentDocument,e.subCommand.toLocaleLowerCase(),this.parent.editableElement,e.enterAction,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}(),wn=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(un.Insert(this.parent.currentDocument,e.value,this.parent.editableElement,!0,e.enterAction),"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}(),kn=function(){function e(){}return e.clear=function(e,n,i,o,r){this.domNode=new ln(n,e),this.defaultTag="P"===i?this.defaultTag:"div";var s=new sn,a=new pn,l=s.getRange(e),d=l.collapsed?s.getSelectionNodeCollection(l):s.getSelectionNodeCollectionBr(l),c=s.save(l,e),p=!1;if(l.collapsed&&"ClearFormat"!==r&&(p=!0,l=a.GetCursorRange(e,l,d[0])),!l.collapsed){var h=void 0;if(h=d.length>0&&"BR"===d[0].nodeName&&t.closest(d[0],"table")?a.GetSpliceNode(l,t.closest(d[0],"table")):a.GetSpliceNode(l,d[d.length>1&&"IMG"===d[0].nodeName?1:0]),1===d.length)s.setSelectionContents(e,h),l=s.getRange(e);else if(d.length>1){for(var u=1,m=d[d.length-u];d.length<=u&&"BR"===d[d.length-u].nodeName;)u++,m=d[d.length-u];var g=a.GetSpliceNode(l,m);s.setSelectionText(e,h,g,0,3===g.nodeType?g.textContent.length:g.childNodes.length),l=s.getRange(e)}var f=s.getNodeCollection(l),b=f.slice();this.clearInlines(s.getSelectionNodes(b),b,s.getRange(e),a,n),this.reSelection(e,c,f),l=s.getRange(e);var v=(f=s.getNodeCollection(l)).slice();this.clearBlocks(e,v,n,a,s),P()&&U(n,o),this.reSelection(e,c,f)}p&&s.setCursorPoint(e,l.endContainer,l.endOffset)},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),cn.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()||cn.Wrap(t[o],e.createElement(this.defaultTag));var r=cn.unwrap(t[o]);1===r.length&&"p"===r[0].parentNode.nodeName.toLocaleLowerCase()&&(cn.Wrap(t[o],e.createElement(this.defaultTag)),cn.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()?cn.unwrap(r[s]):this.BLOCK_TAGS.indexOf(r[s].nodeName.toLocaleLowerCase())>-1&&"p"===r[s].nodeName.toLocaleLowerCase()&&(cn.Wrap(r[s],e.createElement(this.defaultTag)),cn.unwrap(r[s]))}else cn.Wrap(t[o],e.createElement(this.defaultTag)),cn.unwrap(t[o])},e.clearInlines=function(e,t,n,i,o){for(var r=0;r<e.length;r++){for(var s=e[r],a=void 0;!this.domNode.isBlockNode(s)&&s.parentElement&&!s.parentElement.classList.contains("e-img-inner");)a=s,s=s.parentElement;a&&En.inlineTags.indexOf(a.nodeName.toLocaleLowerCase())>-1&&(i.GetSpliceNode(n,a),this.removeInlineParent(a))}},e.removeInlineParent=function(e){for(var t=cn.unwrap(e),n=0;n<t.length;n++)1===t[n].parentNode.childNodes.length&&!t[n].parentNode.classList.contains("e-img-inner")&&En.inlineTags.indexOf(t[n].parentNode.nodeName.toLocaleLowerCase())>-1?this.removeInlineParent(t[n].parentNode):En.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.defaultTag="p",e}(),Ln=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,enterAction:e.enterAction}),e.event.preventDefault()}},e.prototype.applyClear=function(e){"ClearFormat"===e.subCommand&&(kn.clear(this.parent.currentDocument,this.parent.editableElement,e.enterAction,e.selector,e.subCommand),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}(),xn=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.getTextContentFromFragment=function(e){for(var t="",n=0;n<e.childNodes.length;n++){var i=e.childNodes[n];i.nodeType===Node.TEXT_NODE?t+=i.textContent:i.nodeType===Node.ELEMENT_NODE&&(t+=this.getTextContentFromFragment(i))}return t},e.prototype.isElementStructureEqual=function(e,t){if(e.childNodes.length!==t.childNodes.length)return!1;for(var n=0;n<e.childNodes.length;n++){var i=e.childNodes[n],o=t.childNodes[n];if(!i||!o)return!1;if(i.nodeType!==o.nodeType)return!1;if(i.outerHTML!==o.outerHTML)return!1}return!0},e.prototype.saveData=function(e){for(var n=(new sn).getRange(this.parent.currentDocument),i=this.parent.editableElement===n.startContainer.parentElement?n.startContainer.parentElement:n.startContainer,o=i.childNodes.length-1;o>=0;o--)!t.isNullOrUndefined(i.childNodes[o])&&"#text"===i.childNodes[o].nodeName&&0===i.childNodes[o].textContent.length&&"IMG"!==i.childNodes[o].nodeName&&"BR"!==i.childNodes[o].nodeName&&i.childNodes[o].nodeName&&t.detach(i.childNodes[o]);n=(new sn).getRange(this.parent.currentDocument);for(var r=(new sn).save(n,this.parent.currentDocument),s=this.parent.editableElement.cloneNode(!0),a=document.createDocumentFragment();s.firstChild;)a.appendChild(s.firstChild);var l={text:a,range:r};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===n.collapsed&&this.undoRedoStack[this.undoRedoStack.length-1].range.startOffset===r.range.startOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.endOffset===r.range.endOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.range.startContainer===r.range.startContainer&&this.getTextContentFromFragment(this.undoRedoStack[this.undoRedoStack.length-1].text).trim()===this.getTextContentFromFragment(l.text).trim()&&this.isElementStructureEqual(this.undoRedoStack[this.undoRedoStack.length-1].text,l.text)||(this.undoRedoStack.push(l),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="",this.parent.editableElement.appendChild(n.cloneNode(!0)),this.parent.editableElement.focus(),P()&&U(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,n=this.undoRedoStack[this.steps+1].text;this.parent.editableElement.innerHTML="",this.parent.editableElement.appendChild(n.cloneNode(!0)),this.parent.editableElement.focus(),P()&&U(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}(),Dn=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.upperRomanNumber=["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII","XIII","XIV","XV","XVI","XVII","XVIII","XIX","XX"],this.lowerRomanNumber=["i","ii","iii","iv","v","vi","vii","viii","ix","x","xi","xii","xiii","xiv","xv","xvi","xvii","xviii","xix","xx"],this.lowerGreekNumber=["α","β","γ","δ","ε","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ρ","σ","τ","υ","φ","χ","ψ","ω"],this.removableElements=["o:p","style"],this.listContents=[],this.cropImageDimensions=[],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=t.isNullOrUndefined(e.allowedStylePropertiesArray)?[]: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;if(/class='?Mso|style='[^ ]*\bmso-/i.test(o)||a.test(o)||l.test(o)||d.test(o)){var c=this.findSource(s);o=o.replace(/<img[^>]+>/i,""),this.addListClass(s),i=this.cleanUp(s,i),t.isNullOrUndefined(i[0])||"UL"===i[0].parentElement.tagName||"OL"===i[0].parentElement.tagName||this.listConverter(i),this.imageConversion(s,r),this.cleanList(s,"UL"),this.cleanList(s,"OL"),this.styleCorrection(s,n),this.removingComments(s),this.removeUnwantedElements(s),this.removeEmptyElements(s),this.removeEmptyAnchorTag(s),this.breakLineAddition(s),this.processMargin(s),this.removeClassName(s),d.test(o)&&this.addTableBorderClass(s),e.callBack(s.innerHTML,this.cropImageDimensions,c)}else e.callBack(s.innerHTML)},e.prototype.cleanList=function(e,t){for(var n=e.querySelectorAll(t+" div"),i=n.length-1;i>=0;i--){for(var o=n[i].parentNode;n[i].firstChild;)o.insertBefore(n[i].firstChild,n[i]);var r=this.findClosestListElem(n[i]);r&&this.insertAfter(n[i],r)}},e.prototype.insertAfter=function(e,t){t.parentNode.insertBefore(e,t.nextSibling)},e.prototype.findClosestListElem=function(e){for(var n;!t.isNullOrUndefined(e);)e=t.isNullOrUndefined(e.closest("ul"))||"UL"===e.tagName?"OL"!==e.tagName?e.closest("ol"):null:e.closest("ul"),n=t.isNullOrUndefined(e)?n:e;return n},e.prototype.addListClass=function(e){for(var n=e.querySelectorAll("*"),i=0;i<n.length;i++)!t.isNullOrUndefined(n[i].getAttribute("style"))&&n[i].getAttribute("style").replace(/ /g,"").replace("\n","").indexOf("mso-list:l")>=0&&-1===n[i].className.toLowerCase().indexOf("msolistparagraph")&&"H"!==n[i].tagName.charAt(0)&&"LI"!==n[i].tagName&&"OL"!==n[i].tagName&&"UL"!==n[i].tagName&&n[i].classList.add("msolistparagraph")},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,n){this.checkVShape(e);for(var i=e.querySelectorAll("img"),o=0;o<i.length;o++)!t.isNullOrUndefined(i[o].getAttribute("v:shapes"))&&i[o].getAttribute("v:shapes").indexOf("Picture")<0&&i[o].getAttribute("v:shapes").indexOf("圖片")<0&&i[o].getAttribute("v:shapes").indexOf("Grafik")<0&&i[o].getAttribute("v:shapes").toLowerCase().indexOf("image")<0&&i[o].getAttribute("v:shapes").indexOf("Graphic")<0&&i[o].getAttribute("v:shapes").indexOf("_x0000_s")<0&&i[o].getAttribute("v:shapes").indexOf("_x0000_i")<0&&i[o].classList.add("e-rte-image-unsupported"),i[o].removeAttribute("v:shapes");i=e.querySelectorAll("img");var r=[],s=[],a=[],l=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if(i.length>0){for(o=0;o<i.length;o++)r.push(i[o].getAttribute("src")),a.push(i[o].getAttribute("src").split("/")[i[o].getAttribute("src").split("/").length-1].split(".")[0]);for(var d=this.hexConversion(n),o=0;o<d.length;o++)s.push({base64Data:t.isNullOrUndefined(d[o].hex)?null:this.convertToBase64(d[o]),isCroppedImage:d[o].isCroppedImage}),d[o].isCroppedImage&&this.cropImageDimensions.push({goalWidth:d[o].goalWidth,goalHeight:d[o].goalHeight,cropLength:d[o].cropLength,cropTop:d[o].cropTop,cropR:d[o].cropR,cropB:d[o].cropB});i=e.querySelectorAll("img:not(.e-rte-image-unsupported");for(o=0;o<i.length;o++)r[o].match(l)?i[o].setAttribute("src",r[o]):(t.isNullOrUndefined(s[o])||t.isNullOrUndefined(s[o].base64Data)?(i[o].removeAttribute("src"),i[o].classList.add("e-rte-image-unsupported")):i[o].setAttribute("src",s[o].base64Data),!t.isNullOrUndefined(s[o])&&s[o].isCroppedImage&&i[o].classList.add("e-img-cropped")),i[o].setAttribute("id","msWordImg-"+a[o]);i=e.querySelectorAll(".e-rte-image-unsupported");for(o=0;o<i.length;o++)i[o].removeAttribute("src")}},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(-1===r[a].indexOf("fIsBullet")||-1!==r[a].indexOf("wzName")){var l=!1,d=0,c=0,p=0,h=0,u=0,m=0;if(i.test(r[a])){if(-1!==r[a].indexOf("\\pngblip"))n="image/png";else if(-1!==r[a].indexOf("\\jpegblip"))n="image/jpeg";else{if(-1===r[a].indexOf("\\emfblip"))continue;n=null}(l=!!(this.extractCropValue("cropl",r[a])>0&&this.extractCropValue("cropt",r[a])>0||this.extractCropValue("cropr",r[a])>0||this.extractCropValue("cropb",r[a])))&&(d=this.extractCropValue("wgoal",r[a]),c=this.extractCropValue("hgoal",r[a]),p=this.extractCropValue("cropl",r[a]),h=this.extractCropValue("cropt",r[a]),u=this.extractCropValue("cropr",r[a]),m=this.extractCropValue("cropb",r[a])),s.push({hex:n?r[a].replace(i,"").replace(/[^\da-fA-F]/g,""):null,type:n,isCroppedImage:l,goalWidth:d,goalHeight:c,cropLength:p,cropTop:h,cropR:u,cropB:m})}}return s},e.prototype.extractCropValue=function(e,t){var n=new RegExp("\\\\pic"+e+"(\\-?\\d+)\\\\").exec(t.replace(/\r\n\\/g,"\\").replace(/\n/g,"\\"))[1];return parseInt(n,10)},e.prototype.removeClassName=function(e){for(var t=e.querySelectorAll("*[class]:not(.e-img-cropped):not(.e-rte-image-unsupported)"),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&&" "===n[i].innerHTML&&" "===n[i].innerHTML&&!n[i].closest("li")&&!n[i].closest("td")&&("SPAN"!==n[i].nodeName||"SPAN"===n[i].nodeName&&t.isNullOrUndefined(n[i].previousElementSibling)&&t.isNullOrUndefined(n[i].nextElementSibling))){var o=this.findDetachElem(n[i]),r=t.createElement("br");o.textContent.length>0&&o.textContent.match(/\u00a0/g)&&o.textContent.match(/\u00a0/g).length>0||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){var n=e.querySelector("style");t.isNullOrUndefined(n)||t.detach(n);for(var i=e.innerHTML,o=0;o<this.removableElements.length;o++){var r=new RegExp("<"+this.removableElements[o]+">","g"),s=new RegExp("</"+this.removableElements[o]+">","g");i=(i=i.replace(r,"")).replace(s,"")}e.innerHTML=i,e.querySelectorAll(":empty")},e.prototype.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:e.parentElement.textContent.length>0&&e.parentElement.textContent.match(/\u00a0/g)&&e.parentElement.textContent.match(/\u00a0/g).length>0||""!==e.parentElement.textContent.trim()||"MSWord-Content"===e.parentElement.getAttribute("id")||this.hasParentWithClass(e,"MsoListParagraph")||!t.isNullOrUndefined(e.parentElement.querySelector("img"))?e:this.findDetachEmptyElem(e.parentElement)},e.prototype.hasParentWithClass=function(e,n){for(var i=e.parentElement;!t.isNullOrUndefined(i);){if(i.classList.contains(n))return!0;i=i.parentElement}return!1},e.prototype.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++){t.isNullOrUndefined(n[i].closest("td"))||t.isNullOrUndefined(n[i].closest("td").querySelector(".MsoNormal"))||(n[i].innerHTML="-");var o=!0;if("DIV"===n[i].tagName&&(o="none"===n[i].style.borderBottom||""===n[i].style.borderBottom),"IMG"!==n[i].tagName&&"BR"!==n[i].tagName&&"IFRAME"!==n[i].tagName&&"TD"!==n[i].tagName&&"HR"!==n[i].tagName&&o){var r=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(r)||t.detach(r)}}},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(m=0;m<l.length;m++)if(!l[m].closest("li")||"p"!==s[c]){g=l[m].getAttribute("style");if(t.isNullOrUndefined(g)||""===g.trim())a[c]=a[c].replace(/text-indent:-(.*?)(?=;|$)/gm,""),l[m].setAttribute("style",a[c]);else{f=a[c].split(";");if(!d)for(b=0;b<f.length;b++)g.indexOf(f[b].split(":")[0])>=0&&(f.splice(b,1),b--);var p=g+f.join(";")+";";l[m].setAttribute("style",p)}}d=!1}for(var h=["MsoListParagraphCxSpFirst","MsoListParagraphCxSpMiddle","MsoListParagraphCxSpLast"],c=0;c<h.length;c++)if(s.indexOf("li."+h[c])>-1)for(var u=e.querySelectorAll("ol."+h[c]+", ul."+h[c]),m=0;m<u.length;m++){var g=u[m].getAttribute("style");if(!t.isNullOrUndefined(g)&&""!==g.trim()&&""!==u[m].style.marginLeft)for(var f=a[s.indexOf("li."+h[c])].split(";"),b=0;b<f.length;b++)if("margin-left".indexOf(f[b].split(":")[0])>=0&&!t.isNullOrUndefined(f[b].split(":")[1])&&f[b].split(":")[1].indexOf("in")>=0&&u[m].style.marginLeft.indexOf("in")>=0){var v=parseFloat(f[b].split(":")[1].split("in")[0]),C=parseFloat(u[m].style.marginLeft.split("in")[0]);u[m].style.marginLeft=C-v+"in"}}}},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,n){for(var i,o=[],r=e.querySelectorAll("*"),s=0;s<r.length;s++)-1===this.ignorableNodes.indexOf(r[s].nodeName)||3===r[s].nodeType&&""===r[s].textContent.trim()?o.push(r[s]):(r[s].className&&-1!==r[s].className.toLowerCase().indexOf("msolistparagraph")&&!t.isNullOrUndefined(r[s].getAttribute("style"))&&r[s].getAttribute("style").indexOf("mso-list:")>=0&&(r[s].className.indexOf("MsoListParagraphCxSpFirst")>=0&&n.length>0&&null!==n[n.length-1]&&n.push(null),n.push(r[s])),!i||-1===this.blockNode.indexOf(r[s].nodeName.toLowerCase())||r[s].className&&-1!==r[s].className.toLowerCase().indexOf("msolistparagraph")&&!t.isNullOrUndefined(r[s].getAttribute("style"))&&r[s].getAttribute("style").indexOf("mso-list:")>=0||n.push(null),-1!==this.blockNode.indexOf(r[s].nodeName.toLowerCase())&&(i=!!(r[s].className&&-1!==r[s].className.toLowerCase().indexOf("msolistparagraph")&&!t.isNullOrUndefined(r[s].getAttribute("style"))&&r[s].getAttribute("style").indexOf("mso-list:")>=0)));return n.length&&null!==n[n.length-1]&&n.push(null),n},e.prototype.listConverter=function(e){for(var n,i,o,r=[],s=[],a="",l="",d=0;d<e.length;d++)if(null!==e[d]){if(e[d].getAttribute("style")&&-1!==e[d].getAttribute("style").indexOf("mso-outline-level")&&e[d].setAttribute("style",e[d].getAttribute("style").replace("mso-outline-level","mso-outline")),a=e[d].getAttribute("style"),n=a&&-1!==a.indexOf("level")?parseInt(a.charAt(a.indexOf("level")+5),null):1,a&&-1!==a.indexOf("mso-list:")){var c=void 0;a.match(/mso-list:[^;]+;?/)?(c=a.replace("\n","").split(" ").join("").match(/mso-list:[^;]+;?/)[0].split(":l"),i=t.isNullOrUndefined(c)?null:parseInt(c[1].split("level")[0],10)):i=null}this.listContents=[],this.getListContent(e[d]);var p=void 0,h=void 0,u=void 0,m=void 0;if(!t.isNullOrUndefined(this.listContents[0])){if(p=this.listContents[0].trim().length>1?"ol":"ul",h=this.getlistStyleType(this.listContents[0],p),"ol"===p&&(0===d||null===e[d-1])){var g=this.listContents[0].split(".")[0];-1===["A","a","I","i","α","1","1-"].indexOf(g)&&("decimal"===h?isNaN(parseInt(g,10))||(u=parseInt(g,10)):"upper-alpha"===h?u=g.split(".")[0].charCodeAt(0)-64:"lower-alpha"===h?u=g.split(".")[0].charCodeAt(0)-96:"upper-roman"===h?u=this.upperRomanNumber.indexOf(this.listContents[0].split(".")[0])+1:"lower-roman"===h?u=this.lowerRomanNumber.indexOf(this.listContents[0].split(".")[0])+1:"lower-greek"===h&&(u=this.lowerGreekNumber.indexOf(this.listContents[0].split(".")[0])+1))}""!==e[d].style.marginLeft&&(m=e[d].style.marginLeft);for(var f=[],b=1;b<this.listContents.length;b++)f.push(this.listContents[b]);var v=void 0;t.isNullOrUndefined(e[d].className)||(v=e[d].className),t.isNullOrUndefined(e[d].getAttribute("style"))||(e[d].setAttribute("style",e[d].getAttribute("style").replace("text-align:start;","")),e[d].style.textIndent="",l=e[d].getAttribute("style")),s.push({listType:p,content:f,nestedLevel:n,listFormatOverride:i,class:v,listStyle:l,listStyleTypeName:h,start:u,styleMarginLeft:m})}}else r.push({content:this.makeConversion(s),node:e[d-1]}),s=[];for(o=e.shift();o;){for(var C=[],y=0;y<r.length;y++)if(r[y].node===o){for(N=0;N<r[y].content.childNodes.length;N++)C.push(r[y].content.childNodes[N]);for(var N=0;N<C.length;N++)o.parentElement.insertBefore(C[N],o);break}o.remove(),(o=e.shift())||(o=e.shift())}},e.prototype.getlistStyleType=function(e,t){var n;if("ol"===t){var i=e.split(".")[0].charCodeAt(0);switch(!0){case this.upperRomanNumber.indexOf(e.split(".")[0])>-1:n="upper-roman";break;case this.lowerRomanNumber.indexOf(e.split(".")[0])>-1:n="lower-roman";break;case this.lowerGreekNumber.indexOf(e.split(".")[0])>-1:n="lower-greek";break;case i>64&&i<91:n="upper-alpha";break;case i>96&&i<123:n="lower-alpha";break;default:n="decimal"}}else switch(e.split(".")[0]){case"o":n="circle";break;case"§":n="square";break;default:n="disc"}return n},e.prototype.makeConversion=function(e){for(var n,i,o,r=t.createElement("div"),s=1,a=0,l=e[0].listFormatOverride,d=0;d<e.length;d++){for(var c=["MsoListParagraphCxSpFirst","MsoListParagraphCxSpMiddle","MsoListParagraphCxSpLast"],p=!1,h=0;h<c.length;h++)if(c[h].indexOf(e[d].class)>=0){p=!0;break}t.isNullOrUndefined(i)||0===d||e[d-1].listType===e[d].listType||p||(i=null);var u=t.createElement("p",{className:"MsoNormal"});if(u.innerHTML=e[d].content.join(" "),1!==e[d].nestedLevel||0!==a&&l===e[d].listFormatOverride||!e[d].content){if(e[d].nestedLevel===s&&l===e[d].listFormatOverride)t.isNullOrUndefined(i)||t.isNullOrUndefined(i.parentElement)||i.parentElement.tagName.toLowerCase()!==e[d].listType?t.isNullOrUndefined(i)?((n=t.createElement(e[d].listType)).style.listStyleType=e[d].listStyleTypeName,(i=t.createElement("li")).appendChild(u),n.appendChild(i),n.setAttribute("level",e[d].nestedLevel.toString()),r.appendChild(n)):((n=t.createElement(e[d].listType)).style.listStyleType=e[d].listStyleTypeName,i.parentElement.parentElement.appendChild(n),(i=t.createElement("li")).appendChild(u),n.appendChild(i),n.setAttribute("level",e[d].nestedLevel.toString())):(i.parentElement.appendChild(i=t.createElement("li")),i.appendChild(u));else if(e[d].nestedLevel>s)if(t.isNullOrUndefined(i))if(e[d].nestedLevel>s&&p){var m=t.createElement(e[d].listType);i=t.createElement("li"),m.appendChild(i),m.style.listStyleType="none";for(g=0;g<e[d].nestedLevel-1;g++)i.appendChild(n=t.createElement(e[d].listType)),i=t.createElement("li"),n.appendChild(i),n.style.listStyleType="none";i.appendChild(u),r.appendChild(m),n.setAttribute("level",e[d].nestedLevel.toString()),n.style.listStyleType=e[d].listStyleTypeName}else r.appendChild(n=t.createElement(e[d].listType)),(i=t.createElement("li")).appendChild(u),n.appendChild(i),n.setAttribute("level",e[d].nestedLevel.toString()),"msolistparagraph"!==e[d].class?n.style.marginLeft=e[d].styleMarginLeft:t.addClass([n],"marginLeftIgnore"),n.style.listStyleType=e[d].listStyleTypeName;else{for(var g=0;g<e[d].nestedLevel-s;g++)i.appendChild(n=t.createElement(e[d].listType)),i=t.createElement("li"),g!==e[d].nestedLevel-s-1&&e[d].nestedLevel-s>1&&(i.style.listStyleType="none"),n.appendChild(i);i.appendChild(u),n.setAttribute("level",e[d].nestedLevel.toString()),n.style.listStyleType=e[d].listStyleTypeName}else if(1===e[d].nestedLevel)r.lastChild.tagName.toLowerCase()===e[d].listType?n=r.lastChild:(r.appendChild(n=t.createElement(e[d].listType)),n.style.listStyleType=e[d].listStyleTypeName),(i=t.createElement("li")).appendChild(u),n.appendChild(i),n.setAttribute("level",e[d].nestedLevel.toString());else for(o=i;o.parentElement;)if((o=o.parentElement).attributes.getNamedItem("level")){if(parseInt(o.attributes.getNamedItem("level").textContent,null)===e[d].nestedLevel&&l===e[d].listFormatOverride){(i=t.createElement("li")).appendChild(u),o.appendChild(i);break}if(parseInt(o.attributes.getNamedItem("level").textContent,null)===e[d].nestedLevel&&l!==e[d].listFormatOverride){if(n=t.createElement(e[d].listType),i=t.createElement("li"),n.appendChild(i),e[d].nestedLevel>1)for(var f=0;f<e[d].nestedLevel-1;f++)i.appendChild(n=t.createElement(e[d].listType)),i=t.createElement("li"),n.appendChild(i),n.style.listStyleType="none";i.appendChild(u),o.appendChild(n),n.setAttribute("level",e[d].nestedLevel.toString()),n.style.listStyleType=e[d].listStyleTypeName;break}if(e[d].nestedLevel>parseInt(o.attributes.getNamedItem("level").textContent,10)){o.appendChild(n=t.createElement(e[d].listType)),(i=t.createElement("li")).appendChild(u),n.appendChild(i),n.setAttribute("level",e[d].nestedLevel.toString()),n.style.listStyleType=e[d].listStyleTypeName;break}}}else r.appendChild(n=t.createElement(e[d].listType,{className:e[d].class})),(i=t.createElement("li")).appendChild(u),n.appendChild(i),n.setAttribute("level",e[d].nestedLevel.toString()),"msolistparagraph"!==e[d].class?n.style.marginLeft=e[d].styleMarginLeft:t.addClass([n],"marginLeftIgnore"),n.style.listStyleType=e[d].listStyleTypeName;i.setAttribute("class",e[d].class),i.setAttribute("style",t.isNullOrUndefined(e[d].listStyle)?"":e[d].listStyle),s=e[d].nestedLevel,l=e[d].listFormatOverride,a++,t.isNullOrUndefined(e[d].start&&1!==e[d].start&&"ol"===e[d].listType)||n.setAttribute("start",e[d].start.toString())}return r},e.prototype.getListContent=function(e){var n="",i=e.firstElementChild;if(""!==i.textContent.trim()||t.isNullOrUndefined(i.firstElementChild)||"IMG"!==i.firstElementChild.nodeName){if(i.childNodes.length>0){for(var o=i.querySelectorAll('[style*="mso-list"]'),r=0;r<o.length;r++)o[r].setAttribute("style",o[r].getAttribute("style").replace(/\n/g,""));var s=i.querySelector('span[style="mso-list:Ignore"]');t.isNullOrUndefined(s)||(this.listContents.push(s.textContent.trim()),t.detach(s),this.removingComments(e),this.removeUnwantedElements(e))}}else n=e.innerHTML.trim(),this.listContents.push(""),this.listContents.push(n);this.listContents.push(e.innerHTML)},e.prototype.processMargin=function(e){var n=e.querySelectorAll("li");if(n.length>0)for(r=0;r<n.length;r++)t.isNullOrUndefined(n[r].style.marginLeft)||n[r].parentElement.classList.contains("marginLeftIgnore")||(n[r].style.marginLeft="");var i=e.querySelectorAll("table");if(i.length>0)for(r=0;r<i.length;r++)!t.isNullOrUndefined(i[r].style.marginLeft)&&i[r].style.marginLeft.indexOf("-")>=0&&(i[r].style.marginLeft="");var o=e.querySelectorAll(".marginLeftIgnore li");if(o.length>0)for(var r=0;r<o.length;r++)if(!t.isNullOrUndefined(o[r].style.marginLeft)&&""!==o[r].style.marginLeft){var s=o[r].style.marginLeft,a=parseFloat(s.split("in")[0])-.5;o[r].style.marginLeft=a.toString()+"in"}},e.prototype.removeEmptyAnchorTag=function(e){for(var t=e.querySelectorAll("a:not([href])"),n=t.length-1;n>=0;n--){for(var i=t[n].parentNode;t[n].firstChild;)i.insertBefore(t[n].firstChild,t[n]);i.removeChild(t[n])}},e.prototype.findSource=function(e){for(var t=e.querySelectorAll("meta"),n=0;n<t.length;n++){var i=t[n],o=i.getAttribute("content"),r=i.getAttribute("name");if(r&&r.toLowerCase().indexOf("generator")>=0&&o&&o.toLowerCase().indexOf("microsoft")>=0)for(var s=0;s<rn.length;s++)if(o.toLowerCase().indexOf(rn[s])>=0)return rn[s]}return"html"},e}(),Mn=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);un.Insert(this.parent.currentDocument,t,this.parent.editableElement),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}(),Rn=F(),Bn=function(){function e(){}return e.get=function(e,t,n,i,o,r){for(var s=JSON.parse(JSON.stringify(Rn)),a=JSON.parse(JSON.stringify(Rn)),l=new sn,d=l.getRange(e),c=r?[r]:d.collapsed?l.getNodeCollection(d):l.getSelectionNodeCollectionBr(d),p=c.length,h=!1,u=0;u<c.length;u++){for(;3===c[u].nodeType&&3===d.startContainer.nodeType&&c[u].parentNode&&c[u].parentNode.lastElementChild&&"BR"!==c[u].parentNode.lastElementChild.nodeName&&0===this.getImmediateBlockNode(c[u].parentNode).textContent.replace(/\u200B/g,"").length&&0===d.startContainer.textContent.replace(/\u200B/g,"").length&&0===l.get(e).toString().replace(/\u200B/g,"").length;)c[u]=c[u].parentNode.lastElementChild.firstChild,h=!0;h&&c[u]&&(l.setCursorPoint(e,c[u],c[u].textContent.length),h=!1),("BR"!==c[u].nodeName&&3!==c[u].nodeType||p>1&&3===c[u].nodeType&&""===c[u].textContent.trim())&&(c.splice(u,1),u--)}for(u=0;u<c.length;u++)s=this.getFormatParent(e,s,c[u],t,n,i,o),(0===u&&s.bold||!s.bold)&&(a.bold=s.bold),(0===u&&s.insertcode||!s.insertcode)&&(a.insertcode=s.insertcode),(0===u&&s.italic||!s.italic)&&(a.italic=s.italic),(0===u&&s.underline||!s.underline)&&(a.underline=s.underline),(0===u&&s.strikethrough||!s.strikethrough)&&(a.strikethrough=s.strikethrough),(0===u&&s.superscript||!s.superscript)&&(a.superscript=s.superscript),(0===u&&s.subscript||!s.subscript)&&(a.subscript=s.subscript),(0===u&&s.fontcolor||!s.fontcolor)&&(a.fontcolor=s.fontcolor),0===u&&s.fontname?a.fontname=s.fontname:a.fontname=s.fontname===a.fontname?s.fontname:"empty",0===u&&s.fontsize?a.fontsize=s.fontsize:a.fontsize=s.fontsize===a.fontsize?s.fontsize:"empty",(0===u&&s.backgroundcolor||!s.backgroundcolor)&&(a.backgroundcolor=s.backgroundcolor),(0===u&&s.orderedlist||!s.orderedlist)&&(a.orderedlist=s.orderedlist),(0===u&&s.unorderedlist||!s.unorderedlist)&&(a.unorderedlist=s.unorderedlist),(0===u&&s.alignments||!s.alignments)&&(a.alignments=s.alignments),0===u&&s.formats?a.formats=s.formats:a.formats=s.formats===a.formats?s.formats:"empty",(0===u&&s.createlink||!s.createlink)&&(a.createlink=s.createlink),(0===u&&s.numberFormatList||!s.numberFormatList)&&(a.numberFormatList=s.numberFormatList),(0===u&&s.bulletFormatList||!s.bulletFormatList)&&(a.bulletFormatList=s.bulletFormatList),s=JSON.parse(JSON.stringify(Rn));return a},e.getImmediateBlockNode=function(e){do{e=e.parentNode}while(e&&en.indexOf(e.nodeName.toLocaleLowerCase())<0);return e},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=En.isBold(n)),t.italic||(t.italic=En.isItalic(n)),t.underline||(t.underline=En.isUnderline(n)),t.strikethrough||(t.strikethrough=En.isStrikethrough(n)),t.superscript||(t.superscript=En.isSuperscript(n)),t.subscript||(t.subscript=En.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(e,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.numberFormatList||(t.numberFormatList=this.isNumberFormatList(n)),t.bulletFormatList||(t.bulletFormatList=this.isBulletFormatList(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,n){var i=t.style&&t.style.fontSize;return null!==i&&void 0!==i&&""!==i||3===t.nodeType||!t.parentElement.classList.contains("e-content")||(i=this.getComputedStyle(e,t,"font-size")),null!==i&&""!==i&&void 0!==i&&(null===n||void 0===n||n.indexOf(i)>-1)?i:null},e.isFontName=function(e,n,i){var o=n.style&&n.style.fontFamily;null!==o&&void 0!==o&&""!==o||3===n.nodeType||(o=this.getComputedStyle(e,n,"font-family"));var r=null;return null!==o&&""!==o&&void 0!==o&&(null===i||void 0===i||i.filter(function(e,n){var i=new RegExp(o,"i");(e.replace(/"/g,"").replace(/ /g,"").toLowerCase()===o.replace(/"/g,"").replace(/ /g,"").toLowerCase()||e.split(",")[0]&&!t.isNullOrUndefined(e.split(",")[0].trim().match(i))&&e.split(",")[0].trim()===e.split(",")[0].trim().match(i)[0])&&(r=n)})&&null!==r)?null!==r?i[r]:o.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)&&en.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.isNumberFormatList=function(e){var t=e.style&&e.style.listStyleType;return"lower-alpha"===t?"Lower Alpha":"number"===t?"Number":"upper-alpha"===t?"Upper Alpha":"lower-roman"===t?"Lower Roman":"upper-roman"===t?"Upper Roman":"lower-greek"===t?"Lower Greek":"none"===t?"None":!!this.isOrderedList(e)||null},e.isBulletFormatList=function(e){var t=e.style&&e.style.listStyleType;return"circle"===t?"Circle":"square"===t?"Square":"none"===t?"None":"disc"===t?"Disc":!!this.isUnorderedList(e)||null},e}(),An=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on("emoji_picker_actions",this.emojiInsert,this)},e.prototype.emojiInsert=function(e){for(var t=document.createTextNode(e.value),n=this.parent.currentDocument.getSelection(),i=n.getRangeAt(0).startOffset,o=i-1;o>=i-15;o--){var r=n.focusNode.textContent.substring(o-1,o);if(/:$/.test(r)){this.beforeApplyFormat(!0);break}}var s=/:$/.test(n.focusNode.textContent.charAt(i-1)),a=n.focusNode.textContent.charAt(i-2),l=/\s/.test(a);s&&(l||1===n.focusOffset)&&this.beforeApplyFormat(!0),un.Insert(this.parent.currentDocument,t,this.parent.editableElement),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.prototype.beforeApplyFormat=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument),n=this.parent.nodeSelection.getNodeCollection(t)[0],i=n;if(!(":"===n.parentElement.innerHTML.replace(/ |<br>/g,"").trim()||0===n.textContent.trim().indexOf("/"))&&e)for(;i!==this.parent.editableElement;)i=i.parentElement;for(var o=t.startOffset;-1===this.parent.nodeSelection.getRange(document).toString().indexOf(":");)this.parent.nodeSelection.setSelectionText(document,n,n,o,t.endOffset),o--;var r=this.parent.nodeSelection.getRange(this.parent.currentDocument),s=this.parent.nodeCutter.GetSpliceNode(r,n);s.parentNode.removeChild(s)},e}(),In=function(){function e(e,t){this.INVALID_TAGS=["A","AUDIO","IMG","VIDEO","IFRAME"],this.parent=e,this.settings=t,this.addEventListener(),this.setDeniedFormats()}return e.prototype.addEventListener=function(){this.parent.observer.on("format_painter_actions",this.actionHandler,this),this.parent.observer.on("model_changed_plugin",this.onPropertyChanged,this)},e.prototype.onPropertyChanged=function(e){e&&"formatPainter"===e.module&&(t.isNullOrUndefined(e.newProp.formatPainterSettings.allowedFormats)||(this.settings.allowedFormats=e.newProp.formatPainterSettings.allowedFormats),t.isNullOrUndefined(e.newProp.formatPainterSettings.deniedFormats)||(this.settings.deniedFormats=e.newProp.formatPainterSettings.deniedFormats,this.setDeniedFormats()))},e.prototype.removeEventListener=function(){this.parent.observer.off("format_painter_actions",this.actionHandler),this.parent.observer.off("model_changed_plugin",this.onPropertyChanged)},e.prototype.destroy=function(){this.removeEventListener(),this.INVALID_TAGS=null,this.copyCollection=null,this.deniedFormatsCollection=null,this.newElem=null,this.newElemLastChild=null,this.settings=null,this.parent=null},e.prototype.actionHandler=function(e){if(this.settings.allowedContext=["Text","List","Table"],!t.isNullOrUndefined(e)&&!t.isNullOrUndefined(e.item)&&!t.isNullOrUndefined(e.item.formatPainterAction)){switch(e.item.formatPainterAction){case"format-copy":this.copyAction();break;case"format-paste":this.pasteAction();break;case"escape":this.escapeAction()}this.callBack(e)}},e.prototype.callBack=function(e){e.callBack&&e.callBack({requestType:"FormatPainter",action:e.item.formatPainterAction,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.generateElement=function(){var e=this.copyCollection.slice();e.reverse();for(var n,i=e.length,o=t.createElement("div",{className:"e-format-paste-wrapper"}),r=0;r<i;r++){var s=e[r],a=s.attrs,l=s.className,d=s.styles,c=s.tagName,p=t.createElement(c);""!==l&&(p.className=l);for(var h=0;h<a.length;h++){var u=a[h].name,m=a[h].value;p.setAttribute(u,m)}for(var g=0;g<d.length;g++){var u=d[g].property,m=d[g].value,f=d[g].priority;p.style.setProperty(u,m,f)}0===o.childElementCount?(o.append(p),n=p):(n.append(p),n=p)}for(var b=this.removeDeniedFormats(o),v=b;v;)null===v.firstChild?(n=v,v=void 0):v=v.firstChild;this.newElem=b,this.newElemLastChild=n},e.prototype.pasteAction=function(){if(t.isNullOrUndefined(this.copyCollection)||0===this.copyCollection.length)return void this.paintPlainTextFormat();this.insertFormatNode(this.newElem,this.newElemLastChild)},e.prototype.removeDeniedFormats=function(e){if(!t.isNullOrUndefined(this.deniedFormatsCollection)&&this.deniedFormatsCollection.length>0)for(var n=this.deniedFormatsCollection,i=n.length,o=0;o<i;o++){var r=n[o].tag;if(n[o].tag)for(var s=e.querySelectorAll(r),a=0;a<s.length;a++){if(n[o].classes.length>0){for(var l=n[o].classes,d=l.length,c=0;c<d;c++)s[a].classList.contains(l[c])&&t.removeClass([s[a]],l[c].trim());0===s[a].classList.length&&s[a].removeAttribute("class")}if(n[o].styles.length>0){for(var p=n[o].styles,h=p.length,c=0;c<h;c++)s[a].style.removeProperty(p[c].trim());0===s[a].style.length&&s[a].removeAttribute("style")}if(n[o].attributes.length>0)for(var u=n[o].attributes,m=u.length,c=0;c<m;c++)s[a].removeAttribute(u[c].trim())}}return e.firstElementChild},e.prototype.copyAction=function(){var e=[],n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=this.parent.nodeSelection,o=n.collapsed?i.getSelectionNodeCollection(n):i.getSelectionNodeCollectionBr(n);if(0!==o.length||0!==i.getSelectionNodeCollectionBr(n).length){for(var r=(o=0===o.length?i.getSelectionNodeCollectionBr(n):o)[0].parentElement,s=this.findCurrentContext(r),a=this.settings.allowedFormats.indexOf(";")>-1?this.settings.allowedFormats.split(";"):[this.settings.allowedFormats],l=0;l<a.length;l++)a[l]=a[l].trim();var d=this.getRangeParentElem(s,r),c=d[0],p=d[1];if(null===s&&(s=p),!t.isNullOrUndefined(s)&&this.settings.allowedContext.indexOf(s)>-1){"#text"===n.startContainer.nodeName&&(r=n.startContainer.parentElement);var h=r;do{if(a.indexOf(r.nodeName.toLowerCase())>-1){for(var u=r.attributes,m=[],l=0;l<u.length;l++)"class"!==u[l].name&&"style"!==u[l].name&&m.push(u[l]);for(var g=r.className,f=r.style,b=[],l=0;l<f.length;l++){var v=f[l],C=f.getPropertyValue(v),y=f.getPropertyPriority(v);b.push({property:v,value:C,priority:y})}e.push({attrs:m,className:g,styles:b,tagName:r.nodeName})}if(c===r?r=void 0:t.isNullOrUndefined(r.parentElement)||(r=r.parentElement),h===r)break}while(!t.isNullOrUndefined(r)||r===this.parent.editableElement);this.copyCollection=e}this.generateElement()}},e.prototype.getRangeParentElem=function(e,n){var i,o=n;switch(3===o.nodeType&&(o=o.parentElement),e){case"Table":i=t.closest(o,"td"),t.isNullOrUndefined(i)&&(i=t.closest(o,"th"));break;case"List":i=t.closest(o,"li");break;case"Text":i=t.closest(o,"p")}if(t.isNullOrUndefined(i)){var r=this.getNearestBlockParentElement(n);t.isNullOrUndefined(r)||"UL"===r||"OL"===r||"LI"===r||(i=t.closest(o,r),e="Text")}return"List"===e&&(i=i.parentElement),[i,e]},e.prototype.getNearestBlockParentElement=function(e){var n=e;for(3===n.nodeType&&(n=n.parentNode);n&&n!==this.parent.editableElement;){if(!t.isNullOrUndefined(n)&&this.isBlockElement(n))return n.nodeName;n=n.parentNode}return null},e.prototype.isBlockElement=function(e){return["P","DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","ADDRESS","ARTICLE","ASIDE","BLOCKQUOTE","FIGCAPTION","FIGURE","FOOTER","HEADER","HR","MAIN","NAV","SECTION","SUMMARY","PRE"].indexOf(e.nodeName)>-1},e.prototype.escapeAction=function(){this.copyCollection=[]},e.prototype.paintPlainTextFormat=function(){var e,t=this.parent.nodeSelection.getRange(this.parent.currentDocument),n=this.parent.nodeSelection,i=t.collapsed?n.getSelectionNodeCollection(t):n.getSelectionNodeCollectionBr(t);if(i.length>1)for(var o=0;o<i.length;o++)e=this.validateELementTag(i[o]);else e=this.validateELementTag(t.startContainer)&&this.validateELementTag(t.endContainer);e||this.parent.execCommand("Clear","ClearFormat",null,null)},e.prototype.validateELementTag=function(e){return 3===e.nodeType&&(e=e.parentElement),this.INVALID_TAGS.indexOf(e.tagName)>-1},e.prototype.findCurrentContext=function(e){var n=t.closest(e,"p"),i=t.closest(e,"li");return n&&!i?"Text":t.closest(e,"li")?t.isNullOrUndefined(n)||t.isNullOrUndefined(i)||n.textContent.trim()===i.textContent.trim()?"List":"Text":t.closest(e,"td")||t.closest(e,"tr")||t.closest(e,"th")?"Table":null},e.prototype.insertFormatNode=function(e,n){var i=e.cloneNode(!0);if(!this.isBlockElement(e)){var o=t.createElement("P");o.appendChild(e),i=o.cloneNode(!0)}for(var r,s=this.parent.editableElement,a=this.parent.currentDocument,l=i.firstChild;l;){if(!this.isBlockElement(l)){r=l.parentNode.removeChild(l);break}l=l.firstChild}var d={element:r,lastChild:n};Tn.applyFormat(a,null,s,"P","formatPainter",null,d);var c=this.parent.nodeSelection.getRange(a),p=c.collapsed,h=this.parent.domNode.blockNodes(),u=!1;1===h.length&&(u=h[0].textContent.trim()===c.toString().trim()),(this.isBlockElement(i)&&p||h.length>1||u)&&this.insertBlockNode(i,c,a,h)},e.prototype.insertBlockNode=function(e,n,i,o){var r=this.parent.nodeSelection.save(n,i);this.parent.domNode.setMarker(r);var s,a,l=!1;"UL"!==e.nodeName&&"OL"!==e.nodeName||(s=(a=e.cloneNode(!0)).firstChild);for(var d=t.isNullOrUndefined(a)?e:e.firstChild,c=0;c<o.length;c++)if(!(this.INVALID_TAGS.indexOf(o[c].nodeName)>-1||o[c].querySelectorAll("img,audio,video,iframe").length>0)){for(var p=d.cloneNode(!1);o[c].firstChild;)0!==o[c].textContent.trim().length?p.appendChild(o[c].firstChild):o[c].removeChild(o[c].firstChild);if("TD"!==o[c].nodeName&&"TH"!==o[c].nodeName){if(t.isNullOrUndefined(a)||(l=this.isSameListType(e,o[c])),"LI"!==p.nodeName||l?l?this.insertSameList(o,c,a,p):o[c].parentNode.replaceChild(p,o[c]):this.insertNewList(n,o,c,a,p),"LI"!==p.nodeName&&("OL"===p.parentElement.nodeName||"UL"===p.parentElement.nodeName)){var h=p.parentElement;if(this.parent.nodeCutter.SplitNode(n,h,!0),t.isNullOrUndefined(h.previousElementSibling))h.parentElement.prepend(p);else if(h.previousElementSibling.after(p),p.childNodes.length>1)for(var u=0;u<p.childNodes.length;u++){var m=p.childNodes[u];"OL"!==m.nodeName&&"UL"!==m.nodeName||p.after(m)}}}else{if(t.isNullOrUndefined(a)){o[c].appendChild(p);continue}if(0!==c||t.isNullOrUndefined(a)){o[c].appendChild(p);continue}o[c].appendChild(a),a.appendChild(p)}}!t.isNullOrUndefined(s)&&t.detach(s),this.cleanEmptyLists(),this.parent.domNode.saveMarker(r,null).restore()},e.prototype.insertNewList=function(e,n,i,o,r){if(0===i){var s=n[i].nodeName;n[i]=n[i].parentNode.replaceChild(o,n[i]);var a="LI"===s?o.parentElement:o;if(this.parent.nodeCutter.SplitNode(e,a,!0),"LI"!==n[i].nodeName||t.isNullOrUndefined(a))if(t.isNullOrUndefined(a))o.append(r);else if(t.isNullOrUndefined(a.previousElementSibling)||a.previousElementSibling.nodeName!==o.nodeName)if(t.isNullOrUndefined(a.nextElementSibling)||a.nextElementSibling.nodeName!==o.nodeName)o.append(r);else{var l=a.nextElementSibling;for(l.prepend(r);l.firstChild;)o.append(l.firstChild)}else for((l=a.previousElementSibling).append(r);l.firstChild;)o.append(l.firstChild);else o.append(r),t.isNullOrUndefined(a.parentNode)||a.parentNode.insertBefore(o,a)}else o.append(r);this.detachEmptyBlockNodes(n[i])},e.prototype.insertSameList=function(e,n,i,o){if(0===n){if(!t.isNullOrUndefined(e[n].parentNode)&&("UL"===e[n].parentNode.nodeName||"OL"===e[n].parentNode.nodeName)){if(1===e.length){for(;o.firstChild;)e[n].append(o.firstChild);for(var r=0;r<e[n].parentNode.childNodes.length;r++){var s=e[n].parentNode.childNodes[r];i.append(s.cloneNode(!0))}}else i.append(o);e[n].parentNode.parentNode.replaceChild(i,e[n].parentNode)}}else i.append(o);this.detachEmptyBlockNodes(e[n])},e.prototype.isSameListType=function(e,n){var i=!1,o=t.closest(n,"ol, ul");return!t.isNullOrUndefined(o)&&o.querySelectorAll("li").length>0&&(i=o.nodeName===e.nodeName),i},e.prototype.cleanEmptyLists=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.setDeniedFormats=function(){var e=[];if(!t.isNullOrUndefined(this.settings)&&!t.isNullOrUndefined(this.settings.deniedFormats)){for(var n=this.settings.deniedFormats.indexOf(";")>-1?this.settings.deniedFormats.split(";"):[this.settings.deniedFormats],i=n.length,o=0;o<i;o++){var r=n[o];if(""!==r){r.trim();var s=this.makeDeniedFormatsCollection(r);t.isNullOrUndefined(s)||e.push(s)}}this.deniedFormatsCollection=e}},e.prototype.detachEmptyBlockNodes=function(e){t.isNullOrUndefined(e)||""!==e.textContent.trim()||t.detach(e)},e.prototype.makeDeniedFormatsCollection=function(e){var t=e.indexOf("("),n=e.indexOf(")"),i=e.indexOf("["),o=e.indexOf("]"),r=e.indexOf("{"),s=e.indexOf("}"),a="",l=[],d=[],c=[];t>-1&&n>-1&&(l=e.substring(t+1,n).split(" ")[0].split(")")[0].split(",")),i>-1&&o>-1&&(d=e.substring(i+1,o).split(",")),r>-1&&s>-1&&(c=e.substring(r+1,s).split(","));var p,h=[t,i,r],u=(h=h.filter(function(e){return e>-1})).length;return 1===u?p=h[0]:2===u?p=Math.min(h[0],h[1]):3===u&&(p=Math.min(h[0],h[1],h[2])),a=e.substring(0,p),a=a.trim(),{tag:a,styles:c,classes:l,attributes:d}},e}(),Pn=function(){function e(e){this.currentDocument=e.document,this.editableElement=e.editableElement,this.nodeSelection=new sn,this.nodeCutter=new pn,this.domNode=new ln(this.editableElement,this.currentDocument),this.observer=new t.Observer(this),this.listObj=new dn(this),this.formatObj=new hn(this),this.alignmentObj=new gn(this),this.indentsObj=new fn(this),this.linkObj=new mn(this),this.imgObj=new vn(this),this.audioObj=new Cn(this),this.videoObj=new yn(this),this.selectionObj=new On(this),this.inserthtmlObj=new wn(this),this.insertTextObj=new Mn(this),this.clearObj=new Ln(this),this.tableObj=new Nn(this),this.undoRedoManager=new xn(this,e.options),this.msWordPaste=new Dn(this),this.formatPainterEditor=new In(this,e.formatPainterSettings),this.emojiPickerObj=new An(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),this.observer.on("onBegin",this.onBegin,this),this.observer.on("mouseDown",this.editorMouseDown,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.onBegin=function(e){this.observer.notify("actionBegin",e)},e.prototype.execCommand=function(e,t,n,i,o,r,s,a){switch(e.toLowerCase()){case"lists":this.observer.notify("list-type",{subCommand:t,event:n,callBack:i,selector:s,item:r,enterAction:a});break;case"formats":this.observer.notify("format-type",{subCommand:t,event:n,callBack:i,selector:s,exeValue:r,enterAction:a});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(Zt,{command:e,value:t,item:r,event:n,callBack:i});break;case"files":this.observer.notify(Xt,{command:e,value:"Image",item:r,event:n,callBack:i,selector:s});break;case"images":this.observer.notify(Xt,{command:e,value:t,item:r,event:n,callBack:i,selector:s});break;case"audios":this.observer.notify(Yt,{command:e,value:t,item:r,event:n,callBack:i,selector:s});break;case"videos":this.observer.notify(Jt,{command:e,value:t,item:r,event:n,callBack:i,selector:s});break;case"table":switch(t.toString().toLocaleLowerCase()){case"createtable":this.observer.notify($t,{item:r,event:n,callBack:i,enterAction:a});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,enterAction:a});break;case"inserthtml":this.observer.notify("inserthtml-type",{subCommand:t,callBack:i,value:o,enterAction:a});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,enterAction:a});break;case"actions":this.observer.notify("action",{subCommand:t,event:n,callBack:i,selector:s});break;case"formatpainter":this.observer.notify("format_painter_actions",{item:r,subCommand:t,event:n,callBack:i});break;case"emojipicker":this.observer.notify("emoji_picker_actions",{item:r,subCommand:t,value:o,event:n,callBack:i})}},e.prototype.editorMouseDown=function(e){3===e.args.detail&&this.tripleClickSelection(e.args)},e.prototype.tripleClickSelection=function(e){var t=this.nodeSelection.getRange(this.currentDocument),n=this.nodeSelection.get(this.currentDocument);if(n.rangeCount>0&&""!==n.toString()){var i=this.getParentBlockNode(t.startContainer),o=this.getParentBlockNode(t.endContainer);if(i&&o&&i===o){var r=this.currentDocument.createRange(),s=this.getFirstTextNode(i),a=this.getLastTextNode(o);s&&a&&(r.setStart(s,0),r.setEnd(a,a.textContent.length),this.nodeSelection.setRange(this.currentDocument,r),e.preventDefault())}}},e.prototype.getParentBlockNode=function(e){var t=this.currentDocument.createTreeWalker(this.editableElement,NodeFilter.SHOW_ELEMENT,{acceptNode:function(e){return window.getComputedStyle(e).display.indexOf("inline")<0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});return t.currentNode=e,t.parentNode()},e.prototype.getLastTextNode=function(e){for(var t=this.currentDocument.createTreeWalker(e,NodeFilter.SHOW_TEXT,null),n=null,i=t.nextNode();i;)n=i,i=t.nextNode();return n},e.prototype.getFirstTextNode=function(e){return this.currentDocument.createTreeWalker(e,NodeFilter.SHOW_TEXT,null).nextNode()},e}(),Un=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){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,n.formatPainterSettings),i}return Un(n,e),n.prototype.initialize=function(){this.keyConfig=At},n.prototype.updateFormatter=function(e,t,n,i){e&&t&&(this.editorManager=new Pn({document:t,editableElement:e,options:n,formatPainterSettings:i}))},n}(kt),jn=function(){function e(e){this.parent=e,this.toolbarStatus=this.prevToolbarStatus=F(),this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("toolbar-refresh",this.onRefreshHandler,this),this.parent.on(Q,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off("toolbar-refresh",this.onRefreshHandler),this.parent.off(Q,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=Bn.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}(),Fn=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=k(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(){var e=this.getEditPanel().innerText;return"\n"===e?"":e},e.prototype.setPanel=function(e){this.contentPanel=e},e.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},e}(),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)}}(),zn=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return qn(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, .e-rte-video {border: 0;cursor: pointer;display:\n block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-audio {border: 0;cursor: pointer;display:\n block;float: none;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-imginline, .e-rte-audio.e-audio-inline, .e-rte-video.e-video-inline {display: inline-block;float: none;max-width: calc(100% - (2 * 5px));padding: 1px;vertical-align: bottom;}\n .e-rte-image.e-imgcenter, .e-rte-video.e-video-center {cursor: pointer;display: block;float: none;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-imgright, .e-rte-video.e-video-right { float: right; margin: 0 auto;margin-left: 5px;text-align: right;}\n .e-rte-image.e-imgleft, .e-rte-video.e-video-left {float: left;margin: 0 auto;margin-right: 5px;text-align: left;}\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-rte-img-caption.e-imgcenter {display: contents; margin-left: auto; margin-right: auto;}\n .e-rte-img-caption.e-imgright {display: contents; margin-left: auto; margin-right: 0;}\n .e-rte-img-caption.e-imgleft {display: contents;margin-left: 0;margin-right: auto;}\n .e-img-caption.e-rte-img-caption.e-imgbreak {display: contents;}\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, .e-video-left {float: left;margin: 0 5px 0 0;text-align: left;}\n .e-imgright, .e-video-right {float: right;margin: 0 0 0 5px;text-align: right;}\n .e-imgcenter, .e-video-center {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 , .e-audio-inline, .e-video-inline {display: inline-block;float: none;margin-left: 5px;margin-right: 5px;\n max-width: calc(100% - (2 * 5px));vertical-align: bottom;}\n .e-imgbreak, .e-audio-break, .e-video-break {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), .e-audio-focus:not(.e-resize), .e-video-focus:not(.e-resize) {border: solid 2px #4a90e2;}\n img.e-img-focus::selection, audio.e-audio-focus::selection, .e-video-focus::selection { background: transparent;color: transparent;}\n span.e-rte-imageboxmark, span.e-rte-videoboxmark { 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, .e-mob-rte.e-mob-span span.e-rte-videoboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-mob-rte span.e-rte-imageboxmark, .e-mob-rte span.e-rte-videoboxmark { 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, .e-mob-rte.e-mob-span span.e-rte-videoboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-rte-content .e-content img.e-resize, .e-rte-content .e-content video.e-resize { z-index: 1000; }\n .e-img-caption .e-img-inner { outline: 0; }\n .e-img-caption a:focus-visible { outline: none; }\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; padding: 2px 5px; 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 .e-rte-placeholder::before { content: attr(placeholder); opacity: 0.54; overflow: hidden; padding-top: 16px; position: absolute; text-align: start; top: 0; z-index: 1; }\n </style>\n </head>"+('<body spellcheck="false" autocorrect="off" contenteditable="true">'+k(e.value,e)+"</body></html>"),n=this.parent.createElement("iframe",{id:this.parent.getID()+"_rte-view",className:"e-rte-content",styles:"display:block;",attrs:{srcdoc:t}});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}(Fn),_n=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("xhtmlValidation",this.enableXhtmlValidation,this),this.parent.on(Q,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off("xhtmlValidation",this.enableXhtmlValidation),this.parent.off(Q,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.ImageTags(),this.removeTags(),this.RemoveUnsupported(),this.currentElement.innerHTML=this.selfEncloseValidation(this.currentElement.innerHTML,"\n"===this.currentElement.innerText?this.currentElement.innerText.length:this.currentElement.innerText.trim().length),this.parent.setProperties({value:this.currentElement.innerHTML},!0))},e.prototype.selfEncloseValidation=function(e,t){if(0===t&&e.indexOf("table")<0&&e.indexOf("img")<0&&e.includes(" ")){var n=e.split(" ");n[n.length-1]="​"+n[n.length-1],e=n.join("")}e=e.replace(/<br>/g,"<br/>").replace(/<hr>/g,"<hr/>").replace(/ /g," ");for(var i,o=[],r=[],s=[/<img(.*?)>/gi,/<area(.*?)>/gi,/<base(.*?)>/gi,/<col (.*?)>/gi,/<embed(.*?)>/gi,/<input(.*?)>/gi,/<link(.*?)>/gi,/<meta(.*?)>/gi,/<param(.*?)>/gi,/<source(.*?)>/gi,/<track(.*?)>/gi,/<wbr(.*?)>/gi],a=0;a<s.length;a++){for(i=s[a].exec(e);null!==i;)o.push(i[0].toString()),i=s[a].exec(e);r=o.slice(0);for(var l=0;l<o.length;l++)-1!==o[l].indexOf("/")&&o[l].lastIndexOf("/")===o[l].length-2||(o[l]=o[l].substr(0,o[l].length-1)+" /"+o[l].substr(o[l].length-1,o[l].length));for(var d=0;d<=o.length-1;d++)e=e.replace(r[d],o[d])}return 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.classList.contains("e-mention-chip")&&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}(),Vn=function(){function n(e,t){this.rangeCollection=[],this.isImageDelete=!1,this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.xhtmlValidation=new _n(e),this.addEventListener()}return n.prototype.destroy=function(){this.removeEventListener()},n.prototype.sanitizeHelper=function(e){return e=R(e,this.parent)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.nodeSelectionObj=new sn,this.colorPickerModule=new vt(this.parent,this.locator),this.parent.on("initial-load",this.instantiateRenderer,this),this.parent.on("html-toolbar-click",this.onToolbarClick,this),this.parent.on(G,this.onKeyDown,this),this.parent.on(K,this.onKeyUp,this),this.parent.on("render-color-picker",this.renderColorPicker,this),this.parent.on(V,this.render,this),this.parent.on(W,this.onPropertyChanged,this),this.parent.on(Q,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(Y,this.onSelectionSave,this),this.parent.on(J,this.onSelectionRestore,this),this.parent.on("readOnlyMode",this.updateReadOnly,this),this.parent.on(ee,this.onPaste,this),this.parent.on("tableclass",this.isTableClassAdded,this),this.parent.on("onHandleFontsizeChange",this.onHandleFontsizeChange,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,!t.isNullOrUndefined(this.saveSelection)&&!t.isNullOrUndefined(t.closest(this.saveSelection.range.startContainer.parentElement,".e-img-caption"))&&"false"==t.closest(this.saveSelection.range.startContainer.parentElement,".e-img-caption").getAttribute("contenteditable")||this.contentRenderer.getEditPanel().focus(),(t.isNullOrUndefined(e.items)||e.items)&&this.saveSelection.restore()},n.prototype.isTableClassAdded=function(){for(var e=this.parent.inputElement.querySelectorAll("table"),t=0;t<e.length;t++)e[t].classList.contains("e-rte-table")||e[t].classList.contains("e-rte-paste-table")||e[t].classList.add("e-rte-table")},n.prototype.onHandleFontsizeChange=function(e){var n=e.args,i={name:"dropDownSelect"};i.item={command:"Font",subCommand:"FontSize"};var o,r=this.parent.fontSize.items;if(this.parent.toolbarModule&&this.parent.toolbarModule.dropDownModule&&this.parent.toolbarModule.dropDownModule.fontSizeDropDown&&!t.isNullOrUndefined(this.parent.toolbarModule.dropDownModule.fontSizeDropDown.activeElem[0].textContent)&&""!==this.parent.toolbarModule.dropDownModule.fontSizeDropDown.activeElem[0].textContent)o=this.parent.toolbarModule.dropDownModule.fontSizeDropDown.activeElem[0].textContent;else{var s=void 0,a=this.parent.contentModule.getDocument().getSelection();s=a&&a.focusNode&&a.focusNode.parentElement?document.defaultView.getComputedStyle(a.focusNode.parentElement,null).getPropertyValue("font-size"):this.parent.fontSize.width;var l=(s=t.isNullOrUndefined(s)?this.parent.fontSize.width:s).match(/^([\d.]+)(\D+)$/),d=parseInt(l[1],10),c=l[2],p=r[0].value.match(/^([\d.]+)(\D+)$/);if(p[2]===c){u=r.findIndex(function(e){var t=e.value;return parseInt(t,10)>=d});o=r[u].text}else{var h=this.convertFontSize(d,c,p[2]),u=r.findIndex(function(e){var t=e.value;return parseInt(t,10)>=h});o=r[u].text}}var m=r.findIndex(function(e){return e.text===o});if("increase-fontsize"===n.action&&-1!==m)if(m>=r.length-1){var g=r[m].value.match(/^([\d.]+)(\D+)$/);if(g){var f=parseInt(g[1],10),c=g[2],b=f%10==0?10*Math.ceil((f+1)/10):10*Math.ceil(f/10);i.item.value=b.toLocaleString()+c,i.item.text=b.toLocaleString()+" "+c}this.parent.fontSize.items.push(i.item)}else i.item.value=r[m+1].value,i.item.text=r[m+1].text;else"decrease-fontsize"===n.action&&-1!==m&&m>0?(i.item.value=r[m-1].value,i.item.text=r[m-1].text):m>=0&&m<r.length&&r[m]&&(i.item.value=r[m].value,i.item.text=r[m].text);this.parent.formatter.process(this.parent,i,n)},n.prototype.convertFontSize=function(e,t,n){return-1===ae.indexOf(t)&&-1===ae.indexOf(n)||(t="px"),e*le[t][n]},n.prototype.onKeyUp=function(e){var n,i=e.args,o=[8,9,13,16,17,18,20,27,37,38,39,40,44,45,46,91,112,113,114,115,116,117,118,119,120,121,122,123],r=this.parent.getRange(),s=new RegExp(String.fromCharCode(8203),"g"),a=r.startContainer===r.endContainer&&r.startOffset===r.endOffset&&1===r.startOffset&&1===r.startContainer.textContent.length&&8203==r.startContainer.textContent.charCodeAt(0)&&0===r.startContainer.textContent.replace(s,"").length,l=!1;if(o.indexOf(i.keyCode)<0&&!i.shiftKey&&!i.ctrlKey&&!i.altKey&&!a){if(n=r.startOffset,"#text"===r.startContainer.nodeName?r.startContainer.parentElement!==this.parent.inputElement?r.startContainer.parentElement.classList.add("currentStartMark"):l=!0:r.startContainer.classList.add("currentStartMark"),8203===r.startContainer.textContent.charCodeAt(0)){var d=r.startContainer.textContent.length,c=r.startOffset;r.startContainer.textContent=r.startContainer.textContent.replace(s,""),n=0===c?c:c-(d-r.startContainer.textContent.length),this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),r.startContainer,n)}var p=this.parent.inputElement.innerHTML.length,h=this.parent.inputElement.innerHTML.replace(s,"").length,u=r.startContainer;if(p>h&&!l){if(0!==u.textContent.trim().length&&u.previousSibling){var m=document.createElement("span");m.className="tempSpan",r.insertNode(m)}for(var g=this.parent.inputElement.firstChild;!t.isNullOrUndefined(g)&&g.textContent.replace(s,"").trim().length>0;)g.innerHTML=g.innerHTML.replace(s,""),g=g.nextElementSibling;var f=this.parent.inputElement.querySelector(".tempSpan");f&&f.previousSibling&&0!==u.textContent.trim().length&&(u=f.previousSibling,n=f.previousSibling.textContent.length,f.parentNode.removeChild(f),f=null);var b=this.parent.inputElement.querySelector(".currentStartMark").childNodes;if(b.length>1)for(var v=0;v<b.length;v++)"#text"===b[v].nodeName&&0===b[v].textContent.length&&(t.detach(b[v]),v--),t.isNullOrUndefined(b[v])||u.textContent.replace(s,"")!==b[v].textContent||(n=u.textContent.length>1?u.textContent===b[v].textContent?n:n-(u.textContent.length-u.textContent.replace(s,"").length):u.textContent.length,u=b[v]);else 1===b.length&&u.textContent.replace(s,"")===b[0].textContent&&(u=b[0]);this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),u,n)}var C=this.parent.inputElement.querySelector(".currentStartMark");t.isNullOrUndefined(C)||(C.classList.remove("currentStartMark"),""===C.getAttribute("class").trim()&&C.removeAttribute("class")),!t.isNullOrUndefined(r.startContainer.previousSibling)&&!t.isNullOrUndefined(r.startContainer.previousSibling.parentElement)&&r.startContainer.parentElement===r.startContainer.previousSibling.parentElement&&8203===r.startContainer.previousSibling.textContent.charCodeAt(0)&&r.startContainer.previousSibling.textContent.length<=1&&(r.startContainer.previousSibling.textContent=r.startContainer.previousSibling.textContent.replace(s,"")),8203===r.endContainer.textContent.charCodeAt(r.endOffset)&&(n=r.startOffset,r.endContainer.textContent=r.endContainer.textContent.replace(s,""),this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),r.startContainer,n))}},n.prototype.onKeyDown=function(e){var n,i=this,o=e.args;if("chrome"===t.Browser.info.name&&(n=this.parent.getRange(),this.backSpaceCleanup(e,n),this.deleteCleanup(e,n)),9===o.keyCode&&this.parent.enableTabKey&&!t.isNullOrUndefined(o.target)&&t.isNullOrUndefined(t.closest(o.target,".e-rte-toolbar"))){var r=this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()),s=this.nodeSelectionObj.getParentNodeCollection(r);if("LI"!==s[0].nodeName&&!t.closest(s[0],"li")&&!t.closest(s[0],"table")||0!==r.startOffset)if(o.preventDefault(),o.shiftKey){if(this.rangeCollection.length>0&&4===this.rangeCollection[this.rangeCollection.length-1].startContainer.textContent.length){var a=this.rangeCollection[this.rangeCollection.length-1].startContainer;this.nodeSelectionObj.setSelectionText(this.contentRenderer.getDocument(),a,a,0,a.textContent.length),un.Insert(this.contentRenderer.getDocument(),document.createTextNode("")),this.rangeCollection.pop()}}else un.Insert(this.contentRenderer.getDocument()," "),this.rangeCollection.push(this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()))}if(("space"===e.args.action||"enter"===e.args.action||13===e.args.keyCode)&&(this.spaceLink(e.args),"HTML"===this.parent.editorMode&&!this.parent.readonly)){var l=this.parent.getText().trim().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length-this.parent.getSelection().length+1;if(!(-1===this.parent.maxLength||l<=this.parent.maxLength||13!==e.args.keyCode))return void e.args.preventDefault();this.parent.notify("enterHandler",{args:e.args});var d=this.parent.getRange();!t.isNullOrUndefined(d.startContainer)&&"auto"!==this.parent.height&&"#text"!==d.startContainer.nodeName&&!this.parent.iframeSettings.enable&&d.startContainer.getBoundingClientRect().bottom>this.parent.element.getBoundingClientRect().bottom?this.parent.element.querySelector(".e-rte-content").scrollTop+=d.startContainer.getBoundingClientRect().bottom-this.parent.element.getBoundingClientRect().bottom:!t.isNullOrUndefined(d.startContainer)&&"auto"===this.parent.height&&"#text"!==d.startContainer.nodeName&&!this.parent.iframeSettings.enable&&window.innerHeight<d.startContainer.getBoundingClientRect().top&&d.startContainer.scrollIntoView({block:"end",inline:"nearest"})}if("space"===e.args.action){var c=this.parent.getRange(),p=c.startContainer.textContent.slice(0,c.startOffset),h=this.isOrderedList(p),u=this.isUnOrderedList(p);if(h&&!u||u&&!h){var m={callBack:null,event:e.args,name:"keydown-handler"},g={cancel:!1,item:{command:"Lists",subCommand:h?"OL":"UL"},name:"actionBegin",originalEvent:e.args,requestType:h?"OL":"UL"};this.parent.trigger(X,g,function(t){t.cancel||(i.parent.formatter.editorManager.observer.notify("onBegin",m),i.parent.trigger("actionComplete",{editorMode:i.parent.editorMode,elements:i.parent.formatter.editorManager.domNode.blockNodes(),event:e.args,name:"actionComplete",range:i.parent.getRange(),requestType:h?"OL":"UL"}))})}}"chrome"!==t.Browser.info.name||(t.isNullOrUndefined(this.rangeElement)||t.isNullOrUndefined(this.oldRangeElement))&&(t.isNullOrUndefined(this.deleteRangeElement)||t.isNullOrUndefined(this.deleteOldRangeElement))||"TD"===n.startContainer.parentElement.tagName||"TH"===n.startContainer.parentElement.tagName||(this.rangeElement=null,this.oldRangeElement=null,this.deleteRangeElement=null,this.deleteOldRangeElement=null,this.isImageDelete||o.preventDefault(),o.preventDefault())},n.prototype.isOrderedList=function(e){e=e.replace(/\u200B/g,"");var n=[/^[1]+[.]+$/,/^[i]+[.]+$/,/^[a]+[.]+$/];if(!t.isNullOrUndefined(e))for(var i=0;i<n.length;i++)if(n[i].test(e))return!0;return!1},n.prototype.isUnOrderedList=function(e){e=e.replace(/\u200B/g,"");var n=[/^[*]$/,/^[-]$/];if(!t.isNullOrUndefined(e))for(var i=0;i<n.length;i++)if(n[i].test(e))return!0;return!1},n.prototype.backSpaceCleanup=function(e,n){var i=!1,o=!0;t.isNullOrUndefined(n.startContainer.previousSibling)||"SPAN"!==n.startContainer.previousSibling.nodeName||(o="false"!==n.startContainer.previousSibling.contentEditable);var r="#text"===n.startContainer.nodeName?n.startContainer.parentElement:n.startContainer,s=!t.closest("#text"===n.startContainer.nodeName?n.startContainer.parentElement:n.startContainer,"li")||"li"!==r.nodeName&&t.isNullOrUndefined(r.previousSibling);if("Backspace"===e.args.code&&8===e.args.keyCode&&0===n.startOffset&&0===n.endOffset&&0===this.parent.getSelection().length&&n.startContainer.textContent.length>0&&"TD"!==n.startContainer.parentElement.tagName&&"TH"!==n.startContainer.parentElement.tagName&&o&&s){if(!this.parent.formatter.editorManager.domNode.isBlockNode(r)&&!t.isNullOrUndefined(r.previousSibling)&&"BR"===r.previousSibling.nodeName||!t.isNullOrUndefined(n.startContainer.previousSibling)&&"BR"===n.startContainer.previousSibling.nodeName)return;if(this.rangeElement=this.getRootBlockNode(n.startContainer),"OL"===this.rangeElement.tagName||"UL"===this.rangeElement.tagName){var a=this.getRangeLiNode(n.startContainer);a.previousElementSibling&&a.previousElementSibling.childElementCount>0&&(this.oldRangeElement="BR"===a.previousElementSibling.lastElementChild.nodeName?a.previousElementSibling:a.previousElementSibling.lastElementChild,!t.isNullOrUndefined(a.lastElementChild)&&"BR"!==a.lastElementChild.nodeName&&t.isNullOrUndefined(a.lastElementChild.previousSibling)?(this.rangeElement=a.lastElementChild,i=!0):this.rangeElement=a)}else{if(this.rangeElement===this.parent.inputElement||"TABLE"===this.rangeElement.tagName||!t.isNullOrUndefined(this.rangeElement.previousElementSibling)&&"TABLE"===this.rangeElement.previousElementSibling.tagName)return;this.oldRangeElement=this.rangeElement.previousElementSibling}if(t.isNullOrUndefined(this.oldRangeElement))return;"OL"!==this.oldRangeElement.tagName&&"UL"!==this.oldRangeElement.tagName||(this.oldRangeElement=this.oldRangeElement.lastElementChild.lastElementChild?this.oldRangeElement.lastElementChild.lastElementChild:this.oldRangeElement.lastElementChild);for(var l=this.oldRangeElement.lastChild;3!==l.nodeType&&"#text"!==l.nodeName&&"BR"!==l.nodeName;)l=l.lastChild;if(this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),l,l.textContent.length),1===this.oldRangeElement.querySelectorAll("BR").length&&t.detach(this.oldRangeElement.querySelector("BR")),!t.isNullOrUndefined(this.rangeElement)&&this.oldRangeElement!==this.rangeElement){for(;this.rangeElement.firstChild;)this.oldRangeElement.appendChild(this.rangeElement.childNodes[0]);i?t.detach(this.rangeElement.parentElement):t.detach(this.rangeElement),this.oldRangeElement.normalize()}}},n.prototype.deleteCleanup=function(e,n){var i,o,r=!1;if("Delete"===e.args.code&&46===e.args.keyCode&&0!==this.parent.contentModule.getText().trim().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length&&0===this.parent.getSelection().length&&"TD"!==n.startContainer.parentElement.tagName&&"TH"!==n.startContainer.parentElement.tagName){if(this.deleteRangeElement=o=this.getRootBlockNode(n.startContainer),"OL"===this.deleteRangeElement.tagName||"UL"===this.deleteRangeElement.tagName)(i=this.getRangeLiNode(n.startContainer)).nextElementSibling&&i.nextElementSibling.childElementCount>0&&!i.nextElementSibling.querySelector("BR")?t.isNullOrUndefined(i.lastElementChild)?this.deleteRangeElement=i:(this.deleteRangeElement=i.lastElementChild,r=!0):this.deleteRangeElement=this.getRangeElement(i);else if(3===this.deleteRangeElement.nodeType||"TABLE"===this.deleteRangeElement.tagName||!t.isNullOrUndefined(this.deleteRangeElement.nextElementSibling)&&"TABLE"===this.deleteRangeElement.nextElementSibling.tagName)return;if(this.getCaretIndex(n,this.deleteRangeElement)===this.deleteRangeElement.textContent.length){if(t.isNullOrUndefined(i)?this.deleteOldRangeElement=this.deleteRangeElement.nextElementSibling:r||!t.isNullOrUndefined(i.nextElementSibling)?this.deleteOldRangeElement=this.getRangeElement(i.nextElementSibling):this.deleteOldRangeElement=o.nextElementSibling,t.isNullOrUndefined(this.deleteOldRangeElement))return;0===n.startOffset&&1===n.endOffset&&"IMG"===this.deleteRangeElement.childNodes[0].nodeName?(this.parent.formatter.editorManager.nodeSelection.setSelectionText(this.parent.contentModule.getDocument(),this.deleteRangeElement,this.deleteRangeElement,0,1),this.isImageDelete=!0):(this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),this.deleteRangeElement,this.deleteRangeElement.childNodes.length),this.isImageDelete=!1);var s=this.deleteRangeElement.querySelector("BR");if(s&&s.classList.contains("e-rte-image-remove-focus"))return void t.removeClass([s],["e-rte-image-focus"]);if(s&&t.detach(s),t.isNullOrUndefined(this.deleteRangeElement)||"OL"===this.deleteOldRangeElement.tagName||"UL"===this.deleteOldRangeElement.tagName||this.deleteOldRangeElement===this.deleteRangeElement)this.deleteRangeElement=null,this.deleteOldRangeElement=null;else{for(;this.deleteOldRangeElement.firstChild;)this.deleteRangeElement.appendChild(this.deleteOldRangeElement.childNodes[0]);r?t.detach(this.deleteOldRangeElement.parentElement):t.detach(this.deleteOldRangeElement),this.deleteRangeElement.normalize()}}else this.deleteRangeElement=null}},n.prototype.getCaretIndex=function(e,t){var n=0;if(0!==this.parent.contentModule.getDocument().getSelection().rangeCount){var i=e.cloneRange();i.selectNodeContents(t),i.setEnd(e.endContainer,e.endOffset),n=i.toString().length}return n},n.prototype.getRangeElement=function(e){return e.lastElementChild?"BR"===e.lastElementChild.tagName?e.lastElementChild.previousElementSibling?e.lastElementChild.previousElementSibling:e:e.lastElementChild:e},n.prototype.getRootBlockNode=function(e){for(;e&&this.parent&&this.parent.inputElement!==e&&e.parentElement!==this.parent.inputElement;e=e)e=e.parentElement;return e},n.prototype.getRangeLiNode=function(e){for(var t=e.parentElement;t!==this.parent.inputElement&&(1!==t.nodeType||"LI"!==t.tagName);)t=t.parentElement;return t},n.prototype.onPaste=function(e){var n=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if(e.text.match(n)){if(e.isWordPaste)return;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+=x(this.parent);else{for(var d="",c=!0,p=s[l].split(" "),h=0;h<p.length;h++)""===p[h].trim()?d+=c?" ":" ":(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.replace("¶","&para");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 class="e-rte-anchor" href="'+g[h]+'" title="'+g[h]+'" target="_blank" aria-label="'+this.parent.serviceLocator.getService("rteLocale").getConstant("linkAriaLabel")+'">'+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.mouseOutHandler=function(){if(t.isNullOrUndefined(this.tooltipTargetEle)){var e=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().ownerDocument:this.parent.contentModule.getDocument();this.tooltipTargetEle=e.querySelector("[data-title]"),this.tooltipTargetEle.setAttribute("title",this.tooltipTargetEle.getAttribute("data-title"))}else this.tooltipTargetEle.setAttribute("title",this.tooltipTargetEle.getAttribute("data-title"));this.tooltipTargetEle.removeAttribute("data-title"),t.EventHandler.remove(this.tooltipTargetEle,"mouseout",this.mouseOutHandler)},n.prototype.onToolbarClick=function(e){var n,i,o,r=this,s=e.item,a=t.closest(e.originalEvent.target,".e-rte-quick-popup"),l=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().ownerDocument:this.parent.contentModule.getDocument();if(this.tooltipTargetEle=t.closest(e.originalEvent.target,"[data-tooltip-id]"),t.isNullOrUndefined(this.tooltipTargetEle)||!this.parent.showTooltip||t.isNullOrUndefined(l.querySelector(".e-tooltip-wrap"))||(this.parent.notify("destroyTooltip",{args:event}),this.tooltipTargetEle.closest(".e-rte-quick-popup")||(this.tooltipTargetEle.setAttribute("data-title",this.tooltipTargetEle.getAttribute("title")),this.tooltipTargetEle.removeAttribute("title"),t.EventHandler.add(this.tooltipTargetEle,"mouseout",this.mouseOutHandler,this))),"FormatPainter"!==s.command)if(!a||a.classList.contains("e-rte-inline-popup")||a.classList.contains("e-rte-text-popup")){var d=document.getElementById(this.parent.getID()+"_rtelink"),c=document.getElementById(this.parent.getID()+"_image");if("SourceCode"!==s.subCommand&&"Preview"!==s.subCommand&&"FontColor"!==s.subCommand&&"BackgroundColor"!==s.subCommand){p=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());t.isNullOrUndefined(d)&&t.isNullOrUndefined(c)&&(n=this.nodeSelectionObj.save(p,this.parent.contentModule.getDocument())),i=this.nodeSelectionObj.getNodeCollection(p),o=this.nodeSelectionObj.getParentNodeCollection(p)}switch(s.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"Audio":this.parent.notify("insertAudio",{member:"audio",args:e,selectNode:i,selection:n,selectParent:o});break;case"Video":this.parent.notify("insertVideo",{member:"video",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;case"EmojiPicker":this.parent.notify("emojiPicker",{member:"emojiPicker",args:e});break;default:this.parent.formatter.process(this.parent,e,e.originalEvent,null)}}else{if("SourceCode"!==s.subCommand&&"Preview"!==s.subCommand&&"FontColor"!==s.subCommand&&"BackgroundColor"!==s.subCommand){P()&&"Images"===s.command&&this.nodeSelectionObj.restore();var p=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());n=this.nodeSelectionObj.save(p,this.parent.contentModule.getDocument()),i=this.nodeSelectionObj.getNodeCollection(p),o=this.nodeSelectionObj.getParentNodeCollection(p)}"Images"===s.command&&this.parent.notify("image-toolbar-action",{member:"image",args:e,selectNode:i,selection:n,selectParent:o}),"Audios"===s.command&&this.parent.notify("audio-toolbar-action",{member:"audio",args:e,selectNode:i,selection:n,selectParent:o}),"Videos"===s.command&&this.parent.notify("video-toolbar-action",{member:"video",args:e,selectNode:i,selection:n,selectParent:o}),"Links"===s.command&&this.parent.notify("link-toolbar-action",{member:"link",args:e,selectNode:i,selection:n,selectParent:o}),"Table"===s.command&&this.parent.notify("table-toolbar-action",{member:"table",args:e,selectNode:i,selection:n,selectParent:o})}else 1===e.originalEvent.detail?(clearTimeout(this.clickTimeout),this.clickTimeout=setTimeout(function(){r.parent.notify("formatPainterClick",{member:"formatPainter",args:e})},200)):(clearTimeout(this.clickTimeout),this.parent.notify("formatPainterDoubleClick",{member:"formatPainter",args:e}))},n.prototype.renderColorPicker=function(e){this.colorPickerModule.renderColorPickerInput(e)},n.prototype.instantiateRenderer=function(){this.parent.iframeSettings.enable?this.renderFactory.addRenderer(e.RenderType.Content,new zn(this.parent,this.locator)):this.renderFactory.addRenderer(e.RenderType.Content,new Fn(this.parent,this.locator))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(V,this.render),this.parent.off(W,this.onPropertyChanged),this.parent.off("html-toolbar-click",this.onToolbarClick),this.parent.off("render-color-picker",this.renderColorPicker),this.parent.off(Q,this.destroy),this.parent.off(G,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(Y,this.onSelectionSave),this.parent.off(J,this.onSelectionRestore),this.parent.off("readOnlyMode",this.updateReadOnly),this.parent.off(ee,this.onPaste),this.parent.off("tableclass",this.isTableClassAdded))},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 Hn({currentDocument:this.contentRenderer.getDocument(),element:n,options:i,formatPainterSettings:this.parent.formatPainterSettings});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 jn(this.parent)),this.parent.inlineMode.enable&&(t.isNullOrUndefined(this.parent.fontFamily.default)||(n.style.fontFamily=this.parent.fontFamily.default),t.isNullOrUndefined(this.parent.fontSize.default)||(n.style.fontSize=this.parent.fontSize.default)),this.parent.notify("bind-on-end",{})},n.prototype.onPropertyChanged=function(e){if(t.isNullOrUndefined(e)||t.isNullOrUndefined(e.newProp.toolbarSettings)||t.isNullOrUndefined(e.newProp.toolbarSettings.enable)||(this.toolbarUpdate=new jn(this.parent)),!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=O(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}(),Qn=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.cropImageData=[],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 sn,this.parent.isDestroyed||(this.parent.on("pasteClean",this.pasteClean,this),this.parent.on(oe,this.setCssClass,this),this.parent.on(Q,this.destroy,this),this.parent.on("docClick",this.docClick,this))},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("pasteClean",this.pasteClean),this.parent.off(oe,this.setCssClass),this.parent.off(Q,this.destroy),this.parent.off("docClick",this.docClick))},n.prototype.pasteClean=function(n){var i,o=this,r={requestType:"Paste",editorMode:this.parent.editorMode,event:n},s=null,a=!1;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){var l=void 0;if(0===s.length){var d=new RegExp(/<\/[a-z][\s\S]*>/i);if(s=n.args.clipboardData.getData("text/plain"),this.isNotFromHtml=""!==s,s=s.replace(/</g,"<"),s=s.replace(/>/g,">"),this.containsHtml=d.test(s),l=n&&n.args.clipboardData&&n.args.clipboardData.items.length>0?null===n.args.clipboardData.items[0].getAsFile()?t.isNullOrUndefined(n.args.clipboardData.items[1])?null:n.args.clipboardData.items[1].getAsFile():n.args.clipboardData.items[0].getAsFile():null,this.parent.notify(ee,{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}}),!d.test(s)){var c=this.parent.createElement("div");c.innerHTML=this.splitBreakLine(s),s=c.innerHTML,a=!0}}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,t,n){r.pasteTableSource=n,s=e.trim(),o.cropImageData=t}});this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var p=this.contentRenderer.getDocument(),h=this.nodeSelectionObj.getRange(p);this.saveSelection=this.nodeSelectionObj.save(h,p);var u=this.parent.createElement("div");u.innerHTML=s;for(var m=u.querySelectorAll(".e-rte-image-unsupported"),g=0;g<m.length;g++)m[g].setAttribute("alt",this.i10n.getConstant("unsupportedImage")),m[g].classList.remove("e-rte-image-unsupported");s=u.innerHTML;var f=""!==u.textContent||!t.isNullOrUndefined(u.querySelector("img"))||!t.isNullOrUndefined(u.querySelector("table"));this.parent.notify("cleanupResizeElements",{value:s,callBack:function(e){s=e}}),this.parent.pasteCleanupSettings.prompt?f?(n.args.preventDefault(),this.pasteDialog(s,r,a)):-1!==t.Browser.userAgent.indexOf("Firefox")&&t.isNullOrUndefined(l)&&this.fireFoxImageUpload():f||this.parent.pasteCleanupSettings.plainText||-1===t.Browser.userAgent.indexOf("Firefox")?this.parent.pasteCleanupSettings.plainText?(n.args.preventDefault(),this.plainFormatting(s,r,a)):this.parent.pasteCleanupSettings.keepFormat?(n.args.preventDefault(),this.formatting(s,!1,r)):(n.args.preventDefault(),this.formatting(s,!0,r)):this.fireFoxImageUpload()}},n.prototype.fireFoxImageUpload=function(){var e=this;setTimeout(function(){if(-1!==t.Browser.userAgent.indexOf("Firefox")){var n=e.nodeSelectionObj.getRange(e.contentRenderer.getDocument()).startContainer;"#text"!==n.nodeName&&(n=n.childNodes[e.nodeSelectionObj.getRange(e.contentRenderer.getDocument()).startOffset]),"IMG"===n.previousSibling.nodeName&&(t.isNullOrUndefined(n.previousSibling.getAttribute("src"))||n.previousSibling.classList.add("pasteContent_Img"),n.previousSibling.classList.add(Ne),"inline"===e.parent.insertImageSettings.display?n.previousSibling.classList.add(be):n.previousSibling.classList.add(ge),n.previousSibling.classList.add(),e.setImageProperties(n.previousSibling))}e.imgUploading(e.parent.inputElement)},500)},n.prototype.splitBreakLine=function(e){for(var t=e.split("\n"),n="",i="P"===this.parent.enterKey?"<p>":"DIV"===this.parent.enterKey?"<div>":"",o="P"===this.parent.enterKey?"</p>":"DIV"===this.parent.enterKey?"</div>":"<br>",r=0;r<t.length;r++)if(""===t[r].trim())n+=x(this.parent);else{var s=this.makeSpace(t[r]);n+=(0===r&&"BR"!==this.parent.enterKey?"<span>":i)+(""===s.trim()?"<br>":s.trim())+(t.length-1===r&&"BR"===this.parent.enterKey?"":0===r&&"BR"!==this.parent.enterKey?"</span>":o)}return n},n.prototype.makeSpace=function(e){for(var t="",n=!0,i=(e=e.replace(/\t/g," ")).split(" "),o=0;o<i.length;o++)""===i[o].trim()?t+=n?" ":" ":(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++)!t.isNullOrUndefined(n[s].getAttribute("src"))&&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(B(e[n].getAttribute("src")));e[n].setAttribute("src",i)}},n.prototype.toolbarEnableDisable=function(e){this.parent.inlineMode.enable||this.parent.toolbarModule.baseToolbar.toolbarObj.disable(e)},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.getID()+"_upload",attrs:{type:"File",name:"UploadFiles"}}),d=this.parent.iframeSettings.enable?-50:-90;this.popupObj=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,i.popupObj.destroy(),t.detach(i.popupObj.element)}}),this.popupObj.element.style.display="none",t.addClass([this.popupObj.element],["e-popup-open","e-rte-upload-popup"]),t.isNullOrUndefined(this.parent.cssClass)||t.addClass([this.popupObj.element],this.parent.cssClass);var c=e.size>1e6?300:100;setTimeout(function(){i.refreshPopup(n,i.popupObj)},c),this.uploadObj=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(i.popupObj,i.uploadObj,n,e)},900)},uploading:function(e){i.parent.isServerRendered||i.parent.trigger("imageUploading",e,function(e){e.cancel?(t.isNullOrUndefined(n)||t.detach(n),t.isNullOrUndefined(i.popupObj.element)||t.detach(i.popupObj.element)):i.parent.inputElement.contentEditable="false"})},beforeUpload:function(e){i.parent.trigger("beforeImageUpload",e),i.toolbarEnableDisable(!0)},failure:function(e){setTimeout(function(){i.uploadFailure(n,i.uploadObj,i.popupObj,e)},900)},canceling:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),i.popupObj.close()},selected:function(e){e.cancel=!0},removing:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),i.popupObj.close()}}),this.uploadObj.appendTo(this.popupObj.element.childNodes[0]);var p=[{name:e.name,rawFile:e,size:e.size,type:e.type,validationMessages:{minSize:"",maxSize:""},statusCode:"1"}];this.uploadObj.createFileList(p),this.uploadObj.upload(p),this.popupObj.element.getElementsByClassName("e-file-select-wrap")[0].style.display="none",t.detach(this.popupObj.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.isDestroyed||n.destroy(),this.toolbarEnableDisable(!1)},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(n,i){t.isNullOrUndefined(i.elements[0].getAttribute("src"))||i.elements[0].classList.add("pasteContent_Img");var o=this.parent.createElement("span");o.appendChild(i.elements[0]);var r=o.innerHTML;this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var s=this.contentRenderer.getDocument(),a=this.nodeSelectionObj.getRange(s);this.saveSelection=this.nodeSelectionObj.save(a,s),this.parent.pasteCleanupSettings.prompt?this.pasteDialog(r,n,!1):this.parent.pasteCleanupSettings.plainText?this.plainFormatting(r,n,!1):this.parent.pasteCleanupSettings.keepFormat?this.formatting(r,!1,n):this.formatting(r,!0,n)},n.prototype.radioRender=function(){this.keepRadioButton=new s.RadioButton({label:this.i10n.getConstant("keepFormat"),name:"pasteOption",checked:!0}),this.keepRadioButton.isStringTemplate=!0;var e=this.parent.element.querySelector("#keepFormating");this.keepRadioButton.appendTo(e),this.cleanRadioButton=new s.RadioButton({label:this.i10n.getConstant("cleanFormat"),name:"pasteOption"}),this.cleanRadioButton.isStringTemplate=!0;var t=this.parent.element.querySelector("#cleanFormat");this.cleanRadioButton.appendTo(t),this.plainTextRadioButton=new s.RadioButton({label:this.i10n.getConstant("plainText"),name:"pasteOption"}),this.plainTextRadioButton.isStringTemplate=!0;var n=this.parent.element.querySelector("#plainTextFormat");this.plainTextRadioButton.appendTo(n)},n.prototype.selectFormatting=function(e,t,n,i,o){n?this.formatting(e,!1,t):i?this.formatting(e,!0,t):this.plainFormatting(e,t,o)},n.prototype.pasteDialog=function(e,n,i){var o=this,r=!1,s=this.parent.height,a={buttons:[{click:function(){if(!o.dialogObj.isDestroyed){var t=o.parent.element.querySelector("#keepFormating").checked,a=o.parent.element.querySelector("#cleanFormat").checked;o.dialogObj.hide(),o.parent.height=r?s:o.parent.height,r=!1;var l=o.dialogObj;o.dialogRenderObj.close(l),o.dialogObj.destroy(),o.selectFormatting(e,n,t,a,i)}},buttonModel:{isPrimary:!0,cssClass:"e-flat e-rte-pasteok",content:this.i10n.getConstant("pasteDialogOk")}},{click:function(){if(!o.dialogObj.isDestroyed){o.dialogObj.hide(),o.parent.height=r?s:o.parent.height,r=!1;var e=o.dialogObj;o.dialogRenderObj.close(e),o.dialogObj.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:t.Browser.isDevice,visible:!1};this.dialogObj=this.dialogRenderObj.render(a);var 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)),this.dialogObj.appendTo(l),this.radioRender(),this.parent.element.offsetHeight<parseInt(this.dialogObj.height.split("px")[0],null)&&(this.parent.setProperties({height:parseInt(this.dialogObj.height.split("px")[0],null)+40}),r=!0),this.dialogObj.show(),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){this.popupObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?t.addClass([this.popupObj.element],e.cssClass):(t.removeClass([this.popupObj.element],e.oldCssClass),t.addClass([this.popupObj.element],e.cssClass))),this.updateCss(this.dialogObj,e),this.updateCss(this.uploadObj,e),this.updateCss(this.plainTextRadioButton,e),this.updateCss(this.cleanRadioButton,e),this.updateCss(this.keepRadioButton,e)},n.prototype.destroyDialog=function(e){var n=this.parent.element.querySelector(".e-rte-dialog-minheight");t.detach(n);for(var i=e.children.length,o=0;o<i;o++)t.detach(e.children[0])},n.prototype.docClick=function(e){var n=e.args.target;n&&n.classList&&this.dialogObj&&!t.closest(n,"[id='"+this.dialogObj.element.id+"']")&&!n.classList.contains("e-toolbar-item")&&this.dialogObj&&this.dialogObj.hide()},n.prototype.cleanAppleClass=function(e){for(var n=e.querySelectorAll("br.Apple-interchange-newline"),i=0;i<n.length;i++)t.detach(n[i]);return e},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,r=this.cleanAppleClass(r),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++)t.isNullOrUndefined(s[a].getAttribute("src"))||s[a].classList.add("pasteContent_Img"),this.setImageProperties(s[a]);if(this.addTempClass(r),""!==r.textContent||!t.isNullOrUndefined(r.querySelector("img"))||!t.isNullOrUndefined(r.querySelector("table"))){var l=this.parent.createElement("div");l.innerHTML=e;var d=[];if(!t.isNullOrUndefined(l.querySelector("img"))){for(var c=l.querySelectorAll("img"),p=[],h=[],u=[],a=0;a<c.length;a++)c[a].getAttribute("src")&&c[a].getAttribute("src").split(",")[0].indexOf("base64")>=0&&(p.push(c[a].getAttribute("src")),h.push(t.getUniqueID("rte_image")),u.push(c[a]));for(var m=[],g=void 0,a=0;a<p.length;a++)m.push(this.base64ToFile(p[a],h[a])),g={name:m[a].name,rawFile:m[a],size:m[a].size,type:m[a].type,status:"",validationMessages:{minSize:"",maxSize:""},statusCode:"1"},d.push(g)}this.parent.trigger("afterPasteCleanup",{value:r.innerHTML,filesData:d},function(t){e=t.value}),r.innerHTML=this.parent.addAnchorAriaLabel(e),r=this.addTableClass(r,i.pasteTableSource),this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",i,function(e){if(t.extend(i,{elements:e.elements,imageElements:e.imgElem},!0),o.parent.formatter.onSuccess(o.parent,i),!t.isNullOrUndefined(e.elements)&&!t.isNullOrUndefined(e.imgElem)&&e.imgElem.length>0){var n=e.elements,r=e.imgElem,s=o.findLastElement(n[n.length-1]);(!t.isNullOrUndefined(s)&&"IMG"===s.nodeName||n[n.length-1]===r[r.length-1])&&o.parent.notify("insertCompleted",{args:i.event,type:"Images",isNotify:!0,elements:r[r.length-1]})}},r,null,null,this.parent.enterKey),this.removeTempClass(),this.parent.notify("toolbar-refresh",{}),this.cropImageHandler(this.parent.inputElement)}},n.prototype.cropImageHandler=function(e){var t=this,n=e.querySelectorAll(".e-img-cropped");if(n.length>0)for(var i=0;i<n.length;i++)!function(e){if(n[e].getAttribute("src").split(",")[0].indexOf("base64")>=0){var i=new Image;i.src=n[e].getAttribute("src");var o=document.createElement("canvas"),r=o.getContext("2d");i.onload=function(){var s=t.cropImageData[e].goalWidth/i.naturalWidth,a=t.cropImageData[e].goalHeight/i.naturalHeight,l=t.cropImageData[e].cropLength/s,d=t.cropImageData[e].cropTop/a,c=(t.cropImageData[e].goalWidth-t.cropImageData[e].cropLength-t.cropImageData[e].cropR)/s,p=(t.cropImageData[e].goalHeight-t.cropImageData[e].cropTop-t.cropImageData[e].cropB)/a;o.width=c,o.height=p,r.drawImage(i,l,d,c,p,0,0,c,p);var h=o.toDataURL("image/png");n[e].setAttribute("src",h),n[e].classList.remove("e-img-cropped"),t.imgUploading(t.parent.inputElement),t.parent.iframeSettings.enable&&t.parent.updateValue()}}}(i);else this.imgUploading(this.parent.inputElement),this.parent.iframeSettings.enable&&this.parent.updateValue()},n.prototype.addTableClass=function(e,n){n=t.isNullOrUndefined(n)?"":n;for(var i=e.querySelectorAll("table"),o=0;o<i.length;o++)i[o].classList.contains("e-rte-table")||"html"!==n&&""!==n?n&&"html"!==n&&i[o].classList.add("e-rte-paste-"+n+"-table"):i[o].classList.add("e-rte-table");return e},n.prototype.setImageProperties=function(e){"auto"!==this.parent.insertImageSettings.width&&e.setAttribute("width",this.parent.insertImageSettings.width),"0"!==this.parent.insertImageSettings.minWidth&&0!==this.parent.insertImageSettings.minWidth&&(e.style.minWidth=this.parent.insertImageSettings.minWidth.toString()),null!==this.parent.insertImageSettings.maxWidth&&(e.style.maxWidth=this.parent.getInsertImgMaxWidth().toString()),"auto"!==this.parent.insertImageSettings.height&&e.setAttribute("height",this.parent.insertImageSettings.height),"0"!==this.parent.insertImageSettings.minHeight&&0!==this.parent.insertImageSettings.minHeight&&(e.style.minHeight=this.parent.insertImageSettings.minHeight.toString()),null!==this.parent.insertImageSettings.maxHeight&&(e.style.maxHeight=this.parent.insertImageSettings.maxHeight.toString())},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=R(e,this.parent)},n.prototype.plainFormatting=function(e,n,i){var o=this,r=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});if(r.innerHTML=e,this.detachInlineElements(r),this.getTextContent(r),""!==r.textContent.trim()){if(!t.isNullOrUndefined(r.firstElementChild)&&"BR"!==r.firstElementChild.tagName){var s=r.firstElementChild;if(!t.isNullOrUndefined(r.firstElementChild)){for(var a=this.parent.createElement("span"),l=0,d=0;l<s.childNodes.length;l++,d++)if("#text"===s.childNodes[l].nodeName)a.appendChild(s.childNodes[l]),r.insertBefore(a,r.firstElementChild),l--;else{if("#text"===s.childNodes[l].nodeName||0!==d)break;for(var c=0;c<s.childNodes[l].childNodes.length;c++)a.appendChild(s.childNodes[l].childNodes[c]),r.insertBefore(a,r.firstElementChild),c--;l--}s.hasChildNodes()||t.detach(s)}}this.removeEmptyElements(r),this.saveSelection.restore(),r.innerHTML=this.sanitizeHelper(r.innerHTML),this.addTempClass(r),this.removingComments(r),"BR"!==this.parent.enterKey||i?"DIV"===this.parent.enterKey&&(r.innerHTML=r.innerHTML.replace(/<p class="pasteContent_RTE">/g,"<div>").replace(/<\/p>/g,"</div>")):r=this.reframeToBrContent(r),this.parent.trigger("afterPasteCleanup",{value:r.innerHTML,filesData:null},function(t){e=t.value}),r.innerHTML=e,this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",n,function(e){t.extend(n,{elements:e.elements,imageElements:e.imgElem},!0),o.parent.formatter.onSuccess(o.parent,n)},r,null,null,this.parent.enterKey),this.removeTempClass()}else this.saveSelection.restore(),t.extend(n,{elements:[]},!0),this.parent.formatter.onSuccess(this.parent,n)},n.prototype.removingComments=function(e){var t=e.innerHTML;t=t.replace(/<!--[\s\S]*?-->/g,""),e.innerHTML=t},n.prototype.reframeToBrContent=function(e){for(var n=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});!t.isNullOrUndefined(e.firstChild);){var i=this.parent.createElement("br"),o=e.firstChild;if("#text"===o.nodeName){var r=!t.isNullOrUndefined(o.nextSibling);n.appendChild(o),r&&n.appendChild(i)}else{var s="BR"===o.nodeName;s?n.appendChild(o):n.appendChild(o.childNodes[0]),t.isNullOrUndefined(o)||t.isNullOrUndefined(o.nextSibling)||n.appendChild(i),s||t.isNullOrUndefined(o)||t.detach(o)}}return 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&&" "!==n[i].childNodes[r].nodeValue.replace(/\u00a0/g," ")&&""===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++)if(i[o]!==e.firstChild||"SPAN"!==i[o].nodeName){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.length>0&&e.parentElement.textContent.match(/\u00a0/g)&&e.parentElement.textContent.match(/\u00a0/g).length>0||""!==e.parentElement.textContent.trim()||"pasteContent"===e.parentElement.getAttribute("class")?e:this.findDetachEmptyElem(e.parentElement)},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(Pt),i=n.map(function(e){return Pt[""+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.findLastElement=function(e){if(!t.isNullOrUndefined(e)&&!t.isNullOrUndefined(e.lastElementChild)){for(var n=e.lastElementChild;n&&n.lastElementChild;)n=n.lastElementChild;return n}return null},n.prototype.getModuleName=function(){return"pasteCleanup"},n}(),Wn=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(V,this.renderResizable,this),this.parent.on(Q,this.destroy,this))},e.prototype.renderResizable=function(){var e=this.parent.enableRtl?"e-south-west":"e-south-east";this.resizer=this.parent.createElement("div",{id:this.parent.getID()+"-resizable",className:"e-icons e-resize-handle "+e}),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 t=this;e.cancelable&&e.preventDefault(),this.wireResizeEvents(),this.parent.notify("resizeInitialized",{});var n={event:e,requestType:"editor"};this.parent.trigger("resizeStart",n,function(e){e.cancel&&t.unwireResizeEvents()})},e.prototype.performResize=function(e){var n=this,i={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=this.parent.enableRtl?o.right-e.clientX+"px":e.clientX-o.left+"px";var r=this.parent.toolbarModule.getToolbarElement();if(null!==r&&r.classList.contains("e-rte-tb-float")&&this.parent.toolbarSettings.enableFloating&&this.parent.getToolbar()&&!this.parent.inlineMode.enable){var s=this.parent.contentModule.getPanel().getBoundingClientRect().width;r.style.width=s+"px"}}else{var a="msie"!==t.Browser.info.name?e.touches[0]:e;this.parent.element.style.height=a.clientY-o.top+"px",this.parent.element.style.width=this.parent.enableRtl?o.right-a.clientX+"px":a.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 t={event:e,requestType:"editor"};this.parent.trigger("resizeStop",t)},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(V,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(Q,this.destroy))},e.prototype.getModuleName=function(){return"resize"},e}(),Kn=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),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.setCssClass=function(e){this.dialogObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?this.dialogObj.setProperties({cssClass:(this.dialogObj.cssClass+" "+e.cssClass).trim()}):this.dialogObj.setProperties({cssClass:(this.dialogObj.cssClass.replace(e.oldCssClass,"").trim()+" "+e.cssClass).trim()}))},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,beforeSend:this.parent.fileManagerSettings.beforeSend,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?be:ge,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,E(this.parent.element,"focusout"))},n.prototype.addEventListener=function(){this.parent.on(V,this.initialize,this),this.parent.on("renderFileManager",this.render,this),this.parent.on(oe,this.setCssClass,this),this.parent.on(Q,this.destroy,this)},n.prototype.removeEventListener=function(){t.EventHandler.remove(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick),this.parent.off(V,this.initialize),this.parent.off("renderFileManager",this.render),this.parent.off(oe,this.setCssClass),this.parent.off(Q,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){var n=this;if(!0!==this.parent.toolbarSettings.enable||"Markdown"===this.parent.editorMode||t.isNullOrUndefined(this.parent.quickToolbarModule)||this.parent.quickToolbarModule.hideQuickToolbars(),this.parent.showTooltip&&!t.isNullOrUndefined(document.querySelector(".e-tooltip-wrap"))&&this.parent.notify("destroyTooltip",{args:e}),this.scrollableParent=o.getScrollableParent(this.parent.element),!this.parent.element.classList.contains("e-rte-full-screen")){var i={cancel:!1,requestType:"Maximize",targetItem:"Maximize",args:e};this.parent.trigger(X,i,function(i){if(!i.cancel){n.parent.toolbarSettings.enableFloating&&!n.parent.inlineMode.enable&&n.parent.toolbarSettings.enable&&(n.parent.getToolbarElement().style.width="100%",n.parent.getToolbarElement().style.top="0px"),n.parent.element.classList.add("e-rte-full-screen"),n.toggleParentOverflow(!0);var o=n.parent.element.querySelectorAll(".e-toolbar-extended.e-popup-open").length>0;n.parent.setContentHeight(null,o),n.parent.toolbarModule&&(n.parent.getBaseToolbarObject().toolbarObj.items[0].properties||n.parent.getBaseToolbarObject().toolbarObj.removeItems(0),t.Browser.isDevice&&n.parent.toolbarModule.removeFixedTBarClass(),n.parent.toolbarModule.updateItem({targetItem:"Maximize",updateItem:"Minimize",baseToolbar:n.parent.getBaseToolbarObject()})),n.parent.refreshUI(),n.parent.trigger("actionComplete",{requestType:"Maximize",targetItem:"Maximize",args:e})}})}},e.prototype.hideFullScreen=function(e){var n=this;if(!0!==this.parent.toolbarSettings.enable||"Markdown"===this.parent.editorMode||t.isNullOrUndefined(this.parent.quickToolbarModule)||this.parent.quickToolbarModule.hideQuickToolbars(),this.parent.showTooltip&&!t.isNullOrUndefined(document.querySelector(".e-tooltip-wrap"))&&this.parent.notify("destroyTooltip",{args:e}),this.parent.element.classList.contains("e-rte-full-screen")){var i={cancel:!1,requestType:"Minimize",targetItem:"Minimize",args:e};this.parent.trigger(X,i,function(i){if(!i.cancel){n.parent.element.classList.remove("e-rte-full-screen");for(var o=document.querySelectorAll(".e-rte-overflow"),r=0;r<o.length;r++)t.removeClass([o[r]],["e-rte-overflow"]);var s=n.parent.element.querySelectorAll(".e-toolbar-extended.e-popup-open").length>0;n.parent.setContentHeight(null,s),n.parent.toolbarModule&&(n.parent.getBaseToolbarObject().toolbarObj.items[0].properties||n.parent.getBaseToolbarObject().toolbarObj.removeItems(0),n.parent.toolbarModule.updateItem({targetItem:"Minimize",updateItem:"Maximize",baseToolbar:n.parent.getBaseToolbarObject()}),t.Browser.isDevice&&n.parent.inlineMode.enable&&n.parent.toolbarModule.addFixedTBarClass()),n.parent.refreshUI(),n.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(G,this.onKeyDown,this),this.parent.on(Q,this.destroy,this),this.parent.on(ie,this.moduleDestroy,this)},e.prototype.removeEventListener=function(){this.parent.off(G,this.onKeyDown),this.parent.off(Q,this.destroy),this.parent.off(ie,this.moduleDestroy)},e.prototype.destroy=function(){if(!t.isNullOrUndefined(this.parent)){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.prototype.moduleDestroy=function(){this.parent=null},e}(),Xn=function(){function e(e){this.isSticky=!1,this.isActive=!1,this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("formatPainterClick",this.toolbarClick,this),this.parent.on("formatPainterDoubleClick",this.toolbarDoubleClick,this),this.parent.on("editAreaClick",this.editAreaClick,this),this.parent.on(G,this.onKeyDown,this),this.parent.on(Q,this.destroy,this)},e.prototype.toolbarClick=function(e){this.parent.focusIn(),this.isSticky?(e.args.action="escape",this.actionHandler(e,"keyBoard")):(this.isActive=!0,this.actionHandler(e,"click")),this.parent.quickToolbarModule&&!t.isNullOrUndefined(this.parent.quickToolbarSettings.text)&&this.parent.element.ownerDocument.contains(this.parent.quickToolbarModule.textQTBar.element)&&this.parent.quickToolbarModule.textQTBar.hidePopup()},e.prototype.toolbarDoubleClick=function(e){this.isActive=!0,this.isSticky=!0,this.parent.focusIn(),this.actionHandler(e,"dbClick")},e.prototype.onKeyDown=function(e){var n=e.args;(t.isNullOrUndefined(n)||t.isNullOrUndefined(n.action)||"format-copy"!==n.action&&"format-paste"!==n.action)&&("escape"!==n.action||"format-copy"!==this.previousAction&&"format-paste"!==this.previousAction)||("format-copy"!==n.action&&"format-paste"!==n.action||n.stopPropagation(),this.actionHandler(e,"keyBoard"))},e.prototype.actionHandler=function(e,n){var i,o,r,s=!1;switch(n){case"dbClick":r=e.args.item,o=e.args.originalEvent,i="format-copy";break;case"keyBoard":null,o=e.args,s=!0,"escape"===(i=e.args.action)&&(this.isSticky=!1,this.isActive=!1);break;case"click":r=e.args.item,o=e.args.originalEvent,i="format-copy";break;case"docClick":o=e,i="format-paste"}this.updateCursor(s);var a="docClick"!==n&&"escape"!==i;this.updateToolbarBtn(a),t.isNullOrUndefined(r)&&(r={command:"FormatPainter",subCommand:"FormatPainter"});var l={requestType:"FormatPainter",originalEvent:o,name:i,item:r},d={formatPainterAction:i};this.parent.formatter.process(this.parent,l,o,d),this.previousAction=i},e.prototype.updateCursor=function(e){this.parent.inputElement.classList.contains("e-rte-cursor-brush")||e?this.isSticky||t.removeClass([this.parent.inputElement],"e-rte-cursor-brush"):t.addClass([this.parent.inputElement],"e-rte-cursor-brush")},e.prototype.updateToolbarBtn=function(e){if(!t.isNullOrUndefined(this.parent.element.querySelector(".e-rte-format-painter"))){var n=this.parent.element.querySelector(".e-rte-format-painter").parentElement.parentElement;e?t.addClass([n],"e-active"):this.isSticky||t.removeClass([n],"e-active")}},e.prototype.editAreaClick=function(e){this.isActive&&(this.isSticky||(this.isActive=!1),this.actionHandler(e,"docClick"),this.updateToolbarBtn(!1))},e.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.parent.isDestroyed||(this.parent.off("formatPainterClick",this.toolbarClick),this.parent.off("editAreaClick",this.editAreaClick),this.parent.off("formatPainterDoubleClick",this.toolbarDoubleClick),this.parent.off(G,this.onKeyDown),this.parent.off(Q,this.destroy),t.isNullOrUndefined(this.parent.formatter.editorManager.formatPainterEditor)||this.parent.formatter.editorManager.formatPainterEditor.destroy(),this.parent=void 0,this.isSticky=void 0,this.isActive=void 0,this.previousAction=void 0)},e.prototype.getModuleName=function(){return"formatPainter"},e}(),Yn=function(){function e(e,t){this.parent=e,this.locator=t,this.i10n=t.getService("rteLocale"),this.renderFactory=this.locator.getService("rendererFactory"),this.baseToolbar=new lt(this.parent,this.locator),this.addEventListener()}return e.prototype.destroy=function(){this.removeEventListener()},e.prototype.addEventListener=function(){this.parent.on("emojiPicker",this.toolbarClick,this),this.parent.on("docClick",this.docClick,this),this.parent.on(G,this.onkeyPress,this),this.parent.on(K,this.onkeyUp,this),this.parent.on("contentscroll",this.contentscroll,this),this.parent.on(Z,this.contentscroll,this)},e.prototype.toolbarClick=function(e){var i,s,a,l=this;t.isNullOrUndefined(this.parent.element.querySelector(".e-emoji"))?this.parent.inlineMode.enable&&(a=this.parent.element.ownerDocument.querySelector(".e-emoji")):a=this.parent.element.querySelector(".e-emoji"),this.divElement=a.closest("div"),this.parent.inputElement.contains(this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()).startContainer)||this.parent.contentModule.getEditPanel().focus();var d=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());this.save=this.parent.formatter.editorManager.nodeSelection.save(d,this.parent.contentModule.getDocument()),this.clickEvent=e.args;var c=this.parent.emojiPickerSettings.iconsSet;if(this.popupObj){if(t.removeClass([this.divElement],"e-active"),this.popupObj.element.querySelector(".e-rte-emoji-search")||!this.parent.emojiPickerSettings.showSearchBox)return void this.popupObj.hide();this.popupObj.hide()}this.popDiv=this.parent.createElement("div",{className:"e-rte-emojipicker-popup",id:this.parent.getID()+"_emojiPicker"}),t.isNullOrUndefined(this.parent.getToolbar())||this.parent.inlineMode.enable?this.parent.inlineMode.enable&&this.parent.inputElement.appendChild(this.popDiv):this.parent.getToolbar().appendChild(this.popDiv),t.EventHandler.add(this.popDiv,"keydown",this.onKeyDown,this),t.EventHandler.add(this.popDiv,"keyup",this.searchFilter,this);var p,h=this.parent.element.querySelector(".e-toolbar-extended");p=t.isNullOrUndefined(h)?"10001":window.getComputedStyle(h).getPropertyValue("z-index");var u,m,g;if(t.isNullOrUndefined(e.args)||this.parent.inlineMode.enable||!t.isNullOrUndefined(this.parent.quickToolbarSettings.text))if(t.isNullOrUndefined(e.x)&&t.isNullOrUndefined(e.y)&&!this.parent.inlineMode.enable&&t.isNullOrUndefined(this.parent.quickToolbarSettings.text))u=this.parent.inputElement,this.parent.contentModule.getDocument().getSelection().rangeCount>0&&(m=(f=this.getCoordinates()).left,g=f.top);else if(t.isNullOrUndefined(e.x)&&t.isNullOrUndefined(e.y)&&(this.parent.inlineMode.enable||!t.isNullOrUndefined(this.parent.quickToolbarSettings.text))){if(this.parent.notify("hidePopup",{}),this.parent.contentModule.getDocument().getSelection().rangeCount>0){var f=this.getCoordinates();m=f.left,g=f.top}}else u=this.parent.inputElement,m=e.x,g=e.y;else u=(u=e.args.originalEvent.target).classList.contains("e-toolbar-item")?u.firstChild:u.parentElement,m="left",g="bottom";if(this.popupObj=new o.Popup(this.popDiv,{targetType:"relative",relateTo:u,collision:{X:"fit",Y:"none"},offsetY:8,viewPortElement:this.parent.element,position:{X:m,Y:g},enableRtl:this.parent.enableRtl,zIndex:parseInt(p,10)+1,actionOnScroll:"hide",close:function(e){l.parent.isBlur=!1,l.popupObj.destroy(),t.detach(l.popupObj.element),l.popupObj=null}}),t.addClass([this.popupObj.element],"e-popup-open"),this.popupObj.refreshPosition(u),(!t.isNullOrUndefined(e.args)||t.isNullOrUndefined(e.x)&&t.isNullOrUndefined(e.y))&&this.parent.emojiPickerSettings.showSearchBox){var b=t.createElement("input",{id:"e-rte-emoji-search",className:"e-rte-emoji-search"});this.popDiv.append(b),new r.TextBox({placeholder:this.i10n.getConstant("emojiPickerTypeToFind"),showClearButton:!0}).appendTo(b),b.focus()}var v=this.popupObj.element.querySelector(".e-clear-icon");t.isNullOrUndefined(v)||t.EventHandler.add(v,"mousedown",this.searchFilter,this);var C=this.parent.createElement("div",{className:"e-rte-emojipicker-toolbar"});this.popDiv.appendChild(C);for(var y=[],N=0;N<this.parent.emojiPickerSettings.iconsSet.length;N++)t.isNullOrUndefined(this.parent.emojiPickerSettings.iconsSet[N].iconCss)?y.push({text:"&#x"+this.parent.emojiPickerSettings.iconsSet[N].code+";",htmlAttributes:(s={},s.title=this.parent.emojiPickerSettings.iconsSet[N].name,s)}):y.push({prefixIcon:this.parent.emojiPickerSettings.iconsSet[N].iconCss,htmlAttributes:(i={},i.title=this.parent.emojiPickerSettings.iconsSet[N].name,i)});new n.Toolbar({items:y,clicked:this.emojiToolbarClick.bind(this)}).appendTo(C);var S=this.parent.createElement("div",{className:"e-rte-emojipicker-btn"});this.popDiv.appendChild(S);var E,T=window.getComputedStyle(this.popDiv);if((!t.isNullOrUndefined(e.args)||t.isNullOrUndefined(e.x)&&t.isNullOrUndefined(e.y))&&this.parent.emojiPickerSettings.showSearchBox){var O=this.parent.element.querySelector(".e-rte-emoji-search").parentElement,w=window.getComputedStyle(O);E=this.popDiv.getBoundingClientRect().height-C.getBoundingClientRect().height-O.getBoundingClientRect().height-parseFloat(w.marginTop)-parseFloat(w.marginBottom)-2*parseFloat(T.borderWidth)+"px",S.style.setProperty("height",E,"important")}else E=this.popDiv.getBoundingClientRect().height-C.getBoundingClientRect().height-2*parseFloat(T.borderWidth)+"px",S.style.setProperty("height",E,"important");for(N=0;N<c.length;N++){var k=this.parent.createElement("div",{className:"e-rte-emojipicker-group"});S.appendChild(k);var L=this.parent.createElement("div",{className:"e-rte-emojipicker-name"});L.innerText=this.parent.emojiPickerSettings.iconsSet[N].name,L.setAttribute("aria-label",this.parent.emojiPickerSettings.iconsSet[N].name),k.appendChild(L);var x=this.parent.createElement("div",{className:"e-rte-emojipickerbtn-group"});k.appendChild(x);for(var D=0;D<c[N].icons.length;D++){var M=this.parent.createElement("button",{className:"e-btn e-control"});M.innerHTML=this.buttoncode(this.parent.emojiPickerSettings.iconsSet[N].icons[D].code),M.setAttribute("aria-label",this.parent.emojiPickerSettings.iconsSet[N].icons[D].desc),M.setAttribute("title",this.parent.emojiPickerSettings.iconsSet[N].icons[D].desc),x.appendChild(M),M.innerHTML.length>2&&(M.style.fontSize="17px")}}t.EventHandler.add(S,"scroll",this.scrollEvent,this),t.EventHandler.add(S,"click",this.emojiBtnClick,this);var R=this.parent.element.querySelectorAll(".e-rte-emojipicker-btn button");t.isNullOrUndefined(this.parent.element.querySelector(".e-rte-emoji-search"))&&!t.isNullOrUndefined(e.args)&&(R[0].focus(),t.addClass([R[0]],"e-focus"));var B,A=this.parent.element.querySelector(".e-rte-emojipicker-btn"),I=this.parent.element.querySelectorAll(".e-rte-emojipicker-toolbar button");t.isNullOrUndefined(A)||(B=Math.round(A.scrollTop)),B<I[0].offsetHeight&&t.addClass([I[0]],"e-selected"),this.popupObj&&t.addClass([this.divElement],"e-active")},e.prototype.buttoncode=function(e){return e.split("-").map(function(e){return String.fromCodePoint(parseInt(e,16))}).join("")},e.prototype.docClick=function(e){var n=e.args.target;n&&n.classList&&this.popupObj&&!t.closest(n,"[id='"+this.popupObj.element.id+"']")&&!n.classList.contains("e-emoji")&&!n.classList.contains("e-toolbar-item")&&this.popupObj&&(t.removeClass([this.divElement],"e-active"),this.popupObj.hide())},e.prototype.scrollEvent=function(){var e,n=this.parent.element.querySelector(".e-rte-emojipicker-btn"),i=this.parent.element.querySelectorAll(".e-rte-emojipicker-group"),o=this.parent.element.querySelectorAll(".e-rte-emojipicker-toolbar button");t.isNullOrUndefined(n)||(e=Math.round(n.scrollTop));for(var r=0,s=0;s<o.length;s++)e<o[0].offsetHeight&&(t.isNullOrUndefined(o[s+1])||t.removeClass([o[s+1]],"e-selected"),t.addClass([o[0]],"e-selected"));for(var a=0;a<i.length;a++)if(r+=Math.round(i[a].offsetHeight),e>=r){for(var l=0;l<o.length;l++)o[l].classList.contains("e-selected")&&t.removeClass([o[l]],"e-selected");t.isNullOrUndefined(o[a+1])||t.addClass([o[a+1]],"e-selected")}},e.prototype.contentscroll=function(){if(t.isNullOrUndefined(this.clickEvent)&&this.popupObj)return t.removeClass([this.divElement],"e-active"),void this.popupObj.hide()},e.prototype.emojiToolbarClick=function(e){for(var n={text:e.item.htmlAttributes.title}.text,i=this.parent.element.querySelectorAll(".e-rte-emojipicker-group"),o=this.parent.element.querySelectorAll(".e-rte-emojipicker-btn button"),r=this.parent.element.querySelectorAll(".e-rte-emojipicker-toolbar button"),s=0;s<r.length;s++)r[s].classList.contains("e-selected")&&t.removeClass([r[s]],"e-selected");for(s=0;s<o.length;s++)o[s].classList.contains("e-focus")&&t.removeClass([o[s]],"e-focus");var a=this.parent.element.querySelector(".e-rte-emojipicker-btn"),l=0;i.forEach(function(e){var i=e.childNodes[0],o=e.childNodes[1].childNodes[0],r=i.getAttribute("aria-label");n===r?i&&(a.scrollTop=l+10,t.addClass([o],"e-focus"),o.focus()):(l+=e.scrollHeight,t.removeClass([o],"e-focus"))})},e.prototype.onKeyDown=function(e){var n=this.parent.element.querySelectorAll(".e-rte-emojipicker-btn button"),i=this.parent.element.querySelectorAll(".e-rte-emojipickerbtn-group"),o=this.parent.element.querySelector(".e-rte-emojisearch-btn button");27===e.keyCode&&this.popupObj&&(t.removeClass([this.divElement],"e-active"),this.popupObj.hide()),13===e.keyCode&&document.activeElement.classList.contains("e-btn")&&(this.emojiBtnClick(e),e.preventDefault());var r=e.srcElement;if(!t.isNullOrUndefined(r)&&r.classList.contains("e-rte-emoji-search")&&40===e.keyCode)for(s=0;s<n.length;s++)n[s].classList.contains("e-focus")&&t.removeClass([n[s]],"e-focus");if(t.isNullOrUndefined(o))for(var s=0;s<n.length;s++){var a=s;if(n[s].classList.contains("e-focus"))if(40===e.keyCode){if(n.length-4>s){for(var l=0,d=0;d<i.length;d++)for(f=0;f<i[d].childNodes.length;f++)if((b=i[d].childNodes[f]).classList.contains("e-focus")&&1!==l){var c=f,p=i[d].lastChild,h=Math.floor(f%6),u=i[d].childNodes.length-1,m=Math.floor(u%6);if(-1!==c){var g=c+6;if(t.isNullOrUndefined(i[d].childNodes[g])){if(t.isNullOrUndefined(i[d].childNodes[g])&&!p.classList.contains("e-focus")&&m<h){S=n[s];t.removeClass([S],"e-focus");y=i[d].lastChild;t.addClass([y],"e-focus"),y.focus(),l=1;break}S=n[s];t.removeClass([S],"e-focus");y=i[d+1].childNodes[h];t.addClass([y],"e-focus"),y.focus(),l=1;break}S=n[s];t.removeClass([S],"e-focus");y=n[a+=6];t.addClass([y],"e-focus"),y.focus();break}}break}}else{if(38===e.keyCode){if(s>=6)for(var l=0,d=0;d<i.length;d++)for(var f=0;f<i[d].childNodes.length;f++){var b=i[d].childNodes[f];if(b.classList.contains("e-focus")&&1!==l){var c=f,v=t.isNullOrUndefined(i[d-1])?null:i[d-1].childNodes.length%6||6;if(-1!==c){var C=c-6;if(t.isNullOrUndefined(i[d].childNodes[C])){if(t.isNullOrUndefined(i[d-1].childNodes[i[d-1].childNodes.length-(v-f)])){S=n[s];t.removeClass([S],"e-focus");y=i[d-1].lastChild;t.addClass([y],"e-focus"),y.focus(),l=1;break}S=n[s];t.removeClass([S],"e-focus");y=i[d-1].childNodes[i[d-1].childNodes.length-(v-f)];t.addClass([y],"e-focus"),y.focus(),l=1;break}S=n[s];t.removeClass([S],"e-focus");y=n[a-=6];t.addClass([y],"e-focus"),y.focus();break}}}else{S=n[s];t.removeClass([S],"e-focus");var y=n[a-=1],N=this.popupObj.element.querySelector(".e-rte-emoji-search");if(t.isNullOrUndefined(y)&&!t.isNullOrUndefined(N)){N.focus();break}t.addClass([y],"e-focus"),y.focus()}break}if(39===e.keyCode){if(n.length!==s+1){S=n[s];t.removeClass([S],"e-focus");y=n[a+=1];t.addClass([y],"e-focus"),n[a].focus()}break}if(37===e.keyCode){if(s>0){S=n[s];t.removeClass([S],"e-focus");y=n[a-=1];t.addClass([y],"e-focus"),n[a].focus()}break}}}else this.filterKeyHandler(e);if(40===e.keyCode){var S=this.parent.element.querySelector(".e-focus");if(t.isNullOrUndefined(S)){y=n[0];t.addClass([y],"e-focus"),n[0].focus()}}},e.prototype.filterKeyHandler=function(e){var n=this.parent.element.querySelectorAll(".e-rte-emojisearch-btn button"),i=this.parent.element.querySelector(".e-focus");if(t.isNullOrUndefined(i)&&40===e.keyCode){l=n[0];t.addClass([l],"e-focus"),n[0].focus()}else for(var o=0;o<n.length;o++){var r=o;if(n[o].classList.contains("e-focus"))if(38===e.keyCode){if(o>=6){var s=n[o];t.removeClass([s],"e-focus");l=n[r-=6];t.addClass([l],"e-focus"),l.focus();break}var a=n[o];t.removeClass([a],"e-focus");var l=n[r-=1],d=this.popupObj.element.querySelector(".e-rte-emoji-search");if(t.isNullOrUndefined(l)&&!t.isNullOrUndefined(d)){d.focus();break}t.addClass([l],"e-focus"),l.focus()}else if(40===e.keyCode){if(n.length-6>o){var c=n[o];t.removeClass([c],"e-focus");l=n[r+=6];t.addClass([l],"e-focus"),l.focus();break}}else{if(39===e.keyCode){if(n.length!==o+1){var p=n[o];t.removeClass([p],"e-focus");l=n[r+=1];t.addClass([l],"e-focus"),n[r].focus()}break}if(37===e.keyCode&&o>0){var h=n[o];t.removeClass([h],"e-focus");l=n[r-=1];t.addClass([l],"e-focus"),n[r].focus();break}}}},e.prototype.searchFilter=function(e,n){var i=this.parent.element.querySelector(".e-rte-emoji-search"),o=this.parent.element.querySelector(".e-content");if(document.activeElement===i||document.activeElement===o){var r=void 0;":"===n||t.isNullOrUndefined(n)?t.isNullOrUndefined(n)||(r=n):r=n.replace(/^:/,"");var s=t.isNullOrUndefined(i)?r:i.value,a=this.parent.element.querySelectorAll(".e-rte-emojipicker-btn button"),l=this.parent.element.querySelector(".e-rte-emojipicker-btn"),d=this.parent.element.querySelectorAll(".e-rte-emojipicker-group"),c=this.parent.element.querySelector(".e-rte-emojipicker-toolbar"),p=this.parent.element.querySelector(".e-rte-emojisearch-btn"),h=this.popDiv.childNodes[0],u=window.getComputedStyle(h),m="SPAN"===h.nodeName?h.getBoundingClientRect().height+parseFloat(u.marginTop)+parseFloat(u.marginBottom):0,g=window.getComputedStyle(this.popDiv),f=t.isNullOrUndefined(p)?a:Array.from(a).filter(function(e){return!p.contains(e)});""===s||":"===n?(c.style.display="",l.style.height=this.popDiv.getBoundingClientRect().height-c.getBoundingClientRect().height-m-2*parseFloat(g.borderWidth)+"px",d.forEach(function(e){e.style.display=""})):(d.forEach(function(e){e.style.display="none"}),c.style.display="none",l.style.height=this.popDiv.getBoundingClientRect().height-m-2*parseFloat(g.borderWidth)+"px");var b=this.parent.createElement("div",{className:"e-rte-emojisearch-btn"}),v=this.parent.element.querySelector(".e-rte-emojisearch-btn");v&&v.remove();for(var C=this.parent.createElement("div",{className:"e-rte-emojiSearch-noEmoji"}),y=!0,N=0;N<f.length;N++)if(!t.isNullOrUndefined(f[N].getAttribute("title")))for(var S=f[N].getAttribute("title").toLowerCase().split(" "),E=0;E<S.length;E++)if(S[E].startsWith(s.toLowerCase())&&""!==s){var T=f[N].cloneNode(!0);b.appendChild(T),y=!1;break}y&&!this.parent.element.querySelector(".e-rte-emojiSearch-noEmoji")&&""!==s&&":"!==n?(C.innerHTML='<span style="color: rgba(0, 0, 0, 0.75); font-weight: 500; font-size: 16px;">'+this.i10n.getConstant("emojiPickerNoResultFound")+' 😥 </span><br><span style="color: rgba(0, 0, 0, 0.75);"> '+this.i10n.getConstant("emojiPickerTrySomethingElse")+" ? </span>",C.style.margin="55px",l.appendChild(C)):(!y&&this.parent.element.querySelector(".e-rte-emojiSearch-noEmoji")||""===s&&":"===n||""===s&&this.parent.element.querySelector(".e-rte-emojiSearch-noEmoji"))&&l.removeChild(this.parent.element.querySelector(".e-rte-emojiSearch-noEmoji")),l.appendChild(b)}},e.prototype.emojiBtnClick=function(e){for(var n=new MouseEvent("mouseleave",{bubbles:!0,cancelable:!0}),i=this.parent.element.querySelectorAll(".e-rte-emojipicker-popup [data-tooltip-id]"),o=0;o<i.length;o++)i[o].dispatchEvent(n);var r=e.target;if("BUTTON"===r.tagName){r.focus();var s=this.save.startOffset,a=this.save.range.startContainer.textContent.substring(s,s+1);t.isNullOrUndefined(this.clickEvent)&&":"===a||this.save.restore(),this.popupObj&&(t.removeClass([this.divElement],"e-active"),this.popupObj.hide());var l=e;this.parent.formatter.process(this.parent,{item:{command:"EmojiPicker",subCommand:"EmojiPicker",value:r.innerHTML}},e,l)}},e.prototype.onkeyPress=function(e){var n=e.args,i=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().contentWindow.getSelection():this.parent.contentModule.getDocument().getSelection();if(!(i.rangeCount<=0)){var o=i.getRangeAt(0).startOffset,r=i.focusNode.textContent.substring(o-1,o),s=/\s/.test(r),a=":"===i.focusNode.textContent.substring(o-1,o),l=":"===i.focusNode.textContent.charAt(o-1);if(186===n.keyCode&&n.shiftKey&&(s||0===i.focusOffset)){var d=this.getCoordinates();this.parent.showEmojiPicker(d.left,d.top)}if(8===n.keyCode&&l&&this.popupObj&&(t.removeClass([this.divElement],"e-active"),this.popupObj.hide()),32===n.keyCode&&a&&this.popupObj){t.removeClass([this.divElement],"e-active");var c=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().ownerDocument:this.parent.contentModule.getDocument();this.parent.showTooltip&&!t.isNullOrUndefined(c.querySelector(".e-tooltip-wrap"))&&this.parent.notify("destroyTooltip",{args:event}),this.popupObj.hide()}!this.popupObj||37!==n.keyCode&&38!==n.keyCode&&39!==n.keyCode&&27!==n.keyCode&&40!==n.keyCode||(this.onKeyDown(n),n.preventDefault())}},e.prototype.onkeyUp=function(e){var n=e.args,i=this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().contentWindow.getSelection():this.parent.contentModule.getDocument().getSelection();if(!(i.rangeCount<=0)){for(var o,r=i.getRangeAt(0),s=r.startOffset,a=0,l=s-1;l>=s-15;l--){var d=i.focusNode.textContent.substring(l-1,l);/:$/.test(d)&&!t.isNullOrUndefined(this.popDiv)&&0===a&&(o=r.startContainer.textContent.substring(l-1,s),this.searchFilter(n,o),a=1)}var c=i.focusNode.textContent.substring(s-1,s);":"!==c||t.isNullOrUndefined(this.popupObj)||(o=c,this.searchFilter(n,o))}},e.prototype.getCoordinates=function(){var e,n,i=(this.parent.iframeSettings.enable?this.parent.contentModule.getPanel().contentWindow.getSelection():window.getSelection()).getRangeAt(0);"P"!==i.startContainer.nodeName&&"DIV"!==i.startContainer.nodeName||"#text"!==i.startContainer.childNodes[0].nodeName&&(n=i.startContainer.childNodes[0]);var o=t.isNullOrUndefined(n)?i.getBoundingClientRect():n.getBoundingClientRect(),r=this.parent.element.querySelector(".e-rte-content"),s=this.parent.element,a=s.offsetHeight-r.offsetHeight,l=o.top-this.parent.inputElement.getBoundingClientRect().top,d=o.left-this.parent.inputElement.getBoundingClientRect().left,c=window.innerHeight,p=l,h=d+o.width;return s.getBoundingClientRect().top<0&&(p=p+r.getBoundingClientRect().top-a),o.top<330?p=p:o.top+330>c&&(p-=350),this.parent.inputElement&&(e={top:p+60,left:h+8}),e},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("emojiPicker",this.toolbarClick),this.parent.off("docClick",this.docClick),this.parent.off(G,this.onkeyPress),this.parent.off(K,this.onkeyUp),this.parent.off("contentscroll",this.contentscroll),this.parent.off(Z,this.contentscroll))},e.prototype.getModuleName=function(){return"emojiPicker"},e}(),Jn=function(){function n(e,t){this.parent=e,this.locator=t,this.renderer=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.render=function(){this.parent;this.contentRenderer=this.renderer.getRenderer(e.RenderType.Content),this.contentRenderer.renderPanel()},n.prototype.refresh=function(e){void 0===e&&(e={requestType:"refresh"}),this.parent.notify(e.requestType+"-begin",e)},n.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(W,this.refresh,this),this.parent.on(K,this.keyUp,this),this.parent.on(ie,this.moduleDestroy,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(W,this.refresh),this.parent.off(K,this.keyUp),this.parent.off(ie,this.moduleDestroy))},n.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||"DIV"===t[0].tagName)&&""===t[0].textContent)){var n=this.parent.contentModule.getEditPanel();"DIV"===this.parent.enterKey?n.innerHTML="<div><br/></div>":"BR"===this.parent.enterKey?n.innerHTML="<br/>":n.innerHTML="<p><br/></p>",this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),n.childNodes[0],0)}}},n}(),$n=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("showLinkDialog",this.showDialog,this),this.parent.on("closeLinkDialog",this.closeDialog,this),this.parent.on(G,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(oe,this.setCssClass,this),this.parent.on(Q,this.destroy,this),this.parent.on(ie,this.moduleDestroy,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("showLinkDialog",this.showDialog),this.parent.off("closeLinkDialog",this.closeDialog),this.parent.off(G,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(oe,this.setCssClass),this.parent.off(Q,this.destroy),this.parent.off(ie,this.moduleDestroy))},n.prototype.onIframeMouseDown=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){this.updateCss(this.checkBoxObj,e),this.updateCss(this.dialogObj,e)},n.prototype.showLinkQuickToolbar=function(e){if(!t.isNullOrUndefined(e.args)&&"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,"link")}},n.prototype.hideLinkQuickToolbar=function(){this.quickToolObj&&this.quickToolObj.linkQTBar&&document.body.contains(this.quickToolObj.linkQTBar.element)&&this.quickToolObj.linkQTBar.hidePopup()},n.prototype.editAreaClickHandler=function(n){if(this.parent.readonly)return void this.hideLinkQuickToolbar();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.linkQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;r=this.getAnchorNode(r),this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var s=this.quickToolObj.linkQTBar.element.classList.contains("e-rte-pop");if("A"===r.nodeName&&r.childNodes.length>0&&"IMG"!==r.childNodes[0].nodeName&&"IMG"!==n.args.target.nodeName&&!t.isNullOrUndefined(t.closest(this.parent.getRange().startContainer.parentElement,"A"))&&!t.isNullOrUndefined(t.closest(this.parent.getRange().endContainer.parentElement,"A"))){if(s)return;if(!1===n.args.ctrlKey)this.showLinkQuickToolbar({args:i,isNotify:!1,type:"Links",elements:[i.target]});else{var a=this.parent.formatter.editorManager.nodeSelection,l=a.getRange(this.parent.contentModule.getDocument()),d={args:{item:{subCommand:"OpenLink",command:"Links",name:""},originalEvent:n.args},selectNode:a.getNodeCollection(l),selectParent:a.getParentNodeCollection(l),selection:a.save(l,this.parent.contentModule.getDocument())};this.parent.notify("openLink",d)}}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":this.openDialog(!0,e),n.preventDefault()}},n.prototype.openDialog=function(e,t){if(e||this.parent.contentModule.getEditPanel().focus(),"HTML"===this.parent.editorMode){var 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={args:t?t.args:{item:{command:"Links",subCommand:"CreateLink"},originalEvent:void 0,name:e?null:"showDialog"},selectNode:o,selection:i,selectParent:r};this.linkDialog(s)}else{var a=this.parent.contentModule.getEditPanel();this.parent.formatter.editorManager.markdownSelection.save(a.selectionStart,a.selectionEnd),this.linkDialog({args:{item:{command:"Links",subCommand:"Link"},originalEvent:t&&t.args},member:"link",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertLink"})}},n.prototype.showDialog=function(){this.openDialog(!1),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.closeDialog=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},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"+this.parent.getCssClass(!0),id:this.rteID+"_rtelink"});this.parent.element.appendChild(p);var h=this.parent.createElement("div",{className:"e-rte-linkcontent"+this.parent.getCssClass(!0),id:this.rteID+"_linkContent"}),u="HTML"===this.parent.editorMode?"<label>"+a+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" spellcheck="false" placeholder = "'+c+'"aria-label="'+this.i10n.getConstant("linkTitle")+'" class="e-input e-rte-linkTitle'+this.parent.getCssClass(!0)+'"></div><div class="e-rte-label'+this.parent.getCssClass(!0)+'"></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="checkbox" class="e-rte-linkTarget'+this.parent.getCssClass(!0)+'" data-role ="none"></div>':"",m=T('<div class="e-rte-label'+this.parent.getCssClass(!0)+'"><label>'+o+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" spellcheck="false" placeholder="'+l+'"aria-label="'+this.i10n.getConstant("linkWebUrl")+'" class="e-input e-rte-linkurl'+this.parent.getCssClass(!0)+'"/></div><div class="e-rte-label'+this.parent.getCssClass(!0)+'"><label>'+r+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"> <input type="text" data-role ="none" spellcheck="false" class="e-input e-rte-linkText'+this.parent.getCssClass(!0)+'"aria-label="'+this.i10n.getConstant("linkText")+'" placeholder="'+d+'"></div><div class="e-rte-label'+this.parent.getCssClass(!0)+'">'+u);h.appendChild(m);var g=h.querySelector(".e-rte-linkTarget"),f=h.querySelector(".e-rte-linkurl"),b=h.querySelector(".e-rte-linkText"),v=h.querySelector(".e-rte-linkTitle"),C=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:C,checked:!0,enableRtl:this.parent.enableRtl,cssClass:this.parent.getCssClass()}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(g);var y="HTML"===this.parent.editorMode?e.selection.getRange(this.parent.contentModule.getDocument()).toString():e.text,N=this.i10n.getConstant("dialogInsert"),S=this.i10n.getConstant("dialogCancel"),E=e.selection,O={selfLink:this,selection:e.selection,selectParent:e.selectParent,args:e.args},w={header:this.i10n.getConstant("linkHeader"),content:h,cssClass:"e-rte-elements"+this.parent.getCssClass(!0),enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"310px",isModal:t.Browser.isDevice,buttons:[{click:this.insertlink.bind(O),buttonModel:{content:N,cssClass:"e-flat e-insertLink"+this.parent.getCssClass(!0),isPrimary:!0}},{click:this.cancelDialog.bind(O),buttonModel:{cssClass:"e-flat"+this.parent.getCssClass(!0),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=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)||(f.value=n.url,b.value=n.text,v.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)&&(b.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(),this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.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,a=this.selfLink.checkBoxObj.checked?this.selfLink.i10n.getConstant("linkAriaLabel"):null;if("Markdown"===this.selfLink.parent.editorMode&&""===o&&(o="http://"),""===o)return void this.selfLink.checkUrl(!0);this.selfLink.isUrl(o)?this.selfLink.checkUrl(!1):(r="Markdown"===this.selfLink.parent.editorMode?""!==r?r:"":""===r?o:r,o=this.selfLink.parent.enableAutoUrl?o:o.indexOf("http")>-1?o:"http://"+o);var l=this.selfLink;if("HTML"===l.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"[id='"+l.parent.contentModule.getPanel().id+"']"))){l.parent.contentModule.getEditPanel().focus(),t.Browser.isIE&&l.parent.iframeSettings.enable&&this.selection.restore();var d=l.parent.formatter.editorManager.nodeSelection.getRange(l.parent.contentModule.getDocument());this.selection=l.parent.formatter.editorManager.nodeSelection.save(d,l.parent.contentModule.getDocument()),this.selectParent=l.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(d)}var c={url:o,text:r,title:n,target:s,ariaLabel:a,selection:this.selection,selectParent:this.selectParent};document.body.contains(l.dialogObj.element)&&this.selfLink.dialogObj.hide({returnValue:!1}),P()&&l.parent.iframeSettings.enable&&t.select("iframe",l.parent.element).contentWindow.focus(),"HTML"===l.parent.editorMode&&this.selection.restore(),0===l.parent.formatter.getUndoRedoStack().length&&l.parent.formatter.saveData();var p;if(t.isNullOrUndefined(this.args)||"KeyK"!==this.args.code)p=this.args;else{var h=this.args;t.extend(this.args,{item:{command:"Links",subCommand:"CreateLink"},originalEvent:h},!0),p={item:{command:"Links",subCommand:"CreateLink"},originalEvent:h}}this.selfLink.parent.formatter.process(this.selfLink.parent,p,!t.isNullOrUndefined(this.args)&&this.args.originalEvent,c),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();var n=this.getAnchorNode(e.selectParent[0]);this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,selectParent:e.selectParent,selection:e.selection,text:n.innerText,subCommand:e.args.item.subCommand}),P()&&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,text:t.innerText,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}),P()?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.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.dialogObj.hide({returnValue:!0}),t.EventHandler.remove(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick),this.parent.isBlur=!0,E(this.parent.element,"focusout"))},n.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.getModuleName=function(){return"link"},n}(),Zn=function(){function n(e,t){this.isImgUploaded=!1,this.isAllowedTypes=!0,this.pageX=null,this.pageY=null,this.mouseX=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(G,this.onKeyDown,this),this.parent.on(K,this.onKeyUp,this),this.parent.on("insertImage",this.insertImage,this),this.parent.on("showImageDialog",this.showDialog,this),this.parent.on("closeImageDialog",this.closeDialog,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(V,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on(ee,this.imagePaste,this),this.parent.on(oe,this.setCssClass,this),this.parent.on(Q,this.removeEventListener,this),this.parent.on(ie,this.moduleDestroy,this))},n.prototype.removeEventListener=function(){if(!this.parent.isDestroyed){this.parent.off(G,this.onKeyDown),this.parent.off(K,this.onKeyUp),this.parent.off("resize",this.onWindowResize),this.parent.off("insertImage",this.insertImage),this.parent.off("showImageDialog",this.showDialog),this.parent.off("closeImageDialog",this.closeDialog),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(V,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off(ee,this.imagePaste),this.parent.off(oe,this.setCssClass),this.parent.off(Q,this.removeEventListener),this.parent.off(ie,this.moduleDestroy);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(ne,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),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing)))}},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){this.popupObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?t.addClass([this.popupObj.element],e.cssClass):(t.removeClass([this.popupObj.element],e.oldCssClass),t.addClass([this.popupObj.element],e.cssClass))),this.updateCss(this.checkBoxObj,e),this.updateCss(this.widthNum,e),this.updateCss(this.heightNum,e),this.updateCss(this.uploadObj,e),this.updateCss(this.dialogObj,e)},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=this.parent.formatter.getUndoRedoStack()[n].text;i.appendChild(o.cloneNode(!0));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"));for(var a=i.cloneNode(!0),l=document.createDocumentFragment();a.firstChild;)l.appendChild(a.firstChild);this.parent.formatter.getUndoRedoStack()[n].text=l}}},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={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(ne,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={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"+this.parent.getCssClass(!0),id:this.rteID+"_imgResize"}),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topLeft"+this.parent.getCssClass(!0),styles:"cursor: nwse-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topRight"+this.parent.getCssClass(!0),styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botLeft"+this.parent.getCssClass(!0),styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botRight"+this.parent.getCssClass(!0),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.getBoundingClientRect().width,a=e.getBoundingClientRect().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,i=["TD","TH","TABLE","A"],o={top:0,left:0},r=e.ownerDocument,s=(e.offsetParent&&(e.offsetParent.classList.contains("e-img-caption")||i.indexOf(e.offsetParent.tagName)>-1)?t.closest(e,"#"+this.parent.getID()+"_rte-edit-view"):e.offsetParent)||r.documentElement;s&&(s===r.body||s===r.documentElement)&&"static"===s.style.position;)s=s.parentNode;return s&&s!==e&&1===s.nodeType&&(o=s.getBoundingClientRect()),e.offsetParent&&e.offsetParent.classList.contains("e-img-caption")?(n=e.getBoundingClientRect(),{top:n.top-o.top,left:n.left-o.left}):{top:e.offsetTop,left:e.offsetLeft}},n.prototype.setAspectRatio=function(e,n,i,o){if(!t.isNullOrUndefined(e.width)){var r=""!==e.style.width?e.style.width.match(/^\d+(\.\d*)?%$/g)?parseFloat(e.style.width):parseInt(e.style.width,10):e.width,s=""!==e.style.height?parseInt(e.style.height,10):e.height;if(r>s)if(e.style.minWidth=0===this.parent.insertImageSettings.minWidth?"20px":t.formatUnit(this.parent.insertImageSettings.minWidth),this.parent.insertImageSettings.resizeByPercent){if(0!==parseInt(""+e.getBoundingClientRect().width,10)&&0!==parseInt(""+r,10)){d=(l=e.offsetWidth+this.mouseX)/e.offsetWidth*("NaN"===parseFloat(e.style.width).toString()?e.offsetWidth/parseFloat(getComputedStyle(this.parent.element).width)*100:parseFloat(e.style.width));e.style.width=(d>3?d:3)+"%"}else e.style.width=this.pixToPerc(r/s*i,e.previousElementSibling||e.parentElement)+"%";e.style.height=null,e.removeAttribute("height")}else if(""===e.style.width&&""!==e.style.height)e.style.height=i+"px";else if(""!==e.style.width&&""===e.style.height){a=r/s*i+r/s<this.parent.inputElement.getBoundingClientRect().right-32?r/s*i+r/s:this.parent.inputElement.getBoundingClientRect().right-32;e.style.width=a.toString()+"px",e.style.height=i+"px"}else if(""!==e.style.width){a=r/s*i<this.parent.inputElement.getBoundingClientRect().right-32?r/s*i:this.parent.inputElement.getBoundingClientRect().right-32;e.style.width=a+"px",e.style.height=i+"px"}else if(this.parent.iframeSettings.enable)e.setAttribute("width",(e.width+this.mouseX).toString());else{var a=0===e.offsetWidth?e.width+this.mouseX+parseInt(e.style.outlineWidth.split("p")[0],10):e.offsetWidth+this.mouseX;e.setAttribute("width",a.toString())}else if(s>r)if(this.parent.insertImageSettings.resizeByPercent){if(0!==parseInt(""+e.getBoundingClientRect().width,10)&&0!==parseInt(""+r,10)){var l=e.offsetWidth+this.mouseX,d=l/e.offsetWidth*("NaN"===parseFloat(e.style.width).toString()?e.offsetWidth/parseFloat(getComputedStyle(this.parent.element).width)*100:parseFloat(e.style.width));e.style.width=(d>3?d:3)+"%"}else e.style.width=this.pixToPerc(n/s*i,e.previousElementSibling||e.parentElement)+"%";e.style.height=null,e.removeAttribute("height")}else""!==e.style.width?(e.style.width=n+"px",e.style.height=s/r*n+"px"):e.setAttribute("width",this.resizeBtnStat.botRight?(this.getPointX(o.event)-e.getBoundingClientRect().left).toString():n.toString());else this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(n,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):(e.style.width=(n>=15?n:15)+"px",e.style.height=(n>=15?n:15)+"px")}},n.prototype.pixToPerc=function(e,t){return e/parseFloat(getComputedStyle(t).width)*100},n.prototype.imgDupMouseMove=function(e,n,i){var o=this,r={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),r),o.resizeImgDupPos(o.imgEle),o.imgResizePos(o.imgEle,o.imgResizeDiv)}})},n.prototype.resizing=function(e){if(!this.parent)return void this.cancelResizeAction();this.imgEle.offsetWidth>=this.parent.getInsertImgMaxWidth()?this.imgEle.style.maxHeight=this.imgEle.offsetHeight+"px":t.isNullOrUndefined(this.parent.insertImageSettings.maxHeight)&&(this.imgEle.style.maxHeight=""),this.imgEle.style.maxWidth=(null!=t.closest(this.imgEle,"ol,ul")?this.parent.getInsertImgMaxWidth()-parseInt(getComputedStyle(t.closest(this.imgEle,"ol,ul")).paddingLeft,0):this.parent.getInsertImgMaxWidth())+"px";var n=this.getPointX(e),i=this.getPointY(e),o=this.resizeBtnStat.botLeft||this.resizeBtnStat.topLeft?-(n-this.pageX):n-this.pageX,r=this.resizeBtnStat.botLeft||this.resizeBtnStat.topLeft?-(i-this.pageY):i-this.pageY,s=parseInt(this.imgDupPos.width,10)+o,a=parseInt(this.imgDupPos.height,10)+r;this.mouseX=o,this.pageX=n,this.pageY=i,this.resizeBtnStat.botRight?this.imgDupMouseMove(s+"px",a+"px",e):this.resizeBtnStat.botLeft?this.imgDupMouseMove(s+"px",a+"px",e):this.resizeBtnStat.topRight?this.imgDupMouseMove(s+"px",a+"px",e):this.resizeBtnStat.topLeft&&this.imgDupMouseMove(s+"px",a+"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.width&&this.parent.insertImageSettings&&!this.parent.insertImageSettings.resizeByPercent?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(P()&&this.parent.notify(J,{}),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()),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)&&!t.isNullOrUndefined(r[0])&&"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){t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),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)}if("Markdown"!==this.parent.editorMode)if(3===n.startContainer.nodeType)"Backspace"===s.code?n.startContainer.previousElementSibling&&0===n.startOffset&&n.startContainer.previousElementSibling.classList.contains(fe)&&n.startContainer.previousElementSibling.classList.contains("e-caption-inline")&&t.detach(n.startContainer.previousElementSibling):n.startContainer.nextElementSibling&&n.endContainer.textContent.length===n.endOffset&&n.startContainer.nextElementSibling.classList.contains(fe)&&n.startContainer.nextElementSibling.classList.contains("e-caption-inline")&&t.detach(n.startContainer.nextElementSibling);else if(1===n.startContainer.nodeType)if(n.startContainer.querySelector(".e-img-caption.e-caption-inline"))t.detach(n.startContainer.querySelector(".e-img-caption.e-caption-inline"));else if(n.startContainer.querySelector(".e-img-caption."+ge))t.detach(n.startContainer.querySelector(".e-img-caption."+ge));else if(n.startContainer.classList.contains("e-img-wrap")&&t.closest(n.startContainer,"."+fe)){var g=n.startContainer.parentElement.parentElement;if(t.detach(t.closest(n.startContainer,"."+fe)),g&&""===g.textContent.trim()){var f=this.parent.createElement("br");f.classList.add("e-rte-image-remove-focus"),g.appendChild(f)}}break;case"insert-image":t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),this.openDialog(!0,s,i,o,r),s.preventDefault()}s.ctrlKey&&"a"===s.key&&this.handleSelectAll()},n.prototype.handleSelectAll=function(){this.cancelResizeAction();var e=this.parent.inputElement.querySelectorAll(".e-img-focus");t.removeClass(e,"e-img-focus")},n.prototype.openDialog=function(e,n,i,o,r){var s,a,l,d;e||t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)?(a=i,l=o,d=r):(s=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),a=this.parent.formatter.editorManager.nodeSelection.save(s,this.parent.contentModule.getDocument()),l=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(s),d=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(s)),"HTML"===this.parent.editorMode?this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:n,name:e?null:"showDialog"},selectNode:l,selection:a,selectParent:d}):this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:n,name:e?null:"showDialog"},member:"image",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertImage"})},n.prototype.showDialog=function(){this.openDialog(!1),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.closeDialog=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},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)||t.isNullOrUndefined(e.args))){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;if(this.parent.quickToolbarModule.imageQTBar)if(e.isNotify)setTimeout(function(){n.parent.formatter.editorManager.nodeSelection.Clear(n.contentModule.getDocument()),n.parent.formatter.editorManager.nodeSelection.setSelectionContents(n.contentModule.getDocument(),o),n.quickToolObj.imageQTBar.showPopup(i.pageX,r,o),n.resizeStart(e.args,o)},400);else{var s=o.getBoundingClientRect();this.quickToolObj.imageQTBar.showPopup(s.left,s.top,o,"Image")}}},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),P()&&this.parent.notify(Y,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"+this.parent.getCssClass(!0)}),r=this.i10n.getConstant("linkurl"),a=T('<div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" class="e-input e-img-link'+this.parent.getCssClass(!0)+'" spellcheck="false" placeholder="'+r+'"/></div><div class="e-rte-label"></div><div class="e-rte-field"><input type="checkbox" class="e-rte-linkTarget'+this.parent.getCssClass(!0)+'" data-role ="none"></div>');o.appendChild(a);var l=o.querySelector(".e-rte-linkTarget"),d=o.querySelector(".e-img-link"),c=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:c,checked:!0,enableRtl:this.parent.enableRtl,cssClass:this.parent.getCssClass(),change:function(e){p=e.checked?"_blank":null}}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(l);var p=this.checkBoxObj.checked?"_blank":null,h=this.checkBoxObj.checked?this.i10n.getConstant("imageLinkAriaLabel"):null,u=this.i10n.getConstant("dialogUpdate"),m={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,selectParent:e.selectParent,link:d,target:p,ariaLabel:h};this.dialogObj.setProperties({height:"inherit",width:"290px",header:this.parent.localeObj.getConstant("imageInsertLinkHeader"),content:o,buttons:[{click:function(e){i.insertlink(m)},buttonModel:{content:u,cssClass:"e-flat e-update-link"+this.parent.getCssClass(!0),isPrimary:!0}}],cssClass:this.dialogObj.cssClass+" e-rte-img-link-dialog"}),t.isNullOrUndefined(this.parent.cssClass)||this.dialogObj.setProperties({cssClass:this.parent.cssClass}),t.isNullOrUndefined(n)||(d.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"+this.parent.getCssClass(!0)}),r=this.i10n.getConstant("alternateHeader"),s=this.i10n.getConstant("dialogUpdate"),a=null===e.selectNode[0].getAttribute("alt")?"":e.selectNode[0].getAttribute("alt"),l=T('<div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" spellcheck="false" class="e-input e-img-alt'+this.parent.getCssClass(!0)+'" placeholder="'+i+'"/></div>');l.querySelector("input").setAttribute("value",a),o.appendChild(l);var d=o.querySelector(".e-img-alt"),c={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,alt:d};this.dialogObj.setProperties({height:"inherit",width:"290px",header:r,content:o,buttons:[{click:function(e){n.insertAlt(c)},buttonModel:{content:s,cssClass:"e-flat e-update-alt"+this.parent.getCssClass(!0),isPrimary:!0}}],cssClass:this.dialogObj.cssClass+" e-rte-img-alt-dialog"}),t.isNullOrUndefined(this.parent.cssClass)||this.dialogObj.setProperties({cssClass:this.parent.cssClass}),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,ariaLabel:i.checkBoxObj.checked?this.i10n.getConstant("imageLinkAriaLabel"):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,ariaLabel:i.checkBoxObj.checked?this.i10n.getConstant("imageLinkAriaLabel"):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:fe,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,i="";if(!t.isNullOrUndefined(this.parent.insertImageSettings.removeUrl)&&""!==this.parent.insertImageSettings.removeUrl){i=e.indexOf("http://")>-1||e.indexOf("https://")>-1?e:new URL(e,document.baseURI).href,this.removingImgName=i.replace(/^.*[\\\/]/,"");var o=new XMLHttpRequest;o.addEventListener("readystatechange",function(){4===this.readyState&&200===this.status&&n.triggerPost(this.response)}),o.open("GET",i),o.responseType="blob",o.send()}},n.prototype.triggerPost=function(e){var n=this.parent.insertImageSettings.removeUrl;if(!t.isNullOrUndefined(n)&&""!==n){var i=new File([e],this.removingImgName),o=new t.Ajax(n,"POST",!0,null),r=new FormData;r.append("UploadFiles",i),o.send(r)}},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,"."+fe))){this.captionEle=this.parent.createElement("span",{className:fe+" e-rte-img-caption"+this.parent.getCssClass(!0),attrs:{contenteditable:"false",draggable:"false",style:"width:"+this.parent.insertImageSettings.width}});var o=this.parent.createElement("span",{className:"e-img-wrap"+this.parent.getCssClass(!0)}),r=this.parent.createElement("span",{className:"e-img-inner"+this.parent.getCssClass(!0),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(be)&&t.addClass([this.captionEle],"e-caption-inline"),n.classList.contains(ge)&&t.addClass([this.captionEle],ge),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,"."+fe)),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:t.Browser.isDevice?"300px":"inherit",width:"290px",header:i,content:r,buttons:[{click:function(e){n.insertSize(s)},buttonModel:{content:o,cssClass:"e-flat e-update-size"+this.parent.getCssClass(!0),isPrimary:!0}}],cssClass:this.dialogObj.cssClass+" e-rte-img-size-dialog"}),t.isNullOrUndefined(this.parent.cssClass)||this.dialogObj.setProperties({cssClass:this.parent.cssClass}),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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"340px",isModal:t.Browser.isDevice,buttons:[{click:this.insertImageUrl.bind(l),buttonModel:{content:o,cssClass:"e-flat e-insertImage"+this.parent.getCssClass(!0),isPrimary:!0,disabled:"Markdown"!==this.parent.editorMode}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0)});(!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"+this.parent.getCssClass(!0)}),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(),this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.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;if("IMG"===n.nodeName&&(this.imgEle=n),this.parent&&("#document"!==n.nodeName&&(this.parent.currentTarget=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)&&!t.closest(n,"#"+this.parent.getID()+"_toolbar_Image")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_Image"))&&(e.offsetX>e.target.clientWidth||e.offsetY>e.target.clientHeight||(this.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,E(this.parent.element,"focusout"))),this.parent.iframeSettings.enable&&!t.isNullOrUndefined(this.parent.currentTarget)&&"IMG"===this.parent.currentTarget.nodeName||"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")||this.parent.iframeSettings.enable&&"IMG"===this.parent.currentTarget.nodeName||("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=""),"IMG"!==n.tagName))for(var i=this.contentModule.getEditPanel().querySelectorAll("img"),o=0;o<i.length;o++)t.removeClass([i[o]],"e-img-focus"),t.removeClass([i[o]],"e-resize"),i[o].style.maxWidth=""},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 n=this,i=this.parent.createElement("div",{className:"imgUrl"+this.parent.getCssClass(!0)}),o=this.i10n.getConstant("imageUrl");if(this.inputUrl=this.parent.createElement("input",{className:"e-input e-img-url"+this.parent.getCssClass(!0),attrs:{placeholder:o,spellcheck:"false","aria-label":this.i10n.getConstant("imageLinkHeader")}}),this.inputUrl.addEventListener("input",function(){t.isNullOrUndefined(n.inputUrl)||(0===n.inputUrl.value.length?n.dialogObj.getButtons(0).element.disabled=!0:n.dialogObj.getButtons(0).element.removeAttribute("disabled"))}),e.selectNode&&"IMG"===e.selectNode[0].nodeName){var r=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);this.inputUrl.value=e.selectNode[0].src.match(r)?e.selectNode[0].src:""}return i.appendChild(this.inputUrl),i},n.prototype.insertImageUrl=function(e){var n=this.selfImage;n.isImgUploaded=!1;var i=n.inputUrl.value;if("Markdown"===n.parent.editorMode&&""===i&&(i="http://"),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?be:ge,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?be:ge,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=this,i=e.selectNode[0],o=this.i10n.getConstant("imageHeight"),s=this.i10n.getConstant("imageWidth"),a=this.parent.createElement("div",{className:"e-img-sizewrap"+this.parent.getCssClass(!0)}),l=!t.isNullOrUndefined(this.changedWidthValue)||"auto"!==i.style.width.toString()&&""===i.style.width?t.isNullOrUndefined(this.changedWidthValue)?parseInt(i.getClientRects()[0].width.toString(),10).toString():this.changedWidthValue:i.style.width,d=!t.isNullOrUndefined(this.changedHeightValue)||"auto"!==i.style.height.toString()&&""===i.style.height?t.isNullOrUndefined(this.changedHeightValue)?parseInt(i.getClientRects()[0].height.toString(),10).toString():this.changedHeightValue:i.style.height;this.changedWidthValue=null,this.changedHeightValue=null;var c=T('<div class="e-rte-label'+this.parent.getCssClass(!0)+'"><label>'+s+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" id="imgwidth" class="e-img-width'+this.parent.getCssClass(!0)+'"/></div><div class="e-rte-label'+this.parent.getCssClass(!0)+'"><label>'+o+'</label></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"> <input type="text" id="imgheight" class="e-img-height'+this.parent.getCssClass(!0)+'"/></div>');return c.getElementById("imgwidth").setAttribute("value",l),c.getElementById("imgheight").setAttribute("value",d),a.appendChild(c),this.widthNum=new r.TextBox({value:t.formatUnit(l),enableRtl:this.parent.enableRtl,cssClass:this.parent.getCssClass(),input:function(e){n.inputWidthValue=t.formatUnit(n.inputValue(e.value))}}),this.widthNum.createElement=this.parent.createElement,this.widthNum.appendTo(a.querySelector("#imgwidth")),this.heightNum=new r.TextBox({value:t.formatUnit(d),enableRtl:this.parent.enableRtl,cssClass:this.parent.getCssClass(),input:function(e){n.inputHeightValue=t.formatUnit(n.inputValue(e.value))}}),this.heightNum.createElement=this.parent.createElement,this.heightNum.appendTo(a.querySelector("#imgheight")),a},n.prototype.inputValue=function(e){return"auto"===e||-1!==e.indexOf("%")||-1!==e.indexOf("px")||e.match(/(\d+)/)?e:"auto"},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;this.changedWidthValue=this.inputWidthValue,this.changedHeightValue=this.inputHeightValue;var i=n.querySelector(".e-img-width").value,o=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"+this.parent.getCssClass(!0)}),h=this.i10n.getConstant("imageDeviceUploadMessage"),u=this.i10n.getConstant("imageUploadMessage"),m=this.parent.createElement("span",{className:"e-droptext"+this.parent.getCssClass(!0)}),g=this.parent.createElement("span",{className:"e-rte-upload-text"+this.parent.getCssClass(!0),innerHTML:t.Browser.isDevice?h:u});m.appendChild(g);var f=this.parent.createElement("button",{className:"e-browsebtn"+this.parent.getCssClass(!0),id:this.rteID+"_insertImage",attrs:{autofocus:"true",type:"button"}});m.appendChild(f),c.appendChild(m);var b=this.i10n.getConstant("browse");this.browseButton=new s.Button({content:b,enableRtl:this.parent.enableRtl}),this.browseButton.isStringTemplate=!0,this.browseButton.createElement=this.parent.createElement,this.browseButton.appendTo(f);var v=t.Browser.isDevice?m:f;t.EventHandler.add(v,"click",this.fileSelect,this);var C=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"},className:this.parent.getCssClass()});c.appendChild(C);var y,N,S;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,cssClass:this.parent.getCssClass(),allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),selected:function(e){a.isImgUploaded=!0,N=e,S=e.filesData,o.parent.trigger("imageSelected",N,function(e){if(!e.cancel&&(o.checkExtension(e.filesData[0]),y=e.filesData[0].name,"HTML"===o.parent.editorMode&&t.isNullOrUndefined(o.parent.insertImageSettings.path))){var r=new FileReader;r.addEventListener("load",function(e){var s="Base64"===o.parent.insertImageSettings.saveFormat?r.result:URL.createObjectURL(B(r.result));a.uploadUrl={url:s,selection:n,altText:y,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"),t.isNullOrUndefined(a.parent.insertImageSettings.saveUrl)&&o.isAllowedTypes&&!t.isNullOrUndefined(o.dialogObj)&&o.dialogObj.getButtons(0).element.removeAttribute("disabled")}),r.readAsDataURL(e.filesData[0].rawFile)}})},beforeUpload:function(e){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:y,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")}"upload"!==e.operation||t.isNullOrUndefined(o.dialogObj)||o.dialogObj.getButtons(0).element.removeAttribute("disabled")})},failure:function(e){o.parent.trigger("imageUploadFailed",e)},removing:function(e){o.parent.trigger("imageRemoving",e,function(e){a.isImgUploaded=!1,o.dialogObj.getButtons(0).element.disabled=!0,a.inputUrl.removeAttribute("disabled"),a.uploadUrl&&(a.uploadUrl.url="")})}}),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.isAllowedTypes=!1):this.isAllowedTypes=!0)},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(X,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(X,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");this.parent.notify("drop",{args:e}),n&&n.classList.add("e-hide");var i=this.parent.inputElement.ownerDocument.querySelector(".e-rte-drag-image");if(e.dataTransfer.files.length>0&&null===i){if(e.dataTransfer.files.length>1)return;for(var o=e.dataTransfer.files,r=o[0].name,s=r.substring(r.lastIndexOf(".")),a=this.parent.insertImageSettings.allowedTypes,l=0;l<a.length;l++)if(s.toLocaleLowerCase()===a[l].toLowerCase())if(this.parent.insertImageSettings.saveUrl)this.onSelect(e);else{p={args:e,text:"",file:o[0]};e.preventDefault(),this.imagePaste(p)}}else{var d=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());if(i&&"IMG"===i.tagName){i.nextElementSibling&&i.nextElementSibling.classList.contains("e-img-inner")?d.insertNode(i.parentElement.parentElement):d.insertNode(i),i.classList.remove("e-rte-drag-image");var c={elements:[i]};i.addEventListener("load",function(){t.parent.trigger("actionComplete",c)}),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());var p=e;this.resizeStart(p,i),this.hideImageQuickToolbar()}}},n.prototype.onSelect=function(e){var n=this,i=this,o=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),r=this.parent.createElement("ul",{className:"e-upload-files"});this.parent.element.appendChild(r);var s={name:"",size:0,status:"",statusCode:"",type:"",rawFile:e.dataTransfer.files[0],validationMessages:{}},a=this.parent.createElement("IMG");a.style.opacity="0.5",a.classList.add(Ne),a.classList.add(be),a.classList.add("e-resize");var l=s.rawFile,d=new FileReader;d.addEventListener("load",function(){var e=URL.createObjectURL(B(d.result));a.src="Blob"===i.parent.insertImageSettings.saveFormat?e:d.result}),l&&d.readAsDataURL(l),o.insertNode(a),this.uploadMethod(e,a);var c={elements:[a]};a.addEventListener("load",function(){n.parent.trigger("actionComplete",c)}),t.detach(r)},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,i.parent.inlineMode.enable||i.parent.toolbarModule.baseToolbar.toolbarObj.disable(!1)}}),this.popupObj.element.style.display="none",t.addClass([this.popupObj.element],"e-popup-open"),t.addClass([this.popupObj.element],"e-rte-upload-popup"),t.isNullOrUndefined(this.parent.cssClass)||t.addClass([this.popupObj.element],this.parent.cssClass);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),this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl,removeUrl:this.parent.insertImageSettings.removeUrl},cssClass:"e-rte-dialog-upload"+this.parent.getCssClass(!0),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(),i.quickToolObj.imageQTBar.hidePopup(),setTimeout(function(){i.uploadObj.destroy()},900)},beforeUpload:function(e){i.parent.trigger("beforeImageUpload",e),i.parent.inlineMode.enable||i.parent.toolbarModule.baseToolbar.toolbarObj.disable(!0)},uploading:function(e){i.parent.isServerRendered||(s=!0,i.parent.trigger("imageUploading",e,function(e){e.cancel?(t.isNullOrUndefined(n)||t.detach(n),t.isNullOrUndefined(i.popupObj.element)||t.detach(i.popupObj.element)):i.parent.inputElement.contentEditable="false"}))},selected:function(e){s&&(e.cancel=!0)},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){if("cancel"!==t.operation){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]),this.popupObj.element.querySelector(".e-rte-dialog-upload .e-file-select-wrap").style.display="none",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?be:ge,url:"Base64"!==n.parent.insertImageSettings.saveFormat&&t.isNullOrUndefined(e.callBack)?URL.createObjectURL(B(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(){t.isNullOrUndefined(this.parent)||(this.prevSelectedImgEle=void 0,this.removeEventListener())},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.getModuleName=function(){return"image"},n}(),ei=function(){function n(e,t){this.isAudioUploaded=!1,this.isAllowedTypes=!0,this.deletedAudio=[],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(G,this.onKeyDown,this),this.parent.on(K,this.onKeyUp,this),this.parent.on("insertAudio",this.insertingAudio,this),this.parent.on(V,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on("showAudioDialog",this.showDialog,this),this.parent.on("closeAudioDialog",this.closeDialog,this),this.parent.on("audio-toolbar-action",this.onToolbarAction,this),this.parent.on("dropDownSelect",this.alignmentSelect,this),this.parent.on("delete",this.deleteAudio,this),this.parent.on("editAreaClick",this.editAreaClickHandler,this),this.parent.on("insertCompleted",this.showAudioQuickToolbar,this),this.parent.on(Q,this.removeEventListener,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(G,this.onKeyDown),this.parent.off(K,this.onKeyUp),this.parent.off("insertAudio",this.insertingAudio),this.parent.off(V,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off("showAudioDialog",this.showDialog),this.parent.off("closeAudioDialog",this.closeDialog),this.parent.off("audio-toolbar-action",this.onToolbarAction),this.parent.off("dropDownSelect",this.alignmentSelect),this.parent.off("delete",this.deleteAudio),this.parent.off("editAreaClick",this.editAreaClickHandler),this.parent.off("insertCompleted",this.showAudioQuickToolbar),this.parent.off(Q,this.removeEventListener),t.isNullOrUndefined(this.contentModule)||(t.EventHandler.remove(this.parent.contentModule.getEditPanel(),t.Browser.touchStartEvent,this.touchStart),t.EventHandler.remove(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.audioClick),t.EventHandler.remove(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick)))},n.prototype.afterRender=function(){this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),t.EventHandler.add(this.parent.contentModule.getEditPanel(),t.Browser.touchStartEvent,this.touchStart,this),t.EventHandler.add(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.audioClick,this),t.EventHandler.add(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick,this)},n.prototype.checkAudioBack=function(e){"#text"===e.startContainer.nodeName&&0===e.startOffset&&!t.isNullOrUndefined(e.startContainer.previousSibling)&&this.isAudioElem(e.startContainer.previousSibling)?this.deletedAudio.push(e.startContainer.previousSibling):"#text"!==e.startContainer.nodeName&&!t.isNullOrUndefined(e.startContainer.childNodes[e.startOffset-1])&&this.isAudioElem(e.startContainer.childNodes[e.startOffset-1])&&this.deletedAudio.push(e.startContainer.childNodes[e.startOffset-1])},n.prototype.checkAudioDel=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])&&this.isAudioElem(e.startContainer.childNodes[e.startOffset])&&this.deletedAudio.push(e.startContainer.childNodes[e.startOffset]):this.deletedAudio.push(e.startContainer.nextSibling)},n.prototype.undoStack=function(e){if("undo"===e.subCommand.toLowerCase()||"redo"===e.subCommand.toLowerCase())for(var t=0;t<this.parent.formatter.getUndoRedoStack().length;t++){var n=this.parent.createElement("div"),i=this.parent.formatter.getUndoRedoStack()[t].text;n.appendChild(i.cloneNode(!0))}},n.prototype.touchStart=function(e,t){this.parent.readonly||(this.prevSelectedAudEle=this.audEle)},n.prototype.onToolbarAction=function(e){switch(P()&&this.parent.notify(J,{}),e.args.item.subCommand){case"AudioReplace":this.parent.notify("insertAudio",e);break;case"AudioRemove":this.parent.notify("delete",e)}},n.prototype.onKeyUp=function(e){if(!t.isNullOrUndefined(this.deletedAudio)&&this.deletedAudio.length>0)for(var n=0;n<this.deletedAudio.length-1;n++){var i={element:this.deletedAudio[n].querySelector("audio"),src:this.deletedAudio[n].querySelector("source").getAttribute("src")};this.parent.trigger("afterMediaDelete",i)}},n.prototype.onKeyDown=function(e){var n,i,o,r,s=e.args;this.deletedAudio=[];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++)this.isAudioElem(d[c])&&this.deletedAudio.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.checkAudioBack(n):46===s.which&&"Delete"===s.code&&p&&this.checkAudioDel(n)}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&"KeyK"!==s.code&&(n=this.parent.formatter.editorManager.nodeSelection.getRange(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)&&this.isAudioElem(r[0])&&r[0].parentElement)){var h=r[0].parentElement.childNodes[0];this.parent.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),h,h,h.textContent.length,h.textContent.length),t.removeClass([r[0]],"e-audio-focus"),this.quickToolObj.audioQTBar.hidePopup()}if(!s.ctrlKey||89!==s.keyCode&&90!==s.keyCode||this.undoStack({subCommand:90===s.keyCode?"undo":"redo"}),(8===s.keyCode||46===s.keyCode)&&o&&this.isAudioElem(o[0])&&o.length<1){t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),s.preventDefault();var u={selectNode:o,selection:i,selectParent:r,args:{item:{command:"Audios",subCommand:"AudioRemove"},originalEvent:s}};this.deleteAudio(u,s.keyCode)}switch(s.action){case"escape":t.isNullOrUndefined(this.dialogObj)||this.dialogObj.close();break;case"backspace":case"delete":for(c=0;c<this.deletedAudio.length;c++){var m=this.deletedAudio[c].src;this.audioRemovePost(m)}"Markdown"!==this.parent.editorMode&&(3===n.startContainer.nodeType?"Backspace"===s.code?n.startContainer.previousElementSibling&&0===n.startOffset&&n.startContainer.previousElementSibling.classList.contains("e-audio-wrap")&&t.detach(n.startContainer.previousElementSibling):n.startContainer.nextElementSibling&&n.endContainer.textContent.length===n.endOffset&&n.startContainer.nextElementSibling.classList.contains("e-audio-wrap")&&t.detach(n.startContainer.nextElementSibling):1===n.startContainer.nodeType&&n.startContainer.classList&&(n.startContainer.classList.contains("e-audio-wrap")||n.startContainer.classList.contains("e-clickelem")||n.startContainer.classList.contains("e-video-clickelem"))&&t.detach(n.startContainer));break;case"insert-audio":t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),this.openDialog(!0,s,i,o,r),s.preventDefault()}s.ctrlKey&&"a"===s.key&&this.handleSelectAll()},n.prototype.handleSelectAll=function(){var e=this.parent.inputElement.querySelectorAll(".e-audio-focus");t.removeClass(e,"e-audio-focus")},n.prototype.openDialog=function(e,n,i,o,r){var s,a,l,d;e||t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)?(a=i,l=o,d=r):(s=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),a=this.parent.formatter.editorManager.nodeSelection.save(s,this.parent.contentModule.getDocument()),l=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(s),d=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(s)),"HTML"===this.parent.editorMode&&this.insertAudio({args:{item:{command:"Audios",subCommand:"Audio"},originalEvent:n,name:e?null:"showDialog"},selectNode:l,selection:a,selectParent:d})},n.prototype.showDialog=function(){this.openDialog(!1)},n.prototype.closeDialog=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.deleteAudio=function(e,n){if(this.isAudioElem(e.selectNode[0])){this.audEle&&(3===e.selectNode[0].nodeType?e.selectNode[0]=this.audEle:this.isAudioElem(e.selectNode[0])&&(e.selectNode[0]=e.selectNode[0].classList.contains("e-audio-wrap")?e.selectNode[0]:e.selectNode[0].parentElement));var i={element:e.selectNode[0].querySelector("audio"),src:e.selectNode[0].querySelector("source").getAttribute("src")};0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),e.selection.restore(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.audioRemovePost(i.src),this.quickToolObj&&document.body.contains(this.quickToolObj.audioQTBar.element)&&this.quickToolObj.audioQTBar.hidePopup(),t.isNullOrUndefined(n)&&this.parent.trigger("afterMediaDelete",i)}},n.prototype.audioRemovePost=function(e){var n=this,i="";if(!t.isNullOrUndefined(this.parent.insertAudioSettings.removeUrl)&&""!==this.parent.insertAudioSettings.removeUrl){i=e.indexOf("http://")>-1||e.indexOf("https://")>-1?e:new URL(e,document.baseURI).href,this.removingAudioName=i.replace(/^.*[\\\/]/,"");var o=new XMLHttpRequest;o.addEventListener("readystatechange",function(){4===this.readyState&&200===this.status&&n.triggerPost(this.response)}),o.open("GET",i),o.responseType="blob",o.send()}},n.prototype.triggerPost=function(e){var n=this.parent.insertAudioSettings.removeUrl;if(!t.isNullOrUndefined(n)&&""!==n){var i=new File([e],this.removingAudioName),o=new t.Ajax(n,"POST",!0,null),r=new FormData;r.append("UploadFiles",i),o.send(r)}},n.prototype.audioClick=function(e){t.Browser.isDevice&&(this.isAudioElem(e.target)?(this.contentModule.getEditPanel().setAttribute("contenteditable","false"),e.target.focus()):this.parent.readonly||this.contentModule.getEditPanel().setAttribute("contenteditable","true")),this.isAudioElem(e.target)&&(this.audEle=e.target.querySelector("audio"),e.preventDefault())},n.prototype.onDocumentClick=function(e){var n=e.target;this.isAudioElem(n)&&(this.audEle=n.querySelector("audio")),!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_Audio")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_Audio"))&&(e.offsetX>e.target.clientWidth||e.offsetY>e.target.clientHeight||(this.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,E(this.parent.element,"focusout"))),this.contentModule.getEditPanel().querySelector(".e-audio-focus")&&(this.isAudioElem(e.target)||t.isNullOrUndefined(this.audEle)?t.isNullOrUndefined(this.prevSelectedAudEle)||this.prevSelectedAudEle===n||(this.prevSelectedAudEle.style.outline=""):this.audEle.style.outline="")},n.prototype.alignmentSelect=function(e){var n=e.item;if(document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))&&"Audios"===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=[this.audEle]};switch(0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),n.subCommand){case"Inline":this.inline(r);break;case"Break":this.break(r)}this.quickToolObj&&document.body.contains(this.quickToolObj.audioQTBar.element)&&(this.quickToolObj.audioQTBar.hidePopup(),t.removeClass([o[0]],"e-audio-focus"))}},n.prototype.break=function(e){if("AUDIO"===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("AUDIO"===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.editAreaClickHandler=function(n){if(this.parent.readonly)return void this.hideAudioQuickToolbar();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)&&this.isAudioElem(i.target)&&(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.audioQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var s=this.quickToolObj.audioQTBar.element.classList.contains("e-rte-pop");if(this.isAudioElem(r)&&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),P()&&this.parent.notify(Y,n),r.querySelector("audio").style.outline="2px solid #4a90e2",this.showAudioQuickToolbar({args:i,type:"Audios",elements:[i.target]})}else this.hideAudioQuickToolbar()}},n.prototype.isAudioElem=function(e){return!(!e||3===e.nodeType||"BR"===e.nodeName||!e.classList||!e.classList.contains("e-audio-wrap")&&!e.classList.contains("e-clickelem"))},n.prototype.showAudioQuickToolbar=function(e){var n=this;if(!("Audios"!==e.type||t.isNullOrUndefined(this.parent.quickToolbarModule)||t.isNullOrUndefined(this.parent.quickToolbarModule.audioQTBar)||t.isNullOrUndefined(e.args))){this.quickToolObj=this.parent.quickToolbarModule;var i=e.args,o=e.elements;[].forEach.call(e.elements,function(e,t){0===t&&(o=e)}),this.isAudioElem(o)&&(t.addClass([o.querySelector("audio")],["e-audio-focus"]),o.querySelector("audio").style.outline="2px solid #4a90e2"),this.parent.quickToolbarModule.audioQTBar&&(e.isNotify?setTimeout(function(){n.parent.formatter.editorManager.nodeSelection.Clear(n.contentModule.getDocument()),n.parent.formatter.editorManager.nodeSelection.setSelectionContents(n.contentModule.getDocument(),o),n.quickToolObj.audioQTBar.showPopup(i.pageX-50,o.getBoundingClientRect().top+34,o)},400):this.quickToolObj.audioQTBar.showPopup(i.pageX-50,o.getBoundingClientRect().top+34,o))}},n.prototype.hideAudioQuickToolbar=function(){t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-audio-focus"))||(t.removeClass([this.contentModule.getEditPanel().querySelector(".e-audio-focus")],"e-audio-focus"),t.isNullOrUndefined(this.audEle)||(this.audEle.style.outline=""),this.quickToolObj&&this.quickToolObj.audioQTBar&&document.body.contains(this.quickToolObj.audioQTBar.element)&&this.quickToolObj.audioQTBar.hidePopup())},n.prototype.insertingAudio=function(e){if(this.insertAudio(e),!t.isNullOrUndefined(this.dialogObj)){this.dialogObj.element.style.maxHeight="inherit";var n=this.dialogObj.element.querySelector(".e-audio-content");t.isNullOrUndefined(this.parent.insertAudioSettings.path)&&"HTML"!==this.parent.editorMode?n.querySelector(".e-audio-url").focus():document.getElementById(this.rteID+"_insertAudio").focus()}},n.prototype.insertAudio=function(e){var n=this;if(this.dialogObj)return void this.dialogObj.hide({returnValue:!0});var i=this.parent.createElement("div",{className:"e-rte-audio-dialog",id:this.rteID+"_audio"});this.parent.element.appendChild(i);var o=this.i10n.getConstant("dialogInsert"),r=this.i10n.getConstant("dialogCancel"),s=this.i10n.getConstant("audioHeader"),a=e.selection,l={selfAudio: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",isModal:t.Browser.isDevice,buttons:[{click:this.insertAudioUrl.bind(l),buttonModel:{content:o,cssClass:"e-flat e-insertAudio",isPrimary:!0,disabled:!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.isAudioUploaded&&n.uploadObj.removing(),n.parent.isBlur=!1,e&&e.event.returnValue&&"HTML"===n.parent.editorMode&&a.restore(),n.dialogObj.destroy(),t.detach(n.dialogObj.element),n.dialogRenderObj.close(e),n.dialogObj=null}},c=this.parent.createElement("div",{className:"e-audio-content"});t.isNullOrUndefined(this.parent.insertAudioSettings.path)&&"HTML"!==this.parent.editorMode||c.appendChild(this.audioUpload(e));var p=this.parent.createElement("div",{className:"e-audioheader"}),h=this.i10n.getConstant("audioLinkHeader");"HTML"===this.parent.editorMode&&(p.innerHTML=h),c.appendChild(p),c.appendChild(this.audioUrlPopup(e)),e.selectNode&&1===e.selectNode[0].nodeType&&this.isAudioElem(e.selectNode[0])?(d.header=this.parent.localeObj.getConstant("editAudioHeader"),d.content=c):d.content=c,this.dialogObj=this.dialogRenderObj.render(d),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(i),e.selectNode&&1===e.selectNode[0].nodeType&&this.isAudioElem(e.selectNode[0])&&"insertAudio"===e.name&&(this.dialogObj.element.querySelector(".e-insertAudio").textContent=this.parent.localeObj.getConstant("dialogUpdate")),i.style.maxHeight="inherit",this.quickToolObj&&(this.quickToolObj.audioQTBar&&document.body.contains(this.quickToolObj.audioQTBar.element)&&this.quickToolObj.audioQTBar.hidePopup(),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup(),this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.hidePopup())},n.prototype.audioUrlPopup=function(e){var n=this,i=this.parent.createElement("div",{className:"audioUrl"}),o=this.i10n.getConstant("audioUrl");if(this.inputUrl=this.parent.createElement("input",{className:"e-input e-audio-url",attrs:{placeholder:o,spellcheck:"false","aria-label":this.i10n.getConstant("audioLinkHeader")}}),this.inputUrl.addEventListener("input",function(){t.isNullOrUndefined(n.inputUrl)||(0===n.inputUrl.value.length?n.dialogObj.getButtons(0).element.disabled=!0:n.dialogObj.getButtons(0).element.removeAttribute("disabled"))}),e.selectNode&&this.isAudioElem(e.selectNode[0])){var r=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi),s=e.selectNode[0].querySelector("source");this.inputUrl.value=s.src.match(r)?s.src:""}return i.appendChild(this.inputUrl),i},n.prototype.audioUpload=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-aud-uploadwrap e-droparea"}),h=this.i10n.getConstant("audioDeviceUploadMessage"),u=this.i10n.getConstant("audioUploadMessage"),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+"_insertAudio",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 C=t.Browser.isDevice?m:f;t.EventHandler.add(C,"click",this.fileSelect,this);var y=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"}});c.appendChild(y);var N,S,E;return this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertAudioSettings.saveUrl,removeUrl:this.parent.insertAudioSettings.removeUrl},dropArea:m,multiple:!1,enableRtl:this.parent.enableRtl,allowedExtensions:this.parent.insertAudioSettings.allowedTypes.toString(),selected:function(e){a.isAudioUploaded=!0,S=e,E=e.filesData,o.parent.trigger("fileSelected",S,function(e){if(!e.cancel&&(o.checkExtension(e.filesData[0]),N=e.filesData[0].name,"HTML"===o.parent.editorMode&&t.isNullOrUndefined(o.parent.insertAudioSettings.path))){var r=new FileReader;r.addEventListener("load",function(e){var s="Base64"===o.parent.insertAudioSettings.saveFormat?r.result:URL.createObjectURL(B(r.result));a.uploadUrl={url:s,selection:n,fileName:N,selectParent:i},a.inputUrl.setAttribute("disabled","true"),t.isNullOrUndefined(a.parent.insertAudioSettings.saveUrl)&&o.isAllowedTypes&&!t.isNullOrUndefined(o.dialogObj)&&o.dialogObj.getButtons(0).element.removeAttribute("disabled")}),r.readAsDataURL(e.filesData[0].rawFile)}})},beforeUpload:function(e){o.parent.trigger("beforeFileUpload",e)},uploading:function(e){o.parent.isServerRendered||o.parent.trigger("fileUploading",e)},success:function(e){o.parent.trigger("fileUploadSuccess",e,function(e){if(!t.isNullOrUndefined(o.parent.insertAudioSettings.path)){var r=o.parent.insertAudioSettings.path+e.file.name;a.uploadUrl={url:r,selection:n,fileName:N,selectParent:i},a.inputUrl.setAttribute("disabled","true")}"upload"!==e.operation||t.isNullOrUndefined(o.dialogObj)||o.dialogObj.getButtons(0).element.removeAttribute("disabled")})},failure:function(e){o.parent.trigger("fileUploadFailed",e)},removing:function(){o.parent.trigger("fileRemoving",e,function(e){a.isAudioUploaded=!1,o.dialogObj.getButtons(0).element.disabled=!0,a.inputUrl.removeAttribute("disabled"),a.uploadUrl&&(a.uploadUrl.url="")})}}),this.uploadObj.isStringTemplate=!0,this.uploadObj.createElement=this.parent.createElement,this.uploadObj.appendTo(y),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.isAllowedTypes=!1):this.isAllowedTypes=!0)},n.prototype.fileSelect=function(){return this.dialogObj.element.getElementsByClassName("e-file-select-wrap")[0].querySelector("button").click(),!1},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.dialogObj.hide({returnValue:!0}),this.isAudioUploaded&&this.uploadObj.removing()},n.prototype.insertAudioUrl=function(e){var n=this.selfAudio;n.isAudioUploaded=!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="HTML"===n.parent.editorMode?i.split("/")[i.split("/").length-1]:"",s={cssClass:"Inline"===n.parent.insertAudioSettings.layoutOption?"e-audio-inline":"e-audio-break",url:i,selection:this.selection,fileName:r,selectParent:this.selectParent};n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,s),n.dialogObj.hide({returnValue:!1})}}else n.uploadUrl.cssClass="Inline"===n.parent.insertAudioSettings.layoutOption?"e-audio-inline":"e-audio-break",n.dialogObj.hide({returnValue:!1}),n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,n.uploadUrl),n.uploadUrl.url=""},n.prototype.destroy=function(){this.prevSelectedAudEle=void 0,this.removeEventListener()},n.prototype.getModuleName=function(){return"audio"},n}(),ti=function(){function n(e,t){this.isVideoUploaded=!1,this.isAllowedTypes=!0,this.pageX=null,this.pageY=null,this.mouseX=null,this.deletedVid=[],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(G,this.onKeyDown,this),this.parent.on(K,this.onKeyUp,this),this.parent.on("insertVideo",this.insertingVideo,this),this.parent.on(V,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on("resize",this.onWindowResize,this),this.parent.on("showVideoDialog",this.showDialog,this),this.parent.on("closeVideoDialog",this.closeDialog,this),this.parent.on("dropDownSelect",this.alignmentSelect,this),this.parent.on("delete",this.deleteVideo,this),this.parent.on("video-toolbar-action",this.onToolbarAction,this),this.parent.on("editAreaClick",this.editAreaClickHandler,this),this.parent.on("iframe-click",this.onIframeMouseDown,this),this.parent.on("videoSize",this.videoSize,this),this.parent.on("insertCompleted",this.showVideoQuickToolbar,this),this.parent.on("clearDialogObj",this.clearDialogObj,this),this.parent.on(Q,this.removeEventListener,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(G,this.onKeyDown),this.parent.off(K,this.onKeyUp),this.parent.off("insertVideo",this.insertingVideo),this.parent.off("resize",this.onWindowResize),this.parent.off(V,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off("showVideoDialog",this.showDialog),this.parent.off("closeVideoDialog",this.closeDialog),this.parent.off("dropDownSelect",this.alignmentSelect),this.parent.off("delete",this.deleteVideo),this.parent.off("video-toolbar-action",this.onToolbarAction),this.parent.off("editAreaClick",this.editAreaClickHandler),this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off("videoSize",this.videoSize),this.parent.off("insertCompleted",this.showVideoQuickToolbar),this.parent.off("clearDialogObj",this.clearDialogObj),this.parent.off(Q,this.removeEventListener),t.isNullOrUndefined(this.contentModule)||(t.EventHandler.remove(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.videoClick),this.parent.formatter.editorManager.observer.off(ne,this.undoStack),this.parent.insertVideoSettings.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),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing))))},n.prototype.afterRender=function(){this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),t.EventHandler.add(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.videoClick,this),this.parent.insertVideoSettings.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))},n.prototype.clearDialogObj=function(){this.dialogObj&&(this.dialogObj.destroy(),t.detach(this.dialogObj.element),this.dialogObj=null)},n.prototype.onKeyUp=function(e){if(!t.isNullOrUndefined(this.deletedVid)&&this.deletedVid.length>0)for(var n=0;n<this.deletedVid.length;n++){var i={element:this.deletedVid[n],src:"IFRAME"!==this.deletedVid[n].tagName?this.deletedVid[n].querySelector("source").getAttribute("src"):this.deletedVid[n].src};this.parent.trigger("afterMediaDelete",i)}},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=this.parent.formatter.getUndoRedoStack()[n].text;i.appendChild(o.cloneNode(!0));var r=i.querySelectorAll("video");if(i.querySelector(".e-vid-resize")&&r.length>0){for(var s=0;s<r.length;s++)r[s].style.outline="";t.detach(i.querySelector(".e-vid-resize"));for(var a=i.cloneNode(!0),l=document.createDocumentFragment();a.firstChild;)l.appendChild(a.firstChild);this.parent.formatter.getUndoRedoStack()[n].text=l}}},n.prototype.onIframeMouseDown=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.videoSize=function(e){var n=this;if(("VIDEO"===e.selectNode[0].nodeName||this.isEmbedVidElem(e.selectNode[0]))&&(this.insertVideo(e),!t.isNullOrUndefined(this.dialogObj))){var i=this.i10n.getConstant("videoSizeHeader"),o=this.i10n.getConstant("dialogUpdate"),r=this.vidsizeInput(e),s={args:e.args,selfVideo:this,selection:e.selection,selectNode:e.selectNode};this.dialogObj.setProperties({height:"inherit",width:"290px",header:i,content:r,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.vidsizeInput=function(e){var n=this,i=e.selectNode[0],o=this.i10n.getConstant("videoHeight"),s=this.i10n.getConstant("videoWidth"),a=this.parent.createElement("div",{className:"e-video-sizewrap"}),l=!t.isNullOrUndefined(this.changedWidthValue)||"auto"!==i.style.width.toString()&&""===i.style.width?t.isNullOrUndefined(this.changedWidthValue)?parseInt(i.getClientRects()[0].width.toString(),10).toString():this.changedWidthValue:i.style.width,d=!t.isNullOrUndefined(this.changedHeightValue)||"auto"!==i.style.height.toString()&&""===i.style.height?t.isNullOrUndefined(this.changedHeightValue)?parseInt(i.getClientRects()[0].height.toString(),10).toString():this.changedHeightValue:i.style.height;this.changedWidthValue=null,this.changedHeightValue=null;var c=T('<div class="e-rte-label"><label>'+s+'</label></div><div class="e-rte-field"><input type="text" id="vidwidth" class="e-vid-width" value='+l+' /></div><div class="e-rte-label"><label>'+o+'</label></div><div class="e-rte-field"> <input type="text" id="vidheight" class="e-vid-height" value='+d+" /></div>");a.appendChild(c);var p=new r.TextBox({value:t.formatUnit(l),enableRtl:this.parent.enableRtl,input:function(e){n.inputWidthValue=t.formatUnit(e.value)}});p.createElement=this.parent.createElement,p.appendTo(a.querySelector("#vidwidth"));var h=new r.TextBox({value:t.formatUnit(d),enableRtl:this.parent.enableRtl,input:function(e){n.inputHeightValue=t.formatUnit(e.value)}});return h.createElement=this.parent.createElement,h.appendTo(a.querySelector("#vidheight")),a},n.prototype.insertSize=function(e){e.selection.restore();var t=e.selfVideo;0===t.parent.formatter.getUndoRedoStack().length&&t.parent.formatter.saveData();var n=t.dialogObj.element;this.changedWidthValue=this.inputWidthValue,this.changedHeightValue=this.inputHeightValue;var i=n.querySelector(".e-vid-width").value,o=n.parentElement.querySelector(".e-vid-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.vidResizeDiv&&(e.selectNode[0]="VIDEO"===e.selectNode[0].tagName||"IFRAME"===e.selectNode[0].tagName?e.selectNode[0]:e.selectNode[0].querySelector("iframe"),t.vidResizePos(e.selectNode[0],this.vidResizeDiv)),t.dialogObj.hide({returnValue:!0})},n.prototype.resizeEnd=function(e){this.resizeBtnInit(),this.videoEle.parentElement.style.cursor="auto",t.Browser.isDevice&&t.removeClass([e.target.parentElement],"e-mob-span");var n={event:e,requestType:"videos"};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(ne,this.undoStack,this),this.parent.formatter.saveData()},n.prototype.resizeStart=function(e,n){var i=this;if(!this.parent.readonly){var o=n||(this.isEmbedVidElem(e.target)?e.target.querySelector("iframe"):e.target);if(this.prevSelectedVidEle=this.videoEle,"VIDEO"===o.tagName||"IFRAME"===o.tagName){this.parent.preventDefaultResize(e);var r=o;this.vidResizeDiv&&this.contentModule.getEditPanel().contains(this.vidResizeDiv)&&t.detach(this.vidResizeDiv),this.videoResize(r)}if(o.classList.contains("e-rte-videoboxmark")){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.videoQTBar.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.vidResizeDiv)&&!this.vidResizeDiv.classList.contains("e-mob-span"))t.addClass([this.vidResizeDiv],"e-mob-span");else{var s={event:e,requestType:"videos"};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.videoClick=function(e){t.Browser.isDevice&&("VIDEO"===e.target.tagName||this.isEmbedVidElem(e.target)?(this.contentModule.getEditPanel().setAttribute("contenteditable","false"),e.target.focus()):this.parent.readonly||this.contentModule.getEditPanel().setAttribute("contenteditable","true")),("VIDEO"===e.target.tagName||this.isEmbedVidElem(e.target))&&e.preventDefault()},n.prototype.onCutHandler=function(){this.vidResizeDiv&&this.contentModule.getEditPanel().contains(this.vidResizeDiv)&&this.cancelResizeAction()},n.prototype.videoResize=function(e){this.resizeBtnInit(),this.videoEle=e,t.addClass([this.videoEle],"e-resize"),this.vidResizeDiv=this.parent.createElement("span",{className:"e-vid-resize",id:this.rteID+"_vidResize"}),this.vidResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-videoboxmark e-rte-topLeft",styles:"cursor: nwse-resize"})),this.vidResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-videoboxmark e-rte-topRight",styles:"cursor: nesw-resize"})),this.vidResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-videoboxmark e-rte-botLeft",styles:"cursor: nesw-resize"})),this.vidResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-videoboxmark e-rte-botRight",styles:"cursor: nwse-resize"})),t.Browser.isDevice&&t.addClass([this.vidResizeDiv],"e-mob-rte"),e.style.outline="2px solid #4a90e2",this.vidResizePos(e,this.vidResizeDiv),this.resizeVidDupPos(e),this.contentModule.getEditPanel().appendChild(this.vidResizeDiv),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.vidResizePos=function(e,n){if(!t.isNullOrUndefined(n)){var i=this.calcPos(e),o=i.top,r=i.left,s=0!==e.width&&"auto"!==e.width&&"NaN"!==e.width?e.width:e.getBoundingClientRect().width,a=0!==e.height&&"auto"!==e.height&&"NaN"!==e.height?e.height:e.getBoundingClientRect().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=parseInt(a.toString(),10)-l+o+"px",n.querySelector(".e-rte-botRight").style.left=parseInt(s.toString(),10)-(l-d)+r+"px",n.querySelector(".e-rte-botRight").style.top=parseInt(a.toString(),10)-l+o+"px",n.querySelector(".e-rte-topRight").style.left=parseInt(s.toString(),10)-(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,i=["TD","TH","TABLE","A"],o={top:0,left:0},r=e.ownerDocument,s=(e.offsetParent&&(e.offsetParent.classList.contains("e-video-clickelem")||i.indexOf(e.offsetParent.tagName)>-1)?t.closest(e,"#"+this.parent.getID()+"_rte-edit-view"):e.offsetParent)||r.documentElement;s&&(s===r.body||s===r.documentElement)&&"static"===s.style.position;)s=s.parentNode;return s&&s!==e&&1===s.nodeType&&(o=s.getBoundingClientRect()),e&&1===e.nodeType&&"IFRAME"===e.tagName?(n=e.getBoundingClientRect(),{top:n.top-o.top,left:n.left-o.left}):{top:e.offsetTop,left:e.offsetLeft}},n.prototype.setAspectRatio=function(e,n,i,o){var r=getComputedStyle(e);if(!t.isNullOrUndefined(r)){var s=""!==r.width?r.width.match(/^\d+(\.\d*)?%$/g)?parseFloat(r.width):parseInt(r.width,10):""!==e.style.width?e.style.width:e.width,a=""!==r.height?parseInt(r.height,10):""!==e.style.height?e.style.height:e.height;if(s=s.toString().match(/\b\d+(\.\d*)?(%|$)\b/g)?parseFloat(s.toString()):parseInt(s.toString(),10),a=a.toString().match(/\b\d+(\.\d*)?(%|$)\b/g)?parseFloat(a.toString()):parseInt(a.toString(),10),s>a)if(e.style.minWidth=0===this.parent.insertVideoSettings.minWidth?"200px":t.formatUnit(this.parent.insertVideoSettings.minWidth),e.style.minHeight=0===this.parent.insertVideoSettings.minHeight?"90px":t.formatUnit(this.parent.insertVideoSettings.minHeight),this.parent.insertVideoSettings.resizeByPercent)this.updateVidEleWidth(e,s,a,n,i);else if(""===e.style.width&&""!==e.style.height||""===r.width&&""!==r.height)e.style.height=i+"px";else if(""!==e.style.width&&""===e.style.height||""!==r.width&&""===r.height){l=s/a*i+s/a<this.parent.inputElement.getBoundingClientRect().right-32?s/a*i+s/a:this.parent.inputElement.getBoundingClientRect().right-32;e.style.width=l.toString()+"px"}else if(""!==e.style.width||""!==r.width){var l=s/a*i<this.parent.inputElement.getBoundingClientRect().right-32?s/a*i:this.parent.inputElement.getBoundingClientRect().right-32;e.style.width=l+"px",e.style.height=i+"px"}else e.setAttribute("width",parseInt((s/a*i+s/a).toString(),10).toString());else a>s?this.parent.insertVideoSettings.resizeByPercent?this.updateVidEleWidth(e,s,a,n,i):""!==e.style.width||""!==r.width?(e.style.width=n+"px",e.style.height=a/s*n+"px"):e.setAttribute("width",this.resizeBtnStat.botRight?(this.getPointX(o.event)-e.getBoundingClientRect().left).toString():n.toString()):this.parent.insertVideoSettings.resizeByPercent?(e.style.width=this.pixToPerc(n,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):(e.style.width=n+"px",e.style.height=n+"px")}},n.prototype.updateVidEleWidth=function(e,t,n,i,o){if(0!==parseInt(""+e.getBoundingClientRect().width,10)&&0!==parseInt(""+t,10)){var r=(e.offsetWidth+this.mouseX)/e.offsetWidth*("NaN"===parseFloat(e.style.width).toString()?e.offsetWidth/parseFloat(getComputedStyle(this.parent.element).width)*100:parseFloat(e.style.width));e.style.width=(r>3?r:3)+"%"}else e.style.width=t>n?this.pixToPerc(t/n*o,e.previousElementSibling||e.parentElement)+"%":this.pixToPerc(i/n*o,e.previousElementSibling||e.parentElement)+"%";e.style.height=null,e.removeAttribute("height")},n.prototype.pixToPerc=function(e,t){return e/parseFloat(getComputedStyle(t).width)*100},n.prototype.vidDupMouseMove=function(e,n,i){var o=this,r={event:i,requestType:"videos"};this.parent.trigger("resizing",r,function(i){if(i.cancel)o.cancelResizeAction();else{if(parseInt(o.parent.insertVideoSettings.minWidth,10)>=parseInt(e,10)||parseInt(o.parent.getInsertVidMaxWidth(),10)<=parseInt(e,10)&&t.isNullOrUndefined(o.videoEle.style.width))return;if(!o.parent.insertVideoSettings.resizeByPercent&&(parseInt(o.parent.insertVideoSettings.minHeight,10)>=parseInt(n,10)||parseInt(o.parent.insertVideoSettings.maxHeight,10)<=parseInt(n,10)))return;o.videoEle.parentElement.style.cursor="pointer",o.setAspectRatio(o.videoEle,parseInt(e,10),parseInt(n,10),r),o.resizeVidDupPos(o.videoEle),o.vidResizePos(o.videoEle,o.vidResizeDiv),o.parent.setContentHeight("",!1)}})},n.prototype.resizing=function(e){this.videoEle.offsetWidth>=this.parent.getInsertVidMaxWidth()&&(this.videoEle.style.maxHeight=this.videoEle.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.vidDupPos.width,10)+i,s=parseInt(this.vidDupPos.height,10)+o;this.pageX=t,this.pageY=n,this.mouseX=i,this.resizeBtnStat.botRight?this.vidDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.botLeft?this.vidDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topRight?this.vidDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topLeft&&this.vidDupMouseMove(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.videoEle&&this.vidResizeDiv&&this.contentModule.getEditPanel().contains(this.vidResizeDiv)&&(t.detach(this.vidResizeDiv),this.videoEle.style.outline="",this.vidResizeDiv=null,this.pageX=null,this.pageY=null)},n.prototype.resizeVidDupPos=function(e){this.vidDupPos={width:""!==e.style.width&&this.parent.insertVideoSettings&&!this.parent.insertVideoSettings.resizeByPercent?this.videoEle.style.width:"auto"!==e.width&&0!==e.width&&"NaN"!==e.width?e.width+"px":parseInt(getComputedStyle(e).width,10)+"px",height:""!==e.style.height?this.videoEle.style.height:"auto"!==e.height&&0!==e.height&&"NaN"!==e.height?e.height+"px":parseInt(getComputedStyle(e).height,10)+"px"}},n.prototype.resizeBtnInit=function(){return this.resizeBtnStat={botLeft:!1,botRight:!1,topRight:!1,topLeft:!1}},n.prototype.onToolbarAction=function(e){switch(P()&&this.parent.notify(J,{}),e.args.item.subCommand){case"VideoReplace":this.parent.notify("insertVideo",e);break;case"VideoRemove":this.parent.notify("delete",e);break;case"VideoDimension":this.parent.notify("videoSize",e)}},n.prototype.onKeyDown=function(e){var n,i,o,r,s=e.args;this.deletedVid=[];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++)"VIDEO"!==d[c].nodeName&&"IFRAME"!==d[c].nodeName||this.deletedVid.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.checkVideoBack(n):46===s.which&&"Delete"===s.code&&p&&this.checkVideoDel(n)}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&"KeyK"!==s.code&&(n=this.parent.formatter.editorManager.nodeSelection.getRange(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)&&(!t.isNullOrUndefined(r[0])&&"VIDEO"===r[0].tagName||this.isEmbedVidElem(r[0]))&&r[0].parentElement)){var h=r[0].parentElement.childNodes[0];this.contentModule.getEditPanel().querySelector(".e-vid-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-video-focus"),this.quickToolObj.videoQTBar.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&&("VIDEO"===o[0].nodeName||this.isEmbedVidElem(o[0]))&&o.length<1){t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),s.preventDefault();var u={selectNode:o,selection:i,selectParent:r,args:{item:{command:"Videos",subCommand:"VideoRemove"},originalEvent:s}};this.deleteVideo(u,s.keyCode)}this.parent.contentModule.getEditPanel().querySelector(".e-vid-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.deletedVid.length;c++){var m=this.deletedVid[c].src;this.videoRemovePost(m)}"Markdown"!==this.parent.editorMode&&(3===n.startContainer.nodeType?"Backspace"===s.code?n.startContainer.previousElementSibling&&0===n.startOffset&&n.startContainer.previousElementSibling.classList.contains("e-video-wrap")&&t.detach(n.startContainer.previousElementSibling):n.startContainer.nextElementSibling&&n.endContainer.textContent.length===n.endOffset&&n.startContainer.nextElementSibling.classList.contains("e-video-wrap")&&t.detach(n.startContainer.nextElementSibling):1===n.startContainer.nodeType&&n.startContainer.classList&&n.startContainer.classList.contains("e-video-wrap")&&t.detach(n.startContainer));break;case"insert-video":t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)||(i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument())),this.openDialog(!0,s,i,o,r),s.preventDefault()}s.ctrlKey&&"a"===s.key&&this.handleSelectAll()},n.prototype.handleSelectAll=function(){this.cancelResizeAction();var e=this.parent.inputElement.querySelectorAll(".e-video-focus");t.removeClass(e,"e-video-focus")},n.prototype.openDialog=function(e,n,i,o,r){var s,a,l,d;e||t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)?(a=i,l=o,d=r):(s=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),a=this.parent.formatter.editorManager.nodeSelection.save(s,this.parent.contentModule.getDocument()),l=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(s),d=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(s)),"HTML"===this.parent.editorMode&&this.insertVideo({args:{item:{command:"Videos",subCommand:"Video"},originalEvent:n,name:e?null:"showDialog"},selectNode:l,selection:a,selectParent:d})},n.prototype.showDialog=function(){this.openDialog(!1)},n.prototype.closeDialog=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.checkVideoBack=function(e){"#text"!==e.startContainer.nodeName||0!==e.startOffset||t.isNullOrUndefined(e.startContainer.previousSibling)||"VIDEO"!==e.startContainer.previousSibling.nodeName&&!this.isEmbedVidElem(e.startContainer.previousSibling)?"#text"===e.startContainer.nodeName||t.isNullOrUndefined(e.startContainer.childNodes[e.startOffset-1])||"VIDEO"!==e.startContainer.childNodes[e.startOffset-1].nodeName&&!this.isEmbedVidElem(e.startContainer.childNodes[e.startOffset-1])||this.deletedVid.push(e.startContainer.childNodes[e.startOffset-1]):this.deletedVid.push(e.startContainer.previousSibling)},n.prototype.checkVideoDel=function(e){"#text"!==e.startContainer.nodeName||e.startOffset!==e.startContainer.textContent.length||t.isNullOrUndefined(e.startContainer.nextSibling)||"VIDEO"!==e.startContainer.nextSibling.nodeName&&!this.isEmbedVidElem(e.startContainer.nextSibling)?"#text"===e.startContainer.nodeName||t.isNullOrUndefined(e.startContainer.childNodes[e.startOffset])||"VIDEO"!==e.startContainer.childNodes[e.startOffset].nodeName&&!this.isEmbedVidElem(e.startContainer.childNodes[e.startOffset])||this.deletedVid.push(e.startContainer.childNodes[e.startOffset]):this.deletedVid.push(e.startContainer.nextSibling)},n.prototype.alignmentSelect=function(e){var n=e.item;if(document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))&&"Videos"===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="VIDEO"===o[0].nodeName?o:[this.videoEle]};switch(0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),n.subCommand){case"JustifyLeft":case"JustifyCenter":case"JustifyRight":this.alignVideo(r,n.subCommand);break;case"Inline":this.inline(r);break;case"Break":this.break(r)}this.quickToolObj&&document.body.contains(this.quickToolObj.videoQTBar.element)&&(this.quickToolObj.videoQTBar.hidePopup(),t.removeClass([o[0]],"e-video-focus")),this.cancelResizeAction()}},n.prototype.deleteVideo=function(e,n){if("VIDEO"===e.selectNode[0].nodeName||this.isEmbedVidElem(e.selectNode[0])){this.isEmbedVidElem(e.selectNode[0])&&(e.selectNode[0]=e.selectNode[0].classList.contains("e-video-clickelem")?e.selectNode[0]:e.selectNode[0].parentElement);var i={element:this.isEmbedVidElem(e.selectNode[0])?e.selectNode[0]:e.selectNode[0].querySelector("iframe"),src:this.isEmbedVidElem(e.selectNode[0])?e.selectNode[0].querySelector("iframe").getAttribute("src"):e.selectNode[0].querySelector("source").getAttribute("src")};0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),e.selection.restore(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.videoRemovePost(i.src),this.quickToolObj&&document.body.contains(this.quickToolObj.videoQTBar.element)&&this.quickToolObj.videoQTBar.hidePopup(),this.cancelResizeAction(),t.isNullOrUndefined(n)&&this.parent.trigger("afterMediaDelete",i)}},n.prototype.videoRemovePost=function(e){var n=this,i="";if(!t.isNullOrUndefined(this.parent.insertVideoSettings.removeUrl)&&""!==this.parent.insertVideoSettings.removeUrl){i=e.indexOf("http://")>-1||e.indexOf("https://")>-1?e:new URL(e,document.baseURI).href,this.removingVideoName=i.replace(/^.*[\\\/]/,"");var o=new XMLHttpRequest;o.addEventListener("readystatechange",function(){4===this.readyState&&200===this.status&&n.triggerPost(this.response)}),o.open("GET",i),o.responseType="blob",o.send()}},n.prototype.triggerPost=function(e){var n=this.parent.insertVideoSettings.removeUrl;if(!t.isNullOrUndefined(n)&&""!==n){var i=new File([e],this.removingVideoName),o=new t.Ajax(n,"POST",!0,null),r=new FormData;r.append("UploadFiles",i),o.send(r)}},n.prototype.onDocumentClick=function(e){var n=e.target;("VIDEO"===n.nodeName||this.isEmbedVidElem(n))&&(this.videoEle=this.isEmbedVidElem(n)?n.querySelector("iframe"):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_Video")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_Video"))&&(e.offsetX>e.target.clientWidth||e.offsetY>e.target.clientHeight||(this.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,E(this.parent.element,"focusout"))),this.contentModule.getEditPanel().querySelector(".e-vid-resize")&&("VIDEO"===n.tagName||this.isEmbedVidElem(n)||this.removeResizeEle(),"VIDEO"===n.tagName||this.isEmbedVidElem(n)||t.isNullOrUndefined(this.videoEle)?t.isNullOrUndefined(this.prevSelectedVidEle)||this.prevSelectedVidEle===("IFRAME"===n.tagName||"VIDEO"===n.tagName?n:n.querySelector("iframe"))||(this.prevSelectedVidEle.style.outline=""):this.videoEle.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-vid-resize"))},n.prototype.onWindowResize=function(){t.isNullOrUndefined(this.contentModule)||t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-vid-resize"))||this.cancelResizeAction()},n.prototype.break=function(e){if("VIDEO"===e.selectNode[0].nodeName||this.isEmbedVidElem(e.selectNode[0])){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("VIDEO"===e.selectNode[0].nodeName||this.isEmbedVidElem(e.selectNode[0])){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.alignVideo=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.editAreaClickHandler=function(n){if(this.parent.readonly)return void this.hideVideoQuickToolbar();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)||"VIDEO"!==i.target.tagName&&!this.isEmbedVidElem(i.target)||(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.videoQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var s=this.quickToolObj.videoQTBar.element.classList.contains("e-rte-pop");if(("VIDEO"===r.nodeName||this.isEmbedVidElem(r))&&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),P()&&this.parent.notify(Y,n),t.addClass([this.isEmbedVidElem(r)?r.querySelector("iframe"):r],"e-video-focus"),this.showVideoQuickToolbar({args:i,type:"Videos",elements:[i.target]})}else this.hideVideoQuickToolbar()}},n.prototype.showVideoQuickToolbar=function(e){var n=this;if(!("Videos"!==e.type||!t.isNullOrUndefined(e.args)&&2===e.args.detail||t.isNullOrUndefined(this.parent.quickToolbarModule)||t.isNullOrUndefined(this.parent.quickToolbarModule.videoQTBar)||t.isNullOrUndefined(e.args))){this.quickToolObj=this.parent.quickToolbarModule;var i=e.args,o=e.elements;[].forEach.call(e.elements,function(e,t){0===t&&(o=e)}),("VIDEO"===o.tagName||this.isEmbedVidElem(o))&&t.addClass([this.isEmbedVidElem(o)&&"IFRAME"!==o.tagName?o.querySelector("iframe"):o],["e-video-focus"]);var r=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+i.clientY:i.pageY;this.parent.quickToolbarModule.videoQTBar&&(e.isNotify?setTimeout(function(){n.parent.formatter.editorManager.nodeSelection.Clear(n.contentModule.getDocument()),n.parent.formatter.editorManager.nodeSelection.setSelectionContents(n.contentModule.getDocument(),o),n.quickToolObj.videoQTBar.showPopup(i.pageX-50,r+o.getBoundingClientRect().height/2-o.offsetTop,o)},400):this.quickToolObj.videoQTBar.showPopup(i.pageX-50,r+o.getBoundingClientRect().height/2-o.offsetTop,o))}},n.prototype.hideVideoQuickToolbar=function(){t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-video-focus"))||(t.removeClass([this.contentModule.getEditPanel().querySelector(".e-video-focus")],"e-video-focus"),t.isNullOrUndefined(this.videoEle)||(this.videoEle.style.outline=""),t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-vid-resize"))||t.detach(this.contentModule.getEditPanel().querySelector(".e-vid-resize")),this.quickToolObj&&this.quickToolObj.videoQTBar&&document.body.contains(this.quickToolObj.videoQTBar.element)&&this.quickToolObj.videoQTBar.hidePopup())},n.prototype.isEmbedVidElem=function(e){return!!(e&&3!==e.nodeType&&"BR"!==e.nodeName&&e.classList&&e.classList.contains("e-video-clickelem")||e&&"IFRAME"===e.nodeName)},n.prototype.insertingVideo=function(e){if(this.insertVideo(e),!t.isNullOrUndefined(this.dialogObj)){this.dialogObj.element.style.maxHeight="inherit";var n=this.dialogObj.element.querySelector(".e-video-content");t.isNullOrUndefined(this.parent.insertVideoSettings.path)&&"HTML"!==this.parent.editorMode?n.querySelector(".e-video-url").focus():document.getElementById(this.rteID+"_insertVideo").focus()}},n.prototype.insertVideo=function(e){var n=this;if(this.dialogObj)return void this.dialogObj.hide({returnValue:!0});var i=this.parent.createElement("div",{className:"e-rte-video-dialog",id:this.rteID+"_video"});this.parent.element.appendChild(i);var o=this.i10n.getConstant("dialogInsert"),r=this.i10n.getConstant("dialogCancel"),s=this.i10n.getConstant("videoHeader"),a=e.selection,l={selfVideo: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",isModal:t.Browser.isDevice,buttons:[{click:this.insertVideoUrl.bind(l),buttonModel:{content:o,cssClass:"e-flat e-insertVideo",isPrimary:!0,disabled:!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.isVideoUploaded&&n.uploadObj.removing(),n.parent.isBlur=!1,e&&e.event.returnValue&&"HTML"===n.parent.editorMode&&a.restore(),n.dialogObj.destroy(),t.detach(n.dialogObj.element),n.dialogRenderObj.close(e),n.dialogObj=null}},c=this.parent.createElement("div",{className:"e-video-content"});t.isNullOrUndefined(this.parent.insertVideoSettings.path)&&"HTML"!==this.parent.editorMode||c.appendChild(this.videoUpload(e));var p=this.parent.createElement("div",{className:"e-videoheader"}),h=this.parent.createElement("div",{className:"e-embed-videoheader"}),u=this.i10n.getConstant("videoLinkHeader"),m=this.i10n.getConstant("embedVideoLinkHeader");"HTML"===this.parent.editorMode&&(p.innerHTML=u,h.innerHTML=m),c.appendChild(this.urlPopup(e)),e.selectNode&&1===e.selectNode[0].nodeType&&("VIDEO"===e.selectNode[0].tagName||this.isEmbedVidElem(e.selectNode[0]))?(d.header=this.parent.localeObj.getConstant("editVideoHeader"),d.content=c):d.content=c,this.dialogObj=this.dialogRenderObj.render(d),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(i),e.selectNode&&1===e.selectNode[0].nodeType&&("VIDEO"===e.selectNode[0].tagName||this.isEmbedVidElem(e.selectNode[0]))&&"insertVideo"===e.name&&(this.dialogObj.element.querySelector(".e-insertVideo").textContent=this.parent.localeObj.getConstant("dialogUpdate")),i.style.maxHeight="inherit",this.quickToolObj&&(this.quickToolObj.videoQTBar&&document.body.contains(this.quickToolObj.videoQTBar.element)&&(this.quickToolObj.videoQTBar.hidePopup(),t.isNullOrUndefined(e.selectParent)||t.removeClass([e.selectParent[0]],"e-video-focus")),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup(),this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.hidePopup())},n.prototype.urlPopup=function(e){var n=this,i=this.parent.createElement("div",{className:"e-video-url-wrap"}),o=this.parent.createElement("div",{id:"urlcontent"}),r=this.i10n.getConstant("videoUrl"),a=T('<input id="embedURL" type="radio"><input id="webURL" type="radio" >');if(i.appendChild(a),i.appendChild(o),this.embedInputUrl=this.parent.createElement("textarea",{className:"e-input e-embed-video-url",attrs:{placeholder:this.i10n.getConstant("pasteEmbeddedCodeHere"),type:"text",tabindex:"-1","aria-label":this.i10n.getConstant("embedVideoLinkHeader")}}),this.embedInputUrl.addEventListener("keyup",function(){t.isNullOrUndefined(n.embedInputUrl)||(0===n.embedInputUrl.value.length?n.dialogObj.getButtons(0).element.disabled=!0:n.dialogObj.getButtons(0).element.removeAttribute("disabled"))}),this.inputUrl=this.parent.createElement("input",{className:"e-input e-video-url",attrs:{placeholder:r,spellcheck:"false"}}),this.inputUrl.addEventListener("input",function(){t.isNullOrUndefined(n.inputUrl)||(0===n.inputUrl.value.length?n.dialogObj.getButtons(0).element.disabled=!0:n.dialogObj.getButtons(0).element.removeAttribute("disabled"))}),e.selectNode&&(e.selectNode[0]&&3!==e.selectNode[0].nodeType&&"BR"!==e.selectNode[0].nodeName&&e.selectNode[0].classList&&e.selectNode[0].classList.contains("e-video-clickelem")||"IFRAME"===e.selectNode[0].nodeName||"VIDEO"===e.selectNode[0].nodeName)){var l=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi),d=e.selectNode[0].querySelector("source");this.inputUrl.value=d.src.match(l)?d.src:""}return new s.RadioButton({label:this.i10n.getConstant("embeddedCode"),checked:!0,name:"URL",created:function(){o.appendChild(n.embedInputUrl)},change:function(){o.innerHTML="",o.appendChild(n.embedInputUrl)}}).appendTo(i.querySelector("#embedURL")),new s.RadioButton({label:this.i10n.getConstant("webUrl"),name:"URL",change:function(){o.innerHTML="",o.appendChild(n.inputUrl)}}).appendTo(i.querySelector("#webURL")),i},n.prototype.videoUpload=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-vid-uploadwrap e-droparea"}),h=this.i10n.getConstant("videoDeviceUploadMessage"),u=this.i10n.getConstant("videoUploadMessage"),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+"_insertVideo",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 C=t.Browser.isDevice?m:f;t.EventHandler.add(C,"click",this.fileSelect,this);var y=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"}});c.appendChild(y);var N,S,E;return this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertVideoSettings.saveUrl,removeUrl:this.parent.insertVideoSettings.removeUrl},dropArea:m,multiple:!1,enableRtl:this.parent.enableRtl,allowedExtensions:this.parent.insertVideoSettings.allowedTypes.toString(),selected:function(e){a.isVideoUploaded=!0,S=e,E=e.filesData,o.parent.trigger("fileSelected",S,function(e){if(!e.cancel&&(o.checkExtension(e.filesData[0]),N=e.filesData[0].name,"HTML"===o.parent.editorMode&&t.isNullOrUndefined(o.parent.insertVideoSettings.path))){var r=new FileReader;r.addEventListener("load",function(e){var s="Base64"===o.parent.insertVideoSettings.saveFormat?r.result:URL.createObjectURL(B(r.result));a.uploadUrl={url:s,selection:n,fileName:N,selectParent:i},a.inputUrl.setAttribute("disabled","true"),a.embedInputUrl.setAttribute("disabled","true"),t.isNullOrUndefined(a.parent.insertVideoSettings.saveUrl)&&o.isAllowedTypes&&!t.isNullOrUndefined(o.dialogObj)&&o.dialogObj.getButtons(0).element.removeAttribute("disabled")}),r.readAsDataURL(e.filesData[0].rawFile)}})},beforeUpload:function(e){o.parent.trigger("beforeFileUpload",e)},uploading:function(e){o.parent.isServerRendered||o.parent.trigger("fileUploading",e)},success:function(e){o.parent.trigger("fileUploadSuccess",e,function(e){if(!t.isNullOrUndefined(o.parent.insertVideoSettings.path)){var r=o.parent.insertVideoSettings.path+e.file.name;a.uploadUrl={url:r,selection:n,fileName:N,selectParent:i,width:{width:a.parent.insertVideoSettings.width,minWidth:a.parent.insertVideoSettings.minWidth,maxWidth:a.parent.getInsertImgMaxWidth()},height:{height:a.parent.insertVideoSettings.height,minHeight:a.parent.insertVideoSettings.minHeight,maxHeight:a.parent.insertVideoSettings.maxHeight}},a.embedInputUrl.setAttribute("disabled","true")}"upload"!==e.operation||t.isNullOrUndefined(o.dialogObj)||o.dialogObj.getButtons(0).element.removeAttribute("disabled")})},failure:function(e){o.parent.trigger("fileUploadFailed",e)},removing:function(){o.parent.trigger("fileRemoving",e,function(e){a.isVideoUploaded=!1,o.dialogObj.getButtons(0).element.disabled=!0,a.embedInputUrl.removeAttribute("disabled"),a.uploadUrl&&(a.uploadUrl.url="")})}}),this.uploadObj.isStringTemplate=!0,this.uploadObj.createElement=this.parent.createElement,this.uploadObj.appendTo(y),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.isAllowedTypes=!1):this.isAllowedTypes=!0)},n.prototype.fileSelect=function(){return this.dialogObj.element.getElementsByClassName("e-file-select-wrap")[0].querySelector("button").click(),!1},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.dialogObj.hide({returnValue:!0}),this.isVideoUploaded&&this.uploadObj.removing()},n.prototype.insertVideoUrl=function(e){var n=this.selfVideo;n.isVideoUploaded=!1;var i=n.inputUrl.value,o=n.embedInputUrl.value;if(0===n.parent.formatter.getUndoRedoStack().length&&n.parent.formatter.saveData(),t.isNullOrUndefined(n.uploadUrl)||""===n.uploadUrl.url){if("HTML"===n.parent.editorMode&&(""!==i||""!==o)){if("HTML"===n.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"[id='"+n.contentModule.getPanel().id+"']"))){n.contentModule.getEditPanel().focus();var r=n.parent.formatter.editorManager.nodeSelection.getRange(n.contentModule.getDocument());this.selection=n.parent.formatter.editorManager.nodeSelection.save(r,n.contentModule.getDocument()),this.selectParent=n.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(r)}var s=document.getElementById("webURL"),a=s.checked?i.split("/")[i.split("/").length-1]:o,l={cssClass:"Inline"===n.parent.insertVideoSettings.layoutOption?"e-video-inline":"e-video-break",url:i,selection:this.selection,fileName:a,isEmbedUrl:!s.checked,selectParent:this.selectParent,width:{width:n.parent.insertVideoSettings.width,minWidth:n.parent.insertVideoSettings.minWidth,maxWidth:n.parent.getInsertImgMaxWidth()},height:{height:n.parent.insertVideoSettings.height,minHeight:n.parent.insertVideoSettings.minHeight,maxHeight:n.parent.insertVideoSettings.maxHeight}};n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,l),n.dialogObj.hide({returnValue:!1})}}else n.uploadUrl.cssClass="Inline"===n.parent.insertVideoSettings.layoutOption?"e-video-inline":"e-video-break",n.dialogObj.hide({returnValue:!1}),n.parent.formatter.process(n.parent,this.args,this.args.originalEvent,n.uploadUrl),n.uploadUrl.url=""},n.prototype.destroy=function(){this.prevSelectedVidEle=void 0,this.removeEventListener()},n.prototype.getModuleName=function(){return"video"},n}(),ni=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(V,this.onInitialEnd,this),this.parent.on("updateSource",this.updateSourceCode,this),this.parent.on(Q,this.destroy,this),this.parent.on(ie,this.moduleDestroy,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(V,this.onInitialEnd),this.parent.off(Q,this.destroy),this.parent.off(ie,this.moduleDestroy),this.parent.formatter.editorManager.observer.off("keydown-handler",this.onKeyDown)},n.prototype.getSourceCode=function(){return this.parent.createElement("textarea",{className:"e-rte-srctextarea"+this.parent.getCssClass(!0)})},n.prototype.wireEvent=function(e){this.keyboardModule=new bt(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 bt(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.getToolbarElement()){var t=this.parent.getToolbarElement().querySelector(".e-toolbar-item:not(.e-overlay)[title]");t.firstElementChild.removeAttribute("tabindex"),t.firstElementChild.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){var i=this;this.parent.notify("hidePopup",{}),this.parent.isBlur=!1,this.parent.trigger(X,{requestType:"SourceCode",targetItem:"SourceCode",args:n});var o=t.selectAll("."+me,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 r=void 0;(r=t.isNullOrUndefined(this.parent.element.querySelector("#"+this.parent.getID()+"_source-view"))?this.parent.createElement("div",{className:"e-source-content",id:this.parent.getID()+"_source-view"}):this.parent.element.querySelector("#"+this.parent.getID()+"_source-view")).appendChild(this.previewElement),this.parent.element.appendChild(r),r.style.height=this.contentModule.getPanel().style.height,r.style.marginTop=this.contentModule.getPanel().style.marginTop,this.getPanel().value=this.getTextAreaValue(),this.contentModule.getPanel().style.display="none",r.style.display="block",this.getPanel().style.display="block"}else{var s=this.parent.inputElement.offsetHeight;this.contentModule.getPanel().appendChild(this.previewElement),this.getPanel().value=this.getTextAreaValue(),this.previewElement.style.height=s+"px",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(o,[Ce]),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(),!t.isNullOrUndefined(this.parent.saveInterval)&&this.parent.saveInterval>0&&this.parent.autoSaveOnIdle&&(this.codeViewTimeInterval=setInterval(function(){i.parent.notify("updateValueOnIdle",{})},this.parent.saveInterval))},n.prototype.updateSourceCode=function(e){this.parent.isBlur=!1,this.parent.trigger(X,{requestType:"Preview",targetItem:"Preview",args:e});var n=this.getPanel();this.parent.notify("updateToolbarItem",{targetItem:"Preview",updateItem:"SourceCode",baseToolbar:this.parent.getBaseToolbarObject()});var i,o=this.parent.serializeValue(n.value);i=null===o||""===o?"DIV"===this.parent.enterKey?"<div><br/></div>":"BR"===this.parent.enterKey?"<br/>":"<p><br/></p>":o,this.parent.iframeSettings.enable?(n.parentElement.style.display="none",n.style.display="none",this.contentModule.getPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=i):(n.style.display="none",this.contentModule.getEditPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=i),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.addAudioVideoWrapper(),clearTimeout(this.codeViewTimeInterval),this.parent.invokeChangeEvent(),this.parent.notify("tableclass",{})},n.prototype.getTextAreaValue=function(){return"<p><br></p>"===this.contentModule.getEditPanel().innerHTML||"<div><br></div>"===this.contentModule.getEditPanel().innerHTML||"<br>"===this.contentModule.getEditPanel().innerHTML||1===this.contentModule.getEditPanel().childNodes.length&&"P"===this.contentModule.getEditPanel().childNodes[0].tagName&&7===this.contentModule.getEditPanel().innerHTML.length||"DIV"===this.contentModule.getEditPanel().childNodes[0].tagName&&11===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(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null},n}(),ii=function(){function n(e,t){this.ensureInsideTableList=!0,this.pageX=null,this.pageY=null,this.moveEle=null,this.currentColumnResize="",this.currentMarginLeft=0,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(V,this.afterRender,this),this.parent.on("dynamicModule",this.afterRender,this),this.parent.on("showTableDialog",this.showDialog,this),this.parent.on("closeTableDialog",this.closeDialog,this),this.parent.on("docClick",this.docClick,this),this.parent.on("iframe-click",this.onIframeMouseDown,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(G,this.keyDown,this),this.parent.on(K,this.keyUp,this),this.parent.on("mouseUp",this.selectionTable,this),this.parent.on("tableModulekeyUp",this.tableModulekeyUp,this),this.parent.on(oe,this.setCssClass,this),this.parent.on(Q,this.destroy,this),this.parent.on(ie,this.moduleDestroy,this),this.parent.on("afterKeyDown",this.afterKeyDown,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off("createTable",this.renderDlgContent),this.parent.off(V,this.afterRender),this.parent.off("dynamicModule",this.afterRender),this.parent.off("docClick",this.docClick),this.parent.off("iframe-click",this.onIframeMouseDown),this.parent.off("showTableDialog",this.showDialog),this.parent.off("closeTableDialog",this.closeDialog),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($,this.cellSelect),this.parent.off("tableColorPickerChanged",this.setBGColor),this.parent.off(G,this.keyDown),this.parent.off(K,this.keyUp),this.parent.off("mouseUp",this.selectionTable),this.parent.off("tableModulekeyUp",this.tableModulekeyUp),this.parent.off(oe,this.setCssClass),this.parent.off(Q,this.destroy),this.parent.off(ie,this.moduleDestroy),this.parent.off("afterKeyDown",this.afterKeyDown),!t.Browser.isDevice&&this.parent.tableSettings.resize&&t.EventHandler.remove(this.contentModule.getEditPanel(),"mouseover",this.resizeHelper))},n.prototype.updateCss=function(e,n){e&&n.cssClass&&(t.isNullOrUndefined(n.oldCssClass)?e.setProperties({cssClass:(e.cssClass+" "+n.cssClass).trim()}):e.setProperties({cssClass:(e.cssClass.replace(n.oldCssClass,"").trim()+" "+n.cssClass).trim()}))},n.prototype.setCssClass=function(e){this.popupObj&&e.cssClass&&(t.isNullOrUndefined(e.oldCssClass)?t.addClass([this.popupObj.element],e.cssClass):(t.removeClass([this.popupObj.element],e.oldCssClass),t.addClass([this.popupObj.element],e.cssClass))),this.updateCss(this.createTableButton,e),this.updateCss(this.editdlgObj,e);for(var n=[this.columnTextBox,this.rowTextBox,this.tableWidthNum,this.tableCellPadding,this.tableCellSpacing],i=0;i<n.length;i++)this.updateCss(n[i],e)},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(){t.isNullOrUndefined(this.contentModule)&&(this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),this.parent.on("tableColorPickerChanged",this.setBGColor,this),this.parent.on($,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":case"Custom":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.keyUp=function(e){var n=e.args.target;"escape"===e.args.key.toLocaleLowerCase()&&n&&n.classList&&this.popupObj&&!t.closest(n,"[id='"+this.popupObj.element.id+"']")&&this.popupObj&&this.popupObj.hide()},n.prototype.keyDown=function(e){var n=e.args,i=this;switch(n.action){case"escape":break;case"insert-table":this.openDialog(!0,e),n.preventDefault()}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule&&"KeyK"!==n.code){var o=void 0,r=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),s=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(r)[0];if(s=s&&"TD"!==s.tagName&&"TH"!==s.tagName?s.parentElement:s,(8===n.keyCode||46===n.keyCode||n.ctrlKey&&88===n.keyCode)&&(s&&"TBODY"===s.tagName?(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule&&(o=this.parent.formatter.editorManager.nodeSelection.save(r,this.contentModule.getDocument())),n.preventDefault(),i.removeTable(o,n,!0)):s&&s.querySelectorAll("table").length>0&&(this.removeResizeElement(),this.hideTableQuickToolbar())),s&&"TD"!==s.tagName&&"TH"!==s.tagName){var a=t.closest(s,"td");s=!t.isNullOrUndefined(a)&&this.parent.inputElement.contains(a)?a:s}if(s&&("TD"===s.tagName||"TH"===s.tagName))switch(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule&&(o=this.parent.formatter.editorManager.nodeSelection.save(r,this.contentModule.getDocument())),n.keyCode){case 9:case 37:case 39:i.tabSelection(n,o,s);break;case 40:case 38:i.tableArrowNavigation(n,o,s)}}n.ctrlKey&&"a"===n.key&&this.handleSelectAll()},n.prototype.handleSelectAll=function(){this.cancelResizeAction();var e=this.parent.inputElement.querySelectorAll(".e-cell-select");t.removeClass(e,"e-cell-select")},n.prototype.tableModulekeyUp=function(e){if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule){var n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(n)[0];if((i=i&&"TD"!==i.tagName&&"TH"!==i.tagName?i.parentElement:i)&&"TD"!==i.tagName&&"TH"!==i.tagName){var o=t.closest(i,"td");i=!t.isNullOrUndefined(o)&&this.parent.inputElement.contains(o)?o:i}this.previousTableElement===i||t.isNullOrUndefined(this.previousTableElement)||this.previousTableElement.classList.remove("e-cell-select")}},n.prototype.openDialog=function(e,t){if(e||this.parent.contentModule.getEditPanel().focus(),"HTML"===this.parent.editorMode){var n=this.parent.contentModule.getDocument(),i=this.parent.formatter.editorManager.nodeSelection.getRange(n),o=this.parent.formatter.editorManager.nodeSelection.save(i,n),r={originalEvent:t?t.args:{action:"insert-table"},item:{command:"Table",subCommand:"CreateTable"},name:e?null:"showDialog"};this.insertTableDialog({self:this,args:r,selection:o})}},n.prototype.showDialog=function(){this.openDialog(!1),this.setCssClass({cssClass:this.parent.getCssClass()})},n.prototype.closeDialog=function(){this.editdlgObj&&this.editdlgObj.hide({returnValue:!0})},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");if("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(ye)?this.parent.element.classList.remove(ye):this.parent.element.classList.add(ye),i.classList.contains(ye)?i.classList.remove(ye):i.classList.add(ye)),e.args&&e.args.item.cssClass)for(var o=e.args.item.cssClass.split(" "),r=0;r<o.length;r++)i.classList.contains(o[r])?i.classList.remove(o[r]):i.classList.add(o[r]);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){this.previousTableElement=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?a.parentElement.nextSibling.firstChild:a.parentElement.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.getAnchorNode=function(e){var n=t.closest(e,"a");return n||e},n.prototype.editAreaClickHandler=function(n){if(!this.parent.readonly&&t.isNullOrUndefined(t.closest(n.args.target,".e-img-caption"))){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"),l=this.parent.getRange().startContainer.parentElement,d=this.parent.getRange().endContainer.parentElement,c=this.getAnchorNode(r);if(r&&"A"!==r.nodeName&&"A"!==c.nodeName&&"IMG"!==r.nodeName&&"VIDEO"!==r.nodeName&&!r.classList.contains("e-clickelem")&&"AUDIO"!==r.nodeName&&l===d&&("TD"===r.nodeName||"TH"===r.nodeName||"TABLE"===r.nodeName||a&&this.parent.contentModule.getEditPanel().contains(a))&&(3!==s.startContainer.nodeType||s.collapsed)){var p=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument());this.parent.formatter.editorManager.nodeSelection.save(p,this.contentModule.getDocument()),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());var h=void 0,u=void 0;t.Browser.isDevice&&n.args.touches?(h=this.parent.iframeSettings.enable?window.pageXOffset+this.parent.element.getBoundingClientRect().left+n.args.changedTouches[0].clientX:n.args.changedTouches[0].pageX,u=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+(this.parent.inlineMode.enable?0:this.parent.toolbarModule.getToolbarHeight())+n.args.changedTouches[0].clientY:n.args.changedTouches[0].pageY):(h=this.parent.iframeSettings.enable?window.pageXOffset+this.parent.element.getBoundingClientRect().left+i.clientX:i.pageX,u=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+this.parent.toolbarModule.getToolbarHeight()+i.clientY:i.pageY),this.quickToolObj.tableQTBar.showPopup(h,u,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={rows: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($,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||(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.e-rte-table, table.e-rte-paste-table");t.isNullOrUndefined(this.curTable)||t.isNullOrUndefined(i)||i===this.curTable||!this.parent.contentModule.getEditPanel().contains(i)||(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=e.rows[this.calMaxCol(e)].cells,o=[],r=0;r<e.rows.length;r++)for(var s=0;s<e.rows[r].cells.length;s++)if(!e.rows[r].cells[s].hasAttribute("rowspan")){o.push(Array.prototype.slice.call(e.rows[r].cells,0,e.rows[r].cells.length)[s]);break}for(var a=parseInt(getComputedStyle(e).height,10),l=parseInt(getComputedStyle(e).width,10),d=this.calcPos(e),r=0;i.length>=r;r++){var c=this.parent.createElement("span",{attrs:{"data-col":r.toString(),unselectable:"on",contenteditable:"false"}});c.classList.add("e-rte-table-resize","e-column-resize"),i.length===r?c.style.cssText="height: "+a+"px; width: 4px; top: "+d.top+"px; left:"+(d.left+this.calcPos(i[r-1]).left+i[r-1].offsetWidth-2)+"px;":c.style.cssText="height: "+a+"px; width: 4px; top: "+d.top+"px; left:"+(d.left+this.calcPos(i[r]).left-2)+"px;",this.contentModule.getEditPanel().appendChild(c)}for(r=0;o.length>r;r++){var p=this.parent.createElement("span",{attrs:{"data-row":r.toString(),unselectable:"on",contenteditable:"false"}});p.classList.add("e-rte-table-resize","e-row-resize");var h=t.isNullOrUndefined(e.getAttribute("cellspacing"))&&""===e.getAttribute("cellspacing")?this.calcPos(o[r]).left:0;p.style.cssText="width: "+l+"px; height: 4px; top: "+(this.calcPos(o[r]).top+d.top+o[r].offsetHeight-2)+"px; left:"+(h+d.left)+"px;",this.contentModule.getEditPanel().appendChild(p)}var u=this.parent.createElement("span",{className:"e-table-box"+this.parent.getCssClass(!0),attrs:{"data-col":i.length.toString(),unselectable:"on",contenteditable:"false"}});u.style.cssText="top: "+(d.top+a-4)+"px; left:"+(d.left+l-4)+"px;",t.Browser.isDevice&&u.classList.add("e-rmob"),this.contentModule.getEditPanel().appendChild(u)},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,s=!1;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-rte-content"),s=!0),r&&r!==e&&1===r.nodeType&&(n=r.getBoundingClientRect()),s?(s=!1,{top:this.parent.inputElement&&this.parent.inputElement.scrollTop>0?this.parent.inputElement.scrollTop+i.top-n.top:i.top-n.top,left:this.parent.inputElement&&this.parent.inputElement.scrollLeft>0?this.parent.inputElement.scrollLeft+i.left-n.left:i.left-n.left}):{top:e.offsetTop,left:e.offsetLeft}},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")){if(this.resizeBtnStat.column=!0,parseInt(i.getAttribute("data-col"),10)===this.curTable.rows[this.calMaxCol(this.curTable)].cells.length)this.currentColumnResize="last",this.columnEle=this.curTable.rows[this.calMaxCol(this.curTable)].cells[parseInt(i.getAttribute("data-col"),10)-1];else{if(0===parseInt(i.getAttribute("data-col"),10))this.currentColumnResize="first";else{this.currentColumnResize="middle";for(var o=this.curTable.rows[0].cells,r=0,s=0;s<o.length;s++)r+=o[s].colSpan;for(var a=new Array(r),l=t.createElement("colgroup"),d=new Map,c=0;c<this.curTable.rows.length;c++)for(var p=0,h=0;h<this.curTable.rows[c].cells.length;h++){for(var u=1;u<this.curTable.rows[c].cells[h].rowSpan;u++){var m=""+(c+u)+p;d.set(m,this.curTable.rows[c].cells[h])}var g=this.getCellIndex(d,c,h);g>p&&(p=g);var f=this.curTable.rows[c].cells[h].offsetWidth;(!a[p]||f<a[p])&&(a[p]=f),p+=1+this.curTable.rows[c].cells[h].colSpan-1}for(var b=0;b<a.length;b++)(s=t.createElement("col")).appendChild(t.createElement("br")),s.style.width=this.convertPixelToPercentage(a[b],parseInt(getComputedStyle(this.curTable).width,10))+"%",l.appendChild(s);this.curTable.insertBefore(l,this.curTable.firstChild);for(c=0;c<this.curTable.rows.length;c++)for(h=0;h<this.curTable.rows[c].cells.length;h++)this.curTable.rows[c].cells[h].style.width=""}this.columnEle=this.curTable.rows[this.calMaxCol(this.curTable)].cells[parseInt(i.getAttribute("data-col"),10)]}this.colIndex=this.columnEle.cellIndex,this.moveEle=e.target,this.appendHelper()}if(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 v={event:e,requestType:"Table"};this.parent.trigger("resizeStart",v,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.getCellIndex=function(e,t,n){var i=""+t+n,o=e.get(i);return o?this.getCellIndex(e,t,n+o.colSpan):n},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"+this.parent.getCssClass(!0)}),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+("last"===this.currentColumnResize?this.columnEle.offsetWidth:0)-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-1)+"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+("last"===this.currentColumnResize?this.columnEle.offsetWidth:0)-1;this.helper.style.left=t+"px",this.helper.style.height=this.curTable.offsetHeight+"px"}else{var n=this.calcPos(this.rowEle).top+e.top+this.rowEle.offsetHeight-1;this.helper.style.top=n+"px"}},n.prototype.calMaxCol=function(e){for(var t,n=0,i=0;i<e.rows.length;i++)n<e.rows[i].cells.length&&(t=i,n=e.rows[i].cells.length);return t},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,l=this.curTable.closest("td"),d={event:e,requestType:"table"};this.parent.trigger("resizing",d,function(i){if(i.cancel)n.cancelResizeAction();else{var o=n.contentModule.getEditPanel().querySelector(".e-table-box"),d=parseInt(getComputedStyle(n.curTable).width,10),c=parseInt(getComputedStyle(n.curTable).height,10),p=+getComputedStyle(n.contentModule.getEditPanel()).paddingRight.match(/\d/g).join(""),h=n.contentModule.getEditPanel().offsetWidth-(n.contentModule.getEditPanel().offsetWidth-n.contentModule.getEditPanel().clientWidth)-2*p,u=void 0;if(t.isNullOrUndefined(n.curTable.parentElement.closest("table"))||t.isNullOrUndefined(n.curTable.closest("td"))||!n.contentModule.getEditPanel().contains(n.curTable.closest("td")))u=h;else{var m=n.curTable.closest("td"),g=+getComputedStyle(m).paddingRight.match(/\d/g).join("");u=m.offsetWidth-(m.offsetWidth-m.clientWidth)-2*g}if(n.resizeBtnStat.column){var f=n.curTable.querySelectorAll("colgroup > col"),b="TH"===n.curTable.rows[0].cells[0].nodeName?1:0,v=void 0;v=""!==n.curTable.style.width&&n.curTable.style.width.includes("%")?parseFloat(n.curTable.style.width.split("%")[0]):n.getCurrentTableWidth(n.curTable.offsetWidth,n.parent.inputElement.offsetWidth);var C=parseFloat(n.curTable.rows[b].cells[n.colIndex>=n.curTable.rows[b].cells.length?n.curTable.rows[b].cells.length-1:n.colIndex].style.width.split("%")[0]);if("first"===n.currentColumnResize){if(r-=.75,n.removeResizeElement(),l&&(a=n.curTable.getBoundingClientRect().right-n.calcPos(l).left,n.curTable.style.maxWidth=a+"px"),(0!==r&&5<C||r<0)&&v<=100&&n.convertPixelToPercentage(d-r,u)<=100){var y=n.findFirstLastColCells(n.curTable,!0);n.curTable.style.width=n.convertPixelToPercentage(d-r,u)>100?"100%":n.convertPixelToPercentage(d-r,u)+"%";S=v-n.convertPixelToPercentage(d-r,u);n.currentMarginLeft=n.currentMarginLeft+S,n.curTable.style.marginLeft="calc("+("100%"===n.curTable.style.width?0:n.currentMarginLeft)+"%)";for(E=0;E<y.length;E++)n.curTable.rows[E].cells[n.colIndex].style.width=C-S+"%"}}else if("last"===n.currentColumnResize){if(r+=.75,n.removeResizeElement(),l&&(a=l.getBoundingClientRect().right-n.curTable.getBoundingClientRect().left,n.curTable.style.maxWidth=a+"px"),(0!==r&&5<C||r>0)&&v<=100&&n.convertPixelToPercentage(d+r,u)<=100){var N=n.findFirstLastColCells(n.curTable,!1);n.curTable.style.width=n.convertPixelToPercentage(d+r,u)>100?"100%":n.convertPixelToPercentage(d+r,u)+"%";for(var S=v-n.convertPixelToPercentage(d+r,u),E=0;E<N.length;E++)n.curTable.rows[E].cells[n.colIndex]&&(n.curTable.rows[E].cells[n.curTable.rows[E].cells.length===n.colIndex?n.colIndex-1:n.colIndex].style.width=C-S+"%")}}else{var T=f[n.colIndex].offsetWidth-r,O=f[n.colIndex].offsetWidth+f[n.colIndex-1].offsetWidth;if(O-T>20&&T>20){var w=O-T,k=T;f[n.colIndex-1].style.width=n.convertPixelToPercentage(w,d)+"%",f[n.colIndex].style.width=n.convertPixelToPercentage(k,d)+"%"}}n.updateHelper()}else if(n.resizeBtnStat.row){n.parent.preventDefaultResize(e);for(var L=[],x=n.curTable.querySelectorAll("tr"),E=0;E<x.length;E++)n.rowEle!==x[E]&&(L[E]=parseFloat(x[E].clientHeight.toString()));n.curTable.style.height=parseFloat(n.curTable.clientHeight.toString())+s+"px";for(E=0;E<x.length;E++)n.rowEle===x[E]?x[E].style.height=parseFloat(x[E].clientHeight.toString())+s+"px":x[E].style.height=L[E]+"px";t.isNullOrUndefined(o)||(o.style.cssText="top: "+(n.calcPos(n.curTable).top+c-4)+"px; left:"+(n.calcPos(n.curTable).left+d-4)+"px;"),n.updateHelper()}else if(n.resizeBtnStat.tableBox){if(l){var D=n.curTable.getBoundingClientRect().left-l.getBoundingClientRect().left;a=Math.abs(D-l.getBoundingClientRect().width)-5,n.curTable.style.maxWidth=a+"px"}var M=n.curTable.style.width.indexOf("%")>-1;n.curTable.style.width=M?n.convertPixelToPercentage(d+r,u)+"%":d+r+"px",n.curTable.style.height=c+s+"px",t.isNullOrUndefined(o)||(o.classList.add("e-rbox-select"),o.style.cssText="top: "+(n.calcPos(n.curTable).top+c-4)+"px; left:"+(n.calcPos(n.curTable).left+d-4)+"px;")}}})},n.prototype.getCurrentTableWidth=function(e,t){return e/t*100},n.prototype.findFirstLastColCells=function(e,t){for(var n=[],i=e.querySelectorAll("tr"),o=0;o<i.length;o++)if(i[o].closest("table")===e){var r=i[o].querySelectorAll("th, td");n.push(t?r[0]:r[r.length-1])}return n},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"))&&this.removeResizeElement(),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&(t.detach(this.helper),this.helper=null);var n=this.parent.element.querySelectorAll(".e-table-rhelper.e-column-helper");Array.from(n).forEach(function(e){e.parentNode&&e.parentNode.removeChild(e)});for(l=0;l<this.curTable.rows.length;l++)for(var i=0;i<this.curTable.rows[l].cells.length;i++){var o=this.convertPixelToPercentage(this.curTable.rows[l].cells[i].offsetWidth,parseInt(getComputedStyle(this.curTable).width,10))+"%";this.curTable.rows[l].cells[i].style.width=o}var r=this.curTable.querySelector("colgroup");r&&this.curTable.removeChild(r),this.pageX=null,this.pageY=null,this.moveEle=null;for(var s=this.curTable.querySelectorAll("tr"),a=[],l=0;l<s.length;l++){var d=parseFloat(s[l].clientHeight.toString())/parseFloat(this.curTable.clientHeight.toString())*100;a[l]=d}for(l=0;l<s.length;l++)s[l].style.height=a[l]+"%";var c={event:e,requestType:"table"};this.parent.trigger("resizeStop",c),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(),null!==this.parent.inputElement.innerHTML&&""!==this.parent.inputElement.innerHTML||("DIV"===this.parent.enterKey?this.contentModule.getEditPanel().innerHTML="<div><br/></div>":"BR"===this.parent.enterKey?this.contentModule.getEditPanel().innerHTML="<br/>":this.contentModule.getEditPanel().innerHTML="<p><br/></p>"),this.removeResizeElement(),this.hideTableQuickToolbar()},n.prototype.renderDlgContent=function(e){var n=this,i=e.args.originalEvent.target;if(t.Browser.isDevice||this.parent.inlineMode.enable||!t.isNullOrUndefined(t.closest(i,".e-rte-text-popup")))return void this.insertTableDialog(e);if(this.popupObj)return void this.popupObj.hide();this.hideTableQuickToolbar();var r=this.l10n.getConstant("inserttablebtn");this.dlgDiv=this.parent.createElement("div",{className:"e-rte-table-popup"+this.parent.getCssClass(!0),id:this.rteID+"_table"}),this.tblHeader=this.parent.createElement("div",{className:"e-rte-popup-header"+this.parent.getCssClass(!0)}),this.tblHeader.innerHTML="1X1",this.dlgDiv.appendChild(this.tblHeader);var a=this.parent.createElement("div",{className:"e-rte-table-span"+this.parent.getCssClass(!0)});this.drawTable(a,e),this.dlgDiv.appendChild(a),this.dlgDiv.appendChild(this.parent.createElement("span",{className:"e-span-border"+this.parent.getCssClass(!0)}));var l=this.parent.createElement("button",{className:"e-insert-table-btn"+this.parent.getCssClass(!0),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(l),this.createTableButton=new s.Button({iconCss:"e-icons e-create-table",content:r,cssClass:"e-flat"+this.parent.getCssClass(!0),enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.createTableButton.isStringTemplate=!0,this.createTableButton.appendTo(l),t.EventHandler.add(l,"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"),t.isNullOrUndefined(this.parent.cssClass)||t.addClass([this.popupObj.element],this.parent.getCssClass()),this.popupObj.refreshPosition(d)},n.prototype.onIframeMouseDown=function(){this.popupObj&&this.popupObj.hide()},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.parent.notify("documentClickClosedBy",{closedBy:"outside click"}),this.editdlgObj.hide()),this.parent.isBlur=!0,E(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.inputElement.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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),isPrimary:!0}},{click:function(e){t.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel"+this.parent.getCssClass(!0),content:o}}],cssClass:this.editdlgObj.cssClass+" e-rte-edit-table-prop-dialog"}),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 "+n.parent.cssClass,isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel "+n.parent.cssClass,content:r}}]}),t.isNullOrUndefined(n.parent.cssClass)||n.editdlgObj.setProperties({cssClass:n.parent.cssClass}),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"+this.parent.getCssClass(!0)}),i=T('<div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="tableColumn" class="e-table-column'+this.parent.getCssClass(!0)+'"/></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="tableRow" class="e-table-row'+this.parent.getCssClass(!0)+'" /></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,cssClass:this.parent.getCssClass()}),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:1e3,enableRtl:this.parent.enableRtl,locale:this.parent.locale,cssClass:this.parent.getCssClass()}),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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),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"+this.parent.getCssClass(!0),isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel"+this.parent.getCssClass(!0),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(),this.quickToolObj&&this.quickToolObj.textQTBar&&this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)&&this.quickToolObj.textQTBar.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||!t.isNullOrUndefined(i.parent.quickToolbarSettings.text)?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"+this.parent.getCssClass(!0)}),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'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="tableWidth" class="e-table-width'+this.parent.getCssClass(!0)+'" /></div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="cellPadding" class="e-cell-padding'+this.parent.getCssClass(!0)+'" /> </div><div class="e-rte-field'+this.parent.getCssClass(!0)+'"><input type="text" data-role ="none" id="cellSpacing" class="e-cell-spacing'+this.parent.getCssClass(!0)+'" /></div>');return a.appendChild(p),this.tableWidthNum=new r.NumericTextBox({format:"n0",min:0,value:l,placeholder:i,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.tableWidthNum.isStringTemplate=!0,this.tableWidthNum.appendTo(a.querySelector("#tableWidth")),this.tableCellPadding=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}),this.tableCellPadding.isStringTemplate=!0,this.tableCellPadding.appendTo(a.querySelector("#cellPadding")),this.tableCellSpacing=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}),this.tableCellSpacing.isStringTemplate=!0,this.tableCellSpacing.appendTo(a.querySelector("#cellSpacing")),a},n.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},n.prototype.moduleDestroy=function(){this.parent=null},n.prototype.getModuleName=function(){return"table"},n.prototype.afterKeyDown=function(e){var t=this;this.curTable&&setTimeout(function(){var e=document.createEvent("MouseEvents");e.initEvent("mouseover",!0,!0),t.curTable.dispatchEvent(e)},1)},n}(),oi=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(ie,this.moduleDestroy,this),this.parent.on(Q,this.removeEventListener,this),this.parent.on("documentClickClosedBy",this.documentClickClosedBy,this))},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(Q,this.removeEventListener),this.parent.off(ie,this.moduleDestroy),this.parent.off("documentClickClosedBy",this.documentClickClosedBy))},e.prototype.render=function(e){var n;return e.beforeOpen=this.beforeOpen.bind(this),e.open=this.open.bind(this),e.position={X:"center",Y:this.getDialogPosition()},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){if(e.element.classList.contains("e-dialog")){var n=t.closest(e.target,"form");t.isNullOrUndefined(n)||(this.dialogEle=e.element,this.dialogEle.addEventListener("keydown",this.handleEnterKeyDown))}this.parent.trigger("beforeDialogOpen",e,this.beforeOpenCallback.bind(this,e))},e.prototype.handleEnterKeyDown=function(e){"Enter"===e.code&&e.preventDefault()},e.prototype.beforeOpenCallback=function(e){e.cancel&&this.parent.notify("clearDialogObj",null)},e.prototype.open=function(e){this.parent.trigger("dialogOpen",e)},e.prototype.documentClickClosedBy=function(e){this.outsideClickClosedBy=e.closedBy},e.prototype.beforeClose=function(e){this.dialogEle&&this.dialogEle.removeEventListener("keydown",this.handleEnterKeyDown),e.closedBy="outside click"===this.outsideClickClosedBy?this.outsideClickClosedBy:e.closedBy,this.parent.trigger("beforeDialogClose",e,function(e){e.cancel||e.container.classList.contains("e-popup-close")&&(e.cancel=!0)}),this.outsideClickClosedBy=""},e.prototype.getDialogPosition=function(){var e=this.parent.element.getBoundingClientRect().top;if(e<0){for(var t=0,n=this.parent.element;"BODY"!==n.nodeName;){var i=n.getBoundingClientRect().top;i>0&&(t=i),n=n.parentElement}return(e=Math.abs(e)+t).toString()}return"top"},e.prototype.close=function(e){this.parent.trigger("dialogClose",e)},e.prototype.moduleDestroy=function(){this.parent=null},e}(),ri={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"},insertAudio:{command:"Audios",subCommand:"Audio"},insertVideo:{command:"Videos",subCommand:"Video"},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"},copyFormatPainter:{command:"FormatPainter",value:"format-copy"},applyFormatPainter:{command:"FormatPainter",value:"format-paste"},escapeFormatPainter:{command:"FormatPainter",value:"escape"}},si=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)}}(),ai=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},li=function(n){function i(){return null!==n&&n.apply(this,arguments)||this}return si(i,n),ai([t.Property(!0)],i.prototype,"enable",void 0),ai([t.Property(!0)],i.prototype,"enableFloating",void 0),ai([t.Property(e.ToolbarType.Expand)],i.prototype,"type",void 0),ai([t.Property(_e)],i.prototype,"items",void 0),ai([t.Property({})],i.prototype,"itemConfigs",void 0),i}(t.ChildProperty),di=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property([".jpeg",".jpg",".png"])],n.prototype,"allowedTypes",void 0),ai([t.Property("inline")],n.prototype,"display",void 0),ai([t.Property("Blob")],n.prototype,"saveFormat",void 0),ai([t.Property("auto")],n.prototype,"width",void 0),ai([t.Property("auto")],n.prototype,"height",void 0),ai([t.Property(null)],n.prototype,"saveUrl",void 0),ai([t.Property(null)],n.prototype,"path",void 0),ai([t.Property(!0)],n.prototype,"resize",void 0),ai([t.Property(null)],n.prototype,"removeUrl",void 0),ai([t.Property(0)],n.prototype,"minWidth",void 0),ai([t.Property(null)],n.prototype,"maxWidth",void 0),ai([t.Property(0)],n.prototype,"minHeight",void 0),ai([t.Property(null)],n.prototype,"maxHeight",void 0),ai([t.Property(!1)],n.prototype,"resizeByPercent",void 0),n}(t.ChildProperty),ci=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property([".wav",".mp3",".m4a",".wma"])],n.prototype,"allowedTypes",void 0),ai([t.Property("Inline")],n.prototype,"layoutOption",void 0),ai([t.Property("Blob")],n.prototype,"saveFormat",void 0),ai([t.Property(null)],n.prototype,"saveUrl",void 0),ai([t.Property(null)],n.prototype,"removeUrl",void 0),ai([t.Property(null)],n.prototype,"path",void 0),n}(t.ChildProperty),pi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property([".mp4",".mov",".wmv",".avi"])],n.prototype,"allowedTypes",void 0),ai([t.Property("Inline")],n.prototype,"layoutOption",void 0),ai([t.Property("Blob")],n.prototype,"saveFormat",void 0),ai([t.Property("auto")],n.prototype,"width",void 0),ai([t.Property("auto")],n.prototype,"height",void 0),ai([t.Property(null)],n.prototype,"saveUrl",void 0),ai([t.Property(null)],n.prototype,"path",void 0),ai([t.Property(!0)],n.prototype,"resize",void 0),ai([t.Property(null)],n.prototype,"removeUrl",void 0),ai([t.Property(0)],n.prototype,"minWidth",void 0),ai([t.Property(null)],n.prototype,"maxWidth",void 0),ai([t.Property(0)],n.prototype,"minHeight",void 0),ai([t.Property(null)],n.prototype,"maxHeight",void 0),ai([t.Property(!1)],n.prototype,"resizeByPercent",void 0),n}(t.ChildProperty),hi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Event()],n.prototype,"beforeSend",void 0),ai([t.Complex({getImageUrl:null,url:null,uploadUrl:null},a.AjaxSettings)],n.prototype,"ajaxSettings",void 0),ai([t.Property(!1)],n.prototype,"allowDragAndDrop",void 0),ai([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),ai([t.Property("")],n.prototype,"cssClass",void 0),ai([t.Complex({},a.DetailsViewSettings)],n.prototype,"detailsViewSettings",void 0),ai([t.Property(!1)],n.prototype,"enable",void 0),ai([t.Complex({maxWidth:"650px",minWidth:"240px",visible:!0},a.NavigationPaneSettings)],n.prototype,"navigationPaneSettings",void 0),ai([t.Property("/")],n.prototype,"path",void 0),ai([t.Property(null)],n.prototype,"rootAliasName",void 0),ai([t.Complex({},a.SearchSettings)],n.prototype,"searchSettings",void 0),ai([t.Property(!0)],n.prototype,"showFileExtension",void 0),ai([t.Property(!1)],n.prototype,"showHiddenItems",void 0),ai([t.Property(!0)],n.prototype,"showThumbnail",void 0),ai([t.Property("Ascending")],n.prototype,"sortOrder",void 0),ai([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),ai([t.Complex({autoUpload:!0,minFileSize:0,maxFileSize:3e7,allowedExtensions:"",autoClose:!1},a.UploadSettings)],n.prototype,"uploadSettings",void 0),ai([t.Property("LargeIcons")],n.prototype,"view",void 0),n}(t.ChildProperty),ui=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property("100%")],n.prototype,"width",void 0),ai([t.Property(ze)],n.prototype,"styles",void 0),ai([t.Property(!0)],n.prototype,"resize",void 0),ai([t.Property(0)],n.prototype,"minWidth",void 0),ai([t.Property(null)],n.prototype,"maxWidth",void 0),n}(t.ChildProperty),mi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property(!0)],n.prototype,"enable",void 0),ai([t.Property(!1)],n.prototype,"showOnRightClick",void 0),ai([t.Property("hide")],n.prototype,"actionOnScroll",void 0),ai([t.Property(["Open","Edit","UnLink"])],n.prototype,"link",void 0),ai([t.Property(["Replace","Align","Caption","Remove","-","InsertLink","OpenImageLink","EditImageLink","RemoveImageLink","Display","AltText","Dimension"])],n.prototype,"image",void 0),ai([t.Property(["AudioReplace","AudioRemove","AudioLayoutOption"])],n.prototype,"audio",void 0),ai([t.Property(["VideoReplace","VideoAlign","VideoRemove","VideoLayoutOption","VideoDimension"])],n.prototype,"video",void 0),ai([t.Property(null)],n.prototype,"text",void 0),ai([t.Property(["TableHeader","TableRows","TableColumns","BackgroundColor","-","TableRemove","Alignments","TableCellVerticalAlign","Styles"])],n.prototype,"table",void 0),n}(t.ChildProperty),gi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property("b; em; font; sub; sup; kbd; i; s; u; code; strong; span; p; div; h1; h2; h3; h4; h5; h6; blockquote; ol; ul; li; pre;")],n.prototype,"allowedFormats",void 0),ai([t.Property(null)],n.prototype,"deniedFormats",void 0),n}(t.ChildProperty),fi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property($e)],n.prototype,"iconsSet",void 0),ai([t.Property(!0)],n.prototype,"showSearchBox",void 0),n}(t.ChildProperty),bi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property(!1)],n.prototype,"prompt",void 0),ai([t.Property(null)],n.prototype,"deniedAttrs",void 0),ai([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","list-style-type","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),ai([t.Property(null)],n.prototype,"deniedTags",void 0),ai([t.Property(!0)],n.prototype,"keepFormat",void 0),ai([t.Property(!1)],n.prototype,"plainText",void 0),n}(t.ChildProperty),vi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property(null)],n.prototype,"default",void 0),ai([t.Property("65px")],n.prototype,"width",void 0),ai([t.Property(Ve)],n.prototype,"items",void 0),n}(t.ChildProperty),Ci=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property(null)],n.prototype,"default",void 0),ai([t.Property("35px")],n.prototype,"width",void 0),ai([t.Property(Qe)],n.prototype,"items",void 0),n}(t.ChildProperty),yi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property(null)],n.prototype,"default",void 0),ai([t.Property("65px")],n.prototype,"width",void 0),ai([t.Property(We)],n.prototype,"types",void 0),n}(t.ChildProperty),Ni=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property("#ff0000")],n.prototype,"default",void 0),ai([t.Property("Palette")],n.prototype,"mode",void 0),ai([t.Property(10)],n.prototype,"columns",void 0),ai([t.Property(Ke)],n.prototype,"colorCode",void 0),ai([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),Si=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property("#ffff00")],n.prototype,"default",void 0),ai([t.Property("Palette")],n.prototype,"mode",void 0),ai([t.Property(10)],n.prototype,"columns",void 0),ai([t.Property(Ge)],n.prototype,"colorCode",void 0),ai([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),Ei=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property(Xe)],n.prototype,"types",void 0),n}(t.ChildProperty),Ti=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return si(n,e),ai([t.Property(Ye)],n.prototype,"types",void 0),n}(t.ChildProperty),Oi=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)}}(),wi=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},ki=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Oi(n,e),wi([t.Property([])],n.prototype,"styles",void 0),wi([t.Property([])],n.prototype,"scripts",void 0),n}(t.ChildProperty),Li=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Oi(n,e),wi([t.Property(!1)],n.prototype,"enable",void 0),wi([t.Property(null)],n.prototype,"attributes",void 0),wi([t.Complex({},ki)],n.prototype,"resources",void 0),n}(t.ChildProperty),xi=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)}}(),Di=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},Mi=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return xi(n,e),Di([t.Property(!1)],n.prototype,"enable",void 0),Di([t.Property(!0)],n.prototype,"onSelection",void 0),n}(t.ChildProperty),Ri=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on("enterHandler",this.enterHandler,this),this.parent.on(Q,this.destroy,this),this.parent.on(ie,this.moduleDestroy,this)},e.prototype.destroy=function(){t.isNullOrUndefined(this.parent)||this.removeEventListener()},e.prototype.moduleDestroy=function(){this.parent=null},e.prototype.removeEventListener=function(){this.parent.off("enterHandler",this.enterHandler),this.parent.off(Q,this.destroy),this.parent.off(ie,this.moduleDestroy)},e.prototype.getRangeNode=function(){this.range=this.parent.getRange(),this.startNode="#text"===this.range.startContainer.nodeName?this.range.startContainer.parentElement:this.range.startContainer,this.endNode="#text"===this.range.endContainer.nodeName?this.range.endContainer.parentElement:this.range.endContainer},e.prototype.enterHandler=function(e){var n=this;this.getRangeNode();var i=!0;if(this.formatTags=["h1","h2","h3","h4","h5","h6","blockquote"],!t.isNullOrUndefined(this.startNode.closest("TABLE"))&&!t.isNullOrUndefined(this.endNode.closest("TABLE"))){i=!1;for(var o=this.startNode,r=o;!this.parent.formatter.editorManager.domNode.isBlockNode(o);)r=o=o.parentElement;i="TD"!==r.tagName&&"TBODY"!==r.tagName}if(13===e.args.which&&!e.args.ctrlKey&&(t.Browser.isDevice?"Enter"===e.args.key:"Enter"===e.args.code)&&t.isNullOrUndefined(this.startNode.closest("LI, UL, OL"))&&t.isNullOrUndefined(this.endNode.closest("LI, UL, OL"))&&i&&t.isNullOrUndefined(this.startNode.closest("PRE"))&&t.isNullOrUndefined(this.endNode.closest("PRE"))){var s=e.args.shiftKey,a={cancel:!1,name:X,requestType:s?"ShiftEnterAction":"EnterAction",originalEvent:e.args};this.parent.trigger(X,a,function(o){if(!o.cancel){if(n.range.startOffset!==n.range.endOffset||n.range.startContainer!==n.range.endContainer)if("SPAN"===n.range.startContainer.nodeName&&(n.range.startContainer.classList.contains("e-video-wrap")||n.range.startContainer.classList.contains("e-audio-wrap"))||n.range.deleteContents(),"#text"===n.range.startContainer.nodeName&&0===n.range.startContainer.textContent.length&&n.range.startContainer.parentElement!==n.parent.inputElement)"BR"===n.parent.enterKey?n.range.startContainer.parentElement.innerHTML="​":n.range.startContainer.parentElement.innerHTML="<br>";else if(n.range.startContainer===n.parent.inputElement&&""===n.range.startContainer.innerHTML){n.range.startContainer.innerHTML="<br>";C=n.range.startContainer.childNodes[n.range.startOffset];n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),C,0)}else if(n.parent.inputElement===n.range.startContainer){if("#text"===(C=n.range.startContainer.childNodes[n.range.startOffset]).nodeName&&0===C.textContent.length)n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),C,0===C.textContent.length?0:C.previousSibling.textContent.length);else if(n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),C,C.textContent.length>=0?0:1),0===C.previousSibling.textContent.length){if(t.detach(C.previousSibling),!s){for(m=t.isNullOrUndefined(C.lastChild)?C:C.lastChild;!t.isNullOrUndefined(m)&&"#text"!==m.nodeName&&"BR"!==m.nodeName;)m=m.lastChild;"BR"!==m.nodeName&&0===m.parentElement.textContent.length&&0===m.parentElement.innerHTML.length&&"BR"!==m.parentElement.nodeName&&m.parentElement.appendChild(n.parent.createElement("BR")),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),"BR"===m.nodeName?m:m.parentElement,m.parentElement.textContent.length>=0||"BR"===m.nodeName?0:1)}}else if(0===C.textContent.length){for(m="#text"===C.previousSibling.nodeName?C.previousSibling:C.previousSibling.lastChild;!t.isNullOrUndefined(m)&&"#text"!==m.nodeName;)m=m.lastChild;n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),m,m.textContent.length),t.detach(C)}else if("BR"!==n.parent.enterKey&&0!==C.previousSibling.textContent.length&&0!==C.textContent.length)return void e.args.preventDefault();n.getRangeNode()}if(n.range.startContainer===n.range.endContainer&&n.range.startOffset===n.range.endOffset&&n.range.startContainer===n.parent.inputElement){if(1!==n.parent.inputElement.childNodes.length||"TABLE"!==n.parent.inputElement.childNodes[0].nodeName)if(t.isNullOrUndefined(n.range.startContainer.childNodes[n.range.startOffset])){for(var r=n.range.startContainer.childNodes[n.range.startOffset-1];null!==r.lastChild&&"#text"!==r.nodeName;)r=r.lastChild;n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),r,"BR"===r.nodeName?0:r.textContent.length)}else n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),n.range.startContainer.childNodes[n.range.startOffset],0);n.getRangeNode()}if("P"===n.parent.enterKey&&!s||"DIV"===n.parent.enterKey&&!s||"P"===n.parent.shiftEnterKey&&s||"DIV"===n.parent.shiftEnterKey&&s){if(1===n.range.startOffset&&1===n.parent.inputElement.childNodes.length&&"TABLE"===n.parent.inputElement.childNodes[0].nodeName)(h=n.createInsertElement(s)).appendChild(n.parent.createElement("BR")),n.parent.inputElement.appendChild(h),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),h,0);else{var a=void 0;a=i&&n.parent.formatter.editorManager.domNode.isBlockNode(n.startNode)?n.startNode:n.parent.formatter.editorManager.domNode.blockParentNode(n.startNode);var l=!1,d=!1;if(0===n.range.startOffset||0===n.range.endOffset||n.range.startContainer!==n.range.endContainer||!t.isNullOrUndefined(a.childNodes[0])&&("IMG"===a.childNodes[0].nodeName||a.querySelectorAll("img, audio, video").length>0))0===n.range.startOffset&&0===n.range.endOffset&&(d=!0);else{var c=n.range.startContainer.textContent.substring(0,n.range.startOffset);160!==c.charCodeAt(n.range.startOffset-1)&&0===c.trim().length&&(d=!0)}if(n.removeBRElement(a),!(-1!==t.Browser.userAgent.indexOf("Firefox")&&0===n.range.startOffset&&n.range.startContainer===n.range.endContainer&&"#text"===n.range.startContainer.nodeName&&!n.parent.formatter.editorManager.domNode.isBlockNode(n.range.startContainer.previousSibling)&&n.range.startContainer.parentElement===n.range.startContainer.previousSibling.parentElement)&&(0===n.range.startOffset&&0===n.range.endOffset||d)&&(t.isNullOrUndefined(n.range.startContainer.previousSibling)||"IMG"!==n.range.startContainer.previousSibling.nodeName&&"BR"!==n.range.startContainer.previousSibling.nodeName)){var p=void 0,h=void 0;t.isNullOrUndefined(n.range.startContainer.childNodes)||0!==n.range.startContainer.textContent.length&&("#text"===n.range.startContainer.nodeName||t.isNullOrUndefined(n.range.startContainer.querySelector(".e-video-clickelem"))||0!==n.range.startContainer.querySelector(".e-video-clickelem").textContent.length)||!(n.range.startContainer.querySelectorAll("img, audio, video").length>0)&&t.isNullOrUndefined(n.range.startContainer.querySelector(".e-video-clickelem"))&&"IMG"!==n.range.startContainer.nodeName&&"TABLE"!==n.range.startContainer.nodeName?0!==a.textContent.trim().length||"IMG"===a.childNodes[0].nodeName||""===a.textContent.trim()&&a.querySelectorAll("img, audio, video").length>0?(n.range.startOffset===n.range.endOffset&&0!==n.range.startOffset?h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!1).cloneNode(!0):(h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0).cloneNode(!0),l=!0),p=!1):(h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0).cloneNode(!0),p=!0):(h=n.createInsertElement(s),l=!0,p=!1);var u=void 0;for(u=n.formatTags.indexOf(h.nodeName.toLocaleLowerCase())<0?n.createInsertElement(s):n.parent.createElement(h.nodeName);h.firstChild;)u.appendChild(h.firstChild);if(a.parentElement.insertBefore(u,a),!p){var m=u,g=void 0;if(n.range.startOffset===n.range.endOffset&&0!==n.range.startOffset)for(;!t.isNullOrUndefined(m)&&"#text"!==m.nodeName&&"BR"!==m.nodeName;)g=m,m=m.lastChild;else g=m;g.innerHTML="<br>",l||t.detach(a)}n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),u.nextElementSibling,0)}else if(0!==a.textContent.length||(!t.isNullOrUndefined(a.childNodes[0])&&"IMG"===a.childNodes[0].nodeName||a.querySelectorAll("video").length>0||a.querySelectorAll("audio").length>0||a.querySelectorAll("img").length>0))if(n.range.startContainer===n.range.endContainer&&"SPAN"===n.range.startContainer.nodeName&&(n.range.startContainer.classList.contains("e-video-wrap")||n.range.startContainer.classList.contains("e-audio-wrap"))){if(a.textContent.trim().length>0){for(var h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0),f=t.isNullOrUndefined(h.previousSibling.querySelector(".e-video-wrap"))?h.previousSibling.querySelector(".e-audio-wrap"):h.previousSibling.querySelector(".e-video-wrap"),b=!1,v=f.previousSibling;!t.isNullOrUndefined(v)&&"#text"!==v.nodeName;)v=v.lastChild;if(t.isNullOrUndefined(v)){y=n.parent.createElement("br");f.parentElement.appendChild(y),b=!0}b?n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),f.parentElement,0):n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),v,v.textContent.length),t.detach(f)}else{for(var C=(h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0)).previousSibling;!t.isNullOrUndefined(C.firstChild);)t.detach(C.firstChild);y=n.parent.createElement("br");C.appendChild(y),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),C,0)}t.isNullOrUndefined(n.parent.audioModule)||n.parent.audioModule.hideAudioQuickToolbar(),t.isNullOrUndefined(n.parent.videoModule)||n.parent.videoModule.hideVideoQuickToolbar()}else{h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!0);if(t.isNullOrUndefined(h.childNodes[0])||"#text"!==h.childNodes[0].nodeName||0!==h.childNodes[0].textContent.length||t.detach(h.childNodes[0]),0===h.textContent.trim().length){var y=n.parent.createElement("br");if("A"===n.startNode.nodeName){var N=n.startNode.parentElement;n.startNode.parentElement.insertBefore(y,n.startNode),t.detach(n.startNode),n.startNode=N}else"BR"!==n.startNode.nodeName&&n.startNode.appendChild(y);"\n"===h.childNodes[0].textContent&&t.detach(h.childNodes[0]),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),n.startNode,0)}if(("P"===n.parent.enterKey||"DIV"===n.parent.enterKey)&&!s||("DIV"===n.parent.shiftEnterKey||"P"===n.parent.shiftEnterKey)&&s){var S=n.formatTags.indexOf(h.nodeName.toLocaleLowerCase());if(S<0||S>=0&&0===h.textContent.trim().length){for(var E=n.createInsertElement(s);h.firstChild;)E.appendChild(h.firstChild);n.parent.formatter.editorManager.domNode.insertAfter(E,h),t.detach(h),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),n.parent.formatter.editorManager.domNode.isBlockNode(n.startNode)?E:n.startNode,0)}}}else if(t.isNullOrUndefined(a.children[0])||"BR"===a.children[0].tagName)(u=n.createInsertElement(s)).innerHTML="<br>",n.parent.formatter.editorManager.domNode.insertAfter(u,a),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),u,0);else{h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,a,!1).cloneNode(!0);n.parent.formatter.editorManager.domNode.insertAfter(h,a),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),h,h.textContent.length>=0?0:1)}}e.args.preventDefault()}if("BR"===n.parent.enterKey&&!s||"BR"===n.parent.shiftEnterKey&&s){var T=void 0;if(n.parent.formatter.editorManager.domNode.isBlockNode(n.startNode))T=n.startNode;else{for(var O=n.startNode,w=O;!n.parent.formatter.editorManager.domNode.isBlockNode(O);)w=O,O=O.parentElement;T=O===n.parent.inputElement?w:O}n.removeBRElement(T);for(var k=T.lastChild;!t.isNullOrUndefined(k)&&"#text"!==k.nodeName&&"BR"!==k.nodeName&&"IMG"!==k.nodeName;)k=k.lastChild;var L=n.range.startContainer===k?n.range.startContainer.textContent.length:T.textContent.length,x="IMG"===n.range.startContainer.nodeName||n.range.startContainer.childNodes.length>0&&"IMG"===n.range.startContainer.childNodes[n.range.startOffset].nodeName;if(T!==n.parent.inputElement&&n.parent.formatter.editorManager.domNode.isBlockNode(T)&&n.range.startOffset===n.range.endOffset&&(n.range.startOffset===L||0===T.textContent.trim().length&&x)){var D=n.parent.createElement("br");if(0===n.range.startOffset&&"TABLE"===n.range.startContainer.nodeName)n.range.startContainer.parentElement.insertBefore(D,n.range.startContainer);else if("BR"===k.nodeName&&0===T.textContent.length)n.parent.formatter.editorManager.domNode.insertAfter(D,k);else if(0===n.range.startOffset&&0===n.range.endOffset&&x){var M="IMG"===n.range.startContainer.nodeName?n.range.startContainer:n.range.startContainer.childNodes[n.range.startOffset];T.insertBefore(D,M),D=M}else{var R=n.parent.createElement("br");n.parent.formatter.editorManager.domNode.insertAfter(D,n.range.startContainer),n.parent.formatter.editorManager.domNode.insertAfter(R,n.range.startContainer)}n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),D,0)}else if(t.isNullOrUndefined(T)||T===n.parent.inputElement||"BR"===T.nodeName)n.insertBRElement();else if(0===T.textContent.trim().length||1===T.textContent.trim().length&&8203===T.textContent.charCodeAt(0)){h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,T,!0).cloneNode(!0);n.parent.formatter.editorManager.domNode.insertAfter(h,T);B=n.parent.createElement("br");h.parentElement.insertBefore(B,h),n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),h,0)}else{var h=void 0,B=n.parent.createElement("br");if(0!==n.range.startOffset||0!==n.range.endOffset||t.isNullOrUndefined(T.previousSibling)||"BR"!==T.previousSibling.nodeName||"P"===T.nodeName||"DIV"===T.nodeName)n.insertBRElement();else{h=n.parent.formatter.editorManager.nodeCutter.SplitNode(n.range,T,!1).cloneNode(!0),n.parent.formatter.editorManager.domNode.insertAfter(B,T),n.insertFocusContent();for(m=B.nextSibling;!t.isNullOrUndefined(m)&&"#text"!==m.nodeName;)m=m.lastChild;n.parent.formatter.editorManager.nodeSelection.setCursorPoint(n.parent.contentModule.getDocument(),m,0)}}e.args.preventDefault()}n.parent.trigger("actionComplete",{requestType:s?"ShiftEnterAction":"EnterAction",args:e.args})}})}},e.prototype.removeBRElement=function(e){-1!==t.Browser.userAgent.indexOf("Firefox")&&this.range.endOffset===e.textContent.length&&(0!==e.textContent.length||e.querySelectorAll("BR").length>1)&&!t.isNullOrUndefined(e.lastChild)&&"BR"===e.lastChild.nodeName&&t.detach(e.lastChild)},e.prototype.insertBRElement=function(){var e=!1,n=!0;0===this.range.endContainer.textContent.length&&"BR"===this.range.startContainer.nodeName&&(n=!1);var i=this.parent.createElement("br");if("BR"===this.startNode.nodeName&&"BR"===this.endNode.nodeName&&0===this.range.startOffset&&this.range.startOffset===this.range.endOffset?(this.parent.formatter.editorManager.domNode.insertAfter(i,this.startNode),e=!0):(this.startNode!==this.parent.inputElement||t.isNullOrUndefined(this.range.startContainer.previousSibling)||"BR"!==this.range.startContainer.previousSibling.nodeName||0!==this.range.startContainer.textContent.length||(e=!0),this.range.insertNode(i)),e||!t.isNullOrUndefined(i.nextElementSibling)&&"BR"===i.nextElementSibling.tagName||!t.isNullOrUndefined(i.nextSibling)&&i.nextSibling.textContent.length>0)this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),!t.isNullOrUndefined(i.nextSibling)&&n?i.nextSibling:i,0),e=!1;else{var o=this.parent.createElement("br");this.range.insertNode(o),this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),i,0)}},e.prototype.insertFocusContent=function(){0===this.range.startContainer.textContent.length&&("#text"===this.range.startContainer.nodeName?this.range.startContainer.parentElement.innerHTML="​":this.range.startContainer.innerHTML="​")},e.prototype.createInsertElement=function(e){var n;"DIV"===this.parent.enterKey&&!e||"DIV"===this.parent.shiftEnterKey&&e?n=this.parent.createElement("div"):("P"===this.parent.enterKey&&!e||"P"===this.parent.shiftEnterKey&&e)&&(n=this.parent.createElement("p"));var i=this.parent.formatter.editorManager.domNode.blockNodes()[0].previousSibling,o=this.parent.formatter.editorManager.domNode.blockNodes()[0].nextSibling;return!t.isNullOrUndefined(i)&&i.hasAttribute("style")&&"TABLE"!==i.nodeName&&n.setAttribute("style",i.getAttribute("style")),t.isNullOrUndefined(i)&&!t.isNullOrUndefined(o)&&o.hasAttribute("style")&&"TABLE"!==o.nodeName&&n.setAttribute("style",o.getAttribute("style")),n},e}(),Bi=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)}}(),Ai=function(){return(Ai=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)},Ii=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},Pi=function(n){function i(e,t){var i=n.call(this,e,t)||this;return i.needsID=!0,i}return Bi(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]}),e.push({member:"audio",args:[this,this.serviceLocator]}),e.push({member:"video",args:[this,this.serviceLocator]}),e.push({member:"formatPainter",args:[this]}),e.push({member:"emojiPicker",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("."+Ce),Ce),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.initializeValue=function(){this.isFocusOut=!1,this.isRTE=!1,this.isBlur=!0,this.defaultResetValue=null,this.isResizeInitialized=!1},i.prototype.preRender=function(){this.initializeValue(),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 ct,this.initializeServices(),this.setContainer(),this.persistData(),t.setStyleAttribute(this.element,{width:t.formatUnit(this.width)}),t.attributes(this.element,{role:"application","aria-label":"Rich Text Editor"})},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.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.element.innerHTML="",this.element.parentElement.insertBefore(o,this.element),this.valueContainer=this.element,t.removeClass([this.valueContainer],this.element.getAttribute("class").split(" ")),this.element=o}else this.valueContainer=this.createElement("textarea",{id:this.getID()+"-value",attrs:{"aria-labelledby":this.getID()}});if(this.valueContainer.name=this.getID(),t.addClass([this.valueContainer],"e-rte-hidden"),!t.isNullOrUndefined(this.cssClass))for(var r=this.cssClass.split(" "),s=0;s<r.length;s++)t.addClass([this.valueContainer],r[s]);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.showEmojiPicker=function(e,t){this.readonly||this.notify("emojiPicker",{x:e,y:t})},i.prototype.executeCommand=function(e,n,i){n=this.htmlPurifier(e,n);var o;if("HTML"===this.editorMode){var r=this.getRange();this.iframeSettings.enable&&this.formatter.editorManager.nodeSelection.Clear(this.element.ownerDocument),(!(!this.iframeSettings.enable||r.startContainer!==this.inputElement)||!this.inputElement.contains(r.startContainer))&&this.focusIn()}var s=ri[""+e];if(i&&i.undo&&i.undo&&0===this.formatter.getUndoRedoStack().length&&this.formatter.saveData(),-1!==this.maxLength&&!t.isNullOrUndefined(s.command)){var a=0;if("Links"===s.command&&(a=0===n.text.length?n.url.length:n.text.length),"Images"!==s.command&&"Table"!==s.command&&"Files"!==s.command||(a=1),"InsertHTML"===s.command)if(t.isNullOrUndefined(n))t.isNullOrUndefined(s.value)||"<hr/>"!==s.value&&"<br/>"!==s.value||(a=1);else{var l=this.createElement("div");l.innerHTML=n,a=l.textContent.length}"InsertText"===s.command&&(a=n.length);var d=this.getText().trim().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length-this.getSelection().length+a;if(!(-1===this.maxLength||d<=this.maxLength))return}o=n,"FormatPainter"===s.command&&(t.isNullOrUndefined(n)||(this.formatPainterSettings=n),o={formatPainterAction:s.value}),this.formatter.editorManager.execCommand(s.command,s.subCommand?s.subCommand:o||s.value,null,null,o||s.value,o||s.value),i&&i.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=(r=this.createElement("img",{attrs:{src:n.url}})).outerHTML;this.enableHtmlSanitizer&&(i=this.htmlEditorModule.sanitizeHelper(r.outerHTML));a=""!==i&&this.createElement("div",{innerHTML:i}).firstElementChild.getAttribute("src")||null;a=t.isNullOrUndefined(a)?"":a,n.url=a,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"insertAudio":var o=this.createElement("audio",{attrs:{controls:""}}),r=this.createElement("source",{attrs:{src:n.url,type:n.url&&n.url.split(".").length>0?"audio/"+n.url.split(".")[n.url.split(".").length-1]:""}});o.appendChild(r);s=o.outerHTML;this.enableHtmlSanitizer&&(s=this.htmlEditorModule.sanitizeHelper(o.outerHTML));a=""!==s&&this.createElement("div",{innerHTML:s}).firstElementChild.firstElementChild.getAttribute("src")||null;a=t.isNullOrUndefined(a)?"":a,n.url=a;break;case"insertVideo":var o=this.createElement("video",{attrs:{controls:""}}),r=this.createElement("source",{attrs:{src:n.url,type:n.url&&n.url.split(".").length>0?"video/"+n.url.split(".")[n.url.split(".").length-1]:""}});o.appendChild(r);var s=o.outerHTML;this.enableHtmlSanitizer&&(s=this.htmlEditorModule.sanitizeHelper(r.outerHTML));var a=""!==s&&this.createElement("div",{innerHTML:s}).firstElementChild.getAttribute("src")||null;a=t.isNullOrUndefined(a)?"":a,n.url=a,t.isNullOrUndefined(n.width)&&(n.width={minWidth:this.insertVideoSettings.minWidth,maxWidth:this.insertVideoSettings.maxWidth,width:this.insertVideoSettings.width}),t.isNullOrUndefined(n.height)&&(n.height={minHeight:this.insertVideoSettings.minHeight,maxHeight:this.insertVideoSettings.maxHeight,height:this.insertVideoSettings.height});break;case"createLink":var l=this.createElement("a",{attrs:{href:n.url}}),d=l.outerHTML;this.enableHtmlSanitizer&&(d=this.htmlEditorModule.sanitizeHelper(l.outerHTML));var c=""!==d&&this.createElement("div",{innerHTML:d}).firstElementChild.getAttribute("href")||null;c=t.isNullOrUndefined(c)?"":c,n.url=c}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="Markdown"===this.editorMode||t.isNullOrUndefined(this.value)?this.value:this.addAnchorAriaLabel(this.value),this.value&&!this.valueTemplate&&this.setProperties({value:this.serializeValue(this.value)},!0),this.renderModule=new Jn(this,this.serviceLocator),this.sourceCodeModule=new ni(this,this.serviceLocator),this.notify("initial-load",{}),this.trigger("load"),this.RTERender();new wt(this);this.notify(V,{}),this.enableXhtml&&this.setProperties({value:this.getXhtml()},!0),this.toolbarSettings.enable&&("Expand"===this.toolbarSettings.type||"MultiRow"===this.toolbarSettings.type||"Scrollable"===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.valueContainer.defaultValue=this.value),this.enabled&&!this.readonly?this.eventInitializer():this.unWireEvents(),this.notify(oe,{cssClass:this.getCssClass()}),this.addAudioVideoWrapper(),this.notify("tableclass",{}),this.renderComplete()},i.prototype.addAudioVideoWrapper=function(){for(var e,n=this,i=this.element.querySelectorAll("audio"),o=0;o<i.length;o++)if(i[o].classList.contains("e-rte-audio")||(i[o].classList.add("e-rte-audio"),i[o].classList.add("e-audio-inline")),!i[o].parentElement.classList.contains("e-clickelem")&&!i[o].parentElement.classList.contains("e-audio-wrap")){var r=this.createElement("span",{className:"e-audio-wrap"});r.setAttribute("style","width:300px; margin:0 auto;"),r.contentEditable="false";var s=this.createElement("span",{className:"e-clickelem"});r.appendChild(s),i[o].parentNode.insertBefore(r,i[o].nextSibling),s.appendChild(i[o]),null===r.nextElementSibling&&(e=this.createElement("br"),r.parentNode.insertBefore(e,r.nextSibling))}for(var a=this.element.querySelectorAll("video"),o=0;o<a.length;o++){if(a[o].classList.contains("e-rte-video")||(a[o].classList.add("e-rte-video"),a[o].classList.add("e-video-inline")),!a[o].parentElement.classList.contains("e-clickelem")&&!a[o].parentElement.classList.contains("e-video-wrap")){var l=this.createElement("span",{className:"e-video-wrap"});l.contentEditable="false",a[o].parentNode.insertBefore(l,a[o].nextSibling),l.appendChild(a[o]),null===l.nextElementSibling&&(e=this.createElement("br"),l.parentNode.insertBefore(e,l.nextSibling))}-1!==t.Browser.userAgent.indexOf("Firefox")&&(a[o].addEventListener("play",function(e){n.notify($,{args:e}),n.notify("editAreaClick",{args:e})}),a[o].addEventListener("pause",function(e){n.notify($,{args:e}),n.notify("editAreaClick",{args:e})}))}},i.prototype.eventInitializer=function(){this.wireEvents()},i.prototype.cleanList=function(e){var n=this.getRange(),i=n.startContainer,o=n.endContainer,r=n.startOffset,s=i===o,a=(o.textContent.length,"#text"===n.endContainer.nodeName?n.endContainer.parentElement:n.endContainer),l=t.closest(a,"LI"),d=!1,c=n.endOffset;if(o.nodeType===Node.TEXT_NODE&&"\ufeff"===o.textContent.charAt(c-1)&&c--,!t.isNullOrUndefined(l)&&a.textContent.trim().length===c&&!n.collapsed&&t.isNullOrUndefined(a.nextElementSibling)){for(var p=0;p<l.childNodes.length;p++)"#text"===l.childNodes[p].nodeName&&0===l.childNodes[p].textContent.trim().length&&(t.detach(l.childNodes[p]),d=!0,p--);for(var h=l;null!==h.lastChild&&"#text"!==h.nodeName;)h=h.lastChild;if(d){var u="BR"!==h.nodeName||t.isNullOrUndefined(h.previousSibling)?h:h.previousSibling;this.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),s?u:i,u,r,"BR"===u.nodeName?0:u.textContent.length)}}},i.prototype.keyDown=function(e){if(this.notify(G,{member:"keydown",args:e}),this.restrict(e),"HTML"===this.editorMode&&this.cleanList(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)}}var p=!!t.isNullOrUndefined(e.action)||"format-copy"!==e.action;if(0===this.formatter.getUndoRedoStack().length&&p&&!(e.altKey||e.shiftKey||e.altKey&&e.shiftKey&&67==e.which)&&this.formatter.saveData(),"insert-link"!==e.action&&"format-copy"!==e.action&&"format-paste"!==e.action&&(!e.target||!e.target.classList.contains("e-mention")||t.isNullOrUndefined(document.querySelector("#"+e.target.id+"_popup.e-popup-open"))||"Tab"!==e.code)&&(e.action&&"paste"!==e.action&&"space"!==e.action||9===e.which||"Backspace"===e.code&&8===e.which)){var h=!1;switch(t.isNullOrUndefined(this.formatPainterModule)||(h="escape"===this.formatPainterModule.previousAction),h||("HTML"!==this.editorMode||"increase-fontsize"!==e.action&&"decrease-fontsize"!==e.action?this.formatter.process(this,null,e):this.notify("onHandleFontsizeChange",{member:"onHandleFontsizeChange",args:e})),e.action){case"toolbar-focus":if(this.toolbarSettings.enable&&this.getToolbarElement()){var u=this.getToolbarElement().querySelector(".e-toolbar-item:not(.e-overlay)[title]");u.firstElementChild.removeAttribute("tabindex"),u.firstElementChild.focus()}break;case"escape":this.contentModule.getEditPanel().focus()}}t.isNullOrUndefined(this.placeholder)||(t.isNullOrUndefined(this.placeHolderWrapper)||1===this.inputElement.textContent.length?this.iframeSettings.enable&&this.inputElement.classList.contains("e-rte-placeholder")?t.removeClass([this.inputElement],"e-rte-placeholder"):this.setPlaceHolder():this.placeHolderWrapper.style.display="none"),this.notify("afterKeyDown",{member:"afterKeyDown",args:e}),this.autoResize()},i.prototype.keyUp=function(e){if("HTML"===this.editorMode){var n=this.getRange();if(!(t.isNullOrUndefined(e)||t.isNullOrUndefined(e.code)||"Backspace"!==e.code&&"Delete"!==e.code)){var i=this.getRange(),o=this.iframeSettings.enable?this.contentModule.getPanel().ownerDocument.getSelection():this.contentModule.getDocument().getSelection();o.rangeCount>0&&(o.removeAllRanges(),o.addRange(i))}if(-1!==t.Browser.userAgent.indexOf("Firefox")&&"#text"===n.startContainer.nodeName&&n.startContainer.parentElement===this.inputElement&&"BR"!==this.enterKey){var r=this.getRange(),s=this.createElement(this.enterKey);r.startContainer.parentElement.insertBefore(s,r.startContainer),s.appendChild(r.startContainer),this.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),s.childNodes[0],s.childNodes[0],s.childNodes[0].textContent.length,s.childNodes[0].textContent.length)}}this.notify(K,{member:"keyup",args:e}),39!==e.keyCode&&37!==e.keyCode||this.notify("tableModulekeyUp",{member:"tableModulekeyUp",args:e}),"KeyX"!==e.code||88!==e.which||88!==e.keyCode||!e.ctrlKey||""!==this.inputElement.innerHTML&&"<br>"!==this.inputElement.innerHTML||(this.inputElement.innerHTML=k(x(this),this));var a=32===e.which||13===e.which||8===e.which||46===e.which,l="C"===e.key&&e.altKey&&e.shiftKey,d="V"===e.key&&e.altKey&&e.shiftKey;(!l&&!d&&("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||a)||"Markdown"===this.editorMode&&("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||a)||this.autoSaveOnIdle&&t.Browser.isDevice&&!this.inlineMode.enable)&&this.formatter.onKeyHandler(this,e),(this.inputElement&&0!==this.inputElement.textContent.length||this.element.querySelectorAll(".e-toolbar-item.e-active").length>0||this.formatter.getUndoRedoStack().length>0)&&this.notify("toolbar-refresh",{args:e}),t.isNullOrUndefined(this.placeholder)||"Enter"===e.key&&13===e.keyCode||"<p><br></p>"!==this.inputElement.innerHTML&&"<div><br></div>"!==this.inputElement.innerHTML&&"<br>"!==this.inputElement.innerHTML||this.setPlaceHolder()},i.prototype.serializeValue=function(e){return"HTML"!==this.editorMode||t.isNullOrUndefined(e)||(this.enableHtmlEncode?(e=this.htmlEditorModule.sanitizeHelper(M(e)),e=this.encode(e)):(e=this.htmlEditorModule.sanitizeHelper(e),e=this.enableXhtml?this.htmlEditorModule.xhtmlValidation.selfEncloseValidation(e):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:D(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)||e.target&&("VIDEO"===e.target.nodeName||e.target.querySelectorAll(".e-video-wrap").length>0)||e.target&&"BR"!==e.target.nodeName&&(e.target.classList.contains("e-audio-wrap")||e.target.classList.contains("e-clickelem")||e.target.classList.contains("e-video-clickelem")))&&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}this.notifyMouseUp(e)},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(X,i,function(i){var o=n.getText().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length-n.getSelection().length+(t.isNullOrUndefined(e)||t.isNullOrUndefined(e.clipboardData)?0:e.clipboardData.getData("text/plain").replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"").length);if("Markdown"===n.editorMode){var r={requestType:"Paste",editorMode:n.editorMode,event:e};return setTimeout(function(){n.formatter.onSuccess(n,r)},0),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 s={requestType:"Paste",editorMode:n.editorMode,event:e},a=null,l=!1;e&&!t.isNullOrUndefined(e.clipboardData)&&(a=e.clipboardData.getData("text/plain"),l=e.clipboardData.getData("text/html").indexOf("MsoNormal")>0);var d=e&&e.clipboardData&&e.clipboardData.items.length>0?e.clipboardData.items[0].getAsFile():null;null!==a&&n.notify(ee,{file:d,args:e,text:a,isWordPaste:l}),setTimeout(function(){n.formatter.onSuccess(n,s)},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(t.isNullOrUndefined(this.timeInterval)||(clearInterval(this.timeInterval),this.timeInterval=null),null===this.element.offsetParent)return t.isNullOrUndefined(this.toolbarModule)||this.toolbarModule.destroy(),this.notify(ie,{}),n.prototype.destroy.call(this),void(this.isRendered=!1);if(this.notify(Q,{}),this.destroyDependentModules(),this.unWireEvents(),"TEXTAREA"===this.originalElement.tagName){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()?(this.valueContainer.value=this.originalElement.innerHTML.trim(),this.setProperties({value:t.isNullOrUndefined(this.initialValue)?null:this.initialValue},!0)):this.valueContainer.value=this.valueContainer.defaultValue,this.element=this.valueContainer;for(i=0;i<this.originalElement.classList.length;i++)t.addClass([this.element],this.originalElement.classList[i]);if(!t.isNullOrUndefined(this.cssClass))for(var e=this.cssClass.split(" "),i=0;i<e.length;i++)t.addClass([this.element],e[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 o=this.cssClass.split(" "),i=0;i<o.length;i++)""!==o[i].trim()&&t.removeClass([this.element],o[i]);this.removeHtmlAttributes(),this.removeAttributes(),n.prototype.destroy.call(this),this.isRendered=!1}},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.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"enterKey":case"value":var a=void 0;a="enterKey"===s?null===this.value||"<div><br></div>"===this.value||"<p><br></p>"===this.value||"<br>"===this.value?null:this.value:e[s],a=this.serializeValue(a);var l="HTML"===this.editorMode?k(a,this):a;(!t.isNullOrUndefined(a)&&""!==a||"enterKey"===s)&&this.setProperties({value:this.enableHtmlEncode?this.encode(M(l)):l},!0),this.updatePanelValue(),this.inputElement&&this.notify("tableclass",{}),this.setPlaceHolder(),this.notify("xhtmlValidation",{module:"XhtmlValidation",newProp:e,oldProp:i}),this.enableXhtml&&this.setProperties({value:this.getXhtml()},!0),this.showCharCount&&this.countModule.refresh(),this.addAudioVideoWrapper();break;case"valueTemplate":this.setValue(!0),this.showCharCount&&this.countModule.refresh();break;case"width":this.setWidth(e[s]),this.toolbarSettings.enable&&!this.inlineMode.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]),this.notify(oe,{cssClass:e[s],oldCssClass:i[s]});break;case"enabled":this.setEnable();break;case"enableRtl":this.updateRTL();break;case"placeholder":this.placeholder=e[s],this.setPlaceHolder();break;case"htmlAttributes":_(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(W,{module:"quickToolbar",newProp:e,oldProp:i}),this.setContentHeight();break;case"toolbarSettings":this.notify(W,{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(W,{newProp:e,oldProp:i});break;case"formatPainterSettings":this.formatter.editorManager.observer.notify("model_changed",{module:"formatPainter",newProp:e});break;default:this.notify(W,{newProp:e,oldProp:i})}}},i.prototype.updateValueData=function(){this.enableHtmlEncode?this.setProperties({value:this.encode(M(this.inputElement.innerHTML))},!0):this.setProperties({value:/<[a-z][\s\S]*>/i.test(this.inputElement.innerHTML)?this.inputElement.innerHTML:M(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?M(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?"DIV"===this.enterKey?this.inputElement.innerHTML="<div><br/></div>":"BR"===this.enterKey?this.inputElement.innerHTML="<br/>":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.cssClass}),this.inputElement&&this.inputElement.parentElement.insertBefore(this.placeHolderWrapper,this.inputElement),t.attributes(this.placeHolderWrapper,{style:"font-size: 14px; margin-left: 0px; margin-right: 0px;"})),this.placeHolderWrapper.innerHTML=this.placeholder,!(0===this.inputElement.textContent.length&&this.inputElement.childNodes.length<2)||t.isNullOrUndefined(this.inputElement.firstChild)||"BR"!==this.inputElement.firstChild.nodeName&&("P"!==this.inputElement.firstChild.nodeName&&"DIV"!==this.inputElement.firstChild.nodeName||t.isNullOrUndefined(this.inputElement.firstChild.firstChild)||"BR"!==this.inputElement.firstChild.firstChild.nodeName)?this.placeHolderWrapper.style.display="none":this.placeHolderWrapper.style.display="block"):this.inputElement.setAttribute("placeholder",this.placeholder)),this.placeholder&&this.iframeSettings.enable&&(!(0===this.inputElement.textContent.length&&this.inputElement.childNodes.length<2)||t.isNullOrUndefined(this.inputElement.firstChild)||"BR"!==this.inputElement.firstChild.nodeName&&("P"!==this.inputElement.firstChild.nodeName&&"DIV"!==this.inputElement.firstChild.nodeName||t.isNullOrUndefined(this.inputElement.firstChild.firstChild)||"BR"!==this.inputElement.firstChild.firstChild.nodeName)?t.removeClass([this.inputElement],"e-rte-placeholder"):(t.addClass([this.inputElement],"e-rte-placeholder"),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(te,{enableRtl:this.enableRtl}),this.enableRtl?(this.element.classList.add("e-rtl"),this.inputElement.classList.add("e-rtl")):(this.element.classList.remove("e-rtl"),this.inputElement.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.unWireEvents()):this.enabled&&this.wireEvents())},i.prototype.print=function(){var e,n=this,i={element:this.inputElement,requestType:"print",cancel:!1};this.trigger(X,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 pt),this.serviceLocator.register("rteLocale",this.localeObj=new t.L10n(this.getModuleName(),Ze,this.locale)),this.serviceLocator.register("dialogRenderObject",new oi(this))},i.prototype.RTERender=function(){var n=this.serviceLocator.getService("rendererFactory");this.contentModule=n.getRenderer(e.RenderType.Content),this.fullScreenModule=new Gn(this),this.enterKeyModule=new Ri(this),this.renderModule.render(),this.inputElement=this.contentModule.getEditPanel(),this.setHeight(this.height),_(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(M(this.value))})},i.prototype.setIframeSettings=function(){if(this.iframeSettings.resources){var e=this.iframeSettings.resources.styles,n=this.iframeSettings.resources.scripts;!t.isNullOrUndefined(this.iframeSettings.resources.scripts)&&this.iframeSettings.resources.scripts.length>0&&this.InjectSheet(!0,n),!t.isNullOrUndefined(this.iframeSettings.resources.styles)&&this.iframeSettings.resources.styles.length>0&&this.InjectSheet(!1,e)}this.iframeSettings.attributes&&_(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.setValue=function(e){var n=this;if(this.valueTemplate){var i=new RegExp(/<(?=.*? .*?\/ ?>|br|hr|input|!--|wbr)[a-z]+.*?>|<([a-z]+).*?<\/\1>/i);if("string"==typeof this.valueTemplate&&i.test(this.valueTemplate))this.setProperties({value:this.valueTemplate});else{var o=t.compile(this.valueTemplate)("",this,"valueTemplate");if("string"!=typeof this.valueTemplate&&this.isReact){this.displayTempElem=this.createElement("div");for(s=0;s<o.length;s++){a=o[s];t.append([a],this.displayTempElem)}this.renderTemplates(function(){n.inputElement.innerHTML=n.displayTempElem.childNodes[0].innerHTML,n.setProperties({value:n.inputElement.innerHTML.trim()})})}else{var r=this.element;e&&(this.inputElement.innerHTML="",r=this.inputElement);for(var s=0;s<o.length;s++){var a=o[s];t.append([a],r)}this.setProperties({value:r.innerHTML.trim()}),this.renderReactTemplates()}}}else{var l=!t.isNullOrUndefined(this.element.innerHTML)&&this.element.innerHTML.replace(/<(\/?|\!?)(!--!--)>/g,"").trim();""!==l&&("TEXTAREA"===this.element.tagName?this.setProperties({value:M(l)}):this.setProperties({value:l}))}},i.prototype.renderTemplates=function(e){this.renderReactTemplates(e)},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.getInsertVidMaxWidth=function(){var e=this.insertVideoSettings.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=0,a="string"==typeof this.height&&this.height.indexOf("%")>-1,l=this.sourceCodeModule.getPanel()&&"block"===this.sourceCodeModule.getPanel().parentElement.style.display?this.sourceCodeModule.getPanel().parentElement:this.contentModule.getPanel(),d=this.element.offsetHeight;0!==d||"auto"===this.height||this.getToolbar()||(d=parseInt(this.height,10),a&&(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?(o="auto"===this.height&&0===h?"auto":d-(c+u+h)+"px",s=this.toolbarSettings.enableFloating?0:u):o="auto"!==this.height||this.element.classList.contains("e-rte-full-screen")||this.isResizeInitialized?a&&r?r:d-(c+h)+"px":"auto",("windowResize"!==n||a)&&(this.iframeSettings.enable?"auto"!==o&&t.setStyleAttribute(l,{height:o,marginTop:s+"px"}):("windowResize"===n&&a&&(o=parseInt(o,10)-2+"px"),t.setStyleAttribute(l,{height:o,marginTop:s+"px"}))),this.iframeSettings.enable&&"sourceCode"===n){var m=t.select(".e-rte-content",this.element);t.setStyleAttribute(m,{height:o,marginTop:s+"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(){var e=this.removeResizeElement(this.contentModule.getEditPanel().innerHTML);return!this.enableXhtml||"<p><br></p>"!==e&&"<div><br></div>"!==e&&"<br>"!==e?this.serializeValue(e):null},i.prototype.getXhtml=function(){var e=this.removeResizeElement(this.value);return!t.isNullOrUndefined(e)&&this.enableXhtml&&(e=this.htmlEditorModule.xhtmlValidation.selfEncloseValidation(e)),e},i.prototype.showSourceCode=function(){this.readonly||this.notify("sourceCode",{})},i.prototype.getCharCount=function(){var e="Markdown"===this.editorMode?this.inputElement.value.trim():this.inputElement.textContent.trim();return"Markdown"!==this.editorMode&&-1!==e.indexOf("")?e.replace(/\u200B/g,"").length:e.length},i.prototype.showDialog=function(t){t===e.DialogType.InsertLink?this.notify("showLinkDialog",{}):t===e.DialogType.InsertImage?this.notify("showImageDialog",{}):t===e.DialogType.InsertAudio?this.notify("showAudioDialog",{}):t===e.DialogType.InsertVideo?this.notify("showVideoDialog",{}):t===e.DialogType.InsertTable&&this.notify("showTableDialog",{})},i.prototype.closeDialog=function(t){t===e.DialogType.InsertLink?this.notify("closeLinkDialog",{}):t===e.DialogType.InsertImage?this.notify("closeImageDialog",{}):t===e.DialogType.InsertAudio?this.notify("closeAudioDialog",{}):t===e.DialogType.InsertVideo?this.notify("closeVideoDialog",{}):t===e.DialogType.InsertTable&&this.notify("closeTableDialog",{})},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.getCssClass=function(e){return t.isNullOrUndefined(this.cssClass)?"":e?" "+this.cssClass:this.cssClass},i.prototype.mouseDownHandler=function(e){var n=e.touches?e.changedTouches[0]:e;t.addClass([this.element],["e-focused"]),this.preventDefaultResize(e),this.notify($,{args:e}),this.formatter.editorManager.observer.notify($,{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")),!0!==this.iframeSettings.enable&&(this.contentModule.getPanel().style.borderBottom="none"),this.setContentHeight("windowResize",e),this.notify("resize",null)},i.prototype.scrollHandler=function(e){this.element&&this.notify(Z,{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||"<div><br></div>"===this.inputElement.innerHTML||"<br>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(M(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(!this.readonly){var r=this.getCurrentFocus(e);"editArea"!==r&&"textArea"!==r&&"sourceCode"!==r||this.resetToolbarTabIndex()}},i.prototype.getUpdatedValue=function(){var e,t=this.element.querySelector(".e-rte-srctextarea");return"HTML"===this.editorMode?(e="<p><br></p>"===this.inputElement.innerHTML||"<div><br></div>"===this.inputElement.innerHTML||"<br>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(M(this.removeResizeElement(this.inputElement.innerHTML))):this.inputElement.innerHTML,t&&"block"===t.style.display&&(e=t.value)):e=""===this.inputElement.value?null:this.inputElement.value,null==e||this.enableHtmlEncode||(e=this.removeResizeElement(e)),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.isValueChangeBlurhandler=!1,this.invokeChangeEvent())},i.prototype.updateIntervalValue=function(){clearTimeout(this.idleInterval),this.idleInterval=setTimeout(this.updateValueOnIdle.bind(this),0)},i.prototype.cleanupResizeElements=function(e){var t=this.removeResizeElement(e.value);e.callBack(t)},i.prototype.addAnchorAriaLabel=function(e){var t=document.createElement("div");t.innerHTML=e;var n=t.querySelectorAll("a");if(n.length>0)for(var i=0;i<n.length;i++)n[i].hasAttribute("target")&&"_blank"===n[i].getAttribute("target")?n[i].setAttribute("aria-label",this.serviceLocator.getService("rteLocale").getConstant("linkAriaLabel")):n[i];return t.innerHTML},i.prototype.removeResizeElement=function(e){var n=document.createElement("div");n.innerHTML=e;var i=n.querySelectorAll(".e-column-resize, .e-row-resize, .e-table-box, .e-table-rhelper, .e-img-resize");if(i.length>0)for(var o=0;o<i.length;o++)t.detach(i[o]);return this.removeSelectionClassStates(n),n.innerHTML},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,"."+de);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}),"msie"!==t.Browser.info.name&&e.detail>3&&e.preventDefault()},i.prototype.blurHandler=function(e){var n=e.relatedTarget;if(n){var i=t.closest(n,"."+de);i&&i===this.element?(this.isBlur=!1,n===this.getToolbarElement()&&n.setAttribute("tabindex","-1")):t.closest(n,'[aria-owns="'+this.getID()+'"]')||t.closest(n,".e-rte-elements")?this.isBlur=!1:(this.isBlur=!0,n=null)}if(this.isBlur&&t.isNullOrUndefined(n)){t.removeClass([this.element],["e-focused"]),this.removeSelectionClassStates(this.inputElement),this.notify("focusChange",{});var o=this.getUpdatedValue();this.setProperties({value:o}),this.valueContainer.value=this.value,this.notify("toolbar-refresh",{args:e,documentNode:document}),this.isValueChangeBlurhandler=!0,this.invokeChangeEvent(),this.isFocusOut=!0,this.isBlur=!1,E(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.isNullOrUndefined(this.placeHolderWrapper)&&this.element.querySelector("[title = Preview]")&&(this.placeHolderWrapper.style.display="none"),t.EventHandler.remove(document,"mousedown",this.onDocumentClick)}else this.isRTE=!0;this.readonly||"outside"!==this.getCurrentFocus(e)||this.resetToolbarTabIndex()},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,isInteracted:this.isValueChangeBlurhandler};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.inputElement,"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.inputElement,"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: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=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.on("cleanupResizeElements",this.cleanupResizeElements,this),this.on("updateValueOnIdle",this.updateValueOnIdle,this),this.readonly&&this.enabled||this.bindEvents()},i.prototype.restrict=function(e){if(this.maxLength>=0){var t="Markdown"===this.editorMode?this.contentModule.getText():this.getText().replace(/(\r\n|\n|\r|\t)/gm,"").replace(/\u200B/g,"");if(!t)return;for(var 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 bt(this.inputElement,{keyAction:this.keyDown.bind(this),keyConfigs:Ai({},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,"content-changed",this.contentChanged,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.currentTarget=e.target,this.notify("iframe-click",e)},i.prototype.editorKeyDown=function(e){switch(e.event.action){case"copy":this.onCopy();break;case"cut":this.onCut();break;case"tab":this.iframeSettings.enable&&(this.isBlur=!0)}!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.off("cleanupResizeElements",this.cleanupResizeElements),this.off("updateValueOnIdle",this.updateValueOnIdle),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,"content-changed",this.contentChanged),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()},i.prototype.getCurrentFocus=function(e){return e.target===this.inputElement&&document.activeElement===this.inputElement?"editArea":e.target===this.getToolbarElement()||!t.isNullOrUndefined(e.relatedTarget)&&t.closest(e.relatedTarget,".e-rte-toolbar")===this.getToolbarElement()?"toolbar":e.target===this.valueContainer&&document.activeElement===this.valueContainer?"textArea":!t.isNullOrUndefined(e.target)&&e.target.classList.contains("e-rte-srctextarea")&&document.activeElement===e.target?"sourceCode":"outside"},i.prototype.resetToolbarTabIndex=function(){if(this.getToolbarElement())for(var e=this.getToolbarElement().querySelectorAll("input,select,button,a,[tabindex]"),t=0;t<e.length;t++)e[t].classList.contains("e-rte-dropdown-btn")||e[t].classList.contains("e-insert-table-btn")||e[t].hasAttribute("tabindex")&&"-1"===e[t].getAttribute("tabindex")||e[t].setAttribute("tabindex","-1")},i.prototype.removeSelectionClassStates=function(e){for(var n=["e-img-focus","e-cell-select","e-video-focus","e-audio-focus"],i=0;i<n.length;i++){var o=e.querySelectorAll("."+n[i]);if(t.removeClass(o,n[i]),0!==o.length)for(var r=0;r<o.length;r++)0===o[r].classList.length&&o[r].removeAttribute("class"),"IMG"===o[r].nodeName&&""!==o[r].style.outline&&(o[r].style.outline="")}},Ii([t.Complex({},li)],i.prototype,"toolbarSettings",void 0),Ii([t.Complex({},mi)],i.prototype,"quickToolbarSettings",void 0),Ii([t.Complex({},bi)],i.prototype,"pasteCleanupSettings",void 0),Ii([t.Complex({},gi)],i.prototype,"formatPainterSettings",void 0),Ii([t.Complex({},fi)],i.prototype,"emojiPickerSettings",void 0),Ii([t.Complex({},Li)],i.prototype,"iframeSettings",void 0),Ii([t.Complex({},di)],i.prototype,"insertImageSettings",void 0),Ii([t.Complex({},ci)],i.prototype,"insertAudioSettings",void 0),Ii([t.Complex({},pi)],i.prototype,"insertVideoSettings",void 0),Ii([t.Complex({},ui)],i.prototype,"tableSettings",void 0),Ii([t.Property(0)],i.prototype,"floatingToolbarOffset",void 0),Ii([t.Complex({},Mi)],i.prototype,"inlineMode",void 0),Ii([t.Complex({},hi)],i.prototype,"fileManagerSettings",void 0),Ii([t.Property("100%")],i.prototype,"width",void 0),Ii([t.Property(!1)],i.prototype,"enablePersistence",void 0),Ii([t.Property(!0)],i.prototype,"showTooltip",void 0),Ii([t.Property(!1)],i.prototype,"enableResize",void 0),Ii([t.Property({})],i.prototype,"htmlAttributes",void 0),Ii([t.Property(null)],i.prototype,"placeholder",void 0),Ii([t.Property(!1)],i.prototype,"autoSaveOnIdle",void 0),Ii([t.Property(!1)],i.prototype,"readonly",void 0),Ii([t.Property(!0)],i.prototype,"enabled",void 0),Ii([t.Property(!0)],i.prototype,"enableHtmlSanitizer",void 0),Ii([t.Property(!1)],i.prototype,"enableHtmlEncode",void 0),Ii([t.Property(!1)],i.prototype,"enableXhtml",void 0),Ii([t.Property("auto")],i.prototype,"height",void 0),Ii([t.Property(null)],i.prototype,"cssClass",void 0),Ii([t.Property(null)],i.prototype,"value",void 0),Ii([t.Property("P")],i.prototype,"enterKey",void 0),Ii([t.Property("BR")],i.prototype,"shiftEnterKey",void 0),Ii([t.Property(30)],i.prototype,"undoRedoSteps",void 0),Ii([t.Property(300)],i.prototype,"undoRedoTimer",void 0),Ii([t.Property("HTML")],i.prototype,"editorMode",void 0),Ii([t.Property(null)],i.prototype,"keyConfig",void 0),Ii([t.Property(!1)],i.prototype,"showCharCount",void 0),Ii([t.Property(!1)],i.prototype,"enableTabKey",void 0),Ii([t.Property(!1)],i.prototype,"enableAutoUrl",void 0),Ii([t.Property(-1)],i.prototype,"maxLength",void 0),Ii([t.Complex({},yi)],i.prototype,"format",void 0),Ii([t.Complex({},Ei)],i.prototype,"numberFormatList",void 0),Ii([t.Complex({},Ti)],i.prototype,"bulletFormatList",void 0),Ii([t.Complex({},vi)],i.prototype,"fontFamily",void 0),Ii([t.Complex({},Ci)],i.prototype,"fontSize",void 0),Ii([t.Complex({},Ni)],i.prototype,"fontColor",void 0),Ii([t.Complex({},Si)],i.prototype,"backgroundColor",void 0),Ii([t.Property(null)],i.prototype,"valueTemplate",void 0),Ii([t.Property(1e4)],i.prototype,"saveInterval",void 0),Ii([t.Event()],i.prototype,"actionBegin",void 0),Ii([t.Event()],i.prototype,"actionComplete",void 0),Ii([t.Event()],i.prototype,"beforeDialogOpen",void 0),Ii([t.Event()],i.prototype,"dialogOpen",void 0),Ii([t.Event()],i.prototype,"beforeDialogClose",void 0),Ii([t.Event()],i.prototype,"dialogClose",void 0),Ii([t.Event()],i.prototype,"beforeQuickToolbarOpen",void 0),Ii([t.Event()],i.prototype,"quickToolbarOpen",void 0),Ii([t.Event()],i.prototype,"quickToolbarClose",void 0),Ii([t.Event()],i.prototype,"toolbarStatusUpdate",void 0),Ii([t.Event()],i.prototype,"updatedToolbarStatus",void 0),Ii([t.Event()],i.prototype,"imageSelected",void 0),Ii([t.Event()],i.prototype,"beforeImageUpload",void 0),Ii([t.Event()],i.prototype,"imageUploading",void 0),Ii([t.Event()],i.prototype,"imageUploadSuccess",void 0),Ii([t.Event()],i.prototype,"imageUploadFailed",void 0),Ii([t.Event()],i.prototype,"imageRemoving",void 0),Ii([t.Event()],i.prototype,"afterImageDelete",void 0),Ii([t.Event()],i.prototype,"fileSelected",void 0),Ii([t.Event()],i.prototype,"beforeFileUpload",void 0),Ii([t.Event()],i.prototype,"fileUploading",void 0),Ii([t.Event()],i.prototype,"fileUploadSuccess",void 0),Ii([t.Event()],i.prototype,"fileUploadFailed",void 0),Ii([t.Event()],i.prototype,"fileRemoving",void 0),Ii([t.Event()],i.prototype,"afterMediaDelete",void 0),Ii([t.Event()],i.prototype,"created",void 0),Ii([t.Event()],i.prototype,"destroyed",void 0),Ii([t.Event()],i.prototype,"beforeSanitizeHtml",void 0),Ii([t.Event()],i.prototype,"blur",void 0),Ii([t.Event()],i.prototype,"toolbarClick",void 0),Ii([t.Event()],i.prototype,"focus",void 0),Ii([t.Event()],i.prototype,"change",void 0),Ii([t.Event()],i.prototype,"resizing",void 0),Ii([t.Event()],i.prototype,"resizeStart",void 0),Ii([t.Event()],i.prototype,"resizeStop",void 0),Ii([t.Event()],i.prototype,"beforePasteCleanup",void 0),Ii([t.Event()],i.prototype,"afterPasteCleanup",void 0),Ii([t.Event()],i.prototype,"beforeImageDrop",void 0),Ii([t.Property(null)],i.prototype,"formatter",void 0),i=Ii([t.NotifyPropertyChanges],i)}(t.Component);return Pi.Inject(ut,$n,Zn,ei,ti,St,Nt,Vn,Gt,ii,Qn,Wn,Kn,Xn,Yn),e.Toolbar=ut,e.KeyboardEvents=bt,e.BaseToolbar=lt,e.BaseQuickToolbar=Ct,e.QuickToolbar=Nt,e.Count=St,e.ColorPickerInput=vt,e.MarkdownToolbarStatus=Ot,e.ExecCommandCallBack=wt,e.ToolbarAction=ht,e.MarkdownEditor=Gt,e.HtmlEditor=Vn,e.PasteCleanup=Qn,e.Resize=Wn,e.DropDownButtons=dt,e.FileManager=Kn,e.FullScreen=Gn,e.setAttributes=_,e.HtmlToolbarStatus=jn,e.XhtmlValidation=_n,e.FormatPainter=Xn,e.EmojiPicker=Yn,e.HTMLFormatter=Hn,e.Formatter=kt,e.MarkdownFormatter=Wt,e.ContentRender=Fn,e.Render=Jn,e.ToolbarRenderer=at,e.Link=$n,e.Image=Zn,e.Audio=ei,e.Video=ti,e.ViewSource=ni,e.Table=ii,e.DialogRenderer=oi,e.IframeContentRender=zn,e.MarkdownRender=Kt,e.PopupRenderer=yt,e.RichTextEditor=Pi,e.executeGroup=ri,e.created="create",e.destroyed="destroy",e.tableclass="tableclass",e.load="load",e.initialLoad="initial-load",e.contentChanged="content-changed",e.initialEnd=V,e.iframeMouseDown="iframe-click",e.destroy=Q,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=W,e.tableModulekeyUp="tableModulekeyUp",e.keyUp=K,e.keyDown=G,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.audioToolbarAction="audio-toolbar-action",e.videoToolbarAction="video-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=X,e.actionComplete="actionComplete",e.updatedToolbarStatus="updatedToolbarStatus",e.actionSuccess="actionSuccess",e.updateToolbarItem="updateToolbarItem",e.insertImage="insertImage",e.insertAudio="insertAudio",e.insertVideo="insertVideo",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.audioDelete="delete",e.videoDelete="delete",e.imageCaption="caption",e.imageSize="imageSize",e.videoSize="videoSize",e.sourceCode="sourceCode",e.updateSource="updateSource",e.toolbarOpen="toolbarOpen",e.beforeDropDownOpen="beforeDropDownOpen",e.selectionSave=Y,e.selectionRestore=J,e.expandPopupClick="expandPopupClick",e.count="count",e.contentFocus="contentFocus",e.contentBlur="contentBlur",e.mouseDown=$,e.sourceCodeMouseDown="sourceCodeMouseDown",e.editAreaClick="editAreaClick",e.scroll=Z,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=ee,e.imgModule="imageModule",e.rtlMode=te,e.createTable="createTable",e.docClick="docClick",e.tableToolbarAction="table-toolbar-action",e.checkUndo=ne,e.readOnlyMode="readOnlyMode",e.moduleDestroy=ie,e.pasteClean="pasteClean",e.enterHandler="enterHandler",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.fileSelected="fileSelected",e.fileUploading="fileUploading",e.fileUploadSuccess="fileUploadSuccess",e.fileUploadFailed="fileUploadFailed",e.fileRemoving="fileRemoving",e.afterImageDelete="afterImageDelete",e.afterMediaDelete="afterMediaDelete",e.drop="drop",e.xhtmlValidation="xhtmlValidation",e.beforeImageUpload="beforeImageUpload",e.beforeFileUpload="beforeFileUpload",e.resizeInitialized="resizeInitialized",e.renderFileManager="renderFileManager",e.beforeImageDrop="beforeImageDrop",e.dynamicModule="dynamicModule",e.beforePasteCleanup="beforePasteCleanup",e.afterPasteCleanup="afterPasteCleanup",e.updateTbItemsStatus="updateTbItemsStatus",e.showLinkDialog="showLinkDialog",e.closeLinkDialog="closeLinkDialog",e.showImageDialog="showImageDialog",e.showAudioDialog="showAudioDialog",e.showVideoDialog="showVideoDialog",e.closeImageDialog="closeImageDialog",e.closeAudioDialog="closeAudioDialog",e.closeVideoDialog="closeVideoDialog",e.showTableDialog="showTableDialog",e.closeTableDialog="closeTableDialog",e.bindCssClass=oe,e.formatPainterClick="formatPainterClick",e.formatPainterDoubleClick="formatPainterDoubleClick",e.emojiPicker="emojiPicker",e.destroyTooltip="destroyTooltip",e.hidePopup="hidePopup",e.cleanupResizeElements="cleanupResizeElements",e.afterKeyDown="afterKeyDown",e.updateValueOnIdle="updateValueOnIdle",e.documentClickClosedBy="documentClickClosedBy",e.blockEmptyNodes=re,e.inlineEmptyNodes=se,e.supportedUnits=ae,e.conversionFactors=le,e.onHandleFontsizeChange="onHandleFontsizeChange",e.CLS_RTE=de,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=ce,e.CLS_TEXT_QUICK_TB="e-rte-text-quicktoolbar",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_TEXT_POP="e-rte-text-popup",e.CLS_INLINE_POP="e-rte-inline-popup",e.CLS_INLINE_DROPDOWN="e-rte-inline-dropdown",e.CLS_DROPDOWN_POPUP=pe,e.CLS_DROPDOWN_ICONS="e-rte-dropdown-icons",e.CLS_DROPDOWN_ITEMS=he,e.CLS_DROPDOWN_BTN=ue,e.CLS_RTE_CONTENT="e-rte-content",e.CLS_TB_ITEM=me,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=ge,e.CLS_AUDIOBREAK="e-audio-break",e.CLS_CLICKELEM="e-clickelem",e.CLS_VID_CLICK_ELEM="e-video-clickelem",e.CLS_AUDIOWRAP="e-audio-wrap",e.CLS_VIDEOWRAP="e-video-wrap",e.CLS_VIDEOBREAK="e-video-break",e.CLS_CAPTION=fe,e.CLS_RTE_CAPTION="e-rte-img-caption",e.CLS_CAPINLINE="e-caption-inline",e.CLS_IMGINLINE=be,e.CLS_AUDIOINLINE="e-audio-inline",e.CLS_VIDEOINLINE="e-video-inline",e.CLS_COUNT=ve,e.CLS_WARNING="e-warning",e.CLS_ERROR="e-error",e.CLS_ICONS="e-icons",e.CLS_ACTIVE=Ce,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_LIST_PRIMARY_CONTENT="e-rte-list-primary-content",e.CLS_NUMBERFORMATLIST_TB_BTN="e-rte-numberformatlist-dropdown",e.CLS_BULLETFORMATLIST_TB_BTN="e-rte-bulletformatlist-dropdown",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_ALIGN_TB_BTN="e-alignment-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=ye,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=Ne,e.CLS_RESIZE="e-resize",e.CLS_IMG_FOCUS="e-img-focus",e.CLS_AUD_FOCUS="e-audio-focus",e.CLS_VID_FOCUS="e-video-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="e-rte-table",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.CLS_RTE_RES_WEST="e-south-west",e.CLS_RTE_SOURCE_CODE_TXTAREA="e-rte-srctextarea",e.getIndex=c,e.hasClass=p,e.getDropDownValue=h,e.isIDevice=u,e.getFormattedFontSize=m,e.pageYOffset=g,e.getTooltipText=f,e.getTooltipTextDropdownItems=b,e.getQuickToolbarTooltipText=v,e.setToolbarStatus=C,e.getCollection=y,e.getTBarItemsIndex=N,e.updateUndoRedoStatus=S,e.dispatchEvent=E,e.parseHtml=T,e.getTextNodesUnder=O,e.toObjectLowerCase=w,e.getEditValue=k,e.updateTextNode=L,e.getDefaultValue=x,e.isEditableValueEmpty=D,e.decode=M,e.sanitizeHelper=R,e.convertToBlob=B,e.getLocaleFontFormat=A,e.updateDropDownFontFormatLocale=I,e.ServiceLocator=ct,e.RendererFactory=pt,e.EditorManager=Pn,e.IMAGE=Xt,e.AUDIO=Yt,e.VIDEO=Jt,e.TABLE=$t,e.LINK=Zt,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=en,e.IGNORE_BLOCK_TAGS=tn,e.TABLE_BLOCK_TAGS=nn,e.SELECTION_TYPE="selection-type",e.INSERTHTML_TYPE="inserthtml-type",e.INSERT_TEXT_TYPE="insert-text-type",e.CLEAR_TYPE="clear-type",e.SELF_CLOSING_TAGS=on,e.PASTE_SOURCE=rn,e.CLASS_IMAGE_RIGHT="e-imgright",e.CLASS_IMAGE_LEFT="e-imgleft",e.CLASS_IMAGE_CENTER="e-imgcenter",e.CLASS_VIDEO_RIGHT="e-video-right",e.CLASS_VIDEO_LEFT="e-video-left",e.CLASS_VIDEO_CENTER="e-video-center",e.CLASS_IMAGE_BREAK="e-imgbreak",e.CLASS_AUDIO_BREAK="e-audio-break",e.CLASS_VIDEO_BREAK="e-video-break",e.CLASS_CAPTION=bn,e.CLASS_RTE_CAPTION="e-rte-img-caption",e.CLASS_CAPTION_INLINE="e-caption-inline",e.CLASS_IMAGE_INLINE="e-imginline",e.CLASS_AUDIO_INLINE="e-audio-inline",e.CLASS_CLICK_ELEM="e-clickelem",e.CLASS_VIDEO_CLICK_ELEM="e-video-clickelem",e.CLASS_AUDIO="e-rte-audio",e.CLASS_VIDEO="e-rte-video",e.CLASS_AUDIO_WRAP="e-audio-wrap",e.CLASS_VIDEO_WRAP="e-video-wrap",e.CLASS_EMBED_VIDEO_WRAP="e-embed-video-wrap",e.CLASS_AUDIO_FOCUS="e-audio-focus",e.CLASS_VIDEO_FOCUS="e-video-focus",e.CLASS_VIDEO_INLINE="e-video-inline",e.Lists=dn,e.markerClassName=an,e.DOMNode=ln,e.Alignments=gn,e.Indents=fn,e.Formats=hn,e.LinkCommand=mn,e.InsertMethods=cn,e.InsertTextExec=Mn,e.InsertHtmlExec=wn,e.InsertHtml=un,e.IsFormatted=En,e.MsWordPaste=Dn,e.NodeCutter=pn,e.ImageCommand=vn,e.AudioCommand=Cn,e.VideoCommand=yn,e.SelectionCommands=Tn,e.SelectionBasedExec=On,e.ClearFormatExec=Ln,e.UndoRedoManager=xn,e.TableCommand=Nn,e.statusCollection=Rn,e.ToolbarStatus=Bn,e.FormatPainterActions=In,e.EmojiPickerAction=An,e.NodeSelection=sn,e.MarkdownParser=Vt,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.INSERT_TEXT_COMMAND="insert-text",e.ClearFormat=zt,e.MDLists=Lt,e.MDFormats=xt,e.MarkdownSelection=Et,e.UndoRedoCommands=jt,e.MDSelectionFormats=Dt,e.MDLink=Ft,e.MDTable=qt,e.markdownFormatTags=Mt,e.markdownSelectionTags=Rt,e.markdownListsTags=Bt,e.htmlKeyConfig=At,e.markdownKeyConfig=It,e.pasteCleanupGroupingTags=Pt,e.listConversionFilters=Ut,e.selfClosingTags=Ht,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.ON_BEGIN="onBegin",e.SPACE_ACTION="actionBegin",e.FORMAT_PAINTER_ACTIONS="format_painter_actions",e.EMOJI_PICKER_ACTIONS="emoji_picker_actions",e.MOUSE_DOWN="mouseDown",e}({},ej.base,ej.navigations,ej.splitbuttons,ej.popups,ej.inputs,ej.buttons,ej.filemanager),this.ejs=ej;
|
|
11
11
|
//# sourceMappingURL=ej2-richtexteditor.min.js.map
|