@syncfusion/ej2-richtexteditor 18.1.52 → 18.2.44-4568

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.
Files changed (177) hide show
  1. package/CHANGELOG.md +614 -572
  2. package/README.md +67 -67
  3. package/dist/ej2-richtexteditor.umd.min.js +1 -10
  4. package/dist/ej2-richtexteditor.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-richtexteditor.es2015.js +353 -136
  6. package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
  7. package/dist/es6/ej2-richtexteditor.es5.js +364 -147
  8. package/dist/es6/ej2-richtexteditor.es5.js.map +1 -1
  9. package/license +9 -9
  10. package/package.json +50 -73
  11. package/src/common/interface.d.ts +6 -6
  12. package/src/editor-manager/base/classes.d.ts +1 -1
  13. package/src/editor-manager/base/classes.js +1 -1
  14. package/src/editor-manager/base/editor-manager.d.ts +3 -3
  15. package/src/editor-manager/base/editor-manager.js +3 -3
  16. package/src/editor-manager/base/interface.d.ts +7 -7
  17. package/src/editor-manager/base/types.d.ts +1 -1
  18. package/src/editor-manager/plugin/alignments.d.ts +2 -2
  19. package/src/editor-manager/plugin/alignments.js +2 -2
  20. package/src/editor-manager/plugin/clearformat-exec.d.ts +2 -2
  21. package/src/editor-manager/plugin/clearformat-exec.js +2 -2
  22. package/src/editor-manager/plugin/clearformat.d.ts +1 -1
  23. package/src/editor-manager/plugin/clearformat.js +1 -1
  24. package/src/editor-manager/plugin/dom-node.d.ts +34 -34
  25. package/src/editor-manager/plugin/dom-node.js +34 -34
  26. package/src/editor-manager/plugin/formats.d.ts +2 -2
  27. package/src/editor-manager/plugin/formats.js +2 -2
  28. package/src/editor-manager/plugin/image.d.ts +3 -3
  29. package/src/editor-manager/plugin/image.js +3 -3
  30. package/src/editor-manager/plugin/indents.d.ts +2 -2
  31. package/src/editor-manager/plugin/indents.js +2 -2
  32. package/src/editor-manager/plugin/insert-methods.d.ts +4 -4
  33. package/src/editor-manager/plugin/insert-methods.js +4 -4
  34. package/src/editor-manager/plugin/insert-text.d.ts +2 -2
  35. package/src/editor-manager/plugin/insert-text.js +2 -2
  36. package/src/editor-manager/plugin/inserthtml-exec.d.ts +2 -2
  37. package/src/editor-manager/plugin/inserthtml-exec.js +2 -2
  38. package/src/editor-manager/plugin/inserthtml.d.ts +4 -2
  39. package/src/editor-manager/plugin/inserthtml.js +42 -6
  40. package/src/editor-manager/plugin/isformatted.d.ts +8 -8
  41. package/src/editor-manager/plugin/isformatted.js +8 -8
  42. package/src/editor-manager/plugin/link.d.ts +2 -2
  43. package/src/editor-manager/plugin/link.js +2 -2
  44. package/src/editor-manager/plugin/lists.d.ts +2 -2
  45. package/src/editor-manager/plugin/lists.js +4 -14
  46. package/src/editor-manager/plugin/ms-word-clean-up.d.ts +1 -1
  47. package/src/editor-manager/plugin/ms-word-clean-up.js +1 -1
  48. package/src/editor-manager/plugin/nodecutter.d.ts +6 -6
  49. package/src/editor-manager/plugin/nodecutter.js +6 -6
  50. package/src/editor-manager/plugin/selection-commands.d.ts +1 -1
  51. package/src/editor-manager/plugin/selection-commands.js +1 -1
  52. package/src/editor-manager/plugin/selection-exec.d.ts +2 -2
  53. package/src/editor-manager/plugin/selection-exec.js +2 -2
  54. package/src/editor-manager/plugin/table.d.ts +2 -2
  55. package/src/editor-manager/plugin/table.js +2 -2
  56. package/src/editor-manager/plugin/toolbar-status.d.ts +2 -2
  57. package/src/editor-manager/plugin/toolbar-status.js +2 -2
  58. package/src/editor-manager/plugin/undo.d.ts +6 -6
  59. package/src/editor-manager/plugin/undo.js +6 -6
  60. package/src/markdown-parser/base/interface.d.ts +10 -10
  61. package/src/markdown-parser/base/markdown-parser.d.ts +3 -3
  62. package/src/markdown-parser/base/markdown-parser.js +3 -3
  63. package/src/markdown-parser/base/types.d.ts +1 -1
  64. package/src/markdown-parser/plugin/clearformat.d.ts +2 -2
  65. package/src/markdown-parser/plugin/clearformat.js +2 -2
  66. package/src/markdown-parser/plugin/formats.d.ts +2 -2
  67. package/src/markdown-parser/plugin/formats.js +2 -2
  68. package/src/markdown-parser/plugin/link.d.ts +2 -2
  69. package/src/markdown-parser/plugin/link.js +2 -2
  70. package/src/markdown-parser/plugin/markdown-selection.d.ts +14 -14
  71. package/src/markdown-parser/plugin/markdown-selection.js +14 -14
  72. package/src/markdown-parser/plugin/md-selection-formats.d.ts +2 -2
  73. package/src/markdown-parser/plugin/md-selection-formats.js +2 -2
  74. package/src/markdown-parser/plugin/table.d.ts +3 -3
  75. package/src/markdown-parser/plugin/table.js +3 -3
  76. package/src/markdown-parser/plugin/undo.d.ts +6 -6
  77. package/src/markdown-parser/plugin/undo.js +6 -6
  78. package/src/rich-text-editor/actions/base-quick-toolbar.d.ts +9 -9
  79. package/src/rich-text-editor/actions/base-quick-toolbar.js +9 -9
  80. package/src/rich-text-editor/actions/base-toolbar.d.ts +3 -3
  81. package/src/rich-text-editor/actions/base-toolbar.js +3 -3
  82. package/src/rich-text-editor/actions/color-picker.d.ts +2 -2
  83. package/src/rich-text-editor/actions/color-picker.js +2 -2
  84. package/src/rich-text-editor/actions/count.d.ts +3 -3
  85. package/src/rich-text-editor/actions/count.js +3 -3
  86. package/src/rich-text-editor/actions/dropdown-buttons.d.ts +2 -2
  87. package/src/rich-text-editor/actions/dropdown-buttons.js +2 -2
  88. package/src/rich-text-editor/actions/full-screen.d.ts +3 -3
  89. package/src/rich-text-editor/actions/full-screen.js +3 -3
  90. package/src/rich-text-editor/actions/html-editor.d.ts +3 -3
  91. package/src/rich-text-editor/actions/html-editor.js +3 -3
  92. package/src/rich-text-editor/actions/keyboard-model.d.ts +13 -13
  93. package/src/rich-text-editor/actions/keyboard.d.ts +1 -1
  94. package/src/rich-text-editor/actions/keyboard.js +1 -1
  95. package/src/rich-text-editor/actions/markdown-editor.d.ts +2 -2
  96. package/src/rich-text-editor/actions/markdown-editor.js +2 -2
  97. package/src/rich-text-editor/actions/paste-clean-up.d.ts +1 -1
  98. package/src/rich-text-editor/actions/paste-clean-up.js +34 -3
  99. package/src/rich-text-editor/actions/quick-toolbar.d.ts +19 -9
  100. package/src/rich-text-editor/actions/quick-toolbar.js +17 -7
  101. package/src/rich-text-editor/actions/toolbar.d.ts +13 -13
  102. package/src/rich-text-editor/actions/toolbar.js +13 -13
  103. package/src/rich-text-editor/base/classes.d.ts +102 -102
  104. package/src/rich-text-editor/base/classes.js +102 -102
  105. package/src/rich-text-editor/base/constant.d.ts +111 -101
  106. package/src/rich-text-editor/base/constant.js +111 -101
  107. package/src/rich-text-editor/base/enum.d.ts +1 -1
  108. package/src/rich-text-editor/base/enum.js +1 -1
  109. package/src/rich-text-editor/base/interface.d.ts +51 -40
  110. package/src/rich-text-editor/base/interface.js +1 -1
  111. package/src/rich-text-editor/base/rich-text-editor-model.d.ts +659 -641
  112. package/src/rich-text-editor/base/rich-text-editor.d.ts +84 -52
  113. package/src/rich-text-editor/base/rich-text-editor.js +100 -43
  114. package/src/rich-text-editor/base/util.d.ts +1 -1
  115. package/src/rich-text-editor/base/util.js +1 -1
  116. package/src/rich-text-editor/formatter/formatter.d.ts +9 -8
  117. package/src/rich-text-editor/formatter/formatter.js +10 -8
  118. package/src/rich-text-editor/formatter/html-formatter.d.ts +2 -2
  119. package/src/rich-text-editor/formatter/html-formatter.js +2 -2
  120. package/src/rich-text-editor/formatter/markdown-formatter.d.ts +2 -2
  121. package/src/rich-text-editor/formatter/markdown-formatter.js +2 -2
  122. package/src/rich-text-editor/models/iframe-settings-model.d.ts +21 -21
  123. package/src/rich-text-editor/models/inline-mode-model.d.ts +9 -9
  124. package/src/rich-text-editor/models/toolbar-settings-model.d.ts +228 -228
  125. package/src/rich-text-editor/renderer/content-renderer.d.ts +6 -6
  126. package/src/rich-text-editor/renderer/content-renderer.js +6 -6
  127. package/src/rich-text-editor/renderer/dialog-renderer.d.ts +3 -2
  128. package/src/rich-text-editor/renderer/dialog-renderer.js +8 -8
  129. package/src/rich-text-editor/renderer/iframe-content-renderer.d.ts +4 -4
  130. package/src/rich-text-editor/renderer/iframe-content-renderer.js +4 -4
  131. package/src/rich-text-editor/renderer/image-module.d.ts +1 -1
  132. package/src/rich-text-editor/renderer/image-module.js +96 -29
  133. package/src/rich-text-editor/renderer/link-module.d.ts +1 -1
  134. package/src/rich-text-editor/renderer/link-module.js +1 -1
  135. package/src/rich-text-editor/renderer/markdown-renderer.d.ts +6 -6
  136. package/src/rich-text-editor/renderer/markdown-renderer.js +6 -6
  137. package/src/rich-text-editor/renderer/popup-renderer.d.ts +5 -5
  138. package/src/rich-text-editor/renderer/popup-renderer.js +5 -5
  139. package/src/rich-text-editor/renderer/render.d.ts +2 -2
  140. package/src/rich-text-editor/renderer/render.js +2 -2
  141. package/src/rich-text-editor/renderer/table-module.d.ts +1 -1
  142. package/src/rich-text-editor/renderer/table-module.js +5 -3
  143. package/src/rich-text-editor/renderer/toolbar-renderer.d.ts +8 -8
  144. package/src/rich-text-editor/renderer/toolbar-renderer.js +21 -9
  145. package/src/rich-text-editor/renderer/view-source.d.ts +6 -6
  146. package/src/rich-text-editor/renderer/view-source.js +6 -6
  147. package/src/rich-text-editor/services/renderer-factory.d.ts +3 -3
  148. package/src/rich-text-editor/services/renderer-factory.js +3 -3
  149. package/src/rich-text-editor/services/service-locator.d.ts +3 -3
  150. package/src/rich-text-editor/services/service-locator.js +3 -3
  151. package/src/selection/selection.d.ts +22 -22
  152. package/src/selection/selection.js +22 -22
  153. package/styles/_all.scss +2 -2
  154. package/styles/rich-text-editor/_all.scss +2 -2
  155. package/styles/rich-text-editor/_bootstrap-dark-definition.scss +151 -151
  156. package/styles/rich-text-editor/_bootstrap-definition.scss +184 -184
  157. package/styles/rich-text-editor/_bootstrap4-definition.scss +307 -307
  158. package/styles/rich-text-editor/_fabric-dark-definition.scss +150 -150
  159. package/styles/rich-text-editor/_fabric-definition.scss +148 -148
  160. package/styles/rich-text-editor/_highcontrast-definition.scss +148 -148
  161. package/styles/rich-text-editor/_highcontrast-light-definition.scss +148 -148
  162. package/styles/rich-text-editor/_layout.scss +1332 -1332
  163. package/styles/rich-text-editor/_material-dark-definition.scss +151 -151
  164. package/styles/rich-text-editor/_material-definition.scss +150 -150
  165. package/styles/rich-text-editor/_theme.scss +484 -484
  166. package/styles/rich-text-editor/icons/_bootstrap-dark.scss +285 -285
  167. package/styles/rich-text-editor/icons/_bootstrap.scss +284 -284
  168. package/styles/rich-text-editor/icons/_bootstrap4.scss +284 -284
  169. package/styles/rich-text-editor/icons/_fabric-dark.scss +284 -284
  170. package/styles/rich-text-editor/icons/_fabric.scss +284 -284
  171. package/styles/rich-text-editor/icons/_highcontrast-light.scss +284 -284
  172. package/styles/rich-text-editor/icons/_highcontrast.scss +284 -284
  173. package/styles/rich-text-editor/icons/_material-dark.scss +284 -284
  174. package/styles/rich-text-editor/icons/_material.scss +284 -284
  175. package/dist/global/ej2-richtexteditor.min.js +0 -11
  176. package/dist/global/ej2-richtexteditor.min.js.map +0 -1
  177. package/dist/global/index.d.ts +0 -14
@@ -1,11 +1,2 @@
1
- /*!
2
- * filename: ej2-richtexteditor.umd.min.js
3
- * version : 18.1.52
4
- * Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
5
- * Use of this code is subject to the terms of our license.
6
- * A copy of the current license can be obtained at any time by e-mailing
7
- * licensing@syncfusion.com. Any infringement will be prosecuted under
8
- * applicable laws.
9
- */
10
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@syncfusion/ej2-base"),require("@syncfusion/ej2-navigations"),require("@syncfusion/ej2-splitbuttons"),require("@syncfusion/ej2-popups"),require("@syncfusion/ej2-inputs"),require("@syncfusion/ej2-buttons")):"function"==typeof define&&define.amd?define(["exports","@syncfusion/ej2-base","@syncfusion/ej2-navigations","@syncfusion/ej2-splitbuttons","@syncfusion/ej2-popups","@syncfusion/ej2-inputs","@syncfusion/ej2-buttons"],t):t(e.ej={},e.ej2Base,e.ej2Navigations,e.ej2Splitbuttons,e.ej2Popups,e.ej2Inputs,e.ej2Buttons)}(this,function(e,t,n,i,o,r,s){"use strict";function a(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 l(e,t){var n=-1;return t.some(function(t,i){return"string"==typeof t&&e===t.toLocaleLowerCase()&&(n=i,!0)}),n}function d(e,t){var n=!1;return e.classList.contains(t)&&(n=!0),n}function c(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 p(){var e=!1;return t.Browser.isDevice&&t.Browser.isIos&&(e=!0),e}function h(e){return t.isNullOrUndefined(e)?"":e}function u(e,t,n){return n?window.pageYOffset+t.getBoundingClientRect().top+e.clientY:e.pageY}function m(e,t){var n=t.getService("rteLocale"),i=ti[e];return n.getConstant(i)}function g(e,n){for(var i=e.dropDownModule,o=e.args,r=0,s=Object.keys(e.args);r<s.length;r++)for(var a=s[r],d=0;d<e.tbItems.length;d++){var p=e.tbItems[d].subCommand,u=p&&p.toLocaleLowerCase();if(p&&u===a||"UL"===p&&"unorderedlist"===a||"OL"===p&&"orderedlist"===a||"pre"===u&&"insertcode"===a)if("boolean"==typeof o[a])!0===o[a]?t.addClass([e.tbElements[d]],[Kt]):t.removeClass([e.tbElements[d]],[Kt]);else if(("string"==typeof o[a]||null===o[a])&&l(a,e.parent.toolbarSettings.items)>-1){var m=o[a]?o[a]:"",g="";switch(a){case"formats":if(t.isNullOrUndefined(i.formatDropDown)||n||!t.isNullOrUndefined(i.formatDropDown)&&i.formatDropDown.isDestroyed)return;var f=e.parent.format.types;g=c(f,m,"subCommand","text");var b=t.isNullOrUndefined(e.parent.format.default)?f[0].text:e.parent.format.default;i.formatDropDown.content='<span style="display: inline-flex;width:'+e.parent.format.width+'" ><span class="e-rte-dropdown-btn-text">'+(t.isNullOrUndefined(g)?b:g)+"</span></span>",i.formatDropDown.dataBind();break;case"alignments":if(t.isNullOrUndefined(i.alignDropDown)||!t.isNullOrUndefined(i.alignDropDown)&&i.alignDropDown.isDestroyed)return;g=c(_n,m,"subCommand","iconCss"),i.alignDropDown.iconCss=t.isNullOrUndefined(g)?"e-icons e-justify-left":g,i.alignDropDown.dataBind();break;case"fontname":if(t.isNullOrUndefined(i.fontNameDropDown)||n||!t.isNullOrUndefined(i.fontNameDropDown)&&i.fontNameDropDown.isDestroyed)return;var v=e.parent.fontFamily.items;g=c(v,m,"value","text");var y=t.isNullOrUndefined(e.parent.fontFamily.default)?v[0].text:e.parent.fontFamily.default,C=t.isNullOrUndefined(g)?y:g;e.tbElements[d].title=C,i.fontNameDropDown.content='<span style="display: inline-flex;width:'+e.parent.fontFamily.width+'" ><span class="e-rte-dropdown-btn-text">'+C+"</span></span>",i.fontNameDropDown.dataBind();break;case"fontsize":if(t.isNullOrUndefined(i.fontSizeDropDown)||!t.isNullOrUndefined(i.fontSizeDropDown)&&i.fontSizeDropDown.isDestroyed)return;var T=e.parent.fontSize.items,S=t.isNullOrUndefined(e.parent.fontSize.default)?T[1].text:e.parent.fontSize.default;g=c(T,""===m?S.replace(/\s/g,""):m,"value","text"),i.fontSizeDropDown.content='<span style="display: inline-flex;width:'+e.parent.fontSize.width+'" ><span class="e-rte-dropdown-btn-text">'+h(g)+"</span></span>",i.fontSizeDropDown.dataBind()}}}}function f(e){return"object"==typeof e?e:[e]}function b(e,t){for(var n=[],i=0;i<e.length;i++)for(var o=0;o<t.length;o++)if("Separator"!==t[o].type){if("OrderedList"===e[i]&&"OL"===t[o].subCommand){n.push(o);break}if("UnorderedList"===e[i]&&"UL"===t[o].subCommand){n.push(o);break}if("InsertCode"===e[i]&&"Pre"===t[o].subCommand){n.push(o);break}if(e[i]===t[o].subCommand){n.push(o);break}}return n}function v(e,n){for(var i=0,o=b(f(ni),e.toolbarObj.items),r=t.selectAll("."+Mt,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 y(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!1,!0),e.dispatchEvent(n)}function C(e){var n=t.createElement("template");return n.innerHTML=e,n.content instanceof DocumentFragment?n.content:document.createRange().createContextualFragment(e)}function T(e,t){var n=[];for(t=t.firstChild;t;t=t.nextSibling)3===t.nodeType?n.push(t):n=n.concat(T(e,t));return n}function S(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 E(e,t){var n;return null!==e&&""!==e?(n=t.enableHtmlEncode?N(w(e)):N(e),t.setProperties({value:n},!0)):n=t.enableHtmlEncode?"&lt;p&gt;&lt;br/&gt;&lt;/p&gt;":"<p><br/></p>",n}function N(e){var n=document.createElement("div");n.innerHTML=e,n.setAttribute("class","tempDiv");var i=document.createElement("div");if(n.childNodes.length>0){for(var o=void 0,r=void 0,s=void 0;n.firstChild;)"#text"===n.firstChild.nodeName&&(n.firstChild.textContent.indexOf("\n")<0||""!==n.firstChild.textContent.trim())||ii.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(o?r.appendChild(n.firstChild):(s=t.createElement("p"),i.appendChild(s),s.appendChild(n.firstChild)),r=s,o=!0):"#text"===n.firstChild.nodeName&&("\n"===n.firstChild.textContent||n.firstChild.textContent.indexOf("\n")>=0&&""===n.firstChild.textContent.trim())?t.detach(n.firstChild):(i.appendChild(n.firstChild),o=!1);for(var a=i.querySelectorAll("img"),l=0;l<a.length;l++)a[l].classList.contains(Ln)||a[l].classList.add(Ln),a[l].classList.contains(Qt)||a[l].classList.contains(zt)||a[l].classList.add(Qt)}return i.innerHTML}function k(e){return"<p><br></p>"===e||"&lt;p&gt;&lt;br&gt;&lt;/p&gt;"===e||""===e}function w(e){return e.replace(/&amp;/g,"&").replace(/&amp;lt;/g,"<").replace(/&lt;/g,"<").replace(/&amp;gt;/g,">").replace(/&gt;/g,">").replace(/&nbsp;/g," ").replace(/&amp;nbsp;/g," ").replace(/&quot;/g,"")}function L(e,n){if(n.enableHtmlSanitizer){var i=t.SanitizeHtmlHelper.beforeSanitize();t.extend(i,i,{cancel:!1,helper:null}),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 x(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 O(){var e=!1;return t.Browser.isDevice&&t.Browser.isIos&&(e=!0),e}function D(e,n){if("BODY"===e.nodeName&&!t.isNullOrUndefined(n)){var i=top.window.document.querySelector(n);t.isNullOrUndefined(i)||i.contentWindow.focus()}}function M(e,t,n,i){var o;if(n){o=t.contentModule.getDocument().querySelector("body")}else o=t.element;if(Object.keys(e).length)for(var r=0,s=Object.keys(e);r<s.length;r++){var a=s[r];if("class"===a)o.classList.add(e[a]);else if("disabled"===a&&"disabled"===e[a])t.enabled=!1,t.setEnable();else if("readonly"===a&&"readonly"===e[a])t.readonly=!0,t.setReadOnly(i);else if("style"===a)o.setAttribute("style",e[a]);else if("tabindex"===a)t.inputElement.setAttribute("tabindex",e[a]);else if("placeholder"===a)t.placeholder=e[a],t.setPlaceHolder();else{["name","required"].indexOf(a)>-1?t.valueContainer.setAttribute(a,e[a]):o.setAttribute(a,e[a])}}}var R="initial-load",B="initial-end",P="iframe-click",I="destroy",A="toolbarClick",H="toolbar-refresh",U="refresh-begin",j="toolbar-updated",z="bind-on-end",q="render-color-picker",_="html-toolbar-click",F="markdown-toolbar-click",Q="destroy-color-picker",W="model-changed",V="keyUp",G="keyDown",K="mouseUp",Y="toolbarCreated",X="toolbarRenderComplete",J="enableFullScreen",$="disableFullScreen",Z="dropDownSelect",ee="beforeDropDownItemRender",te="execCommandCallBack",ne="image-toolbar-action",ie="link-toolbar-action",oe="resizeStart",re="resizing",se="resizeStop",ae="insertLink",le="unLink",de="editLink",ce="openLink",pe="actionBegin",he="actionComplete",ue="toolbarStatusUpdate",me="updateToolbarItem",ge="insertImage",fe="insertCompleted",be="insertImgLink",ve="imgAltText",ye="delete",Ce="caption",Te="imageSize",Se="sourceCode",Ee="updateSource",Ne="beforeDropDownOpen",ke="selection-save",we="selection-restore",Le="expandPopupClick",xe="count",Oe="mouseDown",De="sourceCodeMouseDown",Me="editAreaClick",Re="scroll",Be="contentscroll",Pe="colorPickerChanged",Ie="tableColorPickerChanged",Ae="focusChange",He="selectAll",Ue="selectRange",je="getSelectedHtml",ze="renderInlineToolbar",qe="paste-content",_e="rtl-mode",Fe="createTable",Qe="docClick",We="table-toolbar-action",Ve="checkUndoStack",Ge="readOnlyMode",Ke="pasteClean",Ye="beforeDialogOpen",Xe="dialogOpen",Je="dialogClose",$e="beforeQuickToolbarOpen",Ze="quickToolbarOpen",et="quickToolbarClose",tt="imageSelected",nt="imageUploading",it="imageUploadSuccess",ot="imageUploadFailed",rt="imageRemoving",st="afterImageDelete",at="xhtmlValidation",lt="e-richtexteditor",dt="e-disabled",ct="rte-iframe-script-sheet",pt="rte-iframe-style-sheet",ht="e-rte-toolbar",ut="e-rte-tb-fixed",mt="e-rte-tb-float",gt="e-rte-tb-abs-float",ft="e-rte-inline",bt="e-rte-tb-expand",vt="e-rte-full-screen",yt="e-rte-quick-toolbar",Ct="e-rte-pop",Tt="e-rte-quick-popup",St="e-quick-dropdown",Et="e-rte-image-popup",Nt="e-rte-inline-popup",kt="e-rte-inline-dropdown",wt="e-rte-dropdown-popup",Lt="e-rte-dropdown-icons",xt="e-rte-dropdown-items",Ot="e-rte-dropdown-btn",Dt="e-rte-content",Mt="e-toolbar-item",Rt="e-toolbar-wrapper",Bt="e-hide",Pt="e-visible",It="e-focused",At="e-remove-white-space",Ht="e-imgright",Ut="e-imgleft",jt="e-imgcenter",zt="e-imgbreak",qt="e-img-caption",_t="e-rte-img-caption",Ft="e-caption-inline",Qt="e-imginline",Wt="e-rte-character-count",Vt="e-warning",Gt="e-error",Kt="e-active",Yt="e-expand-open",Xt="e-rte-elements",Jt="e-tbar-btn",$t="e-rte-horizontal-separator",Zt="e-tbar-ios-fixed",en="e-formats-tbar-btn",tn="e-font-name-tbar-btn",nn="e-font-size-tbar-btn",on="e-rte-fontcolor-element",rn="e-rte-backgroundcolor-element",sn="e-rte-color-content",an="e-rte-fontcolor-dropdown",ln="e-rte-backgroundcolor-dropdown",dn="e-rte-square-palette",cn="e-rte-fontcolor-colorpicker",pn="e-rte-backgroundcolor-colorpicker",hn="e-rte-readonly",un="e-cell-select",mn="e-dashed-border",gn="e-alternate-border",fn="e-column-resize",bn="e-row-resize",vn="e-table-box",yn="e-rte-hidden",Cn="e-rte-keepformat",Tn="e-rte-removeformat",Sn="e-rte-plainformat",En="e-rte-pasteok",Nn="e-rte-pastecancel",kn="e-rte-dialog-minheight",wn="e-resize-handle",Ln="e-rte-image",xn="e-rte-drag-image",On="e-rte-upload-popup",Dn="e-popup-open",Mn="e-upload-files",Rn="e-rte-dialog-upload",Bn="e-rte-resize",Pn="e-custom-tile",In="e-nocolor-item",An="e-rte-table",Hn="e-rte-table-border",Un="e-rte-table-resize";!function(e){e[e.Toolbar=0]="Toolbar",e[e.Content=1]="Content",e[e.Popup=2]="Popup",e[e.LinkToolbar=3]="LinkToolbar",e[e.TextToolbar=4]="TextToolbar",e[e.ImageToolbar=5]="ImageToolbar",e[e.InlineToolbar=6]="InlineToolbar",e[e.TableToolbar=7]="TableToolbar"}(e.RenderType||(e.RenderType={})),function(e){e.Expand="Expand",e.MultiRow="MultiRow",e.Scrollable="Scrollable"}(e.ToolbarType||(e.ToolbarType={}));var jn=["alignments","formats","fontname","fontsize","fontcolor","backgroundcolor","align","display","tablerows","tablecolumns","tablecellhorizontalalign","tablecellverticalalign","styles"],zn={alignments:{id:"Alignments",icon:"e-alignments",tooltip:"Alignments",command:"Alignments",subCommand:"Alignments"},justifyleft:{id:"JustifyLeft",icon:"e-justify-left",tooltip:"JustifyLeft",command:"Alignments",subCommand:"JustifyLeft"},justifycenter:{id:"JustifyCenter",icon:"e-justify-center",tooltip:"JustifyCenter",command:"Alignments",subCommand:"JustifyCenter"},justifyright:{id:"JustifyRight",icon:"e-justify-right",tooltip:"JustifyRight",command:"Alignments",subCommand:"JustifyRight"},justifyfull:{id:"JustifyFull",icon:"e-justify-full",tooltip:"JustifyFull",command:"Alignments",subCommand:"JustifyFull"},fontname:{id:"FontName",icon:"e-font-name",tooltip:"Font Name",command:"Font",subCommand:"FontName"},fontsize:{id:"FontSize",icon:"e-font-size",tooltip:"Font Size",command:"Font",subCommand:"FontSize"},fontcolor:{id:"FontColor",icon:"e-font-color",tooltip:"Font Color",command:"Font",subCommand:"FontColor",value:"#ff0000ff"},backgroundcolor:{id:"BackgroundColor",icon:"e-background-color",tooltip:"Background Color",command:"Font",subCommand:"BackgroundColor",value:"#ffff00ff"},bold:{id:"Bold",icon:"e-bold",tooltip:"Bold",command:"Style",subCommand:"Bold"},italic:{id:"Italic",icon:"e-italic",tooltip:"Italic",command:"Style",subCommand:"Italic"},underline:{id:"Underline",icon:"e-underline",tooltip:"Underline",command:"Style",subCommand:"Underline"},strikethrough:{id:"StrikeThrough",icon:"e-strike-through",tooltip:"StrikeThrough",command:"Style",subCommand:"StrikeThrough"},clearformat:{id:"ClearFormat",icon:"e-clear-format",tooltip:"Clear Format",command:"Clear",subCommand:"ClearFormat"},clearall:{id:"ClearAll",icon:"e-clear-all",tooltip:"Clear All",command:"Clear",subCommand:"ClearAll"},cut:{id:"Cut",icon:"e-cut",tooltip:"Cut",command:"ClipBoard",subCommand:"Cut"},copy:{id:"Copy",icon:"e-copy",tooltip:"Copy",command:"ClipBoard",subCommand:"Copy"},paste:{id:"Paste",icon:"e-paste",tooltip:"Paste",command:"ClipBoard",subCommand:"Paste"},unorderedlist:{id:"UnorderedList",icon:"e-unorder-list",tooltip:"Bulleted List",command:"Lists",subCommand:"UL"},orderedlist:{id:"OrderedList",icon:"e-order-list",tooltip:"Numbered List",command:"Lists",subCommand:"OL"},indent:{id:"Indent",icon:"e-indent",tooltip:"Increase Indent",command:"Indents",subCommand:"Indent"},outdent:{id:"Outdent",icon:"e-outdent",tooltip:"Decrease Indent",command:"Indents",subCommand:"Outdent"},undo:{id:"Undo",icon:"e-undo",tooltip:"Undo",command:"Actions",subCommand:"Undo"},redo:{id:"Redo",icon:"e-redo",tooltip:"Redo",command:"Actions",subCommand:"Redo"},superscript:{id:"SuperScript",icon:"e-super-script",tooltip:"Superscript",command:"Effects",subCommand:"SuperScript"},subscript:{id:"SubScript",icon:"e-sub-script",tooltip:"Subscript",command:"Effects",subCommand:"SubScript"},createlink:{id:"CreateLink",icon:"e-create-link",tooltip:"Insert Hyperlink",command:"Links",subCommand:"CreateLink"},openlink:{id:"OpenLink",icon:"e-open-link",tooltip:"Open Link",command:"Links",subCommand:"OpenLink"},editlink:{id:"EditLink",icon:"e-edit-link",tooltip:"Edit Link",command:"Links",subCommand:"EditLink"},removelink:{id:"RemoveLink",icon:"e-remove-link",tooltip:"Remove Link",command:"Links",subCommand:"RemoveLink"},image:{id:"Image",icon:"e-image",tooltip:"Insert Image",command:"Images",subCommand:"Image"},createtable:{id:"CreateTable",icon:"e-create-table",tooltip:"Create Table",command:"Table",subCommand:"CreateTable"},removetable:{id:"removeTable",icon:"e-remove-table",tooltip:"Remove Table",command:"removeTable",subCommand:"removeTable"},replace:{id:"Replace",icon:"e-replace",tooltip:"Replace",command:"Images",subCommand:"Replace"},align:{id:"Align",icon:"e-align",tooltip:"Align",command:"Images",subCommand:"Align"},caption:{id:"Caption",icon:"e-caption",tooltip:"Image Caption",command:"Images",subCommand:"Caption"},remove:{id:"Remove",icon:"e-remove",tooltip:"Remove",command:"Images",subCommand:"Remove"},openimagelink:{id:"OpenImageLink",icon:"e-open-link",tooltip:"Open Link",command:"Images",subCommand:"OpenImageLink"},editimagelink:{id:"EditImageLink",icon:"e-edit-link",tooltip:"Edit Link",command:"Images",subCommand:"EditImageLink"},removeimagelink:{id:"RemoveImageLink",icon:"e-remove-link",tooltip:"Remove Link",command:"Images",subCommand:"RemoveImageLink"},insertlink:{id:"InsertLink",icon:"e-insert-link",tooltip:"Insert Link",command:"Images",subCommand:"InsertLink"},display:{id:"Display",icon:"e-display",tooltip:"Display",command:"Images",subCommand:"Display"},alttext:{id:"AltText",icon:"e-alt-text",tooltip:"Alternative Text",command:"Images",subCommand:"AltText"},dimension:{id:"Dimension",icon:"e-dimension",tooltip:"Change Size",command:"Images",subCommand:"Dimension"},fullscreen:{id:"Maximize",icon:"e-maximize",tooltip:"Maximize",command:"View",subCommand:"Maximize"},maximize:{id:"Maximize",icon:"e-maximize",tooltip:"Maximize",command:"FullScreen",subCommand:"Maximize"},minimize:{id:"Minimize",icon:"e-minimize",tooltip:"Minimize",command:"FullScreen",subCommand:"Minimize"},lowercase:{id:"LowerCase",icon:"e-lower-case",tooltip:"Lower Case",command:"Casing",subCommand:"LowerCase"},uppercase:{id:"UpperCase",icon:"e-upper-case",tooltip:"Upper Case",command:"Casing",subCommand:"UpperCase"},print:{id:"Print",icon:"e-print",tooltip:"Print",command:"Print",subCommand:"Print"},formats:{id:"Formats",icon:"e-formats",tooltip:"Formats",command:"Formats",subCommand:"Formats"},sourcecode:{id:"SourceCode",icon:"e-source-code",tooltip:"Source Code",command:"SourceCode",subCommand:"SourceCode"},preview:{id:"Preview",icon:"e-preview",tooltip:"Preview",command:"Preview",subCommand:"Preview"},viewside:{id:"ViewSide",icon:"e-view-side",tooltip:"ViewSide",command:"ViewSide",subCommand:"ViewSide"},insertcode:{id:"InsertCode",icon:"e-insert-code",tooltip:"Insert Code",command:"Formats",subCommand:"Pre"},tableheader:{id:"TableHeader",icon:"e-table-header",tooltip:"Table Header",command:"Table",subCommand:"TableHeader"},tableremove:{id:"TableRemove",icon:"e-table-remove",tooltip:"Table Remove",command:"Table",subCommand:"TableRemove"},tablerows:{id:"TableRows",icon:"e-table-rows",tooltip:"Table Rows",command:"Table",subCommand:"TableRows"},tablecolumns:{id:"TableColumns",icon:"e-table-columns",tooltip:"Table Columns",command:"Table",subCommand:"TableColumns"},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"}},qn=[{locale:"alignmentsDropDownLeft",value:"JustifyLeft"},{locale:"alignmentsDropDownCenter",value:"JustifyCenter"},{locale:"alignmentsDropDownRight",value:"JustifyRight"},{locale:"alignmentsDropDownJustify",value:"JustifyFull"}],_n=[{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"}],Fn=[{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"}],Qn=[{locale:"imageDisplayDropDownInline",value:"Inline"},{locale:"imageDisplayDropDownBreak",value:"Break"}],Wn=[{text:"Inline",cssClass:"e-inline",command:"Images",subCommand:"Inline"},{text:"Break",cssClass:"e-break",command:"Images",subCommand:"Break"}],Vn=[{locale:"tableInsertRowDropDownBefore",value:"InsertRowBefore"},{locale:"tableInsertRowDropDownAfter",value:"InsertRowAfter"},{locale:"tableInsertRowDropDownDelete",value:"DeleteRow"}],Gn=[{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"}],Kn=[{locale:"tableInsertColumnDropDownLeft",value:"InsertColumnLeft"},{locale:"tableInsertColumnDropDownRight",value:"InsertColumnRight"},{locale:"tableInsertColumnDropDownDelete",value:"DeleteColumn"}],Yn=[{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"}],Xn=[{locale:"tableVerticalAlignDropDownTop",value:"AlignTop"},{locale:"tableVerticalAlignDropDownMiddle",value:"AlignMiddle"},{locale:"tableVerticalAlignDropDownBottom",value:"AlignBottom"}],Jn=[{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"}],$n=[{locale:"tableStylesDropDownDashedBorder",value:"Dashed"},{locale:"tableStylesDropDownAlternateRows",value:"Alternate"}],Zn=[{text:"Dashed Borders",cssClass:"e-dashed-borders",command:"Table",subCommand:"Dashed"},{text:"Alternate Rows",cssClass:"e-alternate-rows",command:"Table",subCommand:"Alternate"}],ei={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 Hyperlink",openLink:"Open Link",editLink:"Edit Link",removeLink:"Remove Link",image:"Insert Image",replace:"Replace",align:"Align",caption:"Image Caption",remove:"Remove",insertLink:"Insert Link",display:"Display",altText:"Alternative Text",dimension:"Change Size",fullscreen:"Maximize",maximize:"Maximize",minimize:"Minimize",lowerCase:"Lower Case",upperCase:"Upper Case",print:"Print",formats:"Formats",sourcecode:"Code View",preview:"Preview",viewside:"ViewSide",insertCode:"Insert Code",linkText:"Display Text",linkTooltipLabel:"Title",linkWebUrl:"Web Address",linkTitle:"Enter a title",linkurl:"http://example.com",linkOpenInNewWindow:"Open Link in New Window",linkHeader:"Insert Link",dialogInsert:"Insert",dialogCancel:"Cancel",dialogUpdate:"Update",imageHeader:"Insert Image",imageLinkHeader:"You can also provide a link from the web",mdimageLink:"Please provide a URL for your image",imageUploadMessage:"Drop image here or browse to upload",imageDeviceUploadMessage:"Click here to upload",imageAlternateText:"Alternate Text",alternateHeader:"Alternative Text",browse:"Browse",imageUrl:"http://example.com/image.png",imageCaption:"Caption",imageSizeHeader:"Image Size",imageHeight:"Height",imageWidth:"Width",textPlaceholder:"Enter Text",inserttablebtn:"Insert Table",tabledialogHeader:"Insert Table",tableWidth:"Width",cellpadding:"Cell Padding",cellspacing:"Cell Spacing",columns:"Number of columns",rows:"Number of rows",tableRows:"Table Rows",tableColumns:"Table Columns",tableCellHorizontalAlign:"Table Cell Horizontal Align",tableCellVerticalAlign:"Table Cell Vertical Align",createTable:"Create Table",removeTable:"Remove Table",tableHeader:"Table Header",tableRemove:"Table Remove",tableCellBackground:"Table Cell Background",tableEditProperties:"Table Edit Properties",styles:"Styles",insertColumnLeft:"Insert Column Left",insertColumnRight:"Insert Column Right",deleteColumn:"Delete Column",insertRowBefore:"Insert Row Before",insertRowAfter:"Insert Row After",deleteRow:"Delete Row",tableEditHeader:"Edit Table",TableHeadingText:"Heading",TableColText:"Col",imageInsertLinkHeader:"Insert Link",editImageHeader:"Edit Image",alignmentsDropDownLeft:"Align Left",alignmentsDropDownCenter:"Align Center",alignmentsDropDownRight:"Align Right",alignmentsDropDownJustify:"Align Justify",imageDisplayDropDownInline:"Inline",imageDisplayDropDownBreak:"Break",tableInsertRowDropDownBefore:"Insert row before",tableInsertRowDropDownAfter:"Insert row after",tableInsertRowDropDownDelete:"Delete row",tableInsertColumnDropDownLeft:"Insert column left",tableInsertColumnDropDownRight:"Insert column right",tableInsertColumnDropDownDelete:"Delete column",tableVerticalAlignDropDownTop:"Align Top",tableVerticalAlignDropDownMiddle:"Align Middle",tableVerticalAlignDropDownBottom:"Align Bottom",tableStylesDropDownDashedBorder:"Dashed Borders",tableStylesDropDownAlternateRows:"Alternate Rows",pasteFormat:"Paste Format",pasteFormatContent:"Choose the formatting action",plainText:"Plain Text",cleanFormat:"Clean",keepFormat:"Keep",pasteDialogOk:"OK",pasteDialogCancel:"Cancel"},ti={alignments:"alignments",justifyleft:"justifyLeft",justifycenter:"justifyCenter",justifyright:"justifyRight",justifyfull:"justifyFull",fontname:"fontName",fontsize:"fontSize",fontcolor:"fontColor",backgroundcolor:"backgroundColor",bold:"bold",italic:"italic",underline:"underline",strikethrough:"strikethrough",clearformat:"clearFormat",clearall:"clearAll",cut:"cut",copy:"copy",paste:"paste",unorderedlist:"unorderedList",orderedlist:"orderedList",indent:"indent",outdent:"outdent",undo:"undo",redo:"redo",superscript:"superscript",subscript:"subscript",createlink:"createLink",openlink:"openLink",editlink:"editLink",removelink:"removeLink",openimagelink:"openLink",editimagelink:"editLink",removeimagelink:"removeLink",image:"image",replace:"replace",align:"align",caption:"caption",remove:"remove",insertlink:"insertLink",display:"display",alttext:"altText",dimension:"dimension",fullscreen:"fullscreen",maximize:"maximize",minimize:"minimize",lowercase:"lowerCase",uppercase:"upperCase",print:"print",formats:"formats",sourcecode:"sourcecode",preview:"preview",viewside:"viewside",insertcode:"insertCode",tablerows:"tableRows",tablecolumns:"tableColumns",tablecellhorizontalalign:"tableCellHorizontalAlign",tablecellverticalalign:"tableCellVerticalAlign",createtable:"createTable",removetable:"removeTable",tableheader:"tableHeader",tableremove:"tableRemove",tablecellbackground:"tableCellBackground",tableeditproperties:"tableEditProperties",styles:"styles",insertcolumnleft:"insertColumnLeft",insertcolumnright:"insertColumnRight",deletecolumn:"deleteColumn",aligntop:"AlignTop",alignmiddle:"AlignMiddle",alignbottom:"AlignBottom",insertrowbefore:"insertRowBefore",insertrowafter:"insertRowAfter",deleterow:"deleteRow"},ni=["Undo","Redo"],ii=["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"],oi=function(){function e(e){this.parent=e,this.wireEvent()}return e.prototype.wireEvent=function(){this.parent.on(I,this.unWireEvent,this)},e.prototype.unWireEvent=function(){this.parent.off(I,this.unWireEvent),this.popupOverlay&&t.EventHandler.remove(this.popupOverlay,"click touchmove",this.onPopupOverlay),this.removePopupContainer()},e.prototype.toolbarBeforeCreate=function(e){"Extended"===this.mode&&(e.enableCollision=!1)},e.prototype.toolbarCreated=function(){this.parent.notify(Y,this)},e.prototype.toolbarClicked=function(e){this.parent.enabled&&(this.parent.readonly||this.parent.notify(A,e),this.parent.trigger("toolbarClick",e))},e.prototype.dropDownSelected=function(e){this.parent.notify(Z,e),this.onPopupOverlay()},e.prototype.beforeDropDownItemRender=function(e){!this.parent.readonly&&this.parent.enabled&&this.parent.notify(ee,e)},e.prototype.dropDownOpen=function(e){t.Browser.isDevice&&!e.element.parentElement.classList.contains(St)&&this.popupModal(e.element.parentElement),this.parent.notify(ke,e)},e.prototype.dropDownClose=function(e){this.removePopupContainer(),this.parent.notify(we,e)},e.prototype.removePopupContainer=function(){t.Browser.isDevice&&!t.isNullOrUndefined(this.popupContainer)&&(t.detach(this.popupContainer),this.popupContainer=void 0)},e.prototype.renderToolbar=function(e){this.setPanel(e.target),this.renderPanel(),this.mode=e.overflowMode,e.rteToolbarObj.toolbarObj=new n.Toolbar({items:e.items,width:"100%",overflowMode:e.overflowMode,beforeCreate:this.toolbarBeforeCreate.bind(this),created:this.toolbarCreated.bind(this),clicked:this.toolbarClicked.bind(this),enablePersistence:e.enablePersistence,enableRtl:e.enableRtl}),e.rteToolbarObj.toolbarObj.isStringTemplate=!0,e.rteToolbarObj.toolbarObj.createElement=this.parent.createElement,e.rteToolbarObj.toolbarObj.appendTo(e.target)},e.prototype.renderDropDownButton=function(e){var n,o=this;e.element.classList.add(Ot),n=e.cssClass+" "+Xt+" "+Jt,this.parent.inlineMode.enable&&t.Browser.isDevice&&(n=n+" "+kt);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){for(var n=0;n<e.element.childNodes.length;n++){var i=o.parent.createElement("div");i.innerHTML=s.content.trim(),""!==i.textContent.trim()&&e.element.childNodes[n].textContent.trim()===i.textContent.trim()?e.element.childNodes[n].classList.contains("e-active")||t.addClass([e.element.childNodes[n]],"e-active"):t.removeClass([e.element.childNodes[n]],"e-active")}r.parent.notify(Ne,e)}else e.cancel=!0},close:this.dropDownClose.bind(this),open:this.dropDownOpen.bind(this),beforeItemRender:this.beforeDropDownItemRender.bind(this)});s.isStringTemplate=!0,s.createElement=r.parent.createElement,s.appendTo(e.element),e.element.tabIndex=-1;return document.getElementById(s.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),s},e.prototype.onPopupOverlay=function(e){t.isNullOrUndefined(this.popupOverlay)||(t.closest(this.popupOverlay,".e-popup-container").style.display="none",this.popupOverlay.style.display="none",t.removeClass([this.popupOverlay],"e-popup-overlay"))},e.prototype.setIsModel=function(e){t.closest(e,".e-popup-container")?(e.parentElement.style.display="flex",this.popupOverlay=e.nextElementSibling,this.popupOverlay.style.display="block",t.addClass([this.popupOverlay],"e-popup-overlay")):(this.popupContainer=this.parent.createElement("div",{className:"e-rte-modal-popup e-popup-container e-center"}),e.parentNode.insertBefore(this.popupContainer,e),this.popupContainer.appendChild(e),this.popupContainer.style.zIndex=e.style.zIndex,this.popupContainer.style.display="flex",e.style.position="relative",t.addClass([e],"e-popup-modal"),this.popupOverlay=this.parent.createElement("div",{className:"e-popup-overlay"}),this.popupOverlay.style.zIndex=(parseInt(e.style.zIndex,null)-1).toString(),this.popupOverlay.style.display="block",this.popupContainer.appendChild(this.popupOverlay),t.EventHandler.add(this.popupOverlay,"click touchmove",this.onPopupOverlay,this))},e.prototype.paletteSelection=function(e,n){var i=e.element.querySelector(".e-control.e-colorpicker"),o=[].slice.call(t.selectAll(".e-tile",i.parentElement));t.removeClass(o,"e-selected");var r=n.querySelector("."+Xt).style.borderBottomColor;o.filter(function(e){e.style.backgroundColor===r&&t.addClass([e],"e-selected")})},e.prototype.renderColorPickerDropDown=function(e,n,o){var s=this,a=this,l=Xt+" "+Jt+(this.parent.inlineMode?" "+kt:"");l+=" "+("backgroundcolor"===n?ln:an);var c,p=a.parent.createElement("span",{className:sn}),h=a.parent.createElement("span",{className:e.cssClass});h.style.borderBottomColor="backgroundcolor"===n?a.parent.backgroundColor.default:a.parent.fontColor.default,p.appendChild(h);var u=new i.DropDownButton({target:o.element.parentElement,cssClass:l,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,beforeOpen:function(n){if(!a.parent.readonly&&a.parent.enabled){var i=n.event?n.event.target:null;if(a.currentElement=u.element,a.currentDropdown=u,a.paletteSelection(n,a.currentElement),n.event&&"click"===n.event.type&&(i.classList.contains(sn)||i.parentElement.classList.contains(sn))){n.cancel=!0;var o=i.classList.contains(Xt)?i.style.borderBottomColor:i.querySelector("."+Xt).style.borderBottomColor;a.parent.notify(we,{});var s=(c=a.parent.formatter.editorManager.nodeSelection.getRange(a.parent.contentModule.getDocument())).startContainer.parentNode;("TD"===c.startContainer.nodeName||"TH"===c.startContainer.nodeName||t.closest(c.startContainer.parentNode,"td,th")||a.parent.iframeSettings.enable&&!d(s.ownerDocument.querySelector("body"),"e-lib"))&&c.collapsed&&"BackgroundColor"===e.subCommand?a.parent.notify(Ie,{item:{command:e.command,subCommand:e.subCommand,value:o}}):a.parent.notify(Pe,{item:{command:e.command,subCommand:e.subCommand,value:o}})}else{var l=n.element.querySelector(".e-control.e-colorpicker"),p=t.getInstance(l,r.ColorPicker);p.showButtons=!n.element.querySelector(".e-color-palette"),p.dataBind(),n.element.onclick=function(e){e.target.classList.contains("e-cancel")&&u.toggle()}}}else n.cancel=!0},open:function(e){s.setColorPickerContentWidth(o);var n,i=e.element.querySelector(".e-control.e-colorpicker");(n=e.element.querySelector(".e-color-palette")?i.parentElement.querySelector(".e-palette"):i.parentElement.querySelector("e-handler"))&&n.focus(),t.Browser.isDevice&&s.popupModal(e.element.parentElement),s.pickerRefresh(e)},beforeClose:function(n){var i=n.event?n.event.target:null;if(n.event&&"click"===n.event.type&&(i.classList.contains(sn)||i.parentElement.classList.contains(sn))){var o=i.classList.contains(Xt)?i.style.borderBottomColor:i.querySelector("."+Xt).style.borderBottomColor;("TD"===(c=a.parent.formatter.editorManager.nodeSelection.getRange(a.parent.contentModule.getDocument())).startContainer.nodeName||"TH"===c.startContainer.nodeName||t.closest(c.startContainer.parentNode,"td,th"))&&c.collapsed?a.parent.notify(Ie,{item:{command:e.command,subCommand:e.subCommand,value:o}}):a.parent.notify(Pe,{item:{command:e.command,subCommand:e.subCommand,value:o}})}else;},close:function(e){a.parent.notify(we,{});var n=t.closest(e.element.parentElement,".e-popup-container");n&&(n.style.display="none",n.lastElementChild.style.display="none",t.removeClass([n.lastElementChild],"e-popup-overlay")),t.Browser.isDevice&&!t.isNullOrUndefined(n)&&t.detach(n)}});u.isStringTemplate=!0,u.createElement=a.parent.createElement,u.appendTo(e.element);return document.getElementById(u.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),u.element.insertBefore(p,u.element.querySelector(".e-caret")),e.element.tabIndex=-1,u.element.removeAttribute("type"),u.element.onmousedown=function(){a.parent.notify(ke,{})},u.element.onkeydown=function(){a.parent.notify(ke,{})},u},e.prototype.pickerRefresh=function(e){if("Picker"===this.parent.backgroundColor.mode){var n=e.element.parentElement;n.style.width=(n.offsetWidth+5).toString()+"px",t.getInstance(n,o.Popup).refreshPosition(n),n.style.width=(n.offsetWidth-5).toString()+"px"}},e.prototype.popupModal=function(e){var n=t.getInstance(e,o.Popup);n.relateTo=document.body,n.position={X:0,Y:0},n.targetType="container",n.collision={X:"fit",Y:"fit"},n.offsetY=4,n.dataBind(),this.setIsModel(e)},e.prototype.setColorPickerContentWidth=function(e){var n=e.element.nextSibling;if("0px"===n.style.width){n.style.width="";var i=parseInt(getComputedStyle(n).borderBottomWidth,10);n.style.width=t.formatUnit(n.children[0].offsetWidth+i+i)}},e.prototype.renderColorPicker=function(e,n){var i=this,o=this;return this.colorPicker=new r.ColorPicker({enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,inline:!0,created:function(){var e="backgroundcolor"===n?o.parent.backgroundColor.default:o.parent.fontColor.default;i.colorPicker.setProperties({value:e})},mode:"backgroundcolor"===n?o.parent.backgroundColor.mode:o.parent.fontColor.mode,modeSwitcher:"backgroundcolor"===n?o.parent.backgroundColor.modeSwitcher:o.parent.fontColor.modeSwitcher,beforeTileRender:function(e){e.element.classList.add(dn),e.element.classList.add(Pn),""===e.value&&e.element.classList.add(In)},change:function(n){var i=n.currentValue.rgba;n.item={command:e.command,subCommand:e.subCommand,value:i},o.parent.notify(we,{}),o.currentElement.querySelector("."+Xt).style.borderBottomColor=i;var r=o.parent.formatter.editorManager.nodeSelection.getRange(o.parent.contentModule.getDocument());("TD"===r.startContainer.nodeName||"TH"===r.startContainer.nodeName||t.closest(r.startContainer.parentNode,"td,th"))&&r.collapsed&&"BackgroundColor"===e.subCommand?o.parent.notify(Ie,n):o.parent.notify(Pe,n),o.currentDropdown.toggle()},beforeModeSwitch:function(e){i.colorPicker.showButtons="Palette"!==e.mode}}),this.colorPicker.isStringTemplate=!0,this.colorPicker.columns="backgroundcolor"===n?this.parent.backgroundColor.columns:this.parent.fontColor.columns,this.colorPicker.presetColors="backgroundcolor"===n?this.parent.backgroundColor.colorCode:this.parent.fontColor.colorCode,this.colorPicker.cssClass="backgroundcolor"===n?pn:cn,this.colorPicker.createElement=this.parent.createElement,this.colorPicker.appendTo(document.body.querySelector(e.target)),this.colorPicker},e.prototype.renderPanel=function(){this.getPanel().classList.add(ht)},e.prototype.getPanel=function(){return this.toolbarPanel},e.prototype.setPanel=function(e){this.toolbarPanel=e},e}(),ri=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,zn,S(this.parent.toolbarSettings.itemConfigs),!0):this.tools=zn}return n.prototype.addEventListener=function(){this.parent.on(_e,this.setRtl,this),this.parent.on(I,this.removeEventListener,this)},n.prototype.removeEventListener=function(){this.parent.off(_e,this.setRtl),this.parent.off(I,this.removeEventListener)},n.prototype.setRtl=function(e){t.isNullOrUndefined(this.toolbarObj)||this.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.getTemplateObject=function(e,t){var n;switch(e){case"fontcolor":case"backgroundcolor":n="span";break;default:n="button"}return{command:this.tools[e.toLocaleLowerCase()].command,subCommand:this.tools[e.toLocaleLowerCase()].subCommand,template:this.parent.createElement(n,{id:this.parent.getID()+"_"+t+"_"+this.tools[e.toLocaleLowerCase()].id}).outerHTML,tooltipText:m(e,this.locator)}},n.prototype.getObject=function(e,t){var n=e.toLowerCase();if(-1!==jn.indexOf(n))return this.getTemplateObject(n,t);switch(n){case"|":return{type:"Separator"};case"-":return{type:"Separator",cssClass:$t};default:return{id:this.parent.getID()+"_"+t+"_"+this.tools[n.toLocaleLowerCase()].id,prefixIcon:this.tools[n.toLocaleLowerCase()].icon,tooltipText:m(n,this.locator),command:this.tools[n.toLocaleLowerCase()].command,subCommand:this.tools[n.toLocaleLowerCase()].subCommand}}},n.prototype.getItems=function(e,n){var i=this;if(this.parent.toolbarSettings.items.length<1)return[];for(var o=[],r=function(e){switch(typeof e){case"string":o.push(s.getObject(e,n));break;default:if(!t.isNullOrUndefined(e.click)){var r=e,a=r.click;r.click=function(){r.undo&&0===i.parent.formatter.getUndoRedoStack().length&&i.parent.formatter.saveData(),a.call(i),i.parent.formatter.getUndoRedoStack()[i.parent.formatter.getUndoRedoStack().length-1].text.trim()!==i.parent.inputElement.innerHTML.trim()&&r.undo&&i.parent.formatter.saveData()}}o.push(e)}},s=this,a=0,l=e;a<l.length;a++){r(l[a])}return o},n.prototype.getToolbarOptions=function(e){return{target:e.target,rteToolbarObj:this,items:this.getItems(e.items,e.container),overflowMode:e.mode,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl}},n.prototype.render=function(t){this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.toolbarRenderer.renderToolbar(this.getToolbarOptions(t))},n}(),si=function(){function n(e,t){this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.initializeInstance=function(){this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar)},n.prototype.beforeRender=function(e){var n=e.item;n.cssClass&&t.addClass([e.element],n.cssClass),"Alignments"!==n.command&&"JustifyLeft"!==n.subCommand&&"JustifyRight"!==n.subCommand&&"JustifyCenter"!==n.subCommand||e.element.setAttribute("title",m(n.subCommand.toLocaleLowerCase(),this.locator))},n.prototype.dropdownContent=function(e,t,n){return'<span style="display: inline-flex;width:'+("quick"===t?"auto":e)+'" ><span class="e-rte-dropdown-btn-text">'+n+"</span></span>"},n.prototype.renderDropDowns=function(e){var n=this;this.initializeInstance();var i=e.containerType,o=e.container;jn.forEach(function(r){var s=void 0;if(-1!==l(r,e.items))switch(r){case"formats":if(s=t.select("#"+n.parent.getID()+"_"+i+"_Formats",o),t.isNullOrUndefined(s)||s.classList.contains(Ot))return;var a=n.parent.format.types.slice();a.forEach(function(e){Object.defineProperties(e,{command:{value:"Formats",enumerable:!0},subCommand:{value:e.value,enumerable:!0}})});var d=t.isNullOrUndefined(n.parent.format.default)?a[0].text:n.parent.format.default;n.formatDropDown=n.toolbarRenderer.renderDropDownButton({iconCss:"quick"===i?"e-formats e-icons":"",content:n.dropdownContent(n.parent.format.width,i,"quick"===i?"":c(a,d,"text","text")),cssClass:wt+" "+xt+" "+en,itemName:"Formats",items:a,element:s});break;case"fontname":if(s=t.select("#"+n.parent.getID()+"_"+i+"_FontName",o),t.isNullOrUndefined(s)||s.classList.contains(Ot))return;var p=n.parent.fontFamily.items.slice();p.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontName",enumerable:!0}})});var u=t.isNullOrUndefined(n.parent.fontFamily.default)?p[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?"":c(p,u,"text","text")),cssClass:wt+" "+xt+" "+tn,itemName:"FontName",items:p,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(Ot))return;var m=n.parent.fontSize.items.slice();m.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontSize",enumerable:!0}})});var g=t.isNullOrUndefined(n.parent.fontSize.default)?m[1].text:n.parent.fontSize.default;n.fontSizeDropDown=n.toolbarRenderer.renderDropDownButton({content:n.dropdownContent(n.parent.fontSize.width,i,h(c(m,g.replace(/\s/g,""),"value","text"))),cssClass:wt+" "+xt+" "+nn,itemName:"FontSize",items:m,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(Ot))return;n.alignDropDown=n.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:wt+" "+xt,itemName:"Alignments",items:_n,element:s});break;case"align":n.imageAlignmentDropDown(i,o,s);break;case"display":n.imageDisplayDropDown(i,o,s);break;case"tablerows":n.rowDropDown(i,o,s);break;case"tablecolumns":n.columnDropDown(i,o,s);break;case"tablecellverticalalign":n.verticalAlignDropDown(i,o,s);break;case"styles":n.tableStylesDropDown(i,o,s)}})},n.prototype.getUpdateItems=function(e,t){var n=e.slice();return n.forEach(function(e){Object.defineProperties(e,{command:{value:"Format"===t?"Formats":"Font",enumerable:!0},subCommand:{value:"Format"===t?e.value:t,enumerable:!0}})}),n},n.prototype.onPropertyChanged=function(e){for(var n,i,o=e.newProp,r=0,s=Object.keys(o);r<s.length;r++){switch(s[r]){case"fontFamily":if(this.fontNameDropDown)for(var a=0,l=Object.keys(o.fontFamily);a<l.length;a++){switch(l[a]){case"default":case"width":var d=this.fontNameDropDown.items;n=t.isNullOrUndefined(t.closest(this.fontNameDropDown.element,"."+yt))?"toolbar":"quick";var p=t.isNullOrUndefined(this.parent.fontFamily.default)?d[0].text:this.parent.fontFamily.default;i=this.dropdownContent(this.parent.fontFamily.width,n,"quick"===n?"":c(d,p,"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 u=0,m=Object.keys(o.fontSize);u<m.length;u++){switch(m[u]){case"default":case"width":var g=this.fontSizeDropDown.items;n=t.isNullOrUndefined(t.closest(this.fontSizeDropDown.element,"."+yt))?"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,h(c(g,f.replace(/\s/g,""),"value","text"))),this.fontSizeDropDown.setProperties({content:i}),t.isNullOrUndefined(this.parent.fontSize.default)?this.getEditNode().style.removeProperty("font-size"):this.getEditNode().style.fontSize=this.parent.fontSize.default;break;case"items":this.fontSizeDropDown.setProperties({items:this.getUpdateItems(o.fontSize.items,"FontSize")})}}break;case"format":if(this.formatDropDown)for(var b=0,v=Object.keys(o.format);b<v.length;b++){switch(v[b]){case"default":case"width":var y=this.formatDropDown.items;n=t.isNullOrUndefined(t.closest(this.formatDropDown.element,"."+yt))?"toolbar":"quick";var C=t.isNullOrUndefined(this.parent.format.default)?y[0].text:this.parent.format.default;i=this.dropdownContent(this.parent.format.width,n,"quick"===n?"":c(y,C,"text","text")),this.formatDropDown.setProperties({content:i});break;case"types":this.formatDropDown.setProperties({items:this.getUpdateItems(o.format.types,"Format")})}}}}},n.prototype.getEditNode=function(){return this.parent.contentModule.getEditPanel()},n.prototype.rowDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableRows",n)).classList.contains(Ot)||(this.tableRowsDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-rows e-icons",cssClass:wt+" "+xt+" "+St,itemName:"TableRows",items:Gn,element:i}))},n.prototype.columnDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableColumns",n)).classList.contains(Ot)||(this.tableColumnsDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-columns e-icons",cssClass:wt+" "+xt+" "+St,itemName:"TableColumns",items:Yn,element:i}))},n.prototype.verticalAlignDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableCellVerticalAlign",n)).classList.contains(Ot)||(this.tableCellVerticalAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-cell-ver-align e-icons",cssClass:wt+" "+xt+" "+St,itemName:"TableCellVerticalAlign",items:Jn,element:i}))},n.prototype.imageDisplayDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Display",n)).classList.contains(Ot)||(this.displayDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-display e-icons",cssClass:wt+" "+xt+" "+St,itemName:"Display",items:Wn,element:i}))},n.prototype.imageAlignmentDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Align",n)).classList.contains(Ot)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:wt+" "+Lt+" "+St,itemName:"Align",items:Fn,element:i}))},n.prototype.tableStylesDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Styles",n)).classList.contains(Ot)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-style e-icons",cssClass:wt+" "+Lt+" "+St,itemName:"Styles",items:this.parent.tableSettings.styles,element:i}))},n.prototype.removeDropDownClasses=function(e){t.removeClass([e],[Ot,wt,Lt,xt])},n.prototype.destroyDropDowns=function(){this.formatDropDown&&(this.removeDropDownClasses(this.formatDropDown.element),this.formatDropDown.destroy()),this.fontNameDropDown&&(this.removeDropDownClasses(this.fontNameDropDown.element),this.fontNameDropDown.destroy()),this.fontSizeDropDown&&(this.removeDropDownClasses(this.fontSizeDropDown.element),this.fontSizeDropDown.destroy()),this.alignDropDown&&(this.removeDropDownClasses(this.alignDropDown.element),this.alignDropDown.destroy()),this.imageAlignDropDown&&(this.removeDropDownClasses(this.imageAlignDropDown.element),this.imageAlignDropDown.destroy()),this.displayDropDown&&(this.removeDropDownClasses(this.displayDropDown.element),this.displayDropDown.destroy()),this.tableRowsDropDown&&(this.removeDropDownClasses(this.tableRowsDropDown.element),this.tableRowsDropDown.destroy()),this.tableColumnsDropDown&&(this.removeDropDownClasses(this.tableColumnsDropDown.element),this.tableColumnsDropDown.destroy()),this.tableCellVerticalAlignDropDown&&(this.removeDropDownClasses(this.tableCellVerticalAlignDropDown.element),this.tableCellVerticalAlignDropDown.destroy())},n.prototype.setRtl=function(e){this.formatDropDown&&this.formatDropDown.setProperties({enableRtl:e.enableRtl}),this.fontNameDropDown&&this.fontNameDropDown.setProperties({enableRtl:e.enableRtl}),this.fontSizeDropDown&&this.fontSizeDropDown.setProperties({enableRtl:e.enableRtl}),this.alignDropDown&&this.alignDropDown.setProperties({enableRtl:e.enableRtl}),this.imageAlignDropDown&&this.imageAlignDropDown.setProperties({enableRtl:e.enableRtl}),this.displayDropDown&&this.displayDropDown.setProperties({enableRtl:e.enableRtl})},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(ee,this.beforeRender,this),this.parent.on(P,this.onIframeMouseDown,this),this.parent.on(_e,this.setRtl,this),this.parent.on(I,this.removeEventListener,this),this.parent.on(W,this.onPropertyChanged,this))},n.prototype.onIframeMouseDown=function(){y(document,"mousedown")},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(P,this.onIframeMouseDown),this.parent.off(_e,this.setRtl),this.parent.off(ee,this.beforeRender),this.parent.off(I,this.removeEventListener),this.parent.off(W,this.onPropertyChanged))},n}(),ai=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}(),li=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}(),di=function(){function e(e){this.parent=e,this.addEventListener(),this.serviceLocator=new ai,this.serviceLocator.register("rendererFactory",new li)}return e.prototype.addEventListener=function(){this.parent.on(A,this.toolbarClick,this),this.parent.on(Z,this.dropDownSelect,this),this.parent.on(Pe,this.renderSelection,this),this.parent.on(I,this.removeEventListener,this)},e.prototype.toolbarClick=function(e){if(!t.isNullOrUndefined(e.item)){if(!t.isNullOrUndefined(e.item.controlParent)){var n=e.item.controlParent.activeEle;n&&(n.tabIndex=-1)}this.parent.notify(_,e),this.parent.notify(F,e)}},e.prototype.dropDownSelect=function(e){if(this.parent.notify(we,{}),!document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))||!e.item||"Images"!==e.item.command&&"Display"!==e.item.command&&"Table"!==e.item.command){var t=e.item.controlParent&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.tableQTBar&&this.parent.quickToolbarModule.tableQTBar.element.contains(e.item.controlParent.element)?"Table":null;this.parent.formatter.process(this.parent,e,e.originalEvent,t)}this.parent.notify(ke,{})},e.prototype.renderSelection=function(e){this.parent.notify(we,{}),this.parent.formatter.process(this.parent,e,e.originalEvent,null),this.parent.notify(ke,{})},e.prototype.removeEventListener=function(){this.parent.off(A,this.toolbarClick),this.parent.off(Z,this.dropDownSelect),this.parent.off(Pe,this.renderSelection),this.parent.off(I,this.removeEventListener)},e}(),ci=function(){function n(n,i){this.parent=n,this.isToolbar=!1,this.locator=i,this.isTransformChild=!1,this.renderFactory=this.locator.getService("rendererFactory"),function(e){_n.forEach(function(t,n){_n[n].text=a(e,qn,_n[n])}),Wn.forEach(function(t,n){Wn[n].text=a(e,Qn,Wn[n])}),Gn.forEach(function(t,n){Gn[n].text=a(e,Vn,Gn[n])}),Yn.forEach(function(t,n){Yn[n].text=a(e,Kn,Yn[n])}),Jn.forEach(function(t,n){Jn[n].text=a(e,Xn,Jn[n])}),Zn.forEach(function(t,n){Zn[n].text=a(e,$n,Zn[n])})}(this.parent),this.renderFactory.addRenderer(e.RenderType.Toolbar,new oi(this.parent)),this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.baseToolbar=new ri(this.parent,this.locator),this.addEventListener(),this.parent.toolbarSettings&&Object.keys(this.parent.toolbarSettings.itemConfigs).length>0?t.extend(this.tools,zn,S(this.parent.toolbarSettings.itemConfigs),!0):this.tools=zn}return n.prototype.initializeInstance=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content),this.editableElement=this.contentRenderer.getEditPanel(),this.editPanel=this.contentRenderer.getPanel()},n.prototype.toolbarBindEvent=function(){this.parent.inlineMode.enable||(this.keyBoardModule=new t.KeyboardEvents(this.getToolbarElement(),{keyAction:this.toolBarKeyDown.bind(this),keyConfigs:this.parent.formatter.keyConfig,eventName:"keydown"}))},n.prototype.toolBarKeyDown=function(e){switch(e.action){case"escape":this.parent.contentModule.getEditPanel().focus()}},n.prototype.createToolbarElement=function(){this.tbElement=this.parent.createElement("div",{id:this.parent.getID()+"_toolbar"}),!t.Browser.isDevice&&this.parent.inlineMode.enable&&p()||(this.parent.toolbarSettings.enableFloating&&!this.parent.inlineMode.enable?(this.tbWrapper=this.parent.createElement("div",{id:this.parent.getID()+"_toolbar_wrapper",innerHTML:this.tbElement.outerHTML,className:Rt}),this.tbElement=this.tbWrapper.firstElementChild,this.parent.element.insertBefore(this.tbWrapper,this.editPanel)):this.parent.element.insertBefore(this.tbElement,this.editPanel))},n.prototype.getToolbarMode=function(){var t;switch(this.parent.toolbarSettings.type){case e.ToolbarType.Expand:t="Extended";break;case e.ToolbarType.Scrollable:t="Scrollable";break;default:t="MultiRow"}return p()&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&(t=e.ToolbarType.Scrollable),t},n.prototype.checkToolbarResponsive=function(n){if(!t.Browser.isDevice||p())return!1;var i;return i=this.parent.toolbarSettings.type===e.ToolbarType.Expand?e.ToolbarType.MultiRow:this.parent.toolbarSettings.type,this.baseToolbar.render({container:this.parent.inlineMode.enable?"quick":"toolbar",items:this.parent.toolbarSettings.items,mode:i,target:n}),this.parent.toolbarSettings.type===e.ToolbarType.Expand&&(t.addClass([n],["e-rte-tb-mobile"]),this.parent.inlineMode.enable?this.addFixedTBarClass():t.addClass([n],["e-tb-static"])),this.wireEvents(),this.dropDownModule.renderDropDowns({container:n,containerType:this.parent.inlineMode.enable?"quick":"toolbar",items:this.parent.toolbarSettings.items}),this.parent.notify(q,{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;p>m+s||p<-d||p<0&&!(p-(o?0:m)+d>a+s)?(r=!1,t.removeClass([this.tbElement],[gt])):p<m+s&&(n=p<0?-p+m:m-p,n=o?n-l:n,t.addClass([this.tbElement],[gt]),r=!0)}else{var g=this.parent.element.getBoundingClientRect();if(window.innerHeight<g.top)return;n=e&&e.target!==document?i.getBoundingClientRect().top:0,g.bottom<s+a+n||g.bottom<0||g.top>s+n?r=!1:g.top<s&&(r=!0)}r?(t.addClass([this.tbElement],[mt]),t.setStyleAttribute(this.tbElement,{width:this.parent.element.offsetWidth+"px",top:s+n+"px"})):(t.removeClass([this.tbElement],[mt]),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(ze,{}):(this.baseToolbar.render({container:"toolbar",items:this.parent.toolbarSettings.items,mode:this.getToolbarMode(),target:this.tbElement}),this.parent.inlineMode.enable||(this.parent.toolbarSettings.enableFloating&&(this.checkIsTransformChild(),this.toggleFloatClass()),this.parent.toolbarSettings.type===e.ToolbarType.Expand&&t.addClass([this.parent.element],[bt]))),this.wireEvents(),this.parent.inlineMode.enable&&!p()&&this.addFixedTBarClass(),this.parent.inlineMode.enable||(this.dropDownModule.renderDropDowns({container:this.tbElement,containerType:"toolbar",items:this.parent.toolbarSettings.items}),this.parent.notify(q,{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(me,{targetItem:"SourceCode",updateItem:"Preview",baseToolbar:this.parent.getBaseToolbarObject()}),this.parent.disableToolbarItem(this.parent.toolbarSettings.items))}},n.prototype.addFixedTBarClass=function(){t.addClass([this.tbElement],[ut])},n.prototype.removeFixedTBarClass=function(){t.removeClass([this.tbElement],[ut])},n.prototype.showFixedTBar=function(){t.addClass([this.tbElement],["e-show"]),t.Browser.isIos&&t.addClass([this.tbElement],[Zt])},n.prototype.hideFixedTBar=function(){this.isToolbar?this.isToolbar=!1:t.removeClass([this.tbElement],["e-show",Zt])},n.prototype.updateItem=function(e){var n=this.tools[e.updateItem.toLocaleLowerCase()],i=b(f(this.tools[e.targetItem.toLocaleLowerCase()].subCommand),e.baseToolbar.toolbarObj.items)[0];if(t.isNullOrUndefined(i))this.addTBarItem(e,0);else{var o=this.parent.inlineMode.enable?"_quick_":"_toolbar_";e.baseToolbar.toolbarObj.items[i].id=this.parent.getID()+o+n.id,e.baseToolbar.toolbarObj.items[i].prefixIcon=n.icon,e.baseToolbar.toolbarObj.items[i].tooltipText=n.tooltip,e.baseToolbar.toolbarObj.items[i].subCommand=n.subCommand,e.baseToolbar.toolbarObj.dataBind()}},n.prototype.updateToolbarStatus=function(e){if(this.tbElement&&(!this.parent.inlineMode.enable||!p()&&t.Browser.isDevice)){g({args:e,dropDownModule:this.dropDownModule,parent:this.parent,tbElements:t.selectAll("."+Mt,this.tbElement),tbItems:this.baseToolbar.toolbarObj.items},!!this.parent.inlineMode.enable)}},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=b(f(n),e.toolbarObj.items);this.tbItems=t.selectAll("."+Mt,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||v(e,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus())},n.prototype.removeTBarItems=function(e){t.isNullOrUndefined(this.baseToolbar.toolbarObj)&&(this.baseToolbar=this.parent.getBaseToolbarObject());var n=b(f(e),this.baseToolbar.toolbarObj.items);this.tbItems=this.parent.inlineMode.enable?t.selectAll("."+Mt,this.baseToolbar.toolbarObj.element):t.selectAll("."+Mt,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],[Pt]),n+=i.offsetHeight,t.removeClass([i],[Pt])):t.removeClass([this.tbElement],[Yt])}return n},n.prototype.getToolbarHeight=function(){return this.tbElement.offsetHeight},n.prototype.getToolbarElement=function(){return t.select("."+ht,this.parent.element)},n.prototype.refreshToolbarOverflow=function(){this.baseToolbar.toolbarObj.refreshOverflow()},n.prototype.isToolbarDestroyed=function(){return this.baseToolbar.toolbarObj&&!this.baseToolbar.toolbarObj.isDestroyed},n.prototype.destroyToolbar=function(){if(this.isToolbarDestroyed()){this.parent.unWireScrollElementsEvents(),this.unWireEvents(),this.parent.notify(Q,{}),this.dropDownModule.destroyDropDowns(),this.baseToolbar.toolbarObj.destroy(),this.removeEventListener(),t.removeClass([this.parent.element],[bt]);var e=t.select("."+Rt,this.parent.element),n=t.select("."+ht,this.parent.element);t.isNullOrUndefined(e)?t.isNullOrUndefined(n)||t.detach(n):t.detach(e)}},n.prototype.destroy=function(){this.isToolbarDestroyed()&&(this.destroyToolbar(),this.keyBoardModule&&this.keyBoardModule.destroy())},n.prototype.scrollHandler=function(e){this.parent.inlineMode.enable||this.parent.toolbarSettings.enableFloating&&this.getDOMVisibility(this.tbElement)&&this.toggleFloatClass(e.args)},n.prototype.getDOMVisibility=function(e){return!(!e.offsetParent&&0===e.offsetWidth&&0===e.offsetHeight)},n.prototype.mouseDownHandler=function(){t.Browser.isDevice&&this.parent.inlineMode.enable&&!p()&&this.showFixedTBar()},n.prototype.focusChangeHandler=function(){t.Browser.isDevice&&this.parent.inlineMode.enable&&!p()&&(this.isToolbar=!1,this.hideFixedTBar())},n.prototype.dropDownBeforeOpenHandler=function(){this.isToolbar=!0},n.prototype.tbFocusHandler=function(e){var n=document.activeElement,i=t.closest(n,".e-rte-toolbar");if(n===this.parent.getToolbarElement()||i===this.parent.getToolbarElement())for(var o=this.parent.getToolbarElement().querySelectorAll(".e-expended-nav"),r=0;r<o.length;r++)t.isNullOrUndefined(this.parent.getToolbarElement().querySelector(".e-insert-table-btn"))?o[r].setAttribute("tabindex","0"):o[r].setAttribute("tabindex","1")},n.prototype.tbKeydownHandler=function(e){(e.target.classList.contains("e-dropdown-btn")||e.target.getAttribute("id")===this.parent.getID()+"_toolbar_CreateTable")&&e.target.setAttribute("tabindex","0")},n.prototype.toolbarMouseDownHandler=function(n){var i=t.closest(n.target,".e-hor-nav");i&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&!t.isNullOrUndefined(i)?i.classList.contains("e-nav-active")?(t.addClass([this.tbElement],[Yt]),this.parent.setContentHeight("toolbar",!0)):(t.removeClass([this.tbElement],[Yt]),this.parent.setContentHeight("toolbar",!1)):(t.Browser.isDevice||this.parent.inlineMode.enable)&&(this.isToolbar=!0),t.isNullOrUndefined(i)&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&t.removeClass([this.tbElement],[Yt])},n.prototype.wireEvents=function(){this.parent.inlineMode.enable&&p()||(t.EventHandler.add(this.tbElement,"click mousedown",this.toolbarMouseDownHandler,this),t.EventHandler.add(this.tbElement,"focusin",this.tbFocusHandler,this),t.EventHandler.add(this.tbElement,"keydown",this.tbKeydownHandler,this))},n.prototype.unWireEvents=function(){t.EventHandler.remove(this.tbElement,"click mousedown",this.toolbarMouseDownHandler),t.EventHandler.remove(this.tbElement,"focusin",this.tbFocusHandler),t.EventHandler.remove(this.tbElement,"keydown",this.tbKeydownHandler)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.dropDownModule=new si(this.parent,this.locator),this.toolbarActionModule=new di(this.parent),this.parent.on(B,this.renderToolbar,this),this.parent.on(Re,this.scrollHandler,this),this.parent.on(z,this.toolbarBindEvent,this),this.parent.on(j,this.updateToolbarStatus,this),this.parent.on(W,this.onPropertyChanged,this),this.parent.on(U,this.onRefresh,this),this.parent.on(I,this.destroy,this),this.parent.on(J,this.fullScreen,this),this.parent.on($,this.hideScreen,this),this.parent.on(me,this.updateItem,this),this.parent.on(Ne,this.dropDownBeforeOpenHandler,this),this.parent.on(Le,this.parent.setContentHeight,this.parent),this.parent.on(Ae,this.focusChangeHandler,this),this.parent.on(Oe,this.mouseDownHandler,this),this.parent.on(De,this.mouseDownHandler,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(B,this.renderToolbar),this.parent.off(Re,this.scrollHandler),this.parent.off(z,this.toolbarBindEvent),this.parent.off(j,this.updateToolbarStatus),this.parent.off(W,this.onPropertyChanged),this.parent.off(I,this.destroy),this.parent.off(J,this.parent.fullScreenModule.showFullScreen),this.parent.off($,this.parent.fullScreenModule.hideFullScreen),this.parent.off(me,this.updateItem),this.parent.off(Ne,this.dropDownBeforeOpenHandler),this.parent.off(Le,this.parent.setContentHeight),this.parent.off(Ae,this.focusChangeHandler),this.parent.off(Oe,this.mouseDownHandler),this.parent.off(De,this.mouseDownHandler))},n.prototype.onRefresh=function(){this.refreshToolbarOverflow(),this.parent.setContentHeight("",!0)},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.inlineMode))for(var n=0,i=Object.keys(e.newProp.inlineMode);n<i.length;n++){switch(i[n]){case"enable":this.refreshToolbar()}}e.module===this.getModuleName()&&this.refreshToolbar()},n.prototype.refreshToolbar=function(){t.isNullOrUndefined(this.baseToolbar.toolbarObj)&&(this.baseToolbar=this.parent.getBaseToolbarObject());var e=t.select("."+Rt,this.parent.element);(t.select("."+ht,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)||v(this.baseToolbar,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus()))},n.prototype.getModuleName=function(){return"toolbar"},n}(),pi=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)}}(),hi=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},ui={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},mi=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.which,a=0,l=Object.keys(o.keyConfigs);a<l.length;a++)for(var d=l[a],c=0,p=o.keyConfigs[d].split(",");c<p.length;c++){var h=p[c],u=i.getKeyConfigData(h.trim());t===u.altKey&&n===u.ctrlKey&&r===u.shiftKey&&s===u.keyCode&&(e.action=d)}o.keyAction&&o.keyAction(e)},o.bind(),o}pi(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 ui[e]||e.toUpperCase().charCodeAt(0)};var i;return n.configCache={},hi([t.Property({})],n.prototype,"keyConfigs",void 0),hi([t.Property("keyup")],n.prototype,"eventName",void 0),hi([t.Event()],n.prototype,"keyAction",void 0),n=i=hi([t.NotifyPropertyChanges],n)}(t.Base),gi=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,zn,S(this.parent.toolbarSettings.itemConfigs),!0):this.tools=zn}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;jn.forEach(function(a){if(-1!==l(a,e.items))switch(a){case"fontcolor":i=n.parent.getID()+"_"+r+"_FontColor_Target";var d=n.parent.createElement("input");d.id=i,d.classList.add(on),document.body.appendChild(d),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" "+Xt+" e-icons",value:n.tools[a.toLocaleLowerCase()].value,command:n.tools[a.toLocaleLowerCase()].command,subCommand:n.tools[a.toLocaleLowerCase()].subCommand,element:t.select("#"+n.parent.getID()+"_"+r+"_FontColor",s),target:"#"+i},n.fontColorPicker=n.toolbarRenderer.renderColorPicker(o,"fontcolor"),n.fontColorDropDown=n.toolbarRenderer.renderColorPickerDropDown(o,"fontcolor",n.fontColorPicker);break;case"backgroundcolor":i=n.parent.getID()+"_"+r+"_BackgroundColor_Target";var c=n.parent.createElement("input");c.id=i,c.classList.add(rn),document.body.appendChild(c),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" "+Xt+" e-icons",value:n.tools[a.toLocaleLowerCase()].value,command:n.tools[a.toLocaleLowerCase()].command,subCommand:n.tools[a.toLocaleLowerCase()].subCommand,element:t.select("#"+n.parent.getID()+"_"+r+"_BackgroundColor",s),target:"#"+i},n.backgroundColorPicker=n.toolbarRenderer.renderColorPicker(o,"backgroundcolor"),n.backgroundColorDropDown=n.toolbarRenderer.renderColorPickerDropDown(o,"backgroundcolor",n.backgroundColorPicker)}})},n.prototype.destroy=function(){this.removeEventListener(),this.destroyColorPicker()},n.prototype.destroyColorPicker=function(){if(this.fontColorPicker&&!this.fontColorPicker.isDestroyed&&this.fontColorPicker.destroy(),this.backgroundColorPicker&&!this.backgroundColorPicker.isDestroyed&&this.backgroundColorPicker.destroy(),this.fontColorDropDown&&!this.fontColorDropDown.isDestroyed){(e=this.fontColorDropDown.element.querySelector(".e-rte-color-content"))&&t.detach(e),this.fontColorDropDown.destroy()}if(this.backgroundColorDropDown&&!this.backgroundColorDropDown.isDestroyed){var e;(e=this.backgroundColorDropDown.element.querySelector(".e-rte-color-content"))&&t.detach(e),this.backgroundColorDropDown.destroy()}},n.prototype.setRtl=function(e){this.fontColorPicker&&(this.fontColorPicker.setProperties({enableRtl:e.enableRtl}),this.fontColorDropDown.setProperties({enableRtl:e.enableRtl})),this.backgroundColorPicker&&(this.backgroundColorPicker.setProperties({enableRtl:e.enableRtl}),this.backgroundColorDropDown.setProperties({enableRtl:e.enableRtl}))},n.prototype.addEventListener=function(){this.parent.on(X,this.renderColorPickerInput,this),this.parent.on(_e,this.setRtl,this),this.parent.on(I,this.destroy,this),this.parent.on(Q,this.destroyColorPicker,this),this.parent.on(W,this.onPropertyChanged,this)},n.prototype.onPropertyChanged=function(e){for(var t=e.newProp,n=0,i=Object.keys(t);n<i.length;n++){switch(i[n]){case"fontColor":if(this.fontColorPicker)for(var o=0,r=Object.keys(t.fontColor);o<r.length;o++){switch(r[o]){case"default":this.fontColorPicker.setProperties({value:t.fontColor.default});this.fontColorDropDown.element.querySelector("."+this.tools.fontcolor.icon).style.borderBottomColor=t.fontColor.default;break;case"mode":this.fontColorPicker.setProperties({mode:t.fontColor.mode});break;case"columns":this.fontColorPicker.setProperties({columns:t.fontColor.columns});break;case"colorCode":this.fontColorPicker.setProperties({presetColors:t.fontColor.colorCode});break;case"modeSwitcher":this.fontColorPicker.setProperties({modeSwitcher:t.fontColor.modeSwitcher})}}break;case"backgroundColor":if(this.backgroundColorPicker)for(var s=0,a=Object.keys(t.backgroundColor);s<a.length;s++){switch(a[s]){case"default":this.backgroundColorPicker.setProperties({value:t.backgroundColor.default});this.backgroundColorDropDown.element.querySelector("."+this.tools.backgroundcolor.icon).style.borderBottomColor=t.backgroundColor.default;break;case"mode":this.backgroundColorPicker.setProperties({mode:t.backgroundColor.mode});break;case"columns":this.backgroundColorPicker.setProperties({columns:t.backgroundColor.columns});break;case"colorCode":this.backgroundColorPicker.setProperties({presetColors:t.backgroundColor.colorCode});break;case"modeSwitcher":this.backgroundColorPicker.setProperties({modeSwitcher:t.backgroundColor.modeSwitcher})}}}}},n.prototype.removeEventListener=function(){this.parent.off(X,this.renderColorPickerInput),this.parent.off(I,this.destroy),this.parent.off(_e,this.setRtl),this.parent.off(Q,this.destroyColorPicker),this.parent.off(W,this.onPropertyChanged)},n}(),fi=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 si(this.parent,this.locator),this.colorPickerObj=new gi(this.parent,this.locator)}return n.prototype.appendPopupContent=function(){this.toolbarElement=this.parent.createElement("div",{className:yt}),this.element.appendChild(this.toolbarElement)},n.prototype.render=function(e){var n;n="Image"===e.popupType?Et:"Inline"===e.popupType?Nt:"";var i=t.getUniqueID(e.popupType+"_Quick_Popup");this.stringItems=e.toolbarItems,this.element=this.parent.createElement("div",{id:i,className:n+" "+Xt}),this.element.setAttribute("aria-owns",this.parent.getID()),this.appendPopupContent(),this.createToolbar(e.toolbarItems,e.mode),this.popupRenderer.renderPopup(this),this.addEventListener()},n.prototype.createToolbar=function(e,t){this.quickTBarObj=new ri(this.parent,this.locator),this.quickTBarObj.render({container:"quick",target:this.toolbarElement,items:e,mode:t}),this.quickTBarObj.toolbarObj.refresh()},n.prototype.setPosition=function(e){var n,i,o=t.closest(e.target,".e-img-caption"),r=t.isNullOrUndefined(o)?e.target:o;t.addClass([this.toolbarElement],[At]);var s=r.offsetTop,a=window.pageYOffset+e.parentData.top;i=s-e.editTop>e.popHeight?a+e.tBarElementHeight+(s-e.editTop)-e.popHeight-5:e.editTop+e.editHeight-(s+r.offsetHeight)>e.popHeight?a+e.tBarElementHeight+(s-e.editTop)+r.offsetHeight+5:e.y,n=r.offsetWidth>e.popWidth?r.offsetWidth/2-e.popWidth/2+e.parentData.left+r.offsetLeft:e.parentData.left+r.offsetLeft,this.popupObj.position.X=n+e.popWidth>e.parentData.right?e.parentData.right-e.popWidth:n,this.popupObj.position.Y=i>=0?i:e.y+5,this.popupObj.dataBind(),t.removeClass([this.toolbarElement],[At])},n.prototype.checkCollision=function(e,t,n){var i,r,s=e.parentData.top,a=e.windowY+s+e.tBarElementHeight,l=[];l="document"===t?o.isCollide(e.popup):o.isCollide(e.popup,e.parentElement);for(var d=0;d<l.length;d++)switch(l[d]){case"top":r="document"===t?e.windowY:window.pageYOffset+s+e.tBarElementHeight;break;case"bottom":r="document"===t?"inline"===n?e.y-e.popHeight-10:e.windowHeight-(s+e.tBarElementHeight)>e.popHeight?a-e.windowHeight>e.popHeight?a+(e.windowHeight-s)-e.popHeight:a:e.windowY+(s+e.tBarElementHeight):"IMG"!==e.target.tagName?e.parentData.bottom+window.pageYOffset-e.popHeight-10:e.parentData.bottom+window.pageYOffset-e.popHeight-5;break;case"right":i="inline"===n?e.windowWidth-(e.popWidth+e.bodyRightSpace+10):e.x-e.popWidth;break;case"left":i="inline"===n?0:e.parentData.left}this.popupObj.position.X=i||this.popupObj.position.X,this.popupObj.position.Y=r||this.popupObj.position.Y,this.popupObj.dataBind()},n.prototype.showPopup=function(e,n,i){var o=this,r=t.isBlazor()?{cancel:!1,targetElement:i}:{popup:this.popupObj,cancel:!1,targetElement:i};this.parent.trigger($e,r,function(r){if(!r.cancel){var s=void 0,a=void 0,l=window.getComputedStyle(document.body),d=parseFloat(l.marginRight.split("px")[0])+parseFloat(l.paddingRight.split("px")[0]),c=window.innerHeight,h=window.innerWidth,u=o.parent.element,m=!t.isNullOrUndefined(o.parent.getToolbar()),g=m&&o.parent.toolbarModule.getToolbarHeight(),f=m&&o.parent.toolbarModule.getExpandTBarPopHeight(),b=m?g+f:0;if(t.addClass([o.element],[Bt]),t.Browser.isDevice&&!p()&&t.addClass([o.parent.getToolbar()],[Bt]),o.parent.iframeSettings.enable){s=(v=o.contentRenderer.getPanel().contentWindow).pageYOffset,a=v.innerHeight}else{var v;s=(v=t.closest(i,"."+Dt))?v.scrollTop:0,a=v?v.offsetHeight:0}o.parent.inlineMode.enable||t.closest(i,"table")||(o.parent.disableToolbarItem(o.parent.toolbarSettings.items),o.parent.enableToolbarItem(["Undo","Redo"])),t.append([o.element],document.body),o.popupObj.position.X=e+20,o.popupObj.position.Y=n+(o.parent.iframeSettings.enable?35:20),o.popupObj.dataBind(),o.popupObj.element.classList.add("e-popup-open"),o.dropDownButtons.renderDropDowns({container:o.toolbarElement,containerType:"quick",items:o.stringItems}),o.colorPickerObj.renderColorPickerInput({container:o.toolbarElement,containerType:"quick",items:o.stringItems});var y={x:e,y:n,target:i,editTop:s,editHeight:a,popup:o.popupObj.element,popHeight:o.popupObj.element.offsetHeight,popWidth:o.popupObj.element.offsetWidth,parentElement:u,bodyRightSpace:d,windowY:window.pageYOffset,windowHeight:c,windowWidth:h,parentData:u.getBoundingClientRect(),tBarElementHeight:b};"IMG"===i.tagName&&o.setPosition(y),o.parent.inlineMode.enable||o.checkCollision(y,"parent",""),o.checkCollision(y,"document",o.parent.inlineMode.enable?"inline":""),o.popupObj.element.classList.remove("e-popup-open"),t.removeClass([o.element],[Bt]),o.popupObj.show({name:"ZoomIn",duration:t.Browser.isIE?250:400}),t.setStyleAttribute(o.element,{maxWidth:o.parent.element.offsetWidth+"px"}),t.addClass([o.element],[Ct]),o.isDOMElement=!0}})},n.prototype.hidePopup=function(){var e=this.parent.sourceCodeModule.getViewPanel();t.Browser.isDevice&&!p()&&t.removeClass([this.parent.getToolbar()],[Bt]),t.isNullOrUndefined(this.parent.getToolbar())||this.parent.inlineMode.enable||(t.isNullOrUndefined(e)||"none"===e.style.display)&&this.parent.enableToolbarItem(this.parent.toolbarSettings.items),this.removeEleFromDOM(),this.isDOMElement=!1},n.prototype.addQTBarItem=function(e,t){this.quickTBarObj.toolbarObj.addItems(this.quickTBarObj.getItems(e,"toolbar"),t)},n.prototype.removeQTBarItem=function(e){this.quickTBarObj.toolbarObj.removeItems(e)},n.prototype.removeEleFromDOM=function(){var e=this.popupObj.element;if(this.isDOMElement){this.dropDownButtons.destroyDropDowns(),this.colorPickerObj.destroyColorPicker(),t.removeClass([this.element],[Ct]),t.detach(e);var n=t.isBlazor()?{element:this.popupObj.element}:this.popupObj;this.parent.trigger(et,n)}},n.prototype.updateStatus=function(e){g({args:e,dropDownModule:this.dropDownButtons,parent:this.parent,tbElements:t.selectAll("."+Mt,this.element),tbItems:this.quickTBarObj.toolbarObj.items},!0),t.select(".e-rte-srctextarea",this.parent.element)||v(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(I,this.destroy,this),this.parent.on(W,this.onPropertyChanged,this),this.parent.inlineMode.enable&&this.parent.on(j,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(j,this.updateStatus,this):this.parent.off(j,this.updateStatus)}}},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(I,this.destroy),this.parent.off(W,this.onPropertyChanged),this.parent.inlineMode.enable&&this.parent.off(j,this.updateStatus))},n}(),bi=function(){function e(e){this.parent=e}return e.prototype.quickToolbarOpen=function(){var e=t.isBlazor()?{element:this.popupObj.element}:this.popupObj;this.parent.trigger(Ze,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(Tt)},e.prototype.getPanel=function(){return this.popupPanel},e.prototype.setPanel=function(e){this.popupPanel=e},e}(),vi=function(){function n(t,n){this.parent=t,this.locator=n,this.renderFactory=this.locator.getService("rendererFactory"),this.renderFactory.addRenderer(e.RenderType.Popup,new bi(this.parent)),this.addEventListener()}return n.prototype.formatItems=function(e){var t=[];return e.forEach(function(e){if("string"==typeof e)switch(e.toLocaleLowerCase()){case"open":t.push("openLink");break;case"edit":t.push("editLink");break;case"unlink":t.push("removeLink");break;default:t.push(e)}else t.push(e)}),t},n.prototype.getQTBarOptions=function(e,t,n,i){return{popupType:e,toolbarItems:n,mode:t,renderType:i}},n.prototype.createQTBar=function(e,t,n,i){if(n.length<1)return null;var o=new fi(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&&p()&&t.EventHandler.add(this.contentRenderer.getDocument(),"selectionchange",this.selectionChangeHandler,this)},n.prototype.onMouseDown=function(e){this.parent.isBlur=!1,this.parent.isRTE=!0},n.prototype.renderQuickToolbars=function(){this.linkQTBar||this.imageQTBar||this.textQTBar||this.tableQTBar||(this.linkQTBar=this.createQTBar("Link","Scrollable",this.parent.quickToolbarSettings.link,e.RenderType.LinkToolbar),this.renderFactory.addRenderer(e.RenderType.LinkToolbar,this.linkQTBar),this.textQTBar=this.createQTBar("Text","Scrollable",this.parent.quickToolbarSettings.text,e.RenderType.TextToolbar),this.renderFactory.addRenderer(e.RenderType.TextToolbar,this.textQTBar),this.imageQTBar=this.createQTBar("Image","MultiRow",this.parent.quickToolbarSettings.image,e.RenderType.ImageToolbar),this.renderFactory.addRenderer(e.RenderType.ImageToolbar,this.imageQTBar),this.tableQTBar=this.createQTBar("Table","MultiRow",this.parent.quickToolbarSettings.table,e.RenderType.TableToolbar),this.renderFactory.addRenderer(e.RenderType.TableToolbar,this.tableQTBar),this.linkQTBar&&t.EventHandler.add(this.linkQTBar.element,"mousedown",this.onMouseDown,this),this.imageQTBar&&t.EventHandler.add(this.imageQTBar.element,"mousedown",this.onMouseDown,this),this.textQTBar&&t.EventHandler.add(this.textQTBar.element,"mousedown",this.onMouseDown,this),this.tableQTBar&&t.EventHandler.add(this.tableQTBar.element,"mousedown",this.onMouseDown,this))},n.prototype.renderInlineQuickToolbar=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||(t.addClass([this.parent.element],[ft]),this.inlineQTBar=this.createQTBar("Inline","MultiRow",this.parent.toolbarSettings.items,e.RenderType.InlineToolbar),this.renderFactory.addRenderer(e.RenderType.InlineToolbar,this.inlineQTBar),t.EventHandler.add(this.inlineQTBar.element,"mousedown",this.onMouseDown,this))},n.prototype.showInlineQTBar=function(e,t,n){this.parent.readonly||this.inlineQTBar.showPopup(e,t,n)},n.prototype.hideInlineQTBar=function(){this.inlineQTBar&&!d(this.inlineQTBar.element,"e-popup-close")&&this.inlineQTBar.hidePopup()},n.prototype.hideQuickToolbars=function(){this.linkQTBar&&!d(this.linkQTBar.element,"e-popup-close")&&document.body.contains(this.linkQTBar.element)&&this.linkQTBar.hidePopup(),this.textQTBar&&!d(this.textQTBar.element,"e-popup-close")&&document.body.contains(this.textQTBar.element)&&this.textQTBar.hidePopup(),this.imageQTBar&&!d(this.imageQTBar.element,"e-popup-close")&&document.body.contains(this.imageQTBar.element)&&this.imageQTBar.hidePopup(),this.tableQTBar&&!d(this.tableQTBar.element,"e-popup-close")&&document.body.contains(this.tableQTBar.element)&&this.tableQTBar.hidePopup(),!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||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||p())){var n=void 0;n=e.args.touches?e.args.changedTouches[0]:e.args;var i=this.parent.getRange(),o=e.args.target;if(t.isNullOrUndefined(t.select("."+Nt,document.body))){if(p()&&e.touchData&&e.touchData.prevClientX!==e.touchData.clientX&&e.touchData.prevClientY!==e.touchData.clientY)return;if(this.hideInlineQTBar(),this.offsetX=n.pageX,this.offsetY=u(n,this.parent.element,this.parent.iframeSettings.enable),"TEXTAREA"===o.nodeName)this.showInlineQTBar(this.offsetX,this.offsetY,o);else{var r=t.closest(o,"a");if(!("IMG"===(o=r||o).tagName||"A"===o.tagName||t.closest(o,"td,th")&&i.collapsed)){if(this.parent.inlineMode.onSelection&&i.collapsed)return;this.target=o,this.showInlineQTBar(this.offsetX,this.offsetY,o)}}}}},n.prototype.keyDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||t.isNullOrUndefined(t.select("."+Nt,document))||this.hideInlineQTBar()},n.prototype.inlineQTBarMouseDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||t.isNullOrUndefined(t.select("."+Nt,document))||this.hideInlineQTBar()},n.prototype.keyUpHandler=function(e){if(this.parent.inlineMode.enable&&!t.Browser.isDevice){if(this.parent.inlineMode.onSelection)return;var n=e.args;this.deBounce(this.offsetX,this.offsetY,n.target)}},n.prototype.selectionChangeHandler=function(e){var t=this;clearTimeout(this.deBouncer),this.deBouncer=window.setTimeout(function(){t.onSelectionChange(e)},1e3)},n.prototype.onSelectionChange=function(e){if(t.isNullOrUndefined(t.select("."+Nt,document.body))){this.contentRenderer.getDocument().getSelection().isCollapsed||this.mouseUpHandler({args:e})}},n.prototype.getInlineBaseToolbar=function(){return this.inlineQTBar&&this.inlineQTBar.quickTBarObj},n.prototype.destroy=function(){this.linkQTBar&&(t.EventHandler.remove(this.linkQTBar.element,"mousedown",this.onMouseDown),this.linkQTBar.destroy()),this.textQTBar&&(t.EventHandler.remove(this.textQTBar.element,"mousedown",this.onMouseDown),this.textQTBar.destroy()),this.imageQTBar&&(t.EventHandler.remove(this.imageQTBar.element,"mousedown",this.onMouseDown),this.imageQTBar.destroy()),this.tableQTBar&&(t.EventHandler.remove(this.tableQTBar.element,"mousedown",this.onMouseDown),this.tableQTBar.destroy()),this.inlineQTBar&&(t.EventHandler.remove(this.inlineQTBar.element,"mousedown",this.onMouseDown),p()&&t.EventHandler.remove(document,"selectionchange",this.selectionChangeHandler),this.inlineQTBar.destroy()),this.removeEventListener()},n.prototype.wireInlineQTBarEvents=function(){this.parent.on(K,this.mouseUpHandler,this),this.parent.on(Oe,this.inlineQTBarMouseDownHandler,this),this.parent.on(G,this.keyDownHandler,this),this.parent.on(V,this.keyUpHandler,this),this.parent.on(De,this.mouseUpHandler,this),this.parent.on(ze,this.renderInlineQuickToolbar,this)},n.prototype.unWireInlineQTBarEvents=function(){this.parent.off(K,this.mouseUpHandler),this.parent.off(Oe,this.inlineQTBarMouseDownHandler),this.parent.off(G,this.keyDownHandler),this.parent.off(V,this.keyUpHandler),this.parent.off(De,this.mouseUpHandler),this.parent.off(ze,this.renderInlineQuickToolbar)},n.prototype.toolbarUpdated=function(e){this.linkQTBar&&!d(this.linkQTBar.element,"e-popup-close")&&this.linkQTBar.hidePopup(),this.imageQTBar&&!d(this.imageQTBar.element,"e-popup-close")&&this.imageQTBar.hidePopup(),this.tableQTBar&&!d(this.tableQTBar.element,"e-popup-close")&&this.tableQTBar.hidePopup()},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(B,this.initializeQuickToolbars,this),this.parent.on(Oe,this.renderQuickToolbars,this),this.parent.on(j,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(Re,this.hideQuickToolbars,this),this.parent.on(Be,this.hideQuickToolbars,this)),this.parent.on(Ae,this.hideQuickToolbars,this),this.parent.on(P,this.onIframeMouseDown,this),this.parent.on(I,this.destroy,this),this.parent.on(G,this.onKeyDown,this),this.parent.on(_e,this.setRtl,this))},n.prototype.onKeyDown=function(e){var t=e.args;8!==t.which&&46!==t.which||this.imageQTBar&&!d(this.imageQTBar.element,"e-popup-close")&&this.imageQTBar.hidePopup()},n.prototype.onIframeMouseDown=function(){this.hideQuickToolbars(),this.hideInlineQTBar()},n.prototype.setRtl=function(e){this.inlineQTBar&&this.inlineQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.imageQTBar&&this.imageQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.linkQTBar&&this.imageQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(B,this.initializeQuickToolbars),this.parent.off(Oe,this.renderQuickToolbars),this.parent.off(j,this.toolbarUpdated),this.unWireInlineQTBarEvents(),this.parent.off(W,this.onPropertyChanged),"hide"===this.parent.quickToolbarSettings.actionOnScroll&&(this.parent.off(Re,this.hideQuickToolbars),this.parent.off(Be,this.hideQuickToolbars)),this.parent.off(Ae,this.hideQuickToolbars),this.parent.off(I,this.destroy),this.parent.off(P,this.onIframeMouseDown),this.parent.off(G,this.onKeyDown),this.parent.off(_e,this.setRtl))},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.quickToolbarSettings))for(var n=0,i=Object.keys(e.newProp.quickToolbarSettings);n<i.length;n++){switch(i[n]){case"actionOnScroll":"none"===e.newProp.quickToolbarSettings.actionOnScroll?(this.parent.off(Re,this.hideQuickToolbars),this.parent.off(Be,this.hideQuickToolbars)):(this.parent.on(Re,this.hideQuickToolbars,this),this.parent.on(Be,this.hideQuickToolbars,this))}}e.module===this.getModuleName()&&(this.inlineQTBar&&(t.removeClass([this.parent.element],[ft]),this.unWireInlineQTBarEvents(),this.hideInlineQTBar()),!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||(t.addClass([this.parent.element],[ft]),this.wireInlineQTBarEvents()))},n.prototype.getModuleName=function(){return"quickToolbar"},n}(),yi=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:Wt}),this.contentRenderer.getPanel().parentElement.appendChild(this.element),this.appendCount(),-1!==this.parent.maxLength&&this.charCountBackground(this.htmlLength)},n.prototype.appendCount=function(){var e="Markdown"===this.parent.editorMode?this.editPanel.value.trim():this.editPanel.textContent.trim();this.htmlLength=e.length;var t=-1===this.parent.maxLength?this.htmlLength:this.htmlLength+" / "+this.parent.maxLength;this.element.innerHTML=t},n.prototype.charCountBackground=function(e){var t=e/this.parent.maxLength*100;t<85?(this.element.classList.remove(Vt),this.element.classList.remove(Gt)):t>85&&t<=90?(this.element.classList.remove(Gt),this.element.classList.add(Vt)):t>90&&(this.element.classList.remove(Vt),this.element.classList.add(Gt))},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("."+Wt))&&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(B,this.renderCount,this),this.parent.on(V,this.refresh,this),this.parent.on(xe,this.refresh,this),this.parent.on(U,this.refresh,this),this.parent.on(Oe,this.refresh,this),this.parent.on(I,this.destroy,this),this.parent.on(Se,this.toggle,this),this.parent.on(Ee,this.toggle,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(B,this.renderCount),this.parent.off(V,this.refresh),this.parent.off(U,this.refresh),this.parent.off(xe,this.refresh),this.parent.off(Oe,this.refresh),this.parent.off(I,this.destroy),this.parent.off(Se,this.toggle),this.parent.off(Ee,this.toggle))},n.prototype.getModuleName=function(){return"count"},n}(),Ci=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;if(e){n=(e.trim()===t.trim()?new RegExp("^("+this.replaceSpecialChar(t.trim())+")","gim"):new RegExp("^("+this.replaceSpecialChar(t)+")","gim")).test(e.trim())}return 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}(),Ti=function(){function e(e){this.toolbarStatus={bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,uppercase:!1,inlinecode:!1,unorderedlist:!1,underline:!1,alignments:null,backgroundcolor:null,fontcolor:null,fontname:null,fontsize:null,formats:null},this.selection=new Ci,this.parent=e,this.element=this.parent.contentModule.getEditPanel(),this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on(H,this.onRefreshHandler,this),this.parent.on(I,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off(H,this.onRefreshHandler),this.parent.off(I,this.onRefreshHandler)},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"),this.parent.notify(j,this.toolbarStatus)},e.prototype.isListsApplied=function(e,t){var n=!0;if("OL"===t)for(var i=0;i<e.length;i++){var o=e[i].text.trim().split(" ",2)[0]+" ";if(!/^[\d.]+[ ]+$/.test(o)){n=!1;break}}else for(i=0;i<e.length;i++)if(!this.selection.isStartWith(e[i].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}(),Si=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on(te,this.commandCallBack,this),this.parent.on(I,this.removeEventListener,this)},e.prototype.commandCallBack=function(e){"Undo"!==e.requestType&&"Redo"!==e.requestType&&this.parent.formatter.saveData(),this.parent.notify(H,{args:e}),this.parent.notify(xe,{})},e.prototype.removeEventListener=function(){this.parent.off(te,this.commandCallBack),this.parent.off(I,this.removeEventListener)},e}(),Ei="action",Ni="format-type",ki="keydown-handler",wi="keyup-handler",Li="model_changed_plugin",xi="model_changed",Oi="ms_word_cleanup_plugin",Di="ms_word_cleanup",Mi=function(){function e(){}return e.prototype.process=function(e,n,i,o){var r,s=this,a=e.contentModule.getDocument().getSelection(),l=a.rangeCount>0?a.getRangeAt(a.rangeCount-1):null;if("HTML"===e.editorMode&&(r=this.editorManager.nodeSelection.save(l,e.contentModule.getDocument())),t.isNullOrUndefined(n)||!n.item.command||"Table"===n.item.command||"Actions"===n.item.command||"Links"===n.item.command||"Images"===n.item.command||!l||e.contentModule.getEditPanel().contains(this.getAncestorNode(l.commonAncestorContainer))||e.contentModule.getEditPanel()===l.commonAncestorContainer||e.contentModule.getPanel()===l.commonAncestorContainer){if(t.isNullOrUndefined(n)){var d=i.action;if("tab"!==d&&"enter"!==d&&"space"!==d&&"escape"!==d){n={},"Markdown"===e.editorMode&&"insert-table"===d&&(o={headingText:e.localeObj.getConstant("TableHeadingText"),colText:e.localeObj.getConstant("TableColText")});var c={originalEvent:i,cancel:!1,requestType:d||i.key+"Key",itemCollection:o};t.extend(n,n,c,!0),t.isBlazor()&&(delete n.item,delete n.itemCollection),e.trigger(pe,n,function(e){e.cancel&&("paste"!==d&&"cut"!==d&&"copy"!==d||i.preventDefault())})}var p=!!t.isNullOrUndefined(e.tableModule)||!!e.tableModule&&e.tableModule.ensureInsideTableList;(9===i.which&&p||9!==i.which)&&this.editorManager.observer.notify("keydown"===i.type?"keydown":"keyup",{event:i,callBack:this.onSuccess.bind(this,e),value:o})}else!t.isNullOrUndefined(n)&&n.item.command&&n.item.subCommand&&(n.item.command!==n.item.subCommand&&"Font"!==n.item.command||("FontName"===n.item.subCommand||"FontSize"===n.item.subCommand)&&"dropDownSelect"===n.name||("BackgroundColor"===n.item.subCommand||"FontColor"===n.item.subCommand)&&"colorPickerChanged"===n.name)&&(t.extend(n,n,{requestType:n.item.subCommand,cancel:!1,itemCollection:o},!0),e.trigger(pe,n,function(t){if(!t.cancel){0===s.getUndoRedoStack().length&&"Links"!==t.item.command&&"Images"!==t.item.command&&s.saveData(),e.isBlur=!1,e.contentModule.getEditPanel().focus(),"HTML"===e.editorMode&&r.restore();var a=t.item.subCommand.toLocaleLowerCase();"paste"===a||"cut"===a||"copy"===a?e.clipboardAction(a,i):(s.editorManager.observer.notify(Ve,{subCommand:t.item.subCommand}),s.editorManager.execCommand(t.item.command,t.item.subCommand,i,s.onSuccess.bind(s,e),t.item.value,"Pre"===t.item.subCommand&&"dropDownSelect"===n.name?{name:n.name}:o,"#"+e.getID()+" iframe"))}}));(t.isNullOrUndefined(i)||i&&"copy"!==i.action)&&this.enableUndo(e)}},e.prototype.getAncestorNode=function(e){return e=3===e.nodeType?e.parentNode:e},e.prototype.onKeyHandler=function(e,t){var n=this;this.editorManager.observer.notify("keyup",{event:t,callBack:function(){n.enableUndo(e)}})},e.prototype.onSuccess=function(e,n){(t.isNullOrUndefined(n.event)||n&&"copy"!==n.event.action)&&(this.enableUndo(e),e.notify(te,n)),e.trigger(he,n,function(t){if(e.setPlaceHolder(),"Images"===t.requestType||"Links"===t.requestType&&"HTML"===e.editorMode){var n=t;if("Links"===t.requestType&&t.event&&"keydown"===t.event.type&&32===t.event.keyCode)return;e.notify(fe,{args:n.event,type:t.requestType,isNotify:!0,elements:n.elements})}e.autoResize()})},e.prototype.saveData=function(e){this.editorManager.undoRedoManager.saveData(e)},e.prototype.getUndoStatus=function(){return this.editorManager.undoRedoManager.getUndoStatus()},e.prototype.getUndoRedoStack=function(){return this.editorManager.undoRedoManager.undoRedoStack},e.prototype.enableUndo=function(e){var n=this.getUndoStatus();!e.inlineMode.enable||t.Browser.isDevice&&!p()?e.toolbarModule&&(v(e.toolbarModule.baseToolbar,n),e.trigger(ue,n)):(v(e.quickToolbarModule.inlineQTBar.quickTBarObj,n),e.trigger(ue,n))},e}(),Ri="lists-commands",Bi="command-type",Pi="link-commands",Ii="clear-commands",Ai="insert-table",Hi=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(Ri,this.applyListsHandler,this),this.parent.observer.on(ki,this.keyDownHandler,this),this.parent.observer.on(wi,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){var a=this.olListType(),l=this.getListRegex();this.currentAction=this.getAction(o[0].text);for(var d=0;d<o.length;d++){var c=(e.event.shiftKey,o[d].line-1),p=this.selection.getLine(t,c);if(p&&(!e.event.shiftKey&&s||e.event.shiftKey)){var h=p.split(". "),u=e.event.shiftKey?-"\t".length:"\t".length,m=o[d].text.split("\t");if(e.event.shiftKey&&1===m.length)break;if("OL"===this.currentAction&&/^\d+$/.test(h[0].trim())&&a){e.event.preventDefault(),o[d].text=e.event.shiftKey?m.splice(1,m.length).join("\t"):"\t"+o[d].text;var g=this.getTabSpace(o[d].text),f=this.getTabSpace(p),b=o[d].text.split(". ");if(g===f)this.changeTextAreaValue(b,this.nextOrderedListValue(h[0].trim()),e,t,o,d,i);else if(f<g)this.changeTextAreaValue(b,"1. ",e,t,o,d,i);else for(;f.length>g.length;null){c-=1;var v=(p=this.selection.getLine(t,c)).trim().split(". ");if(/^\d+$/.test(v[0])&&(f=this.getTabSpace(p)).length<=g.length){this.changeTextAreaValue(b,this.nextOrderedListValue(v[0]),e,t,o,d,i);break}}}else("UL"===this.currentAction&&l.test(p.trim())||!a)&&(e.event.preventDefault(),o[d].text=e.event.shiftKey?m.splice(1,m.length).join("\t"):"\t"+o[d].text,t.value=t.value.substr(0,o[d].start)+o[d].text+"\n"+t.value.substr(o[d].end,t.value.length));if(n=0===d?n+u:n,r+=u,1!==o.length)for(var y=d;y<o.length;y++)o[y].start=0!==y?o[y].start+u:o[y].start,o[y].end=o[y].end+u}}this.restore(t,n,i+r,e)}else this.restore(t,n,i+r,e)},e.prototype.changeTextAreaValue=function(e,n,i,o,r,s,a){var l=n;e.splice(0,1);var d,c=this.selection.getAllParents(o.value).length,p="",h=this.getTabSpace(r[s].text),u=parseInt(l.split(".")[0],null),m=this.getTabSpace(r[s].text),g=!0,f=!0,b=-1,v=!0,y=0,C="";p=""!==this.selection.getLine(o,r[0].line+1)?"":p+o.value.substr(r[0].end,o.value.length);for(var T=1;T<c&&!t.isNullOrUndefined(this.selection.getLine(o,r[0].line+T))&&""!==this.selection.getLine(o,r[0].line+T);T++){var S=this.selection.getLine(o,r[0].line+T),E=this.getTabSpace(S),N=S.split(". ");if(1===N.length){p+=o.value.substr(r[0].end+y,o.value.length);break}y+=S.length;var k=!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,k=!(!i.event.shiftKey||h.length!==E.length)&&(f=!1,!0)):v&&i.event.shiftKey&&h.length===E.length&&E.length===m.length&&(f=!1,k=!0),C=""===p?"":"\n",d===E.length&&f){var w=i.event.shiftKey?(b++,this.nextOrderedListValue(b.toString())):this.previousOrderedListValue(N[0]);N.splice(0,1),p=p+C+E+w+N.join(". ")}else if(h.length===E.length&&g||k){w=this.nextOrderedListValue(u.toString());u++,N.splice(0,1),p=p+C+E+w+N.join(". ")}else p=p+C+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);var l=r.split(". ");n="OL"===this.currentAction?/^\d+$/.test(l[0].trim()):s.test(r.trim())}if(r&&n){var d=this.getTabSpace(i),c=this.getTabSpace(r);for(a=d===c||a;c.length>d.length;null){o-=1;l=(r=this.selection.getLine(e,o)).trim().split(". ");if(("OL"===this.currentAction?/^\d+$/.test(l[0]):s.test(r.trim()))&&(c=this.getTabSpace(r)).length<=d.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]){var p=this.getTabSpace(s);this.currentAction=this.getAction(s);var h=this.nextOrderedListValue(d[0]);r[0].text=p+h+r[0].text;for(var u=this.selection.getAllParents(n.value).length,m="\n",g=this.getTabSpace(s),f=this.getTabSpace(r[0].text),b=!0,v=1;v<u&&""!==n.value.substr(r[0].end,n.value.length);v++){var y=this.selection.getLine(n,r[0].line+v);if(t.isNullOrUndefined(y))m+="";else{var C=y.split(". "),T=this.getTabSpace(y);if(T.length<f.length&&(b=!1),C.length>1&&/^\d+$/.test(C[0].trim())&&g.length===T.length&&b){var S=this.nextOrderedListValue(C[0]);C.splice(0,1),m=m+T+S+C.join(". ")+"\n"}else m=m+y+"\n",f=this.getTabSpace(y)}}n.value=n.value.substr(0,r[0].start)+g+h+this.selection.getLine(n,r[0].line)+m,i=i+h.length+p.length,c+=h.length+p.length}else if("UL"===this.currentAction&&l.test(s.trim())&&""!==s.trim().replace(l,"")||"OL"===this.currentAction&&!a){p=this.getTabSpace(s),h=this.syntax[this.currentAction];r[0].text=p+h+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+h.length+p.length,c+=h.length+p.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;var i,o,r=n.selectionStart,s=n.selectionEnd,a=0,l=0,d=0,c=this.selection.getSelectedParentPoints(n),p="";i=this.olListType();for(var h={},u=0;u<c.length;u++)if(o=i?"OL"===this.currentAction?u+i+". ":this.syntax[this.currentAction]:"OL"===this.currentAction?this.syntax.OL:this.syntax[this.currentAction],this.selection.isStartWith(c[u].text,o))c[u].text=c[u].text.replace(o,""),n.value=n.value.substr(0,c[u].start+d)+c[u].text+"\n"+n.value.substr(c[u].end+d,n.value.length),d-=o.length,l=o.length,this.restore(n,r-l,s+d,null);else{if(""===c[u].text&&0===u&&(this.selection.save(r,s),1!==c.length))for(var m=u;m<c.length;m++)c[m].start=0!==m?1+c[m].start:c[m].start,c[m].end=1+c[m].end;var g=t.isNullOrUndefined(c[u-1])?0:this.getTabSpace(c[u-1].text).length,f=this.appliedLine(c[u].text,o,h,g);if(p=f.line?p:o,c[u].text=f.line?f.line:p+c[u].text,f.space=f.space?f.space:0,n.value=n.value.substr(0,c[u].start+d)+c[u].text+"\n"+n.value.substr(c[u].end,n.value.length),r=0===u?r+p.length+f.space>0?r+p.length+f.space:0:r,a+=p.length+f.space,1!==c.length)for(m=u;m<c.length;m++)c[m].start=0!==m?p.length+c[m].start+f.space:c[m].start,c[m].end=p.length+c[m].end+f.space;this.restore(n,r,s+a,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}(),Ui=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(Ni,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){for(var a=0;a<i.length;a++)if(""===i[a].text||this.selection.isStartWith(i[a].text,"\\"+this.syntax[e.subCommand])){if(""===i[a].text&&0===a&&(this.selection.save(o,r),1!==i.length))for(l=a;l<i.length;l++)i[l].start=0!==l?1+i[l].start:i[l].start,i[l].end=1+i[l].end}else if(i[a].text=this.syntax[e.subCommand]+i[a].text,n.value=n.value.substr(0,i[a].start)+i[a].text+"\n"+n.value.substr(i[a].end,n.value.length),o=0===a?o+this.syntax[e.subCommand].length:o,s+=this.syntax[e.subCommand].length,1!==i.length)for(var l=a;l<i.length;l++)i[l].start=0!==l?this.syntax[e.subCommand].length+i[l].start:i[l].start,i[l].end=this.syntax[e.subCommand].length+i[l].end;this.restore(n,o,r+s,e)}else i.length>1?this.applyCodeBlock(n,e,i):(t.extend(e,e,{subCommand:"InlineCode"},!0),this.parent.observer.notify(Bi,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}(),ji=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(Bi,this.applyCommands,this),this.parent.observer.on(ki,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);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}(),zi={h6:"###### ",h5:"##### ",h4:"#### ",h3:"### ",h2:"## ",h1:"# ",blockquote:"> ",pre:"```\n",p:""},qi={Bold:"**",Italic:"*",StrikeThrough:"~~",InlineCode:"`",SubScript:"<sub>",SuperScript:"<sup>",UpperCase:"A-Z",LowerCase:"a-z"},_i={OL:"1. ",UL:"- "},Fi={"toolbar-focus":"alt+f10",escape:"27","insert-link":"ctrl+k","insert-image":"ctrl+shift+i","insert-table":"ctrl+shift+e",undo:"ctrl+z",redo:"ctrl+y",copy:"ctrl+c",cut:"ctrl+x",paste:"ctrl+v",bold:"ctrl+b",italic:"ctrl+i",underline:"ctrl+u",strikethrough:"ctrl+shift+s",uppercase:"ctrl+shift+u",lowercase:"ctrl+shift+l",superscript:"ctrl+shift+=",subscript:"ctrl+=",indents:"ctrl+]",outdents:"ctrl+[","html-source":"ctrl+shift+h","full-screen":"ctrl+shift+f","decrease-fontsize":"ctrl+shift+<","increase-fontsize":"ctrl+shift+>","justify-center":"ctrl+e","justify-full":"ctrl+j","justify-left":"ctrl+l","justify-right":"ctrl+r","clear-format":"ctrl+shift+r","ordered-list":"ctrl+shift+o","unordered-list":"ctrl+alt+o",space:"32",enter:"13",tab:"tab",delete:"46"},Qi={"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"},Wi={b:["strong"],strong:["b"],i:["emp","cite"],emp:["i","cite"],cite:["i","emp"]},Vi=["BR","IMG"],Gi=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(wi,e,this),this.parent.observer.on(ki,this.keyDown,this),this.parent.observer.on(Ei,this.onAction,this),this.parent.observer.on(Li,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(wi,e),this.parent.observer.off(ki,this.keyDown),this.parent.observer.off(Ei,this.onAction),this.parent.observer.off(Li,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;switch(t.action){case"undo":t.preventDefault(),this.undo(e);break;case"redo":t.preventDefault(),this.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}(),Ki=function(){function e(e){this.parent=e,this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Pi,this.createLink,this)},e.prototype.createLink=function(e){var t=this.parent.element;t.focus();var n=t.selectionStart,i=t.selectionEnd,o="Image"===e.subCommand?this.selection.getSelectedText(t):e.item.text,r="Image"===e.subCommand?n+2:n+1,s="Image"===e.subCommand?i+2:i+1;o="Image"===e.subCommand?"!["+o+"]("+e.item.url+")":"["+o+"]("+e.item.url+")",t.value=t.value.substr(0,n)+o+t.value.substr(i,t.value.length),this.parent.markdownSelection.setSelection(t,r,s),this.restore(t,r,s,e)},e.prototype.restore=function(e,t,n,i){this.selection.save(t,n),this.selection.restore(e),i&&i.callBack&&i.callBack({requestType:i.subCommand,selectedText:this.selection.getSelectedText(e),editorMode:"Markdown",event:i.event})},e}(),Yi=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(Ai,this.createTable,this),this.parent.observer.on(ki,this.onKeyDown,this)},e.prototype.removeEventListener=function(){this.parent.observer.off(Ai,this.createTable),this.parent.observer.off(ki,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,n=this.element.selectionStart,i=this.element.selectionEnd;t=this.element.value,this.locale=e,this.selection.save(n,i),this.restore(this.element.selectionStart,this.element.selectionEnd,null),this.insertTable(n,i,t,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}(),Xi=function(){function e(e){this.parent=e,this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Ii,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=void 0,l=void 0;s="<sup>"===t[o]?new RegExp("<sup>(.*?)</sup>","ig"):"<sub>"===t[o]?new RegExp("<sub>(.*?)</sub>","ig"):new RegExp(r+"(.*?)"+r,"ig"),a=t[o].length,l="<sup>"===t[o]||"<sub>"===t[o]?t[o].length+1:t[o].length;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}(),Ji=function(){function e(e){this.initialize(),t.extend(this,this,e,!0),this.observer=new t.Observer(this),this.markdownSelection=new Ci,this.listObj=new Hi({parent:this,syntax:this.listTags}),this.formatObj=new Ui({parent:this,syntax:this.formatTags}),this.undoRedoManager=new Gi(this,e.options),this.mdSelectionFormats=new ji({parent:this,syntax:this.selectionTags}),this.linkObj=new Ki(this),this.tableObj=new Yi({parent:this,syntaxTag:{Formats:this.formatTags,List:this.listTags}}),this.clearObj=new Xi(this),this.wireEvents()}return e.prototype.initialize=function(){this.formatTags=zi,this.listTags=_i,this.selectionTags=qi},e.prototype.wireEvents=function(){this.observer.on("keydown",this.editorKeyDown,this),this.observer.on("keyup",this.editorKeyUp,this),this.observer.on(xi,this.onPropertyChanged,this)},e.prototype.onPropertyChanged=function(e){this.observer.notify(Li,e)},e.prototype.editorKeyDown=function(e){this.observer.notify(ki,e)},e.prototype.editorKeyUp=function(e){this.observer.notify(wi,e)},e.prototype.execCommand=function(e,t,n,i,o,r){switch(e.toLocaleLowerCase()){case"lists":this.observer.notify(Ri,{subCommand:t,event:n,callBack:i});break;case"formats":this.observer.notify(Ni,{subCommand:t,event:n,callBack:i});break;case"actions":this.observer.notify(Ei,{subCommand:t,event:n,callBack:i});break;case"style":case"effects":case"casing":this.observer.notify(Bi,{subCommand:t,event:n,callBack:i});break;case"links":case"images":this.observer.notify(Pi,{subCommand:t,event:n,callBack:i,item:r});break;case"table":switch(t.toString().toLocaleLowerCase()){case"createtable":this.observer.notify(Ai,{subCommand:t,item:r,event:n,callBack:i})}break;case"clear":this.observer.notify(Ii,{subCommand:t,event:n,callBack:i})}},e}(),$i=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)}}(),Zi=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 $i(n,e),n.prototype.initialize=function(){this.keyConfig=Qi,this.formatTags=zi,this.listTags=_i,this.selectionTags=qi},n.prototype.updateFormatter=function(e,t,n){e&&(this.editorManager=new Ji({element:e,formatTags:this.formatTags,listTags:this.listTags,selectionTags:this.selectionTags,options:n}))},n}(Mi),eo=function(){function e(e){this.parent=e}return e.prototype.renderPanel=function(){var e=this.parent,t=this.parent.createElement("div",{id:this.parent.getID()+"_view",className:"e-rte-content"});this.editableElement=this.parent.createElement("textarea",{className:"e-content",id:this.parent.getID()+"_editable-content"}),t.appendChild(this.editableElement),this.setPanel(t),e.element.appendChild(t)},e.prototype.getPanel=function(){return this.contentPanel},e.prototype.getEditPanel=function(){return this.editableElement},e.prototype.getText=function(){return this.getEditPanel().value},e.prototype.setPanel=function(e){this.contentPanel=e},e.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},e}(),to=function(){function n(e,t){this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.destroy=function(){this.removeEventListener()},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.saveSelection=new Ci,this.parent.on(R,this.instantiateRenderer,this),this.parent.on(B,this.render,this),this.parent.on(W,this.onPropertyChanged,this),this.parent.on(F,this.onToolbarClick,this),this.parent.on(I,this.destroy,this),this.parent.on(He,this.selectAll,this),this.parent.on(je,this.getSelectedHtml,this),this.parent.on(ke,this.onSelectionSave,this),this.parent.on(we,this.onSelectionRestore,this),this.parent.on(Ge,this.updateReadOnly,this))},n.prototype.updateReadOnly=function(){this.parent.readonly?(this.parent.contentModule.getEditPanel().setAttribute("readonly","readonly"),t.addClass([this.parent.element],hn)):(this.parent.contentModule.getEditPanel().removeAttribute("readonly"),t.removeClass([this.parent.element],hn))},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,n,i,o=e.item,r=this.parent.contentModule.getEditPanel();switch(r.focus(),n=r.selectionStart,i=r.selectionEnd,t=r.value.substring(n,i),o.subCommand){case"Maximize":this.parent.notify(J,{args:e});break;case"Minimize":this.parent.notify($,{args:e});break;case"CreateLink":this.parent.notify(ae,{member:"link",args:e,text:t,module:"Markdown"});break;case"Image":this.parent.notify(ge,{member:"image",args:e,text:t,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 eo(this.parent))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(B,this.render),this.parent.off(W,this.onPropertyChanged),this.parent.off(I,this.destroy),this.parent.off(F,this.onToolbarClick),this.parent.off(R,this.instantiateRenderer),this.parent.off(He,this.selectAll),this.parent.off(je,this.getSelectedHtml),this.parent.off(ke,this.onSelectionSave),this.parent.off(we,this.onSelectionRestore),this.parent.off(Ge,this.updateReadOnly))},n.prototype.render=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};t.isNullOrUndefined(this.parent.formatter)?this.parent.formatter=new Zi({element:n,options:i}):this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i),this.parent.toolbarSettings.enable&&(this.toolbarUpdate=new Ti(this.parent)),this.parent.notify(z,{})},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}(),no="INSERT-IMAGE",io="INSERT-TABLE",oo="INSERT-LINK",ro="INSERT-ROW",so="INSERT-COLUMN",ao="DELETE-ROW",lo="DELETE-COLUMN",co="REMOVE-TABLE",po="TABLE-HEADER",ho="TABLE_VERTICAL_ALIGN",uo="alignment-type",mo="indent-type",go=["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"],fo=["td","th"],bo=["table","tbody","td","tfoot","th","thead","tr"],vo="selection-type",yo="inserthtml-type",Co="insert-text-type",To="clear-type",So=function(){function e(){this.startNodeName=[],this.endNodeName=[]}return e.prototype.saveInstance=function(e,t){return this.range=e.cloneRange(),this.rootNode=this.documentFromRange(e),this.body=t,this.startContainer=this.getNodeArray(e.startContainer,!0),this.endContainer=this.getNodeArray(e.endContainer,!1),this.startOffset=e.startOffset,this.endOffset=e.endOffset,this.html=this.body.innerHTML,this},e.prototype.documentFromRange=function(e){return 9===e.startContainer.nodeType?e.startContainer:e.startContainer.ownerDocument},e.prototype.getRange=function(e){var t=this.get(e),n=t&&t.rangeCount>0?t.getRangeAt(t.rangeCount-1):e.createRange();return n.startContainer!==e||n.endContainer!==e||n.startOffset||n.endOffset||(n.setStart(e.body,0),n.collapse(!0)),n},e.prototype.get=function(e){return e.defaultView.getSelection()},e.prototype.save=function(e,t){return e=e?e.cloneRange():this.getRange(t),this.saveInstance(e,t.body)},e.prototype.getIndex=function(e){var t=0;if(e=e.previousSibling||"BR"!==e.tagName?e.previousSibling:e)for(e.nodeType;e;null)t++,e.nodeType,e=e.previousSibling;return t},e.prototype.isChildNode=function(e,t){for(var n=0;n<t.childNodes.length;n++)if(e.indexOf(t.childNodes[n])>-1)return!0;return!1},e.prototype.getNode=function(e,t,n){return t!==e||3!==e.nodeType&&e.firstChild&&-1===n.indexOf(e.firstChild)&&!this.isChildNode(n,e)?-1===n.indexOf(e.firstChild)&&e.firstChild&&!this.isChildNode(n,e)?e.firstChild:e.nextSibling?e.nextSibling:e.parentNode?e.parentNode:null:null},e.prototype.getNodeCollection=function(e){var t=e.startContainer.childNodes[e.startOffset]||e.startContainer,n=e.endContainer.childNodes[e.endOffset>0?e.endOffset-1:e.endOffset]||e.endContainer;if(t===n&&0===t.childNodes.length)return[t];if(e.startOffset===e.endOffset&&0!==e.startOffset&&"PRE"===e.startContainer.nodeName)return["BR"===t.nodeName||"#text"===t.nodeName?t:t.childNodes[0]];var i=[];do{-1===i.indexOf(t)&&i.push(t),t=this.getNode(t,n,i)}while(t);return i},e.prototype.getParentNodeCollection=function(e){return this.getParentNodes(this.getNodeCollection(e),e)},e.prototype.getParentNodes=function(e,t){e=e.reverse();for(var n=0;n<e.length;n++)-1!==e.indexOf(e[n].parentNode)||3===e[n].nodeType&&t.startContainer!==t.endContainer&&t.startContainer.parentNode!==t.endContainer.parentNode?(e.splice(n,1),n--):3===e[n].nodeType&&(e[n]=e[n].parentNode);return e},e.prototype.getSelectionNodeCollection=function(e){return this.getSelectionNodes(this.getNodeCollection(e))},e.prototype.getSelectionNodeCollectionBr=function(e){return this.getSelectionNodesBr(this.getNodeCollection(e))},e.prototype.getSelectionNodes=function(e){e=e.reverse();for(var t=new RegExp(String.fromCharCode(8203),"g"),n=0;n<e.length;n++)(3!==e[n].nodeType||""===e[n].textContent.trim()||1===e[n].textContent.length&&e[n].textContent.match(t))&&(e.splice(n,1),n--);return e.reverse()},e.prototype.getSelectionNodesBr=function(e){e=e.reverse();for(var t=new RegExp(String.fromCharCode(8203),"g"),n=0;n<e.length;n++)"BR"!==e[n].nodeName&&(3!==e[n].nodeType||""===e[n].textContent.trim()||1===e[n].textContent.length&&e[n].textContent.match(t))&&(e.splice(n,1),n--);return e.reverse()},e.prototype.getInsertNodeCollection=function(e){return this.getInsertNodes(this.getNodeCollection(e))},e.prototype.getInsertNodes=function(e){e=e.reverse();for(var t=0;t<e.length;t++)(0!==e[t].childNodes.length&&3!==e[t].nodeType||3===e[t].nodeType&&""===e[t].textContent)&&(e.splice(t,1),t--);return e.reverse()},e.prototype.getNodeArray=function(e,t,n){var i=[];for(t?this.startNodeName=[]:this.endNodeName=[];e!==(n||this.rootNode);null)t?this.startNodeName.push(e.nodeName.toLowerCase()):this.endNodeName.push(e.nodeName.toLowerCase()),i.push(this.getIndex(e)),e=e.parentNode;return i},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&&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}(),Eo={startSelection:"e-editor-select-start",endSelection:"e-editor-select-end"},No=function(){function e(e,t){this.parent=e,this.nodeSelection=new So,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&&go.indexOf(e.tagName.toLowerCase())>=0},e.prototype.isLink=function(e){return!!e&&e.nodeType===Node.ELEMENT_NODE&&"a"===e.tagName.toLowerCase()},e.prototype.blockParentNode=function(e){for(;e&&e.parentNode!==this.parent&&(!e.parentNode||!this.hasClass(e.parentNode,"e-node-inner"));null)if(e=e.parentNode,this.isBlockNode(e))return e;return e},e.prototype.rawAttributes=function(e){var t={},n=e.attributes;if(n.length>0)for(var i=0;i<n.length;i++){var o=n[i];t[o.nodeName]=o.value}return t},e.prototype.attributes=function(e){if(!e)return"";for(var t="",n=this.rawAttributes(e),i=Object.keys(n).sort(),o=0;o<i.length;o++){var r=i[o],s=n[r];s.indexOf("'")<0&&s.indexOf('"')>=0?t+=" "+r+"='"+s+"'":s.indexOf('"')>=0&&s.indexOf("'")>=0?t+=" "+r+'="'+(s=s.replace(/"/g,"&quot;"))+'"':t+=" "+r+'="'+s+'"'}return t},e.prototype.clearAttributes=function(e){for(var t=e.attributes,n=t.length-1;n>=0;n--){var i=t[n];e.removeAttribute(i.nodeName)}},e.prototype.openTagString=function(e){return"<"+e.tagName.toLowerCase()+this.attributes(e)+">"},e.prototype.closeTagString=function(e){return"</"+e.tagName.toLowerCase()+">"},e.prototype.createTagString=function(e,t,n){return"<"+e.toLowerCase()+this.attributes(t)+">"+n+"</"+e.toLowerCase()+">"},e.prototype.isList=function(e){return!!e&&["UL","OL"].indexOf(e.tagName)>=0},e.prototype.isElement=function(e){return e===this.parent},e.prototype.isEditable=function(e){return(!e.getAttribute||"true"===e.getAttribute("contenteditable"))&&["STYLE","SCRIPT"].indexOf(e.tagName)<0},e.prototype.hasClass=function(e,t){return e&&e.classList&&e.classList.contains(t)},e.prototype.replaceWith=function(e,n){e.parentNode.insertBefore(this.parseHTMLFragment(n),e),t.detach(e)},e.prototype.parseHTMLFragment=function(e){var n=t.createElement("template");return n.innerHTML=e,n.content instanceof DocumentFragment?n.content:document.createRange().createContextualFragment(e)},e.prototype.wrap=function(e,t){return e.parentNode.insertBefore(t,e),(t=e.previousSibling).appendChild(e),t},e.prototype.insertAfter=function(e,t){t.parentNode.insertBefore(e,t.nextSibling)},e.prototype.wrapInner=function(e,t){for(e.appendChild(t),(t=e.querySelector(".e-rte-wrap-inner")).classList.remove("e-rte-wrap-inner"),0===t.classList.length&&t.removeAttribute("class");e.firstChild!==t;)t.appendChild(e.firstChild);return t},e.prototype.unWrap=function(e){for(var t=e.parentNode,n=[];e.firstChild;)n.push(e.firstChild),t.insertBefore(e.firstChild,e);return n=n.length>0?n:[e.parentNode],t.removeChild(e),n},e.prototype.getSelectedNode=function(e,t){return e.nodeType===Node.ELEMENT_NODE&&e.childNodes.length>0&&e.childNodes[t-1]&&e.childNodes[t-1].nodeType===Node.ELEMENT_NODE&&(e.childNodes[t-1].classList.contains(Eo.startSelection)||e.childNodes[t-1].classList.contains(Eo.endSelection))?e=e.childNodes[t-1]:e.nodeType===Node.ELEMENT_NODE&&e.childNodes.length>0&&e.childNodes[t]&&(e=e.childNodes[t]),e.nodeType===Node.TEXT_NODE&&(e=e.parentNode),e},e.prototype.nodeFinds=function(e,t){for(var n=[],i=0;i<t.length;i++)e.contains(t[i])&&e!==t[i]&&n.push(t[i]);return n},e.prototype.isEditorArea=function(){var e;for(e=this.getRangePoint(0).commonAncestorContainer;e&&!this.isElement(e);null)e=e.parentNode;return!!this.isElement(e)},e.prototype.getRangePoint=function(e){var t=this.getSelection(),n=[];if(t&&t.getRangeAt&&t.rangeCount){n=[];for(var i=0;i<t.rangeCount;i++)n.push(t.getRangeAt(i))}else n=[this.currentDocument.createRange()];return void 0!==e?n[e]:n},e.prototype.getSelection=function(){return this.nodeSelection.get(this.currentDocument)},e.prototype.getPreviousNode=function(e){for(e=e.previousElementSibling;e&&"\n"===e.textContent;null)e=e.previousElementSibling;return e},e.prototype.encode=function(e){var t=document.createElement("div");return t.innerText=e,t.innerHTML.replace(/<br\s*[\/]?>/gi,"\n")},e.prototype.saveMarker=function(e,n){var i,o,r=this.parent.querySelector("."+Eo.startSelection),s=this.parent.querySelector("."+Eo.endSelection);if(""===r.textContent&&t.isNullOrUndefined(s)&&"tab"!==n&&(1===r.childNodes.length&&"BR"===r.childNodes[0].nodeName?r.innerHTML="&#65279;&#65279;<br>":r.innerHTML="&#65279;&#65279;"),this.hasClass(r,Eo.startSelection)&&r.classList.length>1){var a=this.createTagString("p",r,this.encode(r.textContent));this.replaceWith(r,a),(r=this.parent.querySelector("."+Eo.startSelection)).classList.remove(Eo.startSelection),i=r.childNodes[0]}else i=this.unWrap(r)[0];if(this.hasClass(s,Eo.endSelection)&&s.classList.length>1){a=this.createTagString("p",s,this.encode(s.textContent));this.replaceWith(s,a),(s=this.parent.querySelector("."+Eo.endSelection)).classList.remove(Eo.endSelection),o=s.childNodes[0]}else o=s?this.unWrap(s)[0]:i;return e.startContainer=e.getNodeArray(i,!0),e.endContainer=e.getNodeArray(o,!1),e},e.prototype.marker=function(e,t){return'<span class="'+e+'">'+t+"</span>"},e.prototype.setMarker=function(e){var t=e.range,n=t.startContainer.childNodes[t.startOffset]||t.startContainer,i=t.endContainer.childNodes[t.endOffset>0?t.endOffset-1:t.endOffset]||t.endContainer;if(n.nodeType===Node.ELEMENT_NODE&&i.nodeType===Node.ELEMENT_NODE&&(n.contains(i)||i.contains(n))){var o=n.contains(i)?n:i;if(o.nodeType!==Node.TEXT_NODE){for(var r=[],s=[],a=o;o.contains(a);null)r.indexOf(a)<0&&a.childNodes&&a.childNodes.length?(r.push(a),a=a.childNodes[0]):a.nextSibling?a=a.nextSibling:a.parentNode&&(a=a.parentNode,r.push(a)),s.indexOf(a)<0&&(a.nodeType===Node.TEXT_NODE||fo.indexOf(a.parentNode.tagName.toLocaleLowerCase())>=0&&("BR"===a.tagName||"IMG"===a.tagName))&&s.push(a);s.length&&(n=n.contains(i)?s[0]:n,i=s[s.length-1])}}if(n!==i){if(n.nodeType!==Node.TEXT_NODE&&("BR"===n.tagName&&fo.indexOf(n.parentNode.tagName.toLocaleLowerCase())>=0||"IMG"===n.tagName)){this.replaceWith(n,this.marker(Eo.startSelection,this.encode(n.textContent)));t.startContainer.querySelector("."+Eo.startSelection).appendChild(n)}else this.replaceWith(n,this.marker(Eo.startSelection,this.encode(n.textContent)));if(i.nodeType!==Node.TEXT_NODE&&"BR"===i.tagName&&fo.indexOf(i.parentNode.tagName.toLocaleLowerCase())>=0){this.replaceWith(i,this.marker(Eo.endSelection,this.encode(i.textContent)));t.endContainer.querySelector("."+Eo.endSelection).appendChild(i)}else this.ensureSelfClosingTag(i,Eo.endSelection,t)}else this.ensureSelfClosingTag(n,Eo.startSelection,t)},e.prototype.ensureSelfClosingTag=function(e,n,i){var o=!1;if(3===e.nodeType)this.replaceWith(e,this.marker(n,this.encode(e.textContent)));else if("BR"===e.tagName){this.replaceWith(e,this.marker(Eo.startSelection,this.encode(e.textContent)));i.startContainer.querySelector("."+Eo.startSelection).appendChild(e)}else{if("IMG"===e.tagName){var r=document.createElement("p");e.parentElement.insertBefore(r,e),r.appendChild(e),e=r.children[0]}if("TABLE"===e.tagName)if(o=!0,""===e.textContent){var s=e.querySelectorAll("td");e=s[s.length-1],e=t.isNullOrUndefined(e.childNodes[0])?e:e.childNodes[0]}else{for(var a=e.lastChild;3!==a.nodeType&&"#text"!==a.nodeName&&"BR"!==a.nodeName;)a=a.lastChild;e=a}for(var l=0;l<Vi.length;l++)e=e.tagName!==Vi[l]||o?e:e.parentNode;if(3===e.nodeType&&"#text"===e.nodeName)this.replaceWith(e,this.marker(n,this.encode(e.textContent)));else if("BR"===e.nodeName){this.replaceWith(e,this.marker(Eo.endSelection,this.encode(e.textContent)));i.endContainer.querySelector("."+Eo.endSelection).appendChild(e)}else{var d=this.marker(n,"");t.append([this.parseHTMLFragment(d)],e)}}},e.prototype.createTempNode=function(e){var t=e.textContent;if("BR"===e.tagName){var n="<p></p>",i=e.parentNode;fo.indexOf(i.tagName.toLocaleLowerCase())>=0&&(e=this.wrap(e,this.parseHTMLFragment(n)))}else if(e.nodeType!==Node.TEXT_NODE&&(e.classList.contains(Eo.startSelection)||e.classList.contains(Eo.endSelection))||t.replace(/\n/g,"").replace(/(^ *)|( *$)/g,"").length>0||t.length&&t.indexOf("\n")<0){n="<p></p>";var o=e;e=this.wrap(e,this.parseHTMLFragment(n));!(o.nodeType===Node.ELEMENT_NODE&&o.firstChild&&"BR"===o.firstChild.nodeName&&(o.classList.contains(Eo.startSelection)||o.classList.contains(Eo.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(fo.indexOf(r.tagName.toLocaleLowerCase())>=0&&("BR"===a.tagName||a.nodeType===Node.TEXT_NODE||a.classList.contains(Eo.startSelection)||a.classList.contains(Eo.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(Eo.startSelection)||p.classList.contains(Eo.endSelection)))&&fo.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(Eo.startSelection)||p.nextSibling.classList.contains(Eo.endSelection))&&fo.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&&fo.indexOf(p.parentNode.tagName.toLocaleLowerCase())>=0&&(p.classList.contains(Eo.startSelection)||p.classList.contains(Eo.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!(bo.indexOf(e.tagName.toLocaleLowerCase())>=0)},e}(),ko=["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"],wo=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(ki,this.keyDownHandler,this)},e.prototype.testList=function(e){var n=[/^[\d]+[.]+$/,/^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})[.]$/gi,/^[a-zA-Z][.]+$/],i=t.isNullOrUndefined(e)?null:e.innerText.trim().split(".")[0]+".";if(!t.isNullOrUndefined(i))for(var o=0;o<n.length;o++)if(n[o].test(i))return!0;return!1},e.prototype.testCurrentList=function(e){var n=[/^[1]+[.]+$/,/^[i]+[.]+$/,/^[a]+[.]+$/];if(!t.isNullOrUndefined(e.startContainer.textContent.slice(0,e.startOffset)))for(var i=0;i<n.length;i++)if(n[i].test(e.startContainer.textContent.slice(0,e.startOffset)))return!0;return!1},e.prototype.spaceList=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument);this.saveSelection=this.parent.nodeSelection.save(n,this.parent.currentDocument);var i=this.parent.domNode.getSelectedNode(n.startContainer,n.startOffset),o=(this.parent.domNode.getSelectedNode(n.endContainer,n.endOffset),i.previousElementSibling),r=i.nextElementSibling,s=t.isNullOrUndefined(o)?null:o.innerText.trim().substring(0,1),a=t.isNullOrUndefined(r)?null:r.innerText.trim().substring(0,1),l=this.testCurrentList(n),d=this.testList(o),c=this.testList(r);d||c||"*"===s||"*"===a||(l?(n.startContainer.textContent=n.startContainer.textContent.slice(n.startOffset,n.startContainer.textContent.length),this.applyListsHandler({subCommand:"OL",callBack:e.callBack}),e.event.preventDefault()):"*"===n.startContainer.textContent.slice(0,n.startOffset)&&(n.startContainer.textContent=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=this.parent.domNode.getSelectedNode(n.startContainer,n.startOffset);i!==this.parent.domNode.getSelectedNode(n.endContainer,n.endOffset)||t.isNullOrUndefined(t.closest(i,"li"))||""!==i.textContent.trim()||65279!==i.textContent.charCodeAt(0)||(i.textContent="")},e.prototype.backspaceList=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=this.parent.domNode.getSelectedNode(n.startContainer,n.startOffset),o=this.parent.domNode.getSelectedNode(n.endContainer,n.endOffset);if(i="BR"===i.nodeName?i.parentElement:i,o="BR"===o.nodeName?o.parentElement:o,i!==o||t.isNullOrUndefined(t.closest(i,"li"))||""!==i.textContent.trim()||65279!==i.textContent.charCodeAt(0)||(i.textContent=""),i===o&&""===i.textContent){if(i.closest("ul")||i.closest("ol")){if((r=t.isNullOrUndefined(i.closest("ul"))?i.closest("ol"):i.closest("ul")).firstElementChild===i&&("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("BR"===i.firstChild.nodeName&&("UL"===i.childNodes[1].nodeName||"OL"===i.childNodes[1].nodeName)){var r;if((r=t.isNullOrUndefined(i.closest("ul"))?i.closest("ol"):i.closest("ul")).tagName===i.childNodes[1].nodeName){for(;i.childNodes[1].lastChild;)this.parent.domNode.insertAfter(i.children[1].lastChild,i);t.detach(i.childNodes[1])}else r.parentElement.insertBefore(i.children[1],r)}},e.prototype.keyDownHandler=function(e){if(13===e.event.which&&this.enterList(e),32===e.event.which&&this.spaceList(e),8===e.event.which&&this.backspaceList(e),9===e.event.which){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument);e.event.action&&"indent"===e.event.action||(this.saveSelection=this.parent.nodeSelection.save(t,this.parent.currentDocument));var n=void 0,i=t.startOffset,o=t.endOffset,r=this.parent.domNode.getSelectedNode(t.startContainer,t.startOffset);if(r===this.parent.domNode.getSelectedNode(t.endContainer,t.endOffset)&&("BR"===r.nodeName||"#text"===r.nodeName)&&fo.indexOf(r.parentNode.tagName.toLocaleLowerCase())>=0)return;e.event.action&&"indent"===e.event.action||this.domNode.setMarker(this.saveSelection),n=this.domNode.blockNodes();for(var s=[],a=!0,l=0;l<n.length;l++)"LI"===n[l].parentNode.tagName?s.push(n[l].parentNode):"LI"===n[l].tagName&&"P"!==n[l].childNodes[0].tagName&&"OL"!==n[l].childNodes[0].tagName&&"UL"!==n[l].childNodes[0].tagName&&s.push(n[l]);s.length>1||s.length&&(0===i&&0===o||e.ignoreDefault)?(e.event.preventDefault(),e.event.stopPropagation(),this.currentAction=this.getAction(s[0]),e.event.shiftKey?(this.revertList(s),this.revertClean()):a=this.nestedList(s),a&&(this.cleanNode(),this.parent.editableElement.focus()),e.event.action&&"indent"===e.event.action||(this.saveSelection=this.domNode.saveMarker(this.saveSelection),this.saveSelection.restore(),e.callBack&&e.callBack({requestType:this.currentAction,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes(),event:e.event}))):e.event.action&&"indent"===e.event.action||(e.event&&e.event.shiftKey&&"Tab"===e.event.key&&(e.event.action="tab"),this.saveSelection=this.domNode.saveMarker(this.saveSelection,e.event.action),this.saveSelection.restore())}else switch(e.event.action){case"ordered-list":this.applyListsHandler({subCommand:"OL",callBack:e.callBack}),e.event.preventDefault();break;case"unordered-list":this.applyListsHandler({subCommand:"UL",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.getAction=function(e){return"OL"===e.parentNode.nodeName?"OL":"UL"},e.prototype.revertClean=function(){for(var e=this.parent.editableElement.querySelectorAll("ul, ol"),t=0;t<e.length;t++){var n=e[t].querySelectorAll("ul, ol");if(n.length>0)for(var i=0;i<n.length;i++){var o=n[i].previousSibling;o&&"LI"===o.tagName&&o.appendChild(n[i])}}},e.prototype.noPreviousElement=function(e){var n,i,o=e.querySelectorAll("ol, ul"),r=e.querySelectorAll("li"),s=this.domNode.contents(r[0])[0];if(r.length>0&&("OL"===s.nodeName||"UL"===s.nodeName)?n=r[0]:i=o[0],n)for(var a=this.domNode.contents(e)[0];a&&!this.domNode.isList(a);null){var 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){var d=t.createElement("li");t.prepend([d],i);for(a=this.domNode.contents(e)[0];a&&!this.domNode.isList(a);null){l=a.nextSibling;d.appendChild(a),a=l}t.prepend([i],e.parentNode),t.detach(e);var c=t.createElement("li",{styles:"list-style-type: none;"});t.prepend([c],i.parentNode),t.append([i],c)}else{c=t.createElement("li",{styles:"list-style-type: none;"});t.prepend([c],e.parentNode);d=t.createElement(e.parentNode.tagName);t.prepend([d],c),t.append([e],d)}},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){var c=t.createElement("li");t.prepend([c],r);for(var p=this.domNode.contents(e[i])[0];p&&!this.domNode.isList(p);null){var h=p.nextSibling;c.appendChild(p),p=h}t.append([r],o),t.detach(e[i])}else if(s){if("LI"===o.tagName){for(p=this.domNode.contents(e[i])[0];p&&!this.domNode.isList(p);null){h=p.nextSibling;t.prepend([p],s),t.setStyleAttribute(e[i],{"list-style-type":"none"}),t.setStyleAttribute(s,{"list-style-type":""}),p=h}t.append([s.parentNode],o),t.detach(e[i])}}else if("LI"===o.tagName){c=t.createElement(e[i].parentNode.tagName);t.append([c],o),t.append([e[i]],c)}}else{var u=e[i];n=!0,this.noPreviousElement(u)}}return n},e.prototype.applyListsHandler=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument);this.saveSelection=this.parent.nodeSelection.save(t,this.parent.currentDocument),this.currentAction=e.subCommand,this.domNode.setMarker(this.saveSelection);for(var n=this.domNode.blockNodes(),i=0;i<n.length;i++)"TABLE"===n[i].tagName&&n.splice(i,1),"LI"!==n[i].tagName&&"LI"===n[i].parentNode.tagName&&(n[i]=n[i].parentNode);this.applyLists(n,this.currentAction,e.selector),e.callBack&&e.callBack({requestType:this.currentAction,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes()})},e.prototype.applyLists=function(e,t,n){if(this.isRevert(e,t))this.revertList(e),this.removeEmptyListElements();else{this.checkLists(e,t);for(var i=0;i<e.length;i++)if("LI"!==e[i].tagName){var o="<"+t+">",r="</"+t+">",s="li"+("IMG"===e[i].tagName?"":this.domNode.attributes(e[i])),a="p"===e[i].tagName.toLowerCase()?e[i].innerHTML:e[i].outerHTML,l=o+this.domNode.createTagString(s,null,a)+r;this.domNode.replaceWith(e[i],l)}}this.cleanNode(),this.parent.editableElement.focus(),O()&&D(this.parent.editableElement,n),this.saveSelection=this.domNode.saveMarker(this.saveSelection),this.saveSelection.restore()},e.prototype.removeEmptyListElements=function(){for(var e=this.parent.editableElement.querySelectorAll("ol, ul"),n=0;n<e.length;n++)""===e[n].textContent.trim()&&t.detach(e[n])},e.prototype.isRevert=function(e,t){for(var n=!0,i=0;i<e.length;i++){if("LI"!==e[i].tagName)return!1;e[i].parentNode.tagName!==t&&(n=!1)}return n},e.prototype.checkLists=function(e,n){for(var i=[],o=0;o<e.length;o++){var r=e[o].parentNode;"LI"===e[o].tagName&&r.tagName!==n&&i.indexOf(r)<0&&i.push(r)}for(var s=[],a=0;a<i.length;a++){var l=i[a].closest("LI");!t.isNullOrUndefined(l)&&i.indexOf(l.parentElement)<0&&l.parentElement.innerText===i[a].innerText&&s.push(l.parentElement)}for(var d=(i=s.concat(i)).length-1;d>=0;d--){var c=i[d],p="<"+n.toLowerCase()+" "+this.domNode.attributes(c)+">"+c.innerHTML+"</"+n.toLowerCase()+">";this.domNode.replaceWith(i[d],p)}},e.prototype.cleanNode=function(){for(var e=this.parent.editableElement.querySelectorAll("ol + ol, ul + ul"),t=0;t<e.length;t++){var n=e[t];if(this.domNode.isList(n.previousElementSibling)&&this.domNode.openTagString(n)===this.domNode.openTagString(n.previousElementSibling)){for(var i=this.domNode.contents(n),o=0;o<i.length;o++)n.previousElementSibling.appendChild(i[o]);n.parentNode.removeChild(n)}}},e.prototype.findUnSelected=function(e,t){if((e=e.slice().reverse()).length>0){var n=[],i=[],o=[],r=[];o=t[t.length-1].childNodes;for(var s=0;s<o.length;s++)if("OL"===o[s].tagName||"UL"===o[s].tagName){var a=o[s].querySelectorAll("li");if(a.length>0)for(var l=0;l<a.length;l++)r.push(a[l])}for(var d=0;d<r.length;d++){for(var c=0,p=0;p<e.length;p++)r[d].contains(e[p])||(c+=1);c===e.length&&i.push(r[d])}if(i.length>0)for(var h=0;h<i.length;h++)"OL"!==this.domNode.contents(i[h])[0].nodeName&&"UL"!==this.domNode.contents(i[h])[0].nodeName&&n.push(i[h]);n.length>0&&this.nestedList(n)}},e.prototype.revertList=function(e){for(var n=[],i=e.length-1;i>=0;i--)for(var o=i-1;o>=0;o--)if(e[o].contains(e[i])||e[o]===e[i]){n.push(e[i]),e.splice(i,1);break}this.findUnSelected(n,e);var r=[];for(i=0;i<e.length;i++){var s=e[i];3===this.domNode.contents(s)[0].nodeType&&0===this.domNode.contents(s)[0].textContent.trim().length&&t.detach(this.domNode.contents(s)[0]);var a=e[i].parentNode,l=s.getAttribute("class");if(0===n.length){var d=e[i].querySelectorAll("ul, ol")[0];if(d){if(d.querySelectorAll("li")){var c=t.createElement(d.tagName);t.append([c],d.parentNode);var p=t.createElement("li",{styles:"list-style-type: none;"});t.append([p],c),t.append([d],p)}}}if(s.parentNode.insertBefore(this.closeTag(a.tagName),s),"LI"===a.parentNode.tagName)s.parentNode.insertBefore(this.closeTag("LI"),s);else{if(0===s.querySelectorAll(go.join(", ")).length){var h="<p"+(t.isNullOrUndefined(l)?' class="e-rte-wrap-inner"':' class="'+l+' e-rte-wrap-inner"')+this.domNode.attributes(a)+"></p>";this.domNode.wrapInner(s,this.domNode.parseHTMLFragment(h))}else if(3===this.domNode.contents(s)[0].nodeType){var u=this.domNode.createTagString("p",a,this.parent.domNode.encode(this.domNode.contents(s)[0].textContent));this.domNode.replaceWith(this.domNode.contents(s)[0],u)}else if(this.domNode.contents(s)[0].classList.contains(Eo.startSelection)||this.domNode.contents(s)[0].classList.contains(Eo.endSelection)){u=this.domNode.createTagString("p",a,this.domNode.contents(s)[0].outerHTML);this.domNode.replaceWith(this.domNode.contents(s)[0],u)}else{var m=s.firstChild;l=m.getAttribute("class"),t.attributes(m,this.domNode.rawAttributes(a)),l&&m.getAttribute("class")&&t.attributes(m,{class:l+" "+m.getAttribute("class")})}t.append([this.openTag("LI")],s),t.prepend([this.closeTag("LI")],s)}this.domNode.insertAfter(this.openTag(a.tagName),s),"LI"===a.parentNode.tagName&&(a=a.parentNode.parentNode),r.indexOf(a)<0&&r.push(a)}for(i=0;i<r.length;i++){var g=r[i],f=g.innerHTML;f=(f=f.replace(/<span class="e-rte-list-close-([a-z]*)"><\/span>/g,"</$1>")).replace(/<span class="e-rte-list-open-([a-z]*)"><\/span>/g,"<$1 "+this.domNode.attributes(g)+">"),this.domNode.replaceWith(g,this.domNode.openTagString(g)+f.trim()+this.domNode.closeTagString(g))}var b=this.parent.editableElement.querySelectorAll("ul:empty, ol:empty");for(i=0;i<b.length;i++)t.detach(b[i]);var v=this.parent.editableElement.querySelectorAll("li:empty");for(i=0;i<v.length;i++)t.detach(v[i])},e.prototype.openTag=function(e){return this.domNode.parseHTMLFragment('<span class="e-rte-list-open-'+e.toLowerCase()+'"></span>')},e.prototype.closeTag=function(e){return this.domNode.parseHTMLFragment('<span class="e-rte-list-close-'+e.toLowerCase()+'"></span>')},e}(),Lo=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}(),xo=function(){function e(){this.position=-1,this.nodeSelection=new So}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){if(t=o.childNodes[r],(s=this.spliceEmptyNode(s,!1))&&s.childNodes.length>0){if(!!(1!==s.childNodes.length||"IMG"===s.childNodes[0].nodeName||!this.isImgElm(s)||""!==s.textContent))if(t)Lo.AppendBefore(s,t);else{o.appendChild(s);(a=document.createElement("div")).innerHTML="&#65279;&#65279;",t=a.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){if(!!(1!==s.childNodes.length||"IMG"===s.childNodes[0].nodeName||!this.isImgElm(s)||""!==s.textContent))if(t)Lo.AppendBefore(s,t,!0);else{o.appendChild(s);var a;(a=document.createElement("div")).innerHTML="&#65279;&#65279;",o.insertBefore(a.firstChild,o.firstChild),t=o.firstChild}}return t}return null},e.prototype.isImgElm=function(e){var n=!0;if(1===e.childNodes.length&&"IMG"!==e.childNodes[0].nodeName)for(var i=e.childNodes[0],o=0;!t.isNullOrUndefined(i.childNodes)&&o<i.childNodes.length;o++)"IMG"===i.childNodes[o].nodeName&&(n=!1);else n=!0;return n},e.prototype.spliceEmptyNode=function(e,t){var n;return(n=1===e.childNodes.length&&"#text"===e.childNodes[0].nodeName&&""===e.childNodes[0].textContent||""===e.textContent?-1:e.childNodes.length-1)>-1&&!t?this.spliceEmptyNode(e.childNodes[n],t):n>-1?this.spliceEmptyNode(e.childNodes[0],t):3!==e.nodeType&&11!==e.nodeType&&e.parentNode.removeChild(e),e},e.prototype.GetCursorStart=function(e,t,n){for(var i=(e=n?e:e.reverse())[0],o=0;o<e.length&&(n?e[o]<t:e[o]>=t);o++)i=e[o];return i},e.prototype.GetCursorRange=function(e,t,n){var i=e.createRange(),o=[];o.push(0);for(var r=this.TrimLineBreak(n.data),s=r.indexOf(" ",0);-1!==s;)o.indexOf(s)<0&&o.push(s),new RegExp("\\s").test(r[s-1])&&o.indexOf(s-1)<0&&o.push(s-1),new RegExp("\\s").test(r[s+1])&&o.push(s+1),s=r.indexOf(" ",s+1);if(o.push(r.length),o.indexOf(t.startOffset)>=0||o.indexOf(t.startOffset-1)>=0&&(1!==t.startOffset||1===t.startOffset&&new RegExp("\\s").test(r[0]))||o[o.length-1]-1===t.startOffset)i=t,this.position=1;else{var a=this.GetCursorStart(o,t.startOffset,!0);this.position=t.startOffset-a,i.setStart(t.startContainer,a),i.setEnd(t.startContainer,this.GetCursorStart(o,t.startOffset,!1))}return i},e.prototype.GetCursorNode=function(e,t,n){return this.GetSpliceNode(this.GetCursorRange(e,t,n),n)},e.prototype.TrimLineBreak=function(e){return e.replace(/(\r\n\t|\n|\r\t)/gm," ")},e}(),Oo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Ni,this.applyFormats,this),this.parent.observer.on(ki,this.onKeyDown,this)},e.prototype.getParentNode=function(e){for(;e.parentNode&&e.parentNode!==this.parent.editableElement;null)e=e.parentNode;return e},e.prototype.onKeyDown=function(e){if(13===e.event.which){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=0===n.startContainer.textContent.length||"PRE"===n.startContainer.nodeName?n.startContainer:n.startContainer.parentElement,o=0===n.endContainer.textContent.length||"PRE"===n.endContainer.nodeName?n.endContainer:n.endContainer.parentElement,r=t.closest(i,"pre"),s=t.closest(o,"pre");if(!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(r.parentElement)&&"LI"===r.parentElement.tagName)return;if((t.isNullOrUndefined(r)&&!t.isNullOrUndefined(s)||!t.isNullOrUndefined(r)&&t.isNullOrUndefined(s))&&(e.event.preventDefault(),this.deleteContent(n),this.removeCodeContent(n),n=this.parent.nodeSelection.getRange(this.parent.currentDocument),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,o,0)),13===e.event.which&&!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(s)){e.event.preventDefault(),this.deleteContent(n),this.removeCodeContent(n);var a=(n=this.parent.nodeSelection.getRange(this.parent.currentDocument)).startContainer.childNodes[n.endOffset],l=n.startContainer.childNodes[n.endOffset-1],d=n.startContainer;if(t.isNullOrUndefined(a)||t.isNullOrUndefined(l)||!t.isNullOrUndefined(a.nextSibling)||"BR"!==a.nodeName||"BR"!==l.nodeName)if(8203===d.textContent.charCodeAt(0)&&1===d.textContent.length||0===d.textContent.length){for(;"PRE"!==d.parentElement.nodeName&&(1===d.textContent.length||0===d.textContent.length);)d=d.parentElement;!t.isNullOrUndefined(d.previousSibling)&&"BR"===d.previousSibling.nodeName&&t.isNullOrUndefined(d.nextSibling)?this.paraFocus(d.parentElement):this.isNotEndCursor(r,n)}else this.isNotEndCursor(r,n);else this.paraFocus(n.startContainer)}}},e.prototype.removeCodeContent=function(e){var n=new RegExp(String.fromCharCode(65279),"g");if(!t.isNullOrUndefined(e.endContainer.textContent.match(n))){var i=65279===e.endContainer.textContent.charCodeAt(e.endOffset-1)?e.endOffset-2:e.endOffset;e.endContainer.textContent=e.endContainer.textContent.replace(n,""),""===e.endContainer.textContent?this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e.endContainer.parentElement,0):this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e.endContainer,i)}},e.prototype.deleteContent=function(e){e.startContainer===e.endContainer&&e.startOffset===e.endOffset||e.deleteContents()},e.prototype.paraFocus=function(e){var n=t.createElement("p");n.innerHTML="<br>",this.parent.domNode.insertAfter(n,e),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,n,0),t.detach(e.lastChild)},e.prototype.isNotEndCursor=function(e,n){var i=new xo,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||(i=!0);var o=this.parent.nodeSelection.save(n,this.parent.currentDocument);this.parent.domNode.setMarker(o);for(var r=this.parent.domNode.blockNodes(),s=0;s<r.length;s++){var a=void 0,l=void 0;if("blockquote"===e.subCommand.toLowerCase()?(a=this.getParentNode(r[s]),l=this.parent.domNode.isList(a)||"TABLE"===a.tagName?a.outerHTML:a.innerHTML):l=(a=r[s]).innerHTML,!(e.subCommand.toLowerCase()===a.tagName.toLowerCase()&&("pre"!==e.subCommand.toLowerCase()||!t.isNullOrUndefined(e.exeValue)&&"dropDownSelect"===e.exeValue.name)||t.isNullOrUndefined(a.parentNode)||"LI"===a.tagName&&"pre"!==e.subCommand.toLowerCase()||"TABLE"===a.tagName&&"pre"===e.subCommand.toLowerCase())){this.cleanFormats(a,e.subCommand);var d="pre"===e.subCommand.toLowerCase()&&"pre"===a.tagName.toLowerCase()?"p":e.subCommand,c=this.parent.domNode.createTagString(d,a,l.replace(/>\s+</g,"><"));"LI"===a.tagName?(a.innerHTML="",a.insertAdjacentHTML("beforeend",c)):this.parent.domNode.replaceWith(a,c)}}this.preFormatMerge();var p=this.parent.editableElement.querySelector("."+Eo.startSelection),h=this.parent.editableElement.querySelector("."+Eo.endSelection);t.isNullOrUndefined(p)||t.isNullOrUndefined(h)||(p=p.lastChild,h=h.lastChild),o=this.parent.domNode.saveMarker(o,null),O()&&D(this.parent.editableElement,e.selector),i?this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,p,h,0,h.textContent.length):o.restore(),e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes()})},e.prototype.preFormatMerge=function(){var e=this.parent.editableElement.querySelectorAll("PRE");if(!t.isNullOrUndefined(e))for(var n=0;n<e.length;n++){var i=e[n].previousElementSibling;t.isNullOrUndefined(i)||"PRE"!==i.tagName||(i.insertAdjacentHTML("beforeend","<br>"+e[n].innerHTML),t.detach(e[n]))}},e.prototype.cleanFormats=function(e,t){var n=["display","font-size","margin-top","margin-bottom","margin-left","margin-right","font-weight"];t=t.toLowerCase();for(var i=0;i<n.length&&"p"!==t&&"blockquote"!==t&&"pre"!==t;i++)e.style.removeProperty(n[i])},e}(),Do=function(){function e(){}return e.Insert=function(e,n,i,o){var r;if("string"==typeof n){(s=document.createElement("div")).innerHTML=n,r=o?s:s.firstChild}else if(o&&(t.isNullOrUndefined(n)||t.isNullOrUndefined(n.classList)||!n.classList.contains("pasteContent"))){var s;(s=document.createElement("div")).appendChild(n),r=s}else r=n;var a=new So,l=new xo,d=a.getRange(e),c=d.startOffset===d.endOffset&&0===d.startOffset&&d.startContainer===d.endContainer,p=d.collapsed,h=a.getInsertNodeCollection(d),u="table"===r.nodeName.toLowerCase()?this.closestEle(h[0].parentNode,i):h[0];if(o||!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(r.classList)&&r.classList.contains("pasteContent"))this.pasteInsertHTML(h,r,d,a,l,e,p,u,i);else if(i!==d.startContainer&&(!p&&(u.nodeType!==Node.ELEMENT_NODE||-1===bo.indexOf(u.tagName.toLocaleLowerCase()))||"table"===r.nodeName.toLowerCase()&&u&&-1===bo.indexOf(u.tagName.toLocaleLowerCase()))){var m=l.GetSpliceNode(d,u),g=m.previousSibling,f=m.parentNode;if(1===h.length)a.setSelectionContents(e,m),d=a.getRange(e);else{var b=l.GetSpliceNode(d,h[h.length-1].parentElement);b=t.isNullOrUndefined(b)?m:b,a.setSelectionText(e,m,b,0,3===b.nodeType?b.textContent.length:b.childNodes.length),d=a.getRange(e)}d.extractContents(),"TABLE"===n.tagName&&this.removeEmptyElements(i);for(var v=0;v<h.length;v++)if(3!==h[v].nodeType&&null!=h[v].parentNode){if("IMG"===h[v].nodeName)continue;h[v].parentNode.removeChild(h[v])}if(g)Lo.AppendBefore(r,g,!0);else{for(var y=null;f!==i&&f.firstChild&&""===f.textContent.trim();){y=f,f=f.parentNode}null!==y&&(f=y),f.firstChild&&(f!==i||"TABLE"===r.nodeName&&c&&f===d.startContainer&&f===d.endContainer)?""===f.textContent.trim()&&f!==i?(Lo.AppendBefore(r,f,!1),t.detach(f)):Lo.AppendBefore(r,f.firstChild,!1):f.appendChild(r)}"IMG"===r.nodeName?this.imageFocus(r,a,e):3!==r.nodeType?a.setSelectionText(e,r,r,0,r.childNodes.length):a.setSelectionText(e,r,r,0,r.textContent.length)}else{if(d.deleteContents(),c&&""===d.startContainer.textContent&&(d.startContainer.innerHTML=""),t.Browser.isIE){var C=e.createDocumentFragment();C.appendChild(r),d.insertNode(C)}else d.insertNode(r);3!==r.nodeType&&r.childNodes.length>0?a.setSelectionText(e,r,r,1,1):"IMG"===r.nodeName?this.imageFocus(r,a,e):3!==r.nodeType?a.setSelectionContents(e,r):a.setSelectionText(e,r,r,r.textContent.length,r.textContent.length)}},e.pasteInsertHTML=function(e,n,i,o,r,s,a,l,d){var c=i.startOffset===i.endOffset&&i.startContainer===i.endContainer;if(c&&i.startContainer===d&&""===d.textContent){var p=this.getImmediateBlockNode(e[e.length-1],d);o.setSelectionText(s,p,p,0,0),i=o.getRange(s)}var h,u,m,g;d!==i.startContainer&&(!a&&(l.nodeType!==Node.ELEMENT_NODE||-1===bo.indexOf(l.tagName.toLocaleLowerCase()))||"table"===n.nodeName.toLowerCase()&&l&&-1===bo.indexOf(l.tagName.toLocaleLowerCase()))&&(g=r.GetSpliceNode(i,l),u=t.isNullOrUndefined(g.previousSibling)?g.parentNode.previousSibling:g.previousSibling,1===e.length?(o.setSelectionContents(s,g),i=o.getRange(s),m=!0):(h=r.GetSpliceNode(i,e[e.length-1].parentElement),h=t.isNullOrUndefined(h)?g:h,o.setSelectionText(s,g,h,0,3===h.nodeType?h.textContent.length:h.childNodes.length),i=o.getRange(s),m=!1));var f=!1;this.removingComments(n);for(var b=n.childNodes,v=0;v<b.length;v++)if(go.indexOf(b[v].nodeName.toLocaleLowerCase())>=0){f=!0;break}var y,C=document.createDocumentFragment();if(f){var T=this.getImmediateBlockNode(e[e.length-1],d),S=r.GetSpliceNode(i,T);S.parentNode.replaceChild(n,S);var E=!0,N=void 0,k=void 0,w=void 0;for(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 L=t.createElement("p");n.parentElement.insertBefore(L,n)}n.previousElementSibling.appendChild(n.firstChild)}else y=n.firstChild,"#text"===n.firstChild.nodeName||this.inlineNode.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(N?(w.appendChild(n.firstChild),C.appendChild(w)):((k=t.createElement("p")).appendChild(n.firstChild),C.appendChild(k)),w=k,N=!0):(C.appendChild(n.firstChild),N=!1),E=!1;else t.detach(n.firstChild);n.parentNode.replaceChild(C,n)}else if(c){var x=t.createElement("span",{className:"tempSpan"});for(i.insertNode(x);n.firstChild;)y=n.firstChild,C.appendChild(n.firstChild);x.parentNode.replaceChild(C,x)}else{for(;n.firstChild;)y=n.firstChild,C.appendChild(n.firstChild);m?g.parentNode.replaceChild(C,g):(i.deleteContents(),t.detach(h),t.isNullOrUndefined(u)?d.appendChild(C):u.parentNode.appendChild(C))}"#text"===y.nodeName?this.placeCursorEnd(y,n,o,s,d):this.cursorPos(y,n,o,s,d)},e.placeCursorEnd=function(e,n,i,o,r){for(e="BR"===e.nodeName?e.previousSibling:e;!t.isNullOrUndefined(e)&&"#text"!==e.nodeName&&"IMG"!==e.nodeName&&"BR"!==e.nodeName;)e=e.lastChild;"IMG"===(e=t.isNullOrUndefined(e)?n:e).nodeName?this.imageFocus(e,i,o):i.setSelectionText(o,e,e,e.textContent.length,e.textContent.length),this.removeEmptyElements(r)},e.cursorPos=function(e,n,i,o,r){e.classList.add("lastNode"),r.innerHTML=function(e){var n=document.createElement("div");n.innerHTML=e,n.setAttribute("class","tempDiv");var i=document.createElement("div");if(n.childNodes.length>0){for(var o=void 0,r=void 0,s=void 0;n.firstChild;)"#text"===n.firstChild.nodeName&&(n.firstChild.textContent.indexOf("\n")<0||""!==n.firstChild.textContent.trim())||ko.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(o?r.appendChild(n.firstChild):(s=t.createElement("p"),i.appendChild(s),s.appendChild(n.firstChild)),r=s,o=!0):"#text"===n.firstChild.nodeName&&("\n"===n.firstChild.textContent||n.firstChild.textContent.indexOf("\n")>=0&&""===n.firstChild.textContent.trim())?t.detach(n.firstChild):(i.appendChild(n.firstChild),o=!1);for(var a=i.querySelectorAll("table"),l=0;l<a.length;l++){"0"===a[l].getAttribute("border")&&a[l].removeAttribute("border");for(var d=a[l].querySelectorAll("td"),c=0;c<d.length;c++)d[c].style.removeProperty("border");a[l].classList.contains(An)||a[l].classList.add(An)}var p=i.querySelectorAll("img");for(l=0;l<p.length;l++)p[l].classList.contains(Ln)||p[l].classList.add(Ln),p[l].classList.contains(Qt)||p[l].classList.contains(zt)||p[l].classList.add(Qt)}return i.innerHTML}(r.innerHTML),e=r.querySelector(".lastNode"),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(go.indexOf(e.nodeName.toLocaleLowerCase())<0);return e},e.removingComments=function(e){var t=e.innerHTML;t=t.replace(/<!--[\s\S]*?-->/g,""),e.innerHTML=t},e.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:""===e.parentElement.textContent.trim()&&"true"!==e.parentElement.contentEditable?this.findDetachEmptyElem(e.parentElement):e},e.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++)if("IMG"!==n[i].tagName&&"BR"!==n[i].tagName&&"IFRAME"!==n[i].tagName&&"TD"!==n[i].tagName){var o=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(o)||t.detach(o)}},e.closestEle=function(e,n){for(var i=e;i&&1===i.nodeType;){if(i.parentNode===n||!t.isNullOrUndefined(i.parentNode.tagName)&&-1!==fo.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}(),Mo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(oo,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 So).getRange(this.parent.currentDocument),o=!!t.isNullOrUndefined(e.item.text)||e.item.text.replace(/ /g,"").localeCompare(i.toString().replace(/\n/g," ").replace(/ /g,""))<0;if(e.event&&"keydown"===e.event.type&&(32===e.event.keyCode||13===e.event.keyCode)||"Paste"===e.item.action||i.collapsed||o){var r=this.createAchorNode(e);if(r.innerText=""===e.item.text?e.item.url:e.item.text,e.item.selection.restore(),Do.Insert(this.parent.currentDocument,r,this.parent.editableElement),!e.event||"keydown"!==e.event.type||32!==e.event.keyCode&&13!==e.event.keyCode){d="Paste"===e.item.action?r.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,r.childNodes[0],r.childNodes[0],d,r.childNodes[0].textContent.length)}else{var s=e.item.selection.range.startContainer;s.textContent=this.removeText(s.textContent,e.item.text)}}else this.createLinkNode(e)}else{var a=n,l="";if(t.isNullOrUndefined(e.item.url)||a.setAttribute("href",e.item.url),t.isNullOrUndefined(e.item.title)||a.setAttribute("title",e.item.title),t.isNullOrUndefined(e.item.text)||(l=a.innerText,a.innerText=e.item.text),t.isNullOrUndefined(e.item.target)?a.removeAttribute("target"):a.setAttribute("target",e.item.target),l===e.item.text)e.item.selection.setSelectionText(this.parent.currentDocument,a,a,1,1),e.item.selection.restore();else{var d="Paste"===e.item.action?a.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,a.childNodes[0],a.childNodes[0],d,a.childNodes[0].textContent.length)}}e.callBack&&e.callBack({requestType:"Links",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.createLinkNode=function(e){for(var t,n,i=new So,o=new xo,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(var m=0;m<l.length;m++){var g=!0;for(t=l[m];!0===g;){if("A"===t.parentElement.nodeName){var f=t.parentElement;t.parentElement.parentElement.insertBefore(f.firstChild,f),t.parentElement.removeChild(f)}this.isBlockNode(t.parentElement)||0===l.length||0===m||m===l.length-1?(d[m]=t,g=!1):t=t.parentElement}}m=0;for(var b=0;m<d.length;m++)if(0===m&&(h[b]=d[m]),d.length>1&&m<d.length-1){if(d[m].parentElement===d[m+1].parentElement&&d[m]===d[m+1])continue;h[b+1]=d[m+1],b++}var v=0;p[v]=this.createAchorNode(e);for(m=0;m<h.length;m++)if(0===m&&(n=h[m].cloneNode(!0),p[m].appendChild(n)),m<h.length-1)if(h[m].parentNode===h[m+1].parentNode){var y=h[m+1].cloneNode(!0);p[v].appendChild(y)}else p[v+=1]=this.createAchorNode(e),n=h[m+1].cloneNode(!0),p[v].appendChild(n);this.parent.nodeSelection.setRange(document,a.range);m=0;for(var C=0,T=0;m<=h.length;m++)0===m&&(h[m].parentNode.insertBefore(p[C],h[m].nextSibling),1===this.parent.domNode.blockNodes().length&&this.parent.nodeSelection.setSelectionNode(this.parent.currentDocument,p[C]),c[T]=h[m],T++),m<h.length-1&&(h[m].parentNode===h[m+1].parentNode?(c[T]=h[m+1],T++):(C+=1,h[m+1].parentNode.insertBefore(p[C],h[m+1]),c[T]=h[m+1],T++));for(m=0;m<c.length;m++)c[m].parentNode&&c[m].parentNode.removeChild(c[m])},e.prototype.createAchorNode=function(e){var n=t.createElement("a",{className:"e-rte-anchor",attrs:{href:e.item.url,title:t.isNullOrUndefined(e.item.title)||""===e.item.title?e.item.url:e.item.title}});return t.isNullOrUndefined(e.item.target)||n.setAttribute("target",e.item.target),n},e.prototype.getSelectionNodes=function(e){e=e.reverse();for(var t=0;t<e.length;t++)3===e[t].nodeType&&""!==e[t].textContent.trim()||"IMG"!==e[t].nodeName&&(e.splice(t,1),t--);return e.reverse()},e.prototype.isBlockNode=function(e){return!!e&&e.nodeType===Node.ELEMENT_NODE&&go.indexOf(e.tagName.toLowerCase())>=0},e.prototype.removeText=function(e,t){for(var n=e.split(" "),i=0;i<n.length;i++)n[i]===t&&(n.splice(i,1),i--);return n.join(" ")+" "},e.prototype.openLink=function(e){document.defaultView.open(e.item.url,e.item.target),this.callBack(e)},e.prototype.removeLink=function(e){var n=this.parent.domNode.blockNodes();if(n.length<2){this.parent.domNode.setMarker(e.item.selection);for(var i=t.closest(e.item.selectParent[0],"a"),o=i||e.item.selectParent[0],r=o.parentNode,s=[];o.firstChild;null)s.push(r.insertBefore(o.firstChild,o));r.removeChild(o),s&&1===s.length&&(e.item.selection.startContainer=e.item.selection.getNodeArray(s[s.length-1],!0),e.item.selection.endContainer=e.item.selection.startContainer),e.item.selection=this.parent.domNode.saveMarker(e.item.selection)}else for(var a=0;a<n.length;a++)for(var l=n[a].querySelectorAll("a"),d=0;d<l.length;d++)document.getSelection().containsNode(l[d],!0)&&(l[d].outerHTML=l[d].innerHTML);e.item.selection.restore(),this.callBack(e)},e.prototype.callBack=function(e){e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),Ro=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(uo,this.applyAlignment,this),this.parent.observer.on(ki,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]})}var l=this.parent.domNode.getImageTagInSelection();for(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),O()&&D(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}(),Bo=function(){function e(e){this.indentValue=20,this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(mo,this.applyIndents,this),this.parent.observer.on(ki,this.onKeyDown,this)},e.prototype.onKeyDown=function(e){switch(e.event.action){case"indents":this.applyIndents({subCommand:"Indent",callBack:e.callBack}),e.event.preventDefault();break;case"outdents":this.applyIndents({subCommand:"Outdent",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.applyIndents=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument),n=this.parent.nodeSelection.save(t,this.parent.currentDocument);this.parent.domNode.setMarker(n);for(var i=this.parent.domNode.blockNodes(),o=i.slice(),r=[],s=0;s<o.length;s++)"LI"!==o[s].tagName&&"LI"===o[s].parentNode.tagName?(i.splice(i.indexOf(o[s]),1),r.push(o[s].parentNode)):"LI"===o[s].tagName&&(i.splice(i.indexOf(o[s]),1),r.push(o[s]));r.length>0&&this.parent.observer.notify(ki,{event:{preventDefault:function(){},stopPropagation:function(){},shiftKey:"Indent"!==e.subCommand,which:9,action:"indent"},ignoreDefault:!0});for(s=0;s<i.length;s++){var a=i[s],l=a.style.marginLeft,d=void 0;"Indent"===e.subCommand?(d=""===l?this.indentValue+"px":parseInt(l,null)+this.indentValue+"px",a.style.marginLeft=d):(d=""===l||"0px"===l?"":parseInt(l,null)-this.indentValue+"px",a.style.marginLeft=d)}this.parent.editableElement.focus(),O()&&D(this.parent.editableElement,e.selector),(n=this.parent.domNode.saveMarker(n)).restore(),e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes()})},e}(),Po="e-imgright",Io="e-imgleft",Ao="e-imgcenter",Ho="e-imgbreak",Uo="e-img-caption",jo="e-caption-inline",zo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(no,this.imageCommand,this)},e.prototype.imageCommand=function(e){switch(e.value.toString().toLocaleLowerCase()){case"image":case"replace":this.createImage(e);break;case"insertlink":this.insertImageLink(e);break;case"openimagelink":this.openImageLink(e);break;case"editimagelink":this.editImageLink(e);break;case"removeimagelink":this.removeImageLink(e);break;case"remove":this.removeImage(e);break;case"alttext":this.insertAltTextImage(e);break;case"dimension":this.imageDimension(e);break;case"caption":this.imageCaption(e);break;case"justifyleft":this.imageJustifyLeft(e);break;case"justifycenter":this.imageJustifyCenter(e);break;case"justifyright":this.imageJustifyRight(e);break;case"inline":this.imageInline(e);break;case"break":this.imageBreak(e)}},e.prototype.createImage=function(e){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 n=t.createElement("img");this.setStyle(n,e),t.isNullOrUndefined(e.item.selection)||e.item.selection.restore(),t.isNullOrUndefined(e.selector)||"pasteCleanupModule"!==e.selector?Do.Insert(this.parent.currentDocument,n,this.parent.editableElement):e.callBack({requestType:"Image",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:[n]})}else{var i=e.item.selectParent[0];this.setStyle(i,e)}e.callBack&&(t.isNullOrUndefined(e.selector)||!t.isNullOrUndefined(e.selector)&&"pasteCleanupModule"!==e.selector)&&e.callBack({requestType:"Image",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.setStyle=function(e,n){t.isNullOrUndefined(n.item.url)||e.setAttribute("src",n.item.url),e.setAttribute("class","e-rte-image"+(t.isNullOrUndefined(n.item.cssClass)?"":" "+n.item.cssClass)),t.isNullOrUndefined(n.item.altText)||e.setAttribute("alt",n.item.altText),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.width)||e.setAttribute("width",this.calculateStyleValue(n.item.width.width)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.height)||e.setAttribute("height",this.calculateStyleValue(n.item.height.height)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.minWidth)||(e.style.minWidth=this.calculateStyleValue(n.item.width.minWidth)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.maxWidth)||(e.style.maxWidth=this.calculateStyleValue(n.item.width.maxWidth)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.minHeight)||(e.style.minHeight=this.calculateStyleValue(n.item.height.minHeight)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.maxHeight)||(e.style.maxHeight=this.calculateStyleValue(n.item.height.maxHeight))},e.prototype.calculateStyleValue=function(e){return"string"==typeof e&&(e.indexOf("px")||e.indexOf("%")||e.indexOf("auto"))?e:e+"px"},e.prototype.insertImageLink=function(e){var n=t.createElement("a",{attrs:{href:e.item.url}});e.item.selectNode[0].parentElement.classList.contains("e-img-wrap")&&(e.item.selection.restore(),n.setAttribute("contenteditable","true")),n.appendChild(e.item.selectNode[0]),t.isNullOrUndefined(e.item.target)||n.setAttribute("target",e.item.target),Do.Insert(this.parent.currentDocument,n,this.parent.editableElement),this.callBack(e)},e.prototype.openImageLink=function(e){document.defaultView.open(e.item.url,e.item.target),this.callBack(e)},e.prototype.removeImageLink=function(e){var n=e.item.selectParent[0];if(n.classList.contains("e-img-caption")){var i=t.select(".e-img-wrap",n),o=t.select(".e-img-inner",n),r=o.cloneNode(!0);t.detach(t.select("a",n)),t.detach(o),i.appendChild(e.item.insertElement),i.appendChild(r)}else t.detach(n),t.Browser.isIE&&e.item.selection.restore(),Do.Insert(this.parent.currentDocument,e.item.insertElement,this.parent.editableElement);this.callBack(e)},e.prototype.editImageLink=function(e){e.item.selectNode[0].parentElement.href=e.item.url,t.isNullOrUndefined(e.item.target)?e.item.selectNode[0].parentElement.removeAttribute("target"):e.item.selectNode[0].parentElement.target=e.item.target,this.callBack(e)},e.prototype.removeImage=function(e){t.closest(e.item.selectNode[0],"a")?"A"!==e.item.selectNode[0].parentElement.nodeName||t.isNullOrUndefined(e.item.selectNode[0].parentElement.innerText)?t.detach(t.closest(e.item.selectNode[0],"a")):t.detach(e.item.selectNode[0]):t.isNullOrUndefined(t.closest(e.item.selectNode[0],"."+Uo))?t.detach(e.item.selectNode[0]):t.detach(t.closest(e.item.selectNode[0],"."+Uo)),this.callBack(e)},e.prototype.insertAltTextImage=function(e){e.item.selectNode[0].setAttribute("alt",e.item.altText),this.callBack(e)},e.prototype.imageDimension=function(e){var t=e.item.selectNode[0];t.style.height="",t.style.width="",t.width=e.item.width,t.height=e.item.height,this.callBack(e)},e.prototype.imageCaption=function(e){Do.Insert(this.parent.currentDocument,e.item.insertElement,this.parent.editableElement),this.callBack(e)},e.prototype.imageJustifyLeft=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,"."+Uo))||(t.removeClass([t.closest(n,"."+Uo)],Po),t.addClass([t.closest(n,"."+Uo)],Io)),"A"===n.parentElement.nodeName?(t.removeClass([n.parentElement],Po),t.addClass([n.parentElement],Io)):t.addClass([n],Io),this.callBack(e)},e.prototype.imageJustifyCenter=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,"."+Uo))||(t.removeClass([t.closest(n,"."+Uo)],Io),t.removeClass([t.closest(n,"."+Uo)],Po),t.addClass([t.closest(n,"."+Uo)],Ao)),"A"===n.parentElement.nodeName?(t.removeClass([n.parentElement],Io),t.removeClass([n.parentElement],Po),t.addClass([n.parentElement],Ao),t.addClass([n],Ao)):t.addClass([n],Ao),this.callBack(e)},e.prototype.imageJustifyRight=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,"."+Uo))||(t.removeClass([t.closest(n,"."+Uo)],Io),t.addClass([t.closest(n,"."+Uo)],Po)),"A"===n.parentElement.nodeName?(t.removeClass([n.parentElement],Io),t.addClass([n.parentElement],Po)):t.addClass([n],Po),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,"."+Uo))||(t.removeClass([t.closest(n,"."+Uo)],Ho),t.removeClass([t.closest(n,"."+Uo)],Ao),t.removeClass([t.closest(n,"."+Uo)],Io),t.removeClass([t.closest(n,"."+Uo)],Po),t.addClass([t.closest(n,"."+Uo)],jo)),this.callBack(e)},e.prototype.imageBreak=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],Ho),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,"."+Uo))||(t.removeClass([t.closest(n,"."+Uo)],jo),t.removeClass([t.closest(n,"."+Uo)],Ao),t.removeClass([t.closest(n,"."+Uo)],Io),t.removeClass([t.closest(n,"."+Uo)],Po),t.addClass([t.closest(n,"."+Uo)],Ho)),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}(),qo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(io,this.createTable,this),this.parent.observer.on(ro,this.insertRow,this),this.parent.observer.on(so,this.insertColumn,this),this.parent.observer.on(ao,this.deleteRow,this),this.parent.observer.on(lo,this.deleteColumn,this),this.parent.observer.on(co,this.removeTable,this),this.parent.observer.on(po,this.tableHeader,this),this.parent.observer.on(ho,this.tableVerticalAlign,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)/e.item.columns,r=0;r<e.item.row;r++){for(var s=t.createElement("tr"),a=0;a<e.item.columns;a++){var l=t.createElement("td");l.appendChild(t.createElement("br")),l.style.width=o+"%",s.appendChild(l)}i.appendChild(s)}return n.appendChild(i),e.item.selection.restore(),Do.Insert(this.parent.currentDocument,n,this.parent.editableElement),this.removeEmptyNode(),e.item.selection.setSelectionText(this.parent.currentDocument,n.querySelector("td"),n.querySelector("td"),0,0),n.querySelector("td").classList.add("e-cell-select"),e.callBack&&e.callBack({requestType:"Table",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:[n]}),n},e.prototype.calculateStyleValue=function(e){return"string"==typeof e&&(e.indexOf("px")||e.indexOf("%")||e.indexOf("auto"))?e:e+"px"},e.prototype.removeEmptyNode=function(){for(var e=this.parent.editableElement.querySelectorAll("ul:empty, ol:empty"),n=0;n<e.length;n++)t.detach(e[n]);var i=this.parent.editableElement.querySelectorAll("li *:empty");for(n=0;n<i.length;n++)t.detach(i[n]),i.length===n+1&&(i=this.parent.editableElement.querySelectorAll("li *:empty"),n=-1);var o=this.parent.editableElement.querySelectorAll("li:empty");for(n=0;n<o.length;n++)t.detach(o[n])},e.prototype.insertAfter=function(e,t){t.parentNode.insertBefore(e,t.nextSibling)},e.prototype.insertRow=function(e){var n=e.item.selection.range.startContainer;if("th"!==(n=3===n.nodeType?n.parentNode:n).nodeName.toLowerCase()||"InsertRowBefore"!==e.item.subCommand){var i,o=t.closest(n,"tr");if("th"!==n.nodeName.toLowerCase()){i=t.closest(n,"tr").cloneNode(!0);var r=Array.prototype.slice.call(i.querySelectorAll("td"));Array.prototype.forEach.call(r,function(e){e.innerHTML="",e.appendChild(t.createElement("br")),e.removeAttribute("class")})}else{var s=o.childNodes;i=t.createElement("tr");for(var a=0;a<s.length;a++){var l=t.createElement("td");l.appendChild(t.createElement("br")),i.appendChild(l)}}"InsertRowBefore"===e.item.subCommand?o.parentElement.insertBefore(i,o):this.insertAfter(i,o),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;n="TD"!==(n=3===n.nodeType?n.parentNode:n).nodeName?t.closest(n,"td,th"):n;for(var i,o=t.closest(n,"tr"),r=t.closest(o,"table").rows,s=Array.prototype.slice.call(o.querySelectorAll("th,td")).indexOf(n),a=parseInt(e.item.width,10)/(o.querySelectorAll("td,th").length+1),l=0;l<t.closest(o,"table").querySelectorAll("th,td").length;l++)t.closest(o,"table").querySelectorAll("th,td")[l].style.width=a+"%";for(var d=0;d<r.length;d++){var c=(i=r[d].querySelectorAll("th,td")[s]).cloneNode(!0);c.innerHTML="",c.appendChild(t.createElement("br")),c.removeAttribute("class"),"InsertColumnLeft"===e.item.subCommand?i.parentElement.insertBefore(c,i):this.insertAfter(c,i)}e.item.selection.setSelectionText(this.parent.currentDocument,n,n,0,0),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.deleteColumn=function(e){var n=e.item.selection.range.startContainer,i=(n=3===n.nodeType?n.parentNode:n).cellIndex,o=t.closest(n,"table"),r=t.closest(n,"tr"),s=t.closest(r,"table").rows;if(1===r.querySelectorAll("th,td").length)e.item.selection.restore(),t.detach(t.closest(n.parentElement,"table"));else for(var a=0;a<s.length;a++)s[a].deleteCell(i),t.Browser.isIE&&(e.item.selection.setSelectionText(this.parent.currentDocument,o.querySelector("td"),o.querySelector("td"),0,0),o.querySelector("td, th").classList.add("e-cell-select"));if(e.callBack){var l=this.parent.nodeSelection.getRange(this.parent.currentDocument).startContainer;if("TD"!==l.nodeName){var d=this.parent.nodeSelection.getRange(this.parent.currentDocument).startOffset,c=l.children[d];this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,c,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,i=(n=3===n.nodeType?n.parentNode:n).parentNode.rowIndex,o=t.closest(n,"table");1===o.rows.length?(e.item.selection.restore(),t.detach(t.closest(n.parentElement,"table"))):("TH"===n.tagName?t.detach(o.querySelector("thead")):o.deleteRow(i),e.item.selection.setSelectionText(this.parent.currentDocument,o.querySelector("td"),o.querySelector("td"),0,0),o.querySelector("td, th").classList.add("e-cell-select")),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.removeTable=function(e){var n=e.item.selection.range.startContainer;n=3===n.nodeType?n.parentNode:n;var i=t.closest(n.parentElement,"table");i&&(e.item.selection.restore(),t.detach(i)),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.tableHeader=function(e){var n=!1,i=e.item.selection.range.startContainer;i=3===i.nodeType?i.parentNode:i;var o=t.closest(i.parentElement,"table");if([].slice.call(o.childNodes).forEach(function(e){"THEAD"===e.nodeName&&(n=!0)}),o&&!n)for(var r=o.querySelector("tr").childElementCount,s=o.createTHead().insertRow(0),a=0;a<r;a++){var l=t.createElement("th");l.appendChild(t.createElement("br")),s.appendChild(l)}else o.deleteTHead();e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.tableVerticalAlign=function(e){"AlignTop"===e.item.subCommand?e.item.tableCell.style.verticalAlign="top":"AlignMiddle"===e.item.subCommand?e.item.tableCell.style.verticalAlign="middle":e.item.tableCell.style.verticalAlign="bottom",e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),_o=function(){function e(){}return e.prototype.getFormattedNode=function(e,t,n){var i=this.getFormatParent(e,t,n);return null!==i&&i!==n?i:null},e.prototype.getFormatParent=function(e,t,n){do{e=e.parentNode}while(e&&e!==n&&!this.isFormattedNode(e,t));return e},e.prototype.isFormattedNode=function(t,n){switch(n){case"bold":return e.isBold(t);case"italic":return e.isItalic(t);case"underline":return e.isUnderline(t);case"strikethrough":return e.isStrikethrough(t);case"superscript":return e.isSuperscript(t);case"subscript":return e.isSubscript(t);case"fontcolor":return this.isFontColor(t);case"fontname":return this.isFontName(t);case"fontsize":return this.isFontSize(t);case"backgroundcolor":return this.isBackgroundColor(t);default:return!1}},e.isBold=function(e){return-1!==["strong","b"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"bold"!==e.style.fontWeight)},e.isItalic=function(e){return-1!==["em","i"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"italic"!==e.style.fontStyle)},e.isUnderline=function(e){return-1!==["u"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"underline"!==e.style.textDecoration)},e.isStrikethrough=function(e){return-1!==["del","strike"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"line-through"!==e.style.textDecoration)},e.isSuperscript=function(e){return-1!==["sup"].indexOf(e.nodeName.toLowerCase())},e.isSubscript=function(e){return-1!==["sub"].indexOf(e.nodeName.toLowerCase())},e.prototype.isFontColor=function(t){var n=t.style&&t.style.color;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.prototype.isBackgroundColor=function(t){var n=t.style&&t.style.backgroundColor;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.prototype.isFontSize=function(t){var n=t.style&&t.style.fontSize;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.prototype.isFontName=function(t){var n=t.style&&t.style.fontFamily;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.inlineTags=["a","abbr","acronym","b","bdo","big","cite","code","dfn","em","i","kbd","label","q","samp","small","span","strong","sub","sup","tt","u","var"],e}(),Fo=function(){function e(){}return e.applyFormat=function(e,t,n,i,o){if(["bold","italic","underline","strikethrough","superscript","subscript","uppercase","lowercase","fontcolor","fontname","fontsize","backgroundcolor"].indexOf(t)>-1){"backgroundcolor"===t&&""===i&&(i="transparent");var r=new So,s=new xo,a=new _o,l=r.getRange(e),d=r.save(l,e),c=l.collapsed?r.getSelectionNodeCollection(l):r.getSelectionNodeCollectionBr(l),p=!1,h=!1,u=!1,m=["fontcolor","fontname","fontsize","backgroundcolor"].indexOf(t)>-1;if(l.collapsed)if(c.length>0)p=!0,l=s.GetCursorRange(e,l,c[0]);else if("td"!==l.startContainer.nodeName.toLowerCase()){var g=this.insertCursorNode(e,r,l,a,s,t,i,n);r.endContainer=r.startContainer=r.getNodeArray(g,!0),r.endOffset=r.startOffset=1}u=l.collapsed;for(var f=0;f<c.length;f++){var b=a.getFormattedNode(c[f],t,n);0===f&&null===b&&(h=!0),c[f]=null===b||h&&!m?this.insertFormat(e,c,f,b,u,h,m,l,s,t,i):this.removeFormat(c,f,b,u,h,m,l,s,t,i,r),r=this.applySelection(c,r,s,f,p)}O()&&D(n,o),d.restore()}},e.insertCursorNode=function(e,t,n,i,o,r,s,a){var l=t.getNodeCollection(n),d=l.length>0?i.getFormattedNode(l[0],r,a):null,c=null;return d?(c=l[0],Lo.unwrap(d)):c=this.getInsertNode(e,n,r,s).firstChild,c},e.removeFormat=function(e,n,i,o,r,s,a,l,d,c,p){var h=null;if(a.startContainer!==a.endContainer||0!==a.startOffset||a.endOffset!==a.startContainer.length){var u=[],m=e[n];do{u.push(p.getIndex(m)),m=m.parentNode}while(m&&m!==i);if("BR"!==e[n].nodeName&&(m=h=o&&i.textContent.length-1===a.startOffset?l.SplitNode(a,i,!0):l.GetSpliceNode(a,i)),o){for(var g=h;null!==g.firstChild&&3!==g.firstChild.nodeType;null)g=g.firstChild;g.innerHTML="&#8203;",e[n]=g.firstChild}else{for(;m&&m.childNodes.length>0&&u.length-1>=0&&m.childNodes.length>u[u.length-1];)m=m.childNodes[u[u.length-1]],u.pop();if("BR"!==e[n].nodeName)if(3!==m.nodeType||o&&""===m.nodeValue){var f=document.createElement("div");f.innerHTML="&#8203;",3!==m.nodeType?(m.insertBefore(f.firstChild,m.firstChild),e[n]=m.firstChild):(m.parentNode.insertBefore(f.firstChild,m),e[n]=m.previousSibling,m.parentNode.removeChild(m))}else e[n]=m}}var b;"backgroundcolor"===d&&(b=i.style.fontSize);var v;if("fontsize"===d){var y=t.closest(e[n].parentElement,"span[style*=background-color]");t.isNullOrUndefined(y)||(v=y.style.backgroundColor)}var C=Lo.unwrap(i);if(C.length>0&&s){for(var T=0;T<C.length;T++)C[T]=Lo.Wrap(C[T],this.GetFormatNode(d,c));var S=e[n].parentElement;if(t.isNullOrUndefined(b)||""===b||(S.style.fontSize=b),t.isNullOrUndefined(v)||""===v||(S.style.backgroundColor=v),"backgroundcolor"===d&&!t.isNullOrUndefined(b)&&""!==b&&S.parentElement.innerHTML===S.outerHTML){var E=S.parentElement;E.parentElement.insertBefore(S,E),t.detach(E)}if("fontsize"===d){for(var N=e[n].parentElement,k=e[n].parentElement;!t.isNullOrUndefined(k)&&"li"!==k.tagName.toLowerCase();)N=k=k.parentElement;t.isNullOrUndefined(N)||"li"!==N.tagName.toLowerCase()||N.textContent.trim()!==e[n].textContent.trim()||(N.style.fontSize=c)}}return e[n]},e.insertFormat=function(e,n,i,o,r,s,a,l,d,c,p){if(r)if("uppercase"!==c&&"lowercase"!==c){h=this.getInsertNode(e,l,c,p);n[i]=h.firstChild,d.position=1}else d.position=l.startOffset;else if(null===o&&s||a){if("BR"!==n[i].nodeName&&(n[i]=d.GetSpliceNode(l,n[i]),n[i].textContent=d.TrimLineBreak(n[i].textContent)),"uppercase"===c||"lowercase"===c)n[i].textContent="uppercase"===c?n[i].textContent.toLocaleUpperCase():n[i].textContent.toLocaleLowerCase();else if(!0!==a||""!==p){var h=this.GetFormatNode(c,p);if("fontsize"===c){for(var u=n[i].parentElement,m=n[i].parentElement;!t.isNullOrUndefined(m)&&"li"!==m.tagName.toLowerCase();)u=m=m.parentElement;t.isNullOrUndefined(u)||"li"!==u.tagName.toLowerCase()||u.textContent.trim()!==n[i].textContent.trim()||(u.style.fontSize=p),n[i]=this.applyStyles(n,i,h);var g=t.closest(n[i].parentElement,"span[style*=background-color]");t.isNullOrUndefined(g)||(n[i].parentElement.style.backgroundColor=g.style.backgroundColor)}else n[i]=this.applyStyles(n,i,h)}}else n[i]=d.GetSpliceNode(l,n[i]);return n[i]},e.applyStyles=function(e,t,n){return e[t]=t===e.length-1||"BR"===e[t].nodeName?Lo.Wrap(e[t],n):Lo.WrapBefore(e[t],n,!0),e[t]=this.getChildNode(e[t],n),e[t]},e.getInsertNode=function(e,n,i,o){var r=this.GetFormatNode(i,o);if(r.innerHTML="&#8203;",t.Browser.isIE){var s=e.createDocumentFragment();s.appendChild(r),n.insertNode(s)}else n.insertNode(r);return r},e.getChildNode=function(e,t){return void 0!==e&&null!==e||(t.innerHTML="&#8203;",e=t.firstChild),e},e.applySelection=function(e,t,n,i,o){return 1!==e.length||o?1===e.length&&o?(t.startContainer=t.getNodeArray(e[i],!0),t.endContainer=t.startContainer,t.startOffset=n.position,t.endOffset=n.position):0===i?(t.startContainer=t.getNodeArray(e[i],!0),t.startOffset=0):i===e.length-1&&(t.endContainer=t.getNodeArray(e[i],!1),t.endOffset=e[i].textContent.length):(t.startContainer=t.getNodeArray(e[i],!0),t.endContainer=t.startContainer,t.startOffset=0,t.endOffset=e[i].textContent.length),t},e.GetFormatNode=function(e,t){var n;switch(e){case"bold":return document.createElement("strong");case"italic":return document.createElement("em");case"underline":return n=document.createElement("span"),n.style.textDecoration="underline",n;case"strikethrough":return n=document.createElement("span"),n.style.textDecoration="line-through",n;case"superscript":return document.createElement("sup");case"subscript":return document.createElement("sub");case"fontcolor":return n=document.createElement("span"),n.style.color=t,n.style.textDecoration="inherit",n;case"fontname":return n=document.createElement("span"),n.style.fontFamily=t,n;case"fontsize":return n=document.createElement("span"),n.style.fontSize=t,n;default:return n=document.createElement("span"),n.style.backgroundColor=t,n}},e}(),Qo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(vo,this.applySelection,this),this.parent.observer.on(ki,this.keyDownHandler,this)},e.prototype.keyDownHandler=function(e){e.event.ctrlKey&&["bold","italic","underline","strikethrough","superscript","subscript","uppercase","lowercase"].indexOf(e.event.action)>-1&&(e.event.preventDefault(),Fo.applyFormat(this.parent.currentDocument,e.event.action,this.parent.editableElement),this.callBack(e,e.event.action))},e.prototype.applySelection=function(e){Fo.applyFormat(this.parent.currentDocument,e.subCommand.toLocaleLowerCase(),this.parent.editableElement,e.value,e.selector),this.callBack(e,e.subCommand)},e.prototype.callBack=function(e,t){e.callBack&&e.callBack({requestType:t,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),Wo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(yo,this.applyHtml,this)},e.prototype.applyHtml=function(e){Do.Insert(this.parent.currentDocument,e.value,this.parent.editableElement,!0),"pasteCleanup"===e.subCommand?e.callBack({requestType:e.subCommand,editorMode:"HTML",elements:e.value}):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}(),Vo=function(){function e(){}return e.clear=function(e,t,n){var i=new So,o=new xo,r=i.getRange(e),s=r.collapsed,a=i.getInsertNodeCollection(r),l=i.save(r,e);if(!s){var d=o.GetSpliceNode(r,a[0]);if(1===a.length)i.setSelectionContents(e,d),r=i.getRange(e);else{for(var c=1,p=a[a.length-c];"BR"===a[a.length-c].nodeName;)c++,p=a[a.length-c];var h=o.GetSpliceNode(r,p);i.setSelectionText(e,d,h,0,3===h.nodeType?h.textContent.length:h.childNodes.length),r=i.getRange(e)}var u=i.getNodeCollection(r),m=u.slice();this.clearInlines(i.getSelectionNodes(m),m,i.getRange(e),o,t),this.reSelection(e,l,u),r=i.getRange(e);var g=(u=i.getNodeCollection(r)).slice();this.clearBlocks(e,g,t,o,i),O()&&D(t,n),this.reSelection(e,l,u)}},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),Lo.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()||Lo.Wrap(t[o],e.createElement("p"));var r=Lo.unwrap(t[o]);1===r.length&&"p"===r[0].parentNode.nodeName.toLocaleLowerCase()&&(Lo.Wrap(t[o],e.createElement("p")),Lo.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()?Lo.unwrap(r[s]):this.BLOCK_TAGS.indexOf(r[s].nodeName.toLocaleLowerCase())>-1&&"p"===r[s].nodeName.toLocaleLowerCase()&&(Lo.Wrap(r[s],e.createElement("p")),Lo.unwrap(r[s]))}else Lo.Wrap(t[o],e.createElement("p")),Lo.unwrap(t[o])},e.clearInlines=function(e,t,n,i,o){for(var r=0;r<e.length;r++)e[r].parentNode&&_o.inlineTags.indexOf(e[r].parentNode.nodeName.toLocaleLowerCase())>-1&&(i.GetSpliceNode(n,e[r].parentNode),this.removeInlineParent(e[r].parentNode))},e.removeInlineParent=function(e){for(var t=Lo.unwrap(e),n=0;n<t.length;n++)1===t[n].parentNode.childNodes.length&&_o.inlineTags.indexOf(t[n].parentNode.nodeName.toLocaleLowerCase())>-1?this.removeInlineParent(t[n].parentNode):_o.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","table","tbody","td","tfoot","th","thead","tr","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}(),Go=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(To,this.applyClear,this),this.parent.observer.on(ki,this.onKeyDown,this)},e.prototype.onKeyDown=function(e){switch(e.event.action){case"clear-format":this.applyClear({subCommand:"ClearFormat",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.applyClear=function(e){"ClearFormat"===e.subCommand&&(Vo.clear(this.parent.currentDocument,this.parent.editableElement,e.selector),e.callBack&&e.callBack({requestType:e.subCommand,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)}))},e}(),Ko=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(wi,e,this),this.parent.observer.on(ki,this.keyDown,this),this.parent.observer.on(Ei,this.onAction,this),this.parent.observer.on(Li,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(wi,this.keyUp),this.parent.observer.off(ki,this.keyDown),this.parent.observer.off(Ei,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;switch(t.action){case"undo":t.preventDefault(),this.undo(e);break;case"redo":t.preventDefault(),this.redo(e)}},e.prototype.keyUp=function(e){17===e.event.keyCode||e.event.ctrlKey||this.saveData(e)},e.prototype.saveData=function(e){var t=(new So).getRange(this.parent.currentDocument),n=(new So).save(t,this.parent.currentDocument),i={text:this.parent.editableElement.innerHTML,range:n};this.undoRedoStack.length>=this.steps&&(this.undoRedoStack=this.undoRedoStack.slice(0,this.steps+1)),this.undoRedoStack.length>1&&this.undoRedoStack[this.undoRedoStack.length-1].range.range.collapsed===t.collapsed&&this.undoRedoStack[this.undoRedoStack.length-1].range.startOffset===n.range.startOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.endOffset===n.range.endOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.range.startContainer===n.range.startContainer&&this.undoRedoStack[this.undoRedoStack.length-1].text.trim()===i.text.trim()||(this.undoRedoStack.push(i),this.steps=this.undoRedoStack.length-1,this.steps>this.undoRedoSteps&&(this.undoRedoStack.shift(),this.steps--),e&&e.callBack&&e.callBack())},e.prototype.undo=function(e){if(this.steps>0){var t=this.undoRedoStack[this.steps-1].range,n=this.undoRedoStack[this.steps-1].text;this.parent.editableElement.innerHTML=n,this.parent.editableElement.focus(),O()&&D(this.parent.editableElement,e.selector),t.restore(),this.steps--,e.callBack&&e.callBack({requestType:"Undo",editorMode:"HTML",range:t,elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument),event:e.event})}},e.prototype.redo=function(e){if(null!=this.undoRedoStack[this.steps+1]){var t=this.undoRedoStack[this.steps+1].range;this.parent.editableElement.innerHTML=this.undoRedoStack[this.steps+1].text,this.parent.editableElement.focus(),O()&&D(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}(),Yo=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.removableElements=["o:p","style"],this.listContents=[],this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Oi,this.wordCleanup,this)},e.prototype.wordCleanup=function(e){var n=e.allowedStylePropertiesArray,i=[],o=e.args.clipboardData.getData("text/HTML"),r=e.args.clipboardData.getData("text/rtf"),s=t.createElement("p");s.setAttribute("id","MSWord-Content"),s.innerHTML=o;/class='?Mso|style='[^ ]*\bmso-/i.test(o)||/class="?Mso|style="[^ ]*\bmso-/i.test(o)||/(class="?Mso|class='?Mso|class="?Xl|class='?Xl|class=Xl|style="[^"]*\bmso-|style='[^']*\bmso-|w:WordDocument)/gi.test(o)?(this.imageConversion(s,r),o=o.replace(/<img[^>]+>/i,""),i=this.cleanUp(s,i),t.isNullOrUndefined(i[0])||"UL"===i[0].parentElement.tagName||"OL"===i[0].parentElement.tagName||this.listConverter(i),this.styleCorrection(s,n),this.removingComments(s),this.removeUnwantedElements(s),this.removeEmptyElements(s),this.breakLineAddition(s),this.removeClassName(s),e.callBack(s.innerHTML)):e.callBack(s.innerHTML)},e.prototype.imageConversion=function(e,t){this.checkVShape(e);var n=e.querySelectorAll("img"),i=[],o=[],r=[];if(n.length>0){for(var s=0;s<n.length;s++)i.push(n[s].getAttribute("src")),r.push(n[s].getAttribute("src").split("/")[n[s].getAttribute("src").split("/").length-1].split(".")[0]);var a=this.hexConversion(t);for(s=0;s<a.length;s++)o.push(this.convertToBase64(a[s]));for(s=0;s<n.length;s++)n[s].setAttribute("src",o[s]),n[s].setAttribute("id","msWordImg-"+r[s])}},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(var 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(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){for(var t,n=/\{\\pict[\s\S]+?\\bliptag\-?\d+(\\blipupi\-?\d+)?(\{\\\*\\blipuid\s?[\da-fA-F]+)?[\s\}]*?/,i=new RegExp("(?:("+n.source+"))([\\da-fA-F\\s]+)\\}","g"),o=e.match(i),r=[],s=0;s<o.length;s++)if(n.test(o[s])){if(-1!==o[s].indexOf("\\pngblip"))t="image/png";else{if(-1===o[s].indexOf("\\jpegblip"))continue;t="image/jpeg"}r.push({hex:t?o[s].replace(n,"").replace(/[^\da-fA-F]/g,""):null,type:t})}return r},e.prototype.removeClassName=function(e){for(var t=e.querySelectorAll("*[class]"),n=0;n<t.length;n++)t[n].removeAttribute("class")},e.prototype.breakLineAddition=function(e){for(var n=e.querySelectorAll("*"),i=0;i<n.length;i++)if(0===n[i].children.length&&"&nbsp;"===n[i].innerHTML&&"&nbsp;"===n[i].innerHTML&&!n[i].closest("li")){var o=this.findDetachElem(n[i]),r=t.createElement("br");t.isNullOrUndefined(o.parentElement)||(o.parentElement.insertBefore(r,o),t.detach(o))}},e.prototype.findDetachElem=function(e){return t.isNullOrUndefined(e.parentElement)||""!==e.parentElement.textContent.trim()||"TD"===e.parentElement.tagName?e:this.findDetachElem(e.parentElement)},e.prototype.removeUnwantedElements=function(e){for(var t=e.innerHTML,n=0;n<this.removableElements.length;n++){var i=new RegExp("<"+this.removableElements[n]+">","g"),o=new RegExp("</"+this.removableElements[n]+">","g");t=(t=t.replace(i,"")).replace(o,"")}e.innerHTML=t,e.querySelectorAll(":empty")},e.prototype.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:""===e.parentElement.textContent.trim()&&"MSWord-Content"!==e.parentElement.getAttribute("id")&&t.isNullOrUndefined(e.parentElement.querySelector("img"))?this.findDetachEmptyElem(e.parentElement):e},e.prototype.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++)if("IMG"!==n[i].tagName&&"BR"!==n[i].tagName&&"IFRAME"!==n[i].tagName&&"TD"!==n[i].tagName){var o=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(o)||t.detach(o)}},e.prototype.styleCorrection=function(e,n){var i=e.querySelectorAll("style");if(i.length>0){var o=i[0].innerHTML.match(/[\S ]+\s+{[\s\S]+?}/gi),r=t.isNullOrUndefined(o)?null:this.findStyleObject(o),s=Object.keys(r),a=s.map(function(e){return r[e]});a=this.removeUnwantedStyle(a,n),this.filterStyles(e,n);for(var l=void 0,d=0;d<s.length;d++){if(""===s[d].split(".")[0])l=e.getElementsByClassName(s[d].split(".")[1]);else{if(1===s[d].split(".").length&&s[d].split(".")[0].indexOf("@")>=0)continue;l=1===s[d].split(".").length&&s[d].split(".")[0].indexOf("@")<0?e.getElementsByTagName(s[d]):e.querySelectorAll(s[d])}for(var c=0;c<l.length;c++){var p=l[c].getAttribute("style");if(t.isNullOrUndefined(p)||""===p.trim())l[c].setAttribute("style",a[d]);else{for(var h=a[d].split(";"),u=0;u<h.length;u++)p.indexOf(h[u].split(":")[0])>=0&&(h.splice(u,1),u--);a[d]=h.join(";")+";";var m=a[d]+p;l[c].setAttribute("style",m)}}}}},e.prototype.filterStyles=function(e,t){for(var n=e.querySelectorAll("*[style]"),i=0;i<n.length;i++){for(var o=n[i].getAttribute("style").split(";"),r="",s=0;s<o.length;s++)t.indexOf(o[s].split(":")[0].trim())>=0&&(r+=o[s]+";");n[i].setAttribute("style",r)}},e.prototype.removeUnwantedStyle=function(e,t){for(var n=0;n<e.length;n++){var i=e[n].split(";");e[n]="";for(var o=0;o<i.length;o++)t.indexOf(i[o].split(":")[0])>=0&&(e[n]+=i[o]+";")}return e},e.prototype.findStyleObject=function(e){for(var t={},n=0;n<e.length;n++){var i=e[n],o=i.replace(/([\S ]+\s+){[\s\S]+?}/gi,"$1"),r=i.replace(/[\S ]+\s+{([\s\S]+?)}/gi,"$1");o=o.replace(/^[\s]|[\s]$/gm,""),r=r.replace(/^[\s]|[\s]$/gm,""),o=o.replace(/\n|\r|\n\r/g,""),r=r.replace(/\n|\r|\n\r/g,"");for(var s=o.split(", "),a=0;a<s.length;a++)t[s[a]]=r}return t},e.prototype.removingComments=function(e){var t=e.innerHTML;t=t.replace(/<!--[\s\S]*?-->/g,""),e.innerHTML=t},e.prototype.cleanUp=function(e,t){for(var n,i=[],o=e.querySelectorAll("*"),r=0;r<o.length;r++)-1===this.ignorableNodes.indexOf(o[r].nodeName)||3===o[r].nodeType&&""===o[r].textContent.trim()?i.push(o[r]):(o[r].className&&-1!==o[r].className.toLowerCase().indexOf("msolistparagraph")&&t.push(o[r]),!n||-1===this.blockNode.indexOf(o[r].nodeName.toLowerCase())||o[r].className&&-1!==o[r].className.toLowerCase().indexOf("msolistparagraph")||t.push(null),-1!==this.blockNode.indexOf(o[r].nodeName.toLowerCase())&&(n=!(!o[r].className||-1===o[r].className.toLowerCase().indexOf("msolistparagraph"))));return t.length&&null!==t[t.length-1]&&t.push(null),t},e.prototype.listConverter=function(e){for(var n,i,o=[],r=[],s="",a=0;a<e.length;a++)if(null!==e[a]){n=(s=e[a].getAttribute("style"))&&-1!==s.indexOf("level")?parseInt(s.charAt(s.indexOf("level")+5),null):1,this.listContents=[],this.getListContent(e[a]);var l=void 0;if(!t.isNullOrUndefined(this.listContents[0])){l=this.listContents[0].trim().length>1?"ol":"ul";for(var d=[],c=1;c<this.listContents.length;c++)d.push(this.listContents[c]);r.push({listType:l,content:d,nestedLevel:n})}}else o.push({content:this.makeConversion(r),node:e[a-1]}),r=[];for(i=e.shift();i;){for(var p=[],h=0;h<o.length;h++)if(o[h].node===i){for(var u=0;u<o[h].content.childNodes.length;u++)p.push(o[h].content.childNodes[u]);for(u=0;u<p.length;u++)i.parentElement.insertBefore(p[u],i);break}i.remove(),(i=e.shift())||(i=e.shift())}},e.prototype.makeConversion=function(e){for(var n,i,o,r=t.createElement("div"),s=1,a=0,l=0;l<e.length;l++){var d=t.createElement("p");if(d.innerHTML=e[l].content.join(" "),1===e[l].nestedLevel&&0===a&&e[l].content)r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);else if(e[l].nestedLevel===s)i.parentElement.tagName.toLowerCase()===e[l].listType?(i.parentElement.appendChild(i=t.createElement("li")),i.appendChild(d)):(n=t.createElement(e[l].listType),i.parentElement.parentElement.appendChild(n),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()));else if(e[l].nestedLevel>s)if(t.isNullOrUndefined(i))r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);else{for(var c=0;c<e[l].nestedLevel-s;c++)i.appendChild(n=t.createElement(e[l].listType)),i=t.createElement("li",{styles:"list-style-type: none;"}),n.appendChild(i);i.appendChild(d),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel),n.childNodes[0].style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel)}else if(1===e[l].nestedLevel)r.lastChild.tagName.toLowerCase()===e[l].listType?n=r.lastChild:r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);else for(o=i;o.parentElement;)if((o=o.parentElement).attributes.getNamedItem("level")){if(parseInt(o.attributes.getNamedItem("level").textContent,null)===e[l].nestedLevel){(i=t.createElement("li")).appendChild(d),o.appendChild(i);break}if(e[l].nestedLevel>parseInt(o.attributes.getNamedItem("level").textContent,null)){o.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);break}}s=e[l].nestedLevel,a++}return r},e.prototype.getListStyle=function(e,t){return t=t>0?t-1:t,"ol"===e?t<this.olData.length?this.olData[t]:this.olData[0]:t<this.ulData.length?this.ulData[t]:this.ulData[0]},e.prototype.getListContent=function(e){var n="";""!==e.firstElementChild.textContent.trim()||t.isNullOrUndefined(e.firstElementChild.firstElementChild)||"IMG"!==e.firstElementChild.firstElementChild.nodeName?(n=e.firstElementChild.textContent.trim(),this.listContents.push(n)):(n=e.innerHTML.trim(),this.listContents.push(""),this.listContents.push(n)),t.detach(e.firstElementChild),this.listContents.push(e.innerHTML)},e}(),Xo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Co,this.insertText,this)},e.prototype.insertText=function(e){var t=document.createTextNode(e.value);Do.Insert(this.parent.currentDocument,t),e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),Jo=function(){function e(e){this.currentDocument=e.document,this.editableElement=e.editableElement,this.nodeSelection=new So,this.domNode=new No(this.editableElement,this.currentDocument),this.observer=new t.Observer(this),this.listObj=new wo(this),this.formatObj=new Oo(this),this.alignmentObj=new Ro(this),this.indentsObj=new Bo(this),this.linkObj=new Mo(this),this.imgObj=new zo(this),this.selectionObj=new Qo(this),this.inserthtmlObj=new Wo(this),this.insertTextObj=new Xo(this),this.clearObj=new Go(this),this.tableObj=new qo(this),this.undoRedoManager=new Ko(this,e.options),this.msWordPaste=new Yo(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(xi,this.onPropertyChanged,this),this.observer.on(Di,this.onWordPaste,this)},e.prototype.onWordPaste=function(e){this.observer.notify(Oi,e)},e.prototype.onPropertyChanged=function(e){this.observer.notify(Li,e)},e.prototype.editorKeyDown=function(e){this.observer.notify(ki,e)},e.prototype.editorKeyUp=function(e){this.observer.notify(wi,e)},e.prototype.execCommand=function(e,t,n,i,o,r,s){switch(e.toLocaleLowerCase()){case"lists":this.observer.notify("list-type",{subCommand:t,event:n,callBack:i,selector:s});break;case"formats":this.observer.notify(Ni,{subCommand:t,event:n,callBack:i,selector:s,exeValue:r});break;case"alignments":this.observer.notify(uo,{subCommand:t,event:n,callBack:i,selector:s,value:r});break;case"indents":this.observer.notify(mo,{subCommand:t,event:n,callBack:i,selector:s});break;case"links":this.observer.notify(oo,{command:e,value:t,item:r,event:n,callBack:i});break;case"images":this.observer.notify(no,{command:e,value:t,item:r,event:n,callBack:i,selector:s});break;case"table":switch(t.toString().toLocaleLowerCase()){case"createtable":this.observer.notify(io,{item:r,event:n,callBack:i});break;case"insertrowbefore":case"insertrowafter":this.observer.notify(ro,{item:r,event:n,callBack:i});break;case"insertcolumnleft":case"insertcolumnright":this.observer.notify(so,{item:r,event:n,callBack:i});break;case"deleterow":this.observer.notify(ao,{item:r,event:n,callBack:i});break;case"deletecolumn":this.observer.notify(lo,{item:r,event:n,callBack:i});break;case"tableremove":this.observer.notify(co,{item:r,event:n,callBack:i});break;case"tableheader":this.observer.notify(po,{item:r,event:n,callBack:i});break;case"aligntop":case"alignmiddle":case"alignbottom":this.observer.notify(ho,{item:r,event:n,callBack:i})}break;case"font":case"style":case"effects":case"casing":this.observer.notify(vo,{subCommand:t,event:n,callBack:i,value:o,selector:s});break;case"inserthtml":this.observer.notify(yo,{subCommand:t,callBack:i,value:o});break;case"inserttext":this.observer.notify(Co,{subCommand:t,callBack:i,value:o});break;case"clear":this.observer.notify(To,{subCommand:t,event:n,callBack:i,selector:s});break;case"actions":this.observer.notify(Ei,{subCommand:t,event:n,callBack:i,selector:s})}},e}(),$o=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)}}(),Zo=function(e){function n(n){var i=e.call(this)||this;return i.initialize(),t.extend(i,i,n,!0),i.currentDocument&&i.element&&i.updateFormatter(i.element,i.currentDocument,n.options),i}return $o(n,e),n.prototype.initialize=function(){this.keyConfig=Fi},n.prototype.updateFormatter=function(e,t,n){e&&t&&(this.editorManager=new Jo({document:t,editableElement:e,options:n}))},n}(Mi),er={bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,unorderedlist:!1,underline:!1,alignments:null,backgroundcolor:null,fontcolor:null,fontname:null,fontsize:null,formats:null,createlink:!1,insertcode:!1},tr=function(){function e(){}return e.get=function(e,t,n,i,o,r){for(var s=JSON.parse(JSON.stringify(er)),a=JSON.parse(JSON.stringify(er)),l=new So,d=r?[r]:l.getNodeCollection(l.getRange(e)),c=d.length,p=0;p<d.length;p++)("BR"!==d[p].nodeName&&3!==d[p].nodeType||c>1&&3===d[p].nodeType&&""===d[p].textContent.trim())&&(d.splice(p,1),p--);for(p=0;p<d.length;p++)s=this.getFormatParent(e,s,d[p],t,n,i,o),(0===p&&s.bold||!s.bold)&&(a.bold=s.bold),(0===p&&s.insertcode||!s.insertcode)&&(a.insertcode=s.insertcode),(0===p&&s.italic||!s.italic)&&(a.italic=s.italic),(0===p&&s.underline||!s.underline)&&(a.underline=s.underline),(0===p&&s.strikethrough||!s.strikethrough)&&(a.strikethrough=s.strikethrough),(0===p&&s.superscript||!s.superscript)&&(a.superscript=s.superscript),(0===p&&s.subscript||!s.subscript)&&(a.subscript=s.subscript),(0===p&&s.fontcolor||!s.fontcolor)&&(a.fontcolor=s.fontcolor),(0===p&&s.fontname||!s.fontname)&&(a.fontname=s.fontname),(0===p&&s.fontsize||!s.fontsize)&&(a.fontsize=s.fontsize),(0===p&&s.backgroundcolor||!s.backgroundcolor)&&(a.backgroundcolor=s.backgroundcolor),(0===p&&s.orderedlist||!s.orderedlist)&&(a.orderedlist=s.orderedlist),(0===p&&s.unorderedlist||!s.unorderedlist)&&(a.unorderedlist=s.unorderedlist),(0===p&&s.alignments||!s.alignments)&&(a.alignments=s.alignments),(0===p&&s.formats||!s.formats)&&(a.formats=s.formats),(0===p&&s.createlink||!s.createlink)&&(a.createlink=s.createlink),s=JSON.parse(JSON.stringify(er));return a},e.getFormatParent=function(e,t,n,i,o,r,s){if(i.contains(n)||3===n.nodeType&&3!==i.nodeType&&i.contains(n.parentNode))do{t=this.isFormattedNode(e,t,n,o,r,s),n=n.parentNode}while(n&&n!==i);return t},e.isFormattedNode=function(e,t,n,i,o,r){return t.bold||(t.bold=_o.isBold(n)),t.italic||(t.italic=_o.isItalic(n)),t.underline||(t.underline=_o.isUnderline(n)),t.strikethrough||(t.strikethrough=_o.isStrikethrough(n)),t.superscript||(t.superscript=_o.isSuperscript(n)),t.subscript||(t.subscript=_o.isSubscript(n)),t.fontcolor||(t.fontcolor=this.isFontColor(e,n)),t.fontname||(t.fontname=this.isFontName(e,n,r)),t.fontsize||(t.fontsize=this.isFontSize(n,o)),t.backgroundcolor||(t.backgroundcolor=this.isBackgroundColor(n)),t.orderedlist||(t.orderedlist=this.isOrderedList(n)),t.unorderedlist||(t.unorderedlist=this.isUnorderedList(n)),t.alignments||(t.alignments=this.isAlignment(n)),t.formats||(t.formats=this.isFormats(n,i),"pre"===t.formats&&(t.insertcode=!0)),t.createlink||(t.createlink=this.isLink(n)),t},e.isFontColor=function(e,t){var n=t.style&&t.style.color;return null!==n&&void 0!==n&&""!==n||3===t.nodeType||(n=this.getComputedStyle(e,t,"color")),null!==n&&""!==n&&void 0!==n?n:null},e.isLink=function(e){return"a"===e.nodeName.toLocaleLowerCase()},e.isBackgroundColor=function(e){var t=e.style&&e.style.backgroundColor;return null!==t&&""!==t&&void 0!==t?t:null},e.isFontSize=function(e,t){var n=e.style&&e.style.fontSize;return null!==n&&""!==n&&void 0!==n&&(null===t||void 0===t||t.indexOf(n)>-1)?n:null},e.isFontName=function(e,t,n){var i=t.style&&t.style.fontFamily;null!==i&&void 0!==i&&""!==i||3===t.nodeType||(i=this.getComputedStyle(e,t,"font-family"));var o=null;return null!==i&&""!==i&&void 0!==i&&(null===n||void 0===n||n.filter(function(e,t){var n=new RegExp(i,"i");(e.replace(/"/g,"").replace(/ /g,"")===i.replace(/"/g,"").replace(/ /g,"")||e.search(n)>-1)&&(o=t)})&&null!==o)?null!==o?n[o]:i.replace(/"/g,""):null},e.isOrderedList=function(e){return"ol"===e.nodeName.toLocaleLowerCase()},e.isUnorderedList=function(e){return"ul"===e.nodeName.toLocaleLowerCase()},e.isAlignment=function(e){var t=e.style&&e.style.textAlign;return"left"===t?"justifyleft":"center"===t?"justifycenter":"right"===t?"justifyright":"justify"===t?"justifyfull":null},e.isFormats=function(e,t){return(void 0===t||null===t)&&go.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}(),nr=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on(H,this.onRefreshHandler,this),this.parent.on(I,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off(H,this.onRefreshHandler)},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=tr.get(this.parent.contentModule.getDocument(),this.parent.contentModule.getEditPanel(),i,t,n,e.documentNode),this.parent.notify(j,this.toolbarStatus)}},e}(),ir=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=E(e.value,e);this.editableElement=this.parent.createElement("div",{className:"e-content",id:this.parent.getID()+"_rte-edit-view",attrs:{contenteditable:"true"},innerHTML:n}),t.appendChild(this.editableElement),this.setPanel(t),e.element.appendChild(t)},e.prototype.getPanel=function(){return this.contentPanel},e.prototype.getEditPanel=function(){return this.editableElement},e.prototype.getText=function(){return this.getEditPanel().textContent},e.prototype.setPanel=function(e){this.contentPanel=e},e.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},e}(),or=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)}}(),rr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return or(n,e),n.prototype.renderPanel=function(){var e=this.parent,t="\n<!DOCTYPE html> \n <html>\n <head>\n <meta charset='utf-8' /> \n <style>\n @charset \"UTF-8\";\n body {\n font-family: \"Roboto\", sans-serif;\n font-size: 14px;\n }\n html, body{height: 100%;margin: 0;}\n body.e-cursor{cursor:default}\n span.e-selected-node\t{background-color: #939393;color: white;}\n span.e-selected-node.e-highlight {background-color: #1d9dd8;}\n body{color:#333;word-wrap:break-word;padding: 8px;box-sizing: border-box;}\n .e-rte-image {border: 0;cursor: pointer;display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-img-caption { display: inline-block; float: none; margin: 5px auto; max-width: 100%;position: relative;}\n .e-img-caption.e-caption-inline {display: inline-block;float: none;margin: 5px auto;margin-left: 5px;margin-right: 5px;max-width: calc(100% - (2 * 5px));position: relativetext-align: center;vertical-align: bottom;}\n .e-img-inner {box-sizing: border-box;display: block;font-size: 16px;font-weight: initial;margin: auto;opacity: .9;text-align: center;width: 100%;}\n .e-img-wrap {display: inline-block;margin: auto;padding: 0;text-align: center;width: 100%;}\n .e-imgleft {float: left;margin: 0 5px 0 0;text-align: left;}\n .e-imgright {float: right;margin: 0 0 0 5px;text-align: right;}\n .e-imgcenter {cursor: pointer;display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-control img:not(.e-resize) {border: 2px solid transparent; z-index: 1000}\n .e-imginline {display: inline-block;float: none;margin-left: 5px;margin-right: 5px;max-width: calc(100% - (2 * 5px));vertical-align: bottom;}\n .e-imgbreak {border: 0;cursor: pointer;display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-img-focus:not(.e-resize) {border: solid 2px #4a90e2;}\n img::selection { background: transparent;color: transparent;}\n span.e-rte-imageboxmark { width: 10px; height: 10px; position: absolute; display: block; 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; border-radius: 15px; height: 20px; width: 20px; }\n .e-mob-rte.e-mob-span span.e-rte-imageboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-rte-content .e-content img.e-resize { z-index: 1000; }\n .e-img-caption .e-img-inner { outline: 0; }\n .e-img-caption .e-rte-image.e-imgright, .e-img-caption .e-rte-image.e-imgleft { float: none; margin: 0;}\n body{box-sizing: border-box;min-height: 100px;outline: 0 solid transparent;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: 1em;font-weight: 400;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;font-size: inherit;line-height: inherit;margin: 0 0 10px;overflow: visible;padding: 0;white-space: pre-wrap;word-break: inherit;word-wrap: break-word;}\n strong, b{font-weight: 700;}\n a{text-decoration: none;user-select: auto;}\n a:hover{text-decoration: underline;};\n p:last-child, pre:last-child, blockquote:last-child{margin-bottom: 0;}\n h3+h4, h4+h5, h5+h6{margin-top: 00.6em;}\n ul:last-child{margin-bottom: 0;}\n table { border-collapse: collapse; empty-cells: show;}\n table td,table th {border: 1px solid #BDBDBD; height: 20px; vertical-align: middle;}\n table.e-alternate-border tbody tr:nth-child(2n) {background-color: #F5F5F5;}\n table th {background-color: #E0E0E0;}\n table.e-dashed-border td,table.e-dashed-border th { border: 1px dashed #BDBDBD} \n table .e-cell-select {border: 1px double #4a90e2;}\n span.e-table-box { cursor: nwse-resize; display: block; height: 10px; position: absolute; width: 10px; }\n span.e-table-box.e-rmob {height: 14px;width: 14px;}\n .e-row-resize, .e-column-resize { background-color: transparent; background-repeat: repeat; 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; border-top: 6px solid transparent; content: ''; display: block; height: 0; position: absolute; right: 4px; top: 4px; width: 20px; }\n .e-reicon::after { border-bottom: 6px solid transparent; border-left: 6px solid; border-top: 6px solid transparent; content: ''; display: block; height: 0; left: 4px; position: absolute; top: 4px; width: 20px; z-index: 3; }\n .e-row-helper.e-reicon::after { top: 10px; transform: rotate(90deg); }\n .e-row-helper.e-reicon::before { left: 4px; top: -20px; transform: rotate(90deg); }\n span.e-table-box { background-color: #ffffff; border: 1px solid #BDBDBD; }\n span.e-table-box.e-rbox-select { background-color: #BDBDBD; border: 1px solid #BDBDBD; }\n .e-table-rhelper { background-color: #4a90e2;}\n .e-rtl { direction: rtl; }\n </style>\n </head>"+('<body spellcheck="false" autocorrect="off" contenteditable="true">'+E(e.value,e)+"</body></html>"),n=this.parent.createElement("iframe",{innerHTML:t,id:this.parent.getID()+"_rte-view",className:"e-rte-content",styles:"display:block;"});this.setPanel(n),e.element.appendChild(n),n.contentDocument.body.id=this.parent.getID()+"_rte-edit-view",n.contentDocument.body.setAttribute("aria-owns",this.parent.getID()),n.contentDocument.open(),t=this.setThemeColor(t,{color:"#333"}),n.contentDocument.write(t),n.contentDocument.close(),e.enableRtl&&this.contentPanel.contentDocument.body.setAttribute("class","e-rtl")},n.prototype.setThemeColor=function(e,t){var n=getComputedStyle(this.parent.element,".e-richtexteditor").getPropertyValue("color");return e.replace(t.color,n)},n.prototype.getEditPanel=function(){return t.isNullOrUndefined(this.contentPanel.contentDocument)?this.parent.inputElement:this.contentPanel.contentDocument.body},n.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},n}(ir),sr=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on(at,this.enableXhtmlValidation,this)},e.prototype.enableXhtmlValidation=function(){this.parent.enableXhtml&&(this.clean(this.parent.inputElement),this.AddRootElement(),this.ImageTags(),this.removeTags(),this.RemoveUnsupported(),this.parent.setProperties({value:this.parent.inputElement.innerHTML},!0))},e.prototype.AddRootElement=function(){if(1===this.parent.inputElement.childNodes.length&&"DIV"!==this.parent.inputElement.firstChild.nodeName||this.parent.inputElement.childNodes.length>1){for(var e=this.parent.createElement("div");this.parent.inputElement.childNodes.length>0;)e.appendChild(this.parent.inputElement.childNodes[0]);this.parent.inputElement.appendChild(e)}},e.prototype.clean=function(e){for(var t=0;t<e.childNodes.length;t++){var n=e.childNodes[t];8===n.nodeType||"V:IMAGE"===n.nodeName?(e.removeChild(n),t--):1===n.nodeType&&this.clean(n)}return this.parent.inputElement.innerHTML},e.prototype.ImageTags=function(){for(var e=this.parent.inputElement.querySelectorAll("IMG"),t=e.length-1;t>=0;t--)if(!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.parent.inputElement.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.parent.inputElement.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])}var o=this.parent.inputElement.querySelectorAll("strong");for(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])}var s=["language","role","target","contenteditable","cellspacing","cellpadding","border","valign","colspan"];for(n=0;n<=s.length;n++)this.RemoveAttributeByName(s[n])},e.prototype.RemoveAttributeByName=function(e){if(null!==this.parent.inputElement.firstChild&&3!==this.parent.inputElement.firstChild.nodeType)for(var t=0;t<this.parent.inputElement.childNodes.length;t++){var n=this.parent.inputElement.childNodes[t];if(3!==n.nodeType&&"TABLE"!==n.nodeName&&"TBODY"!==n.nodeName&&"THEAD"!==n.nodeName&&"TH"!==n.nodeName&&"TR"!==n.nodeName&&"TD"!==n.nodeName&&(n.hasAttribute(e)&&n.removeAttribute(e),n.hasChildNodes()))for(var i=0;i<n.childNodes.length;i++){var o=n.childNodes[i];if(3!==o.nodeType&&"TABLE"!==o.nodeName&&"TBODY"!==o.nodeName&&"THEAD"!==o.nodeName&&"TH"!==o.nodeName&&"TR"!==o.nodeName&&"TD"!==o.nodeName&&o.hasAttribute(e)&&o.removeAttribute(e),o.hasChildNodes())for(var r=0;r<o.childNodes.length;r++)3!==o.childNodes[r].nodeType&&"TABLE"!==o.childNodes[r].nodeName&&"TBODY"!==o.childNodes[r].nodeName&&"THEAD"!==o.childNodes[r].nodeName&&"TH"!==o.childNodes[r].nodeName&&"TR"!==o.childNodes[r].nodeName&&"TD"!==o.childNodes[r].nodeName&&o.childNodes[r].hasAttribute(e)&&o.childNodes[r].removeAttribute(e)}}},e}(),ar=function(){function n(e,t){this.rangeCollection=[],this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.xhtmlValidation=new sr(e),this.addEventListener()}return n.prototype.destroy=function(){this.removeEventListener()},n.prototype.sanitizeHelper=function(e){return e=L(e,this.parent)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.nodeSelectionObj=new So,this.colorPickerModule=new gi(this.parent,this.locator),this.parent.on(R,this.instantiateRenderer,this),this.parent.on(_,this.onToolbarClick,this),this.parent.on(G,this.onKeyDown,this),this.parent.on(q,this.renderColorPicker,this),this.parent.on(B,this.render,this),this.parent.on(W,this.onPropertyChanged,this),this.parent.on(I,this.destroy,this),this.parent.on(He,this.selectAll,this),this.parent.on(Ue,this.selectRange,this),this.parent.on(je,this.getSelectedHtml,this),this.parent.on(ke,this.onSelectionSave,this),this.parent.on(we,this.onSelectionRestore,this),this.parent.on(Ge,this.updateReadOnly,this),this.parent.on(qe,this.onPaste,this))},n.prototype.updateReadOnly=function(){this.parent.readonly?(t.attributes(this.parent.contentModule.getEditPanel(),{contenteditable:"false"}),t.addClass([this.parent.element],hn)):(t.attributes(this.parent.contentModule.getEditPanel(),{contenteditable:"true"}),t.removeClass([this.parent.element],hn))},n.prototype.onSelectionSave=function(){var e=this.contentRenderer.getDocument(),t=this.nodeSelectionObj.getRange(e);this.saveSelection=this.nodeSelectionObj.save(t,e)},n.prototype.onSelectionRestore=function(e){this.parent.isBlur=!1,this.contentRenderer.getEditPanel().focus(),(t.isNullOrUndefined(e.items)||e.items)&&this.saveSelection.restore()},n.prototype.onKeyDown=function(e){if(9===e.args.keyCode&&this.parent.enableTabKey){var n=this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()),i=this.nodeSelectionObj.getParentNodeCollection(n);if("LI"!==i[0].nodeName&&!t.closest(i[0],"li")&&!t.closest(i[0],"table")||0!==n.startOffset)if(e.args.preventDefault(),e.args.shiftKey){if(this.rangeCollection.length>0&&4===this.rangeCollection[this.rangeCollection.length-1].startContainer.textContent.length){var o=this.rangeCollection[this.rangeCollection.length-1].startContainer;this.nodeSelectionObj.setSelectionText(this.contentRenderer.getDocument(),o,o,0,o.textContent.length),Do.Insert(this.contentRenderer.getDocument(),document.createTextNode("")),this.rangeCollection.pop()}}else Do.Insert(this.contentRenderer.getDocument(),"&nbsp;&nbsp;&nbsp;&nbsp;"),this.rangeCollection.push(this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()))}"space"!==e.args.action&&"enter"!==e.args.action||this.spaceLink(e.args)},n.prototype.onPaste=function(e){var n=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if(e.text.match(n)){e.args.preventDefault();for(var i=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),o=(this.parent.formatter.editorManager.nodeSelection.save(i,this.parent.contentModule.getDocument()),new RegExp(/([^\S]|^)(((https?\:\/\/)))/gi)),r=new RegExp(/([^\S]|^)(((www\.))(\S+))/gi),s=e.text.split("\n"),a="",l=0;l<s.length;l++)if(""===s[l].trim())a+="<p><br></p>";else{for(var d="",c=!0,p=s[l].split(" "),h=0;h<p.length;h++)""===p[h].trim()?d+=c?"&nbsp;":" ":(c=!1,d+=p[h]+" ");a+="<p>"+d.trim()+"</p>"}var u=this.parent.createElement("div");u.innerHTML=a;var m=u.querySelectorAll("p");for(l=0;l<m.length;l++){var g=m[l].innerHTML.split(" "),f="";for(h=0;h<g.length;h++)g[h].match(o)||g[h].match(r)?f+='<a className="e-rte-anchor" href="'+g[h]+'" title="'+g[h]+'">'+g[h]+" </a>":f+=g[h]+" ";m[l].innerHTML=f.trim()}t.isNullOrUndefined(this.parent.pasteCleanupModule)?this.parent.executeCommand("insertHTML",u):e.callBack(u.innerHTML)}},n.prototype.spaceLink=function(e){var t=this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()),n=this.nodeSelectionObj.getParentNodeCollection(t),i=t.startContainer.textContent.substr(0,t.endOffset),o=i.split(" "),r=o[o.length-1],s=t.startOffset-(i.length-o[o.length-1].length);r=r.slice(0,s);var a=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if("A"!==n[0].nodeName&&r.match(a)){var l=this.nodeSelectionObj.save(t,this.parent.contentModule.getDocument()),d={url:r.indexOf("http")>-1?r:"http://"+r,selection:l,selectParent:this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(t),text:r,title:"",target:"_blank"};this.parent.formatter.process(this.parent,{item:{command:"Links",subCommand:"CreateLink"}},e,d)}},n.prototype.onToolbarClick=function(e){var n,i,o,r=e.item,s=t.closest(e.originalEvent.target,".e-rte-quick-popup");if(s&&!s.classList.contains("e-rte-inline-popup")){if("SourceCode"!==r.subCommand&&"Preview"!==r.subCommand&&"FontColor"!==r.subCommand&&"BackgroundColor"!==r.subCommand){O()&&"Images"===r.command&&this.nodeSelectionObj.restore();var a=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());n=this.nodeSelectionObj.save(a,this.parent.contentModule.getDocument()),i=this.nodeSelectionObj.getNodeCollection(a),o=this.nodeSelectionObj.getParentNodeCollection(a)}"Images"===r.command&&this.parent.notify(ne,{member:"image",args:e,selectNode:i,selection:n,selectParent:o}),"Links"===r.command&&this.parent.notify(ie,{member:"link",args:e,selectNode:i,selection:n,selectParent:o}),"Table"===r.command&&this.parent.notify(We,{member:"table",args:e,selectNode:i,selection:n,selectParent:o})}else{var l=this.parent.element.querySelector("#"+this.parent.getID()+"_rtelink"),d=this.parent.element.querySelector("#"+this.parent.getID()+"_image");if("SourceCode"!==r.subCommand&&"Preview"!==r.subCommand&&"FontColor"!==r.subCommand&&"BackgroundColor"!==r.subCommand){a=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());t.isNullOrUndefined(l)&&t.isNullOrUndefined(d)&&(n=this.nodeSelectionObj.save(a,this.parent.contentModule.getDocument())),i=this.nodeSelectionObj.getNodeCollection(a),o=this.nodeSelectionObj.getParentNodeCollection(a)}switch(r.subCommand){case"Maximize":this.parent.notify(J,{args:e});break;case"Minimize":this.parent.notify($,{args:e});break;case"CreateLink":this.parent.notify(ae,{member:"link",args:e,selectNode:i,selection:n,selectParent:o});break;case"Print":this.parent.print();break;case"Image":this.parent.notify(ge,{member:"image",args:e,selectNode:i,selection:n,selectParent:o});break;case"CreateTable":this.parent.notify(Fe,{member:"table",args:e,selection:n});break;case"SourceCode":this.parent.notify(Se,{member:"viewSource",args:e});break;case"Preview":this.parent.notify(Ee,{member:"updateSource",args:e});break;case"FontColor":case"BackgroundColor":break;default:this.parent.formatter.process(this.parent,e,e.originalEvent,null)}}},n.prototype.renderColorPicker=function(e){this.colorPickerModule.renderColorPickerInput(e)},n.prototype.instantiateRenderer=function(){this.parent.iframeSettings.enable?this.renderFactory.addRenderer(e.RenderType.Content,new rr(this.parent,this.locator)):this.renderFactory.addRenderer(e.RenderType.Content,new ir(this.parent,this.locator))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(B,this.render),this.parent.off(W,this.onPropertyChanged),this.parent.off(_,this.onToolbarClick),this.parent.off(q,this.renderColorPicker),this.parent.off(I,this.destroy),this.parent.off(G,this.onKeyDown),this.parent.off(R,this.instantiateRenderer),this.parent.off(He,this.selectAll),this.parent.off(Ue,this.selectRange),this.parent.off(je,this.getSelectedHtml),this.parent.off(ke,this.onSelectionSave),this.parent.off(we,this.onSelectionRestore),this.parent.off(Ge,this.updateReadOnly),this.parent.off(qe,this.onPaste))},n.prototype.render=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};if(t.isNullOrUndefined(this.parent.formatter)){var o=new Zo({currentDocument:this.contentRenderer.getDocument(),element:n,options:i});this.parent.setProperties({formatter:o},!0)}else this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i);this.parent.enableXhtml&&this.parent.notify(at,{}),this.parent.toolbarSettings.enable&&(this.toolbarUpdate=new nr(this.parent)),this.parent.notify(z,{})},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.formatter)){var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i)}},n.prototype.getModuleName=function(){return"htmlEditor"},n.prototype.selectAll=function(){var e=T(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}(),lr=function(){function n(e,t){this.inlineNode=["a","abbr","acronym","audio","b","bdi","bdo","big","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","font","i","iframe","img","input","ins","kbd","label","map","mark","meter","noscript","object","output","picture","progress","q","ruby","s","samp","script","select","slot","small","span","strong","sub","sup","svg","template","textarea","time","u","tt","var","video","wbr"],this.blockNode=["div","h1","h2","h3","h4","h5","h6","address","blockquote","button","center","dd","dir","dl","dt","fieldset","frameset","hr","iframe","isindex","li","map","menu","noframes","noscript","object","ol","pre","td","tr","th","tbody","tfoot","thead","table","ul","header","article","nav","footer","section","aside","main","figure","figcaption"],this.isNotFromHtml=!1,this.containsHtml=!1,this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.i10n=t.getService("rteLocale"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.addEventListener()}return n.prototype.addEventListener=function(){this.nodeSelectionObj=new So,this.parent.isDestroyed||(this.parent.on(Ke,this.pasteClean,this),this.parent.on(I,this.destroy,this))},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(Ke,this.pasteClean),this.parent.off(I,this.destroy))},n.prototype.pasteClean=function(n){var i,o=this,r={requestType:"Paste",editorMode:this.parent.editorMode,event:n},s=null;if(n.args&&!t.isNullOrUndefined(n.args.clipboardData)&&(s=n.args.clipboardData.getData("text/html")),n.args&&null!==s&&"HTML"===this.parent.editorMode){if(0===s.length){var a=new RegExp(/<\/[a-z][\s\S]*>/i);s=n.args.clipboardData.getData("text/plain"),this.isNotFromHtml=""!==s,s=(s=s.replace(/</g,"&lt;")).replace(/>/g,"&gt;"),this.containsHtml=a.test(s);var l=n&&n.args.clipboardData&&n.args.clipboardData.items.length>0?n.args.clipboardData.items[0].getAsFile():null;if(this.parent.notify(qe,{file:l,args:n.args,text:s,callBack:function(e){"object"==typeof(i=e)?o.parent.formatter.editorManager.execCommand("Images","Image",n.args,o.imageFormatting.bind(o,r),"pasteCleanup",i,"pasteCleanupModule"):s=i}}),!a.test(s)){var d=this.parent.createElement("div");d.innerHTML=this.splitBreakLine(s),s=d.innerHTML}}else s.length>0&&this.parent.formatter.editorManager.observer.notify(Di,{args:n.args,text:n.text,allowedStylePropertiesArray:this.parent.pasteCleanupSettings.allowedStyleProps,callBack:function(e){s=e}});this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var c=this.contentRenderer.getDocument(),p=this.nodeSelectionObj.getRange(c);if(this.saveSelection=this.nodeSelectionObj.save(p,c),this.parent.pasteCleanupSettings.prompt){n.args.preventDefault();var h=this.parent.createElement("div");h.innerHTML=s,""===h.textContent&&t.isNullOrUndefined(h.querySelector("img"))&&t.isNullOrUndefined(h.querySelector("table"))||this.pasteDialog(s,r)}else this.parent.pasteCleanupSettings.plainText?(n.args.preventDefault(),this.plainFormatting(s,r)):this.parent.pasteCleanupSettings.keepFormat?(n.args.preventDefault(),this.formatting(s,!1,r)):(n.args.preventDefault(),this.formatting(s,!0,r))}},n.prototype.splitBreakLine=function(e){for(var t=e.split("\n"),n="",i=0;i<t.length;i++)if(""===t[i].trim())n+="<p><br></p>";else{n+="<p>"+this.makeSpace(t[i]).trim()+"</p>"}return n},n.prototype.makeSpace=function(e){for(var t="",n=!0,i=e.split(" "),o=0;o<i.length;o++)""===i[o].trim()?t+=n?"&nbsp;":" ":(n=!1,t+=i[o]+" ");return t},n.prototype.imgUploading=function(e){var n=e.querySelectorAll(".pasteContent_Img");if(this.parent.insertImageSettings.saveUrl&&n.length>0){for(var i=[],o=[],r=[],s=0;s<n.length;s++)n[s].getAttribute("src").split(",")[0].indexOf("base64")>=0&&(i.push(n[s].getAttribute("src")),o.push(t.getUniqueID("rte_image")),r.push(n[s]));var a=[];for(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);var l=e.querySelectorAll(".pasteContent_Img");for(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(x(e[n].getAttribute("src")));e[n].setAttribute("src",i)}},n.prototype.uploadMethod=function(e,n){var i=this,s=document.createElement("div");document.body.appendChild(s),s.setAttribute("display","none"),n.style.opacity="0.5";var a=this.parent.createElement("div");this.parent.element.appendChild(a);var l=this.parent.createElement("input",{id:this.parent.element.id+"_upload",attrs:{type:"File",name:"UploadFiles"}}),d=this.parent.iframeSettings.enable?-50:-90,c=new o.Popup(a,{relateTo:n,height:"85px",width:"300px",offsetY:d,content:l,viewPortElement:this.parent.element,position:{X:"center",Y:"top"},enableRtl:this.parent.enableRtl,zIndex:10001,close:function(e){i.parent.isBlur=!1,c.destroy(),t.detach(c.element)}});c.element.style.display="none",t.addClass([c.element],[Dn,On]);var p=e.size>1e6?300:100;setTimeout(function(){i.refreshPopup(n,c)},p);var h=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl},cssClass:Rn,dropArea:this.parent.inputElement,allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),success:function(e){setTimeout(function(){i.popupClose(c,h,n,e)},900)},uploading:function(e){i.parent.trigger(nt,e),i.parent.inputElement.contentEditable="false"},failure:function(e){setTimeout(function(){i.uploadFailure(n,h,c,e)},900)},canceling:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),c.close()},selected:function(e){e.cancel=!0},removing:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),c.close()}});h.appendTo(c.element.childNodes[0]);var u=[{name:e.name,rawFile:e,size:e.size,type:e.type,validationMessages:{minSize:"",maxSize:""},statusCode:"1"}];h.createFileList(u),h.filesData.push(u[0]),h.upload(u),c.element.getElementsByClassName("e-file-select-wrap")[0].style.display="none",t.detach(c.element.querySelector(".e-rte-dialog-upload .e-file-select-wrap"))},n.prototype.uploadFailure=function(e,n,i,o){this.parent.inputElement.contentEditable="true",t.detach(e),i&&i.close(),this.parent.trigger(ot,o),n.destroy()},n.prototype.popupClose=function(e,n,i,o){var r=this;this.parent.inputElement.contentEditable="true",this.parent.trigger(it,o,function(e){if(!t.isNullOrUndefined(r.parent.insertImageSettings.path)){var n=r.parent.insertImageSettings.path+e.file.name;i.src=n,i.setAttribute("alt",e.file.name)}}),e.close(),i.style.opacity="1",n.destroy()},n.prototype.refreshPopup=function(e,t){(this.parent.iframeSettings.enable?this.parent.element.offsetTop+e.offsetTop:e.offsetTop)>this.parent.element.offsetTop+this.parent.element.offsetHeight?(t.relateTo=this.parent.inputElement,t.offsetY=this.parent.iframeSettings.enable?-30:-65,t.element.style.display="block"):t&&(t.refreshPosition(e),t.element.style.display="block")},n.prototype.base64ToFile=function(e,n){for(var i=e.split(","),o=i[0].match(/:(.*?);/)[1].split("/")[1],r=atob(i[1]),s=r.length,a=new Uint8Array(s);s--;)a[s]=r.charCodeAt(s);return new File([a],n+"."+(t.isNullOrUndefined(o)?"":o),{type:o})},n.prototype.imageFormatting=function(t,n){var i=this.parent.createElement("span");i.appendChild(n.elements[0]);var o=i.innerHTML;this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var r=this.contentRenderer.getDocument(),s=this.nodeSelectionObj.getRange(r);this.saveSelection=this.nodeSelectionObj.save(s,r),this.parent.pasteCleanupSettings.prompt?this.pasteDialog(o,t):this.parent.pasteCleanupSettings.plainText?this.plainFormatting(o,t):this.parent.pasteCleanupSettings.keepFormat?this.formatting(o,!1,t):this.formatting(o,!0,t)},n.prototype.radioRender=function(){var e=new s.RadioButton({label:this.i10n.getConstant("keepFormat"),name:"pasteOption",checked:!0});e.isStringTemplate=!0;var t=this.parent.element.querySelector("#keepFormating");e.appendTo(t);var n=new s.RadioButton({label:this.i10n.getConstant("cleanFormat"),name:"pasteOption"});n.isStringTemplate=!0;var i=this.parent.element.querySelector("#cleanFormat");n.appendTo(i);var o=new s.RadioButton({label:this.i10n.getConstant("plainText"),name:"pasteOption"});o.isStringTemplate=!0;var r=this.parent.element.querySelector("#plainTextFormat");o.appendTo(r)},n.prototype.selectFormatting=function(e,t,n,i){n?this.formatting(e,!1,t):i?this.formatting(e,!0,t):this.plainFormatting(e,t)},n.prototype.pasteDialog=function(e,n){var i=this,o={buttons:[{click:function(){if(!r.isDestroyed){var o=i.parent.element.querySelector("#keepFormating").checked,s=i.parent.element.querySelector("#cleanFormat").checked;r.hide();var a=t.isBlazor()?null:r;i.dialogRenderObj.close(a),r.destroy(),i.selectFormatting(e,n,o,s)}},buttonModel:{isPrimary:!0,cssClass:"e-flat "+En,content:this.i10n.getConstant("pasteDialogOk")}},{click:function(){if(!r.isDestroyed){r.hide();var e=t.isBlazor()?null:r;i.dialogRenderObj.close(e),r.destroy()}},buttonModel:{cssClass:"e-flat "+Nn,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="'+Cn+'" id="keepFormating"/></div><div style="padding-top:20px;"><input type="radio" class="'+Tn+'" id="cleanFormat"/></div><div style="padding-top:20px;"><input type="radio" class="'+Sn+'" id="plainTextFormat"/></div></div>',target:this.parent.element,width:"300px",height:"265px",cssClass:kn,isModal:!0},r=this.dialogRenderObj.render(o),s=this.parent.element.querySelector("#"+this.parent.getID()+"_pasteCleanupDialog");null!==s&&""!==s.innerHTML&&this.destroyDialog(s),null===s&&(s=this.parent.createElement("div",{id:this.parent.getID()+"_pasteCleanupDialog"}),this.parent.element.appendChild(s)),r.appendTo(s),this.radioRender(),r.show()},n.prototype.destroyDialog=function(e){var n=this.parent.element.querySelector(".e-dlg-container");t.detach(n);for(var i=e.children.length,o=0;o<i;o++)t.detach(e.children[0])},n.prototype.formatting=function(e,n,i){var o=this,r=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});this.isNotFromHtml&&this.containsHtml&&(e=this.splitBreakLine(e)),r.innerHTML=e,null!==this.parent.pasteCleanupSettings.deniedTags&&(r=this.deniedTags(r)),n?r=this.deniedAttributes(r,n):null!==this.parent.pasteCleanupSettings.deniedAttrs&&(r=this.deniedAttributes(r,n)),null!==this.parent.pasteCleanupSettings.allowedStyleProps&&(r=this.allowedStyle(r)),this.saveSelection.restore(),r.innerHTML=this.sanitizeHelper(r.innerHTML);for(var s=r.querySelectorAll("img"),a=0;a<s.length;a++)s[a].classList.add("pasteContent_Img");""===r.textContent&&t.isNullOrUndefined(r.querySelector("img"))&&t.isNullOrUndefined(r.querySelector("table"))||(this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",i,function(e){t.extend(i,{elements:[e.elements]},!0),o.parent.formatter.onSuccess(o.parent,i)},r),this.parent.notify(H,{}),this.imgUploading(this.parent.inputElement))},n.prototype.sanitizeHelper=function(e){return e=L(e,this.parent)},n.prototype.plainFormatting=function(e,n){var i=this,o=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});if(o.innerHTML=e,this.detachInlineElements(o),this.getTextContent(o),""!==o.textContent.trim()){if(!t.isNullOrUndefined(o.firstElementChild)&&"BR"!==o.firstElementChild.tagName){var r=o.firstElementChild;if(!t.isNullOrUndefined(o.firstElementChild)){for(var s=this.parent.createElement("span"),a=0,l=0;a<r.childNodes.length;a++,l++)if("#text"===r.childNodes[a].nodeName)s.appendChild(r.childNodes[a]),o.insertBefore(s,o.firstElementChild),a--;else{if("#text"===r.childNodes[a].nodeName||0!==l)break;for(var d=0;d<r.childNodes[a].childNodes.length;d++)s.appendChild(r.childNodes[a].childNodes[d]),o.insertBefore(s,o.firstElementChild),d--;a--}r.hasChildNodes()||t.detach(r)}}this.removeEmptyElements(o),this.saveSelection.restore(),o.innerHTML=this.sanitizeHelper(o.innerHTML),this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",n,function(e){t.extend(n,{elements:[]},!0),i.parent.formatter.onSuccess(i.parent,n)},o)}else this.saveSelection.restore(),t.extend(n,{elements:[]},!0),this.parent.formatter.onSuccess(this.parent,n)},n.prototype.getTextContent=function(e){for(var n=0;n<this.blockNode.length;n++)for(var i=e.querySelectorAll(this.blockNode[n]),o=0;o<i.length;o++){for(var r=void 0,s=0,a=0,l=void 0;s<i[o].childNodes.length;s++,a++)if("DIV"===i[o].childNodes[s].nodeName||"P"===i[o].childNodes[s].nodeName||"#text"===i[o].childNodes[s].nodeName&&"&nbsp;"!==i[o].childNodes[s].nodeValue.replace(/\u00a0/g,"&nbsp;")&&""===i[o].childNodes[s].textContent.trim())r=i[o].childNodes[s].parentElement,i[o].childNodes[s].parentElement.parentElement.insertBefore(i[o].childNodes[s],i[o].childNodes[s].parentElement),s--;else{if(r=i[o].childNodes[s].parentElement,"text"===l){r.previousElementSibling.appendChild(i[o].childNodes[s])}else{var d=this.parent.createElement("div",{id:"newDiv"});d.appendChild(i[o].childNodes[s]),r.parentElement.insertBefore(d,r)}s--,l="text"}t.isNullOrUndefined(r)||t.detach(r)}var c=e.querySelectorAll("*");for(n=0;n<c.length;n++){var p=c[n].attributes;for(o=0;o<p.length;o++)c[n].removeAttribute(p[o].name),o--}},n.prototype.detachInlineElements=function(e){for(var n=0;n<this.inlineNode.length;n++)for(var i=e.querySelectorAll(this.inlineNode[n]),o=0;o<i.length;o++){for(var r=void 0,s=0;s<i[o].childNodes.length;s++)r=i[o].childNodes[s].parentElement,i[o].childNodes[s].parentElement.parentElement.insertBefore(i[o].childNodes[s],i[o].childNodes[s].parentElement),s--;t.isNullOrUndefined(r)||t.detach(r)}},n.prototype.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:""===e.parentElement.textContent.trim()&&"pasteContent"!==e.parentElement.getAttribute("class")?this.findDetachEmptyElem(e.parentElement):e},n.prototype.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++)if("BR"!==n[i].tagName){var o=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(o)||t.detach(o)}},n.prototype.tagGrouping=function(e){for(var t=e.slice(),n=Object.keys(Wi),i=n.map(function(e){return Wi[e]}),o=[],r=0;r<t.length;r++)if(t[r].split("[").length>1&&(t[r]=t[r].split("[")[0].trim()),n.indexOf(t[r])>-1)for(var s=0;s<i[n.indexOf(t[r])].length;s++)t.indexOf(i[n.indexOf(t[r])][s])<0&&o.indexOf(i[n.indexOf(t[r])][s])<0&&o.push(i[n.indexOf(t[r])][s]);return e=e.concat(o)},n.prototype.attributesfilter=function(e){for(var t=0;t<e.length;t++)if(e[t].split("[").length>1){for(var n=e[t].split("[")[1].split("]")[0].split(","),i=[],o=[],r=0;r<n.length;r++)n[r].indexOf("!")<0?i.push(n[r].trim()):o.push(n[r].split("!")[1].trim());var s=i.length>1?i.join("]["):i.join(),a=o.length>1?o.join("]["):o.join();if(a.length>0){var l=""!==s?e[t].split("[")[0]+"["+s+"]":e[t].split("[")[0];e[t]=l+":not(["+a+"])"}else e[t]=e[t].split("[")[0]+"["+s+"]"}return e},n.prototype.deniedTags=function(e){var n=t.isNullOrUndefined(this.parent.pasteCleanupSettings.deniedTags)?[]:this.parent.pasteCleanupSettings.deniedTags.slice();n=this.attributesfilter(n),n=this.tagGrouping(n);for(var i=0;i<n.length;i++)for(var o=e.querySelectorAll(n[i]),r=o.length-1;r>=0;r--){for(var s=o[r].parentNode;o[r].firstChild;)s.insertBefore(o[r].firstChild,o[r]);s.removeChild(o[r])}return e},n.prototype.deniedAttributes=function(e,n){var i=t.isNullOrUndefined(this.parent.pasteCleanupSettings.deniedAttrs)?[]:this.parent.pasteCleanupSettings.deniedAttrs.slice();n&&i.push("style");for(var o=0;o<i.length;o++)for(var r=e.querySelectorAll("["+i[o]+"]"),s=0;s<r.length;s++)r[s].removeAttribute(i[o]);return e},n.prototype.allowedStyle=function(e){var n=t.isNullOrUndefined(this.parent.pasteCleanupSettings.allowedStyleProps)?[]:this.parent.pasteCleanupSettings.allowedStyleProps.slice();n.push("list-style-type","list-style");for(var i=e.querySelectorAll("[style]"),o=0;o<i.length;o++){for(var r="",s=[],a=i[o].getAttribute("style").split(";"),l=0;l<a.length;l++)n.indexOf(a[l].split(":")[0].trim())>=0&&s.push(a[l]);i[o].removeAttribute("style"),(r=""===s.join(";").trim()?s.join(";"):s.join(";")+";")&&i[o].setAttribute("style",r)}return e},n.prototype.getModuleName=function(){return"pasteCleanup"},n}(),dr=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(B,this.renderResizable,this),this.parent.on(I,this.destroy,this))},e.prototype.renderResizable=function(){this.resizer=this.parent.createElement("div",{id:this.parent.getID()+"-resizable",className:"e-icons "+wn+" e-south-east"}),this.parent.element.classList.add(Bn),this.parent.element.appendChild(this.resizer),this.touchStartEvent="msie"===t.Browser.info.name?"pointerdown":"touchstart",t.EventHandler.add(this.resizer,"mousedown",this.resizeStart,this),t.EventHandler.add(this.resizer,this.touchStartEvent,this.resizeStart,this)},e.prototype.resizeStart=function(e){var n=this;e.cancelable&&e.preventDefault(),this.wireResizeEvents();var i=t.isBlazor()?{requestType:"editor"}:{event:e,requestType:"editor"};this.parent.trigger(oe,i,function(e){e.cancel&&n.unwireResizeEvents()})},e.prototype.performResize=function(e){var n=this,i=t.isBlazor()?{requestType:"editor"}:{event:e,requestType:"editor"};this.parent.trigger(re,i,function(e){e.cancel&&n.unwireResizeEvents()});var o=this.parent.element.getBoundingClientRect();if(this.isMouseEvent(e))this.parent.element.style.height=e.clientY-o.top+"px",this.parent.element.style.width=e.clientX-o.left+"px";else{var r="msie"!==t.Browser.info.name?e.touches[0]:e;this.parent.element.style.height=r.clientY-o.top+"px",this.parent.element.style.width=r.clientX-o.left+"px"}this.parent.refreshUI()},e.prototype.stopResize=function(e){this.parent.refreshUI(),this.unwireResizeEvents();var n=t.isBlazor()?{requestType:"editor"}:{event:e,requestType:"editor"};this.parent.trigger(se,n)},e.prototype.getEventType=function(e){return e.indexOf("mouse")>-1?"mouse":"touch"},e.prototype.isMouseEvent=function(e){var n=!1;return("mouse"===this.getEventType(e.type)||!t.isNullOrUndefined(e.pointerType)&&"mouse"===this.getEventType(e.pointerType))&&(n=!0),n},e.prototype.wireResizeEvents=function(){t.EventHandler.add(document,"mousemove",this.performResize,this),t.EventHandler.add(document,"mouseup",this.stopResize,this),this.touchMoveEvent="msie"===t.Browser.info.name?"pointermove":"touchmove",this.touchEndEvent="msie"===t.Browser.info.name?"pointerup":"touchend",t.EventHandler.add(document,this.touchMoveEvent,this.performResize,this),t.EventHandler.add(document,this.touchEndEvent,this.stopResize,this)},e.prototype.unwireResizeEvents=function(){t.EventHandler.remove(document,"mousemove",this.performResize),t.EventHandler.remove(document,"mouseup",this.stopResize),t.EventHandler.remove(document,this.touchMoveEvent,this.performResize),t.EventHandler.remove(document,this.touchEndEvent,this.stopResize)},e.prototype.destroy=function(){this.removeEventListener()},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(B,this.renderResizable),this.parent.element.classList.remove(Bn),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(I,this.destroy))},e.prototype.getModuleName=function(){return"resize"},e}(),cr=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.showFullScreen=function(e){!0===this.parent.toolbarSettings.enable&&"Markdown"!==this.parent.editorMode&&this.parent.quickToolbarModule.hideQuickToolbars(),this.scrollableParent=o.getScrollableParent(this.parent.element),this.parent.element.classList.contains(vt)||(this.parent.trigger(pe,{requestType:"Maximize",targetItem:"Maximize",args:e}),this.parent.toolbarSettings.enableFloating&&!this.parent.inlineMode.enable&&this.parent.toolbarSettings.enable&&(this.parent.getToolbarElement().style.width="100%",this.parent.getToolbarElement().style.top="0px"),this.parent.element.classList.add(vt),this.toggleParentOverflow(!0),this.parent.setContentHeight(),this.parent.toolbarModule&&(this.parent.getBaseToolbarObject().toolbarObj.items[0].properties||this.parent.getBaseToolbarObject().toolbarObj.removeItems(0),t.Browser.isDevice&&this.parent.toolbarModule.removeFixedTBarClass(),this.parent.toolbarModule.updateItem({targetItem:"Maximize",updateItem:"Minimize",baseToolbar:this.parent.getBaseToolbarObject()})),this.parent.trigger(he,{requestType:"Maximize",targetItem:"Maximize",args:e}))},e.prototype.hideFullScreen=function(e){if(!0===this.parent.toolbarSettings.enable&&"Markdown"!==this.parent.editorMode&&this.parent.quickToolbarModule.hideQuickToolbars(),this.parent.element.classList.contains(vt)){this.parent.element.classList.remove(vt);for(var n=document.querySelectorAll(".e-rte-overflow"),i=0;i<n.length;i++)t.removeClass([n[i]],["e-rte-overflow"]);this.parent.trigger(pe,{requestType:"Minimize",targetItem:"Minimize",args:e}),this.parent.setContentHeight(),this.parent.toolbarModule&&(this.parent.getBaseToolbarObject().toolbarObj.items[0].properties||this.parent.getBaseToolbarObject().toolbarObj.removeItems(0),this.parent.toolbarModule.updateItem({targetItem:"Minimize",updateItem:"Maximize",baseToolbar:this.parent.getBaseToolbarObject()}),t.Browser.isDevice&&this.parent.inlineMode.enable&&this.parent.toolbarModule.addFixedTBarClass()),this.parent.trigger(he,{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){var i=document.querySelector("body");t.addClass([i],["e-rte-overflow"])}else{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(I,this.destroy,this)},e.prototype.removeEventListener=function(){this.parent.off(G,this.onKeyDown),this.parent.off(I,this.destroy)},e.prototype.destroy=function(){this.parent.element.classList.contains(vt)&&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}(),pr=function(){function t(e,t){this.parent=e,this.locator=t,this.renderer=this.locator.getService("rendererFactory"),this.addEventListener()}return t.prototype.render=function(){this.parent;this.contentRenderer=this.renderer.getRenderer(e.RenderType.Content),this.contentRenderer.renderPanel()},t.prototype.refresh=function(e){void 0===e&&(e={requestType:"refresh"}),this.parent.notify(e.requestType+"-begin",e)},t.prototype.destroy=function(){this.removeEventListener()},t.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(W,this.refresh,this),this.parent.on(V,this.keyUp,this))},t.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(W,this.refresh),this.parent.off(V,this.keyUp))},t.prototype.keyUp=function(e){if("HTML"===this.parent.editorMode)switch(e.args.which){case 46:case 8:var t=this.parent.contentModule.getEditPanel().childNodes;if(0===t.length||1===t.length&&("BR"===t[0].tagName||"P"===t[0].tagName&&(0===t[0].childNodes.length||""===t[0].textContent))){var n=this.parent.contentModule.getEditPanel();n.innerHTML="<p><br/></p>",this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),n.childNodes[0],0)}}},t}(),hr=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(ae,this.linkDialog,this),this.parent.on(G,this.onKeyDown,this),this.parent.on(fe,this.showLinkQuickToolbar,this),this.parent.on(ie,this.onToolbarAction,this),this.parent.on(P,this.onIframeMouseDown,this),this.parent.on(le,this.removeLink,this),this.parent.on(de,this.editLink,this),this.parent.on(ce,this.openLink,this),this.parent.on(Me,this.editAreaClickHandler,this))},n.prototype.onToolbarAction=function(e){switch(e.args.item.subCommand){case"OpenLink":this.parent.notify(ce,e);break;case"EditLink":this.parent.notify(de,e);break;case"RemoveLink":this.parent.notify(le,e)}},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(ae,this.linkDialog),this.parent.off(G,this.onKeyDown),this.parent.off(fe,this.showLinkQuickToolbar),this.parent.off(ie,this.onToolbarAction),this.parent.off(le,this.removeLink),this.parent.off(P,this.onIframeMouseDown),this.parent.off(de,this.editLink),this.parent.off(ce,this.openLink),this.parent.off(Me,this.editAreaClickHandler))},n.prototype.onIframeMouseDown=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.showLinkQuickToolbar=function(e){if("enter"!==e.args.action&&"space"!==e.args.action){var n=void 0,i=void 0;if("Links"!==e.type||t.isNullOrUndefined(this.parent.quickToolbarModule)||t.isNullOrUndefined(this.parent.quickToolbarModule.linkQTBar))return;this.quickToolObj=this.parent.quickToolbarModule;var o,r=this.parent.element.getBoundingClientRect().top,s=this.parent.element.getBoundingClientRect().left,a=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());if([].forEach.call(e.elements,function(e,t){0===t&&(o="#text"===e.nodeName?e.parentNode:e)}),e.isNotify){var l=this.parent.toolbarModule.getToolbarElement(),d=o.getBoundingClientRect().top,c=o.getBoundingClientRect().left,p=d-r,h=l?l.offsetHeight+this.parent.toolbarModule.getExpandTBarPopHeight():0;n=this.parent.iframeSettings.enable?s+c:o.getBoundingClientRect().left,i=window.pageYOffset+(this.parent.iframeSettings.enable?r+h+d:r+p)}else{var u=void 0;u=e.args.touches?e.args.changedTouches[0]:u=e.args,n=this.parent.iframeSettings.enable?window.pageXOffset+s+u.clientX:u.pageX,i=this.parent.iframeSettings.enable?window.pageYOffset+r+u.clientY:u.pageY}this.quickToolObj.linkQTBar&&this.quickToolObj.linkQTBar.showPopup(n,i,a.endContainer)}},n.prototype.hideLinkQuickToolbar=function(){this.quickToolObj&&this.quickToolObj.linkQTBar&&document.body.contains(this.quickToolObj.linkQTBar.element)&&this.quickToolObj.linkQTBar.hidePopup()},n.prototype.editAreaClickHandler=function(t){if(this.parent.readonly)this.hideLinkQuickToolbar();else{var n=t.args,i=this.parent.quickToolbarSettings.showOnRightClick;if(!(2===n.which||i&&1===n.which||!i&&3===n.which)&&"HTML"===this.parent.editorMode&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.linkQTBar){this.quickToolObj=this.parent.quickToolbarModule;var o=n.target;o=this.getAnchorNode(o),this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var r=this.quickToolObj.linkQTBar.element.classList.contains("e-rte-pop");if("A"===o.nodeName&&o.childNodes.length>0&&"IMG"!==o.childNodes[0].nodeName&&"IMG"!==t.args.target.nodeName){if(r)return;this.showLinkQuickToolbar({args:n,isNotify:!1,type:"Links",elements:[n.target]})}else this.hideLinkQuickToolbar()}}},n.prototype.onKeyDown=function(e){var n=e.args;switch(n.action){case"escape":t.isNullOrUndefined(this.dialogObj)||this.dialogObj.close();break;case"insert-link":if("HTML"===this.parent.editorMode){var i=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),o=this.parent.formatter.editorManager.nodeSelection.save(i,this.parent.contentModule.getDocument()),r=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(i),s=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(i),a={args:e.args,selectNode:r,selection:o,selectParent:s};this.linkDialog(a)}else{var l=this.parent.contentModule.getEditPanel();this.parent.formatter.editorManager.markdownSelection.save(l.selectionStart,l.selectionEnd),this.linkDialog({args:{item:{command:"Links",subCommand:"Link"},originalEvent:n},member:"link",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertLink"})}n.preventDefault()}},n.prototype.linkDialog=function(e,n){var i=this;if(this.dialogObj)this.dialogObj.hide({returnValue:!0});else 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))this.editLink(e);else{var o,r=this.i10n.getConstant("linkWebUrl"),a=this.i10n.getConstant("linkText"),l=this.i10n.getConstant("linkTooltipLabel"),d=this.i10n.getConstant("linkurl"),c=this.i10n.getConstant("textPlaceholder"),p=this.i10n.getConstant("linkTitle"),h=this.parent.createElement("div",{className:"e-rte-link-dialog",id:this.rteID+"_rtelink"});this.parent.element.appendChild(h);var u=this.parent.createElement("div",{className:"e-rte-linkcontent",id:this.rteID+"_linkContent"}),m=C('<div class="e-rte-label"><label>'+r+'</label></div><div class="e-rte-field"><input type="text" data-role ="none" spellcheck="false" placeholder="'+d+'" class="e-input e-rte-linkurl"/></div><div class="e-rte-label"><label>'+a+'</label></div><div class="e-rte-field"> <input type="text" data-role ="none" spellcheck="false" class="e-input e-rte-linkText" placeholder="'+c+'"></div><div class="e-rte-label">'+("HTML"===this.parent.editorMode?"<label>"+l+'</label></div><div class="e-rte-field"><input type="text" data-role ="none" spellcheck="false" placeholder = "'+p+'" class="e-input e-rte-linkTitle"></div><div class="e-rte-label"></div><div class="e-rte-field"><input type="checkbox" class="e-rte-linkTarget" data-role ="none"></div>':""));u.appendChild(m);var g=u.querySelector(".e-rte-linkTarget"),f=u.querySelector(".e-rte-linkurl"),b=u.querySelector(".e-rte-linkText"),v=u.querySelector(".e-rte-linkTitle"),y=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:y,checked:!0,enableRtl:this.parent.enableRtl}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(g),o="HTML"===this.parent.editorMode?e.selection.getRange(this.parent.contentModule.getDocument()).toString():e.text;var T=this.i10n.getConstant("dialogInsert"),S=this.i10n.getConstant("dialogCancel"),E=e.selection,N={selfLink:this,selection:e.selection,selectParent:e.selectParent,args:e.args},k={header:this.i10n.getConstant("linkHeader"),content:u,cssClass:Xt,enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"310px",height:"inherit",isModal:t.Browser.isDevice,buttons:[{click:this.insertlink.bind(N),buttonModel:{content:T,cssClass:"e-flat e-insertLink",isPrimary:!0}},{click:this.cancelDialog.bind(N),buttonModel:{cssClass:"e-flat",content:S}}],target:t.Browser.isDevice?document.body:this.parent.element,animationSettings:{effect:"None"},close:function(e){i.parent.isBlur=!1,e&&e.event.returnValue&&("HTML"===i.parent.editorMode?E.restore():i.parent.formatter.editorManager.markdownSelection.restore(i.parent.contentModule.getEditPanel())),i.dialogObj.destroy(),t.detach(i.dialogObj.element);var n=t.isBlazor()?null:i.dialogObj;i.dialogRenderObj.close(n),i.dialogObj=null}};this.dialogObj=this.dialogRenderObj.render(k),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(h),h.style.maxHeight="inherit",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(o)&&""!==o&&0===e.selection.range.startOffset||e.selection.range.startOffset!==e.selection.range.endOffset)||"Markdown"===e.module)&&(b.value=o),t.EventHandler.add(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick,this),this.quickToolObj&&(this.hideLinkQuickToolbar(),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup())}},n.prototype.insertlink=function(e){var n,i=this.selfLink.dialogObj.element,o=i.querySelector(".e-rte-linkurl").value,r=i.querySelector(".e-rte-linkText").value;"HTML"===this.selfLink.parent.editorMode&&(n=i.querySelector(".e-rte-linkTitle").value);var s=this.selfLink.checkBoxObj.checked?"_blank":null;if(""!==o){this.selfLink.isUrl(o)?this.selfLink.checkUrl(!1):(r=""===r?o:r,o=this.selfLink.parent.enableAutoUrl?o:o.indexOf("http")>-1?o:"http://"+o);var a=this.selfLink;if("HTML"===a.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"#"+a.parent.contentModule.getPanel().id))){a.parent.contentModule.getEditPanel().focus(),t.Browser.isIE&&a.parent.iframeSettings.enable&&this.selection.restore();var l=a.parent.formatter.editorManager.nodeSelection.getRange(a.parent.contentModule.getDocument());this.selection=a.parent.formatter.editorManager.nodeSelection.save(l,a.parent.contentModule.getDocument()),this.selectParent=a.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(l)}var d={url:o,text:r,title:n,target:s,selection:this.selection,selectParent:this.selectParent};document.body.contains(a.dialogObj.element)&&this.selfLink.dialogObj.hide({returnValue:!1}),O()&&a.parent.iframeSettings.enable&&t.select("iframe",a.parent.element).contentWindow.focus(),"HTML"===a.parent.editorMode&&this.selection.restore(),0===a.parent.formatter.getUndoRedoStack().length&&a.parent.formatter.saveData();var c;if("KeyK"===this.args.code){var p=this.args;t.extend(this.args,{item:{command:"Links",subCommand:"CreateLink"},originalEvent:p},!0);c={item:{command:"Links",subCommand:"CreateLink"},originalEvent:p}}else c=this.args;this.selfLink.parent.formatter.process(this.selfLink.parent,c,this.args.originalEvent,d),this.selfLink.parent.contentModule.getEditPanel().focus()}else this.selfLink.checkUrl(!0)},n.prototype.isUrl=function(e){return/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/gi.test(e)},n.prototype.checkUrl=function(e){var n=this.dialogObj.element.querySelector(".e-rte-linkurl");e?(t.addClass([n],"e-error"),n.setSelectionRange(0,n.value.length),n.focus()):t.removeClass([n],"e-error")},n.prototype.removeLink=function(e){0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,selectParent:e.selectParent,selection:e.selection,subCommand:e.args.item.subCommand}),O()&&this.parent.iframeSettings.enable?t.select("iframe",this.parent.element).contentWindow.focus():this.parent.contentModule.getEditPanel().focus(),this.hideLinkQuickToolbar()},n.prototype.openLink=function(e){var t=this.getAnchorNode(e.selectParent[0]);(t.classList.contains("e-rte-anchor")||"A"===t.tagName)&&this.parent.formatter.process(this.parent,e.args,e.args,{url:t.href,target:""===t.target?"_self":"_blank",selectNode:e.selectNode,subCommand:e.args.item.subCommand})},n.prototype.getAnchorNode=function(e){var n=t.closest(e,"a");return n||e},n.prototype.editLink=function(e){var t=this.getAnchorNode(e.selectNode[0]),n=this.getAnchorNode(e.selectParent[0]);if((n="A"===t.nodeName?t:n).classList.contains("e-rte-anchor")||"A"===n.tagName){var i=this.i10n.getConstant("dialogUpdate"),o={url:n.getAttribute("href"),text:n.innerText,title:n.title,target:n.target,header:this.i10n.getConstant("editLink"),btnText:i};this.linkDialog(e,o)}},n.prototype.cancelDialog=function(e){this.selfLink.parent.isBlur=!1,this.selfLink.dialogObj.hide({returnValue:!0}),O()?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,"#"+this.dialogObj.element.id)&&this.parent.toolbarSettings.enable&&this.parent.getToolbarElement()&&!this.parent.getToolbarElement().contains(e.target)||(this.parent.getToolbarElement()&&this.parent.getToolbarElement().contains(e.target)||this.parent.inlineMode.enable&&!t.closest(n,"#"+this.dialogObj.element.id))&&!t.closest(n,"#"+this.parent.getID()+"_toolbar_CreateLink")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_CreateLink"))&&(this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,y(this.parent.element,"focusout"))},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.getModuleName=function(){return"link"},n}(),ur=function(){function n(e,t){this.isImgUploaded=!1,this.pageX=null,this.pageY=null,this.deletedImg=[],this.parent=e,this.rteID=e.element.id,this.i10n=t.getService("rteLocale"),this.rendererFactory=t.getService("rendererFactory"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.addEventListener()}return n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(G,this.onKeyDown,this),this.parent.on(V,this.onKeyUp,this),this.parent.on(ge,this.insertImage,this),this.parent.on(fe,this.showImageQuickToolbar,this),this.parent.on(ne,this.onToolbarAction,this),this.parent.on(Ce,this.caption,this),this.parent.on(ye,this.deleteImg,this),this.parent.on(be,this.insertImgLink,this),this.parent.on(ve,this.insertAltText,this),this.parent.on(Me,this.editAreaClickHandler,this),this.parent.on(P,this.onIframeMouseDown,this),this.parent.on(Te,this.imageSize,this),this.parent.on(Z,this.alignmentSelect,this),this.parent.on(B,this.afterRender,this),this.parent.on(qe,this.imagePaste,this),this.parent.on(I,this.removeEventListener,this))},n.prototype.removeEventListener=function(){if(!this.parent.isDestroyed){this.parent.off(G,this.onKeyDown),this.parent.off(V,this.onKeyUp),this.parent.off(ge,this.insertImage),this.parent.off(fe,this.showImageQuickToolbar),this.parent.off(Ce,this.caption),this.parent.off(ne,this.onToolbarAction),this.parent.off(ye,this.deleteImg),this.parent.off(be,this.insertImgLink),this.parent.off(ve,this.insertAltText),this.parent.off(Me,this.editAreaClickHandler),this.parent.off(P,this.onIframeMouseDown),this.parent.off(Te,this.imageSize),this.parent.off(Z,this.alignmentSelect),this.parent.off(B,this.afterRender),this.parent.off(qe,this.imagePaste),this.parent.off(I,this.removeEventListener);var e=this.parent.iframeSettings.enable?this.parent.inputElement.ownerDocument:this.parent.inputElement;e.removeEventListener("drop",this.dragDrop.bind(this),!0),e.removeEventListener("dragstart",this.dragStart.bind(this),!0),e.removeEventListener("dragenter",this.dragEnter.bind(this),!0),e.removeEventListener("dragover",this.dragOver.bind(this),!0),t.isNullOrUndefined(this.contentModule)||(t.EventHandler.remove(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.imageClick),this.parent.formatter.editorManager.observer.off(Ve,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)))}},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));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=C(this.parent.formatter.getUndoRedoStack()[n].text);i.appendChild(o);var r=i.querySelectorAll("img");if(i.querySelector(".e-img-resize")&&r.length>0){for(var s=0;s<r.length;s++)r[s].style.outline="";t.detach(i.querySelector(".e-img-resize")),this.parent.formatter.getUndoRedoStack()[n].text=i.innerHTML}}},n.prototype.resizeEnd=function(e){this.resizeBtnInit(),this.imgEle.parentElement.style.cursor="auto",t.Browser.isDevice&&t.removeClass([e.target.parentElement],"e-mob-span");var n=t.isBlazor()?{requestType:"images"}:{event:e,requestType:"images"};this.parent.trigger(se,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(Ve,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("IMG"===o.tagName){this.parent.preventDefaultResize(e);var r=o;this.imgResizeDiv&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&t.detach(this.imgResizeDiv),this.imageResize(r)}if(o.classList.contains("e-rte-imageboxmark")){if(0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),this.pageX=this.getPointX(e),this.pageY=this.getPointY(e),e.preventDefault(),e.stopImmediatePropagation(),this.resizeBtnInit(),this.quickToolObj&&this.quickToolObj.imageQTBar.hidePopup(),o.classList.contains("e-rte-topLeft")&&(this.resizeBtnStat.topLeft=!0),o.classList.contains("e-rte-topRight")&&(this.resizeBtnStat.topRight=!0),o.classList.contains("e-rte-botLeft")&&(this.resizeBtnStat.botLeft=!0),o.classList.contains("e-rte-botRight")&&(this.resizeBtnStat.botRight=!0),t.Browser.isDevice&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&!this.imgResizeDiv.classList.contains("e-mob-span"))t.addClass([this.imgResizeDiv],"e-mob-span");else{var s=t.isBlazor()?{requestType:"images"}:{event:e,requestType:"images"};this.parent.trigger(oe,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.imageResize=function(e){this.resizeBtnInit(),this.imgEle=e,t.addClass([this.imgEle],"e-resize"),this.imgResizeDiv=this.parent.createElement("span",{className:"e-img-resize",id:this.rteID+"_imgResize"}),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topLeft",styles:"cursor: nwse-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topRight",styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botLeft",styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botRight",styles:"cursor: nwse-resize"})),t.Browser.isDevice&&t.addClass([this.imgResizeDiv],"e-mob-rte"),e.style.outline="2px solid #4a90e2",this.imgResizePos(e,this.imgResizeDiv),this.resizeImgDupPos(e),this.contentModule.getEditPanel().appendChild(this.imgResizeDiv),t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing,this)},n.prototype.getPointX=function(e){return e.touches&&e.touches.length?e.touches[0].pageX:e.pageX},n.prototype.getPointY=function(e){return e.touches&&e.touches.length?e.touches[0].pageY:e.pageY},n.prototype.imgResizePos=function(e,n){var i=this.calcPos(e),o=i.top,r=i.left,s=e.width,a=e.height,l=t.Browser.isDevice?4*parseInt(e.style.outline.slice(-3),10)+2:2*parseInt(e.style.outline.slice(-3),10)+2,d=t.Browser.isDevice?0:2;n.querySelector(".e-rte-botLeft").style.left=r-l+"px",n.querySelector(".e-rte-botLeft").style.top=a-l+o+"px",n.querySelector(".e-rte-botRight").style.left=s-(l-d)+r+"px",n.querySelector(".e-rte-botRight").style.top=a-l+o+"px",n.querySelector(".e-rte-topRight").style.left=s-(l-d)+r+"px",n.querySelector(".e-rte-topRight").style.top=o-l+"px",n.querySelector(".e-rte-topLeft").style.left=r-l+"px",n.querySelector(".e-rte-topLeft").style.top=o-l+"px"},n.prototype.calcPos=function(e){for(var n={top:0,left:0},i=e.getBoundingClientRect(),o=e.ownerDocument,r=(e.offsetParent&&(e.offsetParent.classList.contains("e-img-caption")||["TD","TH","TABLE","A"].indexOf(e.offsetParent.tagName)>-1)?t.closest(e,"#"+this.parent.getID()+"_rte-edit-view"):e.offsetParent)||o.documentElement;r&&(r===o.body||r===o.documentElement)&&"static"===r.style.position;)r=r.parentNode;return r&&r!==e&&1===r.nodeType&&(n=r.getBoundingClientRect()),{top:i.top-n.top,left:i.left-n.left}},n.prototype.setAspectRatio=function(e,n,i){if(!t.isNullOrUndefined(e.width)){var o=""!==e.style.width?parseInt(e.style.width,10):e.width,r=""!==e.style.height?parseInt(e.style.height,10):e.height;o>r?this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(o/r*i,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width?(e.style.width=o/r*i+"px",e.style.height=i+"px"):(e.setAttribute("width",(o/r*i).toString()),e.setAttribute("height",i.toString())):r>o?this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(n,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width?(e.style.width=n+"px",e.style.height=r/o*n+"px"):(e.setAttribute("width",n.toString()),e.setAttribute("height",(r/o*n).toString())):this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(n,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width?(e.style.width=n+"px",e.style.height=n+"px"):(e.setAttribute("width",n.toString()),e.setAttribute("height",n.toString()))}},n.prototype.pixToPerc=function(e,t){return e/parseFloat(getComputedStyle(t).width)*100},n.prototype.imgDupMouseMove=function(e,n,i){var o=this,r=t.isBlazor()?{requestType:"images"}:{event:i,requestType:"images"};this.parent.trigger(re,r,function(t){if(t.cancel)o.cancelResizeAction();else{if(parseInt(o.parent.insertImageSettings.minWidth,10)>=parseInt(e,10)||parseInt(o.parent.insertImageSettings.maxWidth,10)<=parseInt(e,10))return;if(!o.parent.insertImageSettings.resizeByPercent&&(parseInt(o.parent.insertImageSettings.minHeight,10)>=parseInt(n,10)||parseInt(o.parent.insertImageSettings.maxHeight,10)<=parseInt(n,10)))return;o.imgEle.parentElement.style.cursor="pointer",o.setAspectRatio(o.imgEle,parseInt(e,10),parseInt(n,10)),o.resizeImgDupPos(o.imgEle),o.imgResizePos(o.imgEle,o.imgResizeDiv),o.parent.setContentHeight("",!1)}})},n.prototype.resizing=function(e){var t=this.getPointX(e),n=this.getPointY(e),i=this.resizeBtnStat.botLeft||this.resizeBtnStat.topLeft?-(t-this.pageX):t-this.pageX,o=this.resizeBtnStat.topLeft||this.resizeBtnStat.topRight?-(n-this.pageY):n-this.pageY,r=parseInt(this.imgDupPos.width,10)+i,s=parseInt(this.imgDupPos.height,10)+o;this.pageX=t,this.pageY=n,this.resizeBtnStat.botRight?this.imgDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.botLeft?this.imgDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topRight?this.imgDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topLeft&&this.imgDupMouseMove(r+"px",s+"px",e)},n.prototype.cancelResizeAction=function(){t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),this.imgEle&&this.imgResizeDiv&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&(t.detach(this.imgResizeDiv),this.imgEle.style.outline="",this.imgResizeDiv=null,this.pageX=null,this.pageY=null)},n.prototype.resizeImgDupPos=function(e){this.imgDupPos={width:""!==e.style.height?this.imgEle.style.width:e.width+"px",height:""!==e.style.height?this.imgEle.style.height:e.height+"px"}},n.prototype.resizeBtnInit=function(){return this.resizeBtnStat={botLeft:!1,botRight:!1,topRight:!1,topLeft:!1}},n.prototype.onToolbarAction=function(e){O()&&this.parent.notify(we,{});switch(e.args.item.subCommand){case"Replace":this.parent.notify(ge,e);break;case"Caption":this.parent.notify(Ce,e);break;case"InsertLink":this.parent.notify(be,e);break;case"AltText":this.parent.notify(ve,e);break;case"Remove":this.parent.notify(ye,e);break;case"Dimension":this.parent.notify(Te,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;if(this.deletedImg=[],"HTML"===this.parent.editorMode&&(8===s.which&&"Backspace"===s.code||46===s.which&&"Delete"===s.code)){var a=this.parent.getRange(),l=a.startContainer===a.endContainer&&a.startOffset===a.endOffset;if(8===s.which&&"Backspace"===s.code&&l)this.checkImageBack(a);else if(46===s.which&&"Delete"===s.code&&l)this.checkImageDel(a);else if(!l)for(var d=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(a),c=0;c<d.length;c++)"IMG"===d[c].nodeName&&this.deletedImg.push(d[c])}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&"KeyK"!==s.code&&(n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument()),o=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(n),r=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(n),!s.ctrlKey&&s.key&&(1===s.key.length||"enter"===s.action)&&"IMG"===r[0].tagName&&r[0].parentElement)){var p=r[0].parentElement.childNodes[0];this.contentModule.getEditPanel().querySelector(".e-img-resize")&&this.remvoeResizEle(),this.parent.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),p,p,p.textContent.length,p.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){s.preventDefault();var h={selectNode:o,selection:i,selectParent:r,args:{item:{command:"Images",subCommand:"Remove"},originalEvent:s}};this.deleteImg(h)}this.parent.contentModule.getEditPanel().querySelector(".e-img-resize")&&this.remvoeResizEle()}switch(s.action){case"escape":t.isNullOrUndefined(this.dialogObj)||this.dialogObj.close();break;case"insert-image":"HTML"===this.parent.editorMode?this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:s},selectNode:o,selection:i,selectParent:r}):this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:s},member:"image",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertImage"}),s.preventDefault()}},n.prototype.onKeyUp=function(e){if(!t.isNullOrUndefined(this.deletedImg)&&this.deletedImg.length>0)for(var n=0;n<this.deletedImg.length;n++){var i={img:this.deletedImg[n],src:this.deletedImg[n].getAttribute("src")};this.parent.trigger(st,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.justifyImageLeft(r);break;case"JustifyCenter":this.justifyImageCenter(r);break;case"JustifyRight":this.justifyImageRight(r);break;case"Inline":this.inline(r);break;case"Break":this.break(r)}this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.removeClass([o[0]],"e-img-focus")),this.cancelResizeAction()}},n.prototype.imageWithLinkQTBarItemUpdate=function(){for(var e=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item"),n=0;n<e.length;n++)e[n].getAttribute("title")===this.i10n.getConstant("openLink")||e[n].getAttribute("title")===this.i10n.getConstant("editLink")||e[n].getAttribute("title")===this.i10n.getConstant("removeLink")?(t.addClass([e[n]],"e-link-groups"),e[n].style.display="none"):"Insert Link"===e[n].getAttribute("title")?e[n].style.display="":e[n].classList.contains("e-rte-horizontal-separator")&&(e[n],t.detach(e[n]));var i=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item:not(.e-link-groups)");this.quickToolObj.imageQTBar.addQTBarItem(["-"],Math.round(i.length/2))},n.prototype.showImageQuickToolbar=function(e){var n=this;if("Images"===e.type&&!t.isNullOrUndefined(this.parent.quickToolbarModule)&&!t.isNullOrUndefined(this.parent.quickToolbarModule.imageQTBar)){this.quickToolObj=this.parent.quickToolbarModule;var i=e.args,o=e.elements;[].forEach.call(e.elements,function(e,t){0===t&&(o=e)}),o&&!t.closest(o,"a")&&this.imageWithLinkQTBarItemUpdate(),"IMG"===o.nodeName&&t.addClass([o],["e-img-focus"]);var r=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+i.clientY:i.pageY;this.parent.quickToolbarModule.imageQTBar&&(e.isNotify?setTimeout(function(){n.quickToolObj.imageQTBar.showPopup(i.pageX,r,o)},400):this.quickToolObj.imageQTBar.showPopup(i.pageX,r,o))}},n.prototype.hideImageQuickToolbar=function(){t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-img-focus"))||(t.removeClass([this.contentModule.getEditPanel().querySelector(".e-img-focus")],"e-img-focus"),this.quickToolObj&&this.quickToolObj.imageQTBar&&document.body.contains(this.quickToolObj.imageQTBar.element)&&this.quickToolObj.imageQTBar.hidePopup())},n.prototype.editAreaClickHandler=function(n){if(this.parent.readonly)this.hideImageQuickToolbar();else{var i=n.args,o=this.parent.quickToolbarSettings.showOnRightClick;if(2===i.which||o&&1===i.which||!o&&3===i.which)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));else 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),O()&&this.parent.notify(ke,n),t.addClass([r],"e-img-focus");var a=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item");if(t.closest(r,"a")){for(var l=0;l<a.length;l++)a[l].getAttribute("title")===this.i10n.getConstant("openLink")||a[l].getAttribute("title")===this.i10n.getConstant("editLink")||a[l].getAttribute("title")===this.i10n.getConstant("removeLink")?(a[l].style.display="",t.removeClass([a[l]],"e-link-groups")):"Insert Link"===a[l].getAttribute("title")?a[l].style.display="none":a[l].classList.contains("e-rte-horizontal-separator")&&(a[l],t.detach(a[l]));var d=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item:not(.e-link-groups)");this.quickToolObj.imageQTBar.addQTBarItem(["-"],Math.round(d.length/2))}else t.closest(r,"a")||this.imageWithLinkQTBarItemUpdate();this.showImageQuickToolbar({args:i,type:"Images",elements:[i.target]})}else this.hideImageQuickToolbar()}}},n.prototype.insertImgLink=function(e,n){var i=this;if("IMG"===e.selectNode[0].nodeName&&(this.imagDialog(e),!t.isNullOrUndefined(this.dialogObj))){var o=this.parent.createElement("div",{className:"e-img-linkwrap"}),r=C('<div class="e-rte-field"><input type="text" data-role ="none" class="e-input e-img-link" spellcheck="false" placeholder="'+this.i10n.getConstant("linkurl")+'"/></div><div class="e-rte-label"></div><div class="e-rte-field"><input type="checkbox" class="e-rte-linkTarget" data-role ="none"></div>');o.appendChild(r);var a=o.querySelector(".e-rte-linkTarget"),l=o.querySelector(".e-img-link"),d=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:d,checked:!0,enableRtl:this.parent.enableRtl,change:function(e){c=e.checked?"_blank":null}}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(a);var c=this.checkBoxObj.checked?"_blank":null,p=this.i10n.getConstant("dialogUpdate"),h={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,selectParent:e.selectParent,link:l,target:c};this.dialogObj.setProperties({height:"inherit",width:"290px",header:this.parent.localeObj.getConstant("imageInsertLinkHeader"),content:o,position:{X:"center",Y:"center"},buttons:[{click:function(e){i.insertlink(h)},buttonModel:{content:p,cssClass:"e-flat e-update-link",isPrimary:!0}}]}),t.isNullOrUndefined(n)||(l.value=n.url,n.target?this.checkBoxObj.checked=!0:this.checkBoxObj.checked=!1,this.dialogObj.header=n.header),this.dialogObj.element.style.maxHeight="inherit",this.dialogObj.content.querySelector("input").focus()}},n.prototype.insertAltText=function(e){var n=this;if("IMG"===e.selectNode[0].nodeName){this.imagDialog(e);var i=this.i10n.getConstant("altText");if(!t.isNullOrUndefined(this.dialogObj)){var o=this.parent.createElement("div",{className:"e-img-altwrap"}),r=this.i10n.getConstant("alternateHeader"),s=this.i10n.getConstant("dialogUpdate"),a=C('<div class="e-rte-field"><input type="text" spellcheck="false" value="'+(null===e.selectNode[0].getAttribute("alt")?"":e.selectNode[0].getAttribute("alt"))+'" class="e-input e-img-alt" placeholder="'+i+'"/></div>');o.appendChild(a);var l=o.querySelector(".e-img-alt"),d={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,alt:l};this.dialogObj.setProperties({height:"inherit",width:"290px",header:r,content:o,position:{X:"center",Y:"center"},buttons:[{click:function(e){n.insertAlt(d)},buttonModel:{content:s,cssClass:"e-flat e-update-alt",isPrimary:!0}}]}),this.dialogObj.element.style.maxHeight="inherit",this.dialogObj.content.querySelector("input").focus()}}},n.prototype.insertAlt=function(e){if(!t.isNullOrUndefined(e.alt)){e.selection.restore(),0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData();var n=e.alt.value;this.parent.formatter.process(this.parent,e.args,e.args,{altText:n,selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.dialogObj.hide({returnValue:!1})}},n.prototype.insertlink=function(e){if("IMG"===e.selectNode[0].nodeName){var n=e.link.value;if(""===n)return t.addClass([e.link],"e-error"),e.link.setSelectionRange(0,n.length),void e.link.focus();this.isUrl(n)?t.removeClass([e.link],"e-error"):n="http://"+n;var i=e.selfImage;if("HTML"===i.parent.editorMode&&e.selection.restore(),0===i.parent.formatter.getUndoRedoStack().length&&i.parent.formatter.saveData(),"A"===e.selectNode[0].parentElement.nodeName)return i.parent.formatter.process(i.parent,e.args,e.args,{url:n,target:i.checkBoxObj.checked?"_blank":null,selectNode:e.selectNode,subCommand:e.args.item.subCommand}),void i.dialogObj.hide({returnValue:!0});i.parent.formatter.process(i.parent,e.args,e.args,{url:n,target:i.checkBoxObj.checked?"_blank":null,selectNode:e.selectNode,subCommand:e.args.item.subCommand,selection:e.selection});var o=t.closest(e.selectNode[0],".e-img-caption");o&&t.select(".e-img-inner",o).focus(),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){if("IMG"===e.selectNode[0].nodeName){var t={img:e.selectNode[0]};0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),e.selection.restore(),this.contentModule.getEditPanel().querySelector(".e-img-resize")&&this.remvoeResizEle(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,captionClass:qt,subCommand:e.args.item.subCommand}),this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&this.quickToolObj.imageQTBar.hidePopup(),this.cancelResizeAction(),this.parent.trigger(st,t)}},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,"."+qt))){this.captionEle=this.parent.createElement("span",{className:qt+" "+_t,attrs:{contenteditable:"false",draggable:"false"}});var o=this.parent.createElement("span",{className:"e-img-wrap"}),r=this.parent.createElement("span",{className:"e-img-inner",attrs:{contenteditable:"true"}}),s=e.selectNode[0].parentElement;"A"===s.tagName&&s.setAttribute("contenteditable","true"),o.appendChild("A"===s.tagName?s:e.selectNode[0]),o.appendChild(r);var a=this.i10n.getConstant("imageCaption");r.innerHTML=a,this.captionEle.appendChild(o),n.classList.contains(Qt)&&t.addClass([this.captionEle],Ft),n.classList.contains(zt)&&t.addClass([this.captionEle],zt),n.classList.contains(Ut)&&t.addClass([this.captionEle],Ut),n.classList.contains(Ht)&&t.addClass([this.captionEle],Ht),n.classList.contains(jt)&&t.addClass([this.captionEle],jt),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,"."+qt)),t.Browser.isIE&&(this.contentModule.getEditPanel().focus(),e.selection.restore()),"A"===n.parentElement.tagName?this.parent.formatter.process(this.parent,e.args,e.args,{insertElement:n.parentElement,selectNode:e.selectNode,subCommand:i}):this.parent.formatter.process(this.parent,e.args,e.args,{insertElement:n,selectNode:e.selectNode,subCommand:i});this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.removeClass([n],"e-img-focus"))}},n.prototype.imageSize=function(e){var n=this;if("IMG"===e.selectNode[0].nodeName&&(this.imagDialog(e),!t.isNullOrUndefined(this.dialogObj))){var i=this.i10n.getConstant("imageSizeHeader"),o=this.i10n.getConstant("dialogUpdate"),r=this.imgsizeInput(e),s={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode};this.dialogObj.setProperties({height:"inherit",width:"290px",header:i,content:r,position:{X:"center",Y:"center"},buttons:[{click:function(e){n.insertSize(s)},buttonModel:{content:o,cssClass:"e-flat e-update-size",isPrimary:!0}}]}),this.dialogObj.element.style.maxHeight="inherit",this.dialogObj.content.querySelector("input").focus()}},n.prototype.break=function(e){if("IMG"===e.selectNode[0].nodeName){var t=e.args.item?e.args.item.subCommand:"Break";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})}},n.prototype.inline=function(e){if("IMG"===e.selectNode[0].nodeName){var t=e.args.item?e.args.item.subCommand:"Inline";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})}},n.prototype.justifyImageLeft=function(e){var t=e.args.item?e.args.item.subCommand:"JustifyLeft";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})},n.prototype.justifyImageRight=function(e){var t=e.args.item?e.args.item.subCommand:"JustifyRight";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})},n.prototype.justifyImageCenter=function(e){var t=e.args.item?e.args.item.subCommand:"JustifyCenter";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})},n.prototype.imagDialog=function(e){var n=this;if(this.dialogObj)this.dialogObj.hide({returnValue:!0});else{var i=this.parent.createElement("div",{className:"e-rte-img-dialog",id:this.rteID+"_image"});this.parent.element.appendChild(i);var o=this.i10n.getConstant("dialogInsert"),r=this.i10n.getConstant("dialogCancel"),s=this.i10n.getConstant("imageHeader"),a=e.selection,l={selfImage:this,selection:e.selection,args:e.args,selectParent:e.selectParent},d={header:s,cssClass:Xt,enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"340px",height:"inherit",position:{X:"center",Y:t.Browser.isDevice?"center":"top"},isModal:t.Browser.isDevice,buttons:[{click:this.insertImageUrl.bind(l),buttonModel:{content:o,cssClass:"e-flat e-insertImage",isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:r}}],target:t.Browser.isDevice?document.body:this.parent.element,animationSettings:{effect:"None"},close:function(e){n.isImgUploaded&&n.uploadObj.removing(),n.parent.isBlur=!1,e&&e.event.returnValue&&("HTML"===n.parent.editorMode?a.restore():n.parent.formatter.editorManager.markdownSelection.restore(n.parent.contentModule.getEditPanel())),n.dialogObj.destroy(),t.detach(n.dialogObj.element),n.dialogRenderObj.close(e),n.dialogObj=null}},c=this.parent.createElement("div",{className:"e-img-content"});(!t.isNullOrUndefined(this.parent.insertImageSettings.path)&&"Markdown"===this.parent.editorMode||"HTML"===this.parent.editorMode)&&c.appendChild(this.imgUpload(e));var p=this.parent.createElement("div",{className:"e-linkheader"}),h=this.i10n.getConstant("imageLinkHeader");"HTML"===this.parent.editorMode?p.innerHTML=h:p.innerHTML=this.i10n.getConstant("mdimageLink"),c.appendChild(p),c.appendChild(this.imageUrlPopup(e)),e.selectNode&&"IMG"===e.selectNode[0].nodeName?(d.header=this.parent.localeObj.getConstant("editImageHeader"),d.content=c):d.content=c,this.dialogObj=this.dialogRenderObj.render(d),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(i),e.selectNode&&"IMG"===e.selectNode[0].nodeName&&"insertImage"===e.name&&(this.dialogObj.element.querySelector(".e-insertImage").textContent=this.parent.localeObj.getConstant("dialogUpdate")),i.style.maxHeight="inherit",this.quickToolObj&&(this.quickToolObj.imageQTBar&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.isNullOrUndefined(e.selectParent)||t.removeClass([e.selectParent[0]],"e-img-focus")),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup())}},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.dialogObj.hide({returnValue:!0}),this.isImgUploaded&&this.uploadObj.removing()},n.prototype.onDocumentClick=function(e){var n=e.target;"IMG"===n.nodeName&&(this.imgEle=n),!t.isNullOrUndefined(this.dialogObj)&&(!t.closest(n,"#"+this.dialogObj.element.id)&&this.parent.toolbarSettings.enable&&this.parent.getToolbarElement()&&!this.parent.getToolbarElement().contains(e.target)||this.parent.getToolbarElement()&&this.parent.getToolbarElement().contains(e.target)&&!t.closest(n,"#"+this.parent.getID()+"_toolbar_Image")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_Image"))&&(this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,y(this.parent.element,"focusout")),"IMG"===e.target.tagName||!this.imgResizeDiv||this.quickToolObj&&this.quickToolObj.imageQTBar&&this.quickToolObj.imageQTBar.element.contains(e.target)||!this.contentModule.getEditPanel().contains(this.imgResizeDiv)||this.cancelResizeAction(),"IMG"!==n.tagName&&this.contentModule.getEditPanel().querySelector(".e-img-resize")&&(this.remvoeResizEle(),this.contentModule.getEditPanel().querySelector("img").style.outline="")},n.prototype.remvoeResizEle=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.imageUrlPopup=function(e){var t=this.parent.createElement("div",{className:"imgUrl"}),n=this.i10n.getConstant("imageUrl");return this.inputUrl=this.parent.createElement("input",{className:"e-input e-img-url",attrs:{placeholder:n,spellcheck:"false"}}),t.appendChild(this.inputUrl),t},n.prototype.insertImageUrl=function(e){var n=this.selfImage;n.isImgUploaded=!1;var i=n.inputUrl.value;if(0===n.parent.formatter.getUndoRedoStack().length&&n.parent.formatter.saveData(),t.isNullOrUndefined(n.uploadUrl)||""===n.uploadUrl.url){if(""!==i){if("HTML"===n.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"#"+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?Qt:zt,url:i,selection:this.selection,altText:s,selectParent:this.selectParent,width:{width:n.parent.insertImageSettings.width,minWidth:n.parent.insertImageSettings.minWidth,maxWidth:n.parent.insertImageSettings.maxWidth},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?Qt:zt,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.remvoeResizEle())},n.prototype.imgsizeInput=function(e){var n=e.selectNode[0],i=this.i10n.getConstant("imageHeight"),o=this.i10n.getConstant("imageWidth"),s=this.parent.createElement("div",{className:"e-img-sizewrap"}),a=C('<div class="e-rte-label"><label>'+o+'</label></div><div class="e-rte-field"><input type="text" data-role ="none" id="imgwidth" class="e-img-width" value='+("auto"===n.getAttribute("width")||t.isNullOrUndefined(n.getAttribute("width"))?n.width:n.getClientRects()[0].width)+' /></div><div class="e-rte-label"><label>'+i+'</label></div><div class="e-rte-field"> <input type="text" data-role ="none" id="imgheight" class="e-img-height" value='+("auto"===n.getAttribute("height")||t.isNullOrUndefined(n.getAttribute("height"))?n.height:n.getClientRects()[0].height)+" /></div>");s.appendChild(a);var l=new r.NumericTextBox({format:"###.### px",min:this.parent.insertImageSettings.minWidth,max:this.parent.insertImageSettings.maxWidth,enableRtl:this.parent.enableRtl,locale:this.parent.locale});l.isStringTemplate=!0,l.createElement=this.parent.createElement,l.appendTo(s.querySelector("#imgwidth"));var d=new r.NumericTextBox({format:"###.### px",min:this.parent.insertImageSettings.minHeight,max:this.parent.insertImageSettings.maxHeight,enableRtl:this.parent.enableRtl,locale:this.parent.locale});return d.isStringTemplate=!0,d.createElement=this.parent.createElement,d.appendTo(s.querySelector("#imgheight")),s},n.prototype.insertSize=function(e){e.selection.restore();var t=e.selfImage;0===t.parent.formatter.getUndoRedoStack().length&&t.parent.formatter.saveData();var n=t.dialogObj.element,i=parseFloat(n.querySelector(".e-img-width").value),o=parseFloat(n.parentElement.querySelector(".e-img-height").value);t.parent.formatter.process(this.parent,e.args,e.args,{width:i,height:o,selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.imgResizeDiv&&t.imgResizePos(e.selectNode[0],this.imgResizeDiv),t.dialogObj.hide({returnValue:!0})},n.prototype.insertImage=function(e){if(this.imagDialog(e),!t.isNullOrUndefined(this.dialogObj)){this.dialogObj.element.style.maxHeight="inherit";var n=this.dialogObj.element.querySelector(".e-img-content");!t.isNullOrUndefined(this.parent.insertImageSettings.path)&&"Markdown"===this.parent.editorMode||"HTML"===this.parent.editorMode?n.querySelector("#"+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,"#"+this.parent.contentModule.getPanel().id))||l&&!d(e.selection.range.startContainer.parentNode.ownerDocument.querySelector("body"),"e-lib"))){this.contentModule.getEditPanel().focus();var c=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());n=this.parent.formatter.editorManager.nodeSelection.save(c,this.parent.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(c)}else n=e.selection,i=e.selectParent;var p=this.parent.createElement("div",{className:"e-img-uploadwrap e-droparea"}),h=this.i10n.getConstant("imageDeviceUploadMessage"),u=this.i10n.getConstant("imageUploadMessage"),m=this.parent.createElement("span",{className:"e-droptext"}),g=this.parent.createElement("span",{className:"e-rte-upload-text",innerHTML:t.Browser.isDevice?h:u});m.appendChild(g);var f=this.parent.createElement("button",{className:"e-browsebtn",id:this.rteID+"_insertImage",attrs:{autofocus:"true",type:"button"}});m.appendChild(f),p.appendChild(m);var b=this.i10n.getConstant("browse"),v=new s.Button({content:b,enableRtl:this.parent.enableRtl});v.isStringTemplate=!0,v.createElement=this.parent.createElement,v.appendTo(f);var y=t.Browser.isDevice?m:f;t.EventHandler.add(y,"click",this.fileSelect,this);var C=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"}});p.appendChild(C);var T;return this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl},dropArea:m,multiple:!1,enableRtl:this.parent.enableRtl,allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),selected:function(e){a.isImgUploaded=!0,o.parent.trigger(tt,e,function(e){if(o.checkExtension(e.filesData[0]),T=e.filesData[0].name,"HTML"===o.parent.editorMode&&t.isNullOrUndefined(o.parent.insertImageSettings.path)){var r=new FileReader;r.addEventListener("load",function(e){var t="Base64"===o.parent.insertImageSettings.saveFormat?r.result:URL.createObjectURL(x(r.result));a.uploadUrl={url:t,selection:n,altText:T,selectParent:i,width:{width:a.parent.insertImageSettings.width,minWidth:a.parent.insertImageSettings.minWidth,maxWidth:a.parent.insertImageSettings.maxWidth},height:{height:a.parent.insertImageSettings.height,minHeight:a.parent.insertImageSettings.minHeight,maxHeight:a.parent.insertImageSettings.maxHeight}},a.inputUrl.setAttribute("disabled","true")}),r.readAsDataURL(e.filesData[0].rawFile)}})},uploading:function(e){o.parent.trigger(nt,e)},success:function(e){o.parent.trigger(it,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:T,selectParent:i,width:{width:a.parent.insertImageSettings.width,minWidth:a.parent.insertImageSettings.minWidth,maxWidth:a.parent.insertImageSettings.maxWidth},height:{height:a.parent.insertImageSettings.height,minHeight:a.parent.insertImageSettings.minHeight,maxHeight:a.parent.insertImageSettings.maxHeight}},a.inputUrl.setAttribute("disabled","true")}})},failure:function(e){o.parent.trigger(ot,e)},removing:function(){o.parent.trigger(rt,e,function(e){a.isImgUploaded=!1,a.inputUrl.removeAttribute("disabled"),a.uploadUrl&&(a.uploadUrl.url=""),o.dialogObj.getButtons(0).element.removeAttribute("disabled")})}}),this.uploadObj.isStringTemplate=!0,this.uploadObj.createElement=this.parent.createElement,this.uploadObj.appendTo(C),p},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")},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(pe,e,function(t){t.cancel?e.preventDefault():(e.dataTransfer.effectAllowed="copyMove",e.target.classList.add(xn))})},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,i=this.parent.inputElement.ownerDocument.querySelector("."+xn);if(!(i&&"IMG"===i.tagName||e.dataTransfer.files.length>0))return!0;this.parent.trigger(pe,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;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(Ue,{range:o});if(n.parent.element.querySelector(".e-droparea"))return;n.insertDragImage(e)}})},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){e.preventDefault();var t=this.parent.element.querySelector(""+Dn);if(this.parent.notify("drop",{args:e}),t&&t.classList.add(Bt),e.dataTransfer.files.length>0){if(e.dataTransfer.files.length>1)return;for(var n=e.dataTransfer.files,i=n[0].name,o=i.substring(i.lastIndexOf(".")),r=this.parent.insertImageSettings.allowedTypes,s=0;s<r.length;s++)if(o.toLocaleLowerCase()===r[s].toLowerCase())if(this.parent.insertImageSettings.saveUrl)this.onSelect(e);else{var a={args:e,text:"",file:n[0]};e.preventDefault(),this.imagePaste(a)}}else{var l=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),d=this.parent.inputElement.ownerDocument.querySelector("."+xn);if(d&&"IMG"===d.tagName){d.nextElementSibling&&d.nextElementSibling.classList.contains("e-img-inner")?l.insertNode(d.parentElement.parentElement):l.insertNode(d),d.classList.remove(xn),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());a=e;this.resizeStart(a,d),this.hideImageQuickToolbar()}}},n.prototype.onSelect=function(e){var t=this,n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i=this.parent.createElement("ul",{className:Mn});this.parent.element.appendChild(i);var o={name:"",size:0,status:"",statusCode:"",type:"",rawFile:e.dataTransfer.files[0],validationMessages:{}},r=this.parent.createElement("IMG");r.style.opacity="0.5",r.classList.add(Ln),r.classList.add(Qt),r.classList.add("e-resize");var s=o.rawFile,a=new FileReader;a.addEventListener("load",function(){var e=URL.createObjectURL(x(a.result));r.src="Blob"===t.parent.insertImageSettings.saveFormat?e:a.result}),s&&a.readAsDataURL(s),n.insertNode(r),this.uploadMethod(e,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}}),this.popupObj.element.style.display="none",t.addClass([this.popupObj.element],Dn),t.addClass([this.popupObj.element],On);var p=e.dataTransfer.files[0].size>1e6?300:100;setTimeout(function(){a.refreshPopup(n)},p);var h=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl},cssClass:Rn,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()},uploading:function(e){s=!0,i.parent.trigger(nt,e),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){s=!1,i.parent.inputElement.contentEditable="true";var o={args:e,type:"Images",isNotify:void 0,elements:n};setTimeout(function(){i.uploadSuccess(n,e,o,t)},900)}}),this.uploadObj.appendTo(this.popupObj.element.childNodes[0]),t.detach(this.popupObj.element.querySelector(".e-rte-dialog-upload .e-file-select-wrap")),h.selectNodeContents(n),this.parent.formatter.editorManager.nodeSelection.setRange(this.contentModule.getDocument(),h)},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(ot,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"),this.parent.trigger(it,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.close(),this.showImageQuickToolbar(i),this.resizeStart(n,e),this.uploadObj.destroy()},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?Qt:zt,url:"Base64"!==n.parent.insertImageSettings.saveFormat&&t.isNullOrUndefined(e.callBack)?URL.createObjectURL(x(o.result)):o.result,width:{width:i.parent.insertImageSettings.width,minWidth:i.parent.insertImageSettings.minWidth,maxWidth:i.parent.insertImageSettings.maxWidth},height:{height:i.parent.insertImageSettings.height,minHeight:i.parent.insertImageSettings.minHeight,maxHeight:i.parent.insertImageSettings.maxHeight}};t.isNullOrUndefined(e.callBack)?(i.parent.formatter.process(i.parent,{item:{command:"Images",subCommand:"Image"}},e.args,s),n.showPopupToolBar(e,s)):e.callBack(s)}),o.readAsDataURL(e.file)}},n.prototype.showPopupToolBar=function(t,n){var i=this,o='img[src="'+n.url+'"]',r=this.parent.inputElement.querySelector(o);this.parent.quickToolbarModule.createQTBar("Image","MultiRow",this.parent.quickToolbarSettings.image,e.RenderType.ImageToolbar);var s={args:t.args,type:"Images",isNotify:void 0,elements:r};r&&setTimeout(function(){i.showImageQuickToolbar(s),i.resizeStart(t.args,r)},0)},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.getModuleName=function(){return"image"},n}(),mr=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(Se,this.sourceCode,this),this.parent.on(B,this.onInitialEnd,this),this.parent.on(Ee,this.updateSourceCode,this)},n.prototype.onInitialEnd=function(){this.parent.formatter.editorManager.observer.on(ki,this.onKeyDown,this)},n.prototype.removeEventListener=function(){this.unWireEvent(),this.parent.off(Se,this.sourceCode),this.parent.off(Ee,this.updateSourceCode),this.parent.off(B,this.onInitialEnd),this.parent.formatter.editorManager.observer.off(ki,this.onKeyDown)},n.prototype.getSourceCode=function(){return this.parent.createElement("textarea",{className:"e-rte-srctextarea"})},n.prototype.wireEvent=function(e){this.keyboardModule=new mi(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 mi(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(De,{args:e})},n.prototype.previewKeyDown=function(e){switch(e.action){case"html-source":this.updateSourceCode(e),e.preventDefault();break;case"toolbar-focus":if(this.parent.toolbarSettings.enable){this.parent.toolbarModule.baseToolbar.toolbarObj.element.querySelector('.e-toolbar-item[aria-disabled="false"][title] [tabindex]').focus()}}},n.prototype.onKeyDown=function(e){switch(e.event.action){case"html-source":e.event.preventDefault(),this.sourceCode(e),e.callBack({requestType:"SourceCode",editorMode:"HTML",event:e.event})}},n.prototype.sourceCode=function(n){this.parent.isBlur=!1,this.parent.trigger(pe,{requestType:"SourceCode",targetItem:"SourceCode",args:n});var i=t.selectAll("."+Mt,this.parent.element);if(this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),this.parent.notify(me,{targetItem:"SourceCode",updateItem:"Preview",baseToolbar:this.parent.getBaseToolbarObject()}),t.isNullOrUndefined(this.previewElement)&&(this.previewElement=this.getSourceCode()),this.parent.updateValueData(),this.parent.iframeSettings.enable){var o=void 0;(o=t.isNullOrUndefined(this.parent.element.querySelector("#"+this.parent.element.id+"_source-view"))?this.parent.createElement("div",{className:"e-source-content",id:this.parent.element.id+"_source-view"}):this.parent.element.querySelector("#"+this.parent.element.id+"_source-view")).appendChild(this.previewElement),this.parent.element.appendChild(o),o.style.height=this.contentModule.getPanel().style.height,o.style.marginTop=this.contentModule.getPanel().style.marginTop,this.getPanel().value=this.getTextAreaValue(),this.contentModule.getPanel().style.display="none",o.style.display="block"}else this.contentModule.getPanel().appendChild(this.previewElement),this.getPanel().value=this.getTextAreaValue(),this.contentModule.getEditPanel().style.display="none",this.previewElement.style.display="block";if(this.parent.isBlur=!1,this.parent.disableToolbarItem(this.parent.toolbarSettings.items),this.parent.enableToolbarItem("SourceCode"),this.parent.getToolbar()&&t.removeClass([this.parent.getToolbar()],[Yt]),t.removeClass(i,[Kt]),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").style.display="none"}this.parent.trigger(he,{requestType:"SourceCode",targetItem:"SourceCode",args:n}),this.parent.invokeChangeEvent()},n.prototype.updateSourceCode=function(e){this.parent.isBlur=!1,this.parent.trigger(pe,{requestType:"Preview",targetItem:"Preview",args:e});var n=this.getPanel();this.parent.notify(me,{targetItem:"Preview",updateItem:"SourceCode",baseToolbar:this.parent.getBaseToolbarObject()});var i=this.parent.serializeValue(n.value),o=null===i||""===i?"<p><br/></p>":i;if(this.parent.iframeSettings.enable?(n.parentElement.style.display="none",this.contentModule.getPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=o):(n.style.display="none",this.contentModule.getEditPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=o),this.parent.isBlur=!1,this.parent.enableToolbarItem(this.parent.toolbarSettings.items),this.parent.getToolbar()&&t.removeClass([this.parent.getToolbar()],[Yt]),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").style.display="block"}this.parent.trigger(he,{requestType:"Preview",targetItem:"Preview",args:e}),this.parent.formatter.enableUndo(this.parent),this.parent.invokeChangeEvent()},n.prototype.getTextAreaValue=function(){return"<p><br></p>"===this.contentModule.getEditPanel().innerHTML||12===this.contentModule.getEditPanel().innerHTML.length||1===this.contentModule.getEditPanel().childNodes.length&&"P"===this.contentModule.getEditPanel().childNodes[0].tagName&&7===this.contentModule.getEditPanel().innerHTML.length?"":this.parent.value},n.prototype.getPanel=function(){return this.parent.element.querySelector(".e-rte-srctextarea")},n.prototype.getViewPanel=function(){return this.parent.iframeSettings.enable&&this.getPanel()?this.getPanel().parentElement:this.getPanel()},n.prototype.destroy=function(){this.removeEventListener()},n}(),gr=function(){function n(e,t){this.ensureInsideTableList=!0,this.pageX=null,this.pageY=null,this.moveEle=null,this.parent=e,this.rteID=e.element.id,this.l10n=t.getService("rteLocale"),this.rendererFactory=t.getService("rendererFactory"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.addEventListener()}return n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(Fe,this.renderDlgContent,this),this.parent.on(B,this.afterRender,this),this.parent.on(Qe,this.docClick,this),this.parent.on(Me,this.editAreaClickHandler,this),this.parent.on(We,this.onToolbarAction,this),this.parent.on(Z,this.dropdownSelect,this),this.parent.on(G,this.keyDown,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(Fe,this.renderDlgContent),this.parent.off(B,this.afterRender),this.parent.off(Qe,this.docClick),this.parent.off(Me,this.editAreaClickHandler),this.parent.off(We,this.onToolbarAction),this.parent.off(Z,this.dropdownSelect),this.parent.off(Oe,this.cellSelect),this.parent.off(Ie,this.setBGColor),this.parent.off(G,this.keyDown))},n.prototype.afterRender=function(){this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),this.parent.on(Ie,this.setBGColor,this),this.parent.on(Oe,this.cellSelect,this),this.parent.tableSettings.resize&&t.EventHandler.add(this.parent.contentModule.getEditPanel(),t.Browser.touchStartEvent,this.resizeStart,this),!t.Browser.isDevice&&this.parent.tableSettings.resize&&t.EventHandler.add(this.contentModule.getEditPanel(),"mouseover",this.resizeHelper,this)},n.prototype.dropdownSelect=function(e){var t=e.item;if(document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))&&"Table"===t.command){var n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i={args:e,selection:this.parent.formatter.editorManager.nodeSelection.save(n,this.contentModule.getDocument()),selectParent:this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(n)};switch(t.subCommand){case"InsertRowBefore":case"InsertRowAfter":this.addRow(i.selection,e);break;case"InsertColumnLeft":case"InsertColumnRight":this.addColumn(i.selection,e);break;case"DeleteColumn":case"DeleteRow":this.removeRowColumn(i.selection,e);break;case"AlignTop":case"AlignMiddle":case"AlignBottom":this.verticalAlign(i,e);break;case"Dashed":case"Alternate":this.tableStyles(i,t.subCommand)}}},n.prototype.keyDown=function(e){var n=e.args;switch(n.action){case"escape":break;case"insert-table":if("HTML"===this.parent.editorMode){var i=this.parent.contentModule.getDocument(),o=this.parent.formatter.editorManager.nodeSelection.getRange(i),r=this.parent.formatter.editorManager.nodeSelection.save(o,i),s={originalEvent:e.args,item:{command:"Table",subCommand:"CreateTable"}};this.insertTableDialog({self:this,args:s,selection:r})}n.preventDefault()}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule&&"KeyK"!==n.code){o=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),r=this.parent.formatter.editorManager.nodeSelection.save(o,this.contentModule.getDocument());var a=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(o)[0];if(a=a&&"TD"!==a.tagName&&"TH"!==a.tagName?a.parentElement:a,8!==n.keyCode&&46!==n.keyCode||(a&&"TBODY"===a.tagName?(n.preventDefault(),this.removeTable(r,n,!0)):a&&a.querySelectorAll("table").length>0&&this.removeResizeEle()),a&&"TD"!==a.tagName&&"TH"!==a.tagName){var l=t.closest(a,"td");a=!t.isNullOrUndefined(l)&&this.parent.inputElement.contains(l)?l:a}if(a&&("TD"===a.tagName||"TH"===a.tagName))switch(n.keyCode){case 9:case 37:case 39:this.tabSelection(n,r,a);break;case 40:case 38:this.tableArrowNavigation(n,r,a)}}},n.prototype.onToolbarAction=function(e){switch(e.args.item.subCommand){case"TableHeader":this.tableHeader(e.selection,e.args);break;case"TableRemove":this.removeTable(e.selection,e.args);break;case"TableEditProperties":this.editTable(e)}},n.prototype.verticalAlign=function(e,n){var i=t.closest(e.selectParent[0],"td")||t.closest(e.selectParent[0],"th");i&&this.parent.formatter.process(this.parent,n,n,{tableCell:i,subCommand:n.item.subCommand})},n.prototype.tableStyles=function(e,n){var i=t.closest(e.selectParent[0],"table");"Dashed"===n&&(this.parent.element.classList.contains(mn)?this.parent.element.classList.remove(mn):this.parent.element.classList.add(mn),i.classList.contains(mn)?i.classList.remove(mn):i.classList.add(mn)),"Alternate"===n&&(this.parent.element.classList.contains(gn)?this.parent.element.classList.remove(gn):this.parent.element.classList.add(gn),i.classList.contains(gn)?i.classList.remove(gn):i.classList.add(gn)),this.parent.formatter.saveData(),this.parent.formatter.editorManager.nodeSelection.restore()},n.prototype.insideList=function(e){for(var t=this.parent.formatter.editorManager.domNode.blockNodes(),n=[],i=0;i<t.length;i++)"LI"===t[i].parentNode.tagName?n.push(t[i].parentNode):"LI"===t[i].tagName&&"P"!==t[i].childNodes[0].tagName&&"OL"!==t[i].childNodes[0].tagName&&"UL"!==t[i].childNodes[0].tagName&&n.push(t[i]);return n.length>1||n.length&&0===e.startOffset&&0===e.endOffset?(this.ensureInsideTableList=!0,!0):(this.ensureInsideTableList=!1,!1)},n.prototype.tabSelection=function(e,n,i){var o=this.insideList(n.range);if((37!==e.keyCode&&39!==e.keyCode||3!==n.range.startContainer.nodeType)&&!o)if(e.preventDefault(),i.classList.remove(un),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&&(this.addRow(n,e,!0),""!==(a=a.parentElement.nextSibling.firstChild).textContent.trim()&&t.closest(a,"td")?n.setSelectionNode(this.contentModule.getDocument(),a):n.setSelectionText(this.contentModule.getDocument(),a,a,0,0))}},n.prototype.tableArrowNavigation=function(e,n,i){var o=n.range.startContainer;40===e.keyCode&&3===o.nodeType&&(o.nextSibling&&"BR"===o.nextSibling.nodeName||o.parentNode&&"TD"!==o.parentNode.nodeName)||38===e.keyCode&&3===o.nodeType&&(o.previousSibling&&"BR"===o.previousSibling.nodeName||o.parentNode&&"TD"!==o.parentNode.nodeName)||(e.preventDefault(),i.classList.remove(un),(i=40===e.keyCode?t.isNullOrUndefined(t.closest(i,"tr").nextSibling)?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").nextSibling.children[i.cellIndex]:t.isNullOrUndefined(t.closest(i,"tr").previousSibling)?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").previousSibling.children[i.cellIndex])&&n.setSelectionText(this.contentModule.getDocument(),i,i,0,0))},n.prototype.setBGColor=function(e){var n=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.save(n,this.contentModule.getDocument()).range.startContainer;if((i=3===i.nodeType?t.closest(i.parentNode,"td,th"):t.closest(i,"td, th"))&&("TD"===i.nodeName||"TH"===i.nodeName)){for(var o=t.closest(i,"table").querySelectorAll("."+un),r=0;r<o.length;r++)o[r].style.backgroundColor=e.item.value;this.parent.formatter.saveData()}},n.prototype.hideTableQuickToolbar=function(){this.quickToolObj&&this.quickToolObj.tableQTBar&&document.body.contains(this.quickToolObj.tableQTBar.element)&&this.quickToolObj.tableQTBar.hidePopup()},n.prototype.tableHeader=function(e,t){this.parent.formatter.process(this.parent,t,t.originalEvent,{selection:e,subCommand:t.item.subCommand})},n.prototype.editAreaClickHandler=function(n){if(!this.parent.readonly){var i=n.args,o=this.parent.quickToolbarSettings.showOnRightClick;if(!(2===i.which||o&&1===i.which||!o&&3===i.which)&&"HTML"===this.parent.editorMode&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.tableQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);if(this.quickToolObj.tableQTBar.element.classList.contains("e-rte-pop"))return;var s=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument()),a=t.closest(r,"table");if(r&&"A"!==r.nodeName&&"IMG"!==r.nodeName&&("TD"===r.nodeName||"TH"===r.nodeName||"TABLE"===r.nodeName||a&&this.parent.contentModule.getEditPanel().contains(a))&&(3!==s.startContainer.nodeType||s.collapsed)){var l=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument());this.parent.formatter.editorManager.nodeSelection.save(l,this.contentModule.getDocument()),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());var d=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+i.clientY:i.pageY;this.quickToolObj.tableQTBar.showPopup(i.pageX,d,r),this.parent.formatter.editorManager.nodeSelection.restore()}else this.hideTableQuickToolbar()}}},n.prototype.tableCellSelect=function(e){var n=e.target,i=Array.prototype.slice.call(n.parentElement.parentElement.children).indexOf(n.parentElement),o=Array.prototype.slice.call(n.parentElement.children).indexOf(n),r=this.dlgDiv.querySelectorAll(".e-rte-tablecell");Array.prototype.forEach.call(r,function(e){var n=Array.prototype.slice.call(e.parentElement.parentElement.children).indexOf(e.parentElement),r=Array.prototype.slice.call(e.parentElement.children).indexOf(e);t.removeClass([e],"e-active"),n<=i&&r<=o&&t.addClass([e],"e-active")}),this.tblHeader.innerHTML=o+1+"x"+(i+1)},n.prototype.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&&!d(a.ownerDocument.querySelector("body"),"e-lib")||!r.parent.iframeSettings.enable&&t.isNullOrUndefined(t.closest(a,"#"+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 c={row:e,columns:n,width:{minWidth:r.parent.tableSettings.minWidth,maxWidth:r.parent.tableSettings.maxWidth,width:r.parent.tableSettings.width},selection:o.selection};r.popupObj&&r.popupObj.hide(),r.editdlgObj&&r.editdlgObj.hide(),r.parent.formatter.process(r.parent,o.args,o.args.originalEvent,c),r.contentModule.getEditPanel().focus(),r.parent.on(Oe,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"),un),!n||"TD"!==n.tagName&&"TH"!==n.tagName||(n.removeAttribute("class"),t.addClass([n],un),this.curTable=this.curTable?this.curTable:t.closest(n,"table"),this.removeResizeEle(),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&t.detach(this.helper))},n.prototype.resizeHelper=function(e){if(!this.parent.readonly){var n=e.target||e.targetTouches[0].target,i=t.closest(n,"table");"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.removeResizeEle(),this.tableResizeEleCreation(this.curTable,e))}},n.prototype.tableResizeEleCreation=function(e,n){this.parent.preventDefaultResize(n);for(var i=Array.prototype.slice.call(e.rows[0].cells,1),o=[],r=0;r<e.rows.length;r++)o.push(Array.prototype.slice.call(e.rows[r].cells,0,1)[0]);var s=parseInt(getComputedStyle(e).height,10),a=parseInt(getComputedStyle(e).width,10),l=this.calcPos(e);for(r=0;i.length>r;r++){var d=this.parent.createElement("span",{attrs:{"data-col":(r+1).toString(),unselectable:"on",contenteditable:"false"}});d.classList.add(Un,fn),d.style.cssText="height: "+s+"px; width: 4px; top: "+l.top+"px; left:"+(l.left+this.calcPos(i[r]).left)+"px;",this.contentModule.getEditPanel().appendChild(d)}for(r=0;o.length>r;r++){var c=this.parent.createElement("span",{attrs:{"data-row":r.toString(),unselectable:"on",contenteditable:"false"}});c.classList.add(Un,bn);var p=t.isNullOrUndefined(e.getAttribute("cellspacing"))&&""===e.getAttribute("cellspacing")?this.calcPos(o[r]).left:0;c.style.cssText="width: "+a+"px; height: 4px; top: "+(this.calcPos(o[r]).top+l.top+o[r].offsetHeight-2)+"px; left:"+(p+l.left)+"px;",this.contentModule.getEditPanel().appendChild(c)}var h=this.parent.createElement("span",{className:vn,attrs:{"data-col":i.length.toString(),unselectable:"on",contenteditable:"false"}});h.style.cssText="top: "+(l.top+s-4)+"px; left:"+(l.left+a-4)+"px;",t.Browser.isDevice&&h.classList.add("e-rmob"),this.contentModule.getEditPanel().appendChild(h)},n.prototype.removeResizeEle=function(){var e=this.contentModule.getEditPanel().querySelectorAll(".e-column-resize, .e-row-resize, .e-table-box");if(e.length>0)for(var n=0;n<e.length;n++)t.detach(e[n])},n.prototype.calcPos=function(e){for(var n={top:0,left:0},i=e.getBoundingClientRect(),o=e.ownerDocument,r=e.offsetParent||o.documentElement;r&&(r===o.body||r===o.documentElement)&&"static"===r.style.position;)r=r.parentNode;return"TD"===r.nodeName&&"TABLE"===e.nodeName&&(r=t.closest(r,".e-control")),r&&r!==e&&1===r.nodeType&&(n=r.getBoundingClientRect()),{top:i.top-n.top,left:i.left-n.left}},n.prototype.getPointX=function(e){return e.touches&&e.touches.length?e.touches[0].pageX:e.pageX},n.prototype.getPointY=function(e){return e.touches&&e.touches.length?e.touches[0].pageY:e.pageY},n.prototype.resizeStart=function(e){var n=this;if(!this.parent.readonly){t.Browser.isDevice&&this.resizeHelper(e);var i=e.target;if(i.classList.contains(fn)||i.classList.contains(bn)||i.classList.contains(vn)){if(e.preventDefault(),this.parent.preventDefaultResize(e),t.removeClass(this.curTable.querySelectorAll("td,th"),un),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(fn)&&(this.resizeBtnStat.column=!0,this.columnEle=this.curTable.rows[0].cells[parseInt(i.getAttribute("data-col"),10)],this.colIndex=this.columnEle.cellIndex,this.moveEle=e.target,this.appendHelper()),i.classList.contains(bn)&&(this.rowEle=this.curTable.rows[parseInt(i.getAttribute("data-row"),10)],this.resizeBtnStat.row=!0,this.appendHelper()),i.classList.contains(vn)&&(this.resizeBtnStat.tableBox=!0),t.Browser.isDevice&&this.helper&&!this.helper.classList.contains("e-reicon"))this.helper.classList.add("e-reicon"),t.EventHandler.add(document,t.Browser.touchStartEvent,this.removeHelper,this),t.EventHandler.add(this.helper,t.Browser.touchStartEvent,this.resizeStart,this);else{var o=t.isBlazor()?{requestType:"Table"}:{event:e,requestType:"Table"};this.parent.trigger(oe,o,function(e){e.cancel&&n.cancelResizeAction()})}t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing,this),t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd,this)}}},n.prototype.removeHelper=function(e){!e.target.classList.contains("e-reicon")&&this.helper&&(t.EventHandler.remove(document,t.Browser.touchStartEvent,this.removeHelper),t.EventHandler.remove(this.helper,t.Browser.touchStartEvent,this.resizeStart),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&t.detach(this.helper),this.pageX=null,this.helper=null)},n.prototype.appendHelper=function(){this.helper=this.parent.createElement("div",{className:"e-table-rhelper"}),t.Browser.isDevice&&this.helper.classList.add("e-reicon"),this.contentModule.getEditPanel().appendChild(this.helper),this.setHelperHeight()},n.prototype.setHelperHeight=function(){var e=this.calcPos(this.curTable);this.resizeBtnStat.column?(this.helper.classList.add("e-column-helper"),this.helper.style.cssText="height: "+getComputedStyle(this.curTable).height+"; top: "+e.top+"px; left:"+(e.left+this.calcPos(this.columnEle).left-1)+"px;"):(this.helper.classList.add("e-row-helper"),this.helper.style.cssText="width: "+getComputedStyle(this.curTable).width+"; top: "+(this.calcPos(this.rowEle).top+e.top+this.rowEle.offsetHeight)+"px; left:"+(this.calcPos(this.rowEle).left+e.left)+"px;")},n.prototype.updateHelper=function(){var e=this.calcPos(this.curTable);if(this.resizeBtnStat.column){var t=e.left+this.calcPos(this.columnEle).left-1;this.helper.style.left=t+"px"}else{var n=this.calcPos(this.rowEle).top+e.top+this.rowEle.offsetHeight;this.helper.style.top=n+"px"}},n.prototype.resizing=function(e){var n=this,i=this.getPointX(e),o=this.getPointY(e),r=this.parent.enableRtl?-(i-this.pageX):i-this.pageX,s=this.parent.enableRtl?-(o-this.pageY):o-this.pageY;this.pageX=i,this.pageY=o;var a=t.isBlazor()?{requestType:"table"}:{event:e,requestType:"table"};this.parent.trigger(re,a,function(i){if(i.cancel)n.cancelResizeAction();else{var o=n.contentModule.getEditPanel().querySelector(".e-table-box"),a=parseInt(getComputedStyle(n.curTable).width,10),l=parseInt(getComputedStyle(n.curTable).height,10),d=+getComputedStyle(n.contentModule.getEditPanel()).paddingRight.match(/\d/g).join(""),c=n.contentModule.getEditPanel().offsetWidth-2*d;if(n.resizeBtnStat.column){for(var p=n.curTable.rows[0].cells,h=parseFloat(n.columnEle.offsetWidth.toLocaleString())-r,u=parseFloat(n.columnEle.offsetWidth.toLocaleString())+parseFloat(p[n.colIndex-1].offsetWidth.toLocaleString()),m=0;m<n.curTable.rows.length;m++)if(u-h>20&&h>20){var g=u-h,f=h;n.curTable.rows[m].cells[n.colIndex-1].style.width=n.convertPixelToPercentage(g,a)+"%",n.curTable.rows[m].cells[n.colIndex].style.width=n.convertPixelToPercentage(f,a)+"%"}n.updateHelper()}else if(n.resizeBtnStat.row){n.parent.preventDefaultResize(e);var b=parseFloat(n.rowEle.clientHeight.toString())+s;b>20&&(n.rowEle.style.height=b+"px"),n.curTable.style.height="",o.style.cssText="top: "+(n.calcPos(n.curTable).top+l-4)+"px; left:"+(n.calcPos(n.curTable).left+a-4)+"px;",n.updateHelper()}else if(n.resizeBtnStat.tableBox){t.Browser.isDevice||t.EventHandler.remove(n.contentModule.getEditPanel(),"mouseover",n.resizeHelper);var v=n.curTable.style.width.indexOf("%")>-1;n.curTable.style.width=v?n.convertPixelToPercentage(a+r,c)+"%":a+r+"px",n.curTable.style.height=l+s+"px",o.classList.add("e-rbox-select"),o.style.cssText="top: "+(n.calcPos(n.curTable).top+l-4)+"px; left:"+(n.calcPos(n.curTable).left+a-4)+"px;"}}})},n.prototype.convertPixelToPercentage=function(e,t){return e/t*100},n.prototype.cancelResizeAction=function(){t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),this.removeResizeEle()},n.prototype.resizeEnd=function(e){this.resizeBtnInit(),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),this.contentModule.getEditPanel().querySelector(".e-table-box")&&this.contentModule.getEditPanel().contains(this.contentModule.getEditPanel().querySelector(".e-table-box"))&&(t.Browser.isDevice||t.EventHandler.add(this.contentModule.getEditPanel(),"mouseover",this.resizeHelper,this),this.removeResizeEle(),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&(t.detach(this.helper),this.helper=null),this.pageX=null,this.pageY=null,this.moveEle=null);var n=t.isBlazor()?{requestType:"table"}:{event:e,requestType:"table"};this.parent.trigger(se,n),this.parent.formatter.saveData()},n.prototype.resizeBtnInit=function(){return this.resizeBtnStat={column:!1,row:!1,tableBox:!1}},n.prototype.addRow=function(e,t,n){var i;n&&(i={item:{command:"Table",subCommand:"InsertRowAfter"}});var o={selection:e,subCommand:n?i.item.subCommand:t.item.subCommand};this.parent.formatter.process(this.parent,n?i:t,t,o)},n.prototype.addColumn=function(e,t){this.parent.formatter.process(this.parent,t,t,{selection:e,width:this.parent.tableSettings.width,subCommand:t.item.subCommand})},n.prototype.removeRowColumn=function(e,t){this.parent.formatter.process(this.parent,t,t,{selection:e,subCommand:t.item.subCommand}),this.hideTableQuickToolbar()},n.prototype.removeTable=function(e,t,n){var i;n&&(i={item:{command:"Table",subCommand:"TableRemove"}});var o={selection:e,subCommand:n?i.item.subCommand:t.item.subCommand};this.parent.formatter.process(this.parent,n?i:t,t.originalEvent,o),this.contentModule.getEditPanel().focus(),this.removeResizeEle(),this.hideTableQuickToolbar()},n.prototype.renderDlgContent=function(e){var n=this;if(t.Browser.isDevice||this.parent.inlineMode.enable)this.insertTableDialog(e);else if(this.popupObj)this.popupObj.hide();else{this.hideTableQuickToolbar();var i=this.l10n.getConstant("inserttablebtn");this.dlgDiv=this.parent.createElement("div",{className:"e-rte-table-popup",id:this.rteID+"_table"}),this.tblHeader=this.parent.createElement("div",{className:"e-rte-popup-header"}),this.tblHeader.innerHTML="1X1",this.dlgDiv.appendChild(this.tblHeader);var r=this.parent.createElement("div",{className:"e-rte-table-span"});this.drawTable(r,e),this.dlgDiv.appendChild(r),this.dlgDiv.appendChild(this.parent.createElement("span",{className:"e-span-border"}));var a=this.parent.createElement("button",{className:"e-insert-table-btn",id:this.rteID+"_insertTable",attrs:{type:"button",tabindex:"0"}});t.isNullOrUndefined(this.parent.getToolbarElement().querySelector(".e-expended-nav"))||this.parent.getToolbarElement().querySelector(".e-expended-nav").setAttribute("tabindex","1"),this.dlgDiv.appendChild(a);var l=new s.Button({iconCss:"e-icons e-create-table",content:i,cssClass:"e-flat",enableRtl:this.parent.enableRtl,locale:this.parent.locale});l.isStringTemplate=!0,l.appendTo(a),t.EventHandler.add(a,"click",this.insertTableDialog,{self:this,args:e.args,selection:e.selection}),this.parent.getToolbar().appendChild(this.dlgDiv);var d=e.args.originalEvent.target;d=d.classList.contains("e-toolbar-item")?d.firstChild:d.parentElement,this.popupObj=new o.Popup(this.dlgDiv,{targetType:"relative",relateTo:d,collision:{X:"fit",Y:"none"},offsetY:8,viewPortElement:this.parent.element,position:{X:"left",Y:"bottom"},enableRtl:this.parent.enableRtl,zIndex:10001,close:function(e){n.parent.isBlur=!1,n.popupObj.destroy(),t.detach(n.popupObj.element),n.popupObj=null}}),t.addClass([this.popupObj.element],"e-popup-open"),this.popupObj.refreshPosition(d)}},n.prototype.docClick=function(e){var n=e.args.target;n&&n.classList&&(this.popupObj&&!t.closest(n,"#"+this.popupObj.element.id)||this.editdlgObj&&!t.closest(n,"#"+this.editdlgObj.element.id))&&!n.classList.contains("e-create-table")&&n.offsetParent&&!n.offsetParent.classList.contains("e-rte-backgroundcolor-dropdown")&&(this.popupObj&&this.popupObj.hide(),this.editdlgObj&&this.editdlgObj.hide(),this.parent.isBlur=!0,y(this.parent.element,"focusout"));var i=t.closest(n,"td"),o=!(!i||!this.parent.contentModule.getEditPanel().contains(i));!n||"TD"===n.tagName||"TH"===n.tagName||o||null!==t.closest(n,".e-rte-quick-popup")||!n.offsetParent||n.offsetParent.classList.contains("e-quick-dropdown")||n.offsetParent.classList.contains("e-rte-backgroundcolor-dropdown")||t.closest(n,".e-rte-dropdown-popup")||t.closest(n,".e-rte-elements")||(t.removeClass(this.parent.element.querySelectorAll("table td"),un),t.Browser.isIE||this.hideTableQuickToolbar()),!n||!n.classList||n.classList.contains(fn)||n.classList.contains(bn)||n.classList.contains(vn)||this.removeResizeEle()},n.prototype.drawTable=function(e,n){for(var i,o,r=0;r<3;r++){i=this.parent.createElement("div",{className:"e-rte-table-row",attrs:{"data-column":""+r}});for(var s=0;s<10;s++){var a=r>2?"none":"inline-block";o=this.parent.createElement("div",{className:"e-rte-tablecell e-default",attrs:{"data-cell":""+s}}),i.appendChild(o),o.style.display=a,0===s&&0===r&&t.addClass([o],"e-active"),t.EventHandler.add(o,"mousemove",this.tableCellSelect,this),t.EventHandler.add(i,"mouseleave",this.tableCellLeave,this),t.EventHandler.add(o,"mouseup",this.tableCellClick,{self:this,args:n.args,selection:n.selection})}e.appendChild(i)}},n.prototype.editTable=function(e){var t=this;this.createDialog(e);var n=this.tableDlgContent(e),i=this.l10n.getConstant("dialogUpdate"),o=this.l10n.getConstant("dialogCancel"),r=this.l10n.getConstant("tableEditHeader");this.editdlgObj.setProperties({height:"initial",width:"290px",content:n,header:r,buttons:[{click:this.applyProperties.bind(this,e),buttonModel:{content:i,cssClass:"e-flat e-size-update",isPrimary:!0}},{click:function(e){t.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:o}}]}),this.editdlgObj.element.style.maxHeight="none",this.editdlgObj.content.querySelector("input").focus(),this.hideTableQuickToolbar()},n.prototype.insertTableDialog=function(e){var t=this.self?this.self:this;t.popupObj&&t.popupObj.hide(),t.createDialog(e);var n=t.tableCellDlgContent(),i=t.l10n.getConstant("dialogInsert"),o=t.l10n.getConstant("dialogCancel");t.editdlgObj.setProperties({height:"initial",width:"290px",content:n,buttons:[{click:t.customTable.bind(this,e),buttonModel:{content:i,cssClass:"e-flat e-insert-table",isPrimary:!0}},{click:function(e){t.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:o}}]}),t.editdlgObj.element.style.maxHeight="none",t.editdlgObj.content.querySelector("input").focus()},n.prototype.tableCellDlgContent=function(){var e=this.l10n.getConstant("columns"),t=this.l10n.getConstant("rows"),n=this.parent.createElement("div",{className:"e-cell-wrap"}),i=C('<div class="e-rte-field"><input type="text" data-role ="none" id="tableColumn" class="e-table-column"/></div><div class="e-rte-field"><input type="text" data-role ="none" id="tableRow" class="e-table-row" /></div>');return n.appendChild(i),this.columnTextBox=new r.NumericTextBox({format:"n0",min:1,value:3,placeholder:e,floatLabelType:"Auto",max:50,enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.columnTextBox.isStringTemplate=!0,this.columnTextBox.appendTo(n.querySelector("#tableColumn")),this.rowTextBox=new r.NumericTextBox({format:"n0",min:1,value:3,placeholder:t,floatLabelType:"Auto",max:50,enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.rowTextBox.isStringTemplate=!0,this.rowTextBox.appendTo(n.querySelector("#tableRow")),n},n.prototype.createDialog=function(e){var n=this;if(this.editdlgObj)this.editdlgObj.hide({returnValue:!0});else{var i=this.parent.createElement("div",{className:"e-rte-edit-table",id:this.rteID+"_tabledialog"});this.parent.element.appendChild(i);var o=this.l10n.getConstant("dialogInsert"),r=this.l10n.getConstant("dialogCancel"),s={header:this.l10n.getConstant("tabledialogHeader"),cssClass:Xt,enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"340px",height:"initial",position:{X:"center",Y:t.Browser.isDevice?"center":"top"},isModal:t.Browser.isDevice,buttons:[{buttonModel:{content:o,cssClass:"e-flat e-insert-table",isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:r}}],target:t.Browser.isDevice?document.body:this.parent.element,animationSettings:{effect:"None"},close:function(e){n.parent.isBlur=!1,n.editdlgObj.destroy(),t.detach(n.editdlgObj.element),n.dialogRenderObj.close(e),n.editdlgObj=null}};this.editdlgObj=this.dialogRenderObj.render(s),this.editdlgObj.appendTo(i),this.quickToolObj&&this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup()}},n.prototype.customTable=function(e,n){var i=this.self?this.self:this;if(i.rowTextBox.value&&i.columnTextBox.value){var o=t.Browser.isDevice||!t.isNullOrUndefined(e.args)&&!t.isNullOrUndefined(e.args.originalEvent)&&"insert-table"===e.args.originalEvent.action||i.parent.inlineMode.enable?e:this;i.tableInsert(i.rowTextBox.value,i.columnTextBox.value,n,o)}},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.editdlgObj.hide({returnValue:!0})},n.prototype.applyProperties=function(e,n){var i=this.editdlgObj.element,o=t.closest(e.selectNode[0],"table");if(o.style.width=i.querySelector(".e-table-width").value+"px",""!==i.querySelector(".e-cell-padding").value)for(var r=o.querySelectorAll("td"),s=0;s<r.length;s++){var a="";""===r[s].style.padding?a=r[s].getAttribute("style")+" padding:"+i.querySelector(".e-cell-padding").value+"px;":(r[s].style.padding=i.querySelector(".e-cell-padding").value+"px",a=r[s].getAttribute("style")),r[s].setAttribute("style",a)}o.cellSpacing=i.querySelector(".e-cell-spacing").value,t.isNullOrUndefined(o.cellSpacing)&&"0"===o.cellSpacing?t.removeClass([o],Hn):t.addClass([o],Hn),this.parent.formatter.saveData(),this.editdlgObj.hide({returnValue:!0})},n.prototype.tableDlgContent=function(e){var n=e.selectParent[0],i=this.l10n.getConstant("tableWidth"),o=this.l10n.getConstant("cellpadding"),s=this.l10n.getConstant("cellspacing"),a=this.parent.createElement("div",{className:"e-table-sizewrap"}),l=t.closest(n,"table").getClientRects()[0].width,d=t.closest(n,"td").style.padding,c=t.closest(n,"table").getAttribute("cellspacing"),p=C('<div class="e-rte-field"><input type="text" data-role ="none" id="tableWidth" class="e-table-width" /></div><div class="e-rte-field"><input type="text" data-role ="none" id="cellPadding" class="e-cell-padding" /> </div><div class="e-rte-field"><input type="text" data-role ="none" id="cellSpacing" class="e-cell-spacing" /></div>');a.appendChild(p);var h=new r.NumericTextBox({format:"n0",min:0,value:l,placeholder:i,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale});h.isStringTemplate=!0,h.appendTo(a.querySelector("#tableWidth"));var u=new r.NumericTextBox({format:"n0",min:0,value:""!==d?parseInt(d,null):0,placeholder:o,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale});u.isStringTemplate=!0,u.appendTo(a.querySelector("#cellPadding"));var m=new r.NumericTextBox({format:"n0",min:0,value:""===c||t.isNullOrUndefined(c)?0:parseInt(c,null),placeholder:s,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale});return m.isStringTemplate=!0,m.appendTo(a.querySelector("#cellSpacing")),a},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.getModuleName=function(){return"table"},n}(),fr=function(){function e(e){this.parent=e}return e.prototype.render=function(e){var n;return t.isNullOrUndefined(e.beforeOpen)&&(e.beforeOpen=this.beforeOpen.bind(this)),t.isNullOrUndefined(e.open)&&(e.open=this.open.bind(this)),t.isNullOrUndefined(e.close)&&(e.close=this.close.bind(this)),n=new o.Dialog(e),n.isStringTemplate=!0,n},e.prototype.beforeOpen=function(e){this.parent.trigger(Ye,e)},e.prototype.open=function(e){this.parent.trigger(Xe,e)},e.prototype.close=function(e){this.parent.trigger(Je,e)},e}(),br={bold:{command:"Style",subCommand:"Bold",value:"strong"},italic:{command:"Style",subCommand:"Italic",value:"em"},underline:{command:"Style",subCommand:"Underline",value:"span"},strikeThrough:{command:"Style",subCommand:"StrikeThrough",value:"span"},insertCode:{command:"Formats",subCommand:"Pre",value:"pre"},superscript:{command:"Effects",subCommand:"SuperScript",value:"sup"},subscript:{command:"Effects",subCommand:"SubScript",value:"sub"},uppercase:{command:"Casing",subCommand:"UpperCase"},lowercase:{command:"Casing",subCommand:"LowerCase"},fontColor:{command:"font",subCommand:"fontcolor",value:"#ff0000"},fontName:{command:"font",subCommand:"fontname",value:"Segoe UI"},fontSize:{command:"font",subCommand:"fontsize",value:"10pt"},backColor:{command:"font",subCommand:"backgroundcolor",value:"#ffff00"},justifyCenter:{command:"Alignments",subCommand:"JustifyCenter"},justifyFull:{command:"Alignments",subCommand:"JustifyFull"},justifyLeft:{command:"Alignments",subCommand:"JustifyLeft"},justifyRight:{command:"Alignments",subCommand:"JustifyRight"},undo:{command:"Actions",subCommand:"Undo"},redo:{command:"Actions",subCommand:"Redo"},createLink:{command:"Links",subCommand:"createLink"},editLink:{command:"Links",subCommand:"createLink"},createImage:{command:"Images",subCommand:"Images"},formatBlock:{command:"Formats",value:"P"},heading:{command:"Formats",value:"H1"},indent:{command:"Indents",subCommand:"Indent"},outdent:{command:"Indents",subCommand:"Outdent"},insertHTML:{command:"InsertHTML",subCommand:"InsertHTML",value:""},insertText:{command:"InsertText",subCommand:"InsertText",value:""},insertHorizontalRule:{command:"InsertHTML",subCommand:"InsertHTML",value:"<hr/>"},insertImage:{command:"Images",subCommand:"Image"},editImage:{command:"Images",subCommand:"Image"},insertTable:{command:"Table",subCommand:"CreateTable"},insertBrOnReturn:{command:"InsertHTML",subCommand:"InsertHTML",value:"<br/>"},insertOrderedList:{command:"Lists",value:"OL"},insertUnorderedList:{command:"Lists",value:"UL"},insertParagraph:{command:"Formats",value:"P"},removeFormat:{command:"Clear",subCommand:"ClearFormat"}},vr=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)}}(),yr=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},Cr=["Bold","Italic","Underline","|","Formats","Alignments","OrderedList","UnorderedList","|","CreateLink","Image","|","SourceCode","Undo","Redo"],Tr=[{text:"Segoe UI",value:"Segoe UI",cssClass:"e-segoe-ui"},{text:"Arial",value:"Arial,Helvetica,sans-serif",cssClass:"e-arial"},{text:"Georgia",value:"Georgia,serif",cssClass:"e-georgia"},{text:"Impact",value:"Impact,Charcoal,sans-serif",cssClass:"e-impact"},{text:"Tahoma",value:"Tahoma,Geneva,sans-serif",cssClass:"e-tahoma"},{text:"Times New Roman",value:"Times New Roman,Times,serif",cssClass:"e-times-new-roman"},{text:"Verdana",value:"Verdana,Geneva,sans-serif",cssClass:"e-verdana"}],Sr=[{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"}],Er=[{text:"Paragraph",value:"P",cssClass:"e-paragraph"},{text:"Code",value:"Pre",cssClass:"e-code"},{text:"Quotation",value:"BlockQuote",cssClass:"e-quote"},{text:"Heading 1",value:"H1",cssClass:"e-h1"},{text:"Heading 2",value:"H2",cssClass:"e-h2"},{text:"Heading 3",value:"H3",cssClass:"e-h3"},{text:"Heading 4",value:"H4",cssClass:"e-h4"}],Nr={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"]},kr={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"]},wr=function(n){function i(){return null!==n&&n.apply(this,arguments)||this}return vr(i,n),yr([t.Property(!0)],i.prototype,"enable",void 0),yr([t.Property(!0)],i.prototype,"enableFloating",void 0),yr([t.Property(e.ToolbarType.Expand)],i.prototype,"type",void 0),yr([t.Property(Cr)],i.prototype,"items",void 0),yr([t.Property({})],i.prototype,"itemConfigs",void 0),i}(t.ChildProperty),Lr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return vr(n,e),yr([t.Property([".jpeg",".jpg",".png"])],n.prototype,"allowedTypes",void 0),yr([t.Property("inline")],n.prototype,"display",void 0),yr([t.Property("Blob")],n.prototype,"saveFormat",void 0),yr([t.Property("auto")],n.prototype,"width",void 0),yr([t.Property("auto")],n.prototype,"height",void 0),yr([t.Property(null)],n.prototype,"saveUrl",void 0),yr([t.Property(null)],n.prototype,"path",void 0),yr([t.Property(!0)],n.prototype,"resize",void 0),yr([t.Property(0)],n.prototype,"minWidth",void 0),yr([t.Property(null)],n.prototype,"maxWidth",void 0),yr([t.Property(0)],n.prototype,"minHeight",void 0),yr([t.Property(null)],n.prototype,"maxHeight",void 0),yr([t.Property(!1)],n.prototype,"resizeByPercent",void 0),n}(t.ChildProperty),xr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return vr(n,e),yr([t.Property("100%")],n.prototype,"width",void 0),yr([t.Property(Zn)],n.prototype,"styles",void 0),yr([t.Property(!0)],n.prototype,"resize",void 0),yr([t.Property(0)],n.prototype,"minWidth",void 0),yr([t.Property(null)],n.prototype,"maxWidth",void 0),n}(t.ChildProperty),Or=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return vr(n,e),yr([t.Property(!0)],n.prototype,"enable",void 0),yr([t.Property(!1)],n.prototype,"showOnRightClick",void 0),yr([t.Property("hide")],n.prototype,"actionOnScroll",void 0),yr([t.Property(["Open","Edit","UnLink"])],n.prototype,"link",void 0),yr([t.Property(["Replace","Align","Caption","Remove","-","InsertLink","OpenImageLink","EditImageLink","RemoveImageLink","Display","AltText","Dimension"])],n.prototype,"image",void 0),yr([t.Property(["Cut","Copy","Paste"])],n.prototype,"text",void 0),yr([t.Property(["TableHeader","TableRows","TableColumns","BackgroundColor","-","TableRemove","Alignments","TableCellVerticalAlign","Styles"])],n.prototype,"table",void 0),n}(t.ChildProperty),Dr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return vr(n,e),yr([t.Property(!1)],n.prototype,"prompt",void 0),yr([t.Property(null)],n.prototype,"deniedAttrs",void 0),yr([t.Property(["background","background-color","border","border-bottom","border-left","border-radius","border-right","border-style","border-top","border-width","clear","color","cursor","direction","display","float","font","font-family","font-size","font-weight","font-style","height","left","line-height","margin","margin-top","margin-left","margin-right","margin-bottom","max-height","max-width","min-height","min-width","overflow","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","position","right","table-layout","text-align","text-decoration","text-indent","top","vertical-align","visibility","white-space","width"])],n.prototype,"allowedStyleProps",void 0),yr([t.Property(null)],n.prototype,"deniedTags",void 0),yr([t.Property(!0)],n.prototype,"keepFormat",void 0),yr([t.Property(!1)],n.prototype,"plainText",void 0),n}(t.ChildProperty),Mr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return vr(n,e),yr([t.Property(null)],n.prototype,"default",void 0),yr([t.Property("65px")],n.prototype,"width",void 0),yr([t.Property(Tr)],n.prototype,"items",void 0),n}(t.ChildProperty),Rr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return vr(n,e),yr([t.Property(null)],n.prototype,"default",void 0),yr([t.Property("35px")],n.prototype,"width",void 0),yr([t.Property(Sr)],n.prototype,"items",void 0),n}(t.ChildProperty),Br=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return vr(n,e),yr([t.Property(null)],n.prototype,"default",void 0),yr([t.Property("65px")],n.prototype,"width",void 0),yr([t.Property(Er)],n.prototype,"types",void 0),n}(t.ChildProperty),Pr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return vr(n,e),yr([t.Property("#ff0000")],n.prototype,"default",void 0),yr([t.Property("Palette")],n.prototype,"mode",void 0),yr([t.Property(10)],n.prototype,"columns",void 0),yr([t.Property(Nr)],n.prototype,"colorCode",void 0),yr([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),Ir=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return vr(n,e),yr([t.Property("#ffff00")],n.prototype,"default",void 0),yr([t.Property("Palette")],n.prototype,"mode",void 0),yr([t.Property(10)],n.prototype,"columns",void 0),yr([t.Property(kr)],n.prototype,"colorCode",void 0),yr([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),Ar=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)}}(),Hr=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},Ur=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Ar(n,e),Hr([t.Property([])],n.prototype,"styles",void 0),Hr([t.Property([])],n.prototype,"scripts",void 0),n}(t.ChildProperty),jr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Ar(n,e),Hr([t.Property(!1)],n.prototype,"enable",void 0),Hr([t.Property(null)],n.prototype,"attributes",void 0),Hr([t.Complex({},Ur)],n.prototype,"resources",void 0),n}(t.ChildProperty),zr=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)}}(),qr=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},_r=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return zr(n,e),qr([t.Property(!1)],n.prototype,"enable",void 0),qr([t.Property(!0)],n.prototype,"onSelection",void 0),n}(t.ChildProperty),Fr=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)}}(),Qr=function(){return(Qr=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)},Wr=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},Vr=function(n){function i(e,t){var i=n.call(this,e,t)||this;return i.defaultResetValue=null,i.isFocusOut=!1,i.isRTE=!1,i.isBlur=!0,i.needsID=!0,i}return Fr(i,n),i.prototype.requiredModules=function(){var e=[];return this.toolbarSettings.enable&&(e.push({member:"toolbar",args:[this,this.serviceLocator]}),e.push({member:"link",args:[this,this.serviceLocator]}),e.push({member:"table",args:[this,this.serviceLocator]}),e.push({member:"image",args:[this,this.serviceLocator]}),this.quickToolbarSettings.enable&&e.push({member:"quickToolbar",args:[this,this.serviceLocator]})),this.showCharCount&&e.push({member:"count",args:[this,this.serviceLocator]}),"Markdown"===this.editorMode&&e.push({member:"markdownEditor",args:[this,this.serviceLocator]}),"HTML"===this.editorMode&&(e.push({member:"htmlEditor",args:[this,this.serviceLocator]}),e.push({member:"pasteCleanup",args:[this,this.serviceLocator]})),this.enableResize&&e.push({member:"resize",args:[this]}),e},i.prototype.updateEnable=function(){this.enabled?(t.removeClass([this.element],dt),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("."+Kt),Kt),t.removeClass([this.getToolbar()],[mt,gt])),t.addClass([this.element],dt),this.element.tabIndex=-1,this.element.setAttribute("aria-disabled","true"),this.inputElement.setAttribute("tabindex","-1"))},i.prototype.setEnable=function(){this.updateEnable(),this.enabled?this.eventInitializer():this.unWireEvents()},i.prototype.preRender=function(){this.onBlurHandler=this.blurHandler.bind(this),this.onFocusHandler=this.focusHandler.bind(this),this.onResizeHandler=this.resizeHandler.bind(this),this.clickPoints={clientX:0,clientY:0},this.initialValue=this.value,this.serviceLocator=new ai,this.initializeServices(),this.setContainer(),this.persistData(),t.setStyleAttribute(this.element,{width:t.formatUnit(this.width)}),t.attributes(this.element,{role:"application"})},i.prototype.persistData=function(){if(this.enablePersistence&&"TEXTAREA"===this.originalElement.tagName){this.element.id=this.originalElement.id+"_wrapper";var e=window.localStorage.getItem(this.getModuleName()+this.element.id);t.isNullOrUndefined(e)||""===e||this.setProperties(JSON.parse(e),!0)}},i.prototype.setContainer=function(){this.originalElement=this.element.cloneNode(!0),null!==this.value&&null===this.valueTemplate||this.setValue(),this.element.hasAttribute("tabindex")&&(this.htmlAttributes={tabindex:this.element.getAttribute("tabindex")},this.element.removeAttribute("tabindex")),this.isBlazor()||(this.element.innerHTML="");for(var e=["class","style","id","ejs-for"],n={},i=0;i<this.element.attributes.length;i++)-1!==e.indexOf(this.element.attributes[i].name)||/^data-val/.test(this.element.attributes[i].name)||(n[this.element.attributes[i].name]=this.element.getAttribute(this.element.attributes[i].name));if(t.extend(n,this.htmlAttributes,n),this.setProperties({htmlAttributes:n},!0),t.isNullOrUndefined(this.htmlAttributes.id)||(this.element.id=this.htmlAttributes.id),"TEXTAREA"===this.element.tagName){var o=this.createElement("div",{className:this.element.getAttribute("class")});this.isBlazor()||(this.element.innerHTML=""),this.element.parentElement.insertBefore(o,this.element),t.isBlazor()?(o.appendChild(this.element),this.valueContainer=this.createElement("textarea",{id:this.element.id+"-value"})):this.valueContainer=this.element,t.removeClass([this.valueContainer],this.element.getAttribute("class").split(" ")),this.isBlazor()&&t.addClass([this.element],yn),this.element=o}else this.valueContainer=this.createElement("textarea",{id:this.getID()+"-value"});this.valueContainer.name=this.getID(),t.addClass([this.valueContainer],yn),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(He,{})},i.prototype.selectRange=function(e){this.notify(Ue,{range:e})},i.prototype.getSelection=function(){var e="";return this.notify(je,{callBack:function(t){e=t}}),e},i.prototype.executeCommand=function(e,t,n){if(t=this.htmlPurifier(e,t),"HTML"===this.editorMode){var i=this.getRange();this.iframeSettings.enable&&this.formatter.editorManager.nodeSelection.Clear(this.element.ownerDocument);(!(!this.iframeSettings.enable||i.startContainer!==this.inputElement)||!this.inputElement.contains(i.startContainer))&&this.focusIn()}var o=br[e];n&&n.undo&&n.undo&&0===this.formatter.getUndoRedoStack().length&&this.formatter.saveData(),this.formatter.editorManager.execCommand(o.command,o.subCommand?o.subCommand:t||o.value,null,null,t||o.value,t||o.value),n&&n.undo&&(this.formatter.saveData(),this.formatter.enableUndo(this)),this.setPlaceHolder()},i.prototype.htmlPurifier=function(e,n){if("HTML"===this.editorMode)switch(e){case"insertHTML":this.enableHtmlSanitizer&&(n="string"==typeof n?this.htmlEditorModule.sanitizeHelper(n):this.htmlEditorModule.sanitizeHelper(n.outerHTML));break;case"insertTable":t.isNullOrUndefined(n.width)&&(n.width={minWidth:this.tableSettings.minWidth,maxWidth:this.tableSettings.maxWidth,width:this.tableSettings.width});break;case"insertImage":var i=this.createElement("img",{attrs:{src:n.url}}),o=i.outerHTML;this.enableHtmlSanitizer&&(o=this.htmlEditorModule.sanitizeHelper(i.outerHTML));var r=""!==o&&this.createElement("div",{innerHTML:o}).firstElementChild.getAttribute("src")||null;r=t.isNullOrUndefined(r)?"":r,n.url=r,t.isNullOrUndefined(n.width)&&(n.width={minWidth:this.insertImageSettings.minWidth,maxWidth:this.insertImageSettings.maxWidth,width:this.insertImageSettings.width}),t.isNullOrUndefined(n.height)&&(n.height={minHeight:this.insertImageSettings.minHeight,maxHeight:this.insertImageSettings.maxHeight,height:this.insertImageSettings.height});break;case"createLink":var s=this.createElement("a",{attrs:{href:n.url}}),a=s.outerHTML;this.enableHtmlSanitizer&&(a=this.htmlEditorModule.sanitizeHelper(s.outerHTML));var l=""!==a&&this.createElement("div",{innerHTML:a}).firstElementChild.getAttribute("href")||null;l=t.isNullOrUndefined(l)?"":l,n.url=l}return n},i.prototype.encode=function(e){var t=this.createElement("div");return t.innerText=e.trim(),t.innerHTML.replace(/<br\s*[\/]?>/gi,"\n")},i.prototype.render=function(){this.value&&!this.valueTemplate&&this.setProperties({value:this.serializeValue(this.value)},!0),this.renderModule=new pr(this,this.serviceLocator),this.sourceCodeModule=new mr(this,this.serviceLocator),this.notify(R,{}),this.trigger("load"),this.RTERender();new Si(this);this.notify(B,{}),this.toolbarSettings.enable&&"Expand"===this.toolbarSettings.type&&!t.isNullOrUndefined(this.getToolbar())&&this.toolbarSettings.items.indexOf("Undo")>-1&&this.toolbarSettings.items.indexOf("Redo")>-1&&this.disableToolbarItem(["Undo","Redo"]),this.setContentHeight(),null!==this.value&&(this.isBlazor()?this.defaultResetValue=this.value:this.valueContainer.defaultValue=this.value),this.enabled?this.eventInitializer():this.unWireEvents(),this.renderComplete()},i.prototype.eventInitializer=function(){this.wireEvents()},i.prototype.keyDown=function(e){if(this.notify(G,{member:"keydown",args:e}),this.restrict(e),"HTML"===this.editorMode&&(8===e.which&&"Backspace"===e.code||46===e.which&&"Delete"===e.code)){var n=this.getRange(),i="#text"===n.startContainer.nodeName?n.startContainer.parentElement:n.startContainer;if(t.closest(i,"pre")&&8===e.which&&8203===n.startContainer.textContent.charCodeAt(n.startOffset-1)||46===e.which&&8203===n.startContainer.textContent.charCodeAt(n.startOffset)){var o=new RegExp(String.fromCharCode(8203),"g"),r=8===e.which?n.startOffset-1:n.startOffset;n.startContainer.textContent=n.startContainer.textContent.replace(o,""),this.formatter.editorManager.nodeSelection.setCursorPoint(this.contentModule.getDocument(),n.startContainer,r)}else if("Backspace"===e.code&&8===e.which&&8203===n.startContainer.textContent.charCodeAt(0)){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--)8203===s.childNodes[l].textContent.charCodeAt(0)&&d?c.push(l):d=!1;if(c.length>0)for(l=c.length-1;l>0;l--)s.childNodes[c[l]].textContent="";this.formatter.editorManager.nodeSelection.setCursorPoint(this.contentModule.getDocument(),n.startContainer,n.startOffset)}}if(0===this.formatter.getUndoRedoStack().length&&this.formatter.saveData(),"insert-link"!==e.action&&(e.action&&"paste"!==e.action||9===e.which||"Backspace"===e.code&&8===e.which))switch(this.formatter.process(this,null,e),e.action){case"toolbar-focus":if(this.toolbarSettings.enable){this.toolbarModule.baseToolbar.toolbarObj.element.querySelector('.e-toolbar-item[aria-disabled="false"][title] [tabindex]').focus()}break;case"escape":this.contentModule.getEditPanel().focus()}t.isNullOrUndefined(this.placeholder)||this.setPlaceHolder(),this.autoResize()},i.prototype.keyUp=function(e){this.notify(V,{member:"keyup",args:e});var n=32===e.which||13===e.which||8===e.which||46===e.which;("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||n||"Markdown"===this.editorMode&&("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||n)&&!this.inlineMode.enable)&&this.formatter.onKeyHandler(this,e),this.inputElement&&0!==this.inputElement.textContent.length&&this.notify(H,{args:e}),t.isNullOrUndefined(this.placeholder)||this.setPlaceHolder()},i.prototype.serializeValue=function(e){return"HTML"!==this.editorMode||t.isNullOrUndefined(e)||(this.enableHtmlEncode?(e=this.htmlEditorModule.sanitizeHelper(w(e)),e=this.encode(e)):e=this.htmlEditorModule.sanitizeHelper(e)),e},i.prototype.sanitizeHtml=function(e){return this.serializeValue(e)},i.prototype.updateValue=function(e){if(t.isNullOrUndefined(e)){var n=this.inputElement.innerHTML;this.setProperties({value:k(n)?null:n})}else this.setProperties({value:e})},i.prototype.triggerEditArea=function(e){if(p()){var t=e.touches?e.changedTouches[0]:e;this.clickPoints.clientX===t.clientX&&this.clickPoints.clientY===t.clientY&&this.notify(Me,{member:"editAreaClick",args:e})}else this.notify(Me,{member:"editAreaClick",args:e})},i.prototype.notifyMouseUp=function(e){var t=e.touches?e.changedTouches[0]:e;this.notify(K,{member:"mouseUp",args:e,touchData:{prevClientX:this.clickPoints.clientX,prevClientY:this.clickPoints.clientY,clientX:t.clientX,clientY:t.clientY}}),this.inputElement&&("HTML"===this.editorMode&&0!==this.inputElement.textContent.length||"Markdown"===this.editorMode&&0!==this.inputElement.value.length)&&this.notify(H,{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(pe,i,function(i){var o=n.getText().length-n.getSelection().length+(t.isNullOrUndefined(e)||t.isNullOrUndefined(e.clipboardData)?0:e.clipboardData.getData("text/plain").length);if(!i.cancel&&"true"===n.inputElement.contentEditable&&(-1===n.maxLength||o<n.maxLength))if(t.isNullOrUndefined(n.pasteCleanupModule)){var r={requestType:"Paste",editorMode:n.editorMode,event:e},s=null;e&&!t.isNullOrUndefined(e.clipboardData)&&(s=e.clipboardData.getData("text/plain"));var a=e&&e.clipboardData&&e.clipboardData.items.length>0?e.clipboardData.items[0].getAsFile():null;null!==s&&n.notify(qe,{file:a,args:e,text:s}),setTimeout(function(){n.formatter.onSuccess(n,r)},0)}else n.notify(Ke,{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(this.notify(I,{}),this.destroyDependentModules(),t.isNullOrUndefined(this.timeInterval)||(clearInterval(this.timeInterval),this.timeInterval=null),this.unWireEvents(),"TEXTAREA"===this.originalElement.tagName){t.isBlazor()&&(t.detach(this.valueContainer),this.valueContainer=this.element.querySelector(".e-blazor-hidden.e-control.e-richtexteditor")),this.element.parentElement.insertBefore(this.valueContainer,this.element),this.valueContainer.id=this.getID(),this.valueContainer.removeAttribute("name"),t.detach(this.element),""!==this.originalElement.innerHTML.trim()?t.isBlazor()||(this.valueContainer.value=this.originalElement.innerHTML.trim(),this.setProperties({value:t.isNullOrUndefined(this.initialValue)?null:this.initialValue},!0)):this.valueContainer.value=this.isBlazor()?this.defaultResetValue:this.valueContainer.defaultValue,this.element=this.valueContainer;for(var e=0;e<this.originalElement.classList.length;e++)t.addClass([this.element],this.originalElement.classList[e]);t.removeClass([this.element],yn)}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="";this.placeholder&&this.placeHolderWrapper&&(this.placeHolderWrapper=null),t.isNullOrUndefined(this.cssClass)||t.removeClass([this.element],this.cssClass),this.removeHtmlAttributes(),this.removeAttributes(),t.isBlazor()&&this.isServerRendered?this.isDestroyed=!0:n.prototype.destroy.call(this),this.isRendered=!1,this.enablePersistence&&window.localStorage.removeItem(this.getModuleName()+this.element.id)}},i.prototype.removeHtmlAttributes=function(){if(this.htmlAttributes)for(var e=Object.keys(this.htmlAttributes),t=0;t<e.length&&this.element.hasAttribute(e[t]);t++)this.element.removeAttribute(e[t])},i.prototype.removeAttributes=function(){this.enabled||t.removeClass([this.element],dt),this.enableRtl&&t.removeClass([this.element],"e-rtl"),this.readonly&&t.removeClass([this.element],hn),""!==this.element.style.width&&""===this.originalElement.style.width&&this.element.style.removeProperty("width"),""!==this.element.style.height&&""===this.originalElement.style.height&&this.element.style.removeProperty("height"),this.element.removeAttribute("aria-disabled"),this.element.removeAttribute("role"),this.element.removeAttribute("tabindex")},i.prototype.destroyDependentModules=function(){this.renderModule.destroy(),this.formatter.editorManager.undoRedoManager.destroy(),this.sourceCodeModule.destroy()},i.prototype.getContent=function(){return this.iframeSettings.enable&&t.isBlazor()?this.inputElement:this.contentModule.getPanel()},i.prototype.getText=function(){return this.contentModule.getText()},i.prototype.getSelectedHtml=function(){var e=this.createElement("div"),t=this.contentModule.getDocument().getSelection();if(t.rangeCount>0){var n=t.getRangeAt(0).cloneContents();e.appendChild(n)}return e.innerHTML},i.prototype.getModuleName=function(){return"richtexteditor"},i.prototype.onPropertyChanged=function(e,i){for(var o=0,r=Object.keys(e);o<r.length;o++){var s=r[o];switch(s){case"value":var a=void 0,l=e[s];a="HTML"===this.editorMode?E(l,this):l,t.isNullOrUndefined(l)||""===l||(this.value=this.serializeValue(this.enableHtmlEncode?this.encode(w(a)):a)),this.updatePanelValue(),this.setPlaceHolder(),this.notify(at,{module:"XhtmlValidation",newProp:e,oldProp:i}),this.showCharCount&&this.countModule.refresh();break;case"valueTemplate":this.setValue(),this.showCharCount&&this.countModule.refresh();break;case"width":this.setWidth(e[s]),this.toolbarSettings.enable&&(this.toolbarModule.refreshToolbarOverflow(),this.resizeHandler());break;case"height":this.setHeight(e[s]),this.setContentHeight(),this.autoResize();break;case"readonly":this.setReadOnly(!1);break;case"cssClass":this.element.classList.remove(i[s]),this.setCssClass(e[s]);break;case"enabled":this.setEnable();break;case"enableRtl":this.updateRTL();break;case"placeholder":this.placeholder=e[s],this.setPlaceHolder();break;case"htmlAttributes":M(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("."+ct),this.removeSheets(p)),d.resources.styles&&(p=c.querySelectorAll("."+pt),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(xi,{newProp:e,oldProp:i});break;case"enableXhtml":this.notify(at,{module:"XhtmlValidation",newProp:e,oldProp:i});break;case"quickToolbarSettings":e.quickToolbarSettings.showOnRightClick?this.wireContextEvent():this.unWireContextEvent(),this.notify(W,{newProp:e,oldProp:i});break;default:this.notify(W,{newProp:e,oldProp:i})}}},i.prototype.updateValueData=function(){this.enableHtmlEncode?this.setProperties({value:this.encode(w(this.inputElement.innerHTML))},!0):this.setProperties({value:/<[a-z][\s\S]*>/i.test(this.inputElement.innerHTML)?this.inputElement.innerHTML:w(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?w(e):e)?(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)):("HTML"===this.editorMode?this.inputElement.innerHTML="<p><br/></p>":this.inputElement.value="",this.valueContainer&&(this.valueContainer.value="")),this.showCharCount&&this.countModule.refresh()},i.prototype.setHeight=function(e){this.element.style.height="auto"!==e?t.formatUnit(e):"auto"},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"}),this.inputElement&&this.inputElement.parentElement.insertBefore(this.placeHolderWrapper,this.inputElement),t.attributes(this.placeHolderWrapper,{style:"font-size: 16px; padding: 16px; margin-left: 0px; margin-right: 0px;"})),this.placeHolderWrapper.innerHTML=this.placeholder,0!==this.inputElement.textContent.length||t.isNullOrUndefined(this.inputElement.firstChild)||"P"!==this.inputElement.firstChild.nodeName||t.isNullOrUndefined(this.inputElement.firstChild.firstChild)||"BR"!==this.inputElement.firstChild.firstChild.nodeName?this.placeHolderWrapper.style.display="none":this.placeHolderWrapper.style.display="block"):this.inputElement.setAttribute("placeholder",this.placeholder))},i.prototype.setWidth=function(e){"auto"!==e?t.setStyleAttribute(this.element,{width:t.formatUnit(this.width)}):this.element.style.width="auto"},i.prototype.setCssClass=function(e){t.isNullOrUndefined(e)||this.element.classList.add(e)},i.prototype.updateRTL=function(){this.notify(_e,{enableRtl:this.enableRtl}),this.enableRtl?this.element.classList.add("e-rtl"):this.element.classList.remove("e-rtl")},i.prototype.updateReadOnly=function(){this.notify(Ge,{editPanel:this.inputElement,mode:this.readonly})},i.prototype.setReadOnly=function(e){this.updateReadOnly(),e||(this.readonly&&this.enabled?this.unbindEvents():this.enabled&&this.bindEvents())},i.prototype.print=function(){var e,n=this,i={element:this.inputElement,requestType:"print",cancel:!1};this.trigger(pe,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){n.trigger(he,{requestType:"print"})}})},i.prototype.refreshUI=function(){this.renderModule.refresh()},i.prototype.showFullScreen=function(){this.readonly||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 li),this.serviceLocator.register("rteLocale",this.localeObj=new t.L10n(this.getModuleName(),ei,this.locale)),this.serviceLocator.register("dialogRenderObject",new fr(this))},i.prototype.RTERender=function(){var n=this.serviceLocator.getService("rendererFactory");this.contentModule=n.getRenderer(e.RenderType.Content),this.fullScreenModule=new cr(this),this.renderModule.render(),this.inputElement=this.contentModule.getEditPanel(),this.setHeight(this.height),M(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(w(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&&M(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:ct});return e.type="text/javascript",e},i.prototype.createStyleElement=function(){var e=this.createElement("link",{className:pt});return e.rel="stylesheet",e},i.prototype.isBlazor=function(){return!!t.isBlazor()},i.prototype.setValue=function(){if(this.valueTemplate)if("string"==typeof this.valueTemplate)this.setProperties({value:this.valueTemplate});else{for(var e=t.compile(this.valueTemplate)({}),n=0;n<e.length;n++){var i=e[n];t.append([i],this.element)}this.setProperties({value:this.element.innerHTML.trim()})}else{var o=!t.isNullOrUndefined(this.element.innerHTML)&&this.element.innerHTML.replace(/<(\/?|\!?)(!--!--)>/g,"").trim();""!==o&&("TEXTAREA"===this.element.tagName?this.setProperties({value:w(o)}):this.setProperties({value:o}))}},i.prototype.setContentHeight=function(n,i){var o,r,s,a=0,l=this.sourceCodeModule.getPanel()&&"block"===this.sourceCodeModule.getPanel().parentElement.style.display?this.sourceCodeModule.getPanel().parentElement:this.contentModule.getPanel(),d=this.element.offsetHeight;0!==this.element.offsetHeight||"auto"===this.height||this.getToolbar()||(d=parseInt(this.height,10),(s="string"==typeof this.height&&this.height.indexOf("%")>-1)&&(r=this.height));var c=this.getToolbar()?this.toolbarModule.getToolbarHeight():0,p=this.enableResize?this.element.querySelector("."+wn).offsetHeight+8:0,h=this.getToolbar()?this.toolbarModule.getExpandTBarPopHeight():0;if(this.toolbarSettings.type===e.ToolbarType.Expand&&i&&"preview"!==n?(o="auto"===this.height&&0===p?"auto":d-(c+h+p)+"px",a=this.toolbarSettings.enableFloating?0:h):o="auto"!==this.height||this.element.classList.contains("e-rte-full-screen")?s?r:d-(c+p)+"px":"auto",t.setStyleAttribute(l,{height:o,marginTop:a+"px"}),this.iframeSettings.enable&&"sourceCode"===n){var u=t.select("."+Dt,this.element);t.setStyleAttribute(u,{height:o,marginTop:a+"px"})}this.toolbarSettings.enableFloating&&this.getToolbar()&&!this.inlineMode.enable&&(i?t.setStyleAttribute(this.getToolbar().parentElement,{height:c+h+"px"}):t.setStyleAttribute(this.getToolbar().parentElement,{height:c+"px"})),0===p&&this.autoResize()},i.prototype.getHtml=function(){return this.value},i.prototype.showSourceCode=function(){this.readonly||this.notify(Se,{})},i.prototype.getCharCount=function(){return("Markdown"===this.editorMode?this.inputElement.value.trim():this.inputElement.textContent.trim()).length},i.prototype.getBaseToolbarObject=function(){return!this.inlineMode.enable||t.Browser.isDevice&&!p()?this.toolbarModule&&this.toolbarModule.getBaseToolbar():this.quickToolbarModule&&this.quickToolbarModule.getInlineBaseToolbar()},i.prototype.getToolbar=function(){return this.toolbarModule?this.toolbarModule.getToolbarElement():null},i.prototype.getToolbarElement=function(){return this.toolbarModule&&this.toolbarModule.getToolbarElement()},i.prototype.getID=function(){return"TEXTAREA"===this.originalElement.tagName?this.valueContainer.id:this.element.id},i.prototype.mouseDownHandler=function(e){var n=e.touches?e.changedTouches[0]:e;t.addClass([this.element],[It]),this.preventDefaultResize(e),this.notify(Oe,{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;this.toolbarSettings.enable&&!this.inlineMode.enable&&(this.toolbarModule.refreshToolbarOverflow(),e=this.toolbarModule.baseToolbar.toolbarObj.element.classList.contains(Yt)),this.setContentHeight("",e)},i.prototype.scrollHandler=function(e){this.notify(Re,{args:e})},i.prototype.contentScrollHandler=function(e){this.notify(Be,{args:e})},i.prototype.focusHandler=function(e){if(!this.isRTE||this.isFocusOut){this.isRTE=!this.isFocusOut,this.isFocusOut=!1,t.addClass([this.element],[It]),"HTML"===this.editorMode?this.cloneValue="<p><br></p>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(w(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.timeInterval=setInterval(this.updateIntervalValue.bind(this),this.saveInterval)),t.EventHandler.add(document,"mousedown",this.onDocumentClick,this)}if(!t.isNullOrUndefined(this.getToolbarElement())){var r=this.getToolbarElement().querySelectorAll("input,select,button,a,[tabindex]");for(o=0;o<r.length;o++)r[o].classList.contains("e-rte-dropdown-btn")||r[o].classList.contains("e-insert-table-btn")||r[o].hasAttribute("tabindex")&&"-1"===r[o].getAttribute("tabindex")||r[o].setAttribute("tabindex","-1")}},i.prototype.getUpdatedValue=function(){return"HTML"===this.editorMode?"<p><br></p>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(w(this.inputElement.innerHTML)):this.inputElement.innerHTML:""===this.inputElement.value?null:this.inputElement.value},i.prototype.updateIntervalValue=function(){this.setProperties({value:this.getUpdatedValue()},!0),this.valueContainer.value=this.value,this.invokeChangeEvent()},i.prototype.onDocumentClick=function(e){var n=e.target,i=t.closest(n,"."+lt);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(Qe,{args:e})},i.prototype.blurHandler=function(e){var n=e.relatedTarget;if(n){var i=t.closest(n,"."+lt);i&&i===this.element?(this.isBlur=!1,n===this.getToolbarElement()&&n.setAttribute("tabindex","-1")):t.closest(n,'[aria-owns="'+this.getID()+'"]')?this.isBlur=!1:(this.isBlur=!0,n=null)}if(this.isBlur&&t.isNullOrUndefined(n)){t.removeClass([this.element],[It]),this.notify(Ae,{});var o=this.getUpdatedValue();this.setProperties({value:o}),this.notify(H,{args:e,documentNode:document}),this.invokeChangeEvent(),this.isFocusOut=!0,this.isBlur=!1,y(this.valueContainer,"focusout"),this.defaultResize(e),this.trigger("blur",{event:e,isInteracted:0!==Object.keys(e).length}),t.isNullOrUndefined(this.timeInterval)||(clearInterval(this.timeInterval),this.timeInterval=null),t.EventHandler.remove(document,"mousedown",this.onDocumentClick)}else this.isRTE=!0},i.prototype.invokeChangeEvent=function(){var e={value:this.value};this.value!==this.cloneValue&&(this.trigger("change",e),this.cloneValue=this.value)},i.prototype.wireScrollElementsEvents=function(){this.scrollParentElements=o.getScrollableParent(this.element);for(var e=0,n=this.scrollParentElements;e<n.length;e++){var i=n[e];t.EventHandler.add(i,"scroll",this.scrollHandler,this)}this.iframeSettings.enable||t.EventHandler.add(this.contentModule.getPanel(),"scroll",this.contentScrollHandler,this)},i.prototype.wireContextEvent=function(){this.quickToolbarSettings.showOnRightClick&&(t.EventHandler.add(this.inputElement,"contextmenu",this.contextHandler,this),t.Browser.isDevice&&(this.touchModule=new t.Touch(this.inputElement,{tapHold:this.touchHandler.bind(this),tapHoldThreshold:500})))},i.prototype.unWireContextEvent=function(){t.EventHandler.remove(this.inputElement,"contextmenu",this.contextHandler),t.Browser.isDevice&&this.touchModule&&this.touchModule.destroy()},i.prototype.unWireScrollElementsEvents=function(){this.scrollParentElements=o.getScrollableParent(this.element);for(var e=0,n=this.scrollParentElements;e<n.length;e++){var i=n[e];t.EventHandler.remove(i,"scroll",this.scrollHandler)}this.iframeSettings.enable||t.EventHandler.remove(this.contentModule.getPanel(),"scroll",this.contentScrollHandler)},i.prototype.touchHandler=function(e){this.notifyMouseUp(e.originalEvent),this.triggerEditArea(e.originalEvent)},i.prototype.contextHandler=function(e){var n=t.closest(e.target,"a, table, img");!1!==this.inlineMode.onSelection&&(t.isNullOrUndefined(n)||!this.inputElement.contains(n)||"IMG"!==n.tagName&&"TABLE"!==n.tagName&&"A"!==n.tagName)||e.preventDefault()},i.prototype.resetHandler=function(){var e=this.valueContainer.defaultValue.trim();this.setProperties({value:""===e?null:this.isBlazor()?this.defaultResetValue:e})},i.prototype.autoResize=function(){var e=this;if("auto"===this.height){if("Markdown"===this.editorMode)setTimeout(function(){e.setAutoHeight(e.inputElement)},0);else if(this.iframeSettings.enable){var t=this.element.querySelector("#"+this.getID()+"_rte-view");setTimeout(function(){e.setAutoHeight(t)},100),this.inputElement.style.overflow="hidden"}}else this.inputElement.style.overflow=null},i.prototype.setAutoHeight=function(e){t.isNullOrUndefined(e)||(e.style.height="",e.style.height=this.inputElement.scrollHeight+"px",e.style.overflow="hidden")},i.prototype.wireEvents=function(){this.element.addEventListener("focusin",this.onFocusHandler,!0),this.element.addEventListener("focusout",this.onBlurHandler,!0),this.readonly&&this.enabled||this.bindEvents()},i.prototype.restrict=function(e){if(this.maxLength>=0){for(var t="Markdown"===this.editorMode?this.contentModule.getText():e.currentTarget.textContent.trim(),n=[8,16,17,37,38,39,40,46,65],i=void 0,o=0;o<=n.length-1;o++)if(e.which===n[o]){if(e.ctrlKey&&65===e.which)return;if(65!==e.which)return void(i=n[o])}t.length>=this.maxLength&&-1!==this.maxLength&&e.which!==i&&e.preventDefault()}},i.prototype.bindEvents=function(){this.keyboardModule=new mi(this.inputElement,{keyAction:this.keyDown.bind(this),keyConfigs:Qr({},this.formatter.keyConfig,this.keyConfig),eventName:"keydown"});var e=t.closest(this.valueContainer,"form");e&&t.EventHandler.add(e,"reset",this.resetHandler,this),t.EventHandler.add(this.inputElement,"keyup",this.keyUp,this),t.EventHandler.add(this.inputElement,"paste",this.onPaste,this),t.EventHandler.add(this.inputElement,t.Browser.touchEndEvent,t.debounce(this.mouseUp,30),this),t.EventHandler.add(this.inputElement,t.Browser.touchStartEvent,this.mouseDownHandler,this),this.wireContextEvent(),this.formatter.editorManager.observer.on(ki,this.editorKeyDown,this),this.element.ownerDocument.defaultView.addEventListener("resize",this.onResizeHandler,!0),this.iframeSettings.enable&&(t.EventHandler.add(this.inputElement,"focusin",this.focusHandler,this),t.EventHandler.add(this.inputElement,"focusout",this.blurHandler,this),t.EventHandler.add(this.inputElement.ownerDocument,"scroll",this.contentScrollHandler,this),t.EventHandler.add(this.inputElement.ownerDocument,t.Browser.touchStartEvent,this.onIframeMouseDown,this)),this.wireScrollElementsEvents()},i.prototype.onIframeMouseDown=function(e){this.isBlur=!1,this.notify(P,e)},i.prototype.editorKeyDown=function(e){switch(e.event.action){case"copy":this.onCopy();break;case"cut":this.onCut()}!e.callBack||"copy"!==e.event.action&&"cut"!==e.event.action&&"delete"!==e.event.action||e.callBack({requestType:e.event.action,editorMode:"HTML",event:e.event})},i.prototype.unWireEvents=function(){this.element.removeEventListener("focusin",this.onFocusHandler,!0),this.element.removeEventListener("focusout",this.onBlurHandler,!0),this.readonly&&this.enabled||this.unbindEvents()},i.prototype.unbindEvents=function(){this.keyboardModule&&this.keyboardModule.destroy();var e=t.closest(this.valueContainer,"form");e&&t.EventHandler.remove(e,"reset",this.resetHandler),t.EventHandler.remove(this.inputElement,"keyup",this.keyUp),t.EventHandler.remove(this.inputElement,"paste",this.onPaste),t.EventHandler.remove(this.inputElement,t.Browser.touchEndEvent,t.debounce(this.mouseUp,30)),t.EventHandler.remove(this.inputElement,t.Browser.touchStartEvent,this.mouseDownHandler),this.unWireContextEvent(),this.formatter&&this.formatter.editorManager.observer.off(ki,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()},Wr([t.Complex({},wr)],i.prototype,"toolbarSettings",void 0),Wr([t.Complex({},Or)],i.prototype,"quickToolbarSettings",void 0),Wr([t.Complex({},Dr)],i.prototype,"pasteCleanupSettings",void 0),Wr([t.Complex({},jr)],i.prototype,"iframeSettings",void 0),Wr([t.Complex({},Lr)],i.prototype,"insertImageSettings",void 0),Wr([t.Complex({},xr)],i.prototype,"tableSettings",void 0),Wr([t.Property(0)],i.prototype,"floatingToolbarOffset",void 0),Wr([t.Complex({},_r)],i.prototype,"inlineMode",void 0),Wr([t.Property("100%")],i.prototype,"width",void 0),Wr([t.Property(!1)],i.prototype,"enablePersistence",void 0),Wr([t.Property(!1)],i.prototype,"enableResize",void 0),Wr([t.Property({})],i.prototype,"htmlAttributes",void 0),Wr([t.Property(null)],i.prototype,"placeholder",void 0),Wr([t.Property(!1)],i.prototype,"readonly",void 0),Wr([t.Property(!0)],i.prototype,"enabled",void 0),Wr([t.Property(!0)],i.prototype,"enableHtmlSanitizer",void 0),Wr([t.Property(!1)],i.prototype,"enableHtmlEncode",void 0),Wr([t.Property(!1)],i.prototype,"enableXhtml",void 0),Wr([t.Property("auto")],i.prototype,"height",void 0),Wr([t.Property(null)],i.prototype,"cssClass",void 0),Wr([t.Property(null)],i.prototype,"value",void 0),Wr([t.Property(30)],i.prototype,"undoRedoSteps",void 0),Wr([t.Property(300)],i.prototype,"undoRedoTimer",void 0),Wr([t.Property("HTML")],i.prototype,"editorMode",void 0),Wr([t.Property(null)],i.prototype,"keyConfig",void 0),Wr([t.Property(!1)],i.prototype,"showCharCount",void 0),Wr([t.Property(!1)],i.prototype,"enableTabKey",void 0),Wr([t.Property(!1)],i.prototype,"enableAutoUrl",void 0),Wr([t.Property(-1)],i.prototype,"maxLength",void 0),Wr([t.Complex({},Br)],i.prototype,"format",void 0),Wr([t.Complex({},Mr)],i.prototype,"fontFamily",void 0),Wr([t.Complex({},Rr)],i.prototype,"fontSize",void 0),Wr([t.Complex({},Pr)],i.prototype,"fontColor",void 0),Wr([t.Complex({},Ir)],i.prototype,"backgroundColor",void 0),Wr([t.Property(null)],i.prototype,"valueTemplate",void 0),Wr([t.Property(1e4)],i.prototype,"saveInterval",void 0),Wr([t.Event()],i.prototype,"actionBegin",void 0),Wr([t.Event()],i.prototype,"actionComplete",void 0),Wr([t.Event()],i.prototype,"beforeDialogOpen",void 0),Wr([t.Event()],i.prototype,"dialogOpen",void 0),Wr([t.Event()],i.prototype,"dialogClose",void 0),Wr([t.Event()],i.prototype,"beforeQuickToolbarOpen",void 0),Wr([t.Event()],i.prototype,"quickToolbarOpen",void 0),Wr([t.Event()],i.prototype,"quickToolbarClose",void 0),Wr([t.Event()],i.prototype,"toolbarStatusUpdate",void 0),Wr([t.Event()],i.prototype,"imageSelected",void 0),Wr([t.Event()],i.prototype,"imageUploading",void 0),Wr([t.Event()],i.prototype,"imageUploadSuccess",void 0),Wr([t.Event()],i.prototype,"imageUploadFailed",void 0),Wr([t.Event()],i.prototype,"imageRemoving",void 0),Wr([t.Event()],i.prototype,"afterImageDelete",void 0),Wr([t.Event()],i.prototype,"created",void 0),Wr([t.Event()],i.prototype,"destroyed",void 0),Wr([t.Event()],i.prototype,"beforeSanitizeHtml",void 0),Wr([t.Event()],i.prototype,"blur",void 0),Wr([t.Event()],i.prototype,"toolbarClick",void 0),Wr([t.Event()],i.prototype,"focus",void 0),Wr([t.Event()],i.prototype,"change",void 0),Wr([t.Event()],i.prototype,"resizing",void 0),Wr([t.Event()],i.prototype,"resizeStart",void 0),Wr([t.Event()],i.prototype,"resizeStop",void 0),Wr([t.Property(null)],i.prototype,"formatter",void 0),i=Wr([t.NotifyPropertyChanges],i)}(t.Component);e.Toolbar=ci,e.KeyboardEvents=mi,e.BaseToolbar=ri,e.BaseQuickToolbar=fi,e.QuickToolbar=vi,e.Count=yi,e.ColorPickerInput=gi,e.MarkdownToolbarStatus=Ti,e.ExecCommandCallBack=Si,e.ToolbarAction=di,e.MarkdownEditor=to,e.HtmlEditor=ar,e.PasteCleanup=lr,e.Resize=dr,e.DropDownButtons=si,e.FullScreen=cr,e.setAttributes=M,e.HtmlToolbarStatus=nr,e.XhtmlValidation=sr,e.HTMLFormatter=Zo,e.Formatter=Mi,e.MarkdownFormatter=Zi,e.ContentRender=ir,e.Render=pr,e.ToolbarRenderer=oi,e.Link=hr,e.Image=ur,e.ViewSource=mr,e.Table=gr,e.DialogRenderer=fr,e.IframeContentRender=rr,e.MarkdownRender=eo,e.PopupRenderer=bi,e.RichTextEditor=Vr,e.executeGroup=br,e.created="create",e.destroyed="destroy",e.load="load",e.initialLoad=R,e.initialEnd=B,e.iframeMouseDown=P,e.destroy=I,e.toolbarClick=A,e.toolbarRefresh=H,e.refreshBegin=U,e.toolbarUpdated=j,e.bindOnEnd=z,e.renderColorPicker=q,e.htmlToolbarClick=_,e.markdownToolbarClick=F,e.destroyColorPicker=Q,e.modelChanged=W,e.keyUp=V,e.keyDown=G,e.mouseUp=K,e.toolbarCreated=Y,e.toolbarRenderComplete=X,e.enableFullScreen=J,e.disableFullScreen=$,e.dropDownSelect=Z,e.beforeDropDownItemRender=ee,e.execCommandCallBack=te,e.imageToolbarAction=ne,e.linkToolbarAction=ie,e.resizeStart=oe,e.onResize=re,e.resizeStop=se,e.undo="undo",e.redo="redo",e.insertLink=ae,e.unLink=le,e.editLink=de,e.openLink=ce,e.actionBegin=pe,e.actionComplete=he,e.toolbarStatusUpdate=ue,e.actionSuccess="actionSuccess",e.updateToolbarItem=me,e.insertImage=ge,e.insertCompleted=fe,e.imageLeft="justifyLeft",e.imageRight="justifyRight",e.imageCenter="justifyCenter",e.imageBreak="break",e.imageInline="inline",e.imageLink=be,e.imageAlt=ve,e.imageDelete=ye,e.imageCaption=Ce,e.imageSize=Te,e.sourceCode=Se,e.updateSource=Ee,e.toolbarOpen="toolbarOpen",e.beforeDropDownOpen=Ne,e.selectionSave=ke,e.selectionRestore=we,e.expandPopupClick=Le,e.count=xe,e.contentFocus="contentFocus",e.contentBlur="contentBlur",e.mouseDown=Oe,e.sourceCodeMouseDown=De,e.editAreaClick=Me,e.scroll=Re,e.contentscroll=Be,e.colorPickerChanged=Pe,e.tableColorPickerChanged=Ie,e.focusChange=Ae,e.selectAll=He,e.selectRange=Ue,e.getSelectedHtml=je,e.renderInlineToolbar=ze,e.paste=qe,e.imgModule="imageModule",e.rtlMode=_e,e.createTable=Fe,e.docClick=Qe,e.tableToolbarAction=We,e.checkUndo=Ve,e.readOnlyMode=Ge,e.pasteClean=Ke,e.beforeDialogOpen=Ye,e.dialogOpen=Xe,e.dialogClose=Je,e.beforeQuickToolbarOpen=$e,e.quickToolbarOpen=Ze,e.quickToolbarClose=et,e.popupHide="popupHide",e.imageSelected=tt,e.imageUploading=nt,e.imageUploadSuccess=it,e.imageUploadFailed=ot,e.imageRemoving=rt,e.afterImageDelete=st,e.drop="drop",e.xhtmlValidation=at,e.CLS_RTE=lt,e.CLS_RTL="e-rtl",e.CLS_CONTENT="e-content",e.CLS_DISABLED=dt,e.CLS_SCRIPT_SHEET=ct,e.CLS_STYLE_SHEET=pt,e.CLS_TOOLBAR=ht,e.CLS_TB_FIXED=ut,e.CLS_TB_FLOAT=mt,e.CLS_TB_ABS_FLOAT=gt,e.CLS_INLINE=ft,e.CLS_TB_INLINE="e-rte-tb-inline",e.CLS_RTE_EXPAND_TB=bt,e.CLS_FULL_SCREEN=vt,e.CLS_QUICK_TB=yt,e.CLS_POP=Ct,e.CLS_QUICK_POP=Tt,e.CLS_QUICK_DROPDOWN=St,e.CLS_IMAGE_POP=Et,e.CLS_INLINE_POP=Nt,e.CLS_INLINE_DROPDOWN=kt,e.CLS_DROPDOWN_POPUP=wt,e.CLS_DROPDOWN_ICONS=Lt,e.CLS_DROPDOWN_ITEMS=xt,e.CLS_DROPDOWN_BTN=Ot,e.CLS_RTE_CONTENT=Dt,e.CLS_TB_ITEM=Mt,e.CLS_TB_EXTENDED="e-toolbar-extended",e.CLS_TB_WRAP=Rt,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=Bt,e.CLS_VISIBLE=Pt,e.CLS_FOCUS=It,e.CLS_RM_WHITE_SPACE=At,e.CLS_IMGRIGHT=Ht,e.CLS_IMGLEFT=Ut,e.CLS_IMGCENTER=jt,e.CLS_IMGBREAK=zt,e.CLS_CAPTION=qt,e.CLS_RTE_CAPTION=_t,e.CLS_CAPINLINE=Ft,e.CLS_IMGINLINE=Qt,e.CLS_COUNT=Wt,e.CLS_WARNING=Vt,e.CLS_ERROR=Gt,e.CLS_ICONS="e-icons",e.CLS_ACTIVE=Kt,e.CLS_EXPAND_OPEN=Yt,e.CLS_RTE_ELEMENTS=Xt,e.CLS_TB_BTN=Jt,e.CLS_HR_SEPARATOR=$t,e.CLS_TB_IOS_FIX=Zt,e.CLS_TB_STATIC="e-tb-static",e.CLS_FORMATS_TB_BTN=en,e.CLS_FONT_NAME_TB_BTN=tn,e.CLS_FONT_SIZE_TB_BTN=nn,e.CLS_FONT_COLOR_TARGET=on,e.CLS_BACKGROUND_COLOR_TARGET=rn,e.CLS_COLOR_CONTENT=sn,e.CLS_FONT_COLOR_DROPDOWN=an,e.CLS_BACKGROUND_COLOR_DROPDOWN=ln,e.CLS_COLOR_PALETTE=dn,e.CLS_FONT_COLOR_PICKER=cn,e.CLS_BACKGROUND_COLOR_PICKER=pn,e.CLS_RTE_READONLY=hn,e.CLS_TABLE_SEL=un,e.CLS_TB_DASH_BOR=mn,e.CLS_TB_ALT_BOR=gn,e.CLS_TB_COL_RES=fn,e.CLS_TB_ROW_RES=bn,e.CLS_TB_BOX_RES=vn,e.CLS_RTE_HIDDEN=yn,e.CLS_RTE_PASTE_KEEP_FORMAT=Cn,e.CLS_RTE_PASTE_REMOVE_FORMAT=Tn,e.CLS_RTE_PASTE_PLAIN_FORMAT=Sn,e.CLS_RTE_PASTE_OK=En,e.CLS_RTE_PASTE_CANCEL=Nn,e.CLS_RTE_DIALOG_MIN_HEIGHT=kn,e.CLS_RTE_RES_HANDLE=wn,e.CLS_RTE_RES_EAST="e-south-east",e.CLS_RTE_IMAGE=Ln,e.CLS_RESIZE="e-resize",e.CLS_IMG_FOCUS="e-img-focus",e.CLS_RTE_DRAG_IMAGE=xn,e.CLS_RTE_UPLOAD_POPUP=On,e.CLS_POPUP_OPEN=Dn,e.CLS_IMG_RESIZE="e-img-resize",e.CLS_DROPAREA="e-droparea",e.CLS_IMG_INNER="e-img-inner",e.CLS_UPLOAD_FILES=Mn,e.CLS_RTE_DIALOG_UPLOAD=Rn,e.CLS_RTE_RES_CNT=Bn,e.CLS_CUSTOM_TILE=Pn,e.CLS_NOCOLOR_ITEM=In,e.CLS_TABLE=An,e.CLS_TABLE_BORDER=Hn,e.CLS_RTE_TABLE_RESIZE=Un,e.getIndex=l,e.hasClass=d,e.getDropDownValue=c,e.isIDevice=p,e.getFormattedFontSize=h,e.pageYOffset=u,e.getTooltipText=m,e.setToolbarStatus=g,e.getCollection=f,e.getTBarItemsIndex=b,e.updateUndoRedoStatus=v,e.dispatchEvent=y,e.parseHtml=C,e.getTextNodesUnder=T,e.toObjectLowerCase=S,e.getEditValue=E,e.updateTextNode=N,e.isEditableValueEmpty=k,e.decode=w,e.sanitizeHelper=L,e.convertToBlob=x,e.ServiceLocator=ai,e.RendererFactory=li,e.EditorManager=Jo,e.IMAGE=no,e.TABLE=io,e.LINK=oo,e.INSERT_ROW=ro,e.INSERT_COLUMN=so,e.DELETEROW=ao,e.DELETECOLUMN=lo,e.REMOVETABLE=co,e.TABLEHEADER=po,e.TABLE_VERTICAL_ALIGN=ho,e.ALIGNMENT_TYPE=uo,e.INDENT_TYPE=mo,e.DEFAULT_TAG="p",e.BLOCK_TAGS=go,e.IGNORE_BLOCK_TAGS=fo,e.TABLE_BLOCK_TAGS=bo,e.SELECTION_TYPE=vo,e.INSERTHTML_TYPE=yo,e.INSERT_TEXT_TYPE=Co,e.CLEAR_TYPE=To,e.CLASS_IMAGE_RIGHT=Po,e.CLASS_IMAGE_LEFT=Io,e.CLASS_IMAGE_CENTER=Ao,e.CLASS_IMAGE_BREAK=Ho,e.CLASS_CAPTION=Uo,e.CLASS_RTE_CAPTION="e-rte-img-caption",e.CLASS_CAPTION_INLINE=jo,e.CLASS_IMAGE_INLINE="e-imginline",e.Lists=wo,e.markerClassName=Eo,e.DOMNode=No,e.Alignments=Ro,e.Indents=Bo,e.Formats=Oo,e.LinkCommand=Mo,e.InsertMethods=Lo,e.InsertTextExec=Xo,e.InsertHtmlExec=Wo,e.InsertHtml=Do,e.IsFormatted=_o,e.MsWordPaste=Yo,e.NodeCutter=xo,e.ImageCommand=zo,e.SelectionCommands=Fo,e.SelectionBasedExec=Qo,e.ClearFormatExec=Go,e.UndoRedoManager=Ko,e.TableCommand=qo,e.statusCollection=er,e.ToolbarStatus=tr,e.NodeSelection=So,e.MarkdownParser=Ji,e.LISTS_COMMAND=Ri,e.selectionCommand=Bi,e.LINK_COMMAND=Pi,e.CLEAR_COMMAND=Ii,e.MD_TABLE=Ai,e.ClearFormat=Xi,e.MDLists=Hi,e.MDFormats=Ui,e.MarkdownSelection=Ci,e.UndoRedoCommands=Gi,e.MDSelectionFormats=ji,e.MDLink=Ki,e.MDTable=Yi,e.markdownFormatTags=zi,e.markdownSelectionTags=qi,e.markdownListsTags=_i,e.htmlKeyConfig=Fi,e.markdownKeyConfig=Qi,e.pasteCleanupGroupingTags=Wi,e.listConversionFilters={first:"MsoListParagraphCxSpFirst",middle:"MsoListParagraphCxSpMiddle",last:"MsoListParagraphCxSpLast"},e.selfClosingTags=Vi,e.KEY_DOWN="keydown",e.ACTION=Ei,e.FORMAT_TYPE=Ni,e.KEY_DOWN_HANDLER=ki,e.LIST_TYPE="list-type",e.KEY_UP_HANDLER=wi,e.KEY_UP="keyup",e.MODEL_CHANGED_PLUGIN=Li,e.MODEL_CHANGED=xi,e.MS_WORD_CLEANUP_PLUGIN=Oi,e.MS_WORD_CLEANUP=Di,Object.defineProperty(e,"__esModule",{value:!0})});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@syncfusion/ej2-base"),require("@syncfusion/ej2-navigations"),require("@syncfusion/ej2-splitbuttons"),require("@syncfusion/ej2-popups"),require("@syncfusion/ej2-inputs"),require("@syncfusion/ej2-buttons")):"function"==typeof define&&define.amd?define(["exports","@syncfusion/ej2-base","@syncfusion/ej2-navigations","@syncfusion/ej2-splitbuttons","@syncfusion/ej2-popups","@syncfusion/ej2-inputs","@syncfusion/ej2-buttons"],t):t(e.ej={},e.ej2Base,e.ej2Navigations,e.ej2Splitbuttons,e.ej2Popups,e.ej2Inputs,e.ej2Buttons)}(this,function(e,t,n,i,o,r,s){"use strict";function a(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 l(e,t){var n=-1;return t.some(function(t,i){return"string"==typeof t&&e===t.toLocaleLowerCase()&&(n=i,!0)}),n}function d(e,t){var n=!1;return e.classList.contains(t)&&(n=!0),n}function c(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 p(){var e=!1;return t.Browser.isDevice&&t.Browser.isIos&&(e=!0),e}function h(e){return t.isNullOrUndefined(e)?"":e}function u(e,t,n){return n?window.pageYOffset+t.getBoundingClientRect().top+e.clientY:e.pageY}function m(e,t){var n=t.getService("rteLocale"),i=ii[e];return n.getConstant(i)}function g(e,n){for(var i=e.dropDownModule,o=e.args,r=0,s=Object.keys(e.args);r<s.length;r++)for(var a=s[r],d=0;d<e.tbItems.length;d++){var p=e.tbItems[d].subCommand,u=p&&p.toLocaleLowerCase();if(p&&u===a||"UL"===p&&"unorderedlist"===a||"OL"===p&&"orderedlist"===a||"pre"===u&&"insertcode"===a)if("boolean"==typeof o[a])!0===o[a]?t.addClass([e.tbElements[d]],[Xt]):t.removeClass([e.tbElements[d]],[Xt]);else if(("string"==typeof o[a]||null===o[a])&&l(a,e.parent.toolbarSettings.items)>-1){var m=o[a]?o[a]:"",g="";switch(a){case"formats":if(t.isNullOrUndefined(i.formatDropDown)||n||!t.isNullOrUndefined(i.formatDropDown)&&i.formatDropDown.isDestroyed)return;var f=e.parent.format.types;g=c(f,m,"subCommand","text");var b=t.isNullOrUndefined(e.parent.format.default)?f[0].text:e.parent.format.default;i.formatDropDown.content='<span style="display: inline-flex;width:'+e.parent.format.width+'" ><span class="e-rte-dropdown-btn-text">'+(t.isNullOrUndefined(g)?b:g)+"</span></span>",i.formatDropDown.dataBind();break;case"alignments":if(t.isNullOrUndefined(i.alignDropDown)||!t.isNullOrUndefined(i.alignDropDown)&&i.alignDropDown.isDestroyed)return;g=c(Qn,m,"subCommand","iconCss"),i.alignDropDown.iconCss=t.isNullOrUndefined(g)?"e-icons e-justify-left":g,i.alignDropDown.dataBind();break;case"fontname":if(t.isNullOrUndefined(i.fontNameDropDown)||n||!t.isNullOrUndefined(i.fontNameDropDown)&&i.fontNameDropDown.isDestroyed)return;var v=e.parent.fontFamily.items;g=c(v,m,"value","text");var y=t.isNullOrUndefined(e.parent.fontFamily.default)?v[0].text:e.parent.fontFamily.default,C=t.isNullOrUndefined(g)?y:g;e.tbElements[d].title=C,i.fontNameDropDown.content='<span style="display: inline-flex;width:'+e.parent.fontFamily.width+'" ><span class="e-rte-dropdown-btn-text">'+C+"</span></span>",i.fontNameDropDown.dataBind();break;case"fontsize":if(t.isNullOrUndefined(i.fontSizeDropDown)||!t.isNullOrUndefined(i.fontSizeDropDown)&&i.fontSizeDropDown.isDestroyed)return;var T=e.parent.fontSize.items,S=t.isNullOrUndefined(e.parent.fontSize.default)?T[1].text:e.parent.fontSize.default;g=c(T,""===m?S.replace(/\s/g,""):m,"value","text"),i.fontSizeDropDown.content='<span style="display: inline-flex;width:'+e.parent.fontSize.width+'" ><span class="e-rte-dropdown-btn-text">'+h(g)+"</span></span>",i.fontSizeDropDown.dataBind()}}}}function f(e){return"object"==typeof e?e:[e]}function b(e,t){for(var n=[],i=0;i<e.length;i++)for(var o=0;o<t.length;o++)if("Separator"!==t[o].type){if("OrderedList"===e[i]&&"OL"===t[o].subCommand){n.push(o);break}if("UnorderedList"===e[i]&&"UL"===t[o].subCommand){n.push(o);break}if("InsertCode"===e[i]&&"Pre"===t[o].subCommand){n.push(o);break}if(e[i]===t[o].subCommand){n.push(o);break}}return n}function v(e,n){for(var i=0,o=b(f(oi),e.toolbarObj.items),r=t.selectAll("."+Bt,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 y(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!1,!0),e.dispatchEvent(n)}function C(e){var n=t.createElement("template");return n.innerHTML=e,n.content instanceof DocumentFragment?n.content:document.createRange().createContextualFragment(e)}function T(e,t){var n=[];for(t=t.firstChild;t;t=t.nextSibling)3===t.nodeType?n.push(t):n=n.concat(T(e,t));return n}function S(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 E(e,t){var n;return null!==e&&""!==e?(n=t.enableHtmlEncode?N(w(e)):N(e),t.setProperties({value:n},!0)):n=t.enableHtmlEncode?"&lt;p&gt;&lt;br/&gt;&lt;/p&gt;":"<p><br/></p>",n}function N(e){var n=document.createElement("div");n.innerHTML=e,n.setAttribute("class","tempDiv");var i=document.createElement("div");if(n.childNodes.length>0){for(var o=void 0,r=void 0,s=void 0;n.firstChild;)"#text"===n.firstChild.nodeName&&(n.firstChild.textContent.indexOf("\n")<0||""!==n.firstChild.textContent.trim())||ri.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(o?r.appendChild(n.firstChild):(s=t.createElement("p"),i.appendChild(s),s.appendChild(n.firstChild)),r=s,o=!0):"#text"===n.firstChild.nodeName&&("\n"===n.firstChild.textContent||n.firstChild.textContent.indexOf("\n")>=0&&""===n.firstChild.textContent.trim())?t.detach(n.firstChild):(i.appendChild(n.firstChild),o=!1);for(var a=i.querySelectorAll("img"),l=0;l<a.length;l++)a[l].classList.contains(On)||a[l].classList.add(On),a[l].classList.contains(Vt)||a[l].classList.contains(_t)||a[l].classList.add(Vt)}return i.innerHTML}function k(e){return"<p><br></p>"===e||"&lt;p&gt;&lt;br&gt;&lt;/p&gt;"===e||""===e}function w(e){return e.replace(/&amp;/g,"&").replace(/&amp;lt;/g,"<").replace(/&lt;/g,"<").replace(/&amp;gt;/g,">").replace(/&gt;/g,">").replace(/&nbsp;/g," ").replace(/&amp;nbsp;/g," ").replace(/&quot;/g,"")}function L(e,n){if(n.enableHtmlSanitizer){var i=t.SanitizeHtmlHelper.beforeSanitize();t.extend(i,i,{cancel:!1,helper:null}),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 x(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 O(){var e=!1;return t.Browser.isDevice&&t.Browser.isIos&&(e=!0),e}function D(e,n){if("BODY"===e.nodeName&&!t.isNullOrUndefined(n)){var i=top.window.document.querySelector(n);t.isNullOrUndefined(i)||i.contentWindow.focus()}}function M(e,t,n,i){var o;if(n){o=t.contentModule.getDocument().querySelector("body")}else o=t.element;if(Object.keys(e).length)for(var r=0,s=Object.keys(e);r<s.length;r++){var a=s[r];if("class"===a)o.classList.add(e[a]);else if("disabled"===a&&"disabled"===e[a])t.enabled=!1,t.setEnable();else if("readonly"===a&&"readonly"===e[a])t.readonly=!0,t.setReadOnly(i);else if("style"===a)o.setAttribute("style",e[a]);else if("tabindex"===a)t.inputElement.setAttribute("tabindex",e[a]);else if("placeholder"===a)t.placeholder=e[a],t.setPlaceHolder();else{["name","required"].indexOf(a)>-1?t.valueContainer.setAttribute(a,e[a]):o.setAttribute(a,e[a])}}}var R="initial-load",B="content-changed",I="initial-end",P="iframe-click",A="destroy",H="toolbarClick",U="toolbar-refresh",j="refresh-begin",z="toolbar-updated",q="bind-on-end",_="render-color-picker",F="html-toolbar-click",Q="markdown-toolbar-click",W="destroy-color-picker",V="model-changed",G="keyUp",K="keyDown",Y="mouseUp",X="toolbarCreated",J="toolbarRenderComplete",$="enableFullScreen",Z="disableFullScreen",ee="dropDownSelect",te="beforeDropDownItemRender",ne="execCommandCallBack",ie="image-toolbar-action",oe="link-toolbar-action",re="resizeStart",se="resizing",ae="resizeStop",le="insertLink",de="unLink",ce="editLink",pe="openLink",he="actionBegin",ue="actionComplete",me="toolbarStatusUpdate",ge="updateToolbarItem",fe="insertImage",be="insertCompleted",ve="insertImgLink",ye="imgAltText",Ce="delete",Te="caption",Se="imageSize",Ee="sourceCode",Ne="updateSource",ke="beforeDropDownOpen",we="selection-save",Le="selection-restore",xe="expandPopupClick",Oe="count",De="mouseDown",Me="sourceCodeMouseDown",Re="editAreaClick",Be="scroll",Ie="contentscroll",Pe="colorPickerChanged",Ae="tableColorPickerChanged",He="focusChange",Ue="selectAll",je="selectRange",ze="getSelectedHtml",qe="renderInlineToolbar",_e="paste-content",Fe="rtl-mode",Qe="createTable",We="docClick",Ve="table-toolbar-action",Ge="checkUndoStack",Ke="readOnlyMode",Ye="pasteClean",Xe="beforeDialogOpen",Je="dialogOpen",$e="beforeDialogClose",Ze="dialogClose",et="beforeQuickToolbarOpen",tt="quickToolbarOpen",nt="quickToolbarClose",it="imageSelected",ot="imageUploading",rt="imageUploadSuccess",st="imageUploadFailed",at="imageRemoving",lt="afterImageDelete",dt="xhtmlValidation",ct="e-richtexteditor",pt="e-disabled",ht="rte-iframe-script-sheet",ut="rte-iframe-style-sheet",mt="e-rte-toolbar",gt="e-rte-tb-fixed",ft="e-rte-tb-float",bt="e-rte-tb-abs-float",vt="e-rte-inline",yt="e-rte-tb-expand",Ct="e-rte-full-screen",Tt="e-rte-quick-toolbar",St="e-rte-pop",Et="e-rte-quick-popup",Nt="e-quick-dropdown",kt="e-rte-image-popup",wt="e-rte-inline-popup",Lt="e-rte-inline-dropdown",xt="e-rte-dropdown-popup",Ot="e-rte-dropdown-icons",Dt="e-rte-dropdown-items",Mt="e-rte-dropdown-btn",Rt="e-rte-content",Bt="e-toolbar-item",It="e-toolbar-wrapper",Pt="e-hide",At="e-visible",Ht="e-focused",Ut="e-remove-white-space",jt="e-imgright",zt="e-imgleft",qt="e-imgcenter",_t="e-imgbreak",Ft="e-img-caption",Qt="e-rte-img-caption",Wt="e-caption-inline",Vt="e-imginline",Gt="e-rte-character-count",Kt="e-warning",Yt="e-error",Xt="e-active",Jt="e-expand-open",$t="e-rte-elements",Zt="e-tbar-btn",en="e-rte-horizontal-separator",tn="e-tbar-ios-fixed",nn="e-formats-tbar-btn",on="e-font-name-tbar-btn",rn="e-font-size-tbar-btn",sn="e-rte-fontcolor-element",an="e-rte-backgroundcolor-element",ln="e-rte-color-content",dn="e-rte-fontcolor-dropdown",cn="e-rte-backgroundcolor-dropdown",pn="e-rte-square-palette",hn="e-rte-fontcolor-colorpicker",un="e-rte-backgroundcolor-colorpicker",mn="e-rte-readonly",gn="e-cell-select",fn="e-dashed-border",bn="e-alternate-border",vn="e-column-resize",yn="e-row-resize",Cn="e-table-box",Tn="e-rte-hidden",Sn="e-rte-keepformat",En="e-rte-removeformat",Nn="e-rte-plainformat",kn="e-rte-pasteok",wn="e-rte-pastecancel",Ln="e-rte-dialog-minheight",xn="e-resize-handle",On="e-rte-image",Dn="e-rte-drag-image",Mn="e-rte-upload-popup",Rn="e-popup-open",Bn="e-upload-files",In="e-rte-dialog-upload",Pn="e-rte-resize",An="e-custom-tile",Hn="e-nocolor-item",Un="e-rte-table",jn="e-rte-table-border",zn="e-rte-table-resize";!function(e){e[e.Toolbar=0]="Toolbar",e[e.Content=1]="Content",e[e.Popup=2]="Popup",e[e.LinkToolbar=3]="LinkToolbar",e[e.TextToolbar=4]="TextToolbar",e[e.ImageToolbar=5]="ImageToolbar",e[e.InlineToolbar=6]="InlineToolbar",e[e.TableToolbar=7]="TableToolbar"}(e.RenderType||(e.RenderType={})),function(e){e.Expand="Expand",e.MultiRow="MultiRow",e.Scrollable="Scrollable"}(e.ToolbarType||(e.ToolbarType={}));var qn=["alignments","formats","fontname","fontsize","fontcolor","backgroundcolor","align","display","tablerows","tablecolumns","tablecellhorizontalalign","tablecellverticalalign","styles"],_n={alignments:{id:"Alignments",icon:"e-alignments",tooltip:"Alignments",command:"Alignments",subCommand:"Alignments"},justifyleft:{id:"JustifyLeft",icon:"e-justify-left",tooltip:"JustifyLeft",command:"Alignments",subCommand:"JustifyLeft"},justifycenter:{id:"JustifyCenter",icon:"e-justify-center",tooltip:"JustifyCenter",command:"Alignments",subCommand:"JustifyCenter"},justifyright:{id:"JustifyRight",icon:"e-justify-right",tooltip:"JustifyRight",command:"Alignments",subCommand:"JustifyRight"},justifyfull:{id:"JustifyFull",icon:"e-justify-full",tooltip:"JustifyFull",command:"Alignments",subCommand:"JustifyFull"},fontname:{id:"FontName",icon:"e-font-name",tooltip:"Font Name",command:"Font",subCommand:"FontName"},fontsize:{id:"FontSize",icon:"e-font-size",tooltip:"Font Size",command:"Font",subCommand:"FontSize"},fontcolor:{id:"FontColor",icon:"e-font-color",tooltip:"Font Color",command:"Font",subCommand:"FontColor",value:"#ff0000ff"},backgroundcolor:{id:"BackgroundColor",icon:"e-background-color",tooltip:"Background Color",command:"Font",subCommand:"BackgroundColor",value:"#ffff00ff"},bold:{id:"Bold",icon:"e-bold",tooltip:"Bold",command:"Style",subCommand:"Bold"},italic:{id:"Italic",icon:"e-italic",tooltip:"Italic",command:"Style",subCommand:"Italic"},underline:{id:"Underline",icon:"e-underline",tooltip:"Underline",command:"Style",subCommand:"Underline"},strikethrough:{id:"StrikeThrough",icon:"e-strike-through",tooltip:"StrikeThrough",command:"Style",subCommand:"StrikeThrough"},clearformat:{id:"ClearFormat",icon:"e-clear-format",tooltip:"Clear Format",command:"Clear",subCommand:"ClearFormat"},clearall:{id:"ClearAll",icon:"e-clear-all",tooltip:"Clear All",command:"Clear",subCommand:"ClearAll"},cut:{id:"Cut",icon:"e-cut",tooltip:"Cut",command:"ClipBoard",subCommand:"Cut"},copy:{id:"Copy",icon:"e-copy",tooltip:"Copy",command:"ClipBoard",subCommand:"Copy"},paste:{id:"Paste",icon:"e-paste",tooltip:"Paste",command:"ClipBoard",subCommand:"Paste"},unorderedlist:{id:"UnorderedList",icon:"e-unorder-list",tooltip:"Bulleted List",command:"Lists",subCommand:"UL"},orderedlist:{id:"OrderedList",icon:"e-order-list",tooltip:"Numbered List",command:"Lists",subCommand:"OL"},indent:{id:"Indent",icon:"e-indent",tooltip:"Increase Indent",command:"Indents",subCommand:"Indent"},outdent:{id:"Outdent",icon:"e-outdent",tooltip:"Decrease Indent",command:"Indents",subCommand:"Outdent"},undo:{id:"Undo",icon:"e-undo",tooltip:"Undo",command:"Actions",subCommand:"Undo"},redo:{id:"Redo",icon:"e-redo",tooltip:"Redo",command:"Actions",subCommand:"Redo"},superscript:{id:"SuperScript",icon:"e-super-script",tooltip:"Superscript",command:"Effects",subCommand:"SuperScript"},subscript:{id:"SubScript",icon:"e-sub-script",tooltip:"Subscript",command:"Effects",subCommand:"SubScript"},createlink:{id:"CreateLink",icon:"e-create-link",tooltip:"Insert Hyperlink",command:"Links",subCommand:"CreateLink"},openlink:{id:"OpenLink",icon:"e-open-link",tooltip:"Open Link",command:"Links",subCommand:"OpenLink"},editlink:{id:"EditLink",icon:"e-edit-link",tooltip:"Edit Link",command:"Links",subCommand:"EditLink"},removelink:{id:"RemoveLink",icon:"e-remove-link",tooltip:"Remove Link",command:"Links",subCommand:"RemoveLink"},image:{id:"Image",icon:"e-image",tooltip:"Insert Image",command:"Images",subCommand:"Image"},createtable:{id:"CreateTable",icon:"e-create-table",tooltip:"Create Table",command:"Table",subCommand:"CreateTable"},removetable:{id:"removeTable",icon:"e-remove-table",tooltip:"Remove Table",command:"removeTable",subCommand:"removeTable"},replace:{id:"Replace",icon:"e-replace",tooltip:"Replace",command:"Images",subCommand:"Replace"},align:{id:"Align",icon:"e-align",tooltip:"Align",command:"Images",subCommand:"Align"},caption:{id:"Caption",icon:"e-caption",tooltip:"Image Caption",command:"Images",subCommand:"Caption"},remove:{id:"Remove",icon:"e-remove",tooltip:"Remove",command:"Images",subCommand:"Remove"},openimagelink:{id:"OpenImageLink",icon:"e-open-link",tooltip:"Open Link",command:"Images",subCommand:"OpenImageLink"},editimagelink:{id:"EditImageLink",icon:"e-edit-link",tooltip:"Edit Link",command:"Images",subCommand:"EditImageLink"},removeimagelink:{id:"RemoveImageLink",icon:"e-remove-link",tooltip:"Remove Link",command:"Images",subCommand:"RemoveImageLink"},insertlink:{id:"InsertLink",icon:"e-insert-link",tooltip:"Insert Link",command:"Images",subCommand:"InsertLink"},display:{id:"Display",icon:"e-display",tooltip:"Display",command:"Images",subCommand:"Display"},alttext:{id:"AltText",icon:"e-alt-text",tooltip:"Alternative Text",command:"Images",subCommand:"AltText"},dimension:{id:"Dimension",icon:"e-dimension",tooltip:"Change Size",command:"Images",subCommand:"Dimension"},fullscreen:{id:"Maximize",icon:"e-maximize",tooltip:"Maximize",command:"View",subCommand:"Maximize"},maximize:{id:"Maximize",icon:"e-maximize",tooltip:"Maximize",command:"FullScreen",subCommand:"Maximize"},minimize:{id:"Minimize",icon:"e-minimize",tooltip:"Minimize",command:"FullScreen",subCommand:"Minimize"},lowercase:{id:"LowerCase",icon:"e-lower-case",tooltip:"Lower Case",command:"Casing",subCommand:"LowerCase"},uppercase:{id:"UpperCase",icon:"e-upper-case",tooltip:"Upper Case",command:"Casing",subCommand:"UpperCase"},print:{id:"Print",icon:"e-print",tooltip:"Print",command:"Print",subCommand:"Print"},formats:{id:"Formats",icon:"e-formats",tooltip:"Formats",command:"Formats",subCommand:"Formats"},sourcecode:{id:"SourceCode",icon:"e-source-code",tooltip:"Source Code",command:"SourceCode",subCommand:"SourceCode"},preview:{id:"Preview",icon:"e-preview",tooltip:"Preview",command:"Preview",subCommand:"Preview"},viewside:{id:"ViewSide",icon:"e-view-side",tooltip:"ViewSide",command:"ViewSide",subCommand:"ViewSide"},insertcode:{id:"InsertCode",icon:"e-insert-code",tooltip:"Insert Code",command:"Formats",subCommand:"Pre"},tableheader:{id:"TableHeader",icon:"e-table-header",tooltip:"Table Header",command:"Table",subCommand:"TableHeader"},tableremove:{id:"TableRemove",icon:"e-table-remove",tooltip:"Table Remove",command:"Table",subCommand:"TableRemove"},tablerows:{id:"TableRows",icon:"e-table-rows",tooltip:"Table Rows",command:"Table",subCommand:"TableRows"},tablecolumns:{id:"TableColumns",icon:"e-table-columns",tooltip:"Table Columns",command:"Table",subCommand:"TableColumns"},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"}},Fn=[{locale:"alignmentsDropDownLeft",value:"JustifyLeft"},{locale:"alignmentsDropDownCenter",value:"JustifyCenter"},{locale:"alignmentsDropDownRight",value:"JustifyRight"},{locale:"alignmentsDropDownJustify",value:"JustifyFull"}],Qn=[{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"}],Wn=[{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"}],Vn=[{locale:"imageDisplayDropDownInline",value:"Inline"},{locale:"imageDisplayDropDownBreak",value:"Break"}],Gn=[{text:"Inline",cssClass:"e-inline",command:"Images",subCommand:"Inline"},{text:"Break",cssClass:"e-break",command:"Images",subCommand:"Break"}],Kn=[{locale:"tableInsertRowDropDownBefore",value:"InsertRowBefore"},{locale:"tableInsertRowDropDownAfter",value:"InsertRowAfter"},{locale:"tableInsertRowDropDownDelete",value:"DeleteRow"}],Yn=[{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"}],Xn=[{locale:"tableInsertColumnDropDownLeft",value:"InsertColumnLeft"},{locale:"tableInsertColumnDropDownRight",value:"InsertColumnRight"},{locale:"tableInsertColumnDropDownDelete",value:"DeleteColumn"}],Jn=[{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"}],$n=[{locale:"tableVerticalAlignDropDownTop",value:"AlignTop"},{locale:"tableVerticalAlignDropDownMiddle",value:"AlignMiddle"},{locale:"tableVerticalAlignDropDownBottom",value:"AlignBottom"}],Zn=[{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"}],ei=[{locale:"tableStylesDropDownDashedBorder",value:"Dashed"},{locale:"tableStylesDropDownAlternateRows",value:"Alternate"}],ti=[{text:"Dashed Borders",cssClass:"e-dashed-borders",command:"Table",subCommand:"Dashed"},{text:"Alternate Rows",cssClass:"e-alternate-rows",command:"Table",subCommand:"Alternate"}],ni={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 Hyperlink",openLink:"Open Link",editLink:"Edit Link",removeLink:"Remove Link",image:"Insert Image",replace:"Replace",align:"Align",caption:"Image Caption",remove:"Remove",insertLink:"Insert Link",display:"Display",altText:"Alternative Text",dimension:"Change Size",fullscreen:"Maximize",maximize:"Maximize",minimize:"Minimize",lowerCase:"Lower Case",upperCase:"Upper Case",print:"Print",formats:"Formats",sourcecode:"Code View",preview:"Preview",viewside:"ViewSide",insertCode:"Insert Code",linkText:"Display Text",linkTooltipLabel:"Title",linkWebUrl:"Web Address",linkTitle:"Enter a title",linkurl:"http://example.com",linkOpenInNewWindow:"Open Link in New Window",linkHeader:"Insert Link",dialogInsert:"Insert",dialogCancel:"Cancel",dialogUpdate:"Update",imageHeader:"Insert Image",imageLinkHeader:"You can also provide a link from the web",mdimageLink:"Please provide a URL for your image",imageUploadMessage:"Drop image here or browse to upload",imageDeviceUploadMessage:"Click here to upload",imageAlternateText:"Alternate Text",alternateHeader:"Alternative Text",browse:"Browse",imageUrl:"http://example.com/image.png",imageCaption:"Caption",imageSizeHeader:"Image Size",imageHeight:"Height",imageWidth:"Width",textPlaceholder:"Enter Text",inserttablebtn:"Insert Table",tabledialogHeader:"Insert Table",tableWidth:"Width",cellpadding:"Cell Padding",cellspacing:"Cell Spacing",columns:"Number of columns",rows:"Number of rows",tableRows:"Table Rows",tableColumns:"Table Columns",tableCellHorizontalAlign:"Table Cell Horizontal Align",tableCellVerticalAlign:"Table Cell Vertical Align",createTable:"Create Table",removeTable:"Remove Table",tableHeader:"Table Header",tableRemove:"Table Remove",tableCellBackground:"Table Cell Background",tableEditProperties:"Table Edit Properties",styles:"Styles",insertColumnLeft:"Insert Column Left",insertColumnRight:"Insert Column Right",deleteColumn:"Delete Column",insertRowBefore:"Insert Row Before",insertRowAfter:"Insert Row After",deleteRow:"Delete Row",tableEditHeader:"Edit Table",TableHeadingText:"Heading",TableColText:"Col",imageInsertLinkHeader:"Insert Link",editImageHeader:"Edit Image",alignmentsDropDownLeft:"Align Left",alignmentsDropDownCenter:"Align Center",alignmentsDropDownRight:"Align Right",alignmentsDropDownJustify:"Align Justify",imageDisplayDropDownInline:"Inline",imageDisplayDropDownBreak:"Break",tableInsertRowDropDownBefore:"Insert row before",tableInsertRowDropDownAfter:"Insert row after",tableInsertRowDropDownDelete:"Delete row",tableInsertColumnDropDownLeft:"Insert column left",tableInsertColumnDropDownRight:"Insert column right",tableInsertColumnDropDownDelete:"Delete column",tableVerticalAlignDropDownTop:"Align Top",tableVerticalAlignDropDownMiddle:"Align Middle",tableVerticalAlignDropDownBottom:"Align Bottom",tableStylesDropDownDashedBorder:"Dashed Borders",tableStylesDropDownAlternateRows:"Alternate Rows",pasteFormat:"Paste Format",pasteFormatContent:"Choose the formatting action",plainText:"Plain Text",cleanFormat:"Clean",keepFormat:"Keep",pasteDialogOk:"OK",pasteDialogCancel:"Cancel"},ii={alignments:"alignments",justifyleft:"justifyLeft",justifycenter:"justifyCenter",justifyright:"justifyRight",justifyfull:"justifyFull",fontname:"fontName",fontsize:"fontSize",fontcolor:"fontColor",backgroundcolor:"backgroundColor",bold:"bold",italic:"italic",underline:"underline",strikethrough:"strikethrough",clearformat:"clearFormat",clearall:"clearAll",cut:"cut",copy:"copy",paste:"paste",unorderedlist:"unorderedList",orderedlist:"orderedList",indent:"indent",outdent:"outdent",undo:"undo",redo:"redo",superscript:"superscript",subscript:"subscript",createlink:"createLink",openlink:"openLink",editlink:"editLink",removelink:"removeLink",openimagelink:"openLink",editimagelink:"editLink",removeimagelink:"removeLink",image:"image",replace:"replace",align:"align",caption:"caption",remove:"remove",insertlink:"insertLink",display:"display",alttext:"altText",dimension:"dimension",fullscreen:"fullscreen",maximize:"maximize",minimize:"minimize",lowercase:"lowerCase",uppercase:"upperCase",print:"print",formats:"formats",sourcecode:"sourcecode",preview:"preview",viewside:"viewside",insertcode:"insertCode",tablerows:"tableRows",tablecolumns:"tableColumns",tablecellhorizontalalign:"tableCellHorizontalAlign",tablecellverticalalign:"tableCellVerticalAlign",createtable:"createTable",removetable:"removeTable",tableheader:"tableHeader",tableremove:"tableRemove",tablecellbackground:"tableCellBackground",tableeditproperties:"tableEditProperties",styles:"styles",insertcolumnleft:"insertColumnLeft",insertcolumnright:"insertColumnRight",deletecolumn:"deleteColumn",aligntop:"AlignTop",alignmiddle:"AlignMiddle",alignbottom:"AlignBottom",insertrowbefore:"insertRowBefore",insertrowafter:"insertRowAfter",deleterow:"deleteRow"},oi=["Undo","Redo"],ri=["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"],si=function(){function e(e){this.parent=e,this.wireEvent()}return e.prototype.wireEvent=function(){this.parent.on(A,this.unWireEvent,this)},e.prototype.unWireEvent=function(){this.parent.off(A,this.unWireEvent),this.popupOverlay&&t.EventHandler.remove(this.popupOverlay,"click touchmove",this.onPopupOverlay),this.removePopupContainer()},e.prototype.toolbarBeforeCreate=function(e){"Extended"===this.mode&&(e.enableCollision=!1)},e.prototype.toolbarCreated=function(){this.parent.notify(X,this)},e.prototype.toolbarClicked=function(e){this.parent.enabled&&(this.parent.readonly||this.parent.notify(H,e),this.parent.trigger("toolbarClick",e))},e.prototype.dropDownSelected=function(e){this.parent.notify(ee,e),this.onPopupOverlay()},e.prototype.beforeDropDownItemRender=function(e){!this.parent.readonly&&this.parent.enabled&&this.parent.notify(te,e)},e.prototype.dropDownOpen=function(e){t.Browser.isDevice&&!e.element.parentElement.classList.contains(Nt)&&this.popupModal(e.element.parentElement),this.parent.notify(we,e)},e.prototype.dropDownClose=function(e){this.removePopupContainer(),this.parent.notify(Le,e)},e.prototype.removePopupContainer=function(){if(t.Browser.isDevice&&!t.isNullOrUndefined(this.popupContainer)){var e=this.popupContainer.querySelector(".e-dropdown-popup.e-tbar-btn.e-control");e&&(this.popupContainer.parentNode.insertBefore(e,this.popupContainer.nextSibling),e.style.removeProperty("position"),t.removeClass([e],"e-popup-modal")),t.detach(this.popupContainer),this.popupContainer=void 0}},e.prototype.renderToolbar=function(e){this.setPanel(e.target),this.renderPanel(),this.mode=e.overflowMode,e.rteToolbarObj.toolbarObj=new n.Toolbar({items:e.items,width:"100%",overflowMode:e.overflowMode,beforeCreate:this.toolbarBeforeCreate.bind(this),created:this.toolbarCreated.bind(this),clicked:this.toolbarClicked.bind(this),enablePersistence:e.enablePersistence,enableRtl:e.enableRtl}),e.rteToolbarObj.toolbarObj.isStringTemplate=!0,e.rteToolbarObj.toolbarObj.createElement=this.parent.createElement,e.rteToolbarObj.toolbarObj.appendTo(e.target)},e.prototype.renderDropDownButton=function(e){var n,o=this;e.element.classList.add(Mt),n=e.cssClass+" "+$t+" "+Zt,this.parent.inlineMode.enable&&t.Browser.isDevice&&(n=n+" "+Lt);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){for(var n=0;n<e.element.childNodes.length;n++){var i=o.parent.createElement("div");i.innerHTML=s.content.trim(),""!==i.textContent.trim()&&e.element.childNodes[n].textContent.trim()===i.textContent.trim()?e.element.childNodes[n].classList.contains("e-active")||t.addClass([e.element.childNodes[n]],"e-active"):t.removeClass([e.element.childNodes[n]],"e-active")}r.parent.notify(ke,e)}else e.cancel=!0},close:this.dropDownClose.bind(this),open:this.dropDownOpen.bind(this),beforeItemRender:this.beforeDropDownItemRender.bind(this)});s.isStringTemplate=!0,s.createElement=r.parent.createElement,s.appendTo(e.element),e.element.tabIndex=-1;return document.getElementById(s.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),s},e.prototype.onPopupOverlay=function(e){t.isNullOrUndefined(this.popupOverlay)||(t.closest(this.popupOverlay,".e-popup-container").style.display="none",this.popupOverlay.style.display="none",t.removeClass([this.popupOverlay],"e-popup-overlay"))},e.prototype.setIsModel=function(e){t.closest(e,".e-popup-container")?(e.parentElement.style.display="flex",this.popupOverlay=e.nextElementSibling,this.popupOverlay.style.display="block",t.addClass([this.popupOverlay],"e-popup-overlay")):(this.popupContainer=this.parent.createElement("div",{className:"e-rte-modal-popup e-popup-container e-center"}),e.parentNode.insertBefore(this.popupContainer,e),this.popupContainer.appendChild(e),this.popupContainer.style.zIndex=e.style.zIndex,this.popupContainer.style.display="flex",e.style.position="relative",t.addClass([e],"e-popup-modal"),this.popupOverlay=this.parent.createElement("div",{className:"e-popup-overlay"}),this.popupOverlay.style.zIndex=(parseInt(e.style.zIndex,null)-1).toString(),this.popupOverlay.style.display="block",this.popupContainer.appendChild(this.popupOverlay),t.EventHandler.add(this.popupOverlay,"click touchmove",this.onPopupOverlay,this))},e.prototype.paletteSelection=function(e,n){var i=e.element.querySelector(".e-control.e-colorpicker"),o=[].slice.call(t.selectAll(".e-tile",i.parentElement));t.removeClass(o,"e-selected");var r=n.querySelector("."+$t).style.borderBottomColor;o.filter(function(e){e.style.backgroundColor===r&&t.addClass([e],"e-selected")})},e.prototype.renderColorPickerDropDown=function(e,n,o){var s=this,a=this,l=$t+" "+Zt+(this.parent.inlineMode?" "+Lt:"");l+=" "+("backgroundcolor"===n?cn:dn);var c,p=a.parent.createElement("span",{className:ln}),h=a.parent.createElement("span",{className:e.cssClass});h.style.borderBottomColor="backgroundcolor"===n?a.parent.backgroundColor.default:a.parent.fontColor.default,p.appendChild(h);var u=new i.DropDownButton({target:o.element.parentElement,cssClass:l,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,beforeOpen:function(n){if(!a.parent.readonly&&a.parent.enabled){var i=n.event?n.event.target:null;if(a.currentElement=u.element,a.currentDropdown=u,a.paletteSelection(n,a.currentElement),n.event&&"click"===n.event.type&&(i.classList.contains(ln)||i.parentElement.classList.contains(ln))){n.cancel=!0;var o=i.classList.contains($t)?i.style.borderBottomColor:i.querySelector("."+$t).style.borderBottomColor;a.parent.notify(Le,{});var s=(c=a.parent.formatter.editorManager.nodeSelection.getRange(a.parent.contentModule.getDocument())).startContainer.parentNode;("TD"===c.startContainer.nodeName||"TH"===c.startContainer.nodeName||t.closest(c.startContainer.parentNode,"td,th")||a.parent.iframeSettings.enable&&!d(s.ownerDocument.querySelector("body"),"e-lib"))&&c.collapsed&&"BackgroundColor"===e.subCommand?a.parent.notify(Ae,{item:{command:e.command,subCommand:e.subCommand,value:o}}):a.parent.notify(Pe,{item:{command:e.command,subCommand:e.subCommand,value:o}})}else{var l=n.element.querySelector(".e-control.e-colorpicker"),p=t.getInstance(l,r.ColorPicker);p.showButtons=!n.element.querySelector(".e-color-palette"),p.dataBind(),n.element.onclick=function(e){e.target.classList.contains("e-cancel")&&u.toggle()}}}else n.cancel=!0},open:function(e){s.setColorPickerContentWidth(o);var n,i=e.element.querySelector(".e-control.e-colorpicker");(n=e.element.querySelector(".e-color-palette")?i.parentElement.querySelector(".e-palette"):i.parentElement.querySelector("e-handler"))&&n.focus(),t.Browser.isDevice&&s.popupModal(e.element.parentElement),s.pickerRefresh(e)},beforeClose:function(n){var i=n.event?n.event.target:null;if(n.event&&"click"===n.event.type&&(i.classList.contains(ln)||i.parentElement.classList.contains(ln))){var o=i.classList.contains($t)?i.style.borderBottomColor:i.querySelector("."+$t).style.borderBottomColor;("TD"===(c=a.parent.formatter.editorManager.nodeSelection.getRange(a.parent.contentModule.getDocument())).startContainer.nodeName||"TH"===c.startContainer.nodeName||t.closest(c.startContainer.parentNode,"td,th"))&&c.collapsed?a.parent.notify(Ae,{item:{command:e.command,subCommand:e.subCommand,value:o}}):a.parent.notify(Pe,{item:{command:e.command,subCommand:e.subCommand,value:o}})}else;},close:function(e){a.parent.notify(Le,{});var n=t.closest(e.element.parentElement,".e-popup-container");if(n&&(n.style.display="none",n.lastElementChild.style.display="none",t.removeClass([n.lastElementChild],"e-popup-overlay")),t.Browser.isDevice&&!t.isNullOrUndefined(n)){var i=n.querySelector(".e-dropdown-popup.e-tbar-btn.e-control");i&&(n.parentNode.insertBefore(i,n.nextSibling),i.style.removeProperty("position"),t.removeClass([i],"e-popup-modal")),t.detach(n),a.popupContainer=void 0}}});u.isStringTemplate=!0,u.createElement=a.parent.createElement,u.appendTo(e.element);return document.getElementById(u.element.id+"-popup").setAttribute("aria-owns",this.parent.getID()),u.element.insertBefore(p,u.element.querySelector(".e-caret")),e.element.tabIndex=-1,u.element.removeAttribute("type"),u.element.onmousedown=function(){a.parent.notify(we,{})},u.element.onkeydown=function(){a.parent.notify(we,{})},u},e.prototype.pickerRefresh=function(e){if("Picker"===this.parent.backgroundColor.mode){var n=e.element.parentElement;n.style.width=(n.offsetWidth+5).toString()+"px",t.getInstance(n,o.Popup).refreshPosition(n),n.style.width=(n.offsetWidth-5).toString()+"px"}},e.prototype.popupModal=function(e){var n=t.getInstance(e,o.Popup);n.relateTo=document.body,n.position={X:0,Y:0},n.targetType="container",n.collision={X:"fit",Y:"fit"},n.offsetY=4,n.dataBind(),this.setIsModel(e)},e.prototype.setColorPickerContentWidth=function(e){var n=e.element.nextSibling;if("0px"===n.style.width){n.style.width="";var i=parseInt(getComputedStyle(n).borderBottomWidth,10);n.style.width=t.formatUnit(n.children[0].offsetWidth+i+i)}},e.prototype.renderColorPicker=function(e,n){var i=this,o=this;return this.colorPicker=new r.ColorPicker({enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl,inline:!0,created:function(){var e="backgroundcolor"===n?o.parent.backgroundColor.default:o.parent.fontColor.default;i.colorPicker.setProperties({value:e})},mode:"backgroundcolor"===n?o.parent.backgroundColor.mode:o.parent.fontColor.mode,modeSwitcher:"backgroundcolor"===n?o.parent.backgroundColor.modeSwitcher:o.parent.fontColor.modeSwitcher,beforeTileRender:function(e){e.element.classList.add(pn),e.element.classList.add(An),""===e.value&&e.element.classList.add(Hn)},change:function(n){var i=n.currentValue.rgba;n.item={command:e.command,subCommand:e.subCommand,value:i},o.parent.notify(Le,{}),o.currentElement.querySelector("."+$t).style.borderBottomColor=i;var r=o.parent.formatter.editorManager.nodeSelection.getRange(o.parent.contentModule.getDocument());("TD"===r.startContainer.nodeName||"TH"===r.startContainer.nodeName||t.closest(r.startContainer.parentNode,"td,th"))&&r.collapsed&&"BackgroundColor"===e.subCommand?o.parent.notify(Ae,n):o.parent.notify(Pe,n),o.currentDropdown.toggle()},beforeModeSwitch:function(e){i.colorPicker.showButtons="Palette"!==e.mode}}),this.colorPicker.isStringTemplate=!0,this.colorPicker.columns="backgroundcolor"===n?this.parent.backgroundColor.columns:this.parent.fontColor.columns,this.colorPicker.presetColors="backgroundcolor"===n?this.parent.backgroundColor.colorCode:this.parent.fontColor.colorCode,this.colorPicker.cssClass="backgroundcolor"===n?un:hn,this.colorPicker.createElement=this.parent.createElement,this.colorPicker.appendTo(document.body.querySelector(e.target)),this.colorPicker},e.prototype.renderPanel=function(){this.getPanel().classList.add(mt)},e.prototype.getPanel=function(){return this.toolbarPanel},e.prototype.setPanel=function(e){this.toolbarPanel=e},e}(),ai=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,_n,S(this.parent.toolbarSettings.itemConfigs),!0):this.tools=_n}return n.prototype.addEventListener=function(){this.parent.on(Fe,this.setRtl,this),this.parent.on(A,this.removeEventListener,this)},n.prototype.removeEventListener=function(){this.parent.off(Fe,this.setRtl),this.parent.off(A,this.removeEventListener)},n.prototype.setRtl=function(e){t.isNullOrUndefined(this.toolbarObj)||this.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.getTemplateObject=function(e,t){var n;switch(e){case"fontcolor":case"backgroundcolor":n="span";break;default:n="button"}return{command:this.tools[e.toLocaleLowerCase()].command,subCommand:this.tools[e.toLocaleLowerCase()].subCommand,template:this.parent.createElement(n,{id:this.parent.getID()+"_"+t+"_"+this.tools[e.toLocaleLowerCase()].id}).outerHTML,tooltipText:m(e,this.locator)}},n.prototype.getObject=function(e,t){var n=e.toLowerCase();if(-1!==qn.indexOf(n))return this.getTemplateObject(n,t);switch(n){case"|":return{type:"Separator"};case"-":return{type:"Separator",cssClass:en};default:return{id:this.parent.getID()+"_"+t+"_"+this.tools[n.toLocaleLowerCase()].id,prefixIcon:this.tools[n.toLocaleLowerCase()].icon,tooltipText:m(n,this.locator),command:this.tools[n.toLocaleLowerCase()].command,subCommand:this.tools[n.toLocaleLowerCase()].subCommand}}},n.prototype.getItems=function(e,n){var i=this;if(this.parent.toolbarSettings.items.length<1)return[];for(var o=[],r=function(e){switch(typeof e){case"string":o.push(s.getObject(e,n));break;default:if(!t.isNullOrUndefined(e.click)){var r=e,a=r.click;r.click=function(){r.undo&&0===i.parent.formatter.getUndoRedoStack().length&&i.parent.formatter.saveData(),a.call(i),i.parent.formatter.getUndoRedoStack()[i.parent.formatter.getUndoRedoStack().length-1].text.trim()!==i.parent.inputElement.innerHTML.trim()&&r.undo&&i.parent.formatter.saveData()}}o.push(e)}},s=this,a=0,l=e;a<l.length;a++){r(l[a])}return o},n.prototype.getToolbarOptions=function(e){return{target:e.target,rteToolbarObj:this,items:this.getItems(e.items,e.container),overflowMode:e.mode,enablePersistence:this.parent.enablePersistence,enableRtl:this.parent.enableRtl}},n.prototype.render=function(t){this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.toolbarRenderer.renderToolbar(this.getToolbarOptions(t))},n}(),li=function(){function n(e,t){this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.initializeInstance=function(){this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar)},n.prototype.beforeRender=function(e){var n=e.item;n.cssClass&&t.addClass([e.element],n.cssClass),"Alignments"!==n.command&&"JustifyLeft"!==n.subCommand&&"JustifyRight"!==n.subCommand&&"JustifyCenter"!==n.subCommand||e.element.setAttribute("title",m(n.subCommand.toLocaleLowerCase(),this.locator))},n.prototype.dropdownContent=function(e,t,n){return'<span style="display: inline-flex;width:'+("quick"===t?"auto":e)+'" ><span class="e-rte-dropdown-btn-text">'+n+"</span></span>"},n.prototype.renderDropDowns=function(e){var n=this;this.initializeInstance();var i=e.containerType,o=e.container;qn.forEach(function(r){var s=void 0;if(-1!==l(r,e.items))switch(r){case"formats":if(s=t.select("#"+n.parent.getID()+"_"+i+"_Formats",o),t.isNullOrUndefined(s)||s.classList.contains(Mt))return;var a=n.parent.format.types.slice();a.forEach(function(e){Object.defineProperties(e,{command:{value:"Formats",enumerable:!0},subCommand:{value:e.value,enumerable:!0}})});var d=t.isNullOrUndefined(n.parent.format.default)?a[0].text:n.parent.format.default;n.formatDropDown=n.toolbarRenderer.renderDropDownButton({iconCss:"quick"===i?"e-formats e-icons":"",content:n.dropdownContent(n.parent.format.width,i,"quick"===i?"":c(a,d,"text","text")),cssClass:xt+" "+Dt+" "+nn,itemName:"Formats",items:a,element:s});break;case"fontname":if(s=t.select("#"+n.parent.getID()+"_"+i+"_FontName",o),t.isNullOrUndefined(s)||s.classList.contains(Mt))return;var p=n.parent.fontFamily.items.slice();p.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontName",enumerable:!0}})});var u=t.isNullOrUndefined(n.parent.fontFamily.default)?p[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?"":c(p,u,"text","text")),cssClass:xt+" "+Dt+" "+on,itemName:"FontName",items:p,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(Mt))return;var m=n.parent.fontSize.items.slice();m.forEach(function(e){Object.defineProperties(e,{command:{value:"Font",enumerable:!0},subCommand:{value:"FontSize",enumerable:!0}})});var g=t.isNullOrUndefined(n.parent.fontSize.default)?m[1].text:n.parent.fontSize.default;n.fontSizeDropDown=n.toolbarRenderer.renderDropDownButton({content:n.dropdownContent(n.parent.fontSize.width,i,h(c(m,g.replace(/\s/g,""),"value","text"))),cssClass:xt+" "+Dt+" "+rn,itemName:"FontSize",items:m,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(Mt))return;n.alignDropDown=n.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:xt+" "+Dt,itemName:"Alignments",items:Qn,element:s});break;case"align":n.imageAlignmentDropDown(i,o,s);break;case"display":n.imageDisplayDropDown(i,o,s);break;case"tablerows":n.rowDropDown(i,o,s);break;case"tablecolumns":n.columnDropDown(i,o,s);break;case"tablecellverticalalign":n.verticalAlignDropDown(i,o,s);break;case"styles":n.tableStylesDropDown(i,o,s)}})},n.prototype.getUpdateItems=function(e,t){var n=e.slice();return n.forEach(function(e){Object.defineProperties(e,{command:{value:"Format"===t?"Formats":"Font",enumerable:!0},subCommand:{value:"Format"===t?e.value:t,enumerable:!0}})}),n},n.prototype.onPropertyChanged=function(e){for(var n,i,o=e.newProp,r=0,s=Object.keys(o);r<s.length;r++){switch(s[r]){case"fontFamily":if(this.fontNameDropDown)for(var a=0,l=Object.keys(o.fontFamily);a<l.length;a++){switch(l[a]){case"default":case"width":var d=this.fontNameDropDown.items;n=t.isNullOrUndefined(t.closest(this.fontNameDropDown.element,"."+Tt))?"toolbar":"quick";var p=t.isNullOrUndefined(this.parent.fontFamily.default)?d[0].text:this.parent.fontFamily.default;i=this.dropdownContent(this.parent.fontFamily.width,n,"quick"===n?"":c(d,p,"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 u=0,m=Object.keys(o.fontSize);u<m.length;u++){switch(m[u]){case"default":case"width":var g=this.fontSizeDropDown.items;n=t.isNullOrUndefined(t.closest(this.fontSizeDropDown.element,"."+Tt))?"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,h(c(g,f.replace(/\s/g,""),"value","text"))),this.fontSizeDropDown.setProperties({content:i}),t.isNullOrUndefined(this.parent.fontSize.default)?this.getEditNode().style.removeProperty("font-size"):this.getEditNode().style.fontSize=this.parent.fontSize.default;break;case"items":this.fontSizeDropDown.setProperties({items:this.getUpdateItems(o.fontSize.items,"FontSize")})}}break;case"format":if(this.formatDropDown)for(var b=0,v=Object.keys(o.format);b<v.length;b++){switch(v[b]){case"default":case"width":var y=this.formatDropDown.items;n=t.isNullOrUndefined(t.closest(this.formatDropDown.element,"."+Tt))?"toolbar":"quick";var C=t.isNullOrUndefined(this.parent.format.default)?y[0].text:this.parent.format.default;i=this.dropdownContent(this.parent.format.width,n,"quick"===n?"":c(y,C,"text","text")),this.formatDropDown.setProperties({content:i});break;case"types":this.formatDropDown.setProperties({items:this.getUpdateItems(o.format.types,"Format")})}}}}},n.prototype.getEditNode=function(){return this.parent.contentModule.getEditPanel()},n.prototype.rowDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableRows",n)).classList.contains(Mt)||(this.tableRowsDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-rows e-icons",cssClass:xt+" "+Dt+" "+Nt,itemName:"TableRows",items:Yn,element:i}))},n.prototype.columnDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableColumns",n)).classList.contains(Mt)||(this.tableColumnsDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-columns e-icons",cssClass:xt+" "+Dt+" "+Nt,itemName:"TableColumns",items:Jn,element:i}))},n.prototype.verticalAlignDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_TableCellVerticalAlign",n)).classList.contains(Mt)||(this.tableCellVerticalAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-table-cell-ver-align e-icons",cssClass:xt+" "+Dt+" "+Nt,itemName:"TableCellVerticalAlign",items:Zn,element:i}))},n.prototype.imageDisplayDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Display",n)).classList.contains(Mt)||(this.displayDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-display e-icons",cssClass:xt+" "+Dt+" "+Nt,itemName:"Display",items:Gn,element:i}))},n.prototype.imageAlignmentDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Align",n)).classList.contains(Mt)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-justify-left e-icons",cssClass:xt+" "+Ot+" "+Nt,itemName:"Align",items:Wn,element:i}))},n.prototype.tableStylesDropDown=function(e,n,i){(i=t.select("#"+this.parent.getID()+"_"+e+"_Styles",n)).classList.contains(Mt)||(this.imageAlignDropDown=this.toolbarRenderer.renderDropDownButton({iconCss:"e-style e-icons",cssClass:xt+" "+Ot+" "+Nt,itemName:"Styles",items:this.parent.tableSettings.styles,element:i}))},n.prototype.removeDropDownClasses=function(e){t.removeClass([e],[Mt,xt,Ot,Dt])},n.prototype.destroyDropDowns=function(){this.formatDropDown&&(this.removeDropDownClasses(this.formatDropDown.element),this.formatDropDown.destroy()),this.fontNameDropDown&&(this.removeDropDownClasses(this.fontNameDropDown.element),this.fontNameDropDown.destroy()),this.fontSizeDropDown&&(this.removeDropDownClasses(this.fontSizeDropDown.element),this.fontSizeDropDown.destroy()),this.alignDropDown&&(this.removeDropDownClasses(this.alignDropDown.element),this.alignDropDown.destroy()),this.imageAlignDropDown&&(this.removeDropDownClasses(this.imageAlignDropDown.element),this.imageAlignDropDown.destroy()),this.displayDropDown&&(this.removeDropDownClasses(this.displayDropDown.element),this.displayDropDown.destroy()),this.tableRowsDropDown&&(this.removeDropDownClasses(this.tableRowsDropDown.element),this.tableRowsDropDown.destroy()),this.tableColumnsDropDown&&(this.removeDropDownClasses(this.tableColumnsDropDown.element),this.tableColumnsDropDown.destroy()),this.tableCellVerticalAlignDropDown&&(this.removeDropDownClasses(this.tableCellVerticalAlignDropDown.element),this.tableCellVerticalAlignDropDown.destroy())},n.prototype.setRtl=function(e){this.formatDropDown&&this.formatDropDown.setProperties({enableRtl:e.enableRtl}),this.fontNameDropDown&&this.fontNameDropDown.setProperties({enableRtl:e.enableRtl}),this.fontSizeDropDown&&this.fontSizeDropDown.setProperties({enableRtl:e.enableRtl}),this.alignDropDown&&this.alignDropDown.setProperties({enableRtl:e.enableRtl}),this.imageAlignDropDown&&this.imageAlignDropDown.setProperties({enableRtl:e.enableRtl}),this.displayDropDown&&this.displayDropDown.setProperties({enableRtl:e.enableRtl})},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(te,this.beforeRender,this),this.parent.on(P,this.onIframeMouseDown,this),this.parent.on(Fe,this.setRtl,this),this.parent.on(A,this.removeEventListener,this),this.parent.on(V,this.onPropertyChanged,this))},n.prototype.onIframeMouseDown=function(){y(document,"mousedown")},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(P,this.onIframeMouseDown),this.parent.off(Fe,this.setRtl),this.parent.off(te,this.beforeRender),this.parent.off(A,this.removeEventListener),this.parent.off(V,this.onPropertyChanged))},n}(),di=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}(),ci=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}(),pi=function(){function e(e){this.parent=e,this.addEventListener(),this.serviceLocator=new di,this.serviceLocator.register("rendererFactory",new ci)}return e.prototype.addEventListener=function(){this.parent.on(H,this.toolbarClick,this),this.parent.on(ee,this.dropDownSelect,this),this.parent.on(Pe,this.renderSelection,this),this.parent.on(A,this.removeEventListener,this)},e.prototype.toolbarClick=function(e){if(!t.isNullOrUndefined(e.item)){if(!t.isNullOrUndefined(e.item.controlParent)){var n=e.item.controlParent.activeEle;n&&(n.tabIndex=-1)}this.parent.notify(F,e),this.parent.notify(Q,e)}},e.prototype.dropDownSelect=function(e){if(this.parent.notify(Le,{}),!document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))||!e.item||"Images"!==e.item.command&&"Display"!==e.item.command&&"Table"!==e.item.command){var t=e.item.controlParent&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.tableQTBar&&this.parent.quickToolbarModule.tableQTBar.element.contains(e.item.controlParent.element)?"Table":null;this.parent.formatter.process(this.parent,e,e.originalEvent,t)}this.parent.notify(we,{})},e.prototype.renderSelection=function(e){this.parent.notify(Le,{}),this.parent.formatter.process(this.parent,e,e.originalEvent,null),this.parent.notify(we,{})},e.prototype.removeEventListener=function(){this.parent.off(H,this.toolbarClick),this.parent.off(ee,this.dropDownSelect),this.parent.off(Pe,this.renderSelection),this.parent.off(A,this.removeEventListener)},e}(),hi=function(){function n(n,i){this.parent=n,this.isToolbar=!1,this.locator=i,this.isTransformChild=!1,this.renderFactory=this.locator.getService("rendererFactory"),function(e){Qn.forEach(function(t,n){Qn[n].text=a(e,Fn,Qn[n])}),Gn.forEach(function(t,n){Gn[n].text=a(e,Vn,Gn[n])}),Yn.forEach(function(t,n){Yn[n].text=a(e,Kn,Yn[n])}),Jn.forEach(function(t,n){Jn[n].text=a(e,Xn,Jn[n])}),Zn.forEach(function(t,n){Zn[n].text=a(e,$n,Zn[n])}),ti.forEach(function(t,n){ti[n].text=a(e,ei,ti[n])})}(this.parent),this.renderFactory.addRenderer(e.RenderType.Toolbar,new si(this.parent)),this.toolbarRenderer=this.renderFactory.getRenderer(e.RenderType.Toolbar),this.baseToolbar=new ai(this.parent,this.locator),this.addEventListener(),this.parent.toolbarSettings&&Object.keys(this.parent.toolbarSettings.itemConfigs).length>0?t.extend(this.tools,_n,S(this.parent.toolbarSettings.itemConfigs),!0):this.tools=_n}return n.prototype.initializeInstance=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content),this.editableElement=this.contentRenderer.getEditPanel(),this.editPanel=this.contentRenderer.getPanel()},n.prototype.toolbarBindEvent=function(){this.parent.inlineMode.enable||(this.keyBoardModule=new t.KeyboardEvents(this.getToolbarElement(),{keyAction:this.toolBarKeyDown.bind(this),keyConfigs:this.parent.formatter.keyConfig,eventName:"keydown"}))},n.prototype.toolBarKeyDown=function(e){switch(e.action){case"escape":this.parent.contentModule.getEditPanel().focus()}},n.prototype.createToolbarElement=function(){this.tbElement=this.parent.createElement("div",{id:this.parent.getID()+"_toolbar"}),!t.Browser.isDevice&&this.parent.inlineMode.enable&&p()||(this.parent.toolbarSettings.enableFloating&&!this.parent.inlineMode.enable?(this.tbWrapper=this.parent.createElement("div",{id:this.parent.getID()+"_toolbar_wrapper",innerHTML:this.tbElement.outerHTML,className:It}),this.tbElement=this.tbWrapper.firstElementChild,this.parent.element.insertBefore(this.tbWrapper,this.editPanel)):this.parent.element.insertBefore(this.tbElement,this.editPanel))},n.prototype.getToolbarMode=function(){var t;switch(this.parent.toolbarSettings.type){case e.ToolbarType.Expand:t="Extended";break;case e.ToolbarType.Scrollable:t="Scrollable";break;default:t="MultiRow"}return p()&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&(t=e.ToolbarType.Scrollable),t},n.prototype.checkToolbarResponsive=function(n){if(!t.Browser.isDevice||p())return!1;var i;return i=this.parent.toolbarSettings.type===e.ToolbarType.Expand?e.ToolbarType.MultiRow:this.parent.toolbarSettings.type,this.baseToolbar.render({container:this.parent.inlineMode.enable?"quick":"toolbar",items:this.parent.toolbarSettings.items,mode:i,target:n}),this.parent.toolbarSettings.type===e.ToolbarType.Expand&&(t.addClass([n],["e-rte-tb-mobile"]),this.parent.inlineMode.enable?this.addFixedTBarClass():t.addClass([n],["e-tb-static"])),this.wireEvents(),this.dropDownModule.renderDropDowns({container:n,containerType:this.parent.inlineMode.enable?"quick":"toolbar",items:this.parent.toolbarSettings.items}),this.parent.notify(_,{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;p>m+s||p<-d||p<0&&!(p-(o?0:m)+d>a+s)?(r=!1,t.removeClass([this.tbElement],[bt])):p<m+s&&(n=p<0?-p+m:m-p,n=o?n-l:n,t.addClass([this.tbElement],[bt]),r=!0)}else{var g=this.parent.element.getBoundingClientRect();if(window.innerHeight<g.top)return;n=e&&e.target!==document?i.getBoundingClientRect().top:0,g.bottom<s+a+n||g.bottom<0||g.top>s+n?r=!1:g.top<s&&(r=!0)}r?(t.addClass([this.tbElement],[ft]),t.setStyleAttribute(this.tbElement,{width:this.parent.element.offsetWidth+"px",top:s+n+"px"})):(t.removeClass([this.tbElement],[ft]),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(qe,{}):(this.baseToolbar.render({container:"toolbar",items:this.parent.toolbarSettings.items,mode:this.getToolbarMode(),target:this.tbElement}),this.parent.inlineMode.enable||(this.parent.toolbarSettings.enableFloating&&(this.checkIsTransformChild(),this.toggleFloatClass()),this.parent.toolbarSettings.type===e.ToolbarType.Expand&&t.addClass([this.parent.element],[yt]))),this.wireEvents(),this.parent.inlineMode.enable&&!p()&&this.addFixedTBarClass(),this.parent.inlineMode.enable||(this.dropDownModule.renderDropDowns({container:this.tbElement,containerType:"toolbar",items:this.parent.toolbarSettings.items}),this.parent.notify(_,{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(ge,{targetItem:"SourceCode",updateItem:"Preview",baseToolbar:this.parent.getBaseToolbarObject()}),this.parent.disableToolbarItem(this.parent.toolbarSettings.items))}},n.prototype.addFixedTBarClass=function(){t.addClass([this.tbElement],[gt])},n.prototype.removeFixedTBarClass=function(){t.removeClass([this.tbElement],[gt])},n.prototype.showFixedTBar=function(){t.addClass([this.tbElement],["e-show"]),t.Browser.isIos&&t.addClass([this.tbElement],[tn])},n.prototype.hideFixedTBar=function(){this.isToolbar?this.isToolbar=!1:t.removeClass([this.tbElement],["e-show",tn])},n.prototype.updateItem=function(e){var n=this.tools[e.updateItem.toLocaleLowerCase()],i=b(f(this.tools[e.targetItem.toLocaleLowerCase()].subCommand),e.baseToolbar.toolbarObj.items)[0];if(t.isNullOrUndefined(i))this.addTBarItem(e,0);else{var o=this.parent.inlineMode.enable?"_quick_":"_toolbar_";e.baseToolbar.toolbarObj.items[i].id=this.parent.getID()+o+n.id,e.baseToolbar.toolbarObj.items[i].prefixIcon=n.icon,e.baseToolbar.toolbarObj.items[i].tooltipText=n.tooltip,e.baseToolbar.toolbarObj.items[i].subCommand=n.subCommand,e.baseToolbar.toolbarObj.dataBind()}},n.prototype.updateToolbarStatus=function(e){if(this.tbElement&&(!this.parent.inlineMode.enable||!p()&&t.Browser.isDevice)){g({args:e,dropDownModule:this.dropDownModule,parent:this.parent,tbElements:t.selectAll("."+Bt,this.tbElement),tbItems:this.baseToolbar.toolbarObj.items},!!this.parent.inlineMode.enable)}},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=b(f(n),e.toolbarObj.items);this.tbItems=t.selectAll("."+Bt,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||v(e,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus())},n.prototype.removeTBarItems=function(e){t.isNullOrUndefined(this.baseToolbar.toolbarObj)&&(this.baseToolbar=this.parent.getBaseToolbarObject());var n=b(f(e),this.baseToolbar.toolbarObj.items);this.tbItems=this.parent.inlineMode.enable?t.selectAll("."+Bt,this.baseToolbar.toolbarObj.element):t.selectAll("."+Bt,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],[At]),n+=i.offsetHeight,t.removeClass([i],[At])):t.removeClass([this.tbElement],[Jt])}return n},n.prototype.getToolbarHeight=function(){return this.tbElement.offsetHeight},n.prototype.getToolbarElement=function(){return t.select("."+mt,this.parent.element)},n.prototype.refreshToolbarOverflow=function(){this.baseToolbar.toolbarObj.refreshOverflow()},n.prototype.isToolbarDestroyed=function(){return this.baseToolbar.toolbarObj&&!this.baseToolbar.toolbarObj.isDestroyed},n.prototype.destroyToolbar=function(){if(this.isToolbarDestroyed()){this.parent.unWireScrollElementsEvents(),this.unWireEvents(),this.parent.notify(W,{}),this.dropDownModule.destroyDropDowns(),this.baseToolbar.toolbarObj.destroy(),this.removeEventListener(),t.removeClass([this.parent.element],[yt]);var e=t.select("."+It,this.parent.element),n=t.select("."+mt,this.parent.element);t.isNullOrUndefined(e)?t.isNullOrUndefined(n)||t.detach(n):t.detach(e)}},n.prototype.destroy=function(){this.isToolbarDestroyed()&&(this.destroyToolbar(),this.keyBoardModule&&this.keyBoardModule.destroy())},n.prototype.scrollHandler=function(e){this.parent.inlineMode.enable||this.parent.toolbarSettings.enableFloating&&this.getDOMVisibility(this.tbElement)&&this.toggleFloatClass(e.args)},n.prototype.getDOMVisibility=function(e){return!(!e.offsetParent&&0===e.offsetWidth&&0===e.offsetHeight)},n.prototype.mouseDownHandler=function(){t.Browser.isDevice&&this.parent.inlineMode.enable&&!p()&&this.showFixedTBar()},n.prototype.focusChangeHandler=function(){t.Browser.isDevice&&this.parent.inlineMode.enable&&!p()&&(this.isToolbar=!1,this.hideFixedTBar())},n.prototype.dropDownBeforeOpenHandler=function(){this.isToolbar=!0},n.prototype.tbFocusHandler=function(e){var n=document.activeElement,i=t.closest(n,".e-rte-toolbar");if(n===this.parent.getToolbarElement()||i===this.parent.getToolbarElement())for(var o=this.parent.getToolbarElement().querySelectorAll(".e-expended-nav"),r=0;r<o.length;r++)t.isNullOrUndefined(this.parent.getToolbarElement().querySelector(".e-insert-table-btn"))?o[r].setAttribute("tabindex","0"):o[r].setAttribute("tabindex","1")},n.prototype.tbKeydownHandler=function(e){(e.target.classList.contains("e-dropdown-btn")||e.target.getAttribute("id")===this.parent.getID()+"_toolbar_CreateTable")&&e.target.setAttribute("tabindex","0")},n.prototype.toolbarMouseDownHandler=function(n){var i=t.closest(n.target,".e-hor-nav");i&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&!t.isNullOrUndefined(i)?i.classList.contains("e-nav-active")?(t.addClass([this.tbElement],[Jt]),this.parent.setContentHeight("toolbar",!0)):(t.removeClass([this.tbElement],[Jt]),this.parent.setContentHeight("toolbar",!1)):(t.Browser.isDevice||this.parent.inlineMode.enable)&&(this.isToolbar=!0),t.isNullOrUndefined(i)&&this.parent.toolbarSettings.type===e.ToolbarType.Expand&&t.removeClass([this.tbElement],[Jt])},n.prototype.wireEvents=function(){this.parent.inlineMode.enable&&p()||(t.EventHandler.add(this.tbElement,"click mousedown",this.toolbarMouseDownHandler,this),t.EventHandler.add(this.tbElement,"focusin",this.tbFocusHandler,this),t.EventHandler.add(this.tbElement,"keydown",this.tbKeydownHandler,this))},n.prototype.unWireEvents=function(){t.EventHandler.remove(this.tbElement,"click mousedown",this.toolbarMouseDownHandler),t.EventHandler.remove(this.tbElement,"focusin",this.tbFocusHandler),t.EventHandler.remove(this.tbElement,"keydown",this.tbKeydownHandler)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.dropDownModule=new li(this.parent,this.locator),this.toolbarActionModule=new pi(this.parent),this.parent.on(I,this.renderToolbar,this),this.parent.on(Be,this.scrollHandler,this),this.parent.on(q,this.toolbarBindEvent,this),this.parent.on(z,this.updateToolbarStatus,this),this.parent.on(V,this.onPropertyChanged,this),this.parent.on(j,this.onRefresh,this),this.parent.on(A,this.destroy,this),this.parent.on($,this.fullScreen,this),this.parent.on(Z,this.hideScreen,this),this.parent.on(ge,this.updateItem,this),this.parent.on(ke,this.dropDownBeforeOpenHandler,this),this.parent.on(xe,this.parent.setContentHeight,this.parent),this.parent.on(He,this.focusChangeHandler,this),this.parent.on(De,this.mouseDownHandler,this),this.parent.on(Me,this.mouseDownHandler,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(I,this.renderToolbar),this.parent.off(Be,this.scrollHandler),this.parent.off(q,this.toolbarBindEvent),this.parent.off(z,this.updateToolbarStatus),this.parent.off(V,this.onPropertyChanged),this.parent.off(A,this.destroy),this.parent.off($,this.parent.fullScreenModule.showFullScreen),this.parent.off(Z,this.parent.fullScreenModule.hideFullScreen),this.parent.off(ge,this.updateItem),this.parent.off(ke,this.dropDownBeforeOpenHandler),this.parent.off(xe,this.parent.setContentHeight),this.parent.off(He,this.focusChangeHandler),this.parent.off(De,this.mouseDownHandler),this.parent.off(Me,this.mouseDownHandler))},n.prototype.onRefresh=function(){this.refreshToolbarOverflow(),this.parent.setContentHeight("",!0)},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.inlineMode))for(var n=0,i=Object.keys(e.newProp.inlineMode);n<i.length;n++){switch(i[n]){case"enable":this.refreshToolbar()}}e.module===this.getModuleName()&&this.refreshToolbar()},n.prototype.refreshToolbar=function(){t.isNullOrUndefined(this.baseToolbar.toolbarObj)&&(this.baseToolbar=this.parent.getBaseToolbarObject());var e=t.select("."+It,this.parent.element);(t.select("."+mt,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)||v(this.baseToolbar,this.parent.formatter.editorManager.undoRedoManager.getUndoStatus()))},n.prototype.getModuleName=function(){return"toolbar"},n}(),ui=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)}}(),mi=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},gi={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},fi=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.which,a=0,l=Object.keys(o.keyConfigs);a<l.length;a++)for(var d=l[a],c=0,p=o.keyConfigs[d].split(",");c<p.length;c++){var h=p[c],u=i.getKeyConfigData(h.trim());t===u.altKey&&n===u.ctrlKey&&r===u.shiftKey&&s===u.keyCode&&(e.action=d)}o.keyAction&&o.keyAction(e)},o.bind(),o}ui(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 gi[e]||e.toUpperCase().charCodeAt(0)};var i;return n.configCache={},mi([t.Property({})],n.prototype,"keyConfigs",void 0),mi([t.Property("keyup")],n.prototype,"eventName",void 0),mi([t.Event()],n.prototype,"keyAction",void 0),n=i=mi([t.NotifyPropertyChanges],n)}(t.Base),bi=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,_n,S(this.parent.toolbarSettings.itemConfigs),!0):this.tools=_n}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;qn.forEach(function(a){if(-1!==l(a,e.items))switch(a){case"fontcolor":i=n.parent.getID()+"_"+r+"_FontColor_Target";var d=n.parent.createElement("input");d.id=i,d.classList.add(sn),document.body.appendChild(d),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" "+$t+" e-icons",value:n.tools[a.toLocaleLowerCase()].value,command:n.tools[a.toLocaleLowerCase()].command,subCommand:n.tools[a.toLocaleLowerCase()].subCommand,element:t.select("#"+n.parent.getID()+"_"+r+"_FontColor",s),target:"#"+i},n.fontColorPicker=n.toolbarRenderer.renderColorPicker(o,"fontcolor"),n.fontColorDropDown=n.toolbarRenderer.renderColorPickerDropDown(o,"fontcolor",n.fontColorPicker);break;case"backgroundcolor":i=n.parent.getID()+"_"+r+"_BackgroundColor_Target";var c=n.parent.createElement("input");c.id=i,c.classList.add(an),document.body.appendChild(c),o={cssClass:n.tools[a.toLocaleLowerCase()].icon+" "+$t+" e-icons",value:n.tools[a.toLocaleLowerCase()].value,command:n.tools[a.toLocaleLowerCase()].command,subCommand:n.tools[a.toLocaleLowerCase()].subCommand,element:t.select("#"+n.parent.getID()+"_"+r+"_BackgroundColor",s),target:"#"+i},n.backgroundColorPicker=n.toolbarRenderer.renderColorPicker(o,"backgroundcolor"),n.backgroundColorDropDown=n.toolbarRenderer.renderColorPickerDropDown(o,"backgroundcolor",n.backgroundColorPicker)}})},n.prototype.destroy=function(){this.removeEventListener(),this.destroyColorPicker()},n.prototype.destroyColorPicker=function(){if(this.fontColorPicker&&!this.fontColorPicker.isDestroyed&&this.fontColorPicker.destroy(),this.backgroundColorPicker&&!this.backgroundColorPicker.isDestroyed&&this.backgroundColorPicker.destroy(),this.fontColorDropDown&&!this.fontColorDropDown.isDestroyed){(e=this.fontColorDropDown.element.querySelector(".e-rte-color-content"))&&t.detach(e),this.fontColorDropDown.destroy()}if(this.backgroundColorDropDown&&!this.backgroundColorDropDown.isDestroyed){var e;(e=this.backgroundColorDropDown.element.querySelector(".e-rte-color-content"))&&t.detach(e),this.backgroundColorDropDown.destroy()}},n.prototype.setRtl=function(e){this.fontColorPicker&&(this.fontColorPicker.setProperties({enableRtl:e.enableRtl}),this.fontColorDropDown.setProperties({enableRtl:e.enableRtl})),this.backgroundColorPicker&&(this.backgroundColorPicker.setProperties({enableRtl:e.enableRtl}),this.backgroundColorDropDown.setProperties({enableRtl:e.enableRtl}))},n.prototype.addEventListener=function(){this.parent.on(J,this.renderColorPickerInput,this),this.parent.on(Fe,this.setRtl,this),this.parent.on(A,this.destroy,this),this.parent.on(W,this.destroyColorPicker,this),this.parent.on(V,this.onPropertyChanged,this)},n.prototype.onPropertyChanged=function(e){for(var t=e.newProp,n=0,i=Object.keys(t);n<i.length;n++){switch(i[n]){case"fontColor":if(this.fontColorPicker)for(var o=0,r=Object.keys(t.fontColor);o<r.length;o++){switch(r[o]){case"default":this.fontColorPicker.setProperties({value:t.fontColor.default});this.fontColorDropDown.element.querySelector("."+this.tools.fontcolor.icon).style.borderBottomColor=t.fontColor.default;break;case"mode":this.fontColorPicker.setProperties({mode:t.fontColor.mode});break;case"columns":this.fontColorPicker.setProperties({columns:t.fontColor.columns});break;case"colorCode":this.fontColorPicker.setProperties({presetColors:t.fontColor.colorCode});break;case"modeSwitcher":this.fontColorPicker.setProperties({modeSwitcher:t.fontColor.modeSwitcher})}}break;case"backgroundColor":if(this.backgroundColorPicker)for(var s=0,a=Object.keys(t.backgroundColor);s<a.length;s++){switch(a[s]){case"default":this.backgroundColorPicker.setProperties({value:t.backgroundColor.default});this.backgroundColorDropDown.element.querySelector("."+this.tools.backgroundcolor.icon).style.borderBottomColor=t.backgroundColor.default;break;case"mode":this.backgroundColorPicker.setProperties({mode:t.backgroundColor.mode});break;case"columns":this.backgroundColorPicker.setProperties({columns:t.backgroundColor.columns});break;case"colorCode":this.backgroundColorPicker.setProperties({presetColors:t.backgroundColor.colorCode});break;case"modeSwitcher":this.backgroundColorPicker.setProperties({modeSwitcher:t.backgroundColor.modeSwitcher})}}}}},n.prototype.removeEventListener=function(){this.parent.off(J,this.renderColorPickerInput),this.parent.off(A,this.destroy),this.parent.off(Fe,this.setRtl),this.parent.off(W,this.destroyColorPicker),this.parent.off(V,this.onPropertyChanged)},n}(),vi=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 li(this.parent,this.locator),this.colorPickerObj=new bi(this.parent,this.locator)}return n.prototype.appendPopupContent=function(){this.toolbarElement=this.parent.createElement("div",{className:Tt}),this.element.appendChild(this.toolbarElement)},n.prototype.render=function(e){var n;n="Image"===e.popupType?kt:"Inline"===e.popupType?wt:"";var i=t.getUniqueID(e.popupType+"_Quick_Popup");this.stringItems=e.toolbarItems,this.element=this.parent.createElement("div",{id:i,className:n+" "+$t}),this.element.setAttribute("aria-owns",this.parent.getID()),this.appendPopupContent(),this.createToolbar(e.toolbarItems,e.mode),this.popupRenderer.renderPopup(this),this.addEventListener()},n.prototype.createToolbar=function(e,t){this.quickTBarObj=new ai(this.parent,this.locator),this.quickTBarObj.render({container:"quick",target:this.toolbarElement,items:e,mode:t}),this.quickTBarObj.toolbarObj.refresh()},n.prototype.setPosition=function(e){var n,i,o=t.closest(e.target,".e-img-caption"),r=t.isNullOrUndefined(o)?e.target:o;t.addClass([this.toolbarElement],[Ut]);var s=r.offsetTop,a=window.pageYOffset+e.parentData.top;i=s-e.editTop>e.popHeight?a+e.tBarElementHeight+(s-e.editTop)-e.popHeight-5:e.editTop+e.editHeight-(s+r.offsetHeight)>e.popHeight?a+e.tBarElementHeight+(s-e.editTop)+r.offsetHeight+5:e.y,n=r.offsetWidth>e.popWidth?r.offsetWidth/2-e.popWidth/2+e.parentData.left+r.offsetLeft:e.parentData.left+r.offsetLeft,this.popupObj.position.X=n+e.popWidth>e.parentData.right?e.parentData.right-e.popWidth:n,this.popupObj.position.Y=i>=0?i:e.y+5,this.popupObj.dataBind(),t.removeClass([this.toolbarElement],[Ut])},n.prototype.checkCollision=function(e,t,n){var i,r,s=e.parentData.top,a=e.windowY+s+e.tBarElementHeight,l=[];l="document"===t?o.isCollide(e.popup):o.isCollide(e.popup,e.parentElement);for(var d=0;d<l.length;d++)switch(l[d]){case"top":r="document"===t?e.windowY:window.pageYOffset+s+e.tBarElementHeight;break;case"bottom":r="document"===t?"inline"===n?e.y-e.popHeight-10:e.windowHeight-(s+e.tBarElementHeight)>e.popHeight?a-e.windowHeight>e.popHeight?a+(e.windowHeight-s)-e.popHeight:a:e.windowY+(s+e.tBarElementHeight):"IMG"!==e.target.tagName?e.parentData.bottom+window.pageYOffset-e.popHeight-10:e.parentData.bottom+window.pageYOffset-e.popHeight-5;break;case"right":i="inline"===n?e.windowWidth-(e.popWidth+e.bodyRightSpace+10):e.x-e.popWidth;break;case"left":i="inline"===n?0:e.parentData.left}this.popupObj.position.X=i||this.popupObj.position.X,this.popupObj.position.Y=r||this.popupObj.position.Y,this.popupObj.dataBind()},n.prototype.showPopup=function(e,n,i){var o=this,r=t.isBlazor()?{cancel:!1,targetElement:i}:{popup:this.popupObj,cancel:!1,targetElement:i};this.parent.trigger(et,r,function(r){if(!r.cancel){var s=void 0,a=void 0,l=window.getComputedStyle(document.body),d=parseFloat(l.marginRight.split("px")[0])+parseFloat(l.paddingRight.split("px")[0]),c=window.innerHeight,h=window.innerWidth,u=o.parent.element,m=!t.isNullOrUndefined(o.parent.getToolbar()),g=m&&o.parent.toolbarModule.getToolbarHeight(),f=m&&o.parent.toolbarModule.getExpandTBarPopHeight(),b=m?g+f:0;if(t.addClass([o.element],[Pt]),t.Browser.isDevice&&!p()&&t.addClass([o.parent.getToolbar()],[Pt]),o.parent.iframeSettings.enable){s=(v=o.contentRenderer.getPanel().contentWindow).pageYOffset,a=v.innerHeight}else{var v;s=(v=t.closest(i,"."+Rt))?v.scrollTop:0,a=v?v.offsetHeight:0}o.parent.inlineMode.enable||t.closest(i,"table")||(o.parent.disableToolbarItem(o.parent.toolbarSettings.items),o.parent.enableToolbarItem(["Undo","Redo"])),t.append([o.element],document.body),o.popupObj.position.X=e+20,o.popupObj.position.Y=n+(o.parent.iframeSettings.enable?35:20),o.popupObj.dataBind(),o.popupObj.element.classList.add("e-popup-open"),o.dropDownButtons.renderDropDowns({container:o.toolbarElement,containerType:"quick",items:o.stringItems}),o.colorPickerObj.renderColorPickerInput({container:o.toolbarElement,containerType:"quick",items:o.stringItems});var y={x:e,y:n,target:i,editTop:s,editHeight:a,popup:o.popupObj.element,popHeight:o.popupObj.element.offsetHeight,popWidth:o.popupObj.element.offsetWidth,parentElement:u,bodyRightSpace:d,windowY:window.pageYOffset,windowHeight:c,windowWidth:h,parentData:u.getBoundingClientRect(),tBarElementHeight:b};"IMG"===i.tagName&&o.setPosition(y),o.parent.inlineMode.enable||o.checkCollision(y,"parent",""),o.checkCollision(y,"document",o.parent.inlineMode.enable?"inline":""),o.popupObj.element.classList.remove("e-popup-open"),t.removeClass([o.element],[Pt]),o.popupObj.show({name:"ZoomIn",duration:t.Browser.isIE?250:400}),t.setStyleAttribute(o.element,{maxWidth:o.parent.element.offsetWidth+"px"}),t.addClass([o.element],[St]),o.isDOMElement=!0}})},n.prototype.hidePopup=function(){var e=this.parent.sourceCodeModule.getViewPanel();t.Browser.isDevice&&!p()&&t.removeClass([this.parent.getToolbar()],[Pt]),t.isNullOrUndefined(this.parent.getToolbar())||this.parent.inlineMode.enable||(t.isNullOrUndefined(e)||"none"===e.style.display)&&this.parent.enableToolbarItem(this.parent.toolbarSettings.items),this.removeEleFromDOM(),this.isDOMElement=!1},n.prototype.addQTBarItem=function(e,t){this.quickTBarObj.toolbarObj.addItems(this.quickTBarObj.getItems(e,"toolbar"),t)},n.prototype.removeQTBarItem=function(e){this.quickTBarObj.toolbarObj.removeItems(e)},n.prototype.removeEleFromDOM=function(){var e=this.popupObj.element;if(this.isDOMElement){this.dropDownButtons.destroyDropDowns(),this.colorPickerObj.destroyColorPicker(),t.removeClass([this.element],[St]),t.detach(e);var n=t.isBlazor()?{element:this.popupObj.element}:this.popupObj;this.parent.trigger(nt,n)}},n.prototype.updateStatus=function(e){g({args:e,dropDownModule:this.dropDownButtons,parent:this.parent,tbElements:t.selectAll("."+Bt,this.element),tbItems:this.quickTBarObj.toolbarObj.items},!0),t.select(".e-rte-srctextarea",this.parent.element)||v(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(A,this.destroy,this),this.parent.on(V,this.onPropertyChanged,this),this.parent.inlineMode.enable&&this.parent.on(z,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(z,this.updateStatus,this):this.parent.off(z,this.updateStatus)}}},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(A,this.destroy),this.parent.off(V,this.onPropertyChanged),this.parent.inlineMode.enable&&this.parent.off(z,this.updateStatus))},n}(),yi=function(){function e(e){this.parent=e}return e.prototype.quickToolbarOpen=function(){var e=t.isBlazor()?{element:this.popupObj.element}:this.popupObj;this.parent.trigger(tt,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(Et)},e.prototype.getPanel=function(){return this.popupPanel},e.prototype.setPanel=function(e){this.popupPanel=e},e}(),Ci=function(){function n(t,n){this.parent=t,this.locator=n,this.renderFactory=this.locator.getService("rendererFactory"),this.renderFactory.addRenderer(e.RenderType.Popup,new yi(this.parent)),this.addEventListener()}return n.prototype.formatItems=function(e){var t=[];return e.forEach(function(e){if("string"==typeof e)switch(e.toLocaleLowerCase()){case"open":t.push("openLink");break;case"edit":t.push("editLink");break;case"unlink":t.push("removeLink");break;default:t.push(e)}else t.push(e)}),t},n.prototype.getQTBarOptions=function(e,t,n,i){return{popupType:e,toolbarItems:n,mode:t,renderType:i}},n.prototype.createQTBar=function(e,t,n,i){if(n.length<1)return null;var o=new vi(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&&p()&&t.EventHandler.add(this.contentRenderer.getDocument(),"selectionchange",this.selectionChangeHandler,this)},n.prototype.onMouseDown=function(e){this.parent.isBlur=!1,this.parent.isRTE=!0},n.prototype.renderQuickToolbars=function(){this.linkQTBar||this.imageQTBar||this.textQTBar||this.tableQTBar||(this.linkQTBar=this.createQTBar("Link","Scrollable",this.parent.quickToolbarSettings.link,e.RenderType.LinkToolbar),this.renderFactory.addRenderer(e.RenderType.LinkToolbar,this.linkQTBar),this.textQTBar=this.createQTBar("Text","Scrollable",this.parent.quickToolbarSettings.text,e.RenderType.TextToolbar),this.renderFactory.addRenderer(e.RenderType.TextToolbar,this.textQTBar),this.imageQTBar=this.createQTBar("Image","MultiRow",this.parent.quickToolbarSettings.image,e.RenderType.ImageToolbar),this.renderFactory.addRenderer(e.RenderType.ImageToolbar,this.imageQTBar),this.tableQTBar=this.createQTBar("Table","MultiRow",this.parent.quickToolbarSettings.table,e.RenderType.TableToolbar),this.renderFactory.addRenderer(e.RenderType.TableToolbar,this.tableQTBar),this.linkQTBar&&t.EventHandler.add(this.linkQTBar.element,"mousedown",this.onMouseDown,this),this.imageQTBar&&t.EventHandler.add(this.imageQTBar.element,"mousedown",this.onMouseDown,this),this.textQTBar&&t.EventHandler.add(this.textQTBar.element,"mousedown",this.onMouseDown,this),this.tableQTBar&&t.EventHandler.add(this.tableQTBar.element,"mousedown",this.onMouseDown,this))},n.prototype.renderInlineQuickToolbar=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||(t.addClass([this.parent.element],[vt]),this.inlineQTBar=this.createQTBar("Inline","MultiRow",this.parent.toolbarSettings.items,e.RenderType.InlineToolbar),this.renderFactory.addRenderer(e.RenderType.InlineToolbar,this.inlineQTBar),t.EventHandler.add(this.inlineQTBar.element,"mousedown",this.onMouseDown,this))},n.prototype.showInlineQTBar=function(e,t,n){this.parent.readonly||this.inlineQTBar.showPopup(e,t,n)},n.prototype.hideInlineQTBar=function(){this.inlineQTBar&&!d(this.inlineQTBar.element,"e-popup-close")&&this.inlineQTBar.hidePopup()},n.prototype.hideQuickToolbars=function(){this.linkQTBar&&!d(this.linkQTBar.element,"e-popup-close")&&document.body.contains(this.linkQTBar.element)&&this.linkQTBar.hidePopup(),this.textQTBar&&!d(this.textQTBar.element,"e-popup-close")&&document.body.contains(this.textQTBar.element)&&this.textQTBar.hidePopup(),this.imageQTBar&&!d(this.imageQTBar.element,"e-popup-close")&&document.body.contains(this.imageQTBar.element)&&this.imageQTBar.hidePopup(),this.tableQTBar&&!d(this.tableQTBar.element,"e-popup-close")&&document.body.contains(this.tableQTBar.element)&&this.tableQTBar.hidePopup(),!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||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||p())){var n=void 0;n=e.args.touches?e.args.changedTouches[0]:e.args;var i=this.parent.getRange(),o=e.args.target;if(t.isNullOrUndefined(t.select("."+wt,document.body))){if(p()&&e.touchData&&e.touchData.prevClientX!==e.touchData.clientX&&e.touchData.prevClientY!==e.touchData.clientY)return;if(this.hideInlineQTBar(),this.offsetX=n.pageX,this.offsetY=u(n,this.parent.element,this.parent.iframeSettings.enable),"TEXTAREA"===o.nodeName)this.showInlineQTBar(this.offsetX,this.offsetY,o);else{var r=t.closest(o,"a");if(!("IMG"===(o=r||o).tagName||"A"===o.tagName||t.closest(o,"td,th")&&i.collapsed)){if(this.parent.inlineMode.onSelection&&i.collapsed)return;this.target=o,this.showInlineQTBar(this.offsetX,this.offsetY,o)}}}}},n.prototype.keyDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||t.isNullOrUndefined(t.select("."+wt,document))||this.hideInlineQTBar()},n.prototype.inlineQTBarMouseDownHandler=function(){!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||t.isNullOrUndefined(t.select("."+wt,document))||this.hideInlineQTBar()},n.prototype.keyUpHandler=function(e){if(this.parent.inlineMode.enable&&!t.Browser.isDevice){if(this.parent.inlineMode.onSelection)return;var n=e.args;this.deBounce(this.offsetX,this.offsetY,n.target)}},n.prototype.selectionChangeHandler=function(e){var t=this;clearTimeout(this.deBouncer),this.deBouncer=window.setTimeout(function(){t.onSelectionChange(e)},1e3)},n.prototype.onSelectionChange=function(e){if(t.isNullOrUndefined(t.select("."+wt,document.body))){this.contentRenderer.getDocument().getSelection().isCollapsed||this.mouseUpHandler({args:e})}},n.prototype.getInlineBaseToolbar=function(){return this.inlineQTBar&&this.inlineQTBar.quickTBarObj},n.prototype.destroy=function(){this.linkQTBar&&(t.EventHandler.remove(this.linkQTBar.element,"mousedown",this.onMouseDown),this.linkQTBar.destroy()),this.textQTBar&&(t.EventHandler.remove(this.textQTBar.element,"mousedown",this.onMouseDown),this.textQTBar.destroy()),this.imageQTBar&&(t.EventHandler.remove(this.imageQTBar.element,"mousedown",this.onMouseDown),this.imageQTBar.destroy()),this.tableQTBar&&(t.EventHandler.remove(this.tableQTBar.element,"mousedown",this.onMouseDown),this.tableQTBar.destroy()),this.inlineQTBar&&(t.EventHandler.remove(this.inlineQTBar.element,"mousedown",this.onMouseDown),p()&&t.EventHandler.remove(document,"selectionchange",this.selectionChangeHandler),this.inlineQTBar.destroy()),this.removeEventListener()},n.prototype.wireInlineQTBarEvents=function(){this.parent.on(Y,this.mouseUpHandler,this),this.parent.on(De,this.inlineQTBarMouseDownHandler,this),this.parent.on(K,this.keyDownHandler,this),this.parent.on(G,this.keyUpHandler,this),this.parent.on(Me,this.mouseUpHandler,this),this.parent.on(qe,this.renderInlineQuickToolbar,this)},n.prototype.unWireInlineQTBarEvents=function(){this.parent.off(Y,this.mouseUpHandler),this.parent.off(De,this.inlineQTBarMouseDownHandler),this.parent.off(K,this.keyDownHandler),this.parent.off(G,this.keyUpHandler),this.parent.off(Me,this.mouseUpHandler),this.parent.off(qe,this.renderInlineQuickToolbar)},n.prototype.toolbarUpdated=function(e){this.linkQTBar&&!d(this.linkQTBar.element,"e-popup-close")&&this.linkQTBar.hidePopup(),this.imageQTBar&&!d(this.imageQTBar.element,"e-popup-close")&&this.imageQTBar.hidePopup(),this.tableQTBar&&!d(this.tableQTBar.element,"e-popup-close")&&this.tableQTBar.hidePopup()},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(I,this.initializeQuickToolbars,this),this.parent.on(De,this.renderQuickToolbars,this),this.parent.on(z,this.toolbarUpdated,this),this.parent.on("drop",this.renderQuickToolbars,this),this.wireInlineQTBarEvents(),this.parent.on(V,this.onPropertyChanged,this),"hide"===this.parent.quickToolbarSettings.actionOnScroll&&(this.parent.on(Be,this.hideQuickToolbars,this),this.parent.on(Ie,this.hideQuickToolbars,this)),this.parent.on(He,this.hideQuickToolbars,this),this.parent.on(P,this.onIframeMouseDown,this),this.parent.on(A,this.destroy,this),this.parent.on(K,this.onKeyDown,this),this.parent.on(Fe,this.setRtl,this))},n.prototype.onKeyDown=function(e){var t=e.args;8!==t.which&&46!==t.which||this.imageQTBar&&!d(this.imageQTBar.element,"e-popup-close")&&this.imageQTBar.hidePopup()},n.prototype.onIframeMouseDown=function(){this.hideQuickToolbars(),this.hideInlineQTBar()},n.prototype.setRtl=function(e){this.inlineQTBar&&this.inlineQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.imageQTBar&&this.imageQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl}),this.linkQTBar&&this.imageQTBar.quickTBarObj.toolbarObj.setProperties({enableRtl:e.enableRtl})},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(I,this.initializeQuickToolbars),this.parent.off(De,this.renderQuickToolbars),this.parent.off(z,this.toolbarUpdated),this.unWireInlineQTBarEvents(),this.parent.off(V,this.onPropertyChanged),"hide"===this.parent.quickToolbarSettings.actionOnScroll&&(this.parent.off(Be,this.hideQuickToolbars),this.parent.off(Ie,this.hideQuickToolbars)),this.parent.off(He,this.hideQuickToolbars),this.parent.off(A,this.destroy),this.parent.off(P,this.onIframeMouseDown),this.parent.off(K,this.onKeyDown),this.parent.off(Fe,this.setRtl))},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.quickToolbarSettings))for(var n=0,i=Object.keys(e.newProp.quickToolbarSettings);n<i.length;n++){switch(i[n]){case"actionOnScroll":"none"===e.newProp.quickToolbarSettings.actionOnScroll?(this.parent.off(Be,this.hideQuickToolbars),this.parent.off(Ie,this.hideQuickToolbars)):(this.parent.on(Be,this.hideQuickToolbars,this),this.parent.on(Ie,this.hideQuickToolbars,this))}}e.module===this.getModuleName()&&(this.inlineQTBar&&(t.removeClass([this.parent.element],[vt]),this.unWireInlineQTBarEvents(),this.hideInlineQTBar()),!this.parent.inlineMode.enable||t.Browser.isDevice&&!p()||(t.addClass([this.parent.element],[vt]),this.wireInlineQTBarEvents()))},n.prototype.getModuleName=function(){return"quickToolbar"},n}(),Ti=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:Gt}),this.contentRenderer.getPanel().parentElement.appendChild(this.element),this.appendCount(),-1!==this.parent.maxLength&&this.charCountBackground(this.htmlLength)},n.prototype.appendCount=function(){var e="Markdown"===this.parent.editorMode?this.editPanel.value.trim():this.editPanel.textContent.trim();this.htmlLength=e.length;var t=-1===this.parent.maxLength?this.htmlLength:this.htmlLength+" / "+this.parent.maxLength;this.element.innerHTML=t},n.prototype.charCountBackground=function(e){var t=e/this.parent.maxLength*100;t<85?(this.element.classList.remove(Kt),this.element.classList.remove(Yt)):t>85&&t<=90?(this.element.classList.remove(Yt),this.element.classList.add(Kt)):t>90&&(this.element.classList.remove(Kt),this.element.classList.add(Yt))},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("."+Gt))&&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(I,this.renderCount,this),this.parent.on(G,this.refresh,this),this.parent.on(Oe,this.refresh,this),this.parent.on(j,this.refresh,this),this.parent.on(De,this.refresh,this),this.parent.on(A,this.destroy,this),this.parent.on(Ee,this.toggle,this),this.parent.on(Ne,this.toggle,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(I,this.renderCount),this.parent.off(G,this.refresh),this.parent.off(j,this.refresh),this.parent.off(Oe,this.refresh),this.parent.off(De,this.refresh),this.parent.off(A,this.destroy),this.parent.off(Ee,this.toggle),this.parent.off(Ne,this.toggle))},n.prototype.getModuleName=function(){return"count"},n}(),Si=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;if(e){n=(e.trim()===t.trim()?new RegExp("^("+this.replaceSpecialChar(t.trim())+")","gim"):new RegExp("^("+this.replaceSpecialChar(t)+")","gim")).test(e.trim())}return 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}(),Ei=function(){function e(e){this.toolbarStatus={bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,uppercase:!1,inlinecode:!1,unorderedlist:!1,underline:!1,alignments:null,backgroundcolor:null,fontcolor:null,fontname:null,fontsize:null,formats:null},this.selection=new Si,this.parent=e,this.element=this.parent.contentModule.getEditPanel(),this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on(U,this.onRefreshHandler,this),this.parent.on(A,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off(U,this.onRefreshHandler),this.parent.off(A,this.onRefreshHandler)},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"),this.parent.notify(z,this.toolbarStatus)},e.prototype.isListsApplied=function(e,t){var n=!0;if("OL"===t)for(var i=0;i<e.length;i++){var o=e[i].text.trim().split(" ",2)[0]+" ";if(!/^[\d.]+[ ]+$/.test(o)){n=!1;break}}else for(i=0;i<e.length;i++)if(!this.selection.isStartWith(e[i].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}(),Ni=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on(ne,this.commandCallBack,this),this.parent.on(A,this.removeEventListener,this)},e.prototype.commandCallBack=function(e){"Undo"!==e.requestType&&"Redo"!==e.requestType&&this.parent.formatter.saveData(),this.parent.notify(U,{args:e}),this.parent.notify(Oe,{})},e.prototype.removeEventListener=function(){this.parent.off(ne,this.commandCallBack),this.parent.off(A,this.removeEventListener)},e}(),ki="action",wi="format-type",Li="keydown-handler",xi="keyup-handler",Oi="model_changed_plugin",Di="model_changed",Mi="ms_word_cleanup_plugin",Ri="ms_word_cleanup",Bi=function(){function e(){}return e.prototype.process=function(e,n,i,o){var r,s=this,a=e.contentModule.getDocument().getSelection(),l=a.rangeCount>0?a.getRangeAt(a.rangeCount-1):null;if("HTML"===e.editorMode&&(r=this.editorManager.nodeSelection.save(l,e.contentModule.getDocument())),t.isNullOrUndefined(n)||!n.item.command||"Table"===n.item.command||"Actions"===n.item.command||"Links"===n.item.command||"Images"===n.item.command||!l||e.contentModule.getEditPanel().contains(this.getAncestorNode(l.commonAncestorContainer))||e.contentModule.getEditPanel()===l.commonAncestorContainer||e.contentModule.getPanel()===l.commonAncestorContainer){if(t.isNullOrUndefined(n)){var d=i.action;if("tab"!==d&&"enter"!==d&&"space"!==d&&"escape"!==d){n={},"Markdown"===e.editorMode&&"insert-table"===d&&(o={headingText:e.localeObj.getConstant("TableHeadingText"),colText:e.localeObj.getConstant("TableColText")});var c={originalEvent:i,cancel:!1,requestType:d||i.key+"Key",itemCollection:o};t.extend(n,n,c,!0),t.isBlazor()&&(delete n.item,delete n.itemCollection),e.trigger(he,n,function(e){e.cancel&&("paste"!==d&&"cut"!==d&&"copy"!==d||i.preventDefault())})}var p=!!t.isNullOrUndefined(e.tableModule)||!!e.tableModule&&e.tableModule.ensureInsideTableList;(9===i.which&&p||9!==i.which)&&this.editorManager.observer.notify("keydown"===i.type?"keydown":"keyup",{event:i,callBack:this.onSuccess.bind(this,e),value:o})}else!t.isNullOrUndefined(n)&&n.item.command&&n.item.subCommand&&(n.item.command!==n.item.subCommand&&"Font"!==n.item.command||("FontName"===n.item.subCommand||"FontSize"===n.item.subCommand)&&"dropDownSelect"===n.name||("BackgroundColor"===n.item.subCommand||"FontColor"===n.item.subCommand)&&"colorPickerChanged"===n.name)&&(t.extend(n,n,{requestType:n.item.subCommand,cancel:!1,itemCollection:o},!0),e.trigger(he,n,function(t){if(!t.cancel){0===s.getUndoRedoStack().length&&"Links"!==t.item.command&&"Images"!==t.item.command&&s.saveData(),e.isBlur=!1,e.contentModule.getEditPanel().focus(),"HTML"===e.editorMode&&r.restore();var a=t.item.subCommand.toLocaleLowerCase();"paste"===a||"cut"===a||"copy"===a?e.clipboardAction(a,i):(s.editorManager.observer.notify(Ge,{subCommand:t.item.subCommand}),s.editorManager.execCommand(t.item.command,t.item.subCommand,i,s.onSuccess.bind(s,e),t.item.value,"Pre"===t.item.subCommand&&"dropDownSelect"===n.name?{name:n.name}:o,"#"+e.getID()+" iframe"))}}));(t.isNullOrUndefined(i)||i&&"copy"!==i.action)&&this.enableUndo(e)}},e.prototype.getAncestorNode=function(e){return e=3===e.nodeType?e.parentNode:e},e.prototype.onKeyHandler=function(e,t){var n=this;this.editorManager.observer.notify("keyup",{event:t,callBack:function(){e.notify(B,{}),n.enableUndo(e)}})},e.prototype.onSuccess=function(e,n){e.notify(B,{}),(t.isNullOrUndefined(n.event)||n&&"copy"!==n.event.action)&&(this.enableUndo(e),e.notify(ne,n)),e.trigger(ue,n,function(t){if(e.setPlaceHolder(),"Images"===t.requestType||"Links"===t.requestType&&"HTML"===e.editorMode){var n=t;if("Links"===t.requestType&&t.event&&"keydown"===t.event.type&&32===t.event.keyCode)return;e.notify(be,{args:n.event,type:t.requestType,isNotify:!0,elements:n.elements})}e.autoResize()})},e.prototype.saveData=function(e){this.editorManager.undoRedoManager.saveData(e)},e.prototype.getUndoStatus=function(){return this.editorManager.undoRedoManager.getUndoStatus()},e.prototype.getUndoRedoStack=function(){return this.editorManager.undoRedoManager.undoRedoStack},e.prototype.enableUndo=function(e){var n=this.getUndoStatus();!e.inlineMode.enable||t.Browser.isDevice&&!p()?e.toolbarModule&&(v(e.toolbarModule.baseToolbar,n),e.trigger(me,n)):(v(e.quickToolbarModule.inlineQTBar.quickTBarObj,n),e.trigger(me,n))},e}(),Ii="lists-commands",Pi="command-type",Ai="link-commands",Hi="clear-commands",Ui="insert-table",ji=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(Ii,this.applyListsHandler,this),this.parent.observer.on(Li,this.keyDownHandler,this),this.parent.observer.on(xi,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){var a=this.olListType(),l=this.getListRegex();this.currentAction=this.getAction(o[0].text);for(var d=0;d<o.length;d++){var c=(e.event.shiftKey,o[d].line-1),p=this.selection.getLine(t,c);if(p&&(!e.event.shiftKey&&s||e.event.shiftKey)){var h=p.split(". "),u=e.event.shiftKey?-"\t".length:"\t".length,m=o[d].text.split("\t");if(e.event.shiftKey&&1===m.length)break;if("OL"===this.currentAction&&/^\d+$/.test(h[0].trim())&&a){e.event.preventDefault(),o[d].text=e.event.shiftKey?m.splice(1,m.length).join("\t"):"\t"+o[d].text;var g=this.getTabSpace(o[d].text),f=this.getTabSpace(p),b=o[d].text.split(". ");if(g===f)this.changeTextAreaValue(b,this.nextOrderedListValue(h[0].trim()),e,t,o,d,i);else if(f<g)this.changeTextAreaValue(b,"1. ",e,t,o,d,i);else for(;f.length>g.length;null){c-=1;var v=(p=this.selection.getLine(t,c)).trim().split(". ");if(/^\d+$/.test(v[0])&&(f=this.getTabSpace(p)).length<=g.length){this.changeTextAreaValue(b,this.nextOrderedListValue(v[0]),e,t,o,d,i);break}}}else("UL"===this.currentAction&&l.test(p.trim())||!a)&&(e.event.preventDefault(),o[d].text=e.event.shiftKey?m.splice(1,m.length).join("\t"):"\t"+o[d].text,t.value=t.value.substr(0,o[d].start)+o[d].text+"\n"+t.value.substr(o[d].end,t.value.length));if(n=0===d?n+u:n,r+=u,1!==o.length)for(var y=d;y<o.length;y++)o[y].start=0!==y?o[y].start+u:o[y].start,o[y].end=o[y].end+u}}this.restore(t,n,i+r,e)}else this.restore(t,n,i+r,e)},e.prototype.changeTextAreaValue=function(e,n,i,o,r,s,a){var l=n;e.splice(0,1);var d,c=this.selection.getAllParents(o.value).length,p="",h=this.getTabSpace(r[s].text),u=parseInt(l.split(".")[0],null),m=this.getTabSpace(r[s].text),g=!0,f=!0,b=-1,v=!0,y=0,C="";p=""!==this.selection.getLine(o,r[0].line+1)?"":p+o.value.substr(r[0].end,o.value.length);for(var T=1;T<c&&!t.isNullOrUndefined(this.selection.getLine(o,r[0].line+T))&&""!==this.selection.getLine(o,r[0].line+T);T++){var S=this.selection.getLine(o,r[0].line+T),E=this.getTabSpace(S),N=S.split(". ");if(1===N.length){p+=o.value.substr(r[0].end+y,o.value.length);break}y+=S.length;var k=!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,k=!(!i.event.shiftKey||h.length!==E.length)&&(f=!1,!0)):v&&i.event.shiftKey&&h.length===E.length&&E.length===m.length&&(f=!1,k=!0),C=""===p?"":"\n",d===E.length&&f){var w=i.event.shiftKey?(b++,this.nextOrderedListValue(b.toString())):this.previousOrderedListValue(N[0]);N.splice(0,1),p=p+C+E+w+N.join(". ")}else if(h.length===E.length&&g||k){w=this.nextOrderedListValue(u.toString());u++,N.splice(0,1),p=p+C+E+w+N.join(". ")}else p=p+C+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);var l=r.split(". ");n="OL"===this.currentAction?/^\d+$/.test(l[0].trim()):s.test(r.trim())}if(r&&n){var d=this.getTabSpace(i),c=this.getTabSpace(r);for(a=d===c||a;c.length>d.length;null){o-=1;l=(r=this.selection.getLine(e,o)).trim().split(". ");if(("OL"===this.currentAction?/^\d+$/.test(l[0]):s.test(r.trim()))&&(c=this.getTabSpace(r)).length<=d.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]){var p=this.getTabSpace(s);this.currentAction=this.getAction(s);var h=this.nextOrderedListValue(d[0]);r[0].text=p+h+r[0].text;for(var u=this.selection.getAllParents(n.value).length,m="\n",g=this.getTabSpace(s),f=this.getTabSpace(r[0].text),b=!0,v=1;v<u&&""!==n.value.substr(r[0].end,n.value.length);v++){var y=this.selection.getLine(n,r[0].line+v);if(t.isNullOrUndefined(y))m+="";else{var C=y.split(". "),T=this.getTabSpace(y);if(T.length<f.length&&(b=!1),C.length>1&&/^\d+$/.test(C[0].trim())&&g.length===T.length&&b){var S=this.nextOrderedListValue(C[0]);C.splice(0,1),m=m+T+S+C.join(". ")+"\n"}else m=m+y+"\n",f=this.getTabSpace(y)}}n.value=n.value.substr(0,r[0].start)+g+h+this.selection.getLine(n,r[0].line)+m,i=i+h.length+p.length,c+=h.length+p.length}else if("UL"===this.currentAction&&l.test(s.trim())&&""!==s.trim().replace(l,"")||"OL"===this.currentAction&&!a){p=this.getTabSpace(s),h=this.syntax[this.currentAction];r[0].text=p+h+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+h.length+p.length,c+=h.length+p.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;var i,o,r=n.selectionStart,s=n.selectionEnd,a=0,l=0,d=0,c=this.selection.getSelectedParentPoints(n),p="";i=this.olListType();for(var h={},u=0;u<c.length;u++)if(o=i?"OL"===this.currentAction?u+i+". ":this.syntax[this.currentAction]:"OL"===this.currentAction?this.syntax.OL:this.syntax[this.currentAction],this.selection.isStartWith(c[u].text,o))c[u].text=c[u].text.replace(o,""),n.value=n.value.substr(0,c[u].start+d)+c[u].text+"\n"+n.value.substr(c[u].end+d,n.value.length),d-=o.length,l=o.length,this.restore(n,r-l,s+d,null);else{if(""===c[u].text&&0===u&&(this.selection.save(r,s),1!==c.length))for(var m=u;m<c.length;m++)c[m].start=0!==m?1+c[m].start:c[m].start,c[m].end=1+c[m].end;var g=t.isNullOrUndefined(c[u-1])?0:this.getTabSpace(c[u-1].text).length,f=this.appliedLine(c[u].text,o,h,g);if(p=f.line?p:o,c[u].text=f.line?f.line:p+c[u].text,f.space=f.space?f.space:0,n.value=n.value.substr(0,c[u].start+d)+c[u].text+"\n"+n.value.substr(c[u].end,n.value.length),r=0===u?r+p.length+f.space>0?r+p.length+f.space:0:r,a+=p.length+f.space,1!==c.length)for(m=u;m<c.length;m++)c[m].start=0!==m?p.length+c[m].start+f.space:c[m].start,c[m].end=p.length+c[m].end+f.space;this.restore(n,r,s+a,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}(),zi=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(wi,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){for(var a=0;a<i.length;a++)if(""===i[a].text||this.selection.isStartWith(i[a].text,"\\"+this.syntax[e.subCommand])){if(""===i[a].text&&0===a&&(this.selection.save(o,r),1!==i.length))for(l=a;l<i.length;l++)i[l].start=0!==l?1+i[l].start:i[l].start,i[l].end=1+i[l].end}else if(i[a].text=this.syntax[e.subCommand]+i[a].text,n.value=n.value.substr(0,i[a].start)+i[a].text+"\n"+n.value.substr(i[a].end,n.value.length),o=0===a?o+this.syntax[e.subCommand].length:o,s+=this.syntax[e.subCommand].length,1!==i.length)for(var l=a;l<i.length;l++)i[l].start=0!==l?this.syntax[e.subCommand].length+i[l].start:i[l].start,i[l].end=this.syntax[e.subCommand].length+i[l].end;this.restore(n,o,r+s,e)}else i.length>1?this.applyCodeBlock(n,e,i):(t.extend(e,e,{subCommand:"InlineCode"},!0),this.parent.observer.notify(Pi,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}(),qi=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(Pi,this.applyCommands,this),this.parent.observer.on(Li,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);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}(),_i={h6:"###### ",h5:"##### ",h4:"#### ",h3:"### ",h2:"## ",h1:"# ",blockquote:"> ",pre:"```\n",p:""},Fi={Bold:"**",Italic:"*",StrikeThrough:"~~",InlineCode:"`",SubScript:"<sub>",SuperScript:"<sup>",UpperCase:"A-Z",LowerCase:"a-z"},Qi={OL:"1. ",UL:"- "},Wi={"toolbar-focus":"alt+f10",escape:"27","insert-link":"ctrl+k","insert-image":"ctrl+shift+i","insert-table":"ctrl+shift+e",undo:"ctrl+z",redo:"ctrl+y",copy:"ctrl+c",cut:"ctrl+x",paste:"ctrl+v",bold:"ctrl+b",italic:"ctrl+i",underline:"ctrl+u",strikethrough:"ctrl+shift+s",uppercase:"ctrl+shift+u",lowercase:"ctrl+shift+l",superscript:"ctrl+shift+=",subscript:"ctrl+=",indents:"ctrl+]",outdents:"ctrl+[","html-source":"ctrl+shift+h","full-screen":"ctrl+shift+f","decrease-fontsize":"ctrl+shift+<","increase-fontsize":"ctrl+shift+>","justify-center":"ctrl+e","justify-full":"ctrl+j","justify-left":"ctrl+l","justify-right":"ctrl+r","clear-format":"ctrl+shift+r","ordered-list":"ctrl+shift+o","unordered-list":"ctrl+alt+o",space:"32",enter:"13",tab:"tab",delete:"46"},Vi={"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"},Gi={b:["strong"],strong:["b"],i:["emp","cite"],emp:["i","cite"],cite:["i","emp"]},Ki=["BR","IMG"],Yi=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(xi,e,this),this.parent.observer.on(Li,this.keyDown,this),this.parent.observer.on(ki,this.onAction,this),this.parent.observer.on(Oi,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(xi,e),this.parent.observer.off(Li,this.keyDown),this.parent.observer.off(ki,this.onAction),this.parent.observer.off(Oi,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;switch(t.action){case"undo":t.preventDefault(),this.undo(e);break;case"redo":t.preventDefault(),this.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}(),Xi=function(){function e(e){this.parent=e,this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Ai,this.createLink,this)},e.prototype.createLink=function(e){var t=this.parent.element;t.focus();var n=t.selectionStart,i=t.selectionEnd,o="Image"===e.subCommand?this.selection.getSelectedText(t):e.item.text,r="Image"===e.subCommand?n+2:n+1,s="Image"===e.subCommand?i+2:i+1;o="Image"===e.subCommand?"!["+o+"]("+e.item.url+")":"["+o+"]("+e.item.url+")",t.value=t.value.substr(0,n)+o+t.value.substr(i,t.value.length),this.parent.markdownSelection.setSelection(t,r,s),this.restore(t,r,s,e)},e.prototype.restore=function(e,t,n,i){this.selection.save(t,n),this.selection.restore(e),i&&i.callBack&&i.callBack({requestType:i.subCommand,selectedText:this.selection.getSelectedText(e),editorMode:"Markdown",event:i.event})},e}(),Ji=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(Ui,this.createTable,this),this.parent.observer.on(Li,this.onKeyDown,this)},e.prototype.removeEventListener=function(){this.parent.observer.off(Ui,this.createTable),this.parent.observer.off(Li,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,n=this.element.selectionStart,i=this.element.selectionEnd;t=this.element.value,this.locale=e,this.selection.save(n,i),this.restore(this.element.selectionStart,this.element.selectionEnd,null),this.insertTable(n,i,t,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}(),$i=function(){function e(e){this.parent=e,this.selection=this.parent.markdownSelection,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Hi,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=void 0,l=void 0;s="<sup>"===t[o]?new RegExp("<sup>(.*?)</sup>","ig"):"<sub>"===t[o]?new RegExp("<sub>(.*?)</sub>","ig"):new RegExp(r+"(.*?)"+r,"ig"),a=t[o].length,l="<sup>"===t[o]||"<sub>"===t[o]?t[o].length+1:t[o].length;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}(),Zi=function(){function e(e){this.initialize(),t.extend(this,this,e,!0),this.observer=new t.Observer(this),this.markdownSelection=new Si,this.listObj=new ji({parent:this,syntax:this.listTags}),this.formatObj=new zi({parent:this,syntax:this.formatTags}),this.undoRedoManager=new Yi(this,e.options),this.mdSelectionFormats=new qi({parent:this,syntax:this.selectionTags}),this.linkObj=new Xi(this),this.tableObj=new Ji({parent:this,syntaxTag:{Formats:this.formatTags,List:this.listTags}}),this.clearObj=new $i(this),this.wireEvents()}return e.prototype.initialize=function(){this.formatTags=_i,this.listTags=Qi,this.selectionTags=Fi},e.prototype.wireEvents=function(){this.observer.on("keydown",this.editorKeyDown,this),this.observer.on("keyup",this.editorKeyUp,this),this.observer.on(Di,this.onPropertyChanged,this)},e.prototype.onPropertyChanged=function(e){this.observer.notify(Oi,e)},e.prototype.editorKeyDown=function(e){this.observer.notify(Li,e)},e.prototype.editorKeyUp=function(e){this.observer.notify(xi,e)},e.prototype.execCommand=function(e,t,n,i,o,r){switch(e.toLocaleLowerCase()){case"lists":this.observer.notify(Ii,{subCommand:t,event:n,callBack:i});break;case"formats":this.observer.notify(wi,{subCommand:t,event:n,callBack:i});break;case"actions":this.observer.notify(ki,{subCommand:t,event:n,callBack:i});break;case"style":case"effects":case"casing":this.observer.notify(Pi,{subCommand:t,event:n,callBack:i});break;case"links":case"images":this.observer.notify(Ai,{subCommand:t,event:n,callBack:i,item:r});break;case"table":switch(t.toString().toLocaleLowerCase()){case"createtable":this.observer.notify(Ui,{subCommand:t,item:r,event:n,callBack:i})}break;case"clear":this.observer.notify(Hi,{subCommand:t,event:n,callBack:i})}},e}(),eo=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)}}(),to=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 eo(n,e),n.prototype.initialize=function(){this.keyConfig=Vi,this.formatTags=_i,this.listTags=Qi,this.selectionTags=Fi},n.prototype.updateFormatter=function(e,t,n){e&&(this.editorManager=new Zi({element:e,formatTags:this.formatTags,listTags:this.listTags,selectionTags:this.selectionTags,options:n}))},n}(Bi),no=function(){function e(e){this.parent=e}return e.prototype.renderPanel=function(){var e=this.parent,t=this.parent.createElement("div",{id:this.parent.getID()+"_view",className:"e-rte-content"});this.editableElement=this.parent.createElement("textarea",{className:"e-content",id:this.parent.getID()+"_editable-content"}),t.appendChild(this.editableElement),this.setPanel(t),e.element.appendChild(t)},e.prototype.getPanel=function(){return this.contentPanel},e.prototype.getEditPanel=function(){return this.editableElement},e.prototype.getText=function(){return this.getEditPanel().value},e.prototype.setPanel=function(e){this.contentPanel=e},e.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},e}(),io=function(){function n(e,t){this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.addEventListener()}return n.prototype.destroy=function(){this.removeEventListener()},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.saveSelection=new Si,this.parent.on(R,this.instantiateRenderer,this),this.parent.on(I,this.render,this),this.parent.on(V,this.onPropertyChanged,this),this.parent.on(Q,this.onToolbarClick,this),this.parent.on(A,this.destroy,this),this.parent.on(Ue,this.selectAll,this),this.parent.on(ze,this.getSelectedHtml,this),this.parent.on(we,this.onSelectionSave,this),this.parent.on(Le,this.onSelectionRestore,this),this.parent.on(Ke,this.updateReadOnly,this))},n.prototype.updateReadOnly=function(){this.parent.readonly?(this.parent.contentModule.getEditPanel().setAttribute("readonly","readonly"),t.addClass([this.parent.element],mn)):(this.parent.contentModule.getEditPanel().removeAttribute("readonly"),t.removeClass([this.parent.element],mn))},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,n,i,o=e.item,r=this.parent.contentModule.getEditPanel();switch(r.focus(),n=r.selectionStart,i=r.selectionEnd,t=r.value.substring(n,i),o.subCommand){case"Maximize":this.parent.notify($,{args:e});break;case"Minimize":this.parent.notify(Z,{args:e});break;case"CreateLink":this.parent.notify(le,{member:"link",args:e,text:t,module:"Markdown"});break;case"Image":this.parent.notify(fe,{member:"image",args:e,text:t,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 no(this.parent))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(I,this.render),this.parent.off(V,this.onPropertyChanged),this.parent.off(A,this.destroy),this.parent.off(Q,this.onToolbarClick),this.parent.off(R,this.instantiateRenderer),this.parent.off(Ue,this.selectAll),this.parent.off(ze,this.getSelectedHtml),this.parent.off(we,this.onSelectionSave),this.parent.off(Le,this.onSelectionRestore),this.parent.off(Ke,this.updateReadOnly))},n.prototype.render=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};t.isNullOrUndefined(this.parent.formatter)?this.parent.formatter=new to({element:n,options:i}):this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i),this.parent.toolbarSettings.enable&&(this.toolbarUpdate=new Ei(this.parent)),this.parent.notify(q,{})},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}(),oo="INSERT-IMAGE",ro="INSERT-TABLE",so="INSERT-LINK",ao="INSERT-ROW",lo="INSERT-COLUMN",co="DELETE-ROW",po="DELETE-COLUMN",ho="REMOVE-TABLE",uo="TABLE-HEADER",mo="TABLE_VERTICAL_ALIGN",go="alignment-type",fo="indent-type",bo=["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"],vo=["td","th"],yo=["table","tbody","td","tfoot","th","thead","tr"],Co="selection-type",To="inserthtml-type",So="insert-text-type",Eo="clear-type",No=function(){function e(){this.startNodeName=[],this.endNodeName=[]}return e.prototype.saveInstance=function(e,t){return this.range=e.cloneRange(),this.rootNode=this.documentFromRange(e),this.body=t,this.startContainer=this.getNodeArray(e.startContainer,!0),this.endContainer=this.getNodeArray(e.endContainer,!1),this.startOffset=e.startOffset,this.endOffset=e.endOffset,this.html=this.body.innerHTML,this},e.prototype.documentFromRange=function(e){return 9===e.startContainer.nodeType?e.startContainer:e.startContainer.ownerDocument},e.prototype.getRange=function(e){var t=this.get(e),n=t&&t.rangeCount>0?t.getRangeAt(t.rangeCount-1):e.createRange();return n.startContainer!==e||n.endContainer!==e||n.startOffset||n.endOffset||(n.setStart(e.body,0),n.collapse(!0)),n},e.prototype.get=function(e){return e.defaultView.getSelection()},e.prototype.save=function(e,t){return e=e?e.cloneRange():this.getRange(t),this.saveInstance(e,t.body)},e.prototype.getIndex=function(e){var t=0;if(e=e.previousSibling||"BR"!==e.tagName?e.previousSibling:e)for(e.nodeType;e;null)t++,e.nodeType,e=e.previousSibling;return t},e.prototype.isChildNode=function(e,t){for(var n=0;n<t.childNodes.length;n++)if(e.indexOf(t.childNodes[n])>-1)return!0;return!1},e.prototype.getNode=function(e,t,n){return t!==e||3!==e.nodeType&&e.firstChild&&-1===n.indexOf(e.firstChild)&&!this.isChildNode(n,e)?-1===n.indexOf(e.firstChild)&&e.firstChild&&!this.isChildNode(n,e)?e.firstChild:e.nextSibling?e.nextSibling:e.parentNode?e.parentNode:null:null},e.prototype.getNodeCollection=function(e){var t=e.startContainer.childNodes[e.startOffset]||e.startContainer,n=e.endContainer.childNodes[e.endOffset>0?e.endOffset-1:e.endOffset]||e.endContainer;if(t===n&&0===t.childNodes.length)return[t];if(e.startOffset===e.endOffset&&0!==e.startOffset&&"PRE"===e.startContainer.nodeName)return["BR"===t.nodeName||"#text"===t.nodeName?t:t.childNodes[0]];var i=[];do{-1===i.indexOf(t)&&i.push(t),t=this.getNode(t,n,i)}while(t);return i},e.prototype.getParentNodeCollection=function(e){return this.getParentNodes(this.getNodeCollection(e),e)},e.prototype.getParentNodes=function(e,t){e=e.reverse();for(var n=0;n<e.length;n++)-1!==e.indexOf(e[n].parentNode)||3===e[n].nodeType&&t.startContainer!==t.endContainer&&t.startContainer.parentNode!==t.endContainer.parentNode?(e.splice(n,1),n--):3===e[n].nodeType&&(e[n]=e[n].parentNode);return e},e.prototype.getSelectionNodeCollection=function(e){return this.getSelectionNodes(this.getNodeCollection(e))},e.prototype.getSelectionNodeCollectionBr=function(e){return this.getSelectionNodesBr(this.getNodeCollection(e))},e.prototype.getSelectionNodes=function(e){e=e.reverse();for(var t=new RegExp(String.fromCharCode(8203),"g"),n=0;n<e.length;n++)(3!==e[n].nodeType||""===e[n].textContent.trim()||1===e[n].textContent.length&&e[n].textContent.match(t))&&(e.splice(n,1),n--);return e.reverse()},e.prototype.getSelectionNodesBr=function(e){e=e.reverse();for(var t=new RegExp(String.fromCharCode(8203),"g"),n=0;n<e.length;n++)"BR"!==e[n].nodeName&&(3!==e[n].nodeType||""===e[n].textContent.trim()||1===e[n].textContent.length&&e[n].textContent.match(t))&&(e.splice(n,1),n--);return e.reverse()},e.prototype.getInsertNodeCollection=function(e){return this.getInsertNodes(this.getNodeCollection(e))},e.prototype.getInsertNodes=function(e){e=e.reverse();for(var t=0;t<e.length;t++)(0!==e[t].childNodes.length&&3!==e[t].nodeType||3===e[t].nodeType&&""===e[t].textContent)&&(e.splice(t,1),t--);return e.reverse()},e.prototype.getNodeArray=function(e,t,n){var i=[];for(t?this.startNodeName=[]:this.endNodeName=[];e!==(n||this.rootNode);null)t?this.startNodeName.push(e.nodeName.toLowerCase()):this.endNodeName.push(e.nodeName.toLowerCase()),i.push(this.getIndex(e)),e=e.parentNode;return i},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&&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}(),ko={startSelection:"e-editor-select-start",endSelection:"e-editor-select-end"},wo=function(){function e(e,t){this.parent=e,this.nodeSelection=new No,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&&bo.indexOf(e.tagName.toLowerCase())>=0},e.prototype.isLink=function(e){return!!e&&e.nodeType===Node.ELEMENT_NODE&&"a"===e.tagName.toLowerCase()},e.prototype.blockParentNode=function(e){for(;e&&e.parentNode!==this.parent&&(!e.parentNode||!this.hasClass(e.parentNode,"e-node-inner"));null)if(e=e.parentNode,this.isBlockNode(e))return e;return e},e.prototype.rawAttributes=function(e){var t={},n=e.attributes;if(n.length>0)for(var i=0;i<n.length;i++){var o=n[i];t[o.nodeName]=o.value}return t},e.prototype.attributes=function(e){if(!e)return"";for(var t="",n=this.rawAttributes(e),i=Object.keys(n).sort(),o=0;o<i.length;o++){var r=i[o],s=n[r];s.indexOf("'")<0&&s.indexOf('"')>=0?t+=" "+r+"='"+s+"'":s.indexOf('"')>=0&&s.indexOf("'")>=0?t+=" "+r+'="'+(s=s.replace(/"/g,"&quot;"))+'"':t+=" "+r+'="'+s+'"'}return t},e.prototype.clearAttributes=function(e){for(var t=e.attributes,n=t.length-1;n>=0;n--){var i=t[n];e.removeAttribute(i.nodeName)}},e.prototype.openTagString=function(e){return"<"+e.tagName.toLowerCase()+this.attributes(e)+">"},e.prototype.closeTagString=function(e){return"</"+e.tagName.toLowerCase()+">"},e.prototype.createTagString=function(e,t,n){return"<"+e.toLowerCase()+this.attributes(t)+">"+n+"</"+e.toLowerCase()+">"},e.prototype.isList=function(e){return!!e&&["UL","OL"].indexOf(e.tagName)>=0},e.prototype.isElement=function(e){return e===this.parent},e.prototype.isEditable=function(e){return(!e.getAttribute||"true"===e.getAttribute("contenteditable"))&&["STYLE","SCRIPT"].indexOf(e.tagName)<0},e.prototype.hasClass=function(e,t){return e&&e.classList&&e.classList.contains(t)},e.prototype.replaceWith=function(e,n){e.parentNode.insertBefore(this.parseHTMLFragment(n),e),t.detach(e)},e.prototype.parseHTMLFragment=function(e){var n=t.createElement("template");return n.innerHTML=e,n.content instanceof DocumentFragment?n.content:document.createRange().createContextualFragment(e)},e.prototype.wrap=function(e,t){return e.parentNode.insertBefore(t,e),(t=e.previousSibling).appendChild(e),t},e.prototype.insertAfter=function(e,t){t.parentNode.insertBefore(e,t.nextSibling)},e.prototype.wrapInner=function(e,t){for(e.appendChild(t),(t=e.querySelector(".e-rte-wrap-inner")).classList.remove("e-rte-wrap-inner"),0===t.classList.length&&t.removeAttribute("class");e.firstChild!==t;)t.appendChild(e.firstChild);return t},e.prototype.unWrap=function(e){for(var t=e.parentNode,n=[];e.firstChild;)n.push(e.firstChild),t.insertBefore(e.firstChild,e);return n=n.length>0?n:[e.parentNode],t.removeChild(e),n},e.prototype.getSelectedNode=function(e,t){return e.nodeType===Node.ELEMENT_NODE&&e.childNodes.length>0&&e.childNodes[t-1]&&e.childNodes[t-1].nodeType===Node.ELEMENT_NODE&&(e.childNodes[t-1].classList.contains(ko.startSelection)||e.childNodes[t-1].classList.contains(ko.endSelection))?e=e.childNodes[t-1]:e.nodeType===Node.ELEMENT_NODE&&e.childNodes.length>0&&e.childNodes[t]&&(e=e.childNodes[t]),e.nodeType===Node.TEXT_NODE&&(e=e.parentNode),e},e.prototype.nodeFinds=function(e,t){for(var n=[],i=0;i<t.length;i++)e.contains(t[i])&&e!==t[i]&&n.push(t[i]);return n},e.prototype.isEditorArea=function(){var e;for(e=this.getRangePoint(0).commonAncestorContainer;e&&!this.isElement(e);null)e=e.parentNode;return!!this.isElement(e)},e.prototype.getRangePoint=function(e){var t=this.getSelection(),n=[];if(t&&t.getRangeAt&&t.rangeCount){n=[];for(var i=0;i<t.rangeCount;i++)n.push(t.getRangeAt(i))}else n=[this.currentDocument.createRange()];return void 0!==e?n[e]:n},e.prototype.getSelection=function(){return this.nodeSelection.get(this.currentDocument)},e.prototype.getPreviousNode=function(e){for(e=e.previousElementSibling;e&&"\n"===e.textContent;null)e=e.previousElementSibling;return e},e.prototype.encode=function(e){var t=document.createElement("div");return t.innerText=e,t.innerHTML.replace(/<br\s*[\/]?>/gi,"\n")},e.prototype.saveMarker=function(e,n){var i,o,r=this.parent.querySelector("."+ko.startSelection),s=this.parent.querySelector("."+ko.endSelection);if(""===r.textContent&&t.isNullOrUndefined(s)&&"tab"!==n&&(1===r.childNodes.length&&"BR"===r.childNodes[0].nodeName?r.innerHTML="&#65279;&#65279;<br>":r.innerHTML="&#65279;&#65279;"),this.hasClass(r,ko.startSelection)&&r.classList.length>1){var a=this.createTagString("p",r,this.encode(r.textContent));this.replaceWith(r,a),(r=this.parent.querySelector("."+ko.startSelection)).classList.remove(ko.startSelection),i=r.childNodes[0]}else i=this.unWrap(r)[0];if(this.hasClass(s,ko.endSelection)&&s.classList.length>1){a=this.createTagString("p",s,this.encode(s.textContent));this.replaceWith(s,a),(s=this.parent.querySelector("."+ko.endSelection)).classList.remove(ko.endSelection),o=s.childNodes[0]}else o=s?this.unWrap(s)[0]:i;return e.startContainer=e.getNodeArray(i,!0),e.endContainer=e.getNodeArray(o,!1),e},e.prototype.marker=function(e,t){return'<span class="'+e+'">'+t+"</span>"},e.prototype.setMarker=function(e){var t=e.range,n=t.startContainer.childNodes[t.startOffset]||t.startContainer,i=t.endContainer.childNodes[t.endOffset>0?t.endOffset-1:t.endOffset]||t.endContainer;if(n.nodeType===Node.ELEMENT_NODE&&i.nodeType===Node.ELEMENT_NODE&&(n.contains(i)||i.contains(n))){var o=n.contains(i)?n:i;if(o.nodeType!==Node.TEXT_NODE){for(var r=[],s=[],a=o;o.contains(a);null)r.indexOf(a)<0&&a.childNodes&&a.childNodes.length?(r.push(a),a=a.childNodes[0]):a.nextSibling?a=a.nextSibling:a.parentNode&&(a=a.parentNode,r.push(a)),s.indexOf(a)<0&&(a.nodeType===Node.TEXT_NODE||vo.indexOf(a.parentNode.tagName.toLocaleLowerCase())>=0&&("BR"===a.tagName||"IMG"===a.tagName))&&s.push(a);s.length&&(n=n.contains(i)?s[0]:n,i=s[s.length-1])}}if(n!==i){if(n.nodeType!==Node.TEXT_NODE&&("BR"===n.tagName&&vo.indexOf(n.parentNode.tagName.toLocaleLowerCase())>=0||"IMG"===n.tagName)){this.replaceWith(n,this.marker(ko.startSelection,this.encode(n.textContent)));t.startContainer.querySelector("."+ko.startSelection).appendChild(n)}else this.replaceWith(n,this.marker(ko.startSelection,this.encode(n.textContent)));if(i.nodeType!==Node.TEXT_NODE&&"BR"===i.tagName&&vo.indexOf(i.parentNode.tagName.toLocaleLowerCase())>=0){this.replaceWith(i,this.marker(ko.endSelection,this.encode(i.textContent)));t.endContainer.querySelector("."+ko.endSelection).appendChild(i)}else this.ensureSelfClosingTag(i,ko.endSelection,t)}else this.ensureSelfClosingTag(n,ko.startSelection,t)},e.prototype.ensureSelfClosingTag=function(e,n,i){var o=!1;if(3===e.nodeType)this.replaceWith(e,this.marker(n,this.encode(e.textContent)));else if("BR"===e.tagName){this.replaceWith(e,this.marker(ko.startSelection,this.encode(e.textContent)));i.startContainer.querySelector("."+ko.startSelection).appendChild(e)}else{if("IMG"===e.tagName){var r=document.createElement("p");e.parentElement.insertBefore(r,e),r.appendChild(e),e=r.children[0]}if("TABLE"===e.tagName)if(o=!0,""===e.textContent){var s=e.querySelectorAll("td");e=s[s.length-1],e=t.isNullOrUndefined(e.childNodes[0])?e:e.childNodes[0]}else{for(var a=e.lastChild;3!==a.nodeType&&"#text"!==a.nodeName&&"BR"!==a.nodeName;)a=a.lastChild;e=a}for(var l=0;l<Ki.length;l++)e=e.tagName!==Ki[l]||o?e:e.parentNode;if(3===e.nodeType&&"#text"===e.nodeName)this.replaceWith(e,this.marker(n,this.encode(e.textContent)));else if("BR"===e.nodeName){this.replaceWith(e,this.marker(ko.endSelection,this.encode(e.textContent)));i.endContainer.querySelector("."+ko.endSelection).appendChild(e)}else{var d=this.marker(n,"");t.append([this.parseHTMLFragment(d)],e)}}},e.prototype.createTempNode=function(e){var t=e.textContent;if("BR"===e.tagName){var n="<p></p>",i=e.parentNode;vo.indexOf(i.tagName.toLocaleLowerCase())>=0&&(e=this.wrap(e,this.parseHTMLFragment(n)))}else if(e.nodeType!==Node.TEXT_NODE&&(e.classList.contains(ko.startSelection)||e.classList.contains(ko.endSelection))||t.replace(/\n/g,"").replace(/(^ *)|( *$)/g,"").length>0||t.length&&t.indexOf("\n")<0){n="<p></p>";var o=e;e=this.wrap(e,this.parseHTMLFragment(n));!(o.nodeType===Node.ELEMENT_NODE&&o.firstChild&&"BR"===o.firstChild.nodeName&&(o.classList.contains(ko.startSelection)||o.classList.contains(ko.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(vo.indexOf(r.tagName.toLocaleLowerCase())>=0&&("BR"===a.tagName||a.nodeType===Node.TEXT_NODE||a.classList.contains(ko.startSelection)||a.classList.contains(ko.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(ko.startSelection)||p.classList.contains(ko.endSelection)))&&vo.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(ko.startSelection)||p.nextSibling.classList.contains(ko.endSelection))&&vo.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&&vo.indexOf(p.parentNode.tagName.toLocaleLowerCase())>=0&&(p.classList.contains(ko.startSelection)||p.classList.contains(ko.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!(yo.indexOf(e.tagName.toLocaleLowerCase())>=0)},e}(),Lo=["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"],xo=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(Li,this.keyDownHandler,this)},e.prototype.testList=function(e){var n=[/^[\d]+[.]+$/,/^(?=[MDCLXVI])M*(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})[.]$/gi,/^[a-zA-Z][.]+$/],i=t.isNullOrUndefined(e)?null:e.innerText.trim().split(".")[0]+".";if(!t.isNullOrUndefined(i))for(var o=0;o<n.length;o++)if(n[o].test(i))return!0;return!1},e.prototype.testCurrentList=function(e){var n=[/^[1]+[.]+$/,/^[i]+[.]+$/,/^[a]+[.]+$/];if(!t.isNullOrUndefined(e.startContainer.textContent.slice(0,e.startOffset)))for(var i=0;i<n.length;i++)if(n[i].test(e.startContainer.textContent.slice(0,e.startOffset)))return!0;return!1},e.prototype.spaceList=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument);this.saveSelection=this.parent.nodeSelection.save(n,this.parent.currentDocument);var i=this.parent.domNode.getSelectedNode(n.startContainer,n.startOffset),o=(this.parent.domNode.getSelectedNode(n.endContainer,n.endOffset),i.previousElementSibling),r=i.nextElementSibling,s=t.isNullOrUndefined(o)?null:o.innerText.trim().substring(0,1),a=t.isNullOrUndefined(r)?null:r.innerText.trim().substring(0,1),l=this.testCurrentList(n),d=this.testList(o),c=this.testList(r);d||c||"*"===s||"*"===a||(l?(n.startContainer.textContent=n.startContainer.textContent.slice(n.startOffset,n.startContainer.textContent.length),this.applyListsHandler({subCommand:"OL",callBack:e.callBack}),e.event.preventDefault()):"*"===n.startContainer.textContent.slice(0,n.startOffset)&&(n.startContainer.textContent=n.startContainer.textContent.slice(n.startOffset,n.startContainer.textContent.length),this.applyListsHandler({subCommand:"UL",callBack:e.callBack}),e.event.preventDefault()))},e.prototype.enterList=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument),n=this.parent.domNode.getSelectedNode(t.startContainer,t.startOffset);n===this.parent.domNode.getSelectedNode(t.endContainer,t.endOffset)&&"LI"===n.tagName&&""===n.textContent.trim()&&65279===n.textContent.charCodeAt(0)&&(n.textContent="")},e.prototype.backspaceList=function(e){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=this.parent.domNode.getSelectedNode(n.startContainer,n.startOffset),o=this.parent.domNode.getSelectedNode(n.endContainer,n.endOffset);if(i="BR"===i.nodeName?i.parentElement:i,o="BR"===o.nodeName?o.parentElement:o,i!==o||t.isNullOrUndefined(t.closest(i,"li"))||""!==i.textContent.trim()||65279!==i.textContent.charCodeAt(0)||(i.textContent=""),i===o&&""===i.textContent){if(i.closest("ul")||i.closest("ol")){if((r=t.isNullOrUndefined(i.closest("ul"))?i.closest("ol"):i.closest("ul")).firstElementChild===i&&("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("BR"===i.firstChild.nodeName&&("UL"===i.childNodes[1].nodeName||"OL"===i.childNodes[1].nodeName)){var r;if((r=t.isNullOrUndefined(i.closest("ul"))?i.closest("ol"):i.closest("ul")).tagName===i.childNodes[1].nodeName){for(;i.childNodes[1].lastChild;)this.parent.domNode.insertAfter(i.children[1].lastChild,i);t.detach(i.childNodes[1])}else r.parentElement.insertBefore(i.children[1],r)}},e.prototype.keyDownHandler=function(e){if(13===e.event.which&&this.enterList(e),32===e.event.which&&this.spaceList(e),8===e.event.which&&this.backspaceList(e),9===e.event.which){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument);e.event.action&&"indent"===e.event.action||(this.saveSelection=this.parent.nodeSelection.save(t,this.parent.currentDocument));var n=void 0,i=t.startOffset,o=t.endOffset,r=this.parent.domNode.getSelectedNode(t.startContainer,t.startOffset);if(r===this.parent.domNode.getSelectedNode(t.endContainer,t.endOffset)&&("BR"===r.nodeName||"#text"===r.nodeName)&&vo.indexOf(r.parentNode.tagName.toLocaleLowerCase())>=0)return;e.event.action&&"indent"===e.event.action||this.domNode.setMarker(this.saveSelection),n=this.domNode.blockNodes();for(var s=[],a=!0,l=0;l<n.length;l++)"LI"===n[l].parentNode.tagName?s.push(n[l].parentNode):"LI"===n[l].tagName&&"P"!==n[l].childNodes[0].tagName&&"OL"!==n[l].childNodes[0].tagName&&"UL"!==n[l].childNodes[0].tagName&&s.push(n[l]);s.length>1||s.length&&(0===i&&0===o||e.ignoreDefault)?(e.event.preventDefault(),e.event.stopPropagation(),this.currentAction=this.getAction(s[0]),e.event.shiftKey?(this.revertList(s),this.revertClean()):a=this.nestedList(s),a&&(this.cleanNode(),this.parent.editableElement.focus()),e.event.action&&"indent"===e.event.action||(this.saveSelection=this.domNode.saveMarker(this.saveSelection),this.saveSelection.restore(),e.callBack&&e.callBack({requestType:this.currentAction,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes(),event:e.event}))):e.event.action&&"indent"===e.event.action||(e.event&&e.event.shiftKey&&"Tab"===e.event.key&&(e.event.action="tab"),this.saveSelection=this.domNode.saveMarker(this.saveSelection,e.event.action),this.saveSelection.restore())}else switch(e.event.action){case"ordered-list":this.applyListsHandler({subCommand:"OL",callBack:e.callBack}),e.event.preventDefault();break;case"unordered-list":this.applyListsHandler({subCommand:"UL",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.getAction=function(e){return"OL"===e.parentNode.nodeName?"OL":"UL"},e.prototype.revertClean=function(){for(var e=this.parent.editableElement.querySelectorAll("ul, ol"),t=0;t<e.length;t++){var n=e[t].querySelectorAll("ul, ol");if(n.length>0)for(var i=0;i<n.length;i++){var o=n[i].previousSibling;o&&"LI"===o.tagName&&o.appendChild(n[i])}}},e.prototype.noPreviousElement=function(e){var n,i,o=e.querySelectorAll("ol, ul"),r=e.querySelectorAll("li"),s=this.domNode.contents(r[0])[0];if(r.length>0&&("OL"===s.nodeName||"UL"===s.nodeName)?n=r[0]:i=o[0],n)for(var a=this.domNode.contents(e)[0];a&&!this.domNode.isList(a);null){var 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){var d=t.createElement("li");t.prepend([d],i);for(a=this.domNode.contents(e)[0];a&&!this.domNode.isList(a);null){l=a.nextSibling;d.appendChild(a),a=l}t.prepend([i],e.parentNode),t.detach(e);var c=t.createElement("li",{styles:"list-style-type: none;"});t.prepend([c],i.parentNode),t.append([i],c)}else{c=t.createElement("li",{styles:"list-style-type: none;"});t.prepend([c],e.parentNode);d=t.createElement(e.parentNode.tagName);t.prepend([d],c),t.append([e],d)}},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){var c=t.createElement("li");t.prepend([c],r);for(var p=this.domNode.contents(e[i])[0];p&&!this.domNode.isList(p);null){var h=p.nextSibling;c.appendChild(p),p=h}t.append([r],o),t.detach(e[i])}else if(s){if("LI"===o.tagName){for(p=this.domNode.contents(e[i])[0];p&&!this.domNode.isList(p);null){h=p.nextSibling;t.prepend([p],s),t.setStyleAttribute(e[i],{"list-style-type":"none"}),t.setStyleAttribute(s,{"list-style-type":""}),p=h}t.append([s.parentNode],o),t.detach(e[i])}}else if("LI"===o.tagName){c=t.createElement(e[i].parentNode.tagName);t.append([c],o),t.append([e[i]],c)}}else{var u=e[i];n=!0,this.noPreviousElement(u)}}return n},e.prototype.applyListsHandler=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument);this.saveSelection=this.parent.nodeSelection.save(t,this.parent.currentDocument),this.currentAction=e.subCommand,this.domNode.setMarker(this.saveSelection);for(var n=this.domNode.blockNodes(),i=0;i<n.length;i++)"TABLE"===n[i].tagName&&n.splice(i,1),"LI"!==n[i].tagName&&"LI"===n[i].parentNode.tagName&&(n[i]=n[i].parentNode);this.applyLists(n,this.currentAction,e.selector),e.callBack&&e.callBack({requestType:this.currentAction,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes()})},e.prototype.applyLists=function(e,t,n){if(this.isRevert(e,t))this.revertList(e),this.removeEmptyListElements();else{this.checkLists(e,t);for(var i=0;i<e.length;i++)if("LI"!==e[i].tagName){var o="<"+t+">",r="</"+t+">",s="li"+("IMG"===e[i].tagName?"":this.domNode.attributes(e[i])),a="p"===e[i].tagName.toLowerCase()?e[i].innerHTML:e[i].outerHTML,l=o+this.domNode.createTagString(s,null,a)+r;this.domNode.replaceWith(e[i],l)}}this.cleanNode(),this.parent.editableElement.focus(),O()&&D(this.parent.editableElement,n),this.saveSelection=this.domNode.saveMarker(this.saveSelection),this.saveSelection.restore()},e.prototype.removeEmptyListElements=function(){for(var e=this.parent.editableElement.querySelectorAll("ol, ul"),n=0;n<e.length;n++)""===e[n].textContent.trim()&&t.detach(e[n])},e.prototype.isRevert=function(e,t){for(var n=!0,i=0;i<e.length;i++){if("LI"!==e[i].tagName)return!1;e[i].parentNode.tagName!==t&&(n=!1)}return n},e.prototype.checkLists=function(e,t){for(var n=[],i=0;i<e.length;i++){var o=e[i].parentNode;"LI"===e[i].tagName&&o.tagName!==t&&n.indexOf(o)<0&&n.push(o)}for(var r=n.length-1;r>=0;r--){var s=n[r],a="<"+t.toLowerCase()+" "+this.domNode.attributes(s)+">"+s.innerHTML+"</"+t.toLowerCase()+">";this.domNode.replaceWith(n[r],a)}},e.prototype.cleanNode=function(){for(var e=this.parent.editableElement.querySelectorAll("ol + ol, ul + ul"),t=0;t<e.length;t++){var n=e[t];if(this.domNode.isList(n.previousElementSibling)&&this.domNode.openTagString(n)===this.domNode.openTagString(n.previousElementSibling)){for(var i=this.domNode.contents(n),o=0;o<i.length;o++)n.previousElementSibling.appendChild(i[o]);n.parentNode.removeChild(n)}}},e.prototype.findUnSelected=function(e,t){if((e=e.slice().reverse()).length>0){var n=[],i=[],o=[],r=[];o=t[t.length-1].childNodes;for(var s=0;s<o.length;s++)if("OL"===o[s].tagName||"UL"===o[s].tagName){var a=o[s].querySelectorAll("li");if(a.length>0)for(var l=0;l<a.length;l++)r.push(a[l])}for(var d=0;d<r.length;d++){for(var c=0,p=0;p<e.length;p++)r[d].contains(e[p])||(c+=1);c===e.length&&i.push(r[d])}if(i.length>0)for(var h=0;h<i.length;h++)"OL"!==this.domNode.contents(i[h])[0].nodeName&&"UL"!==this.domNode.contents(i[h])[0].nodeName&&n.push(i[h]);n.length>0&&this.nestedList(n)}},e.prototype.revertList=function(e){for(var n=[],i=e.length-1;i>=0;i--)for(var o=i-1;o>=0;o--)if(e[o].contains(e[i])||e[o]===e[i]){n.push(e[i]),e.splice(i,1);break}this.findUnSelected(n,e);var r=[];for(i=0;i<e.length;i++){var s=e[i];3===this.domNode.contents(s)[0].nodeType&&0===this.domNode.contents(s)[0].textContent.trim().length&&t.detach(this.domNode.contents(s)[0]);var a=e[i].parentNode,l=s.getAttribute("class");if(0===n.length){var d=e[i].querySelectorAll("ul, ol")[0];if(d){if(d.querySelectorAll("li")){var c=t.createElement(d.tagName);t.append([c],d.parentNode);var p=t.createElement("li",{styles:"list-style-type: none;"});t.append([p],c),t.append([d],p)}}}if(s.parentNode.insertBefore(this.closeTag(a.tagName),s),"LI"===a.parentNode.tagName)s.parentNode.insertBefore(this.closeTag("LI"),s);else{if(0===s.querySelectorAll(bo.join(", ")).length){var h="<p"+(t.isNullOrUndefined(l)?' class="e-rte-wrap-inner"':' class="'+l+' e-rte-wrap-inner"')+this.domNode.attributes(a)+"></p>";this.domNode.wrapInner(s,this.domNode.parseHTMLFragment(h))}else if(3===this.domNode.contents(s)[0].nodeType){var u=this.domNode.createTagString("p",a,this.parent.domNode.encode(this.domNode.contents(s)[0].textContent));this.domNode.replaceWith(this.domNode.contents(s)[0],u)}else if(this.domNode.contents(s)[0].classList.contains(ko.startSelection)||this.domNode.contents(s)[0].classList.contains(ko.endSelection)){u=this.domNode.createTagString("p",a,this.domNode.contents(s)[0].outerHTML);this.domNode.replaceWith(this.domNode.contents(s)[0],u)}else{var m=s.firstChild;l=m.getAttribute("class"),t.attributes(m,this.domNode.rawAttributes(a)),l&&m.getAttribute("class")&&t.attributes(m,{class:l+" "+m.getAttribute("class")})}t.append([this.openTag("LI")],s),t.prepend([this.closeTag("LI")],s)}this.domNode.insertAfter(this.openTag(a.tagName),s),"LI"===a.parentNode.tagName&&(a=a.parentNode.parentNode),r.indexOf(a)<0&&r.push(a)}for(i=0;i<r.length;i++){var g=r[i],f=g.innerHTML;f=(f=f.replace(/<span class="e-rte-list-close-([a-z]*)"><\/span>/g,"</$1>")).replace(/<span class="e-rte-list-open-([a-z]*)"><\/span>/g,"<$1 "+this.domNode.attributes(g)+">"),this.domNode.replaceWith(g,this.domNode.openTagString(g)+f.trim()+this.domNode.closeTagString(g))}var b=this.parent.editableElement.querySelectorAll("ul:empty, ol:empty");for(i=0;i<b.length;i++)t.detach(b[i]);var v=this.parent.editableElement.querySelectorAll("li:empty");for(i=0;i<v.length;i++)t.detach(v[i])},e.prototype.openTag=function(e){return this.domNode.parseHTMLFragment('<span class="e-rte-list-open-'+e.toLowerCase()+'"></span>')},e.prototype.closeTag=function(e){return this.domNode.parseHTMLFragment('<span class="e-rte-list-close-'+e.toLowerCase()+'"></span>')},e}(),Oo=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}(),Do=function(){function e(){this.position=-1,this.nodeSelection=new No}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){if(t=o.childNodes[r],(s=this.spliceEmptyNode(s,!1))&&s.childNodes.length>0){if(!!(1!==s.childNodes.length||"IMG"===s.childNodes[0].nodeName||!this.isImgElm(s)||""!==s.textContent))if(t)Oo.AppendBefore(s,t);else{o.appendChild(s);(a=document.createElement("div")).innerHTML="&#65279;&#65279;",t=a.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){if(!!(1!==s.childNodes.length||"IMG"===s.childNodes[0].nodeName||!this.isImgElm(s)||""!==s.textContent))if(t)Oo.AppendBefore(s,t,!0);else{o.appendChild(s);var a;(a=document.createElement("div")).innerHTML="&#65279;&#65279;",o.insertBefore(a.firstChild,o.firstChild),t=o.firstChild}}return t}return null},e.prototype.isImgElm=function(e){var n=!0;if(1===e.childNodes.length&&"IMG"!==e.childNodes[0].nodeName)for(var i=e.childNodes[0],o=0;!t.isNullOrUndefined(i.childNodes)&&o<i.childNodes.length;o++)"IMG"===i.childNodes[o].nodeName&&(n=!1);else n=!0;return n},e.prototype.spliceEmptyNode=function(e,t){var n;return(n=1===e.childNodes.length&&"#text"===e.childNodes[0].nodeName&&""===e.childNodes[0].textContent||""===e.textContent?-1:e.childNodes.length-1)>-1&&!t?this.spliceEmptyNode(e.childNodes[n],t):n>-1?this.spliceEmptyNode(e.childNodes[0],t):3!==e.nodeType&&11!==e.nodeType&&e.parentNode.removeChild(e),e},e.prototype.GetCursorStart=function(e,t,n){for(var i=(e=n?e:e.reverse())[0],o=0;o<e.length&&(n?e[o]<t:e[o]>=t);o++)i=e[o];return i},e.prototype.GetCursorRange=function(e,t,n){var i=e.createRange(),o=[];o.push(0);for(var r=this.TrimLineBreak(n.data),s=r.indexOf(" ",0);-1!==s;)o.indexOf(s)<0&&o.push(s),new RegExp("\\s").test(r[s-1])&&o.indexOf(s-1)<0&&o.push(s-1),new RegExp("\\s").test(r[s+1])&&o.push(s+1),s=r.indexOf(" ",s+1);if(o.push(r.length),o.indexOf(t.startOffset)>=0||o.indexOf(t.startOffset-1)>=0&&(1!==t.startOffset||1===t.startOffset&&new RegExp("\\s").test(r[0]))||o[o.length-1]-1===t.startOffset)i=t,this.position=1;else{var a=this.GetCursorStart(o,t.startOffset,!0);this.position=t.startOffset-a,i.setStart(t.startContainer,a),i.setEnd(t.startContainer,this.GetCursorStart(o,t.startOffset,!1))}return i},e.prototype.GetCursorNode=function(e,t,n){return this.GetSpliceNode(this.GetCursorRange(e,t,n),n)},e.prototype.TrimLineBreak=function(e){return e.replace(/(\r\n\t|\n|\r\t)/gm," ")},e}(),Mo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(wi,this.applyFormats,this),this.parent.observer.on(Li,this.onKeyDown,this)},e.prototype.getParentNode=function(e){for(;e.parentNode&&e.parentNode!==this.parent.editableElement;null)e=e.parentNode;return e},e.prototype.onKeyDown=function(e){if(13===e.event.which){var n=this.parent.nodeSelection.getRange(this.parent.currentDocument),i=0===n.startContainer.textContent.length||"PRE"===n.startContainer.nodeName?n.startContainer:n.startContainer.parentElement,o=0===n.endContainer.textContent.length||"PRE"===n.endContainer.nodeName?n.endContainer:n.endContainer.parentElement,r=t.closest(i,"pre"),s=t.closest(o,"pre");if(!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(r.parentElement)&&"LI"===r.parentElement.tagName)return;if((t.isNullOrUndefined(r)&&!t.isNullOrUndefined(s)||!t.isNullOrUndefined(r)&&t.isNullOrUndefined(s))&&(e.event.preventDefault(),this.deleteContent(n),this.removeCodeContent(n),n=this.parent.nodeSelection.getRange(this.parent.currentDocument),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,o,0)),13===e.event.which&&!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(s)){e.event.preventDefault(),this.deleteContent(n),this.removeCodeContent(n);var a=(n=this.parent.nodeSelection.getRange(this.parent.currentDocument)).startContainer.childNodes[n.endOffset],l=n.startContainer.childNodes[n.endOffset-1],d=n.startContainer;if(t.isNullOrUndefined(a)||t.isNullOrUndefined(l)||!t.isNullOrUndefined(a.nextSibling)||"BR"!==a.nodeName||"BR"!==l.nodeName)if(8203===d.textContent.charCodeAt(0)&&1===d.textContent.length||0===d.textContent.length){for(;"PRE"!==d.parentElement.nodeName&&(1===d.textContent.length||0===d.textContent.length);)d=d.parentElement;!t.isNullOrUndefined(d.previousSibling)&&"BR"===d.previousSibling.nodeName&&t.isNullOrUndefined(d.nextSibling)?this.paraFocus(d.parentElement):this.isNotEndCursor(r,n)}else this.isNotEndCursor(r,n);else this.paraFocus(n.startContainer)}}},e.prototype.removeCodeContent=function(e){var n=new RegExp(String.fromCharCode(65279),"g");if(!t.isNullOrUndefined(e.endContainer.textContent.match(n))){var i=65279===e.endContainer.textContent.charCodeAt(e.endOffset-1)?e.endOffset-2:e.endOffset;e.endContainer.textContent=e.endContainer.textContent.replace(n,""),""===e.endContainer.textContent?this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e.endContainer.parentElement,0):this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,e.endContainer,i)}},e.prototype.deleteContent=function(e){e.startContainer===e.endContainer&&e.startOffset===e.endOffset||e.deleteContents()},e.prototype.paraFocus=function(e){var n=t.createElement("p");n.innerHTML="<br>",this.parent.domNode.insertAfter(n,e),this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,n,0),t.detach(e.lastChild)},e.prototype.isNotEndCursor=function(e,n){var i=new Do,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||(i=!0);var o=this.parent.nodeSelection.save(n,this.parent.currentDocument);this.parent.domNode.setMarker(o);for(var r=this.parent.domNode.blockNodes(),s=0;s<r.length;s++){var a=void 0,l=void 0;if("blockquote"===e.subCommand.toLowerCase()?(a=this.getParentNode(r[s]),l=this.parent.domNode.isList(a)||"TABLE"===a.tagName?a.outerHTML:a.innerHTML):l=(a=r[s]).innerHTML,!(e.subCommand.toLowerCase()===a.tagName.toLowerCase()&&("pre"!==e.subCommand.toLowerCase()||!t.isNullOrUndefined(e.exeValue)&&"dropDownSelect"===e.exeValue.name)||t.isNullOrUndefined(a.parentNode)||"LI"===a.tagName&&"pre"!==e.subCommand.toLowerCase()||"TABLE"===a.tagName&&"pre"===e.subCommand.toLowerCase())){this.cleanFormats(a,e.subCommand);var d="pre"===e.subCommand.toLowerCase()&&"pre"===a.tagName.toLowerCase()?"p":e.subCommand,c=this.parent.domNode.createTagString(d,a,l.replace(/>\s+</g,"><"));"LI"===a.tagName?(a.innerHTML="",a.insertAdjacentHTML("beforeend",c)):this.parent.domNode.replaceWith(a,c)}}this.preFormatMerge();var p=this.parent.editableElement.querySelector("."+ko.startSelection),h=this.parent.editableElement.querySelector("."+ko.endSelection);t.isNullOrUndefined(p)||t.isNullOrUndefined(h)||(p=p.lastChild,h=h.lastChild),o=this.parent.domNode.saveMarker(o,null),O()&&D(this.parent.editableElement,e.selector),i?this.parent.nodeSelection.setSelectionText(this.parent.currentDocument,p,h,0,h.textContent.length):o.restore(),e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes()})},e.prototype.preFormatMerge=function(){var e=this.parent.editableElement.querySelectorAll("PRE");if(!t.isNullOrUndefined(e))for(var n=0;n<e.length;n++){var i=e[n].previousElementSibling;t.isNullOrUndefined(i)||"PRE"!==i.tagName||(i.insertAdjacentHTML("beforeend","<br>"+e[n].innerHTML),t.detach(e[n]))}},e.prototype.cleanFormats=function(e,t){var n=["display","font-size","margin-top","margin-bottom","margin-left","margin-right","font-weight"];t=t.toLowerCase();for(var i=0;i<n.length&&"p"!==t&&"blockquote"!==t&&"pre"!==t;i++)e.style.removeProperty(n[i])},e}(),Ro=function(){function e(){}return e.Insert=function(e,n,i,o){var r;if("string"==typeof n){(s=document.createElement("div")).innerHTML=n,r=o?s:s.firstChild}else if(o&&(t.isNullOrUndefined(n)||t.isNullOrUndefined(n.classList)||!n.classList.contains("pasteContent"))){var s;(s=document.createElement("div")).appendChild(n),r=s}else r=n;var a=new No,l=new Do,d=a.getRange(e),c=d.startOffset===d.endOffset&&0===d.startOffset&&d.startContainer===d.endContainer,p=d.collapsed,h=this.getNodeCollection(d,a),u="table"===r.nodeName.toLowerCase()?this.closestEle(h[0].parentNode,i):h[0];if(o||!t.isNullOrUndefined(r)&&!t.isNullOrUndefined(r.classList)&&r.classList.contains("pasteContent"))this.pasteInsertHTML(h,r,d,a,l,e,p,u,i);else if(i!==d.startContainer&&(!p&&(u.nodeType!==Node.ELEMENT_NODE||-1===yo.indexOf(u.tagName.toLocaleLowerCase()))||"table"===r.nodeName.toLowerCase()&&u&&-1===yo.indexOf(u.tagName.toLocaleLowerCase()))){var m=l.GetSpliceNode(d,u),g=m.previousSibling,f=m.parentNode;if(1===h.length)a.setSelectionContents(e,m),d=a.getRange(e);else{var b=l.GetSpliceNode(d,h[h.length-1].parentElement);b=t.isNullOrUndefined(b)?m:b,a.setSelectionText(e,m,b,0,3===b.nodeType?b.textContent.length:b.childNodes.length),d=a.getRange(e)}d.extractContents(),"TABLE"===n.tagName&&this.removeEmptyElements(i);for(var v=0;v<h.length;v++)if(3!==h[v].nodeType&&null!=h[v].parentNode){if("IMG"===h[v].nodeName)continue;h[v].parentNode.removeChild(h[v])}if(g)Oo.AppendBefore(r,g,!0);else{for(var y=null;f!==i&&f.firstChild&&""===f.textContent.trim();){y=f,f=f.parentNode}null!==y&&(f=y),f.firstChild&&(f!==i||"TABLE"===r.nodeName&&c&&f===d.startContainer&&f===d.endContainer)?""===f.textContent.trim()&&f!==i?(Oo.AppendBefore(r,f,!1),t.detach(f)):Oo.AppendBefore(r,f.firstChild,!1):f.appendChild(r)}"IMG"===r.nodeName?this.imageFocus(r,a,e):3!==r.nodeType?a.setSelectionText(e,r,r,0,r.childNodes.length):a.setSelectionText(e,r,r,0,r.textContent.length)}else{if(d.deleteContents(),c&&""===d.startContainer.textContent&&(d.startContainer.innerHTML=""),t.Browser.isIE){var C=e.createDocumentFragment();C.appendChild(r),d.insertNode(C)}else d.insertNode(r);3!==r.nodeType&&r.childNodes.length>0?a.setSelectionText(e,r,r,1,1):"IMG"===r.nodeName?this.imageFocus(r,a,e):3!==r.nodeType?a.setSelectionContents(e,r):a.setSelectionText(e,r,r,r.textContent.length,r.textContent.length)}},e.pasteInsertHTML=function(e,n,i,o,r,s,a,l,d){var c=i.startOffset===i.endOffset&&i.startContainer===i.endContainer;if(c&&i.startContainer===d&&""===d.textContent){var p=this.getImmediateBlockNode(e[e.length-1],d);o.setSelectionText(s,p,p,0,0),i=o.getRange(s)}var h,u,m,g;d!==i.startContainer&&(!a&&(l.nodeType!==Node.ELEMENT_NODE||-1===yo.indexOf(l.tagName.toLocaleLowerCase()))||"table"===n.nodeName.toLowerCase()&&l&&-1===yo.indexOf(l.tagName.toLocaleLowerCase()))&&(g=r.GetSpliceNode(i,l),u=t.isNullOrUndefined(g.previousSibling)?g.parentNode.previousSibling:g.previousSibling,1===e.length?(o.setSelectionContents(s,g),i=o.getRange(s),m=!0):(h=r.GetSpliceNode(i,e[e.length-1].parentElement),h=t.isNullOrUndefined(h)?g:h,o.setSelectionText(s,g,h,0,3===h.nodeType?h.textContent.length:h.childNodes.length),i=o.getRange(s),m=!1));var f=!1;this.removingComments(n);for(var b=n.childNodes,v=0;v<b.length;v++)if(bo.indexOf(b[v].nodeName.toLocaleLowerCase())>=0){f=!0;break}var y,C=document.createDocumentFragment();if(f){this.insertTempNode(i,n,e,r,d);var T=!0,S=void 0,E=void 0,N=void 0;for(i.deleteContents();n.firstChild;)if("#text"!==n.firstChild.nodeName||""!==n.firstChild.textContent.trim())if("#text"===n.firstChild.nodeName&&T||this.inlineNode.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0&&T){if(y=n.firstChild,t.isNullOrUndefined(n.previousElementSibling)){var k=t.createElement("p");n.parentElement.insertBefore(k,n)}n.previousElementSibling.appendChild(n.firstChild)}else y=n.firstChild,"#text"===n.firstChild.nodeName||this.inlineNode.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(S?(N.appendChild(n.firstChild),C.appendChild(N)):((E=t.createElement("p")).appendChild(n.firstChild),C.appendChild(E)),N=E,S=!0):(C.appendChild(n.firstChild),S=!1),T=!1;else t.detach(n.firstChild);n.parentNode.replaceChild(C,n)}else if(c){var w=t.createElement("span",{className:"tempSpan"});for(i.insertNode(w);n.firstChild;)y=n.firstChild,C.appendChild(n.firstChild);w.parentNode.replaceChild(C,w)}else{for(;n.firstChild;)y=n.firstChild,C.appendChild(n.firstChild);m?g.parentNode.replaceChild(C,g):(i.deleteContents(),t.detach(h),t.isNullOrUndefined(u)?d.appendChild(C):u.parentNode.appendChild(C))}"#text"===y.nodeName?this.placeCursorEnd(y,n,o,s,d):this.cursorPos(y,n,o,s,d)},e.placeCursorEnd=function(e,n,i,o,r){for(e="BR"===e.nodeName?e.previousSibling:e;!t.isNullOrUndefined(e)&&"#text"!==e.nodeName&&"IMG"!==e.nodeName&&"BR"!==e.nodeName;)e=e.lastChild;"IMG"===(e=t.isNullOrUndefined(e)?n:e).nodeName?this.imageFocus(e,i,o):i.setSelectionText(o,e,e,e.textContent.length,e.textContent.length),this.removeEmptyElements(r)},e.getNodeCollection=function(e,t){var n=[];return e.startOffset===e.endOffset&&e.startContainer===e.endContainer&&"TD"===e.startContainer.nodeName?n.push(e.startContainer.childNodes[e.endOffset]):n=t.getInsertNodeCollection(e),n},e.insertTempNode=function(e,n,i,o,r){if(e.startContainer!==r||t.isNullOrUndefined(e.startContainer.childNodes[e.endOffset-1])||"TABLE"!==e.startContainer.childNodes[e.endOffset-1].nodeName)if(e.startContainer!==r||t.isNullOrUndefined(e.startContainer.childNodes[e.endOffset])||"TABLE"!==e.startContainer.childNodes[e.endOffset].nodeName){var s=this.getImmediateBlockNode(i[i.length-1],r);if("TD"===s.nodeName||"TH"===s.nodeName){var a=t.createElement("span",{className:"tempSpan"});e.insertNode(a),a.parentNode.replaceChild(n,a)}else{var l=o.GetSpliceNode(e,s);l.parentNode.replaceChild(n,l)}}else e.startContainer.insertBefore(n,e.startContainer.childNodes[e.endOffset]);else t.isNullOrUndefined(e.startContainer.childNodes[e.endOffset-1].nextSibling)?e.startContainer.appendChild(n):e.startContainer.insertBefore(n,e.startContainer.childNodes[e.endOffset-1].nextSibling)},e.cursorPos=function(e,n,i,o,r){e.classList.add("lastNode"),r.innerHTML=function(e){var n=document.createElement("div");n.innerHTML=e,n.setAttribute("class","tempDiv");var i=document.createElement("div");if(n.childNodes.length>0){for(var o=void 0,r=void 0,s=void 0;n.firstChild;)"#text"===n.firstChild.nodeName&&(n.firstChild.textContent.indexOf("\n")<0||""!==n.firstChild.textContent.trim())||Lo.indexOf(n.firstChild.nodeName.toLocaleLowerCase())>=0?(o?r.appendChild(n.firstChild):(s=t.createElement("p"),i.appendChild(s),s.appendChild(n.firstChild)),r=s,o=!0):"#text"===n.firstChild.nodeName&&("\n"===n.firstChild.textContent||n.firstChild.textContent.indexOf("\n")>=0&&""===n.firstChild.textContent.trim())?t.detach(n.firstChild):(i.appendChild(n.firstChild),o=!1);for(var a=i.querySelectorAll("table"),l=0;l<a.length;l++){"0"===a[l].getAttribute("border")&&a[l].removeAttribute("border");for(var d=a[l].querySelectorAll("td"),c=0;c<d.length;c++)d[c].style.removeProperty("border");a[l].classList.contains(Un)||a[l].classList.add(Un)}var p=i.querySelectorAll("img");for(l=0;l<p.length;l++)p[l].classList.contains(On)||p[l].classList.add(On),p[l].classList.contains(Vt)||p[l].classList.contains(_t)||p[l].classList.add(Vt)}return i.innerHTML}(r.innerHTML),e=r.querySelector(".lastNode"),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(bo.indexOf(e.nodeName.toLocaleLowerCase())<0);return e},e.removingComments=function(e){var t=e.innerHTML;t=t.replace(/<!--[\s\S]*?-->/g,""),e.innerHTML=t},e.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:""===e.parentElement.textContent.trim()&&"true"!==e.parentElement.contentEditable?this.findDetachEmptyElem(e.parentElement):e},e.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++)if("IMG"!==n[i].tagName&&"BR"!==n[i].tagName&&"IFRAME"!==n[i].tagName&&"TD"!==n[i].tagName){var o=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(o)||t.detach(o)}},e.closestEle=function(e,n){for(var i=e;i&&1===i.nodeType;){if(i.parentNode===n||!t.isNullOrUndefined(i.parentNode.tagName)&&-1!==vo.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}(),Bo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(so,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 No).getRange(this.parent.currentDocument),o=!!t.isNullOrUndefined(e.item.text)||e.item.text.replace(/ /g,"").localeCompare(i.toString().replace(/\n/g," ").replace(/ /g,""))<0;if(e.event&&"keydown"===e.event.type&&(32===e.event.keyCode||13===e.event.keyCode)||"Paste"===e.item.action||i.collapsed||o){var r=this.createAchorNode(e);if(r.innerText=""===e.item.text?e.item.url:e.item.text,e.item.selection.restore(),Ro.Insert(this.parent.currentDocument,r,this.parent.editableElement),!e.event||"keydown"!==e.event.type||32!==e.event.keyCode&&13!==e.event.keyCode){d="Paste"===e.item.action?r.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,r.childNodes[0],r.childNodes[0],d,r.childNodes[0].textContent.length)}else{var s=e.item.selection.range.startContainer;s.textContent=this.removeText(s.textContent,e.item.text)}}else this.createLinkNode(e)}else{var a=n,l="";if(t.isNullOrUndefined(e.item.url)||a.setAttribute("href",e.item.url),t.isNullOrUndefined(e.item.title)||a.setAttribute("title",e.item.title),t.isNullOrUndefined(e.item.text)||(l=a.innerText,a.innerText=e.item.text),t.isNullOrUndefined(e.item.target)?a.removeAttribute("target"):a.setAttribute("target",e.item.target),l===e.item.text)e.item.selection.setSelectionText(this.parent.currentDocument,a,a,1,1),e.item.selection.restore();else{var d="Paste"===e.item.action?a.childNodes[0].textContent.length:0;e.item.selection.setSelectionText(this.parent.currentDocument,a.childNodes[0],a.childNodes[0],d,a.childNodes[0].textContent.length)}}e.callBack&&e.callBack({requestType:"Links",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.createLinkNode=function(e){for(var t,n,i=new No,o=new Do,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(var m=0;m<l.length;m++){var g=!0;for(t=l[m];!0===g;){if("A"===t.parentElement.nodeName){var f=t.parentElement;t.parentElement.parentElement.insertBefore(f.firstChild,f),t.parentElement.removeChild(f)}this.isBlockNode(t.parentElement)||0===l.length||0===m||m===l.length-1?(d[m]=t,g=!1):t=t.parentElement}}m=0;for(var b=0;m<d.length;m++)if(0===m&&(h[b]=d[m]),d.length>1&&m<d.length-1){if(d[m].parentElement===d[m+1].parentElement&&d[m]===d[m+1])continue;h[b+1]=d[m+1],b++}var v=0;p[v]=this.createAchorNode(e);for(m=0;m<h.length;m++)if(0===m&&(n=h[m].cloneNode(!0),p[m].appendChild(n)),m<h.length-1)if(h[m].parentNode===h[m+1].parentNode){var y=h[m+1].cloneNode(!0);p[v].appendChild(y)}else p[v+=1]=this.createAchorNode(e),n=h[m+1].cloneNode(!0),p[v].appendChild(n);this.parent.nodeSelection.setRange(document,a.range);m=0;for(var C=0,T=0;m<=h.length;m++)0===m&&(h[m].parentNode.insertBefore(p[C],h[m].nextSibling),1===this.parent.domNode.blockNodes().length&&this.parent.nodeSelection.setSelectionNode(this.parent.currentDocument,p[C]),c[T]=h[m],T++),m<h.length-1&&(h[m].parentNode===h[m+1].parentNode?(c[T]=h[m+1],T++):(C+=1,h[m+1].parentNode.insertBefore(p[C],h[m+1]),c[T]=h[m+1],T++));for(m=0;m<c.length;m++)c[m].parentNode&&c[m].parentNode.removeChild(c[m])},e.prototype.createAchorNode=function(e){var n=t.createElement("a",{className:"e-rte-anchor",attrs:{href:e.item.url,title:t.isNullOrUndefined(e.item.title)||""===e.item.title?e.item.url:e.item.title}});return t.isNullOrUndefined(e.item.target)||n.setAttribute("target",e.item.target),n},e.prototype.getSelectionNodes=function(e){e=e.reverse();for(var t=0;t<e.length;t++)3===e[t].nodeType&&""!==e[t].textContent.trim()||"IMG"!==e[t].nodeName&&(e.splice(t,1),t--);return e.reverse()},e.prototype.isBlockNode=function(e){return!!e&&e.nodeType===Node.ELEMENT_NODE&&bo.indexOf(e.tagName.toLowerCase())>=0},e.prototype.removeText=function(e,t){for(var n=e.split(" "),i=0;i<n.length;i++)n[i]===t&&(n.splice(i,1),i--);return n.join(" ")+" "},e.prototype.openLink=function(e){document.defaultView.open(e.item.url,e.item.target),this.callBack(e)},e.prototype.removeLink=function(e){var n=this.parent.domNode.blockNodes();if(n.length<2){this.parent.domNode.setMarker(e.item.selection);for(var i=t.closest(e.item.selectParent[0],"a"),o=i||e.item.selectParent[0],r=o.parentNode,s=[];o.firstChild;null)s.push(r.insertBefore(o.firstChild,o));r.removeChild(o),s&&1===s.length&&(e.item.selection.startContainer=e.item.selection.getNodeArray(s[s.length-1],!0),e.item.selection.endContainer=e.item.selection.startContainer),e.item.selection=this.parent.domNode.saveMarker(e.item.selection)}else for(var a=0;a<n.length;a++)for(var l=n[a].querySelectorAll("a"),d=0;d<l.length;d++)document.getSelection().containsNode(l[d],!0)&&(l[d].outerHTML=l[d].innerHTML);e.item.selection.restore(),this.callBack(e)},e.prototype.callBack=function(e){e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),Io=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(go,this.applyAlignment,this),this.parent.observer.on(Li,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]})}var l=this.parent.domNode.getImageTagInSelection();for(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),O()&&D(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}(),Po=function(){function e(e){this.indentValue=20,this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(fo,this.applyIndents,this),this.parent.observer.on(Li,this.onKeyDown,this)},e.prototype.onKeyDown=function(e){switch(e.event.action){case"indents":this.applyIndents({subCommand:"Indent",callBack:e.callBack}),e.event.preventDefault();break;case"outdents":this.applyIndents({subCommand:"Outdent",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.applyIndents=function(e){var t=this.parent.nodeSelection.getRange(this.parent.currentDocument),n=this.parent.nodeSelection.save(t,this.parent.currentDocument);this.parent.domNode.setMarker(n);for(var i=this.parent.domNode.blockNodes(),o=i.slice(),r=[],s=0;s<o.length;s++)"LI"!==o[s].tagName&&"LI"===o[s].parentNode.tagName?(i.splice(i.indexOf(o[s]),1),r.push(o[s].parentNode)):"LI"===o[s].tagName&&(i.splice(i.indexOf(o[s]),1),r.push(o[s]));r.length>0&&this.parent.observer.notify(Li,{event:{preventDefault:function(){},stopPropagation:function(){},shiftKey:"Indent"!==e.subCommand,which:9,action:"indent"},ignoreDefault:!0});for(s=0;s<i.length;s++){var a=i[s],l=a.style.marginLeft,d=void 0;"Indent"===e.subCommand?(d=""===l?this.indentValue+"px":parseInt(l,null)+this.indentValue+"px",a.style.marginLeft=d):(d=""===l||"0px"===l?"":parseInt(l,null)-this.indentValue+"px",a.style.marginLeft=d)}this.parent.editableElement.focus(),O()&&D(this.parent.editableElement,e.selector),(n=this.parent.domNode.saveMarker(n)).restore(),e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.domNode.blockNodes()})},e}(),Ao="e-imgright",Ho="e-imgleft",Uo="e-imgcenter",jo="e-imgbreak",zo="e-img-caption",qo="e-caption-inline",_o=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(oo,this.imageCommand,this)},e.prototype.imageCommand=function(e){switch(e.value.toString().toLocaleLowerCase()){case"image":case"replace":this.createImage(e);break;case"insertlink":this.insertImageLink(e);break;case"openimagelink":this.openImageLink(e);break;case"editimagelink":this.editImageLink(e);break;case"removeimagelink":this.removeImageLink(e);break;case"remove":this.removeImage(e);break;case"alttext":this.insertAltTextImage(e);break;case"dimension":this.imageDimension(e);break;case"caption":this.imageCaption(e);break;case"justifyleft":this.imageJustifyLeft(e);break;case"justifycenter":this.imageJustifyCenter(e);break;case"justifyright":this.imageJustifyRight(e);break;case"inline":this.imageInline(e);break;case"break":this.imageBreak(e)}},e.prototype.createImage=function(e){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 n=t.createElement("img");this.setStyle(n,e),t.isNullOrUndefined(e.item.selection)||e.item.selection.restore(),t.isNullOrUndefined(e.selector)||"pasteCleanupModule"!==e.selector?Ro.Insert(this.parent.currentDocument,n,this.parent.editableElement):e.callBack({requestType:"Image",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:[n]})}else{var i=e.item.selectParent[0];this.setStyle(i,e)}e.callBack&&(t.isNullOrUndefined(e.selector)||!t.isNullOrUndefined(e.selector)&&"pasteCleanupModule"!==e.selector)&&e.callBack({requestType:"Image",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.setStyle=function(e,n){t.isNullOrUndefined(n.item.url)||e.setAttribute("src",n.item.url),e.setAttribute("class","e-rte-image"+(t.isNullOrUndefined(n.item.cssClass)?"":" "+n.item.cssClass)),t.isNullOrUndefined(n.item.altText)||e.setAttribute("alt",n.item.altText),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.width)||e.setAttribute("width",this.calculateStyleValue(n.item.width.width)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.height)||e.setAttribute("height",this.calculateStyleValue(n.item.height.height)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.minWidth)||(e.style.minWidth=this.calculateStyleValue(n.item.width.minWidth)),t.isNullOrUndefined(n.item.width)||t.isNullOrUndefined(n.item.width.maxWidth)||(e.style.maxWidth=this.calculateStyleValue(n.item.width.maxWidth)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.minHeight)||(e.style.minHeight=this.calculateStyleValue(n.item.height.minHeight)),t.isNullOrUndefined(n.item.height)||t.isNullOrUndefined(n.item.height.maxHeight)||(e.style.maxHeight=this.calculateStyleValue(n.item.height.maxHeight))},e.prototype.calculateStyleValue=function(e){return"string"==typeof e&&(e.indexOf("px")||e.indexOf("%")||e.indexOf("auto"))?e:e+"px"},e.prototype.insertImageLink=function(e){var n=t.createElement("a",{attrs:{href:e.item.url}});e.item.selectNode[0].parentElement.classList.contains("e-img-wrap")&&(e.item.selection.restore(),n.setAttribute("contenteditable","true")),n.appendChild(e.item.selectNode[0]),t.isNullOrUndefined(e.item.target)||n.setAttribute("target",e.item.target),Ro.Insert(this.parent.currentDocument,n,this.parent.editableElement),this.callBack(e)},e.prototype.openImageLink=function(e){document.defaultView.open(e.item.url,e.item.target),this.callBack(e)},e.prototype.removeImageLink=function(e){var n=e.item.selectParent[0];if(n.classList.contains("e-img-caption")){var i=t.select(".e-img-wrap",n),o=t.select(".e-img-inner",n),r=o.cloneNode(!0);t.detach(t.select("a",n)),t.detach(o),i.appendChild(e.item.insertElement),i.appendChild(r)}else t.detach(n),t.Browser.isIE&&e.item.selection.restore(),Ro.Insert(this.parent.currentDocument,e.item.insertElement,this.parent.editableElement);this.callBack(e)},e.prototype.editImageLink=function(e){e.item.selectNode[0].parentElement.href=e.item.url,t.isNullOrUndefined(e.item.target)?e.item.selectNode[0].parentElement.removeAttribute("target"):e.item.selectNode[0].parentElement.target=e.item.target,this.callBack(e)},e.prototype.removeImage=function(e){t.closest(e.item.selectNode[0],"a")?"A"!==e.item.selectNode[0].parentElement.nodeName||t.isNullOrUndefined(e.item.selectNode[0].parentElement.innerText)?t.detach(t.closest(e.item.selectNode[0],"a")):t.detach(e.item.selectNode[0]):t.isNullOrUndefined(t.closest(e.item.selectNode[0],"."+zo))?t.detach(e.item.selectNode[0]):t.detach(t.closest(e.item.selectNode[0],"."+zo)),this.callBack(e)},e.prototype.insertAltTextImage=function(e){e.item.selectNode[0].setAttribute("alt",e.item.altText),this.callBack(e)},e.prototype.imageDimension=function(e){var t=e.item.selectNode[0];t.style.height="",t.style.width="",t.width=e.item.width,t.height=e.item.height,this.callBack(e)},e.prototype.imageCaption=function(e){Ro.Insert(this.parent.currentDocument,e.item.insertElement,this.parent.editableElement),this.callBack(e)},e.prototype.imageJustifyLeft=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,"."+zo))||(t.removeClass([t.closest(n,"."+zo)],Ao),t.addClass([t.closest(n,"."+zo)],Ho)),"A"===n.parentElement.nodeName?(t.removeClass([n.parentElement],Ao),t.addClass([n.parentElement],Ho)):t.addClass([n],Ho),this.callBack(e)},e.prototype.imageJustifyCenter=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,"."+zo))||(t.removeClass([t.closest(n,"."+zo)],Ho),t.removeClass([t.closest(n,"."+zo)],Ao),t.addClass([t.closest(n,"."+zo)],Uo)),"A"===n.parentElement.nodeName?(t.removeClass([n.parentElement],Ho),t.removeClass([n.parentElement],Ao),t.addClass([n.parentElement],Uo),t.addClass([n],Uo)):t.addClass([n],Uo),this.callBack(e)},e.prototype.imageJustifyRight=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,"."+zo))||(t.removeClass([t.closest(n,"."+zo)],Ho),t.addClass([t.closest(n,"."+zo)],Ao)),"A"===n.parentElement.nodeName?(t.removeClass([n.parentElement],Ho),t.addClass([n.parentElement],Ao)):t.addClass([n],Ao),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,"."+zo))||(t.removeClass([t.closest(n,"."+zo)],jo),t.removeClass([t.closest(n,"."+zo)],Uo),t.removeClass([t.closest(n,"."+zo)],Ho),t.removeClass([t.closest(n,"."+zo)],Ao),t.addClass([t.closest(n,"."+zo)],qo)),this.callBack(e)},e.prototype.imageBreak=function(e){var n=e.item.selectNode[0];n.removeAttribute("class"),t.addClass([n],jo),t.addClass([n],"e-rte-image"),t.isNullOrUndefined(t.closest(n,"."+zo))||(t.removeClass([t.closest(n,"."+zo)],qo),t.removeClass([t.closest(n,"."+zo)],Uo),t.removeClass([t.closest(n,"."+zo)],Ho),t.removeClass([t.closest(n,"."+zo)],Ao),t.addClass([t.closest(n,"."+zo)],jo)),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}(),Fo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(ro,this.createTable,this),this.parent.observer.on(ao,this.insertRow,this),this.parent.observer.on(lo,this.insertColumn,this),this.parent.observer.on(co,this.deleteRow,this),this.parent.observer.on(po,this.deleteColumn,this),this.parent.observer.on(ho,this.removeTable,this),this.parent.observer.on(uo,this.tableHeader,this),this.parent.observer.on(mo,this.tableVerticalAlign,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)/e.item.columns,r=0;r<e.item.row;r++){for(var s=t.createElement("tr"),a=0;a<e.item.columns;a++){var l=t.createElement("td");l.appendChild(t.createElement("br")),l.style.width=o+"%",s.appendChild(l)}i.appendChild(s)}return n.appendChild(i),e.item.selection.restore(),Ro.Insert(this.parent.currentDocument,n,this.parent.editableElement),this.removeEmptyNode(),e.item.selection.setSelectionText(this.parent.currentDocument,n.querySelector("td"),n.querySelector("td"),0,0),n.querySelector("td").classList.add("e-cell-select"),e.callBack&&e.callBack({requestType:"Table",editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:[n]}),n},e.prototype.calculateStyleValue=function(e){return"string"==typeof e&&(e.indexOf("px")||e.indexOf("%")||e.indexOf("auto"))?e:e+"px"},e.prototype.removeEmptyNode=function(){for(var e=this.parent.editableElement.querySelectorAll("ul:empty, ol:empty"),n=0;n<e.length;n++)t.detach(e[n]);var i=this.parent.editableElement.querySelectorAll("li *:empty");for(n=0;n<i.length;n++)t.detach(i[n]),i.length===n+1&&(i=this.parent.editableElement.querySelectorAll("li *:empty"),n=-1);var o=this.parent.editableElement.querySelectorAll("li:empty");for(n=0;n<o.length;n++)t.detach(o[n])},e.prototype.insertAfter=function(e,t){t.parentNode.insertBefore(e,t.nextSibling)},e.prototype.insertRow=function(e){var n=e.item.selection.range.startContainer;if("th"!==(n=3===n.nodeType?n.parentNode:n).nodeName.toLowerCase()||"InsertRowBefore"!==e.item.subCommand){var i,o=t.closest(n,"tr");if("th"!==n.nodeName.toLowerCase()){i=t.closest(n,"tr").cloneNode(!0);var r=Array.prototype.slice.call(i.querySelectorAll("td"));Array.prototype.forEach.call(r,function(e){e.innerHTML="",e.appendChild(t.createElement("br")),e.removeAttribute("class")})}else{var s=o.childNodes;i=t.createElement("tr");for(var a=0;a<s.length;a++){var l=t.createElement("td");l.appendChild(t.createElement("br")),i.appendChild(l)}}"InsertRowBefore"===e.item.subCommand?o.parentElement.insertBefore(i,o):this.insertAfter(i,o),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;n="TD"!==(n=3===n.nodeType?n.parentNode:n).nodeName?t.closest(n,"td,th"):n;for(var i,o=t.closest(n,"tr"),r=t.closest(o,"table").rows,s=Array.prototype.slice.call(o.querySelectorAll("th,td")).indexOf(n),a=parseInt(e.item.width,10)/(o.querySelectorAll("td,th").length+1),l=0;l<t.closest(o,"table").querySelectorAll("th,td").length;l++)t.closest(o,"table").querySelectorAll("th,td")[l].style.width=a+"%";for(var d=0;d<r.length;d++){var c=(i=r[d].querySelectorAll("th,td")[s]).cloneNode(!0);c.innerHTML="",c.appendChild(t.createElement("br")),c.removeAttribute("class"),"InsertColumnLeft"===e.item.subCommand?i.parentElement.insertBefore(c,i):this.insertAfter(c,i)}e.item.selection.setSelectionText(this.parent.currentDocument,n,n,0,0),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.deleteColumn=function(e){var n=e.item.selection.range.startContainer,i=(n=3===n.nodeType?n.parentNode:n).cellIndex,o=t.closest(n,"table"),r=t.closest(n,"tr"),s=t.closest(r,"table").rows;if(1===r.querySelectorAll("th,td").length)e.item.selection.restore(),t.detach(t.closest(n.parentElement,"table"));else for(var a=0;a<s.length;a++)s[a].deleteCell(i),t.Browser.isIE&&(e.item.selection.setSelectionText(this.parent.currentDocument,o.querySelector("td"),o.querySelector("td"),0,0),o.querySelector("td, th").classList.add("e-cell-select"));if(e.callBack){var l=this.parent.nodeSelection.getRange(this.parent.currentDocument).startContainer;if("TD"!==l.nodeName){var d=this.parent.nodeSelection.getRange(this.parent.currentDocument).startOffset,c=l.children[d];this.parent.nodeSelection.setCursorPoint(this.parent.currentDocument,c,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,i=(n=3===n.nodeType?n.parentNode:n).parentNode.rowIndex,o=t.closest(n,"table");1===o.rows.length?(e.item.selection.restore(),t.detach(t.closest(n.parentElement,"table"))):("TH"===n.tagName?t.detach(o.querySelector("thead")):o.deleteRow(i),e.item.selection.setSelectionText(this.parent.currentDocument,o.querySelector("td"),o.querySelector("td"),0,0),o.querySelector("td, th").classList.add("e-cell-select")),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.removeTable=function(e){var n=e.item.selection.range.startContainer;n=3===n.nodeType?n.parentNode:n;var i=t.closest(n.parentElement,"table");i&&(e.item.selection.restore(),t.detach(i)),e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.tableHeader=function(e){var n=!1,i=e.item.selection.range.startContainer;i=3===i.nodeType?i.parentNode:i;var o=t.closest(i.parentElement,"table");if([].slice.call(o.childNodes).forEach(function(e){"THEAD"===e.nodeName&&(n=!0)}),o&&!n)for(var r=o.querySelector("tr").childElementCount,s=o.createTHead().insertRow(0),a=0;a<r;a++){var l=t.createElement("th");l.appendChild(t.createElement("br")),s.appendChild(l)}else o.deleteTHead();e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e.prototype.tableVerticalAlign=function(e){"AlignTop"===e.item.subCommand?e.item.tableCell.style.verticalAlign="top":"AlignMiddle"===e.item.subCommand?e.item.tableCell.style.verticalAlign="middle":e.item.tableCell.style.verticalAlign="bottom",e.callBack&&e.callBack({requestType:e.item.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),Qo=function(){function e(){}return e.prototype.getFormattedNode=function(e,t,n){var i=this.getFormatParent(e,t,n);return null!==i&&i!==n?i:null},e.prototype.getFormatParent=function(e,t,n){do{e=e.parentNode}while(e&&e!==n&&!this.isFormattedNode(e,t));return e},e.prototype.isFormattedNode=function(t,n){switch(n){case"bold":return e.isBold(t);case"italic":return e.isItalic(t);case"underline":return e.isUnderline(t);case"strikethrough":return e.isStrikethrough(t);case"superscript":return e.isSuperscript(t);case"subscript":return e.isSubscript(t);case"fontcolor":return this.isFontColor(t);case"fontname":return this.isFontName(t);case"fontsize":return this.isFontSize(t);case"backgroundcolor":return this.isBackgroundColor(t);default:return!1}},e.isBold=function(e){return-1!==["strong","b"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"bold"!==e.style.fontWeight)},e.isItalic=function(e){return-1!==["em","i"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"italic"!==e.style.fontStyle)},e.isUnderline=function(e){return-1!==["u"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"underline"!==e.style.textDecoration)},e.isStrikethrough=function(e){return-1!==["del","strike"].indexOf(e.nodeName.toLowerCase())||!(-1===this.inlineTags.indexOf(e.nodeName.toLowerCase())||!e.style||"line-through"!==e.style.textDecoration)},e.isSuperscript=function(e){return-1!==["sup"].indexOf(e.nodeName.toLowerCase())},e.isSubscript=function(e){return-1!==["sub"].indexOf(e.nodeName.toLowerCase())},e.prototype.isFontColor=function(t){var n=t.style&&t.style.color;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.prototype.isBackgroundColor=function(t){var n=t.style&&t.style.backgroundColor;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.prototype.isFontSize=function(t){var n=t.style&&t.style.fontSize;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.prototype.isFontName=function(t){var n=t.style&&t.style.fontFamily;return-1!==e.inlineTags.indexOf(t.nodeName.toLowerCase())&&null!==n&&""!==n&&void 0!==n},e.inlineTags=["a","abbr","acronym","b","bdo","big","cite","code","dfn","em","i","kbd","label","q","samp","small","span","strong","sub","sup","tt","u","var"],e}(),Wo=function(){function e(){}return e.applyFormat=function(e,t,n,i,o){if(["bold","italic","underline","strikethrough","superscript","subscript","uppercase","lowercase","fontcolor","fontname","fontsize","backgroundcolor"].indexOf(t)>-1){"backgroundcolor"===t&&""===i&&(i="transparent");var r=new No,s=new Do,a=new Qo,l=r.getRange(e),d=r.save(l,e),c=l.collapsed?r.getSelectionNodeCollection(l):r.getSelectionNodeCollectionBr(l),p=!1,h=!1,u=!1,m=["fontcolor","fontname","fontsize","backgroundcolor"].indexOf(t)>-1;if(l.collapsed)if(c.length>0)p=!0,l=s.GetCursorRange(e,l,c[0]);else if("td"!==l.startContainer.nodeName.toLowerCase()){var g=this.insertCursorNode(e,r,l,a,s,t,i,n);r.endContainer=r.startContainer=r.getNodeArray(g,!0),r.endOffset=r.startOffset=1}u=l.collapsed;for(var f=0;f<c.length;f++){var b=a.getFormattedNode(c[f],t,n);0===f&&null===b&&(h=!0),c[f]=null===b||h&&!m?this.insertFormat(e,c,f,b,u,h,m,l,s,t,i):this.removeFormat(c,f,b,u,h,m,l,s,t,i,r),r=this.applySelection(c,r,s,f,p)}O()&&D(n,o),d.restore()}},e.insertCursorNode=function(e,t,n,i,o,r,s,a){var l=t.getNodeCollection(n),d=l.length>0?i.getFormattedNode(l[0],r,a):null,c=null;return d?(c=l[0],Oo.unwrap(d)):c=this.getInsertNode(e,n,r,s).firstChild,c},e.removeFormat=function(e,n,i,o,r,s,a,l,d,c,p){var h=null;if(a.startContainer!==a.endContainer||0!==a.startOffset||a.endOffset!==a.startContainer.length){var u=[],m=e[n];do{u.push(p.getIndex(m)),m=m.parentNode}while(m&&m!==i);if("BR"!==e[n].nodeName&&(m=h=o&&i.textContent.length-1===a.startOffset?l.SplitNode(a,i,!0):l.GetSpliceNode(a,i)),o){for(var g=h;null!==g.firstChild&&3!==g.firstChild.nodeType;null)g=g.firstChild;g.innerHTML="&#8203;",e[n]=g.firstChild}else{for(;m&&m.childNodes.length>0&&u.length-1>=0&&m.childNodes.length>u[u.length-1];)m=m.childNodes[u[u.length-1]],u.pop();if("BR"!==e[n].nodeName)if(3!==m.nodeType||o&&""===m.nodeValue){var f=document.createElement("div");f.innerHTML="&#8203;",3!==m.nodeType?(m.insertBefore(f.firstChild,m.firstChild),e[n]=m.firstChild):(m.parentNode.insertBefore(f.firstChild,m),e[n]=m.previousSibling,m.parentNode.removeChild(m))}else e[n]=m}}var b;"backgroundcolor"===d&&(b=i.style.fontSize);var v;if("fontsize"===d){var y=t.closest(e[n].parentElement,"span[style*=background-color]");t.isNullOrUndefined(y)||(v=y.style.backgroundColor)}var C=Oo.unwrap(i);if(C.length>0&&s){for(var T=0;T<C.length;T++)C[T]=Oo.Wrap(C[T],this.GetFormatNode(d,c));var S=e[n].parentElement;if(t.isNullOrUndefined(b)||""===b||(S.style.fontSize=b),t.isNullOrUndefined(v)||""===v||(S.style.backgroundColor=v),"backgroundcolor"===d&&!t.isNullOrUndefined(b)&&""!==b&&S.parentElement.innerHTML===S.outerHTML){var E=S.parentElement;E.parentElement.insertBefore(S,E),t.detach(E)}if("fontsize"===d){for(var N=e[n].parentElement,k=e[n].parentElement;!t.isNullOrUndefined(k)&&"li"!==k.tagName.toLowerCase();)N=k=k.parentElement;t.isNullOrUndefined(N)||"li"!==N.tagName.toLowerCase()||N.textContent.trim()!==e[n].textContent.trim()||(N.style.fontSize=c)}}return e[n]},e.insertFormat=function(e,n,i,o,r,s,a,l,d,c,p){if(r)if("uppercase"!==c&&"lowercase"!==c){h=this.getInsertNode(e,l,c,p);n[i]=h.firstChild,d.position=1}else d.position=l.startOffset;else if(null===o&&s||a){if("BR"!==n[i].nodeName&&(n[i]=d.GetSpliceNode(l,n[i]),n[i].textContent=d.TrimLineBreak(n[i].textContent)),"uppercase"===c||"lowercase"===c)n[i].textContent="uppercase"===c?n[i].textContent.toLocaleUpperCase():n[i].textContent.toLocaleLowerCase();else if(!0!==a||""!==p){var h=this.GetFormatNode(c,p);if("fontsize"===c){for(var u=n[i].parentElement,m=n[i].parentElement;!t.isNullOrUndefined(m)&&"li"!==m.tagName.toLowerCase();)u=m=m.parentElement;t.isNullOrUndefined(u)||"li"!==u.tagName.toLowerCase()||u.textContent.trim()!==n[i].textContent.trim()||(u.style.fontSize=p),n[i]=this.applyStyles(n,i,h);var g=t.closest(n[i].parentElement,"span[style*=background-color]");t.isNullOrUndefined(g)||(n[i].parentElement.style.backgroundColor=g.style.backgroundColor)}else n[i]=this.applyStyles(n,i,h)}}else n[i]=d.GetSpliceNode(l,n[i]);return n[i]},e.applyStyles=function(e,t,n){return e[t]=t===e.length-1||"BR"===e[t].nodeName?Oo.Wrap(e[t],n):Oo.WrapBefore(e[t],n,!0),e[t]=this.getChildNode(e[t],n),e[t]},e.getInsertNode=function(e,n,i,o){var r=this.GetFormatNode(i,o);if(r.innerHTML="&#8203;",t.Browser.isIE){var s=e.createDocumentFragment();s.appendChild(r),n.insertNode(s)}else n.insertNode(r);return r},e.getChildNode=function(e,t){return void 0!==e&&null!==e||(t.innerHTML="&#8203;",e=t.firstChild),e},e.applySelection=function(e,t,n,i,o){return 1!==e.length||o?1===e.length&&o?(t.startContainer=t.getNodeArray(e[i],!0),t.endContainer=t.startContainer,t.startOffset=n.position,t.endOffset=n.position):0===i?(t.startContainer=t.getNodeArray(e[i],!0),t.startOffset=0):i===e.length-1&&(t.endContainer=t.getNodeArray(e[i],!1),t.endOffset=e[i].textContent.length):(t.startContainer=t.getNodeArray(e[i],!0),t.endContainer=t.startContainer,t.startOffset=0,t.endOffset=e[i].textContent.length),t},e.GetFormatNode=function(e,t){var n;switch(e){case"bold":return document.createElement("strong");case"italic":return document.createElement("em");case"underline":return n=document.createElement("span"),n.style.textDecoration="underline",n;case"strikethrough":return n=document.createElement("span"),n.style.textDecoration="line-through",n;case"superscript":return document.createElement("sup");case"subscript":return document.createElement("sub");case"fontcolor":return n=document.createElement("span"),n.style.color=t,n.style.textDecoration="inherit",n;case"fontname":return n=document.createElement("span"),n.style.fontFamily=t,n;case"fontsize":return n=document.createElement("span"),n.style.fontSize=t,n;default:return n=document.createElement("span"),n.style.backgroundColor=t,n}},e}(),Vo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Co,this.applySelection,this),this.parent.observer.on(Li,this.keyDownHandler,this)},e.prototype.keyDownHandler=function(e){e.event.ctrlKey&&["bold","italic","underline","strikethrough","superscript","subscript","uppercase","lowercase"].indexOf(e.event.action)>-1&&(e.event.preventDefault(),Wo.applyFormat(this.parent.currentDocument,e.event.action,this.parent.editableElement),this.callBack(e,e.event.action))},e.prototype.applySelection=function(e){Wo.applyFormat(this.parent.currentDocument,e.subCommand.toLocaleLowerCase(),this.parent.editableElement,e.value,e.selector),this.callBack(e,e.subCommand)},e.prototype.callBack=function(e,t){e.callBack&&e.callBack({requestType:t,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),Go=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(To,this.applyHtml,this)},e.prototype.applyHtml=function(e){Ro.Insert(this.parent.currentDocument,e.value,this.parent.editableElement,!0),"pasteCleanup"===e.subCommand?e.callBack({requestType:e.subCommand,editorMode:"HTML",elements:e.value}):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}(),Ko=function(){function e(){}return e.clear=function(e,t,n){var i=new No,o=new Do,r=i.getRange(e),s=r.collapsed,a=i.getInsertNodeCollection(r),l=i.save(r,e);if(!s){var d=o.GetSpliceNode(r,a[0]);if(1===a.length)i.setSelectionContents(e,d),r=i.getRange(e);else{for(var c=1,p=a[a.length-c];"BR"===a[a.length-c].nodeName;)c++,p=a[a.length-c];var h=o.GetSpliceNode(r,p);i.setSelectionText(e,d,h,0,3===h.nodeType?h.textContent.length:h.childNodes.length),r=i.getRange(e)}var u=i.getNodeCollection(r),m=u.slice();this.clearInlines(i.getSelectionNodes(m),m,i.getRange(e),o,t),this.reSelection(e,l,u),r=i.getRange(e);var g=(u=i.getNodeCollection(r)).slice();this.clearBlocks(e,g,t,o,i),O()&&D(t,n),this.reSelection(e,l,u)}},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),Oo.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()||Oo.Wrap(t[o],e.createElement("p"));var r=Oo.unwrap(t[o]);1===r.length&&"p"===r[0].parentNode.nodeName.toLocaleLowerCase()&&(Oo.Wrap(t[o],e.createElement("p")),Oo.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()?Oo.unwrap(r[s]):this.BLOCK_TAGS.indexOf(r[s].nodeName.toLocaleLowerCase())>-1&&"p"===r[s].nodeName.toLocaleLowerCase()&&(Oo.Wrap(r[s],e.createElement("p")),Oo.unwrap(r[s]))}else Oo.Wrap(t[o],e.createElement("p")),Oo.unwrap(t[o])},e.clearInlines=function(e,t,n,i,o){for(var r=0;r<e.length;r++)e[r].parentNode&&Qo.inlineTags.indexOf(e[r].parentNode.nodeName.toLocaleLowerCase())>-1&&(i.GetSpliceNode(n,e[r].parentNode),this.removeInlineParent(e[r].parentNode))},e.removeInlineParent=function(e){for(var t=Oo.unwrap(e),n=0;n<t.length;n++)1===t[n].parentNode.childNodes.length&&Qo.inlineTags.indexOf(t[n].parentNode.nodeName.toLocaleLowerCase())>-1?this.removeInlineParent(t[n].parentNode):Qo.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","table","tbody","td","tfoot","th","thead","tr","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}(),Yo=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Eo,this.applyClear,this),this.parent.observer.on(Li,this.onKeyDown,this)},e.prototype.onKeyDown=function(e){switch(e.event.action){case"clear-format":this.applyClear({subCommand:"ClearFormat",callBack:e.callBack}),e.event.preventDefault()}},e.prototype.applyClear=function(e){"ClearFormat"===e.subCommand&&(Ko.clear(this.parent.currentDocument,this.parent.editableElement,e.selector),e.callBack&&e.callBack({requestType:e.subCommand,event:e.event,editorMode:"HTML",range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)}))},e}(),Xo=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(xi,e,this),this.parent.observer.on(Li,this.keyDown,this),this.parent.observer.on(ki,this.onAction,this),this.parent.observer.on(Oi,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(xi,this.keyUp),this.parent.observer.off(Li,this.keyDown),this.parent.observer.off(ki,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;switch(t.action){case"undo":t.preventDefault(),this.undo(e);break;case"redo":t.preventDefault(),this.redo(e)}},e.prototype.keyUp=function(e){17===e.event.keyCode||e.event.ctrlKey||this.saveData(e)},e.prototype.saveData=function(e){var t=(new No).getRange(this.parent.currentDocument),n=(new No).save(t,this.parent.currentDocument),i={text:this.parent.editableElement.innerHTML,range:n};this.undoRedoStack.length>=this.steps&&(this.undoRedoStack=this.undoRedoStack.slice(0,this.steps+1)),this.undoRedoStack.length>1&&this.undoRedoStack[this.undoRedoStack.length-1].range.range.collapsed===t.collapsed&&this.undoRedoStack[this.undoRedoStack.length-1].range.startOffset===n.range.startOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.endOffset===n.range.endOffset&&this.undoRedoStack[this.undoRedoStack.length-1].range.range.startContainer===n.range.startContainer&&this.undoRedoStack[this.undoRedoStack.length-1].text.trim()===i.text.trim()||(this.undoRedoStack.push(i),this.steps=this.undoRedoStack.length-1,this.steps>this.undoRedoSteps&&(this.undoRedoStack.shift(),this.steps--),e&&e.callBack&&e.callBack())},e.prototype.undo=function(e){if(this.steps>0){var t=this.undoRedoStack[this.steps-1].range,n=this.undoRedoStack[this.steps-1].text;this.parent.editableElement.innerHTML=n,this.parent.editableElement.focus(),O()&&D(this.parent.editableElement,e.selector),t.restore(),this.steps--,e.callBack&&e.callBack({requestType:"Undo",editorMode:"HTML",range:t,elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument),event:e.event})}},e.prototype.redo=function(e){if(null!=this.undoRedoStack[this.steps+1]){var t=this.undoRedoStack[this.steps+1].range;this.parent.editableElement.innerHTML=this.undoRedoStack[this.steps+1].text,this.parent.editableElement.focus(),O()&&D(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}(),Jo=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.removableElements=["o:p","style"],this.listContents=[],this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(Mi,this.wordCleanup,this)},e.prototype.wordCleanup=function(e){var n=e.allowedStylePropertiesArray,i=[],o=e.args.clipboardData.getData("text/HTML"),r=e.args.clipboardData.getData("text/rtf"),s=t.createElement("p");s.setAttribute("id","MSWord-Content"),s.innerHTML=o;/class='?Mso|style='[^ ]*\bmso-/i.test(o)||/class="?Mso|style="[^ ]*\bmso-/i.test(o)||/(class="?Mso|class='?Mso|class="?Xl|class='?Xl|class=Xl|style="[^"]*\bmso-|style='[^']*\bmso-|w:WordDocument)/gi.test(o)?(this.imageConversion(s,r),o=o.replace(/<img[^>]+>/i,""),i=this.cleanUp(s,i),t.isNullOrUndefined(i[0])||"UL"===i[0].parentElement.tagName||"OL"===i[0].parentElement.tagName||this.listConverter(i),this.styleCorrection(s,n),this.removingComments(s),this.removeUnwantedElements(s),this.removeEmptyElements(s),this.breakLineAddition(s),this.removeClassName(s),e.callBack(s.innerHTML)):e.callBack(s.innerHTML)},e.prototype.imageConversion=function(e,t){this.checkVShape(e);var n=e.querySelectorAll("img"),i=[],o=[],r=[];if(n.length>0){for(var s=0;s<n.length;s++)i.push(n[s].getAttribute("src")),r.push(n[s].getAttribute("src").split("/")[n[s].getAttribute("src").split("/").length-1].split(".")[0]);var a=this.hexConversion(t);for(s=0;s<a.length;s++)o.push(this.convertToBase64(a[s]));for(s=0;s<n.length;s++)n[s].setAttribute("src",o[s]),n[s].setAttribute("id","msWordImg-"+r[s])}},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(var 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(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){for(var t,n=/\{\\pict[\s\S]+?\\bliptag\-?\d+(\\blipupi\-?\d+)?(\{\\\*\\blipuid\s?[\da-fA-F]+)?[\s\}]*?/,i=new RegExp("(?:("+n.source+"))([\\da-fA-F\\s]+)\\}","g"),o=e.match(i),r=[],s=0;s<o.length;s++)if(n.test(o[s])){if(-1!==o[s].indexOf("\\pngblip"))t="image/png";else{if(-1===o[s].indexOf("\\jpegblip"))continue;t="image/jpeg"}r.push({hex:t?o[s].replace(n,"").replace(/[^\da-fA-F]/g,""):null,type:t})}return r},e.prototype.removeClassName=function(e){for(var t=e.querySelectorAll("*[class]"),n=0;n<t.length;n++)t[n].removeAttribute("class")},e.prototype.breakLineAddition=function(e){for(var n=e.querySelectorAll("*"),i=0;i<n.length;i++)if(0===n[i].children.length&&"&nbsp;"===n[i].innerHTML&&"&nbsp;"===n[i].innerHTML&&!n[i].closest("li")){var o=this.findDetachElem(n[i]),r=t.createElement("br");t.isNullOrUndefined(o.parentElement)||(o.parentElement.insertBefore(r,o),t.detach(o))}},e.prototype.findDetachElem=function(e){return t.isNullOrUndefined(e.parentElement)||""!==e.parentElement.textContent.trim()||"TD"===e.parentElement.tagName?e:this.findDetachElem(e.parentElement)},e.prototype.removeUnwantedElements=function(e){for(var t=e.innerHTML,n=0;n<this.removableElements.length;n++){var i=new RegExp("<"+this.removableElements[n]+">","g"),o=new RegExp("</"+this.removableElements[n]+">","g");t=(t=t.replace(i,"")).replace(o,"")}e.innerHTML=t,e.querySelectorAll(":empty")},e.prototype.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:""===e.parentElement.textContent.trim()&&"MSWord-Content"!==e.parentElement.getAttribute("id")&&t.isNullOrUndefined(e.parentElement.querySelector("img"))?this.findDetachEmptyElem(e.parentElement):e},e.prototype.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++)if("IMG"!==n[i].tagName&&"BR"!==n[i].tagName&&"IFRAME"!==n[i].tagName&&"TD"!==n[i].tagName){var o=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(o)||t.detach(o)}},e.prototype.styleCorrection=function(e,n){var i=e.querySelectorAll("style");if(i.length>0){var o=i[0].innerHTML.match(/[\S ]+\s+{[\s\S]+?}/gi),r=t.isNullOrUndefined(o)?null:this.findStyleObject(o),s=Object.keys(r),a=s.map(function(e){return r[e]});a=this.removeUnwantedStyle(a,n),this.filterStyles(e,n);for(var l=void 0,d=0;d<s.length;d++){if(""===s[d].split(".")[0])l=e.getElementsByClassName(s[d].split(".")[1]);else{if(1===s[d].split(".").length&&s[d].split(".")[0].indexOf("@")>=0)continue;l=1===s[d].split(".").length&&s[d].split(".")[0].indexOf("@")<0?e.getElementsByTagName(s[d]):e.querySelectorAll(s[d])}for(var c=0;c<l.length;c++){var p=l[c].getAttribute("style");if(t.isNullOrUndefined(p)||""===p.trim())l[c].setAttribute("style",a[d]);else{for(var h=a[d].split(";"),u=0;u<h.length;u++)p.indexOf(h[u].split(":")[0])>=0&&(h.splice(u,1),u--);a[d]=h.join(";")+";";var m=a[d]+p;l[c].setAttribute("style",m)}}}}},e.prototype.filterStyles=function(e,t){for(var n=e.querySelectorAll("*[style]"),i=0;i<n.length;i++){for(var o=n[i].getAttribute("style").split(";"),r="",s=0;s<o.length;s++)t.indexOf(o[s].split(":")[0].trim())>=0&&(r+=o[s]+";");n[i].setAttribute("style",r)}},e.prototype.removeUnwantedStyle=function(e,t){for(var n=0;n<e.length;n++){var i=e[n].split(";");e[n]="";for(var o=0;o<i.length;o++)t.indexOf(i[o].split(":")[0])>=0&&(e[n]+=i[o]+";")}return e},e.prototype.findStyleObject=function(e){for(var t={},n=0;n<e.length;n++){var i=e[n],o=i.replace(/([\S ]+\s+){[\s\S]+?}/gi,"$1"),r=i.replace(/[\S ]+\s+{([\s\S]+?)}/gi,"$1");o=o.replace(/^[\s]|[\s]$/gm,""),r=r.replace(/^[\s]|[\s]$/gm,""),o=o.replace(/\n|\r|\n\r/g,""),r=r.replace(/\n|\r|\n\r/g,"");for(var s=o.split(", "),a=0;a<s.length;a++)t[s[a]]=r}return t},e.prototype.removingComments=function(e){var t=e.innerHTML;t=t.replace(/<!--[\s\S]*?-->/g,""),e.innerHTML=t},e.prototype.cleanUp=function(e,t){for(var n,i=[],o=e.querySelectorAll("*"),r=0;r<o.length;r++)-1===this.ignorableNodes.indexOf(o[r].nodeName)||3===o[r].nodeType&&""===o[r].textContent.trim()?i.push(o[r]):(o[r].className&&-1!==o[r].className.toLowerCase().indexOf("msolistparagraph")&&t.push(o[r]),!n||-1===this.blockNode.indexOf(o[r].nodeName.toLowerCase())||o[r].className&&-1!==o[r].className.toLowerCase().indexOf("msolistparagraph")||t.push(null),-1!==this.blockNode.indexOf(o[r].nodeName.toLowerCase())&&(n=!(!o[r].className||-1===o[r].className.toLowerCase().indexOf("msolistparagraph"))));return t.length&&null!==t[t.length-1]&&t.push(null),t},e.prototype.listConverter=function(e){for(var n,i,o=[],r=[],s="",a=0;a<e.length;a++)if(null!==e[a]){n=(s=e[a].getAttribute("style"))&&-1!==s.indexOf("level")?parseInt(s.charAt(s.indexOf("level")+5),null):1,this.listContents=[],this.getListContent(e[a]);var l=void 0;if(!t.isNullOrUndefined(this.listContents[0])){l=this.listContents[0].trim().length>1?"ol":"ul";for(var d=[],c=1;c<this.listContents.length;c++)d.push(this.listContents[c]);r.push({listType:l,content:d,nestedLevel:n})}}else o.push({content:this.makeConversion(r),node:e[a-1]}),r=[];for(i=e.shift();i;){for(var p=[],h=0;h<o.length;h++)if(o[h].node===i){for(var u=0;u<o[h].content.childNodes.length;u++)p.push(o[h].content.childNodes[u]);for(u=0;u<p.length;u++)i.parentElement.insertBefore(p[u],i);break}i.remove(),(i=e.shift())||(i=e.shift())}},e.prototype.makeConversion=function(e){for(var n,i,o,r=t.createElement("div"),s=1,a=0,l=0;l<e.length;l++){var d=t.createElement("p");if(d.innerHTML=e[l].content.join(" "),1===e[l].nestedLevel&&0===a&&e[l].content)r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);else if(e[l].nestedLevel===s)i.parentElement.tagName.toLowerCase()===e[l].listType?(i.parentElement.appendChild(i=t.createElement("li")),i.appendChild(d)):(n=t.createElement(e[l].listType),i.parentElement.parentElement.appendChild(n),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()));else if(e[l].nestedLevel>s)if(t.isNullOrUndefined(i))r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);else{for(var c=0;c<e[l].nestedLevel-s;c++)i.appendChild(n=t.createElement(e[l].listType)),i=t.createElement("li",{styles:"list-style-type: none;"}),n.appendChild(i);i.appendChild(d),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel),n.childNodes[0].style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel)}else if(1===e[l].nestedLevel)r.lastChild.tagName.toLowerCase()===e[l].listType?n=r.lastChild:r.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);else for(o=i;o.parentElement;)if((o=o.parentElement).attributes.getNamedItem("level")){if(parseInt(o.attributes.getNamedItem("level").textContent,null)===e[l].nestedLevel){(i=t.createElement("li")).appendChild(d),o.appendChild(i);break}if(e[l].nestedLevel>parseInt(o.attributes.getNamedItem("level").textContent,null)){o.appendChild(n=t.createElement(e[l].listType)),(i=t.createElement("li")).appendChild(d),n.appendChild(i),n.setAttribute("level",e[l].nestedLevel.toString()),n.style.listStyle=this.getListStyle(e[l].listType,e[l].nestedLevel);break}}s=e[l].nestedLevel,a++}return r},e.prototype.getListStyle=function(e,t){return t=t>0?t-1:t,"ol"===e?t<this.olData.length?this.olData[t]:this.olData[0]:t<this.ulData.length?this.ulData[t]:this.ulData[0]},e.prototype.getListContent=function(e){var n="";""!==e.firstElementChild.textContent.trim()||t.isNullOrUndefined(e.firstElementChild.firstElementChild)||"IMG"!==e.firstElementChild.firstElementChild.nodeName?(n=e.firstElementChild.textContent.trim(),this.listContents.push(n)):(n=e.innerHTML.trim(),this.listContents.push(""),this.listContents.push(n)),t.detach(e.firstElementChild),this.listContents.push(e.innerHTML)},e}(),$o=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.observer.on(So,this.insertText,this)},e.prototype.insertText=function(e){var t=document.createTextNode(e.value);Ro.Insert(this.parent.currentDocument,t),e.callBack&&e.callBack({requestType:e.subCommand,editorMode:"HTML",event:e.event,range:this.parent.nodeSelection.getRange(this.parent.currentDocument),elements:this.parent.nodeSelection.getSelectedNodes(this.parent.currentDocument)})},e}(),Zo=function(){function e(e){this.currentDocument=e.document,this.editableElement=e.editableElement,this.nodeSelection=new No,this.domNode=new wo(this.editableElement,this.currentDocument),this.observer=new t.Observer(this),this.listObj=new xo(this),this.formatObj=new Mo(this),this.alignmentObj=new Io(this),this.indentsObj=new Po(this),this.linkObj=new Bo(this),this.imgObj=new _o(this),this.selectionObj=new Vo(this),this.inserthtmlObj=new Go(this),this.insertTextObj=new $o(this),this.clearObj=new Yo(this),this.tableObj=new Fo(this),this.undoRedoManager=new Xo(this,e.options),this.msWordPaste=new Jo(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(Di,this.onPropertyChanged,this),this.observer.on(Ri,this.onWordPaste,this)},e.prototype.onWordPaste=function(e){this.observer.notify(Mi,e)},e.prototype.onPropertyChanged=function(e){this.observer.notify(Oi,e)},e.prototype.editorKeyDown=function(e){this.observer.notify(Li,e)},e.prototype.editorKeyUp=function(e){this.observer.notify(xi,e)},e.prototype.execCommand=function(e,t,n,i,o,r,s){switch(e.toLocaleLowerCase()){case"lists":this.observer.notify("list-type",{subCommand:t,event:n,callBack:i,selector:s});break;case"formats":this.observer.notify(wi,{subCommand:t,event:n,callBack:i,selector:s,exeValue:r});break;case"alignments":this.observer.notify(go,{subCommand:t,event:n,callBack:i,selector:s,value:r});break;case"indents":this.observer.notify(fo,{subCommand:t,event:n,callBack:i,selector:s});break;case"links":this.observer.notify(so,{command:e,value:t,item:r,event:n,callBack:i});break;case"images":this.observer.notify(oo,{command:e,value:t,item:r,event:n,callBack:i,selector:s});break;case"table":switch(t.toString().toLocaleLowerCase()){case"createtable":this.observer.notify(ro,{item:r,event:n,callBack:i});break;case"insertrowbefore":case"insertrowafter":this.observer.notify(ao,{item:r,event:n,callBack:i});break;case"insertcolumnleft":case"insertcolumnright":this.observer.notify(lo,{item:r,event:n,callBack:i});break;case"deleterow":this.observer.notify(co,{item:r,event:n,callBack:i});break;case"deletecolumn":this.observer.notify(po,{item:r,event:n,callBack:i});break;case"tableremove":this.observer.notify(ho,{item:r,event:n,callBack:i});break;case"tableheader":this.observer.notify(uo,{item:r,event:n,callBack:i});break;case"aligntop":case"alignmiddle":case"alignbottom":this.observer.notify(mo,{item:r,event:n,callBack:i})}break;case"font":case"style":case"effects":case"casing":this.observer.notify(Co,{subCommand:t,event:n,callBack:i,value:o,selector:s});break;case"inserthtml":this.observer.notify(To,{subCommand:t,callBack:i,value:o});break;case"inserttext":this.observer.notify(So,{subCommand:t,callBack:i,value:o});break;case"clear":this.observer.notify(Eo,{subCommand:t,event:n,callBack:i,selector:s});break;case"actions":this.observer.notify(ki,{subCommand:t,event:n,callBack:i,selector:s})}},e}(),er=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)}}(),tr=function(e){function n(n){var i=e.call(this)||this;return i.initialize(),t.extend(i,i,n,!0),i.currentDocument&&i.element&&i.updateFormatter(i.element,i.currentDocument,n.options),i}return er(n,e),n.prototype.initialize=function(){this.keyConfig=Wi},n.prototype.updateFormatter=function(e,t,n){e&&t&&(this.editorManager=new Zo({document:t,editableElement:e,options:n}))},n}(Bi),nr={bold:!1,italic:!1,subscript:!1,superscript:!1,strikethrough:!1,orderedlist:!1,unorderedlist:!1,underline:!1,alignments:null,backgroundcolor:null,fontcolor:null,fontname:null,fontsize:null,formats:null,createlink:!1,insertcode:!1},ir=function(){function e(){}return e.get=function(e,t,n,i,o,r){for(var s=JSON.parse(JSON.stringify(nr)),a=JSON.parse(JSON.stringify(nr)),l=new No,d=r?[r]:l.getNodeCollection(l.getRange(e)),c=d.length,p=0;p<d.length;p++)("BR"!==d[p].nodeName&&3!==d[p].nodeType||c>1&&3===d[p].nodeType&&""===d[p].textContent.trim())&&(d.splice(p,1),p--);for(p=0;p<d.length;p++)s=this.getFormatParent(e,s,d[p],t,n,i,o),(0===p&&s.bold||!s.bold)&&(a.bold=s.bold),(0===p&&s.insertcode||!s.insertcode)&&(a.insertcode=s.insertcode),(0===p&&s.italic||!s.italic)&&(a.italic=s.italic),(0===p&&s.underline||!s.underline)&&(a.underline=s.underline),(0===p&&s.strikethrough||!s.strikethrough)&&(a.strikethrough=s.strikethrough),(0===p&&s.superscript||!s.superscript)&&(a.superscript=s.superscript),(0===p&&s.subscript||!s.subscript)&&(a.subscript=s.subscript),(0===p&&s.fontcolor||!s.fontcolor)&&(a.fontcolor=s.fontcolor),(0===p&&s.fontname||!s.fontname)&&(a.fontname=s.fontname),(0===p&&s.fontsize||!s.fontsize)&&(a.fontsize=s.fontsize),(0===p&&s.backgroundcolor||!s.backgroundcolor)&&(a.backgroundcolor=s.backgroundcolor),(0===p&&s.orderedlist||!s.orderedlist)&&(a.orderedlist=s.orderedlist),(0===p&&s.unorderedlist||!s.unorderedlist)&&(a.unorderedlist=s.unorderedlist),(0===p&&s.alignments||!s.alignments)&&(a.alignments=s.alignments),(0===p&&s.formats||!s.formats)&&(a.formats=s.formats),(0===p&&s.createlink||!s.createlink)&&(a.createlink=s.createlink),s=JSON.parse(JSON.stringify(nr));return a},e.getFormatParent=function(e,t,n,i,o,r,s){if(i.contains(n)||3===n.nodeType&&3!==i.nodeType&&i.contains(n.parentNode))do{t=this.isFormattedNode(e,t,n,o,r,s),n=n.parentNode}while(n&&n!==i);return t},e.isFormattedNode=function(e,t,n,i,o,r){return t.bold||(t.bold=Qo.isBold(n)),t.italic||(t.italic=Qo.isItalic(n)),t.underline||(t.underline=Qo.isUnderline(n)),t.strikethrough||(t.strikethrough=Qo.isStrikethrough(n)),t.superscript||(t.superscript=Qo.isSuperscript(n)),t.subscript||(t.subscript=Qo.isSubscript(n)),t.fontcolor||(t.fontcolor=this.isFontColor(e,n)),t.fontname||(t.fontname=this.isFontName(e,n,r)),t.fontsize||(t.fontsize=this.isFontSize(n,o)),t.backgroundcolor||(t.backgroundcolor=this.isBackgroundColor(n)),t.orderedlist||(t.orderedlist=this.isOrderedList(n)),t.unorderedlist||(t.unorderedlist=this.isUnorderedList(n)),t.alignments||(t.alignments=this.isAlignment(n)),t.formats||(t.formats=this.isFormats(n,i),"pre"===t.formats&&(t.insertcode=!0)),t.createlink||(t.createlink=this.isLink(n)),t},e.isFontColor=function(e,t){var n=t.style&&t.style.color;return null!==n&&void 0!==n&&""!==n||3===t.nodeType||(n=this.getComputedStyle(e,t,"color")),null!==n&&""!==n&&void 0!==n?n:null},e.isLink=function(e){return"a"===e.nodeName.toLocaleLowerCase()},e.isBackgroundColor=function(e){var t=e.style&&e.style.backgroundColor;return null!==t&&""!==t&&void 0!==t?t:null},e.isFontSize=function(e,t){var n=e.style&&e.style.fontSize;return null!==n&&""!==n&&void 0!==n&&(null===t||void 0===t||t.indexOf(n)>-1)?n:null},e.isFontName=function(e,t,n){var i=t.style&&t.style.fontFamily;null!==i&&void 0!==i&&""!==i||3===t.nodeType||(i=this.getComputedStyle(e,t,"font-family"));var o=null;return null!==i&&""!==i&&void 0!==i&&(null===n||void 0===n||n.filter(function(e,t){var n=new RegExp(i,"i");(e.replace(/"/g,"").replace(/ /g,"")===i.replace(/"/g,"").replace(/ /g,"")||e.search(n)>-1)&&(o=t)})&&null!==o)?null!==o?n[o]:i.replace(/"/g,""):null},e.isOrderedList=function(e){return"ol"===e.nodeName.toLocaleLowerCase()},e.isUnorderedList=function(e){return"ul"===e.nodeName.toLocaleLowerCase()},e.isAlignment=function(e){var t=e.style&&e.style.textAlign;return"left"===t?"justifyleft":"center"===t?"justifycenter":"right"===t?"justifyright":"justify"===t?"justifyfull":null},e.isFormats=function(e,t){return(void 0===t||null===t)&&bo.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}(),or=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on(U,this.onRefreshHandler,this),this.parent.on(A,this.removeEventListener,this)},e.prototype.removeEventListener=function(){this.parent.off(U,this.onRefreshHandler)},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=ir.get(this.parent.contentModule.getDocument(),this.parent.contentModule.getEditPanel(),i,t,n,e.documentNode),this.parent.notify(z,this.toolbarStatus)}},e}(),rr=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=E(e.value,e);this.editableElement=this.parent.createElement("div",{className:"e-content",id:this.parent.getID()+"_rte-edit-view",attrs:{contenteditable:"true"},innerHTML:n}),t.appendChild(this.editableElement),this.setPanel(t),e.element.appendChild(t)},e.prototype.getPanel=function(){return this.contentPanel},e.prototype.getEditPanel=function(){return this.editableElement},e.prototype.getText=function(){return this.getEditPanel().textContent},e.prototype.setPanel=function(e){this.contentPanel=e},e.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},e}(),sr=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)}}(),ar=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return sr(n,e),n.prototype.renderPanel=function(){var e=this.parent,t="\n<!DOCTYPE html> \n <html>\n <head>\n <meta charset='utf-8' /> \n <style>\n @charset \"UTF-8\";\n body {\n font-family: \"Roboto\", sans-serif;\n font-size: 14px;\n }\n html, body{height: 100%;margin: 0;}\n body.e-cursor{cursor:default}\n span.e-selected-node\t{background-color: #939393;color: white;}\n span.e-selected-node.e-highlight {background-color: #1d9dd8;}\n body{color:#333;word-wrap:break-word;padding: 8px;box-sizing: border-box;}\n .e-rte-image {border: 0;cursor: pointer;display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-img-caption { display: inline-block; float: none; margin: 5px auto; max-width: 100%;position: relative;}\n .e-img-caption.e-caption-inline {display: inline-block;float: none;margin: 5px auto;margin-left: 5px;margin-right: 5px;max-width: calc(100% - (2 * 5px));position: relativetext-align: center;vertical-align: bottom;}\n .e-img-inner {box-sizing: border-box;display: block;font-size: 16px;font-weight: initial;margin: auto;opacity: .9;text-align: center;width: 100%;}\n .e-img-wrap {display: inline-block;margin: auto;padding: 0;text-align: center;width: 100%;}\n .e-imgleft {float: left;margin: 0 5px 0 0;text-align: left;}\n .e-imgright {float: right;margin: 0 0 0 5px;text-align: right;}\n .e-imgcenter {cursor: pointer;display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-control img:not(.e-resize) {border: 2px solid transparent; z-index: 1000}\n .e-imginline {display: inline-block;float: none;margin-left: 5px;margin-right: 5px;max-width: calc(100% - (2 * 5px));vertical-align: bottom;}\n .e-imgbreak {border: 0;cursor: pointer;display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-img-focus:not(.e-resize) {border: solid 2px #4a90e2;}\n img::selection { background: transparent;color: transparent;}\n span.e-rte-imageboxmark { width: 10px; height: 10px; position: absolute; display: block; 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; border-radius: 15px; height: 20px; width: 20px; }\n .e-mob-rte.e-mob-span span.e-rte-imageboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-rte-content .e-content img.e-resize { z-index: 1000; }\n .e-img-caption .e-img-inner { outline: 0; }\n .e-img-caption .e-rte-image.e-imgright, .e-img-caption .e-rte-image.e-imgleft { float: none; margin: 0;}\n body{box-sizing: border-box;min-height: 100px;outline: 0 solid transparent;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: 1em;font-weight: 400;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;font-size: inherit;line-height: inherit;margin: 0 0 10px;overflow: visible;padding: 0;white-space: pre-wrap;word-break: inherit;word-wrap: break-word;}\n strong, b{font-weight: 700;}\n a{text-decoration: none;user-select: auto;}\n a:hover{text-decoration: underline;};\n p:last-child, pre:last-child, blockquote:last-child{margin-bottom: 0;}\n h3+h4, h4+h5, h5+h6{margin-top: 00.6em;}\n ul:last-child{margin-bottom: 0;}\n table { border-collapse: collapse; empty-cells: show;}\n table td,table th {border: 1px solid #BDBDBD; height: 20px; vertical-align: middle;}\n table.e-alternate-border tbody tr:nth-child(2n) {background-color: #F5F5F5;}\n table th {background-color: #E0E0E0;}\n table.e-dashed-border td,table.e-dashed-border th { border: 1px dashed #BDBDBD} \n table .e-cell-select {border: 1px double #4a90e2;}\n span.e-table-box { cursor: nwse-resize; display: block; height: 10px; position: absolute; width: 10px; }\n span.e-table-box.e-rmob {height: 14px;width: 14px;}\n .e-row-resize, .e-column-resize { background-color: transparent; background-repeat: repeat; 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; border-top: 6px solid transparent; content: ''; display: block; height: 0; position: absolute; right: 4px; top: 4px; width: 20px; }\n .e-reicon::after { border-bottom: 6px solid transparent; border-left: 6px solid; border-top: 6px solid transparent; content: ''; display: block; height: 0; left: 4px; position: absolute; top: 4px; width: 20px; z-index: 3; }\n .e-row-helper.e-reicon::after { top: 10px; transform: rotate(90deg); }\n .e-row-helper.e-reicon::before { left: 4px; top: -20px; transform: rotate(90deg); }\n span.e-table-box { background-color: #ffffff; border: 1px solid #BDBDBD; }\n span.e-table-box.e-rbox-select { background-color: #BDBDBD; border: 1px solid #BDBDBD; }\n .e-table-rhelper { background-color: #4a90e2;}\n .e-rtl { direction: rtl; }\n </style>\n </head>"+('<body spellcheck="false" autocorrect="off" contenteditable="true">'+E(e.value,e)+"</body></html>"),n=this.parent.createElement("iframe",{innerHTML:t,id:this.parent.getID()+"_rte-view",className:"e-rte-content",styles:"display:block;"});this.setPanel(n),e.element.appendChild(n),n.contentDocument.body.id=this.parent.getID()+"_rte-edit-view",n.contentDocument.body.setAttribute("aria-owns",this.parent.getID()),n.contentDocument.open(),t=this.setThemeColor(t,{color:"#333"}),n.contentDocument.write(t),n.contentDocument.close(),e.enableRtl&&this.contentPanel.contentDocument.body.setAttribute("class","e-rtl")},n.prototype.setThemeColor=function(e,t){var n=getComputedStyle(this.parent.element,".e-richtexteditor").getPropertyValue("color");return e.replace(t.color,n)},n.prototype.getEditPanel=function(){return t.isNullOrUndefined(this.contentPanel.contentDocument)?this.parent.inputElement:this.contentPanel.contentDocument.body},n.prototype.getDocument=function(){return this.getEditPanel().ownerDocument},n}(rr),lr=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.on(dt,this.enableXhtmlValidation,this)},e.prototype.enableXhtmlValidation=function(){this.parent.enableXhtml&&(this.clean(this.parent.inputElement),this.AddRootElement(),this.ImageTags(),this.removeTags(),this.RemoveUnsupported(),this.parent.setProperties({value:this.parent.inputElement.innerHTML},!0))},e.prototype.AddRootElement=function(){if(1===this.parent.inputElement.childNodes.length&&"DIV"!==this.parent.inputElement.firstChild.nodeName||this.parent.inputElement.childNodes.length>1){for(var e=this.parent.createElement("div");this.parent.inputElement.childNodes.length>0;)e.appendChild(this.parent.inputElement.childNodes[0]);this.parent.inputElement.appendChild(e)}},e.prototype.clean=function(e){for(var t=0;t<e.childNodes.length;t++){var n=e.childNodes[t];8===n.nodeType||"V:IMAGE"===n.nodeName?(e.removeChild(n),t--):1===n.nodeType&&this.clean(n)}return this.parent.inputElement.innerHTML},e.prototype.ImageTags=function(){for(var e=this.parent.inputElement.querySelectorAll("IMG"),t=e.length-1;t>=0;t--)if(!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.parent.inputElement.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.parent.inputElement.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])}var o=this.parent.inputElement.querySelectorAll("strong");for(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])}var s=["language","role","target","contenteditable","cellspacing","cellpadding","border","valign","colspan"];for(n=0;n<=s.length;n++)this.RemoveAttributeByName(s[n])},e.prototype.RemoveAttributeByName=function(e){if(null!==this.parent.inputElement.firstChild&&3!==this.parent.inputElement.firstChild.nodeType)for(var t=0;t<this.parent.inputElement.childNodes.length;t++){var n=this.parent.inputElement.childNodes[t];if(3!==n.nodeType&&"TABLE"!==n.nodeName&&"TBODY"!==n.nodeName&&"THEAD"!==n.nodeName&&"TH"!==n.nodeName&&"TR"!==n.nodeName&&"TD"!==n.nodeName&&(n.hasAttribute(e)&&n.removeAttribute(e),n.hasChildNodes()))for(var i=0;i<n.childNodes.length;i++){var o=n.childNodes[i];if(3!==o.nodeType&&"TABLE"!==o.nodeName&&"TBODY"!==o.nodeName&&"THEAD"!==o.nodeName&&"TH"!==o.nodeName&&"TR"!==o.nodeName&&"TD"!==o.nodeName&&o.hasAttribute(e)&&o.removeAttribute(e),o.hasChildNodes())for(var r=0;r<o.childNodes.length;r++)3!==o.childNodes[r].nodeType&&"TABLE"!==o.childNodes[r].nodeName&&"TBODY"!==o.childNodes[r].nodeName&&"THEAD"!==o.childNodes[r].nodeName&&"TH"!==o.childNodes[r].nodeName&&"TR"!==o.childNodes[r].nodeName&&"TD"!==o.childNodes[r].nodeName&&o.childNodes[r].hasAttribute(e)&&o.childNodes[r].removeAttribute(e)}}},e}(),dr=function(){function n(e,t){this.rangeCollection=[],this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.xhtmlValidation=new lr(e),this.addEventListener()}return n.prototype.destroy=function(){this.removeEventListener()},n.prototype.sanitizeHelper=function(e){return e=L(e,this.parent)},n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.nodeSelectionObj=new No,this.colorPickerModule=new bi(this.parent,this.locator),this.parent.on(R,this.instantiateRenderer,this),this.parent.on(F,this.onToolbarClick,this),this.parent.on(K,this.onKeyDown,this),this.parent.on(_,this.renderColorPicker,this),this.parent.on(I,this.render,this),this.parent.on(V,this.onPropertyChanged,this),this.parent.on(A,this.destroy,this),this.parent.on(Ue,this.selectAll,this),this.parent.on(je,this.selectRange,this),this.parent.on(ze,this.getSelectedHtml,this),this.parent.on(we,this.onSelectionSave,this),this.parent.on(Le,this.onSelectionRestore,this),this.parent.on(Ke,this.updateReadOnly,this),this.parent.on(_e,this.onPaste,this))},n.prototype.updateReadOnly=function(){this.parent.readonly?(t.attributes(this.parent.contentModule.getEditPanel(),{contenteditable:"false"}),t.addClass([this.parent.element],mn)):(t.attributes(this.parent.contentModule.getEditPanel(),{contenteditable:"true"}),t.removeClass([this.parent.element],mn))},n.prototype.onSelectionSave=function(){var e=this.contentRenderer.getDocument(),t=this.nodeSelectionObj.getRange(e);this.saveSelection=this.nodeSelectionObj.save(t,e)},n.prototype.onSelectionRestore=function(e){this.parent.isBlur=!1,this.contentRenderer.getEditPanel().focus(),(t.isNullOrUndefined(e.items)||e.items)&&this.saveSelection.restore()},n.prototype.onKeyDown=function(e){if(9===e.args.keyCode&&this.parent.enableTabKey){var n=this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()),i=this.nodeSelectionObj.getParentNodeCollection(n);if("LI"!==i[0].nodeName&&!t.closest(i[0],"li")&&!t.closest(i[0],"table")||0!==n.startOffset)if(e.args.preventDefault(),e.args.shiftKey){if(this.rangeCollection.length>0&&4===this.rangeCollection[this.rangeCollection.length-1].startContainer.textContent.length){var o=this.rangeCollection[this.rangeCollection.length-1].startContainer;this.nodeSelectionObj.setSelectionText(this.contentRenderer.getDocument(),o,o,0,o.textContent.length),Ro.Insert(this.contentRenderer.getDocument(),document.createTextNode("")),this.rangeCollection.pop()}}else Ro.Insert(this.contentRenderer.getDocument(),"&nbsp;&nbsp;&nbsp;&nbsp;"),this.rangeCollection.push(this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()))}"space"!==e.args.action&&"enter"!==e.args.action||this.spaceLink(e.args)},n.prototype.onPaste=function(e){var n=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if(e.text.match(n)){e.args.preventDefault();for(var i=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),o=(this.parent.formatter.editorManager.nodeSelection.save(i,this.parent.contentModule.getDocument()),new RegExp(/([^\S]|^)(((https?\:\/\/)))/gi)),r=new RegExp(/([^\S]|^)(((www\.))(\S+))/gi),s=e.text.split("\n"),a="",l=0;l<s.length;l++)if(""===s[l].trim())a+="<p><br></p>";else{for(var d="",c=!0,p=s[l].split(" "),h=0;h<p.length;h++)""===p[h].trim()?d+=c?"&nbsp;":" ":(c=!1,d+=p[h]+" ");a+="<p>"+d.trim()+"</p>"}var u=this.parent.createElement("div");u.innerHTML=a;var m=u.querySelectorAll("p");for(l=0;l<m.length;l++){var g=m[l].innerHTML.split(" "),f="";for(h=0;h<g.length;h++)g[h].match(o)||g[h].match(r)?f+='<a className="e-rte-anchor" href="'+g[h]+'" title="'+g[h]+'">'+g[h]+" </a>":f+=g[h]+" ";m[l].innerHTML=f.trim()}t.isNullOrUndefined(this.parent.pasteCleanupModule)?this.parent.executeCommand("insertHTML",u):e.callBack(u.innerHTML)}},n.prototype.spaceLink=function(e){var t=this.nodeSelectionObj.getRange(this.contentRenderer.getDocument()),n=this.nodeSelectionObj.getParentNodeCollection(t),i=t.startContainer.textContent.substr(0,t.endOffset),o=i.split(" "),r=o[o.length-1],s=t.startOffset-(i.length-o[o.length-1].length);r=r.slice(0,s);var a=new RegExp(/([^\S]|^)(((https?\:\/\/)|(www\.))(\S+))/gi);if("A"!==n[0].nodeName&&r.match(a)){var l=this.nodeSelectionObj.save(t,this.parent.contentModule.getDocument()),d={url:r.indexOf("http")>-1?r:"http://"+r,selection:l,selectParent:this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(t),text:r,title:"",target:"_blank"};this.parent.formatter.process(this.parent,{item:{command:"Links",subCommand:"CreateLink"}},e,d)}},n.prototype.onToolbarClick=function(e){var n,i,o,r=e.item,s=t.closest(e.originalEvent.target,".e-rte-quick-popup");if(s&&!s.classList.contains("e-rte-inline-popup")){if("SourceCode"!==r.subCommand&&"Preview"!==r.subCommand&&"FontColor"!==r.subCommand&&"BackgroundColor"!==r.subCommand){O()&&"Images"===r.command&&this.nodeSelectionObj.restore();var a=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());n=this.nodeSelectionObj.save(a,this.parent.contentModule.getDocument()),i=this.nodeSelectionObj.getNodeCollection(a),o=this.nodeSelectionObj.getParentNodeCollection(a)}"Images"===r.command&&this.parent.notify(ie,{member:"image",args:e,selectNode:i,selection:n,selectParent:o}),"Links"===r.command&&this.parent.notify(oe,{member:"link",args:e,selectNode:i,selection:n,selectParent:o}),"Table"===r.command&&this.parent.notify(Ve,{member:"table",args:e,selectNode:i,selection:n,selectParent:o})}else{var l=this.parent.element.querySelector("#"+this.parent.getID()+"_rtelink"),d=this.parent.element.querySelector("#"+this.parent.getID()+"_image");if("SourceCode"!==r.subCommand&&"Preview"!==r.subCommand&&"FontColor"!==r.subCommand&&"BackgroundColor"!==r.subCommand){a=this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());t.isNullOrUndefined(l)&&t.isNullOrUndefined(d)&&(n=this.nodeSelectionObj.save(a,this.parent.contentModule.getDocument())),i=this.nodeSelectionObj.getNodeCollection(a),o=this.nodeSelectionObj.getParentNodeCollection(a)}switch(r.subCommand){case"Maximize":this.parent.notify($,{args:e});break;case"Minimize":this.parent.notify(Z,{args:e});break;case"CreateLink":this.parent.notify(le,{member:"link",args:e,selectNode:i,selection:n,selectParent:o});break;case"Print":this.parent.print();break;case"Image":this.parent.notify(fe,{member:"image",args:e,selectNode:i,selection:n,selectParent:o});break;case"CreateTable":this.parent.notify(Qe,{member:"table",args:e,selection:n});break;case"SourceCode":this.parent.notify(Ee,{member:"viewSource",args:e});break;case"Preview":this.parent.notify(Ne,{member:"updateSource",args:e});break;case"FontColor":case"BackgroundColor":break;default:this.parent.formatter.process(this.parent,e,e.originalEvent,null)}}},n.prototype.renderColorPicker=function(e){this.colorPickerModule.renderColorPickerInput(e)},n.prototype.instantiateRenderer=function(){this.parent.iframeSettings.enable?this.renderFactory.addRenderer(e.RenderType.Content,new ar(this.parent,this.locator)):this.renderFactory.addRenderer(e.RenderType.Content,new rr(this.parent,this.locator))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(I,this.render),this.parent.off(V,this.onPropertyChanged),this.parent.off(F,this.onToolbarClick),this.parent.off(_,this.renderColorPicker),this.parent.off(A,this.destroy),this.parent.off(K,this.onKeyDown),this.parent.off(R,this.instantiateRenderer),this.parent.off(Ue,this.selectAll),this.parent.off(je,this.selectRange),this.parent.off(ze,this.getSelectedHtml),this.parent.off(we,this.onSelectionSave),this.parent.off(Le,this.onSelectionRestore),this.parent.off(Ke,this.updateReadOnly),this.parent.off(_e,this.onPaste))},n.prototype.render=function(){this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};if(t.isNullOrUndefined(this.parent.formatter)){var o=new tr({currentDocument:this.contentRenderer.getDocument(),element:n,options:i});this.parent.setProperties({formatter:o},!0)}else this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i);this.parent.enableXhtml&&this.parent.notify(dt,{}),this.parent.toolbarSettings.enable&&(this.toolbarUpdate=new or(this.parent)),this.parent.notify(q,{})},n.prototype.onPropertyChanged=function(e){if(!t.isNullOrUndefined(e.newProp.formatter)){var n=this.contentRenderer.getEditPanel(),i={undoRedoSteps:this.parent.undoRedoSteps,undoRedoTimer:this.parent.undoRedoTimer};this.parent.formatter.updateFormatter(n,this.contentRenderer.getDocument(),i)}},n.prototype.getModuleName=function(){return"htmlEditor"},n.prototype.selectAll=function(){var e=T(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}(),cr=function(){function n(e,t){this.inlineNode=["a","abbr","acronym","audio","b","bdi","bdo","big","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","font","i","iframe","img","input","ins","kbd","label","map","mark","meter","noscript","object","output","picture","progress","q","ruby","s","samp","script","select","slot","small","span","strong","sub","sup","svg","template","textarea","time","u","tt","var","video","wbr"],this.blockNode=["div","h1","h2","h3","h4","h5","h6","address","blockquote","button","center","dd","dir","dl","dt","fieldset","frameset","hr","iframe","isindex","li","map","menu","noframes","noscript","object","ol","pre","td","tr","th","tbody","tfoot","thead","table","ul","header","article","nav","footer","section","aside","main","figure","figcaption"],this.isNotFromHtml=!1,this.containsHtml=!1,this.parent=e,this.locator=t,this.renderFactory=this.locator.getService("rendererFactory"),this.i10n=t.getService("rteLocale"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.addEventListener()}return n.prototype.addEventListener=function(){this.nodeSelectionObj=new No,this.parent.isDestroyed||(this.parent.on(Ye,this.pasteClean,this),this.parent.on(A,this.destroy,this))},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(Ye,this.pasteClean),this.parent.off(A,this.destroy))},n.prototype.pasteClean=function(n){var i,o=this,r={requestType:"Paste",editorMode:this.parent.editorMode,event:n},s=null;if(n.args&&!t.isNullOrUndefined(n.args.clipboardData)&&(s=n.args.clipboardData.getData("text/html")),n.args&&null!==s&&"HTML"===this.parent.editorMode){if(0===s.length){var a=new RegExp(/<\/[a-z][\s\S]*>/i);s=n.args.clipboardData.getData("text/plain"),this.isNotFromHtml=""!==s,s=(s=s.replace(/</g,"&lt;")).replace(/>/g,"&gt;"),this.containsHtml=a.test(s);var l=n&&n.args.clipboardData&&n.args.clipboardData.items.length>0?n.args.clipboardData.items[0].getAsFile():null;if(this.parent.notify(_e,{file:l,args:n.args,text:s,callBack:function(e){"object"==typeof(i=e)?o.parent.formatter.editorManager.execCommand("Images","Image",n.args,o.imageFormatting.bind(o,r),"pasteCleanup",i,"pasteCleanupModule"):s=i}}),!a.test(s)){var d=this.parent.createElement("div");d.innerHTML=this.splitBreakLine(s),s=d.innerHTML}}else s.length>0&&this.parent.formatter.editorManager.observer.notify(Ri,{args:n.args,text:n.text,allowedStylePropertiesArray:this.parent.pasteCleanupSettings.allowedStyleProps,callBack:function(e){s=e}});this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var c=this.contentRenderer.getDocument(),p=this.nodeSelectionObj.getRange(c);if(this.saveSelection=this.nodeSelectionObj.save(p,c),this.parent.pasteCleanupSettings.prompt){n.args.preventDefault();var h=this.parent.createElement("div");h.innerHTML=s,""===h.textContent&&t.isNullOrUndefined(h.querySelector("img"))&&t.isNullOrUndefined(h.querySelector("table"))||this.pasteDialog(s,r)}else this.parent.pasteCleanupSettings.plainText?(n.args.preventDefault(),this.plainFormatting(s,r)):this.parent.pasteCleanupSettings.keepFormat?(n.args.preventDefault(),this.formatting(s,!1,r)):(n.args.preventDefault(),this.formatting(s,!0,r))}},n.prototype.splitBreakLine=function(e){for(var t=e.split("\n"),n="",i=0;i<t.length;i++)if(""===t[i].trim())n+="<p><br></p>";else{n+="<p>"+this.makeSpace(t[i]).trim()+"</p>"}return n},n.prototype.makeSpace=function(e){for(var t="",n=!0,i=e.split(" "),o=0;o<i.length;o++)""===i[o].trim()?t+=n?"&nbsp;":" ":(n=!1,t+=i[o]+" ");return t},n.prototype.imgUploading=function(e){var n=e.querySelectorAll(".pasteContent_Img");if(this.parent.insertImageSettings.saveUrl&&n.length>0){for(var i=[],o=[],r=[],s=0;s<n.length;s++)n[s].getAttribute("src").split(",")[0].indexOf("base64")>=0&&(i.push(n[s].getAttribute("src")),o.push(t.getUniqueID("rte_image")),r.push(n[s]));var a=[];for(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);var l=e.querySelectorAll(".pasteContent_Img");for(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(x(e[n].getAttribute("src")));e[n].setAttribute("src",i)}},n.prototype.uploadMethod=function(e,n){var i=this,s=document.createElement("div");document.body.appendChild(s),s.setAttribute("display","none"),n.style.opacity="0.5";var a=this.parent.createElement("div");this.parent.element.appendChild(a);var l=this.parent.createElement("input",{id:this.parent.element.id+"_upload",attrs:{type:"File",name:"UploadFiles"}}),d=this.parent.iframeSettings.enable?-50:-90,c=new o.Popup(a,{relateTo:n,height:"85px",width:"300px",offsetY:d,content:l,viewPortElement:this.parent.element,position:{X:"center",Y:"top"},enableRtl:this.parent.enableRtl,zIndex:10001,close:function(e){i.parent.isBlur=!1,c.destroy(),t.detach(c.element)}});c.element.style.display="none",t.addClass([c.element],[Rn,Mn]);var p=e.size>1e6?300:100;setTimeout(function(){i.refreshPopup(n,c)},p);var h,u,m=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl},cssClass:In,dropArea:this.parent.inputElement,allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),success:function(e){setTimeout(function(){i.popupClose(c,m,n,e)},900)},uploading:function(e){i.parent.isServerRendered||(i.parent.trigger(ot,e),i.parent.inputElement.contentEditable="false")},beforeUpload:function(e){i.parent.isServerRendered&&(e.cancel=!0,u=JSON.parse(JSON.stringify(e)),i.parent.trigger(ot,u,function(e){e.cancel||i.uploadObj.uploadFiles(h,null)}))},failure:function(e){setTimeout(function(){i.uploadFailure(n,m,c,e)},900)},canceling:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),c.close()},selected:function(e){e.cancel=!0,i.parent.isServerRendered&&(h=e.filesData)},removing:function(){i.parent.inputElement.contentEditable="true"," "===n.nextSibling.textContent&&t.detach(n.nextSibling),t.detach(n),c.close()}});m.appendTo(c.element.childNodes[0]);var g=[{name:e.name,rawFile:e,size:e.size,type:e.type,validationMessages:{minSize:"",maxSize:""},statusCode:"1"}];m.createFileList(g),m.filesData.push(g[0]),m.upload(g),c.element.getElementsByClassName("e-file-select-wrap")[0].style.display="none",t.detach(c.element.querySelector(".e-rte-dialog-upload .e-file-select-wrap"))},n.prototype.uploadFailure=function(e,n,i,o){this.parent.inputElement.contentEditable="true",t.detach(e),i&&i.close(),this.parent.trigger(st,o),n.destroy()},n.prototype.popupClose=function(e,n,i,o){var r=this;this.parent.inputElement.contentEditable="true",this.parent.trigger(rt,o,function(e){if(!t.isNullOrUndefined(r.parent.insertImageSettings.path)){var n=r.parent.insertImageSettings.path+e.file.name;i.src=n,i.setAttribute("alt",e.file.name)}}),e.close(),i.style.opacity="1",n.destroy()},n.prototype.refreshPopup=function(e,t){(this.parent.iframeSettings.enable?this.parent.element.offsetTop+e.offsetTop:e.offsetTop)>this.parent.element.offsetTop+this.parent.element.offsetHeight?(t.relateTo=this.parent.inputElement,t.offsetY=this.parent.iframeSettings.enable?-30:-65,t.element.style.display="block"):t&&(t.refreshPosition(e),t.element.style.display="block")},n.prototype.base64ToFile=function(e,n){for(var i=e.split(","),o=i[0].match(/:(.*?);/)[1].split("/")[1],r=atob(i[1]),s=r.length,a=new Uint8Array(s);s--;)a[s]=r.charCodeAt(s);return new File([a],n+"."+(t.isNullOrUndefined(o)?"":o),{type:o})},n.prototype.imageFormatting=function(t,n){var i=this.parent.createElement("span");i.appendChild(n.elements[0]);var o=i.innerHTML;this.contentRenderer=this.renderFactory.getRenderer(e.RenderType.Content);var r=this.contentRenderer.getDocument(),s=this.nodeSelectionObj.getRange(r);this.saveSelection=this.nodeSelectionObj.save(s,r),this.parent.pasteCleanupSettings.prompt?this.pasteDialog(o,t):this.parent.pasteCleanupSettings.plainText?this.plainFormatting(o,t):this.parent.pasteCleanupSettings.keepFormat?this.formatting(o,!1,t):this.formatting(o,!0,t)},n.prototype.radioRender=function(){var e=new s.RadioButton({label:this.i10n.getConstant("keepFormat"),name:"pasteOption",checked:!0});e.isStringTemplate=!0;var t=this.parent.element.querySelector("#keepFormating");e.appendTo(t);var n=new s.RadioButton({label:this.i10n.getConstant("cleanFormat"),name:"pasteOption"});n.isStringTemplate=!0;var i=this.parent.element.querySelector("#cleanFormat");n.appendTo(i);var o=new s.RadioButton({label:this.i10n.getConstant("plainText"),name:"pasteOption"});o.isStringTemplate=!0;var r=this.parent.element.querySelector("#plainTextFormat");o.appendTo(r)},n.prototype.selectFormatting=function(e,t,n,i){n?this.formatting(e,!1,t):i?this.formatting(e,!0,t):this.plainFormatting(e,t)},n.prototype.pasteDialog=function(e,n){var i=this,o=!1,r=this.parent.height,s={buttons:[{click:function(){if(!a.isDestroyed){var s=i.parent.element.querySelector("#keepFormating").checked,l=i.parent.element.querySelector("#cleanFormat").checked;a.hide(),i.parent.height=o?r:i.parent.height,o=!1;var d=t.isBlazor()?null:a;i.dialogRenderObj.close(d),a.destroy(),i.selectFormatting(e,n,s,l)}},buttonModel:{isPrimary:!0,cssClass:"e-flat "+kn,content:this.i10n.getConstant("pasteDialogOk")}},{click:function(){if(!a.isDestroyed){a.hide(),i.parent.height=o?r:i.parent.height,o=!1;var e=t.isBlazor()?null:a;i.dialogRenderObj.close(e),a.destroy()}},buttonModel:{cssClass:"e-flat "+wn,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="'+Sn+'" id="keepFormating"/></div><div style="padding-top:20px;"><input type="radio" class="'+En+'" id="cleanFormat"/></div><div style="padding-top:20px;"><input type="radio" class="'+Nn+'" id="plainTextFormat"/></div></div>',target:this.parent.element,width:"300px",height:"265px",cssClass:Ln,isModal:!0},a=this.dialogRenderObj.render(s),l=this.parent.element.querySelector("#"+this.parent.getID()+"_pasteCleanupDialog");null!==l&&""!==l.innerHTML&&this.destroyDialog(l),null===l&&(l=this.parent.createElement("div",{id:this.parent.getID()+"_pasteCleanupDialog"}),this.parent.element.appendChild(l)),a.appendTo(l),this.radioRender(),this.parent.element.offsetHeight<parseInt(a.height.split("px")[0],null)&&(this.parent.height=parseInt(a.height.split("px")[0],null)+40,o=!0),a.show()},n.prototype.destroyDialog=function(e){var n=this.parent.element.querySelector(".e-dlg-container");t.detach(n);for(var i=e.children.length,o=0;o<i;o++)t.detach(e.children[0])},n.prototype.formatting=function(e,n,i){var o=this,r=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});this.isNotFromHtml&&this.containsHtml&&(e=this.splitBreakLine(e)),r.innerHTML=e,null!==this.parent.pasteCleanupSettings.deniedTags&&(r=this.deniedTags(r)),n?r=this.deniedAttributes(r,n):null!==this.parent.pasteCleanupSettings.deniedAttrs&&(r=this.deniedAttributes(r,n)),null!==this.parent.pasteCleanupSettings.allowedStyleProps&&(r=this.allowedStyle(r)),this.saveSelection.restore(),r.innerHTML=this.sanitizeHelper(r.innerHTML);for(var s=r.querySelectorAll("img"),a=0;a<s.length;a++)s[a].classList.add("pasteContent_Img");""===r.textContent&&t.isNullOrUndefined(r.querySelector("img"))&&t.isNullOrUndefined(r.querySelector("table"))||(this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",i,function(e){t.extend(i,{elements:[e.elements]},!0),o.parent.formatter.onSuccess(o.parent,i)},r),this.parent.notify(U,{}),this.imgUploading(this.parent.inputElement))},n.prototype.sanitizeHelper=function(e){return e=L(e,this.parent)},n.prototype.plainFormatting=function(e,n){var i=this,o=this.parent.createElement("div",{className:"pasteContent",styles:"display:inline;"});if(o.innerHTML=e,this.detachInlineElements(o),this.getTextContent(o),""!==o.textContent.trim()){if(!t.isNullOrUndefined(o.firstElementChild)&&"BR"!==o.firstElementChild.tagName){var r=o.firstElementChild;if(!t.isNullOrUndefined(o.firstElementChild)){for(var s=this.parent.createElement("span"),a=0,l=0;a<r.childNodes.length;a++,l++)if("#text"===r.childNodes[a].nodeName)s.appendChild(r.childNodes[a]),o.insertBefore(s,o.firstElementChild),a--;else{if("#text"===r.childNodes[a].nodeName||0!==l)break;for(var d=0;d<r.childNodes[a].childNodes.length;d++)s.appendChild(r.childNodes[a].childNodes[d]),o.insertBefore(s,o.firstElementChild),d--;a--}r.hasChildNodes()||t.detach(r)}}this.removeEmptyElements(o),this.saveSelection.restore(),o.innerHTML=this.sanitizeHelper(o.innerHTML),this.parent.formatter.editorManager.execCommand("inserthtml","pasteCleanup",n,function(e){t.extend(n,{elements:[]},!0),i.parent.formatter.onSuccess(i.parent,n)},o)}else this.saveSelection.restore(),t.extend(n,{elements:[]},!0),this.parent.formatter.onSuccess(this.parent,n)},n.prototype.getTextContent=function(e){for(var n=0;n<this.blockNode.length;n++)for(var i=e.querySelectorAll(this.blockNode[n]),o=0;o<i.length;o++){for(var r=void 0,s=0,a=0,l=void 0;s<i[o].childNodes.length;s++,a++)if("DIV"===i[o].childNodes[s].nodeName||"P"===i[o].childNodes[s].nodeName||"#text"===i[o].childNodes[s].nodeName&&"&nbsp;"!==i[o].childNodes[s].nodeValue.replace(/\u00a0/g,"&nbsp;")&&""===i[o].childNodes[s].textContent.trim())r=i[o].childNodes[s].parentElement,i[o].childNodes[s].parentElement.parentElement.insertBefore(i[o].childNodes[s],i[o].childNodes[s].parentElement),s--;else{if(r=i[o].childNodes[s].parentElement,"text"===l){r.previousElementSibling.appendChild(i[o].childNodes[s])}else{var d=this.parent.createElement("div",{id:"newDiv"});d.appendChild(i[o].childNodes[s]),r.parentElement.insertBefore(d,r)}s--,l="text"}t.isNullOrUndefined(r)||t.detach(r)}var c=e.querySelectorAll("*");for(n=0;n<c.length;n++){var p=c[n].attributes;for(o=0;o<p.length;o++)c[n].removeAttribute(p[o].name),o--}},n.prototype.detachInlineElements=function(e){for(var n=0;n<this.inlineNode.length;n++)for(var i=e.querySelectorAll(this.inlineNode[n]),o=0;o<i.length;o++){for(var r=void 0,s=0;s<i[o].childNodes.length;s++)r=i[o].childNodes[s].parentElement,i[o].childNodes[s].parentElement.parentElement.insertBefore(i[o].childNodes[s],i[o].childNodes[s].parentElement),s--;t.isNullOrUndefined(r)||t.detach(r)}},n.prototype.findDetachEmptyElem=function(e){return t.isNullOrUndefined(e.parentElement)?null:""===e.parentElement.textContent.trim()&&"pasteContent"!==e.parentElement.getAttribute("class")?this.findDetachEmptyElem(e.parentElement):e},n.prototype.removeEmptyElements=function(e){for(var n=e.querySelectorAll(":empty"),i=0;i<n.length;i++)if("BR"!==n[i].tagName){var o=this.findDetachEmptyElem(n[i]);t.isNullOrUndefined(o)||t.detach(o)}},n.prototype.tagGrouping=function(e){for(var t=e.slice(),n=Object.keys(Gi),i=n.map(function(e){return Gi[e]}),o=[],r=0;r<t.length;r++)if(t[r].split("[").length>1&&(t[r]=t[r].split("[")[0].trim()),n.indexOf(t[r])>-1)for(var s=0;s<i[n.indexOf(t[r])].length;s++)t.indexOf(i[n.indexOf(t[r])][s])<0&&o.indexOf(i[n.indexOf(t[r])][s])<0&&o.push(i[n.indexOf(t[r])][s]);return e=e.concat(o)},n.prototype.attributesfilter=function(e){for(var t=0;t<e.length;t++)if(e[t].split("[").length>1){for(var n=e[t].split("[")[1].split("]")[0].split(","),i=[],o=[],r=0;r<n.length;r++)n[r].indexOf("!")<0?i.push(n[r].trim()):o.push(n[r].split("!")[1].trim());var s=i.length>1?i.join("]["):i.join(),a=o.length>1?o.join("]["):o.join();if(a.length>0){var l=""!==s?e[t].split("[")[0]+"["+s+"]":e[t].split("[")[0];e[t]=l+":not(["+a+"])"}else e[t]=e[t].split("[")[0]+"["+s+"]"}return e},n.prototype.deniedTags=function(e){var n=t.isNullOrUndefined(this.parent.pasteCleanupSettings.deniedTags)?[]:this.parent.pasteCleanupSettings.deniedTags.slice();n=this.attributesfilter(n),n=this.tagGrouping(n);for(var i=0;i<n.length;i++)for(var o=e.querySelectorAll(n[i]),r=o.length-1;r>=0;r--){for(var s=o[r].parentNode;o[r].firstChild;)s.insertBefore(o[r].firstChild,o[r]);s.removeChild(o[r])}return e},n.prototype.deniedAttributes=function(e,n){var i=t.isNullOrUndefined(this.parent.pasteCleanupSettings.deniedAttrs)?[]:this.parent.pasteCleanupSettings.deniedAttrs.slice();n&&i.push("style");for(var o=0;o<i.length;o++)for(var r=e.querySelectorAll("["+i[o]+"]"),s=0;s<r.length;s++)r[s].removeAttribute(i[o]);return e},n.prototype.allowedStyle=function(e){var n=t.isNullOrUndefined(this.parent.pasteCleanupSettings.allowedStyleProps)?[]:this.parent.pasteCleanupSettings.allowedStyleProps.slice();n.push("list-style-type","list-style");for(var i=e.querySelectorAll("[style]"),o=0;o<i.length;o++){for(var r="",s=[],a=i[o].getAttribute("style").split(";"),l=0;l<a.length;l++)n.indexOf(a[l].split(":")[0].trim())>=0&&s.push(a[l]);i[o].removeAttribute("style"),(r=""===s.join(";").trim()?s.join(";"):s.join(";")+";")&&i[o].setAttribute("style",r)}return e},n.prototype.getModuleName=function(){return"pasteCleanup"},n}(),pr=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(I,this.renderResizable,this),this.parent.on(A,this.destroy,this))},e.prototype.renderResizable=function(){this.resizer=this.parent.createElement("div",{id:this.parent.getID()+"-resizable",className:"e-icons "+xn+" e-south-east"}),this.parent.element.classList.add(Pn),this.parent.element.appendChild(this.resizer),this.touchStartEvent="msie"===t.Browser.info.name?"pointerdown":"touchstart",t.EventHandler.add(this.resizer,"mousedown",this.resizeStart,this),t.EventHandler.add(this.resizer,this.touchStartEvent,this.resizeStart,this)},e.prototype.resizeStart=function(e){var n=this;e.cancelable&&e.preventDefault(),this.wireResizeEvents();var i=t.isBlazor()?{requestType:"editor"}:{event:e,requestType:"editor"};this.parent.trigger(re,i,function(e){e.cancel&&n.unwireResizeEvents()})},e.prototype.performResize=function(e){var n=this,i=t.isBlazor()?{requestType:"editor"}:{event:e,requestType:"editor"};this.parent.trigger(se,i,function(e){e.cancel&&n.unwireResizeEvents()});var o=this.parent.element.getBoundingClientRect();if(this.isMouseEvent(e))this.parent.element.style.height=e.clientY-o.top+"px",this.parent.element.style.width=e.clientX-o.left+"px";else{var r="msie"!==t.Browser.info.name?e.touches[0]:e;this.parent.element.style.height=r.clientY-o.top+"px",this.parent.element.style.width=r.clientX-o.left+"px"}this.parent.refreshUI()},e.prototype.stopResize=function(e){this.parent.refreshUI(),this.unwireResizeEvents();var n=t.isBlazor()?{requestType:"editor"}:{event:e,requestType:"editor"};this.parent.trigger(ae,n)},e.prototype.getEventType=function(e){return e.indexOf("mouse")>-1?"mouse":"touch"},e.prototype.isMouseEvent=function(e){var n=!1;return("mouse"===this.getEventType(e.type)||!t.isNullOrUndefined(e.pointerType)&&"mouse"===this.getEventType(e.pointerType))&&(n=!0),n},e.prototype.wireResizeEvents=function(){t.EventHandler.add(document,"mousemove",this.performResize,this),t.EventHandler.add(document,"mouseup",this.stopResize,this),this.touchMoveEvent="msie"===t.Browser.info.name?"pointermove":"touchmove",this.touchEndEvent="msie"===t.Browser.info.name?"pointerup":"touchend",t.EventHandler.add(document,this.touchMoveEvent,this.performResize,this),t.EventHandler.add(document,this.touchEndEvent,this.stopResize,this)},e.prototype.unwireResizeEvents=function(){t.EventHandler.remove(document,"mousemove",this.performResize),t.EventHandler.remove(document,"mouseup",this.stopResize),t.EventHandler.remove(document,this.touchMoveEvent,this.performResize),t.EventHandler.remove(document,this.touchEndEvent,this.stopResize)},e.prototype.destroy=function(){this.removeEventListener()},e.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(I,this.renderResizable),this.parent.element.classList.remove(Pn),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(A,this.destroy))},e.prototype.getModuleName=function(){return"resize"},e}(),hr=function(){function e(e){this.parent=e,this.addEventListener()}return e.prototype.showFullScreen=function(e){!0===this.parent.toolbarSettings.enable&&"Markdown"!==this.parent.editorMode&&this.parent.quickToolbarModule.hideQuickToolbars(),this.scrollableParent=o.getScrollableParent(this.parent.element),this.parent.element.classList.contains(Ct)||(this.parent.trigger(he,{requestType:"Maximize",targetItem:"Maximize",args:e}),this.parent.toolbarSettings.enableFloating&&!this.parent.inlineMode.enable&&this.parent.toolbarSettings.enable&&(this.parent.getToolbarElement().style.width="100%",this.parent.getToolbarElement().style.top="0px"),this.parent.element.classList.add(Ct),this.toggleParentOverflow(!0),this.parent.setContentHeight(),this.parent.toolbarModule&&(this.parent.getBaseToolbarObject().toolbarObj.items[0].properties||this.parent.getBaseToolbarObject().toolbarObj.removeItems(0),t.Browser.isDevice&&this.parent.toolbarModule.removeFixedTBarClass(),this.parent.toolbarModule.updateItem({targetItem:"Maximize",updateItem:"Minimize",baseToolbar:this.parent.getBaseToolbarObject()})),this.parent.trigger(ue,{requestType:"Maximize",targetItem:"Maximize",args:e}))},e.prototype.hideFullScreen=function(e){if(!0===this.parent.toolbarSettings.enable&&"Markdown"!==this.parent.editorMode&&this.parent.quickToolbarModule.hideQuickToolbars(),this.parent.element.classList.contains(Ct)){this.parent.element.classList.remove(Ct);for(var n=document.querySelectorAll(".e-rte-overflow"),i=0;i<n.length;i++)t.removeClass([n[i]],["e-rte-overflow"]);this.parent.trigger(he,{requestType:"Minimize",targetItem:"Minimize",args:e}),this.parent.setContentHeight(),this.parent.toolbarModule&&(this.parent.getBaseToolbarObject().toolbarObj.items[0].properties||this.parent.getBaseToolbarObject().toolbarObj.removeItems(0),this.parent.toolbarModule.updateItem({targetItem:"Minimize",updateItem:"Maximize",baseToolbar:this.parent.getBaseToolbarObject()}),t.Browser.isDevice&&this.parent.inlineMode.enable&&this.parent.toolbarModule.addFixedTBarClass()),this.parent.trigger(ue,{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){var i=document.querySelector("body");t.addClass([i],["e-rte-overflow"])}else{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(A,this.destroy,this)},e.prototype.removeEventListener=function(){this.parent.off(K,this.onKeyDown),this.parent.off(A,this.destroy)},e.prototype.destroy=function(){this.parent.element.classList.contains(Ct)&&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}(),ur=function(){function t(e,t){this.parent=e,this.locator=t,this.renderer=this.locator.getService("rendererFactory"),this.addEventListener()}return t.prototype.render=function(){this.parent;this.contentRenderer=this.renderer.getRenderer(e.RenderType.Content),this.contentRenderer.renderPanel()},t.prototype.refresh=function(e){void 0===e&&(e={requestType:"refresh"}),this.parent.notify(e.requestType+"-begin",e)},t.prototype.destroy=function(){this.removeEventListener()},t.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(V,this.refresh,this),this.parent.on(G,this.keyUp,this))},t.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(V,this.refresh),this.parent.off(G,this.keyUp))},t.prototype.keyUp=function(e){if("HTML"===this.parent.editorMode)switch(e.args.which){case 46:case 8:var t=this.parent.contentModule.getEditPanel().childNodes;if(0===t.length||1===t.length&&("BR"===t[0].tagName||"P"===t[0].tagName&&(0===t[0].childNodes.length||""===t[0].textContent))){var n=this.parent.contentModule.getEditPanel();n.innerHTML="<p><br/></p>",this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(),n.childNodes[0],0)}}},t}(),mr=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(le,this.linkDialog,this),this.parent.on(K,this.onKeyDown,this),this.parent.on(be,this.showLinkQuickToolbar,this),this.parent.on(oe,this.onToolbarAction,this),this.parent.on(P,this.onIframeMouseDown,this),this.parent.on(de,this.removeLink,this),this.parent.on(ce,this.editLink,this),this.parent.on(pe,this.openLink,this),this.parent.on(Re,this.editAreaClickHandler,this))},n.prototype.onToolbarAction=function(e){switch(e.args.item.subCommand){case"OpenLink":this.parent.notify(pe,e);break;case"EditLink":this.parent.notify(ce,e);break;case"RemoveLink":this.parent.notify(de,e)}},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(le,this.linkDialog),this.parent.off(K,this.onKeyDown),this.parent.off(be,this.showLinkQuickToolbar),this.parent.off(oe,this.onToolbarAction),this.parent.off(de,this.removeLink),this.parent.off(P,this.onIframeMouseDown),this.parent.off(ce,this.editLink),this.parent.off(pe,this.openLink),this.parent.off(Re,this.editAreaClickHandler))},n.prototype.onIframeMouseDown=function(){this.dialogObj&&this.dialogObj.hide({returnValue:!0})},n.prototype.showLinkQuickToolbar=function(e){if("enter"!==e.args.action&&"space"!==e.args.action){var n=void 0,i=void 0;if("Links"!==e.type||t.isNullOrUndefined(this.parent.quickToolbarModule)||t.isNullOrUndefined(this.parent.quickToolbarModule.linkQTBar))return;this.quickToolObj=this.parent.quickToolbarModule;var o,r=this.parent.element.getBoundingClientRect().top,s=this.parent.element.getBoundingClientRect().left,a=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());if([].forEach.call(e.elements,function(e,t){0===t&&(o="#text"===e.nodeName?e.parentNode:e)}),e.isNotify){var l=this.parent.toolbarModule.getToolbarElement(),d=o.getBoundingClientRect().top,c=o.getBoundingClientRect().left,p=d-r,h=l?l.offsetHeight+this.parent.toolbarModule.getExpandTBarPopHeight():0;n=this.parent.iframeSettings.enable?s+c:o.getBoundingClientRect().left,i=window.pageYOffset+(this.parent.iframeSettings.enable?r+h+d:r+p)}else{var u=void 0;u=e.args.touches?e.args.changedTouches[0]:u=e.args,n=this.parent.iframeSettings.enable?window.pageXOffset+s+u.clientX:u.pageX,i=this.parent.iframeSettings.enable?window.pageYOffset+r+u.clientY:u.pageY}this.quickToolObj.linkQTBar&&this.quickToolObj.linkQTBar.showPopup(n,i,a.endContainer)}},n.prototype.hideLinkQuickToolbar=function(){this.quickToolObj&&this.quickToolObj.linkQTBar&&document.body.contains(this.quickToolObj.linkQTBar.element)&&this.quickToolObj.linkQTBar.hidePopup()},n.prototype.editAreaClickHandler=function(t){if(this.parent.readonly)this.hideLinkQuickToolbar();else{var n=t.args,i=this.parent.quickToolbarSettings.showOnRightClick;if(!(2===n.which||i&&1===n.which||!i&&3===n.which)&&"HTML"===this.parent.editorMode&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.linkQTBar){this.quickToolObj=this.parent.quickToolbarModule;var o=n.target;o=this.getAnchorNode(o),this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);var r=this.quickToolObj.linkQTBar.element.classList.contains("e-rte-pop");if("A"===o.nodeName&&o.childNodes.length>0&&"IMG"!==o.childNodes[0].nodeName&&"IMG"!==t.args.target.nodeName){if(r)return;this.showLinkQuickToolbar({args:n,isNotify:!1,type:"Links",elements:[n.target]})}else this.hideLinkQuickToolbar()}}},n.prototype.onKeyDown=function(e){var n=e.args;switch(n.action){case"escape":t.isNullOrUndefined(this.dialogObj)||this.dialogObj.close();break;case"insert-link":if("HTML"===this.parent.editorMode){var i=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),o=this.parent.formatter.editorManager.nodeSelection.save(i,this.parent.contentModule.getDocument()),r=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(i),s=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(i),a={args:e.args,selectNode:r,selection:o,selectParent:s};this.linkDialog(a)}else{var l=this.parent.contentModule.getEditPanel();this.parent.formatter.editorManager.markdownSelection.save(l.selectionStart,l.selectionEnd),this.linkDialog({args:{item:{command:"Links",subCommand:"Link"},originalEvent:n},member:"link",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertLink"})}n.preventDefault()}},n.prototype.linkDialog=function(e,n){var i=this;if(this.dialogObj)this.dialogObj.hide({returnValue:!0});else 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))this.editLink(e);else{var o,r=this.i10n.getConstant("linkWebUrl"),a=this.i10n.getConstant("linkText"),l=this.i10n.getConstant("linkTooltipLabel"),d=this.i10n.getConstant("linkurl"),c=this.i10n.getConstant("textPlaceholder"),p=this.i10n.getConstant("linkTitle"),h=this.parent.createElement("div",{className:"e-rte-link-dialog",id:this.rteID+"_rtelink"});this.parent.element.appendChild(h);var u=this.parent.createElement("div",{className:"e-rte-linkcontent",id:this.rteID+"_linkContent"}),m=C('<div class="e-rte-label"><label>'+r+'</label></div><div class="e-rte-field"><input type="text" data-role ="none" spellcheck="false" placeholder="'+d+'" class="e-input e-rte-linkurl"/></div><div class="e-rte-label"><label>'+a+'</label></div><div class="e-rte-field"> <input type="text" data-role ="none" spellcheck="false" class="e-input e-rte-linkText" placeholder="'+c+'"></div><div class="e-rte-label">'+("HTML"===this.parent.editorMode?"<label>"+l+'</label></div><div class="e-rte-field"><input type="text" data-role ="none" spellcheck="false" placeholder = "'+p+'" class="e-input e-rte-linkTitle"></div><div class="e-rte-label"></div><div class="e-rte-field"><input type="checkbox" class="e-rte-linkTarget" data-role ="none"></div>':""));u.appendChild(m);var g=u.querySelector(".e-rte-linkTarget"),f=u.querySelector(".e-rte-linkurl"),b=u.querySelector(".e-rte-linkText"),v=u.querySelector(".e-rte-linkTitle"),y=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:y,checked:!0,enableRtl:this.parent.enableRtl}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(g),o="HTML"===this.parent.editorMode?e.selection.getRange(this.parent.contentModule.getDocument()).toString():e.text;var T=this.i10n.getConstant("dialogInsert"),S=this.i10n.getConstant("dialogCancel"),E=e.selection,N={selfLink:this,selection:e.selection,selectParent:e.selectParent,args:e.args},k={header:this.i10n.getConstant("linkHeader"),content:u,cssClass:$t,enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"310px",height:"inherit",isModal:t.Browser.isDevice,buttons:[{click:this.insertlink.bind(N),buttonModel:{content:T,cssClass:"e-flat e-insertLink",isPrimary:!0}},{click:this.cancelDialog.bind(N),buttonModel:{cssClass:"e-flat",content:S}}],target:t.Browser.isDevice?document.body:this.parent.element,animationSettings:{effect:"None"},close:function(e){i.parent.isBlur=!1,e&&e.event.returnValue&&("HTML"===i.parent.editorMode?E.restore():i.parent.formatter.editorManager.markdownSelection.restore(i.parent.contentModule.getEditPanel())),i.dialogObj.destroy(),t.detach(i.dialogObj.element);var n=t.isBlazor()?null:i.dialogObj;i.dialogRenderObj.close(n),i.dialogObj=null}};this.dialogObj=this.dialogRenderObj.render(k),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(h),h.style.maxHeight="inherit",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(o)&&""!==o&&0===e.selection.range.startOffset||e.selection.range.startOffset!==e.selection.range.endOffset)||"Markdown"===e.module)&&(b.value=o),t.EventHandler.add(this.parent.element.ownerDocument,"mousedown",this.onDocumentClick,this),this.quickToolObj&&(this.hideLinkQuickToolbar(),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup())}},n.prototype.insertlink=function(e){var n,i=this.selfLink.dialogObj.element,o=i.querySelector(".e-rte-linkurl").value,r=i.querySelector(".e-rte-linkText").value;"HTML"===this.selfLink.parent.editorMode&&(n=i.querySelector(".e-rte-linkTitle").value);var s=this.selfLink.checkBoxObj.checked?"_blank":null;if(""!==o){this.selfLink.isUrl(o)?this.selfLink.checkUrl(!1):(r=""===r?o:r,o=this.selfLink.parent.enableAutoUrl?o:o.indexOf("http")>-1?o:"http://"+o);var a=this.selfLink;if("HTML"===a.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"#"+a.parent.contentModule.getPanel().id))){a.parent.contentModule.getEditPanel().focus(),t.Browser.isIE&&a.parent.iframeSettings.enable&&this.selection.restore();var l=a.parent.formatter.editorManager.nodeSelection.getRange(a.parent.contentModule.getDocument());this.selection=a.parent.formatter.editorManager.nodeSelection.save(l,a.parent.contentModule.getDocument()),this.selectParent=a.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(l)}var d={url:o,text:r,title:n,target:s,selection:this.selection,selectParent:this.selectParent};document.body.contains(a.dialogObj.element)&&this.selfLink.dialogObj.hide({returnValue:!1}),O()&&a.parent.iframeSettings.enable&&t.select("iframe",a.parent.element).contentWindow.focus(),"HTML"===a.parent.editorMode&&this.selection.restore(),0===a.parent.formatter.getUndoRedoStack().length&&a.parent.formatter.saveData();var c;if("KeyK"===this.args.code){var p=this.args;t.extend(this.args,{item:{command:"Links",subCommand:"CreateLink"},originalEvent:p},!0);c={item:{command:"Links",subCommand:"CreateLink"},originalEvent:p}}else c=this.args;this.selfLink.parent.formatter.process(this.selfLink.parent,c,this.args.originalEvent,d),this.selfLink.parent.contentModule.getEditPanel().focus()}else this.selfLink.checkUrl(!0)},n.prototype.isUrl=function(e){return/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/gi.test(e)},n.prototype.checkUrl=function(e){var n=this.dialogObj.element.querySelector(".e-rte-linkurl");e?(t.addClass([n],"e-error"),n.setSelectionRange(0,n.value.length),n.focus()):t.removeClass([n],"e-error")},n.prototype.removeLink=function(e){0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,selectParent:e.selectParent,selection:e.selection,subCommand:e.args.item.subCommand}),O()&&this.parent.iframeSettings.enable?t.select("iframe",this.parent.element).contentWindow.focus():this.parent.contentModule.getEditPanel().focus(),this.hideLinkQuickToolbar()},n.prototype.openLink=function(e){var t=this.getAnchorNode(e.selectParent[0]);(t.classList.contains("e-rte-anchor")||"A"===t.tagName)&&this.parent.formatter.process(this.parent,e.args,e.args,{url:t.href,target:""===t.target?"_self":"_blank",selectNode:e.selectNode,subCommand:e.args.item.subCommand})},n.prototype.getAnchorNode=function(e){var n=t.closest(e,"a");return n||e},n.prototype.editLink=function(e){var t=this.getAnchorNode(e.selectNode[0]),n=this.getAnchorNode(e.selectParent[0]);if((n="A"===t.nodeName?t:n).classList.contains("e-rte-anchor")||"A"===n.tagName){var i=this.i10n.getConstant("dialogUpdate"),o={url:n.getAttribute("href"),text:n.innerText,title:n.title,target:n.target,header:this.i10n.getConstant("editLink"),btnText:i};this.linkDialog(e,o)}},n.prototype.cancelDialog=function(e){this.selfLink.parent.isBlur=!1,this.selfLink.dialogObj.hide({returnValue:!0}),O()?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,"#"+this.dialogObj.element.id)&&this.parent.toolbarSettings.enable&&this.parent.getToolbarElement()&&!this.parent.getToolbarElement().contains(e.target)||(this.parent.getToolbarElement()&&this.parent.getToolbarElement().contains(e.target)||this.parent.inlineMode.enable&&!t.closest(n,"#"+this.dialogObj.element.id))&&!t.closest(n,"#"+this.parent.getID()+"_toolbar_CreateLink")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_CreateLink"))&&(this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,y(this.parent.element,"focusout"))},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.getModuleName=function(){return"link"},n}(),gr=function(){function n(e,t){this.isImgUploaded=!1,this.pageX=null,this.pageY=null,this.deletedImg=[],this.parent=e,this.rteID=e.element.id,this.i10n=t.getService("rteLocale"),this.rendererFactory=t.getService("rendererFactory"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.addEventListener()}return n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(K,this.onKeyDown,this),this.parent.on(G,this.onKeyUp,this),this.parent.on(fe,this.insertImage,this),this.parent.on(be,this.showImageQuickToolbar,this),this.parent.on(ie,this.onToolbarAction,this),this.parent.on(Te,this.caption,this),this.parent.on(Ce,this.deleteImg,this),this.parent.on(ve,this.insertImgLink,this),this.parent.on(ye,this.insertAltText,this),this.parent.on(Re,this.editAreaClickHandler,this),this.parent.on(P,this.onIframeMouseDown,this),this.parent.on(Se,this.imageSize,this),this.parent.on(ee,this.alignmentSelect,this),this.parent.on(I,this.afterRender,this),this.parent.on(_e,this.imagePaste,this),this.parent.on(A,this.removeEventListener,this))},n.prototype.removeEventListener=function(){if(!this.parent.isDestroyed){this.parent.off(K,this.onKeyDown),this.parent.off(G,this.onKeyUp),this.parent.off(fe,this.insertImage),this.parent.off(be,this.showImageQuickToolbar),this.parent.off(Te,this.caption),this.parent.off(ie,this.onToolbarAction),this.parent.off(Ce,this.deleteImg),this.parent.off(ve,this.insertImgLink),this.parent.off(ye,this.insertAltText),this.parent.off(Re,this.editAreaClickHandler),this.parent.off(P,this.onIframeMouseDown),this.parent.off(Se,this.imageSize),this.parent.off(ee,this.alignmentSelect),this.parent.off(I,this.afterRender),this.parent.off(_e,this.imagePaste),this.parent.off(A,this.removeEventListener);var e=this.parent.iframeSettings.enable?this.parent.inputElement.ownerDocument:this.parent.inputElement;e.removeEventListener("drop",this.dragDrop.bind(this),!0),e.removeEventListener("dragstart",this.dragStart.bind(this),!0),e.removeEventListener("dragenter",this.dragEnter.bind(this),!0),e.removeEventListener("dragover",this.dragOver.bind(this),!0),t.isNullOrUndefined(this.contentModule)||(t.EventHandler.remove(this.contentModule.getEditPanel(),t.Browser.touchEndEvent,this.imageClick),this.parent.formatter.editorManager.observer.off(Ge,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)))}},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));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=C(this.parent.formatter.getUndoRedoStack()[n].text);i.appendChild(o);var r=i.querySelectorAll("img");if(i.querySelector(".e-img-resize")&&r.length>0){for(var s=0;s<r.length;s++)r[s].style.outline="";t.detach(i.querySelector(".e-img-resize")),this.parent.formatter.getUndoRedoStack()[n].text=i.innerHTML}}},n.prototype.resizeEnd=function(e){this.resizeBtnInit(),this.imgEle.parentElement.style.cursor="auto",t.Browser.isDevice&&t.removeClass([e.target.parentElement],"e-mob-span");var n=t.isBlazor()?{requestType:"images"}:{event:e,requestType:"images"};this.parent.trigger(ae,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(Ge,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("IMG"===o.tagName){this.parent.preventDefaultResize(e);var r=o;this.imgResizeDiv&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&t.detach(this.imgResizeDiv),this.imageResize(r)}if(o.classList.contains("e-rte-imageboxmark")){if(0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData(),this.pageX=this.getPointX(e),this.pageY=this.getPointY(e),e.preventDefault(),e.stopImmediatePropagation(),this.resizeBtnInit(),this.quickToolObj&&this.quickToolObj.imageQTBar.hidePopup(),o.classList.contains("e-rte-topLeft")&&(this.resizeBtnStat.topLeft=!0),o.classList.contains("e-rte-topRight")&&(this.resizeBtnStat.topRight=!0),o.classList.contains("e-rte-botLeft")&&(this.resizeBtnStat.botLeft=!0),o.classList.contains("e-rte-botRight")&&(this.resizeBtnStat.botRight=!0),t.Browser.isDevice&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&!this.imgResizeDiv.classList.contains("e-mob-span"))t.addClass([this.imgResizeDiv],"e-mob-span");else{var s=t.isBlazor()?{requestType:"images"}:{event:e,requestType:"images"};this.parent.trigger(re,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.imageResize=function(e){this.resizeBtnInit(),this.imgEle=e,t.addClass([this.imgEle],"e-resize"),this.imgResizeDiv=this.parent.createElement("span",{className:"e-img-resize",id:this.rteID+"_imgResize"}),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topLeft",styles:"cursor: nwse-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-topRight",styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botLeft",styles:"cursor: nesw-resize"})),this.imgResizeDiv.appendChild(this.parent.createElement("span",{className:"e-rte-imageboxmark e-rte-botRight",styles:"cursor: nwse-resize"})),t.Browser.isDevice&&t.addClass([this.imgResizeDiv],"e-mob-rte"),e.style.outline="2px solid #4a90e2",this.imgResizePos(e,this.imgResizeDiv),this.resizeImgDupPos(e),this.contentModule.getEditPanel().appendChild(this.imgResizeDiv),t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing,this)},n.prototype.getPointX=function(e){return e.touches&&e.touches.length?e.touches[0].pageX:e.pageX},n.prototype.getPointY=function(e){return e.touches&&e.touches.length?e.touches[0].pageY:e.pageY},n.prototype.imgResizePos=function(e,n){var i=this.calcPos(e),o=i.top,r=i.left,s=e.width,a=e.height,l=t.Browser.isDevice?4*parseInt(e.style.outline.slice(-3),10)+2:2*parseInt(e.style.outline.slice(-3),10)+2,d=t.Browser.isDevice?0:2;n.querySelector(".e-rte-botLeft").style.left=r-l+"px",n.querySelector(".e-rte-botLeft").style.top=a-l+o+"px",n.querySelector(".e-rte-botRight").style.left=s-(l-d)+r+"px",n.querySelector(".e-rte-botRight").style.top=a-l+o+"px",n.querySelector(".e-rte-topRight").style.left=s-(l-d)+r+"px",n.querySelector(".e-rte-topRight").style.top=o-l+"px",n.querySelector(".e-rte-topLeft").style.left=r-l+"px",n.querySelector(".e-rte-topLeft").style.top=o-l+"px"},n.prototype.calcPos=function(e){for(var n={top:0,left:0},i=e.getBoundingClientRect(),o=e.ownerDocument,r=(e.offsetParent&&(e.offsetParent.classList.contains("e-img-caption")||["TD","TH","TABLE","A"].indexOf(e.offsetParent.tagName)>-1)?t.closest(e,"#"+this.parent.getID()+"_rte-edit-view"):e.offsetParent)||o.documentElement;r&&(r===o.body||r===o.documentElement)&&"static"===r.style.position;)r=r.parentNode;return r&&r!==e&&1===r.nodeType&&(n=r.getBoundingClientRect()),{top:i.top-n.top,left:i.left-n.left}},n.prototype.setAspectRatio=function(e,n,i){if(!t.isNullOrUndefined(e.width)){var o=""!==e.style.width?parseInt(e.style.width,10):e.width,r=""!==e.style.height?parseInt(e.style.height,10):e.height;o>r?this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(o/r*i,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width?(e.style.width=o/r*i+"px",e.style.height=i+"px"):(e.setAttribute("width",(o/r*i).toString()),e.setAttribute("height",i.toString())):r>o?this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(n,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width?(e.style.width=n+"px",e.style.height=r/o*n+"px"):(e.setAttribute("width",n.toString()),e.setAttribute("height",(r/o*n).toString())):this.parent.insertImageSettings.resizeByPercent?(e.style.width=this.pixToPerc(n,e.previousElementSibling||e.parentElement)+"%",e.style.height=null,e.removeAttribute("height")):""!==e.style.width?(e.style.width=n+"px",e.style.height=n+"px"):(e.setAttribute("width",n.toString()),e.setAttribute("height",n.toString()))}},n.prototype.pixToPerc=function(e,t){return e/parseFloat(getComputedStyle(t).width)*100},n.prototype.imgDupMouseMove=function(e,n,i){var o=this,r=t.isBlazor()?{requestType:"images"}:{event:i,requestType:"images"};this.parent.trigger(se,r,function(t){if(t.cancel)o.cancelResizeAction();else{if(parseInt(o.parent.insertImageSettings.minWidth,10)>=parseInt(e,10)||parseInt(o.parent.insertImageSettings.maxWidth,10)<=parseInt(e,10))return;if(!o.parent.insertImageSettings.resizeByPercent&&(parseInt(o.parent.insertImageSettings.minHeight,10)>=parseInt(n,10)||parseInt(o.parent.insertImageSettings.maxHeight,10)<=parseInt(n,10)))return;o.imgEle.parentElement.style.cursor="pointer",o.setAspectRatio(o.imgEle,parseInt(e,10),parseInt(n,10)),o.resizeImgDupPos(o.imgEle),o.imgResizePos(o.imgEle,o.imgResizeDiv),o.parent.setContentHeight("",!1)}})},n.prototype.resizing=function(e){var t=this.getPointX(e),n=this.getPointY(e),i=this.resizeBtnStat.botLeft||this.resizeBtnStat.topLeft?-(t-this.pageX):t-this.pageX,o=this.resizeBtnStat.topLeft||this.resizeBtnStat.topRight?-(n-this.pageY):n-this.pageY,r=parseInt(this.imgDupPos.width,10)+i,s=parseInt(this.imgDupPos.height,10)+o;this.pageX=t,this.pageY=n,this.resizeBtnStat.botRight?this.imgDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.botLeft?this.imgDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topRight?this.imgDupMouseMove(r+"px",s+"px",e):this.resizeBtnStat.topLeft&&this.imgDupMouseMove(r+"px",s+"px",e)},n.prototype.cancelResizeAction=function(){t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),this.imgEle&&this.imgResizeDiv&&this.contentModule.getEditPanel().contains(this.imgResizeDiv)&&(t.detach(this.imgResizeDiv),this.imgEle.style.outline="",this.imgResizeDiv=null,this.pageX=null,this.pageY=null)},n.prototype.resizeImgDupPos=function(e){this.imgDupPos={width:""!==e.style.height?this.imgEle.style.width:e.width+"px",height:""!==e.style.height?this.imgEle.style.height:e.height+"px"}},n.prototype.resizeBtnInit=function(){return this.resizeBtnStat={botLeft:!1,botRight:!1,topRight:!1,topLeft:!1}},n.prototype.onToolbarAction=function(e){O()&&this.parent.notify(Le,{});switch(e.args.item.subCommand){case"Replace":this.parent.notify(fe,e);break;case"Caption":this.parent.notify(Te,e);break;case"InsertLink":this.parent.notify(ve,e);break;case"AltText":this.parent.notify(ye,e);break;case"Remove":this.parent.notify(Ce,e);break;case"Dimension":this.parent.notify(Se,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;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&&[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].indexOf(s.which)<0)for(var l=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(n),d=0;d<l.length;d++)"IMG"===l[d].nodeName&&this.deletedImg.push(l[d]);if("HTML"===this.parent.editorMode&&(8===s.which&&"Backspace"===s.code||46===s.which&&"Delete"===s.code)){var c=n.startContainer===n.endContainer&&n.startOffset===n.endOffset;8===s.which&&"Backspace"===s.code&&c?this.checkImageBack(n):46===s.which&&"Delete"===s.code&&c&&this.checkImageDel(n)}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&"KeyK"!==s.code&&(n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.save(n,this.parent.contentModule.getDocument()),o=this.parent.formatter.editorManager.nodeSelection.getNodeCollection(n),r=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(n),!s.ctrlKey&&s.key&&(1===s.key.length||"enter"===s.action)&&"IMG"===r[0].tagName&&r[0].parentElement)){var p=r[0].parentElement.childNodes[0];this.contentModule.getEditPanel().querySelector(".e-img-resize")&&this.remvoeResizEle(),this.parent.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(),p,p,p.textContent.length,p.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){s.preventDefault();var h={selectNode:o,selection:i,selectParent:r,args:{item:{command:"Images",subCommand:"Remove"},originalEvent:s}};this.deleteImg(h,s.keyCode)}this.parent.contentModule.getEditPanel().querySelector(".e-img-resize")&&this.remvoeResizEle()}switch(s.action){case"escape":t.isNullOrUndefined(this.dialogObj)||this.dialogObj.close();break;case"insert-image":"HTML"===this.parent.editorMode?this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:s},selectNode:o,selection:i,selectParent:r}):this.insertImage({args:{item:{command:"Images",subCommand:"Image"},originalEvent:s},member:"image",text:this.parent.formatter.editorManager.markdownSelection.getSelectedText(this.parent.contentModule.getEditPanel()),module:"Markdown",name:"insertImage"}),s.preventDefault()}},n.prototype.onKeyUp=function(e){if(!t.isNullOrUndefined(this.deletedImg)&&this.deletedImg.length>0)for(var n=0;n<this.deletedImg.length;n++){var i={element:this.deletedImg[n],src:this.deletedImg[n].getAttribute("src")};this.parent.trigger(lt,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.justifyImageLeft(r);break;case"JustifyCenter":this.justifyImageCenter(r);break;case"JustifyRight":this.justifyImageRight(r);break;case"Inline":this.inline(r);break;case"Break":this.break(r)}this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.removeClass([o[0]],"e-img-focus")),this.cancelResizeAction()}},n.prototype.imageWithLinkQTBarItemUpdate=function(){for(var e=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item"),n=0;n<e.length;n++)e[n].getAttribute("title")===this.i10n.getConstant("openLink")||e[n].getAttribute("title")===this.i10n.getConstant("editLink")||e[n].getAttribute("title")===this.i10n.getConstant("removeLink")?(t.addClass([e[n]],"e-link-groups"),e[n].style.display="none"):"Insert Link"===e[n].getAttribute("title")?e[n].style.display="":e[n].classList.contains("e-rte-horizontal-separator")&&(e[n],t.detach(e[n]));var i=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item:not(.e-link-groups)");this.quickToolObj.imageQTBar.addQTBarItem(["-"],Math.round(i.length/2))},n.prototype.showImageQuickToolbar=function(e){var n=this;if("Images"===e.type&&!t.isNullOrUndefined(this.parent.quickToolbarModule)&&!t.isNullOrUndefined(this.parent.quickToolbarModule.imageQTBar)){this.quickToolObj=this.parent.quickToolbarModule;var i=e.args,o=e.elements;[].forEach.call(e.elements,function(e,t){0===t&&(o=e)}),o&&!t.closest(o,"a")&&this.imageWithLinkQTBarItemUpdate(),"IMG"===o.nodeName&&t.addClass([o],["e-img-focus"]);var r=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+i.clientY:i.pageY;this.parent.quickToolbarModule.imageQTBar&&(e.isNotify?setTimeout(function(){n.quickToolObj.imageQTBar.showPopup(i.pageX,r,o)},400):this.quickToolObj.imageQTBar.showPopup(i.pageX,r,o))}},n.prototype.hideImageQuickToolbar=function(){t.isNullOrUndefined(this.contentModule.getEditPanel().querySelector(".e-img-focus"))||(t.removeClass([this.contentModule.getEditPanel().querySelector(".e-img-focus")],"e-img-focus"),this.quickToolObj&&this.quickToolObj.imageQTBar&&document.body.contains(this.quickToolObj.imageQTBar.element)&&this.quickToolObj.imageQTBar.hidePopup())},n.prototype.editAreaClickHandler=function(n){if(this.parent.readonly)this.hideImageQuickToolbar();else{var i=n.args,o=this.parent.quickToolbarSettings.showOnRightClick;if(2===i.which||o&&1===i.which||!o&&3===i.which)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));else 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),O()&&this.parent.notify(we,n),t.addClass([r],"e-img-focus");var a=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item");if(t.closest(r,"a")){for(var l=0;l<a.length;l++)a[l].getAttribute("title")===this.i10n.getConstant("openLink")||a[l].getAttribute("title")===this.i10n.getConstant("editLink")||a[l].getAttribute("title")===this.i10n.getConstant("removeLink")?(a[l].style.display="",t.removeClass([a[l]],"e-link-groups")):"Insert Link"===a[l].getAttribute("title")?a[l].style.display="none":a[l].classList.contains("e-rte-horizontal-separator")&&(a[l],t.detach(a[l]));var d=this.quickToolObj.imageQTBar.toolbarElement.querySelectorAll(".e-toolbar-item:not(.e-link-groups)");this.quickToolObj.imageQTBar.addQTBarItem(["-"],Math.round(d.length/2))}else t.closest(r,"a")||this.imageWithLinkQTBarItemUpdate();this.showImageQuickToolbar({args:i,type:"Images",elements:[i.target]})}else this.hideImageQuickToolbar()}}},n.prototype.insertImgLink=function(e,n){var i=this;if("IMG"===e.selectNode[0].nodeName&&(this.imagDialog(e),!t.isNullOrUndefined(this.dialogObj))){var o=this.parent.createElement("div",{className:"e-img-linkwrap"}),r=C('<div class="e-rte-field"><input type="text" data-role ="none" class="e-input e-img-link" spellcheck="false" placeholder="'+this.i10n.getConstant("linkurl")+'"/></div><div class="e-rte-label"></div><div class="e-rte-field"><input type="checkbox" class="e-rte-linkTarget" data-role ="none"></div>');o.appendChild(r);var a=o.querySelector(".e-rte-linkTarget"),l=o.querySelector(".e-img-link"),d=this.i10n.getConstant("linkOpenInNewWindow");this.checkBoxObj=new s.CheckBox({label:d,checked:!0,enableRtl:this.parent.enableRtl,change:function(e){c=e.checked?"_blank":null}}),this.checkBoxObj.isStringTemplate=!0,this.checkBoxObj.createElement=this.parent.createElement,this.checkBoxObj.appendTo(a);var c=this.checkBoxObj.checked?"_blank":null,p=this.i10n.getConstant("dialogUpdate"),h={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,selectParent:e.selectParent,link:l,target:c};this.dialogObj.setProperties({height:"inherit",width:"290px",header:this.parent.localeObj.getConstant("imageInsertLinkHeader"),content:o,position:{X:"center",Y:"center"},buttons:[{click:function(e){i.insertlink(h)},buttonModel:{content:p,cssClass:"e-flat e-update-link",isPrimary:!0}}]}),t.isNullOrUndefined(n)||(l.value=n.url,n.target?this.checkBoxObj.checked=!0:this.checkBoxObj.checked=!1,this.dialogObj.header=n.header),this.dialogObj.element.style.maxHeight="inherit",this.dialogObj.content.querySelector("input").focus()}},n.prototype.insertAltText=function(e){var n=this;if("IMG"===e.selectNode[0].nodeName){this.imagDialog(e);var i=this.i10n.getConstant("altText");if(!t.isNullOrUndefined(this.dialogObj)){var o=this.parent.createElement("div",{className:"e-img-altwrap"}),r=this.i10n.getConstant("alternateHeader"),s=this.i10n.getConstant("dialogUpdate"),a=C('<div class="e-rte-field"><input type="text" spellcheck="false" value="'+(null===e.selectNode[0].getAttribute("alt")?"":e.selectNode[0].getAttribute("alt"))+'" class="e-input e-img-alt" placeholder="'+i+'"/></div>');o.appendChild(a);var l=o.querySelector(".e-img-alt"),d={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode,alt:l};this.dialogObj.setProperties({height:"inherit",width:"290px",header:r,content:o,position:{X:"center",Y:"center"},buttons:[{click:function(e){n.insertAlt(d)},buttonModel:{content:s,cssClass:"e-flat e-update-alt",isPrimary:!0}}]}),this.dialogObj.element.style.maxHeight="inherit",this.dialogObj.content.querySelector("input").focus()}}},n.prototype.insertAlt=function(e){if(!t.isNullOrUndefined(e.alt)){e.selection.restore(),0===this.parent.formatter.getUndoRedoStack().length&&this.parent.formatter.saveData();var n=e.alt.value;this.parent.formatter.process(this.parent,e.args,e.args,{altText:n,selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.dialogObj.hide({returnValue:!1})}},n.prototype.insertlink=function(e){if("IMG"===e.selectNode[0].nodeName){var n=e.link.value;if(""===n)return t.addClass([e.link],"e-error"),e.link.setSelectionRange(0,n.length),void e.link.focus();this.isUrl(n)?t.removeClass([e.link],"e-error"):n="http://"+n;var i=e.selfImage;if("HTML"===i.parent.editorMode&&e.selection.restore(),0===i.parent.formatter.getUndoRedoStack().length&&i.parent.formatter.saveData(),"A"===e.selectNode[0].parentElement.nodeName)return i.parent.formatter.process(i.parent,e.args,e.args,{url:n,target:i.checkBoxObj.checked?"_blank":null,selectNode:e.selectNode,subCommand:e.args.item.subCommand}),void i.dialogObj.hide({returnValue:!0});i.parent.formatter.process(i.parent,e.args,e.args,{url:n,target:i.checkBoxObj.checked?"_blank":null,selectNode:e.selectNode,subCommand:e.args.item.subCommand,selection:e.selection});var o=t.closest(e.selectNode[0],".e-img-caption");o&&t.select(".e-img-inner",o).focus(),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.remvoeResizEle(),this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,captionClass:Ft,subCommand:e.args.item.subCommand}),this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&this.quickToolObj.imageQTBar.hidePopup(),this.cancelResizeAction(),t.isNullOrUndefined(n)&&this.parent.trigger(lt,i)}},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,"."+Ft))){this.captionEle=this.parent.createElement("span",{className:Ft+" "+Qt,attrs:{contenteditable:"false",draggable:"false"}});var o=this.parent.createElement("span",{className:"e-img-wrap"}),r=this.parent.createElement("span",{className:"e-img-inner",attrs:{contenteditable:"true"}}),s=e.selectNode[0].parentElement;"A"===s.tagName&&s.setAttribute("contenteditable","true"),o.appendChild("A"===s.tagName?s:e.selectNode[0]),o.appendChild(r);var a=this.i10n.getConstant("imageCaption");r.innerHTML=a,this.captionEle.appendChild(o),n.classList.contains(Vt)&&t.addClass([this.captionEle],Wt),n.classList.contains(_t)&&t.addClass([this.captionEle],_t),n.classList.contains(zt)&&t.addClass([this.captionEle],zt),n.classList.contains(jt)&&t.addClass([this.captionEle],jt),n.classList.contains(qt)&&t.addClass([this.captionEle],qt),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,"."+Ft)),t.Browser.isIE&&(this.contentModule.getEditPanel().focus(),e.selection.restore()),"A"===n.parentElement.tagName?this.parent.formatter.process(this.parent,e.args,e.args,{insertElement:n.parentElement,selectNode:e.selectNode,subCommand:i}):this.parent.formatter.process(this.parent,e.args,e.args,{insertElement:n,selectNode:e.selectNode,subCommand:i});this.quickToolObj&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.removeClass([n],"e-img-focus"))}},n.prototype.imageSize=function(e){var n=this;if("IMG"===e.selectNode[0].nodeName&&(this.imagDialog(e),!t.isNullOrUndefined(this.dialogObj))){var i=this.i10n.getConstant("imageSizeHeader"),o=this.i10n.getConstant("dialogUpdate"),r=this.imgsizeInput(e),s={args:e.args,selfImage:this,selection:e.selection,selectNode:e.selectNode};this.dialogObj.setProperties({height:"inherit",width:"290px",header:i,content:r,position:{X:"center",Y:"center"},buttons:[{click:function(e){n.insertSize(s)},buttonModel:{content:o,cssClass:"e-flat e-update-size",isPrimary:!0}}]}),this.dialogObj.element.style.maxHeight="inherit",this.dialogObj.content.querySelector("input").focus()}},n.prototype.break=function(e){if("IMG"===e.selectNode[0].nodeName){var t=e.args.item?e.args.item.subCommand:"Break";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})}},n.prototype.inline=function(e){if("IMG"===e.selectNode[0].nodeName){var t=e.args.item?e.args.item.subCommand:"Inline";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})}},n.prototype.justifyImageLeft=function(e){var t=e.args.item?e.args.item.subCommand:"JustifyLeft";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})},n.prototype.justifyImageRight=function(e){var t=e.args.item?e.args.item.subCommand:"JustifyRight";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})},n.prototype.justifyImageCenter=function(e){var t=e.args.item?e.args.item.subCommand:"JustifyCenter";this.parent.formatter.process(this.parent,e.args,e.args,{selectNode:e.selectNode,subCommand:t})},n.prototype.imagDialog=function(e){var n=this;if(this.dialogObj)this.dialogObj.hide({returnValue:!0});else{var i=this.parent.createElement("div",{className:"e-rte-img-dialog",id:this.rteID+"_image"});this.parent.element.appendChild(i);var o=this.i10n.getConstant("dialogInsert"),r=this.i10n.getConstant("dialogCancel"),s=this.i10n.getConstant("imageHeader"),a=e.selection,l={selfImage:this,selection:e.selection,args:e.args,selectParent:e.selectParent},d={header:s,cssClass:$t,enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"340px",height:"inherit",position:{X:"center",Y:t.Browser.isDevice?"center":"top"},isModal:t.Browser.isDevice,buttons:[{click:this.insertImageUrl.bind(l),buttonModel:{content:o,cssClass:"e-flat e-insertImage",isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:r}}],target:t.Browser.isDevice?document.body:this.parent.element,animationSettings:{effect:"None"},close:function(e){n.isImgUploaded&&n.uploadObj.removing(),n.parent.isBlur=!1,e&&e.event.returnValue&&("HTML"===n.parent.editorMode?a.restore():n.parent.formatter.editorManager.markdownSelection.restore(n.parent.contentModule.getEditPanel())),n.dialogObj.destroy(),t.detach(n.dialogObj.element),n.dialogRenderObj.close(e),n.dialogObj=null}},c=this.parent.createElement("div",{className:"e-img-content"});(!t.isNullOrUndefined(this.parent.insertImageSettings.path)&&"Markdown"===this.parent.editorMode||"HTML"===this.parent.editorMode)&&c.appendChild(this.imgUpload(e));var p=this.parent.createElement("div",{className:"e-linkheader"}),h=this.i10n.getConstant("imageLinkHeader");"HTML"===this.parent.editorMode?p.innerHTML=h:p.innerHTML=this.i10n.getConstant("mdimageLink"),c.appendChild(p),c.appendChild(this.imageUrlPopup(e)),e.selectNode&&"IMG"===e.selectNode[0].nodeName?(d.header=this.parent.localeObj.getConstant("editImageHeader"),d.content=c):d.content=c,this.dialogObj=this.dialogRenderObj.render(d),this.dialogObj.createElement=this.parent.createElement,this.dialogObj.appendTo(i),e.selectNode&&"IMG"===e.selectNode[0].nodeName&&"insertImage"===e.name&&(this.dialogObj.element.querySelector(".e-insertImage").textContent=this.parent.localeObj.getConstant("dialogUpdate")),i.style.maxHeight="inherit",this.quickToolObj&&(this.quickToolObj.imageQTBar&&document.body.contains(this.quickToolObj.imageQTBar.element)&&(this.quickToolObj.imageQTBar.hidePopup(),t.isNullOrUndefined(e.selectParent)||t.removeClass([e.selectParent[0]],"e-img-focus")),this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup())}},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.dialogObj.hide({returnValue:!0}),this.isImgUploaded&&this.uploadObj.removing()},n.prototype.onDocumentClick=function(e){var n=e.target;"IMG"===n.nodeName&&(this.imgEle=n),!t.isNullOrUndefined(this.dialogObj)&&(!t.closest(n,"#"+this.dialogObj.element.id)&&this.parent.toolbarSettings.enable&&this.parent.getToolbarElement()&&!this.parent.getToolbarElement().contains(e.target)||this.parent.getToolbarElement()&&this.parent.getToolbarElement().contains(e.target)&&!t.closest(n,"#"+this.parent.getID()+"_toolbar_Image")&&!n.querySelector("#"+this.parent.getID()+"_toolbar_Image"))&&(this.dialogObj.hide({returnValue:!0}),this.parent.isBlur=!0,y(this.parent.element,"focusout")),"IMG"===e.target.tagName||!this.imgResizeDiv||this.quickToolObj&&this.quickToolObj.imageQTBar&&this.quickToolObj.imageQTBar.element.contains(e.target)||!this.contentModule.getEditPanel().contains(this.imgResizeDiv)||this.cancelResizeAction(),"IMG"!==n.tagName&&this.contentModule.getEditPanel().querySelector(".e-img-resize")&&(this.remvoeResizEle(),this.contentModule.getEditPanel().querySelector("img").style.outline="")},n.prototype.remvoeResizEle=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.imageUrlPopup=function(e){var t=this.parent.createElement("div",{className:"imgUrl"}),n=this.i10n.getConstant("imageUrl");return this.inputUrl=this.parent.createElement("input",{className:"e-input e-img-url",attrs:{placeholder:n,spellcheck:"false"}}),t.appendChild(this.inputUrl),t},n.prototype.insertImageUrl=function(e){var n=this.selfImage;n.isImgUploaded=!1;var i=n.inputUrl.value;if(0===n.parent.formatter.getUndoRedoStack().length&&n.parent.formatter.saveData(),t.isNullOrUndefined(n.uploadUrl)||""===n.uploadUrl.url){if(""!==i){if("HTML"===n.parent.editorMode&&t.isNullOrUndefined(t.closest(this.selection.range.startContainer.parentNode,"#"+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?Vt:_t,url:i,selection:this.selection,altText:s,selectParent:this.selectParent,width:{width:n.parent.insertImageSettings.width,minWidth:n.parent.insertImageSettings.minWidth,maxWidth:n.parent.insertImageSettings.maxWidth},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?Vt:_t,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.remvoeResizEle())},n.prototype.imgsizeInput=function(e){var n=e.selectNode[0],i=this.i10n.getConstant("imageHeight"),o=this.i10n.getConstant("imageWidth"),s=this.parent.createElement("div",{className:"e-img-sizewrap"}),a=C('<div class="e-rte-label"><label>'+o+'</label></div><div class="e-rte-field"><input type="text" data-role ="none" id="imgwidth" class="e-img-width" value='+("auto"===n.getAttribute("width")||t.isNullOrUndefined(n.getAttribute("width"))?n.width:n.getClientRects()[0].width)+' /></div><div class="e-rte-label"><label>'+i+'</label></div><div class="e-rte-field"> <input type="text" data-role ="none" id="imgheight" class="e-img-height" value='+("auto"===n.getAttribute("height")||t.isNullOrUndefined(n.getAttribute("height"))?n.height:n.getClientRects()[0].height)+" /></div>");s.appendChild(a);var l=new r.NumericTextBox({format:"###.### px",min:this.parent.insertImageSettings.minWidth,max:this.parent.insertImageSettings.maxWidth,enableRtl:this.parent.enableRtl,locale:this.parent.locale});l.isStringTemplate=!0,l.createElement=this.parent.createElement,l.appendTo(s.querySelector("#imgwidth"));var d=new r.NumericTextBox({format:"###.### px",min:this.parent.insertImageSettings.minHeight,max:this.parent.insertImageSettings.maxHeight,enableRtl:this.parent.enableRtl,locale:this.parent.locale});return d.isStringTemplate=!0,d.createElement=this.parent.createElement,d.appendTo(s.querySelector("#imgheight")),s},n.prototype.insertSize=function(e){e.selection.restore();var t=e.selfImage;0===t.parent.formatter.getUndoRedoStack().length&&t.parent.formatter.saveData();var n=t.dialogObj.element,i=parseFloat(n.querySelector(".e-img-width").value),o=parseFloat(n.parentElement.querySelector(".e-img-height").value);t.parent.formatter.process(this.parent,e.args,e.args,{width:i,height:o,selectNode:e.selectNode,subCommand:e.args.item.subCommand}),this.imgResizeDiv&&t.imgResizePos(e.selectNode[0],this.imgResizeDiv),t.dialogObj.hide({returnValue:!0})},n.prototype.insertImage=function(e){if(this.imagDialog(e),!t.isNullOrUndefined(this.dialogObj)){this.dialogObj.element.style.maxHeight="inherit";var n=this.dialogObj.element.querySelector(".e-img-content");!t.isNullOrUndefined(this.parent.insertImageSettings.path)&&"Markdown"===this.parent.editorMode||"HTML"===this.parent.editorMode?n.querySelector("#"+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,"#"+this.parent.contentModule.getPanel().id))||l&&!d(e.selection.range.startContainer.parentNode.ownerDocument.querySelector("body"),"e-lib"))){this.contentModule.getEditPanel().focus();var c=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());n=this.parent.formatter.editorManager.nodeSelection.save(c,this.parent.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(c)}else n=e.selection,i=e.selectParent;var p=this.parent.createElement("div",{className:"e-img-uploadwrap e-droparea"}),h=this.i10n.getConstant("imageDeviceUploadMessage"),u=this.i10n.getConstant("imageUploadMessage"),m=this.parent.createElement("span",{className:"e-droptext"}),g=this.parent.createElement("span",{className:"e-rte-upload-text",innerHTML:t.Browser.isDevice?h:u});m.appendChild(g);var f=this.parent.createElement("button",{className:"e-browsebtn",id:this.rteID+"_insertImage",attrs:{autofocus:"true",type:"button"}});m.appendChild(f),p.appendChild(m);var b=this.i10n.getConstant("browse"),v=new s.Button({content:b,enableRtl:this.parent.enableRtl});v.isStringTemplate=!0,v.createElement=this.parent.createElement,v.appendTo(f);var y=t.Browser.isDevice?m:f;t.EventHandler.add(y,"click",this.fileSelect,this);var C=this.parent.createElement("input",{id:this.rteID+"_upload",attrs:{type:"File",name:"UploadFiles"}});p.appendChild(C);var T,S,E,N;return this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl},dropArea:m,multiple:!1,enableRtl:this.parent.enableRtl,allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),selected:function(e){a.isImgUploaded=!0,E=e,o.parent.isServerRendered&&(E=JSON.parse(JSON.stringify(e)),e.cancel=!0,S=e.filesData),o.parent.trigger(it,E,function(e){if(o.checkExtension(e.filesData[0]),T=e.filesData[0].name,"HTML"===o.parent.editorMode&&t.isNullOrUndefined(o.parent.insertImageSettings.path)){var r=new FileReader;r.addEventListener("load",function(e){var t="Base64"===o.parent.insertImageSettings.saveFormat?r.result:URL.createObjectURL(x(r.result));a.uploadUrl={url:t,selection:n,altText:T,selectParent:i,width:{width:a.parent.insertImageSettings.width,minWidth:a.parent.insertImageSettings.minWidth,maxWidth:a.parent.insertImageSettings.maxWidth},height:{height:a.parent.insertImageSettings.height,minHeight:a.parent.insertImageSettings.minHeight,maxHeight:a.parent.insertImageSettings.maxHeight}},a.inputUrl.setAttribute("disabled","true")}),r.readAsDataURL(e.filesData[0].rawFile)}o.parent.isServerRendered&&o.uploadObj._internalRenderSelect(e,S)})},beforeUpload:function(e){o.parent.isServerRendered&&(N=JSON.parse(JSON.stringify(e)),e.cancel=!0,o.parent.trigger(ot,N,function(e){e.cancel||o.uploadObj.uploadFiles(S,null)}))},uploading:function(e){o.parent.isServerRendered||o.parent.trigger(ot,e)},success:function(e){o.parent.trigger(rt,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:T,selectParent:i,width:{width:a.parent.insertImageSettings.width,minWidth:a.parent.insertImageSettings.minWidth,maxWidth:a.parent.insertImageSettings.maxWidth},height:{height:a.parent.insertImageSettings.height,minHeight:a.parent.insertImageSettings.minHeight,maxHeight:a.parent.insertImageSettings.maxHeight}},a.inputUrl.setAttribute("disabled","true")}})},failure:function(e){o.parent.trigger(st,e)},removing:function(){o.parent.trigger(at,e,function(e){a.isImgUploaded=!1,a.inputUrl.removeAttribute("disabled"),a.uploadUrl&&(a.uploadUrl.url=""),o.dialogObj.getButtons(0).element.removeAttribute("disabled")})}}),this.uploadObj.isStringTemplate=!0,this.uploadObj.createElement=this.parent.createElement,this.uploadObj.appendTo(C),p},n.prototype.checkExtension=function(e){this.uploadObj.allowedExtensions&&(-1===this.uploadObj.allowedExtensions.toLocaleLowerCase().indexOf(("."+e.type).toLocaleLowerCase())?this.dialogObj.getButtons(0).element.setAttribute("disabled","disabled"):this.dialogObj.getButtons(0).element.removeAttribute("disabled"))},n.prototype.fileSelect=function(){return this.dialogObj.element.getElementsByClassName("e-file-select-wrap")[0].querySelector("button").click(),!1},n.prototype.dragStart=function(e){if("IMG"!==e.target.nodeName)return!0;this.parent.trigger(he,e,function(t){t.cancel?e.preventDefault():(e.dataTransfer.effectAllowed="copyMove",e.target.classList.add(Dn))})},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,i=this.parent.inputElement.ownerDocument.querySelector("."+Dn);if(!(i&&"IMG"===i.tagName||e.dataTransfer.files.length>0))return!0;this.parent.trigger(he,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;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(je,{range:o});if(n.parent.element.querySelector(".e-droparea"))return;n.insertDragImage(e)}})},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){e.preventDefault();var t=this.parent.element.querySelector(""+Rn);if(this.parent.notify("drop",{args:e}),t&&t.classList.add(Pt),e.dataTransfer.files.length>0){if(e.dataTransfer.files.length>1)return;for(var n=e.dataTransfer.files,i=n[0].name,o=i.substring(i.lastIndexOf(".")),r=this.parent.insertImageSettings.allowedTypes,s=0;s<r.length;s++)if(o.toLocaleLowerCase()===r[s].toLowerCase())if(this.parent.insertImageSettings.saveUrl)this.onSelect(e);else{var a={args:e,text:"",file:n[0]};e.preventDefault(),this.imagePaste(a)}}else{var l=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),d=this.parent.inputElement.ownerDocument.querySelector("."+Dn);if(d&&"IMG"===d.tagName){d.nextElementSibling&&d.nextElementSibling.classList.contains("e-img-inner")?l.insertNode(d.parentElement.parentElement):l.insertNode(d),d.classList.remove(Dn),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());a=e;this.resizeStart(a,d),this.hideImageQuickToolbar()}}},n.prototype.onSelect=function(e){var t=this,n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i=this.parent.createElement("ul",{className:Bn});this.parent.element.appendChild(i);var o={name:"",size:0,status:"",statusCode:"",type:"",rawFile:e.dataTransfer.files[0],validationMessages:{}},r=this.parent.createElement("IMG");r.style.opacity="0.5",r.classList.add(On),r.classList.add(Vt),r.classList.add("e-resize");var s=o.rawFile,a=new FileReader;a.addEventListener("load",function(){var e=URL.createObjectURL(x(a.result));r.src="Blob"===t.parent.insertImageSettings.saveFormat?e:a.result}),s&&a.readAsDataURL(s),n.insertNode(r),this.uploadMethod(e,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}}),this.popupObj.element.style.display="none",t.addClass([this.popupObj.element],Rn),t.addClass([this.popupObj.element],Mn);var p=e.dataTransfer.files[0].size>1e6?300:100;setTimeout(function(){a.refreshPopup(n)},p);var h,u,m=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument());this.uploadObj=new r.Uploader({asyncSettings:{saveUrl:this.parent.insertImageSettings.saveUrl},cssClass:In,dropArea:this.parent.element,allowedExtensions:this.parent.insertImageSettings.allowedTypes.toString(),removing:function(){i.parent.inputElement.contentEditable="true",s=!1,t.detach(n),i.popupObj.close()},canceling:function(){i.parent.inputElement.contentEditable="true",s=!1,t.detach(n),i.popupObj.close()},beforeUpload:function(e){i.parent.isServerRendered&&(u=JSON.parse(JSON.stringify(e)),e.cancel=!0,s=!0,i.parent.trigger(ot,u,function(e){e.cancel||(i.uploadObj.uploadFiles(h,null),i.parent.inputElement.contentEditable="false")}))},uploading:function(e){i.parent.isServerRendered||(s=!0,i.parent.trigger(ot,e),i.parent.inputElement.contentEditable="false")},selected:function(e){s&&(e.cancel=!0),i.parent.isServerRendered&&(h=e.filesData)},failure:function(t){s=!1,i.parent.inputElement.contentEditable="true";var o={args:e,type:"Images",isNotify:void 0,elements:n};setTimeout(function(){i.uploadFailure(n,o,t)},900)},success:function(t){s=!1,i.parent.inputElement.contentEditable="true";var o={args:e,type:"Images",isNotify:void 0,elements:n};setTimeout(function(){i.uploadSuccess(n,e,o,t)},900)}}),this.uploadObj.appendTo(this.popupObj.element.childNodes[0]),t.detach(this.popupObj.element.querySelector(".e-rte-dialog-upload .e-file-select-wrap")),m.selectNodeContents(n),this.parent.formatter.editorManager.nodeSelection.setRange(this.contentModule.getDocument(),m)},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(st,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"),this.parent.trigger(rt,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.close(),this.showImageQuickToolbar(i),this.resizeStart(n,e),this.uploadObj.destroy()},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?Vt:_t,url:"Base64"!==n.parent.insertImageSettings.saveFormat&&t.isNullOrUndefined(e.callBack)?URL.createObjectURL(x(o.result)):o.result,width:{width:i.parent.insertImageSettings.width,minWidth:i.parent.insertImageSettings.minWidth,maxWidth:i.parent.insertImageSettings.maxWidth},height:{height:i.parent.insertImageSettings.height,minHeight:i.parent.insertImageSettings.minHeight,maxHeight:i.parent.insertImageSettings.maxHeight}};t.isNullOrUndefined(e.callBack)?(i.parent.formatter.process(i.parent,{item:{command:"Images",subCommand:"Image"}},e.args,s),n.showPopupToolBar(e,s)):e.callBack(s)}),o.readAsDataURL(e.file)}},n.prototype.showPopupToolBar=function(t,n){var i=this,o='img[src="'+n.url+'"]',r=this.parent.inputElement.querySelector(o);this.parent.quickToolbarModule.createQTBar("Image","MultiRow",this.parent.quickToolbarSettings.image,e.RenderType.ImageToolbar);var s={args:t.args,type:"Images",isNotify:void 0,elements:r};r&&setTimeout(function(){i.showImageQuickToolbar(s),i.resizeStart(t.args,r)},0)},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.getModuleName=function(){return"image"},n}(),fr=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(Ee,this.sourceCode,this),this.parent.on(I,this.onInitialEnd,this),this.parent.on(Ne,this.updateSourceCode,this)},n.prototype.onInitialEnd=function(){this.parent.formatter.editorManager.observer.on(Li,this.onKeyDown,this)},n.prototype.removeEventListener=function(){this.unWireEvent(),this.parent.off(Ee,this.sourceCode),this.parent.off(Ne,this.updateSourceCode),this.parent.off(I,this.onInitialEnd),this.parent.formatter.editorManager.observer.off(Li,this.onKeyDown)},n.prototype.getSourceCode=function(){return this.parent.createElement("textarea",{className:"e-rte-srctextarea"})},n.prototype.wireEvent=function(e){this.keyboardModule=new fi(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 fi(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(Me,{args:e})},n.prototype.previewKeyDown=function(e){switch(e.action){case"html-source":this.updateSourceCode(e),e.preventDefault();break;case"toolbar-focus":if(this.parent.toolbarSettings.enable){this.parent.toolbarModule.baseToolbar.toolbarObj.element.querySelector('.e-toolbar-item[aria-disabled="false"][title] [tabindex]').focus()}}},n.prototype.onKeyDown=function(e){switch(e.event.action){case"html-source":e.event.preventDefault(),this.sourceCode(e),e.callBack({requestType:"SourceCode",editorMode:"HTML",event:e.event})}},n.prototype.sourceCode=function(n){this.parent.isBlur=!1,this.parent.trigger(he,{requestType:"SourceCode",targetItem:"SourceCode",args:n});var i=t.selectAll("."+Bt,this.parent.element);if(this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),this.parent.notify(ge,{targetItem:"SourceCode",updateItem:"Preview",baseToolbar:this.parent.getBaseToolbarObject()}),t.isNullOrUndefined(this.previewElement)&&(this.previewElement=this.getSourceCode()),this.parent.updateValueData(),this.parent.iframeSettings.enable){var o=void 0;(o=t.isNullOrUndefined(this.parent.element.querySelector("#"+this.parent.element.id+"_source-view"))?this.parent.createElement("div",{className:"e-source-content",id:this.parent.element.id+"_source-view"}):this.parent.element.querySelector("#"+this.parent.element.id+"_source-view")).appendChild(this.previewElement),this.parent.element.appendChild(o),o.style.height=this.contentModule.getPanel().style.height,o.style.marginTop=this.contentModule.getPanel().style.marginTop,this.getPanel().value=this.getTextAreaValue(),this.contentModule.getPanel().style.display="none",o.style.display="block"}else this.contentModule.getPanel().appendChild(this.previewElement),this.getPanel().value=this.getTextAreaValue(),this.contentModule.getEditPanel().style.display="none",this.previewElement.style.display="block";if(this.parent.isBlur=!1,this.parent.disableToolbarItem(this.parent.toolbarSettings.items),this.parent.enableToolbarItem("SourceCode"),this.parent.getToolbar()&&t.removeClass([this.parent.getToolbar()],[Jt]),t.removeClass(i,[Xt]),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").style.display="none"}this.parent.trigger(ue,{requestType:"SourceCode",targetItem:"SourceCode",args:n}),this.parent.invokeChangeEvent()},n.prototype.updateSourceCode=function(e){this.parent.isBlur=!1,this.parent.trigger(he,{requestType:"Preview",targetItem:"Preview",args:e});var n=this.getPanel();this.parent.notify(ge,{targetItem:"Preview",updateItem:"SourceCode",baseToolbar:this.parent.getBaseToolbarObject()});var i=this.parent.serializeValue(n.value),o=null===i||""===i?"<p><br/></p>":i;if(this.parent.iframeSettings.enable?(n.parentElement.style.display="none",this.contentModule.getPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=o):(n.style.display="none",this.contentModule.getEditPanel().style.display="block",this.contentModule.getEditPanel().innerHTML=o),this.parent.isBlur=!1,this.parent.enableToolbarItem(this.parent.toolbarSettings.items),this.parent.getToolbar()&&t.removeClass([this.parent.getToolbar()],[Jt]),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").style.display="block"}this.parent.trigger(ue,{requestType:"Preview",targetItem:"Preview",args:e}),this.parent.formatter.enableUndo(this.parent),this.parent.invokeChangeEvent()},n.prototype.getTextAreaValue=function(){return"<p><br></p>"===this.contentModule.getEditPanel().innerHTML||12===this.contentModule.getEditPanel().innerHTML.length||1===this.contentModule.getEditPanel().childNodes.length&&"P"===this.contentModule.getEditPanel().childNodes[0].tagName&&7===this.contentModule.getEditPanel().innerHTML.length?"":this.parent.value},n.prototype.getPanel=function(){return this.parent.element.querySelector(".e-rte-srctextarea")},n.prototype.getViewPanel=function(){return this.parent.iframeSettings.enable&&this.getPanel()?this.getPanel().parentElement:this.getPanel()},n.prototype.destroy=function(){this.removeEventListener()},n}(),br=function(){function n(e,t){this.ensureInsideTableList=!0,this.pageX=null,this.pageY=null,this.moveEle=null,this.parent=e,this.rteID=e.element.id,this.l10n=t.getService("rteLocale"),this.rendererFactory=t.getService("rendererFactory"),this.dialogRenderObj=t.getService("dialogRenderObject"),this.addEventListener()}return n.prototype.addEventListener=function(){this.parent.isDestroyed||(this.parent.on(Qe,this.renderDlgContent,this),this.parent.on(I,this.afterRender,this),this.parent.on(We,this.docClick,this),this.parent.on(Re,this.editAreaClickHandler,this),this.parent.on(Ve,this.onToolbarAction,this),this.parent.on(ee,this.dropdownSelect,this),this.parent.on(K,this.keyDown,this))},n.prototype.removeEventListener=function(){this.parent.isDestroyed||(this.parent.off(Qe,this.renderDlgContent),this.parent.off(I,this.afterRender),this.parent.off(We,this.docClick),this.parent.off(Re,this.editAreaClickHandler),this.parent.off(Ve,this.onToolbarAction),this.parent.off(ee,this.dropdownSelect),this.parent.off(De,this.cellSelect),this.parent.off(Ae,this.setBGColor),this.parent.off(K,this.keyDown))},n.prototype.afterRender=function(){this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content),this.parent.on(Ae,this.setBGColor,this),this.parent.on(De,this.cellSelect,this),this.parent.tableSettings.resize&&t.EventHandler.add(this.parent.contentModule.getEditPanel(),t.Browser.touchStartEvent,this.resizeStart,this),!t.Browser.isDevice&&this.parent.tableSettings.resize&&t.EventHandler.add(this.contentModule.getEditPanel(),"mouseover",this.resizeHelper,this)},n.prototype.dropdownSelect=function(e){var t=e.item;if(document.body.contains(document.body.querySelector(".e-rte-quick-toolbar"))&&"Table"===t.command){var n=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),i={args:e,selection:this.parent.formatter.editorManager.nodeSelection.save(n,this.contentModule.getDocument()),selectParent:this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(n)};switch(t.subCommand){case"InsertRowBefore":case"InsertRowAfter":this.addRow(i.selection,e);break;case"InsertColumnLeft":case"InsertColumnRight":this.addColumn(i.selection,e);break;case"DeleteColumn":case"DeleteRow":this.removeRowColumn(i.selection,e);break;case"AlignTop":case"AlignMiddle":case"AlignBottom":this.verticalAlign(i,e);break;case"Dashed":case"Alternate":this.tableStyles(i,t.subCommand)}}},n.prototype.keyDown=function(e){var n=e.args;switch(n.action){case"escape":break;case"insert-table":if("HTML"===this.parent.editorMode){var i=this.parent.contentModule.getDocument(),o=this.parent.formatter.editorManager.nodeSelection.getRange(i),r=this.parent.formatter.editorManager.nodeSelection.save(o,i),s={originalEvent:e.args,item:{command:"Table",subCommand:"CreateTable"}};this.insertTableDialog({self:this,args:s,selection:r})}n.preventDefault()}if(!t.isNullOrUndefined(this.parent.formatter.editorManager.nodeSelection)&&this.contentModule&&"KeyK"!==n.code){o=this.parent.formatter.editorManager.nodeSelection.getRange(this.parent.contentModule.getDocument()),r=this.parent.formatter.editorManager.nodeSelection.save(o,this.contentModule.getDocument());var a=this.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(o)[0];if(a=a&&"TD"!==a.tagName&&"TH"!==a.tagName?a.parentElement:a,(8===n.keyCode||46===n.keyCode||n.ctrlKey&&88===n.keyCode)&&(a&&"TBODY"===a.tagName?(n.preventDefault(),this.removeTable(r,n,!0)):a&&a.querySelectorAll("table").length>0&&this.removeResizeEle()),a&&"TD"!==a.tagName&&"TH"!==a.tagName){var l=t.closest(a,"td");a=!t.isNullOrUndefined(l)&&this.parent.inputElement.contains(l)?l:a}if(a&&("TD"===a.tagName||"TH"===a.tagName))switch(n.keyCode){case 9:case 37:case 39:this.tabSelection(n,r,a);break;case 40:case 38:this.tableArrowNavigation(n,r,a)}}},n.prototype.onToolbarAction=function(e){switch(e.args.item.subCommand){case"TableHeader":this.tableHeader(e.selection,e.args);break;case"TableRemove":this.removeTable(e.selection,e.args);break;case"TableEditProperties":this.editTable(e)}},n.prototype.verticalAlign=function(e,n){var i=t.closest(e.selectParent[0],"td")||t.closest(e.selectParent[0],"th");i&&this.parent.formatter.process(this.parent,n,n,{tableCell:i,subCommand:n.item.subCommand})},n.prototype.tableStyles=function(e,n){var i=t.closest(e.selectParent[0],"table");"Dashed"===n&&(this.parent.element.classList.contains(fn)?this.parent.element.classList.remove(fn):this.parent.element.classList.add(fn),i.classList.contains(fn)?i.classList.remove(fn):i.classList.add(fn)),"Alternate"===n&&(this.parent.element.classList.contains(bn)?this.parent.element.classList.remove(bn):this.parent.element.classList.add(bn),i.classList.contains(bn)?i.classList.remove(bn):i.classList.add(bn)),this.parent.formatter.saveData(),this.parent.formatter.editorManager.nodeSelection.restore()},n.prototype.insideList=function(e){for(var t=this.parent.formatter.editorManager.domNode.blockNodes(),n=[],i=0;i<t.length;i++)"LI"===t[i].parentNode.tagName?n.push(t[i].parentNode):"LI"===t[i].tagName&&"P"!==t[i].childNodes[0].tagName&&"OL"!==t[i].childNodes[0].tagName&&"UL"!==t[i].childNodes[0].tagName&&n.push(t[i]);return n.length>1||n.length&&0===e.startOffset&&0===e.endOffset?(this.ensureInsideTableList=!0,!0):(this.ensureInsideTableList=!1,!1)},n.prototype.tabSelection=function(e,n,i){var o=this.insideList(n.range);if((37!==e.keyCode&&39!==e.keyCode||3!==n.range.startContainer.nodeType)&&!o)if(e.preventDefault(),i.classList.remove(gn),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&&(this.addRow(n,e,!0),""!==(a=a.parentElement.nextSibling.firstChild).textContent.trim()&&t.closest(a,"td")?n.setSelectionNode(this.contentModule.getDocument(),a):n.setSelectionText(this.contentModule.getDocument(),a,a,0,0))}},n.prototype.tableArrowNavigation=function(e,n,i){var o=n.range.startContainer;40===e.keyCode&&3===o.nodeType&&(o.nextSibling&&"BR"===o.nextSibling.nodeName||o.parentNode&&"TD"!==o.parentNode.nodeName)||38===e.keyCode&&3===o.nodeType&&(o.previousSibling&&"BR"===o.previousSibling.nodeName||o.parentNode&&"TD"!==o.parentNode.nodeName)||(e.preventDefault(),i.classList.remove(gn),(i=40===e.keyCode?t.isNullOrUndefined(t.closest(i,"tr").nextSibling)?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").nextSibling.children[i.cellIndex]:t.isNullOrUndefined(t.closest(i,"tr").previousSibling)?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").previousSibling.children[i.cellIndex])&&n.setSelectionText(this.contentModule.getDocument(),i,i,0,0))},n.prototype.setBGColor=function(e){var n=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument()),i=this.parent.formatter.editorManager.nodeSelection.save(n,this.contentModule.getDocument()).range.startContainer;if((i=3===i.nodeType?t.closest(i.parentNode,"td,th"):t.closest(i,"td, th"))&&("TD"===i.nodeName||"TH"===i.nodeName)){for(var o=t.closest(i,"table").querySelectorAll("."+gn),r=0;r<o.length;r++)o[r].style.backgroundColor=e.item.value;this.parent.formatter.saveData()}},n.prototype.hideTableQuickToolbar=function(){this.quickToolObj&&this.quickToolObj.tableQTBar&&document.body.contains(this.quickToolObj.tableQTBar.element)&&this.quickToolObj.tableQTBar.hidePopup()},n.prototype.tableHeader=function(e,t){this.parent.formatter.process(this.parent,t,t.originalEvent,{selection:e,subCommand:t.item.subCommand})},n.prototype.editAreaClickHandler=function(n){if(!this.parent.readonly){var i=n.args,o=this.parent.quickToolbarSettings.showOnRightClick;if(!(2===i.which||o&&1===i.which||!o&&3===i.which)&&"HTML"===this.parent.editorMode&&this.parent.quickToolbarModule&&this.parent.quickToolbarModule.tableQTBar){this.quickToolObj=this.parent.quickToolbarModule;var r=i.target;this.contentModule=this.rendererFactory.getRenderer(e.RenderType.Content);if(this.quickToolObj.tableQTBar.element.classList.contains("e-rte-pop"))return;var s=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument()),a=t.closest(r,"table");if(r&&"A"!==r.nodeName&&"IMG"!==r.nodeName&&("TD"===r.nodeName||"TH"===r.nodeName||"TABLE"===r.nodeName||a&&this.parent.contentModule.getEditPanel().contains(a))&&(3!==s.startContainer.nodeType||s.collapsed)){var l=this.parent.formatter.editorManager.nodeSelection.getRange(this.contentModule.getDocument());this.parent.formatter.editorManager.nodeSelection.save(l,this.contentModule.getDocument()),this.parent.formatter.editorManager.nodeSelection.Clear(this.contentModule.getDocument());var d=this.parent.iframeSettings.enable?window.pageYOffset+this.parent.element.getBoundingClientRect().top+i.clientY:i.pageY;this.quickToolObj.tableQTBar.showPopup(i.pageX,d,r),this.parent.formatter.editorManager.nodeSelection.restore()}else this.hideTableQuickToolbar()}}},n.prototype.tableCellSelect=function(e){var n=e.target,i=Array.prototype.slice.call(n.parentElement.parentElement.children).indexOf(n.parentElement),o=Array.prototype.slice.call(n.parentElement.children).indexOf(n),r=this.dlgDiv.querySelectorAll(".e-rte-tablecell");Array.prototype.forEach.call(r,function(e){var n=Array.prototype.slice.call(e.parentElement.parentElement.children).indexOf(e.parentElement),r=Array.prototype.slice.call(e.parentElement.children).indexOf(e);t.removeClass([e],"e-active"),n<=i&&r<=o&&t.addClass([e],"e-active")}),this.tblHeader.innerHTML=o+1+"x"+(i+1)},n.prototype.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&&!d(a.ownerDocument.querySelector("body"),"e-lib")||!r.parent.iframeSettings.enable&&t.isNullOrUndefined(t.closest(a,"#"+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 c={row:e,columns:n,width:{minWidth:r.parent.tableSettings.minWidth,maxWidth:r.parent.tableSettings.maxWidth,width:r.parent.tableSettings.width},selection:o.selection};r.popupObj&&r.popupObj.hide(),r.editdlgObj&&r.editdlgObj.hide(),r.parent.formatter.process(r.parent,o.args,o.args.originalEvent,c),r.contentModule.getEditPanel().focus(),r.parent.on(De,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"),gn),!n||"TD"!==n.tagName&&"TH"!==n.tagName||(n.removeAttribute("class"),t.addClass([n],gn),this.curTable=this.curTable?this.curTable:t.closest(n,"table"),this.removeResizeEle(),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&t.detach(this.helper))},n.prototype.resizeHelper=function(e){if(!this.parent.readonly){var n=e.target||e.targetTouches[0].target,i=t.closest(n,"table");"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.removeResizeEle(),this.tableResizeEleCreation(this.curTable,e))}},n.prototype.tableResizeEleCreation=function(e,n){this.parent.preventDefaultResize(n);for(var i=Array.prototype.slice.call(e.rows[0].cells,1),o=[],r=0;r<e.rows.length;r++)o.push(Array.prototype.slice.call(e.rows[r].cells,0,1)[0]);var s=parseInt(getComputedStyle(e).height,10),a=parseInt(getComputedStyle(e).width,10),l=this.calcPos(e);for(r=0;i.length>r;r++){var d=this.parent.createElement("span",{attrs:{"data-col":(r+1).toString(),unselectable:"on",contenteditable:"false"}});d.classList.add(zn,vn),d.style.cssText="height: "+s+"px; width: 4px; top: "+l.top+"px; left:"+(l.left+this.calcPos(i[r]).left)+"px;",this.contentModule.getEditPanel().appendChild(d)}for(r=0;o.length>r;r++){var c=this.parent.createElement("span",{attrs:{"data-row":r.toString(),unselectable:"on",contenteditable:"false"}});c.classList.add(zn,yn);var p=t.isNullOrUndefined(e.getAttribute("cellspacing"))&&""===e.getAttribute("cellspacing")?this.calcPos(o[r]).left:0;c.style.cssText="width: "+a+"px; height: 4px; top: "+(this.calcPos(o[r]).top+l.top+o[r].offsetHeight-2)+"px; left:"+(p+l.left)+"px;",this.contentModule.getEditPanel().appendChild(c)}var h=this.parent.createElement("span",{className:Cn,attrs:{"data-col":i.length.toString(),unselectable:"on",contenteditable:"false"}});h.style.cssText="top: "+(l.top+s-4)+"px; left:"+(l.left+a-4)+"px;",t.Browser.isDevice&&h.classList.add("e-rmob"),this.contentModule.getEditPanel().appendChild(h)},n.prototype.removeResizeEle=function(){var e=this.parent.contentModule.getEditPanel().querySelectorAll(".e-column-resize, .e-row-resize, .e-table-box");if(e.length>0)for(var n=0;n<e.length;n++)t.detach(e[n])},n.prototype.calcPos=function(e){for(var n={top:0,left:0},i=e.getBoundingClientRect(),o=e.ownerDocument,r=e.offsetParent||o.documentElement;r&&(r===o.body||r===o.documentElement)&&"static"===r.style.position;)r=r.parentNode;return"TD"===r.nodeName&&"TABLE"===e.nodeName&&(r=t.closest(r,".e-control")),r&&r!==e&&1===r.nodeType&&(n=r.getBoundingClientRect()),{top:i.top-n.top,left:i.left-n.left}},n.prototype.getPointX=function(e){return e.touches&&e.touches.length?e.touches[0].pageX:e.pageX},n.prototype.getPointY=function(e){return e.touches&&e.touches.length?e.touches[0].pageY:e.pageY},n.prototype.resizeStart=function(e){var n=this;if(!this.parent.readonly){t.Browser.isDevice&&this.resizeHelper(e);var i=e.target;if(i.classList.contains(vn)||i.classList.contains(yn)||i.classList.contains(Cn)){if(e.preventDefault(),this.parent.preventDefaultResize(e),t.removeClass(this.curTable.querySelectorAll("td,th"),gn),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(vn)&&(this.resizeBtnStat.column=!0,this.columnEle=this.curTable.rows[0].cells[parseInt(i.getAttribute("data-col"),10)],this.colIndex=this.columnEle.cellIndex,this.moveEle=e.target,this.appendHelper()),i.classList.contains(yn)&&(this.rowEle=this.curTable.rows[parseInt(i.getAttribute("data-row"),10)],this.resizeBtnStat.row=!0,this.appendHelper()),i.classList.contains(Cn)&&(this.resizeBtnStat.tableBox=!0),t.Browser.isDevice&&this.helper&&!this.helper.classList.contains("e-reicon"))this.helper.classList.add("e-reicon"),t.EventHandler.add(document,t.Browser.touchStartEvent,this.removeHelper,this),t.EventHandler.add(this.helper,t.Browser.touchStartEvent,this.resizeStart,this);else{var o=t.isBlazor()?{requestType:"Table"}:{event:e,requestType:"Table"};this.parent.trigger(re,o,function(e){e.cancel&&n.cancelResizeAction()})}t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing,this),t.EventHandler.add(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd,this)}}},n.prototype.removeHelper=function(e){!e.target.classList.contains("e-reicon")&&this.helper&&(t.EventHandler.remove(document,t.Browser.touchStartEvent,this.removeHelper),t.EventHandler.remove(this.helper,t.Browser.touchStartEvent,this.resizeStart),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&t.detach(this.helper),this.pageX=null,this.helper=null)},n.prototype.appendHelper=function(){this.helper=this.parent.createElement("div",{className:"e-table-rhelper"}),t.Browser.isDevice&&this.helper.classList.add("e-reicon"),this.contentModule.getEditPanel().appendChild(this.helper),this.setHelperHeight()},n.prototype.setHelperHeight=function(){var e=this.calcPos(this.curTable);this.resizeBtnStat.column?(this.helper.classList.add("e-column-helper"),this.helper.style.cssText="height: "+getComputedStyle(this.curTable).height+"; top: "+e.top+"px; left:"+(e.left+this.calcPos(this.columnEle).left-1)+"px;"):(this.helper.classList.add("e-row-helper"),this.helper.style.cssText="width: "+getComputedStyle(this.curTable).width+"; top: "+(this.calcPos(this.rowEle).top+e.top+this.rowEle.offsetHeight)+"px; left:"+(this.calcPos(this.rowEle).left+e.left)+"px;")},n.prototype.updateHelper=function(){var e=this.calcPos(this.curTable);if(this.resizeBtnStat.column){var t=e.left+this.calcPos(this.columnEle).left-1;this.helper.style.left=t+"px"}else{var n=this.calcPos(this.rowEle).top+e.top+this.rowEle.offsetHeight;this.helper.style.top=n+"px"}},n.prototype.resizing=function(e){var n=this,i=this.getPointX(e),o=this.getPointY(e),r=this.parent.enableRtl?-(i-this.pageX):i-this.pageX,s=this.parent.enableRtl?-(o-this.pageY):o-this.pageY;this.pageX=i,this.pageY=o;var a=t.isBlazor()?{requestType:"table"}:{event:e,requestType:"table"};this.parent.trigger(se,a,function(i){if(i.cancel)n.cancelResizeAction();else{var o=n.contentModule.getEditPanel().querySelector(".e-table-box"),a=parseInt(getComputedStyle(n.curTable).width,10),l=parseInt(getComputedStyle(n.curTable).height,10),d=+getComputedStyle(n.contentModule.getEditPanel()).paddingRight.match(/\d/g).join(""),c=n.contentModule.getEditPanel().offsetWidth-2*d;if(n.resizeBtnStat.column){for(var p=n.curTable.rows[0].cells,h=parseFloat(n.columnEle.offsetWidth.toLocaleString())-r,u=parseFloat(n.columnEle.offsetWidth.toLocaleString())+parseFloat(p[n.colIndex-1].offsetWidth.toLocaleString()),m=0;m<n.curTable.rows.length;m++)if(u-h>20&&h>20){var g=u-h,f=h;n.curTable.rows[m].cells[n.colIndex-1].style.width=n.convertPixelToPercentage(g,a)+"%",n.curTable.rows[m].cells[n.colIndex].style.width=n.convertPixelToPercentage(f,a)+"%"}n.updateHelper()}else if(n.resizeBtnStat.row){n.parent.preventDefaultResize(e);var b=parseFloat(n.rowEle.clientHeight.toString())+s;b>20&&(n.rowEle.style.height=b+"px"),n.curTable.style.height="",o.style.cssText="top: "+(n.calcPos(n.curTable).top+l-4)+"px; left:"+(n.calcPos(n.curTable).left+a-4)+"px;",n.updateHelper()}else if(n.resizeBtnStat.tableBox){t.Browser.isDevice||t.EventHandler.remove(n.contentModule.getEditPanel(),"mouseover",n.resizeHelper);var v=n.curTable.style.width.indexOf("%")>-1;n.curTable.style.width=v?n.convertPixelToPercentage(a+r,c)+"%":a+r+"px",n.curTable.style.height=l+s+"px",o.classList.add("e-rbox-select"),o.style.cssText="top: "+(n.calcPos(n.curTable).top+l-4)+"px; left:"+(n.calcPos(n.curTable).left+a-4)+"px;"}}})},n.prototype.convertPixelToPercentage=function(e,t){return e/t*100},n.prototype.cancelResizeAction=function(){t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),this.removeResizeEle()},n.prototype.resizeEnd=function(e){this.resizeBtnInit(),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchMoveEvent,this.resizing),t.EventHandler.remove(this.contentModule.getDocument(),t.Browser.touchEndEvent,this.resizeEnd),this.contentModule.getEditPanel().querySelector(".e-table-box")&&this.contentModule.getEditPanel().contains(this.contentModule.getEditPanel().querySelector(".e-table-box"))&&(t.Browser.isDevice||t.EventHandler.add(this.contentModule.getEditPanel(),"mouseover",this.resizeHelper,this),this.removeResizeEle(),this.helper&&this.contentModule.getEditPanel().contains(this.helper)&&(t.detach(this.helper),this.helper=null),this.pageX=null,this.pageY=null,this.moveEle=null);var n=t.isBlazor()?{requestType:"table"}:{event:e,requestType:"table"};this.parent.trigger(ae,n),this.parent.formatter.saveData()},n.prototype.resizeBtnInit=function(){return this.resizeBtnStat={column:!1,row:!1,tableBox:!1}},n.prototype.addRow=function(e,t,n){var i;n&&(i={item:{command:"Table",subCommand:"InsertRowAfter"}});var o={selection:e,subCommand:n?i.item.subCommand:t.item.subCommand};this.parent.formatter.process(this.parent,n?i:t,t,o)},n.prototype.addColumn=function(e,t){this.parent.formatter.process(this.parent,t,t,{selection:e,width:this.parent.tableSettings.width,subCommand:t.item.subCommand})},n.prototype.removeRowColumn=function(e,t){this.parent.formatter.process(this.parent,t,t,{selection:e,subCommand:t.item.subCommand}),this.hideTableQuickToolbar()},n.prototype.removeTable=function(e,t,n){var i;n&&(i={item:{command:"Table",subCommand:"TableRemove"}});var o={selection:e,subCommand:n?i.item.subCommand:t.item.subCommand};this.parent.formatter.process(this.parent,n?i:t,t.originalEvent,o),this.contentModule.getEditPanel().focus(),this.removeResizeEle(),this.hideTableQuickToolbar()},n.prototype.renderDlgContent=function(e){var n=this;if(t.Browser.isDevice||this.parent.inlineMode.enable)this.insertTableDialog(e);else if(this.popupObj)this.popupObj.hide();else{this.hideTableQuickToolbar();var i=this.l10n.getConstant("inserttablebtn");this.dlgDiv=this.parent.createElement("div",{className:"e-rte-table-popup",id:this.rteID+"_table"}),this.tblHeader=this.parent.createElement("div",{className:"e-rte-popup-header"}),this.tblHeader.innerHTML="1X1",this.dlgDiv.appendChild(this.tblHeader);var r=this.parent.createElement("div",{className:"e-rte-table-span"});this.drawTable(r,e),this.dlgDiv.appendChild(r),this.dlgDiv.appendChild(this.parent.createElement("span",{className:"e-span-border"}));var a=this.parent.createElement("button",{className:"e-insert-table-btn",id:this.rteID+"_insertTable",attrs:{type:"button",tabindex:"0"}});t.isNullOrUndefined(this.parent.getToolbarElement().querySelector(".e-expended-nav"))||this.parent.getToolbarElement().querySelector(".e-expended-nav").setAttribute("tabindex","1"),this.dlgDiv.appendChild(a);var l=new s.Button({iconCss:"e-icons e-create-table",content:i,cssClass:"e-flat",enableRtl:this.parent.enableRtl,locale:this.parent.locale});l.isStringTemplate=!0,l.appendTo(a),t.EventHandler.add(a,"click",this.insertTableDialog,{self:this,args:e.args,selection:e.selection}),this.parent.getToolbar().appendChild(this.dlgDiv);var d=e.args.originalEvent.target;d=d.classList.contains("e-toolbar-item")?d.firstChild:d.parentElement,this.popupObj=new o.Popup(this.dlgDiv,{targetType:"relative",relateTo:d,collision:{X:"fit",Y:"none"},offsetY:8,viewPortElement:this.parent.element,position:{X:"left",Y:"bottom"},enableRtl:this.parent.enableRtl,zIndex:10001,close:function(e){n.parent.isBlur=!1,n.popupObj.destroy(),t.detach(n.popupObj.element),n.popupObj=null}}),t.addClass([this.popupObj.element],"e-popup-open"),this.popupObj.refreshPosition(d)}},n.prototype.docClick=function(e){var n=e.args.target;n&&n.classList&&(this.popupObj&&!t.closest(n,"#"+this.popupObj.element.id)||this.editdlgObj&&!t.closest(n,"#"+this.editdlgObj.element.id))&&!n.classList.contains("e-create-table")&&n.offsetParent&&!n.offsetParent.classList.contains("e-rte-backgroundcolor-dropdown")&&(this.popupObj&&this.popupObj.hide(),this.editdlgObj&&this.editdlgObj.hide(),this.parent.isBlur=!0,y(this.parent.element,"focusout"));var i=t.closest(n,"td"),o=!(!i||!this.parent.contentModule.getEditPanel().contains(i));!n||"TD"===n.tagName||"TH"===n.tagName||o||null!==t.closest(n,".e-rte-quick-popup")||!n.offsetParent||n.offsetParent.classList.contains("e-quick-dropdown")||n.offsetParent.classList.contains("e-rte-backgroundcolor-dropdown")||t.closest(n,".e-rte-dropdown-popup")||t.closest(n,".e-rte-elements")||(t.removeClass(this.parent.element.querySelectorAll("table td"),gn),t.Browser.isIE||this.hideTableQuickToolbar()),!n||!n.classList||n.classList.contains(vn)||n.classList.contains(yn)||n.classList.contains(Cn)||this.removeResizeEle()},n.prototype.drawTable=function(e,n){for(var i,o,r=0;r<3;r++){i=this.parent.createElement("div",{className:"e-rte-table-row",attrs:{"data-column":""+r}});for(var s=0;s<10;s++){var a=r>2?"none":"inline-block";o=this.parent.createElement("div",{className:"e-rte-tablecell e-default",attrs:{"data-cell":""+s}}),i.appendChild(o),o.style.display=a,0===s&&0===r&&t.addClass([o],"e-active"),t.EventHandler.add(o,"mousemove",this.tableCellSelect,this),t.EventHandler.add(i,"mouseleave",this.tableCellLeave,this),t.EventHandler.add(o,"mouseup",this.tableCellClick,{self:this,args:n.args,selection:n.selection})}e.appendChild(i)}},n.prototype.editTable=function(e){var t=this;this.createDialog(e);var n=this.tableDlgContent(e),i=this.l10n.getConstant("dialogUpdate"),o=this.l10n.getConstant("dialogCancel"),r=this.l10n.getConstant("tableEditHeader");this.editdlgObj.setProperties({height:"initial",width:"290px",content:n,header:r,buttons:[{click:this.applyProperties.bind(this,e),buttonModel:{content:i,cssClass:"e-flat e-size-update",isPrimary:!0}},{click:function(e){t.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:o}}]}),this.editdlgObj.element.style.maxHeight="none",this.editdlgObj.content.querySelector("input").focus(),this.hideTableQuickToolbar()},n.prototype.insertTableDialog=function(e){var t=this.self?this.self:this;t.popupObj&&t.popupObj.hide(),t.createDialog(e);var n=t.tableCellDlgContent(),i=t.l10n.getConstant("dialogInsert"),o=t.l10n.getConstant("dialogCancel");t.editdlgObj.setProperties({height:"initial",width:"290px",content:n,buttons:[{click:t.customTable.bind(this,e),buttonModel:{content:i,cssClass:"e-flat e-insert-table",isPrimary:!0}},{click:function(e){t.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:o}}]}),t.editdlgObj.element.style.maxHeight="none",t.editdlgObj.content.querySelector("input").focus()},n.prototype.tableCellDlgContent=function(){var e=this.l10n.getConstant("columns"),t=this.l10n.getConstant("rows"),n=this.parent.createElement("div",{className:"e-cell-wrap"}),i=C('<div class="e-rte-field"><input type="text" data-role ="none" id="tableColumn" class="e-table-column"/></div><div class="e-rte-field"><input type="text" data-role ="none" id="tableRow" class="e-table-row" /></div>');return n.appendChild(i),this.columnTextBox=new r.NumericTextBox({format:"n0",min:1,value:3,placeholder:e,floatLabelType:"Auto",max:50,enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.columnTextBox.isStringTemplate=!0,this.columnTextBox.appendTo(n.querySelector("#tableColumn")),this.rowTextBox=new r.NumericTextBox({format:"n0",min:1,value:3,placeholder:t,floatLabelType:"Auto",max:50,enableRtl:this.parent.enableRtl,locale:this.parent.locale}),this.rowTextBox.isStringTemplate=!0,this.rowTextBox.appendTo(n.querySelector("#tableRow")),n},n.prototype.createDialog=function(e){var n=this;if(this.editdlgObj)this.editdlgObj.hide({returnValue:!0});else{var i=this.parent.createElement("div",{className:"e-rte-edit-table",id:this.rteID+"_tabledialog"});this.parent.element.appendChild(i);var o=this.l10n.getConstant("dialogInsert"),r=this.l10n.getConstant("dialogCancel"),s={header:this.l10n.getConstant("tabledialogHeader"),cssClass:$t,enableRtl:this.parent.enableRtl,locale:this.parent.locale,showCloseIcon:!0,closeOnEscape:!0,width:t.Browser.isDevice?"290px":"340px",height:"initial",position:{X:"center",Y:t.Browser.isDevice?"center":"top"},isModal:t.Browser.isDevice,buttons:[{buttonModel:{content:o,cssClass:"e-flat e-insert-table",isPrimary:!0}},{click:function(e){n.cancelDialog(e)},buttonModel:{cssClass:"e-flat e-cancel",content:r}}],target:t.Browser.isDevice?document.body:this.parent.element,animationSettings:{effect:"None"},close:function(e){n.parent.isBlur=!1,n.editdlgObj.destroy(),t.detach(n.editdlgObj.element),n.dialogRenderObj.close(e),n.editdlgObj=null}};this.editdlgObj=this.dialogRenderObj.render(s),this.editdlgObj.appendTo(i),this.quickToolObj&&this.quickToolObj.inlineQTBar&&document.body.contains(this.quickToolObj.inlineQTBar.element)&&this.quickToolObj.inlineQTBar.hidePopup()}},n.prototype.customTable=function(e,n){var i=this.self?this.self:this;if(i.rowTextBox.value&&i.columnTextBox.value){var o=t.Browser.isDevice||!t.isNullOrUndefined(e.args)&&!t.isNullOrUndefined(e.args.originalEvent)&&"insert-table"===e.args.originalEvent.action||i.parent.inlineMode.enable?e:this;i.tableInsert(i.rowTextBox.value,i.columnTextBox.value,n,o)}},n.prototype.cancelDialog=function(e){this.parent.isBlur=!1,this.editdlgObj.hide({returnValue:!0})},n.prototype.applyProperties=function(e,n){var i=this.editdlgObj.element,o=t.closest(e.selectNode[0],"table");if(o.style.width=i.querySelector(".e-table-width").value+"px",""!==i.querySelector(".e-cell-padding").value)for(var r=o.querySelectorAll("td"),s=0;s<r.length;s++){var a="";""===r[s].style.padding?a=r[s].getAttribute("style")+" padding:"+i.querySelector(".e-cell-padding").value+"px;":(r[s].style.padding=i.querySelector(".e-cell-padding").value+"px",a=r[s].getAttribute("style")),r[s].setAttribute("style",a)}o.cellSpacing=i.querySelector(".e-cell-spacing").value,t.isNullOrUndefined(o.cellSpacing)&&"0"===o.cellSpacing?t.removeClass([o],jn):t.addClass([o],jn),this.parent.formatter.saveData(),this.editdlgObj.hide({returnValue:!0})},n.prototype.tableDlgContent=function(e){var n=e.selectParent[0],i=this.l10n.getConstant("tableWidth"),o=this.l10n.getConstant("cellpadding"),s=this.l10n.getConstant("cellspacing"),a=this.parent.createElement("div",{className:"e-table-sizewrap"}),l=t.closest(n,"table").getClientRects()[0].width,d=t.closest(n,"td").style.padding,c=t.closest(n,"table").getAttribute("cellspacing"),p=C('<div class="e-rte-field"><input type="text" data-role ="none" id="tableWidth" class="e-table-width" /></div><div class="e-rte-field"><input type="text" data-role ="none" id="cellPadding" class="e-cell-padding" /> </div><div class="e-rte-field"><input type="text" data-role ="none" id="cellSpacing" class="e-cell-spacing" /></div>');a.appendChild(p);var h=new r.NumericTextBox({format:"n0",min:0,value:l,placeholder:i,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale});h.isStringTemplate=!0,h.appendTo(a.querySelector("#tableWidth"));var u=new r.NumericTextBox({format:"n0",min:0,value:""!==d?parseInt(d,null):0,placeholder:o,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale});u.isStringTemplate=!0,u.appendTo(a.querySelector("#cellPadding"));var m=new r.NumericTextBox({format:"n0",min:0,value:""===c||t.isNullOrUndefined(c)?0:parseInt(c,null),placeholder:s,floatLabelType:"Auto",enableRtl:this.parent.enableRtl,locale:this.parent.locale});return m.isStringTemplate=!0,m.appendTo(a.querySelector("#cellSpacing")),a},n.prototype.destroy=function(){this.removeEventListener()},n.prototype.getModuleName=function(){return"table"},n}(),vr=function(){function e(e){this.parent=e}return e.prototype.render=function(e){var n;return e.beforeOpen=this.beforeOpen.bind(this),e.open=this.open.bind(this),t.isNullOrUndefined(e.close)&&(e.close=this.close.bind(this)),e.beforeClose=this.beforeClose.bind(this),n=new o.Dialog(e),n.isStringTemplate=!0,n},e.prototype.beforeOpen=function(e){this.parent.trigger(Xe,e)},e.prototype.open=function(e){this.parent.trigger(Je,e)},e.prototype.beforeClose=function(e){this.parent.trigger($e,e)},e.prototype.close=function(e){this.parent.trigger(Ze,e)},e}(),yr={bold:{command:"Style",subCommand:"Bold",value:"strong"},italic:{command:"Style",subCommand:"Italic",value:"em"},underline:{command:"Style",subCommand:"Underline",value:"span"},strikeThrough:{command:"Style",subCommand:"StrikeThrough",value:"span"},insertCode:{command:"Formats",subCommand:"Pre",value:"pre"},superscript:{command:"Effects",subCommand:"SuperScript",value:"sup"},subscript:{command:"Effects",subCommand:"SubScript",value:"sub"},uppercase:{command:"Casing",subCommand:"UpperCase"},lowercase:{command:"Casing",subCommand:"LowerCase"},fontColor:{command:"font",subCommand:"fontcolor",value:"#ff0000"},fontName:{command:"font",subCommand:"fontname",value:"Segoe UI"},fontSize:{command:"font",subCommand:"fontsize",value:"10pt"},backColor:{command:"font",subCommand:"backgroundcolor",value:"#ffff00"},justifyCenter:{command:"Alignments",subCommand:"JustifyCenter"},justifyFull:{command:"Alignments",subCommand:"JustifyFull"},justifyLeft:{command:"Alignments",subCommand:"JustifyLeft"},justifyRight:{command:"Alignments",subCommand:"JustifyRight"},undo:{command:"Actions",subCommand:"Undo"},redo:{command:"Actions",subCommand:"Redo"},createLink:{command:"Links",subCommand:"createLink"},editLink:{command:"Links",subCommand:"createLink"},createImage:{command:"Images",subCommand:"Images"},formatBlock:{command:"Formats",value:"P"},heading:{command:"Formats",value:"H1"},indent:{command:"Indents",subCommand:"Indent"},outdent:{command:"Indents",subCommand:"Outdent"},insertHTML:{command:"InsertHTML",subCommand:"InsertHTML",value:""},insertText:{command:"InsertText",subCommand:"InsertText",value:""},insertHorizontalRule:{command:"InsertHTML",subCommand:"InsertHTML",value:"<hr/>"},insertImage:{command:"Images",subCommand:"Image"},editImage:{command:"Images",subCommand:"Image"},insertTable:{command:"Table",subCommand:"CreateTable"},insertBrOnReturn:{command:"InsertHTML",subCommand:"InsertHTML",value:"<br/>"},insertOrderedList:{command:"Lists",value:"OL"},insertUnorderedList:{command:"Lists",value:"UL"},insertParagraph:{command:"Formats",value:"P"},removeFormat:{command:"Clear",subCommand:"ClearFormat"}},Cr=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)}}(),Tr=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},Sr=["Bold","Italic","Underline","|","Formats","Alignments","OrderedList","UnorderedList","|","CreateLink","Image","|","SourceCode","Undo","Redo"],Er=[{text:"Segoe UI",value:"Segoe UI",cssClass:"e-segoe-ui"},{text:"Arial",value:"Arial,Helvetica,sans-serif",cssClass:"e-arial"},{text:"Georgia",value:"Georgia,serif",cssClass:"e-georgia"},{text:"Impact",value:"Impact,Charcoal,sans-serif",cssClass:"e-impact"},{text:"Tahoma",value:"Tahoma,Geneva,sans-serif",cssClass:"e-tahoma"},{text:"Times New Roman",value:"Times New Roman,Times,serif",cssClass:"e-times-new-roman"},{text:"Verdana",value:"Verdana,Geneva,sans-serif",cssClass:"e-verdana"}],Nr=[{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"}],kr=[{text:"Paragraph",value:"P",cssClass:"e-paragraph"},{text:"Code",value:"Pre",cssClass:"e-code"},{text:"Quotation",value:"BlockQuote",cssClass:"e-quote"},{text:"Heading 1",value:"H1",cssClass:"e-h1"},{text:"Heading 2",value:"H2",cssClass:"e-h2"},{text:"Heading 3",value:"H3",cssClass:"e-h3"},{text:"Heading 4",value:"H4",cssClass:"e-h4"}],wr={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"]},Lr={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"]},xr=function(n){function i(){return null!==n&&n.apply(this,arguments)||this}return Cr(i,n),Tr([t.Property(!0)],i.prototype,"enable",void 0),Tr([t.Property(!0)],i.prototype,"enableFloating",void 0),Tr([t.Property(e.ToolbarType.Expand)],i.prototype,"type",void 0),Tr([t.Property(Sr)],i.prototype,"items",void 0),Tr([t.Property({})],i.prototype,"itemConfigs",void 0),i}(t.ChildProperty),Or=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Cr(n,e),Tr([t.Property([".jpeg",".jpg",".png"])],n.prototype,"allowedTypes",void 0),Tr([t.Property("inline")],n.prototype,"display",void 0),Tr([t.Property("Blob")],n.prototype,"saveFormat",void 0),Tr([t.Property("auto")],n.prototype,"width",void 0),Tr([t.Property("auto")],n.prototype,"height",void 0),Tr([t.Property(null)],n.prototype,"saveUrl",void 0),Tr([t.Property(null)],n.prototype,"path",void 0),Tr([t.Property(!0)],n.prototype,"resize",void 0),Tr([t.Property(0)],n.prototype,"minWidth",void 0),Tr([t.Property(null)],n.prototype,"maxWidth",void 0),Tr([t.Property(0)],n.prototype,"minHeight",void 0),Tr([t.Property(null)],n.prototype,"maxHeight",void 0),Tr([t.Property(!1)],n.prototype,"resizeByPercent",void 0),n}(t.ChildProperty),Dr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Cr(n,e),Tr([t.Property("100%")],n.prototype,"width",void 0),Tr([t.Property(ti)],n.prototype,"styles",void 0),Tr([t.Property(!0)],n.prototype,"resize",void 0),Tr([t.Property(0)],n.prototype,"minWidth",void 0),Tr([t.Property(null)],n.prototype,"maxWidth",void 0),n}(t.ChildProperty),Mr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Cr(n,e),Tr([t.Property(!0)],n.prototype,"enable",void 0),Tr([t.Property(!1)],n.prototype,"showOnRightClick",void 0),Tr([t.Property("hide")],n.prototype,"actionOnScroll",void 0),Tr([t.Property(["Open","Edit","UnLink"])],n.prototype,"link",void 0),Tr([t.Property(["Replace","Align","Caption","Remove","-","InsertLink","OpenImageLink","EditImageLink","RemoveImageLink","Display","AltText","Dimension"])],n.prototype,"image",void 0),Tr([t.Property(["Cut","Copy","Paste"])],n.prototype,"text",void 0),Tr([t.Property(["TableHeader","TableRows","TableColumns","BackgroundColor","-","TableRemove","Alignments","TableCellVerticalAlign","Styles"])],n.prototype,"table",void 0),n}(t.ChildProperty),Rr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Cr(n,e),Tr([t.Property(!1)],n.prototype,"prompt",void 0),Tr([t.Property(null)],n.prototype,"deniedAttrs",void 0),Tr([t.Property(["background","background-color","border","border-bottom","border-left","border-radius","border-right","border-style","border-top","border-width","clear","color","cursor","direction","display","float","font","font-family","font-size","font-weight","font-style","height","left","line-height","margin","margin-top","margin-left","margin-right","margin-bottom","max-height","max-width","min-height","min-width","overflow","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","position","right","table-layout","text-align","text-decoration","text-indent","top","vertical-align","visibility","white-space","width"])],n.prototype,"allowedStyleProps",void 0),Tr([t.Property(null)],n.prototype,"deniedTags",void 0),Tr([t.Property(!0)],n.prototype,"keepFormat",void 0),Tr([t.Property(!1)],n.prototype,"plainText",void 0),n}(t.ChildProperty),Br=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Cr(n,e),Tr([t.Property(null)],n.prototype,"default",void 0),Tr([t.Property("65px")],n.prototype,"width",void 0),Tr([t.Property(Er)],n.prototype,"items",void 0),n}(t.ChildProperty),Ir=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Cr(n,e),Tr([t.Property(null)],n.prototype,"default",void 0),Tr([t.Property("35px")],n.prototype,"width",void 0),Tr([t.Property(Nr)],n.prototype,"items",void 0),n}(t.ChildProperty),Pr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Cr(n,e),Tr([t.Property(null)],n.prototype,"default",void 0),Tr([t.Property("65px")],n.prototype,"width",void 0),Tr([t.Property(kr)],n.prototype,"types",void 0),n}(t.ChildProperty),Ar=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Cr(n,e),Tr([t.Property("#ff0000")],n.prototype,"default",void 0),Tr([t.Property("Palette")],n.prototype,"mode",void 0),Tr([t.Property(10)],n.prototype,"columns",void 0),Tr([t.Property(wr)],n.prototype,"colorCode",void 0),Tr([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),Hr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Cr(n,e),Tr([t.Property("#ffff00")],n.prototype,"default",void 0),Tr([t.Property("Palette")],n.prototype,"mode",void 0),Tr([t.Property(10)],n.prototype,"columns",void 0),Tr([t.Property(Lr)],n.prototype,"colorCode",void 0),Tr([t.Property(!1)],n.prototype,"modeSwitcher",void 0),n}(t.ChildProperty),Ur=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)}}(),jr=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},zr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Ur(n,e),jr([t.Property([])],n.prototype,"styles",void 0),jr([t.Property([])],n.prototype,"scripts",void 0),n}(t.ChildProperty),qr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return Ur(n,e),jr([t.Property(!1)],n.prototype,"enable",void 0),jr([t.Property(null)],n.prototype,"attributes",void 0),jr([t.Complex({},zr)],n.prototype,"resources",void 0),n}(t.ChildProperty),_r=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)}}(),Fr=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},Qr=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return _r(n,e),Fr([t.Property(!1)],n.prototype,"enable",void 0),Fr([t.Property(!0)],n.prototype,"onSelection",void 0),n}(t.ChildProperty),Wr=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)}}(),Vr=function(){return(Vr=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)},Gr=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},Kr=function(n){function i(e,t){var i=n.call(this,e,t)||this;return i.defaultResetValue=null,i.isFocusOut=!1,i.isRTE=!1,i.isBlur=!0,i.needsID=!0,i}return Wr(i,n),i.prototype.requiredModules=function(){var e=[];return this.toolbarSettings.enable&&(e.push({member:"toolbar",args:[this,this.serviceLocator]}),e.push({member:"link",args:[this,this.serviceLocator]}),e.push({member:"table",args:[this,this.serviceLocator]}),e.push({member:"image",args:[this,this.serviceLocator]}),this.quickToolbarSettings.enable&&e.push({member:"quickToolbar",args:[this,this.serviceLocator]})),this.showCharCount&&e.push({member:"count",args:[this,this.serviceLocator]}),"Markdown"===this.editorMode&&e.push({member:"markdownEditor",args:[this,this.serviceLocator]}),"HTML"===this.editorMode&&(e.push({member:"htmlEditor",args:[this,this.serviceLocator]}),e.push({member:"pasteCleanup",args:[this,this.serviceLocator]})),this.enableResize&&e.push({member:"resize",args:[this]}),e},i.prototype.updateEnable=function(){this.enabled?(t.removeClass([this.element],pt),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("."+Xt),Xt),t.removeClass([this.getToolbar()],[ft,bt])),t.addClass([this.element],pt),this.element.tabIndex=-1,this.element.setAttribute("aria-disabled","true"),this.inputElement.setAttribute("tabindex","-1"))},i.prototype.setEnable=function(){this.updateEnable(),this.enabled?this.eventInitializer():this.unWireEvents()},i.prototype.preRender=function(){this.onBlurHandler=this.blurHandler.bind(this),this.onFocusHandler=this.focusHandler.bind(this),this.onResizeHandler=this.resizeHandler.bind(this),this.clickPoints={clientX:0,clientY:0},this.initialValue=this.value,this.serviceLocator=new di,this.initializeServices(),this.setContainer(),this.persistData(),t.setStyleAttribute(this.element,{width:t.formatUnit(this.width)}),t.attributes(this.element,{role:"application"})},i.prototype.persistData=function(){if(this.enablePersistence&&"TEXTAREA"===this.originalElement.tagName){this.element.id=this.originalElement.id+"_wrapper";var e=window.localStorage.getItem(this.getModuleName()+this.element.id);t.isNullOrUndefined(e)||""===e||this.setProperties(JSON.parse(e),!0)}},i.prototype.setContainer=function(){this.originalElement=this.element.cloneNode(!0),null!==this.value&&null===this.valueTemplate||this.setValue(),this.element.hasAttribute("tabindex")&&(this.htmlAttributes={tabindex:this.element.getAttribute("tabindex")},this.element.removeAttribute("tabindex")),this.isBlazor()||(this.element.innerHTML="");for(var e=["class","style","id","ejs-for"],n={},i=0;i<this.element.attributes.length;i++)-1!==e.indexOf(this.element.attributes[i].name)||/^data-val/.test(this.element.attributes[i].name)||(n[this.element.attributes[i].name]=this.element.getAttribute(this.element.attributes[i].name));if(t.extend(n,this.htmlAttributes,n),this.setProperties({htmlAttributes:n},!0),t.isNullOrUndefined(this.htmlAttributes.id)||(this.element.id=this.htmlAttributes.id),"TEXTAREA"===this.element.tagName){var o=this.createElement("div",{className:this.element.getAttribute("class")});this.isBlazor()||(this.element.innerHTML=""),this.element.parentElement.insertBefore(o,this.element),t.isBlazor()?(o.appendChild(this.element),this.valueContainer=this.createElement("textarea",{id:this.element.id+"-value"})):this.valueContainer=this.element,t.removeClass([this.valueContainer],this.element.getAttribute("class").split(" ")),this.isBlazor()&&t.addClass([this.element],Tn),this.element=o}else this.valueContainer=this.createElement("textarea",{id:this.getID()+"-value"});this.valueContainer.name=this.getID(),t.addClass([this.valueContainer],Tn),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(Ue,{})},i.prototype.selectRange=function(e){this.notify(je,{range:e})},i.prototype.getSelection=function(){var e="";return this.notify(ze,{callBack:function(t){e=t}}),e},i.prototype.executeCommand=function(e,t,n){if(t=this.htmlPurifier(e,t),"HTML"===this.editorMode){var i=this.getRange();this.iframeSettings.enable&&this.formatter.editorManager.nodeSelection.Clear(this.element.ownerDocument);(!(!this.iframeSettings.enable||i.startContainer!==this.inputElement)||!this.inputElement.contains(i.startContainer))&&this.focusIn()}var o=yr[e];n&&n.undo&&n.undo&&0===this.formatter.getUndoRedoStack().length&&this.formatter.saveData(),this.formatter.editorManager.execCommand(o.command,o.subCommand?o.subCommand:t||o.value,null,null,t||o.value,t||o.value),n&&n.undo&&(this.formatter.saveData(),this.formatter.enableUndo(this)),this.setPlaceHolder(),this.notify(B,{})},i.prototype.htmlPurifier=function(e,n){if("HTML"===this.editorMode)switch(e){case"insertHTML":this.enableHtmlSanitizer&&(n="string"==typeof n?this.htmlEditorModule.sanitizeHelper(n):this.htmlEditorModule.sanitizeHelper(n.outerHTML));break;case"insertTable":t.isNullOrUndefined(n.width)&&(n.width={minWidth:this.tableSettings.minWidth,maxWidth:this.tableSettings.maxWidth,width:this.tableSettings.width});break;case"insertImage":var i=this.createElement("img",{attrs:{src:n.url}}),o=i.outerHTML;this.enableHtmlSanitizer&&(o=this.htmlEditorModule.sanitizeHelper(i.outerHTML));var r=""!==o&&this.createElement("div",{innerHTML:o}).firstElementChild.getAttribute("src")||null;r=t.isNullOrUndefined(r)?"":r,n.url=r,t.isNullOrUndefined(n.width)&&(n.width={minWidth:this.insertImageSettings.minWidth,maxWidth:this.insertImageSettings.maxWidth,width:this.insertImageSettings.width}),t.isNullOrUndefined(n.height)&&(n.height={minHeight:this.insertImageSettings.minHeight,maxHeight:this.insertImageSettings.maxHeight,height:this.insertImageSettings.height});break;case"createLink":var s=this.createElement("a",{attrs:{href:n.url}}),a=s.outerHTML;this.enableHtmlSanitizer&&(a=this.htmlEditorModule.sanitizeHelper(s.outerHTML));var l=""!==a&&this.createElement("div",{innerHTML:a}).firstElementChild.getAttribute("href")||null;l=t.isNullOrUndefined(l)?"":l,n.url=l}return n},i.prototype.encode=function(e){var t=this.createElement("div");return t.innerText=e.trim(),t.innerHTML.replace(/<br\s*[\/]?>/gi,"\n")},i.prototype.render=function(){this.value&&!this.valueTemplate&&this.setProperties({value:this.serializeValue(this.value)},!0),this.renderModule=new ur(this,this.serviceLocator),this.sourceCodeModule=new fr(this,this.serviceLocator),this.notify(R,{}),this.trigger("load"),this.RTERender();new Ni(this);this.notify(I,{}),this.toolbarSettings.enable&&"Expand"===this.toolbarSettings.type&&!t.isNullOrUndefined(this.getToolbar())&&this.toolbarSettings.items.indexOf("Undo")>-1&&this.toolbarSettings.items.indexOf("Redo")>-1&&this.disableToolbarItem(["Undo","Redo"]),this.setContentHeight(),null!==this.value&&(this.isBlazor()?this.defaultResetValue=this.value:this.valueContainer.defaultValue=this.value),this.enabled?this.eventInitializer():this.unWireEvents(),this.renderComplete()},i.prototype.eventInitializer=function(){this.wireEvents()},i.prototype.keyDown=function(e){if(this.notify(K,{member:"keydown",args:e}),this.restrict(e),"HTML"===this.editorMode&&(8===e.which&&"Backspace"===e.code||46===e.which&&"Delete"===e.code)){var n=this.getRange(),i="#text"===n.startContainer.nodeName?n.startContainer.parentElement:n.startContainer;if(t.closest(i,"pre")&&8===e.which&&8203===n.startContainer.textContent.charCodeAt(n.startOffset-1)||46===e.which&&8203===n.startContainer.textContent.charCodeAt(n.startOffset)){var o=new RegExp(String.fromCharCode(8203),"g"),r=8===e.which?n.startOffset-1:n.startOffset;n.startContainer.textContent=n.startContainer.textContent.replace(o,""),this.formatter.editorManager.nodeSelection.setCursorPoint(this.contentModule.getDocument(),n.startContainer,r)}else if("Backspace"===e.code&&8===e.which&&8203===n.startContainer.textContent.charCodeAt(0)&&n.collapsed){var s=n.startContainer.parentElement,a=void 0,l=void 0;for(l=0;l<s.childNodes.length;l++)s.childNodes[l]===n.startContainer&&(a=l);var d=!0,c=[];for(l=a;l>=0;l--)3===s.childNodes[l].nodeType&&8203===s.childNodes[l].textContent.charCodeAt(0)&&d?c.push(l):d=!1;if(c.length>0)for(l=c.length-1;l>0;l--)s.childNodes[c[l]].textContent="";this.formatter.editorManager.nodeSelection.setCursorPoint(this.contentModule.getDocument(),n.startContainer,n.startOffset)}}if(0===this.formatter.getUndoRedoStack().length&&this.formatter.saveData(),"insert-link"!==e.action&&(e.action&&"paste"!==e.action||9===e.which||"Backspace"===e.code&&8===e.which))switch(this.formatter.process(this,null,e),e.action){case"toolbar-focus":if(this.toolbarSettings.enable){this.toolbarModule.baseToolbar.toolbarObj.element.querySelector('.e-toolbar-item[aria-disabled="false"][title] [tabindex]').focus()}break;case"escape":this.contentModule.getEditPanel().focus()}t.isNullOrUndefined(this.placeholder)||this.setPlaceHolder(),this.autoResize()},i.prototype.keyUp=function(e){this.notify(G,{member:"keyup",args:e}),"KeyX"!==e.code||88!==e.which||88!==e.keyCode||!e.ctrlKey||""!==this.inputElement.innerHTML&&"<br>"!==this.inputElement.innerHTML||(this.inputElement.innerHTML=E("<p><br></p>",this));var n=32===e.which||13===e.which||8===e.which||46===e.which;("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||n||"Markdown"===this.editorMode&&("shift"!==e.key&&!e.ctrlKey&&e.key&&1===e.key.length||n)&&!this.inlineMode.enable)&&this.formatter.onKeyHandler(this,e),this.inputElement&&0!==this.inputElement.textContent.length&&this.notify(U,{args:e}),t.isNullOrUndefined(this.placeholder)||this.setPlaceHolder()},i.prototype.serializeValue=function(e){return"HTML"!==this.editorMode||t.isNullOrUndefined(e)||(this.enableHtmlEncode?(e=this.htmlEditorModule.sanitizeHelper(w(e)),e=this.encode(e)):e=this.htmlEditorModule.sanitizeHelper(e)),e},i.prototype.sanitizeHtml=function(e){return this.serializeValue(e)},i.prototype.updateValue=function(e){if(t.isNullOrUndefined(e)){var n=this.inputElement.innerHTML;this.setProperties({value:k(n)?null:n})}else this.setProperties({value:e})},i.prototype.triggerEditArea=function(e){if(p()){var t=e.touches?e.changedTouches[0]:e;this.clickPoints.clientX===t.clientX&&this.clickPoints.clientY===t.clientY&&this.notify(Re,{member:"editAreaClick",args:e})}else this.notify(Re,{member:"editAreaClick",args:e})},i.prototype.notifyMouseUp=function(e){var t=e.touches?e.changedTouches[0]:e;this.notify(Y,{member:"mouseUp",args:e,touchData:{prevClientX:this.clickPoints.clientX,prevClientY:this.clickPoints.clientY,clientX:t.clientX,clientY:t.clientY}}),this.inputElement&&("HTML"===this.editorMode&&0!==this.inputElement.textContent.length||"Markdown"===this.editorMode&&0!==this.inputElement.value.length)&&this.notify(U,{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(he,i,function(i){var o=n.getText().length-n.getSelection().length+(t.isNullOrUndefined(e)||t.isNullOrUndefined(e.clipboardData)?0:e.clipboardData.getData("text/plain").length);if("Markdown"!==n.editorMode)if(!i.cancel&&"true"===n.inputElement.contentEditable&&(-1===n.maxLength||o<n.maxLength))if(t.isNullOrUndefined(n.pasteCleanupModule)){var r={requestType:"Paste",editorMode:n.editorMode,event:e},s=null;e&&!t.isNullOrUndefined(e.clipboardData)&&(s=e.clipboardData.getData("text/plain"));var a=e&&e.clipboardData&&e.clipboardData.items.length>0?e.clipboardData.items[0].getAsFile():null;null!==s&&n.notify(_e,{file:a,args:e,text:s}),setTimeout(function(){n.formatter.onSuccess(n,r)},0)}else n.notify(Ye,{args:e});else e.preventDefault();else-1===n.maxLength||o<n.maxLength||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(this.notify(A,{}),this.destroyDependentModules(),t.isNullOrUndefined(this.timeInterval)||(clearInterval(this.timeInterval),this.timeInterval=null),this.unWireEvents(),"TEXTAREA"===this.originalElement.tagName){t.isBlazor()&&(t.detach(this.valueContainer),this.valueContainer=this.element.querySelector(".e-blazor-hidden.e-control.e-richtexteditor")),this.element.parentElement.insertBefore(this.valueContainer,this.element),this.valueContainer.id=this.getID(),this.valueContainer.removeAttribute("name"),t.detach(this.element),""!==this.originalElement.innerHTML.trim()?t.isBlazor()||(this.valueContainer.value=this.originalElement.innerHTML.trim(),this.setProperties({value:t.isNullOrUndefined(this.initialValue)?null:this.initialValue},!0)):this.valueContainer.value=this.isBlazor()?this.defaultResetValue:this.valueContainer.defaultValue,this.element=this.valueContainer;for(var e=0;e<this.originalElement.classList.length;e++)t.addClass([this.element],this.originalElement.classList[e]);t.removeClass([this.element],Tn)}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="";this.placeholder&&this.placeHolderWrapper&&(this.placeHolderWrapper=null),t.isNullOrUndefined(this.cssClass)||t.removeClass([this.element],this.cssClass),this.removeHtmlAttributes(),this.removeAttributes(),n.prototype.destroy.call(this),this.isRendered=!1,this.enablePersistence&&window.localStorage.removeItem(this.getModuleName()+this.element.id)}},i.prototype.removeHtmlAttributes=function(){if(this.htmlAttributes)for(var e=Object.keys(this.htmlAttributes),t=0;t<e.length&&this.element.hasAttribute(e[t]);t++)this.element.removeAttribute(e[t])},i.prototype.removeAttributes=function(){this.enabled||t.removeClass([this.element],pt),this.enableRtl&&t.removeClass([this.element],"e-rtl"),this.readonly&&t.removeClass([this.element],mn),""!==this.element.style.width&&""===this.originalElement.style.width&&this.element.style.removeProperty("width"),""!==this.element.style.height&&""===this.originalElement.style.height&&this.element.style.removeProperty("height"),this.element.removeAttribute("aria-disabled"),this.element.removeAttribute("role"),this.element.removeAttribute("tabindex")},i.prototype.destroyDependentModules=function(){this.renderModule.destroy(),this.formatter.editorManager.undoRedoManager.destroy(),this.sourceCodeModule.destroy()},i.prototype.getContent=function(){return this.iframeSettings.enable&&t.isBlazor()?this.inputElement:this.contentModule.getPanel()},i.prototype.getText=function(){return this.contentModule.getText()},i.prototype.getSelectedHtml=function(){var e=this.createElement("div"),t=this.contentModule.getDocument().getSelection();if(t.rangeCount>0){var n=t.getRangeAt(0).cloneContents();e.appendChild(n)}return e.innerHTML},i.prototype.showInlineToolbar=function(){if(this.inlineMode.enable){var e=this.getRange(),t="#text"===e.endContainer.nodeName?e.endContainer.parentElement:e.endContainer,n=e.getClientRects()[0].left,i=e.getClientRects()[0].top;this.quickToolbarModule.showInlineQTBar(n,i,t)}},i.prototype.hideInlineToolbar=function(){this.quickToolbarModule.hideInlineQTBar()},i.prototype.getModuleName=function(){return"richtexteditor"},i.prototype.onPropertyChanged=function(e,i){for(var o=0,r=Object.keys(e);o<r.length;o++){var s=r[o];switch(s){case"value":var a=void 0,l=e[s];a="HTML"===this.editorMode?E(l,this):l,t.isNullOrUndefined(l)||""===l||(this.value=this.serializeValue(this.enableHtmlEncode?this.encode(w(a)):a)),this.updatePanelValue(),this.setPlaceHolder(),this.notify(dt,{module:"XhtmlValidation",newProp:e,oldProp:i}),this.showCharCount&&this.countModule.refresh();break;case"valueTemplate":this.setValue(),this.showCharCount&&this.countModule.refresh();break;case"width":this.setWidth(e[s]),this.toolbarSettings.enable&&(this.toolbarModule.refreshToolbarOverflow(),this.resizeHandler());break;case"height":this.setHeight(e[s]),this.setContentHeight(),this.autoResize();break;case"readonly":this.setReadOnly(!1);break;case"cssClass":this.element.classList.remove(i[s]),this.setCssClass(e[s]);break;case"enabled":this.setEnable();break;case"enableRtl":this.updateRTL();break;case"placeholder":this.placeholder=e[s],this.setPlaceHolder();break;case"htmlAttributes":M(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("."+ht),this.removeSheets(p)),d.resources.styles&&(p=c.querySelectorAll("."+ut),this.removeSheets(p))}this.setIframeSettings();break;case"locale":n.prototype.refresh.call(this);break;case"inlineMode":this.notify(V,{module:"quickToolbar",newProp:e,oldProp:i}),this.setContentHeight();break;case"toolbarSettings":this.notify(V,{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(Di,{newProp:e,oldProp:i});break;case"enableXhtml":this.notify(dt,{module:"XhtmlValidation",newProp:e,oldProp:i});break;case"quickToolbarSettings":e.quickToolbarSettings.showOnRightClick?this.wireContextEvent():this.unWireContextEvent(),this.notify(V,{newProp:e,oldProp:i});break;default:this.notify(V,{newProp:e,oldProp:i})}}},i.prototype.updateValueData=function(){this.enableHtmlEncode?this.setProperties({value:this.encode(w(this.inputElement.innerHTML))},!0):this.setProperties({value:/<[a-z][\s\S]*>/i.test(this.inputElement.innerHTML)?this.inputElement.innerHTML:w(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?w(e):e;var t=this.element.querySelector(".e-rte-srctextarea");e?(t&&"block"===t.style.display&&(t.value=this.value),this.valueContainer&&(this.valueContainer.value=this.enableHtmlEncode?this.value:e),"HTML"===this.editorMode&&this.inputElement&&this.inputElement.innerHTML.trim()!==e.trim()?this.inputElement.innerHTML=e:"Markdown"===this.editorMode&&this.inputElement&&this.inputElement.value.trim()!==e.trim()&&(this.inputElement.value=e)):(t&&"block"===t.style.display&&(t.value=""),"HTML"===this.editorMode?this.inputElement.innerHTML="<p><br/></p>":this.inputElement.value="",this.valueContainer&&(this.valueContainer.value="")),this.showCharCount&&this.countModule.refresh()},i.prototype.setHeight=function(e){this.element.style.height="auto"!==e?t.formatUnit(e):"auto"},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"}),this.inputElement&&this.inputElement.parentElement.insertBefore(this.placeHolderWrapper,this.inputElement),t.attributes(this.placeHolderWrapper,{style:"font-size: 16px; padding: 16px; margin-left: 0px; margin-right: 0px;"})),this.placeHolderWrapper.innerHTML=this.placeholder,0!==this.inputElement.textContent.length||t.isNullOrUndefined(this.inputElement.firstChild)||"P"!==this.inputElement.firstChild.nodeName||t.isNullOrUndefined(this.inputElement.firstChild.firstChild)||"BR"!==this.inputElement.firstChild.firstChild.nodeName?this.placeHolderWrapper.style.display="none":this.placeHolderWrapper.style.display="block"):this.inputElement.setAttribute("placeholder",this.placeholder))},i.prototype.setWidth=function(e){"auto"!==e?t.setStyleAttribute(this.element,{width:t.formatUnit(this.width)}):this.element.style.width="auto"},i.prototype.setCssClass=function(e){t.isNullOrUndefined(e)||this.element.classList.add(e)},i.prototype.updateRTL=function(){this.notify(Fe,{enableRtl:this.enableRtl}),this.enableRtl?this.element.classList.add("e-rtl"):this.element.classList.remove("e-rtl")},i.prototype.updateReadOnly=function(){this.notify(Ke,{editPanel:this.inputElement,mode:this.readonly})},i.prototype.setReadOnly=function(e){this.updateReadOnly(),e||(this.readonly&&this.enabled?this.unbindEvents():this.enabled&&this.bindEvents())},i.prototype.print=function(){var e,n=this,i={element:this.inputElement,requestType:"print",cancel:!1};this.trigger(he,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){n.trigger(ue,{requestType:"print"})}})},i.prototype.refreshUI=function(){this.renderModule.refresh()},i.prototype.showFullScreen=function(){this.readonly||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 ci),this.serviceLocator.register("rteLocale",this.localeObj=new t.L10n(this.getModuleName(),ni,this.locale)),this.serviceLocator.register("dialogRenderObject",new vr(this))},i.prototype.RTERender=function(){var n=this.serviceLocator.getService("rendererFactory");this.contentModule=n.getRenderer(e.RenderType.Content),this.fullScreenModule=new hr(this),this.renderModule.render(),this.inputElement=this.contentModule.getEditPanel(),this.setHeight(this.height),M(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(w(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&&M(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:ht});return e.type="text/javascript",e},i.prototype.createStyleElement=function(){var e=this.createElement("link",{className:ut});return e.rel="stylesheet",e},i.prototype.isBlazor=function(){return!!t.isBlazor()},i.prototype.setValue=function(){if(this.valueTemplate)if("string"==typeof this.valueTemplate)this.setProperties({value:this.valueTemplate});else{for(var e=t.compile(this.valueTemplate)({}),n=0;n<e.length;n++){var i=e[n];t.append([i],this.element)}this.setProperties({value:this.element.innerHTML.trim()})}else{var o=!t.isNullOrUndefined(this.element.innerHTML)&&this.element.innerHTML.replace(/<(\/?|\!?)(!--!--)>/g,"").trim();""!==o&&("TEXTAREA"===this.element.tagName?this.setProperties({value:w(o)}):this.setProperties({value:o}))}},i.prototype.setContentHeight=function(n,i){var o,r,s,a=0,l=this.sourceCodeModule.getPanel()&&"block"===this.sourceCodeModule.getPanel().parentElement.style.display?this.sourceCodeModule.getPanel().parentElement:this.contentModule.getPanel(),d=this.element.offsetHeight;0!==this.element.offsetHeight||"auto"===this.height||this.getToolbar()||(d=parseInt(this.height,10),(s="string"==typeof this.height&&this.height.indexOf("%")>-1)&&(r=this.height));var c=this.getToolbar()?this.toolbarModule.getToolbarHeight():0,p=this.enableResize?this.element.querySelector("."+xn).offsetHeight+8:0,h=this.getToolbar()?this.toolbarModule.getExpandTBarPopHeight():0;if(this.toolbarSettings.type===e.ToolbarType.Expand&&i&&"preview"!==n?(o="auto"===this.height&&0===p?"auto":d-(c+h+p)+"px",a=this.toolbarSettings.enableFloating?0:h):o="auto"!==this.height||this.element.classList.contains("e-rte-full-screen")?s?r:d-(c+p)+"px":"auto",t.setStyleAttribute(l,{height:o,marginTop:a+"px"}),this.iframeSettings.enable&&"sourceCode"===n){var u=t.select("."+Rt,this.element);t.setStyleAttribute(u,{height:o,marginTop:a+"px"})}this.toolbarSettings.enableFloating&&this.getToolbar()&&!this.inlineMode.enable&&(i?t.setStyleAttribute(this.getToolbar().parentElement,{height:c+h+"px"}):t.setStyleAttribute(this.getToolbar().parentElement,{height:c+"px"})),0===p&&this.autoResize()},i.prototype.getHtml=function(){return this.value},i.prototype.showSourceCode=function(){this.readonly||this.notify(Ee,{})},i.prototype.getCharCount=function(){return("Markdown"===this.editorMode?this.inputElement.value.trim():this.inputElement.textContent.trim()).length},i.prototype.getBaseToolbarObject=function(){return!this.inlineMode.enable||t.Browser.isDevice&&!p()?this.toolbarModule&&this.toolbarModule.getBaseToolbar():this.quickToolbarModule&&this.quickToolbarModule.getInlineBaseToolbar()},i.prototype.getToolbar=function(){return this.toolbarModule?this.toolbarModule.getToolbarElement():null},i.prototype.getToolbarElement=function(){return this.toolbarModule&&this.toolbarModule.getToolbarElement()},i.prototype.getID=function(){return"TEXTAREA"===this.originalElement.tagName?this.valueContainer.id:this.element.id},i.prototype.mouseDownHandler=function(e){var n=e.touches?e.changedTouches[0]:e;t.addClass([this.element],[Ht]),this.preventDefaultResize(e),this.notify(De,{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;this.toolbarSettings.enable&&!this.inlineMode.enable&&(this.toolbarModule.refreshToolbarOverflow(),e=this.toolbarModule.baseToolbar.toolbarObj.element.classList.contains(Jt)),this.setContentHeight("",e)},i.prototype.scrollHandler=function(e){this.notify(Be,{args:e})},i.prototype.contentScrollHandler=function(e){this.notify(Ie,{args:e})},i.prototype.focusHandler=function(e){if(!this.isRTE||this.isFocusOut){this.isRTE=!this.isFocusOut,this.isFocusOut=!1,t.addClass([this.element],[Ht]),"HTML"===this.editorMode?this.cloneValue="<p><br></p>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(w(this.inputElement.innerHTML)):this.inputElement.innerHTML:this.cloneValue=""===this.inputElement.value?null:this.inputElement.value;var n=document.activeElement;if((n===this.element||n===this.getToolbarElement()||n===this.contentModule.getEditPanel()||this.iframeSettings.enable&&n===this.contentModule.getPanel()&&e.target&&!e.target.classList.contains("e-img-inner")&&e.target&&e.target.parentElement&&!e.target.parentElement.classList.contains("e-img-wrap")||t.closest(n,".e-rte-toolbar")===this.getToolbarElement())&&(this.contentModule.getEditPanel().focus(),!t.isNullOrUndefined(this.getToolbarElement()))){this.getToolbarElement().setAttribute("tabindex","-1");for(var i=this.getToolbarElement().querySelectorAll('[tabindex="0"]'),o=0;o<i.length;o++)i[o].setAttribute("tabindex","-1")}this.preventDefaultResize(e),this.trigger("focus",{event:e,isInteracted:0!==Object.keys(e).length}),!t.isNullOrUndefined(this.saveInterval)&&this.saveInterval>0&&!this.autoSaveOnIdle&&(this.timeInterval=setInterval(this.updateValueOnIdle.bind(this),this.saveInterval)),t.EventHandler.add(document,"mousedown",this.onDocumentClick,this)}if(!t.isNullOrUndefined(this.getToolbarElement())){var r=this.getToolbarElement().querySelectorAll("input,select,button,a,[tabindex]");for(o=0;o<r.length;o++)r[o].classList.contains("e-rte-dropdown-btn")||r[o].classList.contains("e-insert-table-btn")||r[o].hasAttribute("tabindex")&&"-1"===r[o].getAttribute("tabindex")||r[o].setAttribute("tabindex","-1")}},i.prototype.getUpdatedValue=function(){return"HTML"===this.editorMode?"<p><br></p>"===this.inputElement.innerHTML?null:this.enableHtmlEncode?this.encode(w(this.inputElement.innerHTML)):this.inputElement.innerHTML:""===this.inputElement.value?null:this.inputElement.value},i.prototype.updateValueOnIdle=function(){this.setProperties({value:this.getUpdatedValue()},!0),this.valueContainer.value=this.value,this.invokeChangeEvent()},i.prototype.updateIntervalValue=function(){clearTimeout(this.idleInterval),this.idleInterval=setTimeout(this.updateValueOnIdle.bind(this),0)},i.prototype.onDocumentClick=function(e){var n=e.target,i=t.closest(n,"."+ct);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(We,{args:e})},i.prototype.blurHandler=function(e){var n=e.relatedTarget;if(n){var i=t.closest(n,"."+ct);i&&i===this.element?(this.isBlur=!1,n===this.getToolbarElement()&&n.setAttribute("tabindex","-1")):t.closest(n,'[aria-owns="'+this.getID()+'"]')?this.isBlur=!1:(this.isBlur=!0,n=null)}if(this.isBlur&&t.isNullOrUndefined(n)){t.removeClass([this.element],[Ht]),this.notify(He,{});var o=this.getUpdatedValue();this.setProperties({value:o}),this.notify(U,{args:e,documentNode:document}),this.invokeChangeEvent(),this.isFocusOut=!0,this.isBlur=!1,y(this.valueContainer,"focusout"),this.defaultResize(e),this.trigger("blur",{event:e,isInteracted:0!==Object.keys(e).length}),t.isNullOrUndefined(this.timeInterval)||(clearInterval(this.timeInterval),this.timeInterval=null),t.EventHandler.remove(document,"mousedown",this.onDocumentClick)}else this.isRTE=!0},i.prototype.contentChanged=function(){this.autoSaveOnIdle&&(t.isNullOrUndefined(this.saveInterval)||(clearTimeout(this.timeInterval),this.timeInterval=setTimeout(this.updateIntervalValue.bind(this),this.saveInterval)))},i.prototype.invokeChangeEvent=function(){var e={value:this.value};this.value!==this.cloneValue&&(this.trigger("change",e),this.cloneValue=this.value)},i.prototype.wireScrollElementsEvents=function(){this.scrollParentElements=o.getScrollableParent(this.element);for(var e=0,n=this.scrollParentElements;e<n.length;e++){var i=n[e];t.EventHandler.add(i,"scroll",this.scrollHandler,this)}this.iframeSettings.enable||t.EventHandler.add(this.contentModule.getPanel(),"scroll",this.contentScrollHandler,this)},i.prototype.wireContextEvent=function(){this.quickToolbarSettings.showOnRightClick&&(t.EventHandler.add(this.inputElement,"contextmenu",this.contextHandler,this),t.Browser.isDevice&&(this.touchModule=new t.Touch(this.inputElement,{tapHold:this.touchHandler.bind(this),tapHoldThreshold:500})))},i.prototype.unWireContextEvent=function(){t.EventHandler.remove(this.inputElement,"contextmenu",this.contextHandler),t.Browser.isDevice&&this.touchModule&&this.touchModule.destroy()},i.prototype.unWireScrollElementsEvents=function(){this.scrollParentElements=o.getScrollableParent(this.element);for(var e=0,n=this.scrollParentElements;e<n.length;e++){var i=n[e];t.EventHandler.remove(i,"scroll",this.scrollHandler)}this.iframeSettings.enable||t.EventHandler.remove(this.contentModule.getPanel(),"scroll",this.contentScrollHandler)},i.prototype.touchHandler=function(e){this.notifyMouseUp(e.originalEvent),this.triggerEditArea(e.originalEvent)},i.prototype.contextHandler=function(e){var n=t.closest(e.target,"a, table, img");!1!==this.inlineMode.onSelection&&(t.isNullOrUndefined(n)||!this.inputElement.contains(n)||"IMG"!==n.tagName&&"TABLE"!==n.tagName&&"A"!==n.tagName)||e.preventDefault()},i.prototype.resetHandler=function(){var e=this.valueContainer.defaultValue.trim();this.setProperties({value:""===e?null:this.isBlazor()?this.defaultResetValue:e})},i.prototype.autoResize=function(){var e=this;if("auto"===this.height){if("Markdown"===this.editorMode)setTimeout(function(){e.setAutoHeight(e.inputElement)},0);else if(this.iframeSettings.enable){var t=this.element.querySelector("#"+this.getID()+"_rte-view");setTimeout(function(){e.setAutoHeight(t)},100),this.inputElement.style.overflow="hidden"}}else this.inputElement.style.overflow=null},i.prototype.setAutoHeight=function(e){t.isNullOrUndefined(e)||(e.style.height="",e.style.height=this.inputElement.scrollHeight+"px",e.style.overflow="hidden")},i.prototype.wireEvents=function(){this.element.addEventListener("focusin",this.onFocusHandler,!0),this.element.addEventListener("focusout",this.onBlurHandler,!0),this.on(B,this.contentChanged,this),this.readonly&&this.enabled||this.bindEvents()},i.prototype.restrict=function(e){if(this.maxLength>=0){for(var t="Markdown"===this.editorMode?this.contentModule.getText():e.currentTarget.textContent.trim(),n=[8,16,17,37,38,39,40,46,65],i=void 0,o=0;o<=n.length-1;o++)if(e.which===n[o]){if(e.ctrlKey&&65===e.which)return;if(65!==e.which)return void(i=n[o])}t.length>=this.maxLength&&-1!==this.maxLength&&e.which!==i&&e.preventDefault()}},i.prototype.bindEvents=function(){this.keyboardModule=new fi(this.inputElement,{keyAction:this.keyDown.bind(this),keyConfigs:Vr({},this.formatter.keyConfig,this.keyConfig),eventName:"keydown"});var e=t.closest(this.valueContainer,"form");e&&t.EventHandler.add(e,"reset",this.resetHandler,this),t.EventHandler.add(this.inputElement,"keyup",this.keyUp,this),t.EventHandler.add(this.inputElement,"paste",this.onPaste,this),t.EventHandler.add(this.inputElement,t.Browser.touchEndEvent,t.debounce(this.mouseUp,30),this),t.EventHandler.add(this.inputElement,t.Browser.touchStartEvent,this.mouseDownHandler,this),this.wireContextEvent(),this.formatter.editorManager.observer.on(Li,this.editorKeyDown,this),this.element.ownerDocument.defaultView.addEventListener("resize",this.onResizeHandler,!0),this.iframeSettings.enable&&(t.EventHandler.add(this.inputElement,"focusin",this.focusHandler,this),t.EventHandler.add(this.inputElement,"focusout",this.blurHandler,this),t.EventHandler.add(this.inputElement.ownerDocument,"scroll",this.contentScrollHandler,this),t.EventHandler.add(this.inputElement.ownerDocument,t.Browser.touchStartEvent,this.onIframeMouseDown,this)),this.wireScrollElementsEvents()},i.prototype.onIframeMouseDown=function(e){this.isBlur=!1,this.notify(P,e)},i.prototype.editorKeyDown=function(e){switch(e.event.action){case"copy":this.onCopy();break;case"cut":this.onCut()}!e.callBack||"copy"!==e.event.action&&"cut"!==e.event.action&&"delete"!==e.event.action||e.callBack({requestType:e.event.action,editorMode:"HTML",event:e.event})},i.prototype.unWireEvents=function(){this.element.removeEventListener("focusin",this.onFocusHandler,!0),this.element.removeEventListener("focusout",this.onBlurHandler,!0),this.off(B,this.contentChanged),this.readonly&&this.enabled||this.unbindEvents()},i.prototype.unbindEvents=function(){this.keyboardModule&&this.keyboardModule.destroy();var e=t.closest(this.valueContainer,"form");e&&t.EventHandler.remove(e,"reset",this.resetHandler),t.EventHandler.remove(this.inputElement,"keyup",this.keyUp),t.EventHandler.remove(this.inputElement,"paste",this.onPaste),t.EventHandler.remove(this.inputElement,t.Browser.touchEndEvent,t.debounce(this.mouseUp,30)),t.EventHandler.remove(this.inputElement,t.Browser.touchStartEvent,this.mouseDownHandler),this.unWireContextEvent(),this.formatter&&this.formatter.editorManager.observer.off(Li,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()},Gr([t.Complex({},xr)],i.prototype,"toolbarSettings",void 0),Gr([t.Complex({},Mr)],i.prototype,"quickToolbarSettings",void 0),Gr([t.Complex({},Rr)],i.prototype,"pasteCleanupSettings",void 0),Gr([t.Complex({},qr)],i.prototype,"iframeSettings",void 0),Gr([t.Complex({},Or)],i.prototype,"insertImageSettings",void 0),Gr([t.Complex({},Dr)],i.prototype,"tableSettings",void 0),Gr([t.Property(0)],i.prototype,"floatingToolbarOffset",void 0),Gr([t.Complex({},Qr)],i.prototype,"inlineMode",void 0),Gr([t.Property("100%")],i.prototype,"width",void 0),Gr([t.Property(!1)],i.prototype,"enablePersistence",void 0),Gr([t.Property(!1)],i.prototype,"enableResize",void 0),Gr([t.Property({})],i.prototype,"htmlAttributes",void 0),Gr([t.Property(null)],i.prototype,"placeholder",void 0),Gr([t.Property(!1)],i.prototype,"autoSaveOnIdle",void 0),Gr([t.Property(!1)],i.prototype,"readonly",void 0),Gr([t.Property(!0)],i.prototype,"enabled",void 0),Gr([t.Property(!0)],i.prototype,"enableHtmlSanitizer",void 0),Gr([t.Property(!1)],i.prototype,"enableHtmlEncode",void 0),Gr([t.Property(!1)],i.prototype,"enableXhtml",void 0),Gr([t.Property("auto")],i.prototype,"height",void 0),Gr([t.Property(null)],i.prototype,"cssClass",void 0),Gr([t.Property(null)],i.prototype,"value",void 0),Gr([t.Property(30)],i.prototype,"undoRedoSteps",void 0),Gr([t.Property(300)],i.prototype,"undoRedoTimer",void 0),Gr([t.Property("HTML")],i.prototype,"editorMode",void 0),Gr([t.Property(null)],i.prototype,"keyConfig",void 0),Gr([t.Property(!1)],i.prototype,"showCharCount",void 0),Gr([t.Property(!1)],i.prototype,"enableTabKey",void 0),Gr([t.Property(!1)],i.prototype,"enableAutoUrl",void 0),Gr([t.Property(-1)],i.prototype,"maxLength",void 0),Gr([t.Complex({},Pr)],i.prototype,"format",void 0),Gr([t.Complex({},Br)],i.prototype,"fontFamily",void 0),Gr([t.Complex({},Ir)],i.prototype,"fontSize",void 0),Gr([t.Complex({},Ar)],i.prototype,"fontColor",void 0),Gr([t.Complex({},Hr)],i.prototype,"backgroundColor",void 0),Gr([t.Property(null)],i.prototype,"valueTemplate",void 0),Gr([t.Property(1e4)],i.prototype,"saveInterval",void 0),Gr([t.Event()],i.prototype,"actionBegin",void 0),Gr([t.Event()],i.prototype,"actionComplete",void 0),Gr([t.Event()],i.prototype,"beforeDialogOpen",void 0),Gr([t.Event()],i.prototype,"dialogOpen",void 0),Gr([t.Event()],i.prototype,"beforeDialogClose",void 0),Gr([t.Event()],i.prototype,"dialogClose",void 0),Gr([t.Event()],i.prototype,"beforeQuickToolbarOpen",void 0),Gr([t.Event()],i.prototype,"quickToolbarOpen",void 0),Gr([t.Event()],i.prototype,"quickToolbarClose",void 0),Gr([t.Event()],i.prototype,"toolbarStatusUpdate",void 0),Gr([t.Event()],i.prototype,"imageSelected",void 0),Gr([t.Event()],i.prototype,"imageUploading",void 0),Gr([t.Event()],i.prototype,"imageUploadSuccess",void 0),Gr([t.Event()],i.prototype,"imageUploadFailed",void 0),Gr([t.Event()],i.prototype,"imageRemoving",void 0),Gr([t.Event()],i.prototype,"afterImageDelete",void 0),Gr([t.Event()],i.prototype,"created",void 0),Gr([t.Event()],i.prototype,"destroyed",void 0),Gr([t.Event()],i.prototype,"beforeSanitizeHtml",void 0),Gr([t.Event()],i.prototype,"blur",void 0),Gr([t.Event()],i.prototype,"toolbarClick",void 0),Gr([t.Event()],i.prototype,"focus",void 0),Gr([t.Event()],i.prototype,"change",void 0),Gr([t.Event()],i.prototype,"resizing",void 0),Gr([t.Event()],i.prototype,"resizeStart",void 0),Gr([t.Event()],i.prototype,"resizeStop",void 0),Gr([t.Property(null)],i.prototype,"formatter",void 0),i=Gr([t.NotifyPropertyChanges],i)}(t.Component);e.Toolbar=hi,e.KeyboardEvents=fi,e.BaseToolbar=ai,e.BaseQuickToolbar=vi,e.QuickToolbar=Ci,e.Count=Ti,e.ColorPickerInput=bi,e.MarkdownToolbarStatus=Ei,e.ExecCommandCallBack=Ni,e.ToolbarAction=pi,e.MarkdownEditor=io,e.HtmlEditor=dr,e.PasteCleanup=cr,e.Resize=pr,e.DropDownButtons=li,e.FullScreen=hr,e.setAttributes=M,e.HtmlToolbarStatus=or,e.XhtmlValidation=lr,e.HTMLFormatter=tr,e.Formatter=Bi,e.MarkdownFormatter=to,e.ContentRender=rr,e.Render=ur,e.ToolbarRenderer=si,e.Link=mr,e.Image=gr,e.ViewSource=fr,e.Table=br,e.DialogRenderer=vr,e.IframeContentRender=ar,e.MarkdownRender=no,e.PopupRenderer=yi,e.RichTextEditor=Kr,e.executeGroup=yr,e.created="create",e.destroyed="destroy",e.load="load",e.initialLoad=R,e.contentChanged=B,e.initialEnd=I,e.iframeMouseDown=P,e.destroy=A,e.toolbarClick=H,e.toolbarRefresh=U,e.refreshBegin=j,e.toolbarUpdated=z,e.bindOnEnd=q,e.renderColorPicker=_,e.htmlToolbarClick=F,e.markdownToolbarClick=Q,e.destroyColorPicker=W,e.modelChanged=V,e.keyUp=G,e.keyDown=K,e.mouseUp=Y,e.toolbarCreated=X,e.toolbarRenderComplete=J,e.enableFullScreen=$,e.disableFullScreen=Z,e.dropDownSelect=ee,e.beforeDropDownItemRender=te,e.execCommandCallBack=ne,e.imageToolbarAction=ie,e.linkToolbarAction=oe,e.resizeStart=re,e.onResize=se,e.resizeStop=ae,e.undo="undo",e.redo="redo",e.insertLink=le,e.unLink=de,e.editLink=ce,e.openLink=pe,e.actionBegin=he,e.actionComplete=ue,e.toolbarStatusUpdate=me,e.actionSuccess="actionSuccess",e.updateToolbarItem=ge,e.insertImage=fe,e.insertCompleted=be,e.imageLeft="justifyLeft",e.imageRight="justifyRight",e.imageCenter="justifyCenter",e.imageBreak="break",e.imageInline="inline",e.imageLink=ve,e.imageAlt=ye,e.imageDelete=Ce,e.imageCaption=Te,e.imageSize=Se,e.sourceCode=Ee,e.updateSource=Ne,e.toolbarOpen="toolbarOpen",e.beforeDropDownOpen=ke,e.selectionSave=we,e.selectionRestore=Le,e.expandPopupClick=xe,e.count=Oe,e.contentFocus="contentFocus",e.contentBlur="contentBlur",e.mouseDown=De,e.sourceCodeMouseDown=Me,e.editAreaClick=Re,e.scroll=Be,e.contentscroll=Ie,e.colorPickerChanged=Pe,e.tableColorPickerChanged=Ae,e.focusChange=He,e.selectAll=Ue,e.selectRange=je,e.getSelectedHtml=ze,e.renderInlineToolbar=qe,e.paste=_e,e.imgModule="imageModule",e.rtlMode=Fe,e.createTable=Qe,e.docClick=We,e.tableToolbarAction=Ve,e.checkUndo=Ge,e.readOnlyMode=Ke,e.pasteClean=Ye,e.beforeDialogOpen=Xe,e.dialogOpen=Je,e.beforeDialogClose=$e,e.dialogClose=Ze,e.beforeQuickToolbarOpen=et,e.quickToolbarOpen=tt,e.quickToolbarClose=nt,e.popupHide="popupHide",e.imageSelected=it,e.imageUploading=ot,e.imageUploadSuccess=rt,e.imageUploadFailed=st,e.imageRemoving=at,e.afterImageDelete=lt,e.drop="drop",e.xhtmlValidation=dt,e.CLS_RTE=ct,e.CLS_RTL="e-rtl",e.CLS_CONTENT="e-content",e.CLS_DISABLED=pt,e.CLS_SCRIPT_SHEET=ht,e.CLS_STYLE_SHEET=ut,e.CLS_TOOLBAR=mt,e.CLS_TB_FIXED=gt,e.CLS_TB_FLOAT=ft,e.CLS_TB_ABS_FLOAT=bt,e.CLS_INLINE=vt,e.CLS_TB_INLINE="e-rte-tb-inline",e.CLS_RTE_EXPAND_TB=yt,e.CLS_FULL_SCREEN=Ct,e.CLS_QUICK_TB=Tt,e.CLS_POP=St,e.CLS_QUICK_POP=Et,e.CLS_QUICK_DROPDOWN=Nt,e.CLS_IMAGE_POP=kt,e.CLS_INLINE_POP=wt,e.CLS_INLINE_DROPDOWN=Lt,e.CLS_DROPDOWN_POPUP=xt,e.CLS_DROPDOWN_ICONS=Ot,e.CLS_DROPDOWN_ITEMS=Dt,e.CLS_DROPDOWN_BTN=Mt,e.CLS_RTE_CONTENT=Rt,e.CLS_TB_ITEM=Bt,e.CLS_TB_EXTENDED="e-toolbar-extended",e.CLS_TB_WRAP=It,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=Pt,e.CLS_VISIBLE=At,e.CLS_FOCUS=Ht,e.CLS_RM_WHITE_SPACE=Ut,e.CLS_IMGRIGHT=jt,e.CLS_IMGLEFT=zt,e.CLS_IMGCENTER=qt,e.CLS_IMGBREAK=_t,e.CLS_CAPTION=Ft,e.CLS_RTE_CAPTION=Qt,e.CLS_CAPINLINE=Wt,e.CLS_IMGINLINE=Vt,e.CLS_COUNT=Gt,e.CLS_WARNING=Kt,e.CLS_ERROR=Yt,e.CLS_ICONS="e-icons",e.CLS_ACTIVE=Xt,e.CLS_EXPAND_OPEN=Jt,e.CLS_RTE_ELEMENTS=$t,e.CLS_TB_BTN=Zt,e.CLS_HR_SEPARATOR=en,e.CLS_TB_IOS_FIX=tn,e.CLS_TB_STATIC="e-tb-static",e.CLS_FORMATS_TB_BTN=nn,e.CLS_FONT_NAME_TB_BTN=on,e.CLS_FONT_SIZE_TB_BTN=rn,e.CLS_FONT_COLOR_TARGET=sn,e.CLS_BACKGROUND_COLOR_TARGET=an,e.CLS_COLOR_CONTENT=ln,e.CLS_FONT_COLOR_DROPDOWN=dn,e.CLS_BACKGROUND_COLOR_DROPDOWN=cn,e.CLS_COLOR_PALETTE=pn,e.CLS_FONT_COLOR_PICKER=hn,e.CLS_BACKGROUND_COLOR_PICKER=un,e.CLS_RTE_READONLY=mn,e.CLS_TABLE_SEL=gn,e.CLS_TB_DASH_BOR=fn,e.CLS_TB_ALT_BOR=bn,e.CLS_TB_COL_RES=vn,e.CLS_TB_ROW_RES=yn,e.CLS_TB_BOX_RES=Cn,e.CLS_RTE_HIDDEN=Tn,e.CLS_RTE_PASTE_KEEP_FORMAT=Sn,e.CLS_RTE_PASTE_REMOVE_FORMAT=En,e.CLS_RTE_PASTE_PLAIN_FORMAT=Nn,e.CLS_RTE_PASTE_OK=kn,e.CLS_RTE_PASTE_CANCEL=wn,e.CLS_RTE_DIALOG_MIN_HEIGHT=Ln,e.CLS_RTE_RES_HANDLE=xn,e.CLS_RTE_RES_EAST="e-south-east",e.CLS_RTE_IMAGE=On,e.CLS_RESIZE="e-resize",e.CLS_IMG_FOCUS="e-img-focus",e.CLS_RTE_DRAG_IMAGE=Dn,e.CLS_RTE_UPLOAD_POPUP=Mn,e.CLS_POPUP_OPEN=Rn,e.CLS_IMG_RESIZE="e-img-resize",e.CLS_DROPAREA="e-droparea",e.CLS_IMG_INNER="e-img-inner",e.CLS_UPLOAD_FILES=Bn,e.CLS_RTE_DIALOG_UPLOAD=In,e.CLS_RTE_RES_CNT=Pn,e.CLS_CUSTOM_TILE=An,e.CLS_NOCOLOR_ITEM=Hn,e.CLS_TABLE=Un,e.CLS_TABLE_BORDER=jn,e.CLS_RTE_TABLE_RESIZE=zn,e.getIndex=l,e.hasClass=d,e.getDropDownValue=c,e.isIDevice=p,e.getFormattedFontSize=h,e.pageYOffset=u,e.getTooltipText=m,e.setToolbarStatus=g,e.getCollection=f,e.getTBarItemsIndex=b,e.updateUndoRedoStatus=v,e.dispatchEvent=y,e.parseHtml=C,e.getTextNodesUnder=T,e.toObjectLowerCase=S,e.getEditValue=E,e.updateTextNode=N,e.isEditableValueEmpty=k,e.decode=w,e.sanitizeHelper=L,e.convertToBlob=x,e.ServiceLocator=di,e.RendererFactory=ci,e.EditorManager=Zo,e.IMAGE=oo,e.TABLE=ro,e.LINK=so,e.INSERT_ROW=ao,e.INSERT_COLUMN=lo,e.DELETEROW=co,e.DELETECOLUMN=po,e.REMOVETABLE=ho,e.TABLEHEADER=uo,e.TABLE_VERTICAL_ALIGN=mo,e.ALIGNMENT_TYPE=go,e.INDENT_TYPE=fo,e.DEFAULT_TAG="p",e.BLOCK_TAGS=bo,e.IGNORE_BLOCK_TAGS=vo,e.TABLE_BLOCK_TAGS=yo,e.SELECTION_TYPE=Co,e.INSERTHTML_TYPE=To,e.INSERT_TEXT_TYPE=So,e.CLEAR_TYPE=Eo,e.CLASS_IMAGE_RIGHT=Ao,e.CLASS_IMAGE_LEFT=Ho,e.CLASS_IMAGE_CENTER=Uo,e.CLASS_IMAGE_BREAK=jo,e.CLASS_CAPTION=zo,e.CLASS_RTE_CAPTION="e-rte-img-caption",e.CLASS_CAPTION_INLINE=qo,e.CLASS_IMAGE_INLINE="e-imginline",e.Lists=xo,e.markerClassName=ko,e.DOMNode=wo,e.Alignments=Io,e.Indents=Po,e.Formats=Mo,e.LinkCommand=Bo,e.InsertMethods=Oo,e.InsertTextExec=$o,e.InsertHtmlExec=Go,e.InsertHtml=Ro,e.IsFormatted=Qo,e.MsWordPaste=Jo,e.NodeCutter=Do,e.ImageCommand=_o,e.SelectionCommands=Wo,e.SelectionBasedExec=Vo,e.ClearFormatExec=Yo,e.UndoRedoManager=Xo,e.TableCommand=Fo,e.statusCollection=nr,e.ToolbarStatus=ir,e.NodeSelection=No,e.MarkdownParser=Zi,e.LISTS_COMMAND=Ii,e.selectionCommand=Pi,e.LINK_COMMAND=Ai,e.CLEAR_COMMAND=Hi,e.MD_TABLE=Ui,e.ClearFormat=$i,e.MDLists=ji,e.MDFormats=zi,e.MarkdownSelection=Si,e.UndoRedoCommands=Yi,e.MDSelectionFormats=qi,e.MDLink=Xi,e.MDTable=Ji,e.markdownFormatTags=_i,e.markdownSelectionTags=Fi,e.markdownListsTags=Qi,e.htmlKeyConfig=Wi,e.markdownKeyConfig=Vi,e.pasteCleanupGroupingTags=Gi,e.listConversionFilters={first:"MsoListParagraphCxSpFirst",middle:"MsoListParagraphCxSpMiddle",last:"MsoListParagraphCxSpLast"},e.selfClosingTags=Ki,e.KEY_DOWN="keydown",e.ACTION=ki,e.FORMAT_TYPE=wi,e.KEY_DOWN_HANDLER=Li,e.LIST_TYPE="list-type",e.KEY_UP_HANDLER=xi,e.KEY_UP="keyup",e.MODEL_CHANGED_PLUGIN=Oi,e.MODEL_CHANGED=Di,e.MS_WORD_CLEANUP_PLUGIN=Mi,e.MS_WORD_CLEANUP=Ri,Object.defineProperty(e,"__esModule",{value:!0})});
11
2
  //# sourceMappingURL=ej2-richtexteditor.umd.min.js.map