Updating minified JavaScript files
authorWoltLab <woltlab@woltlab.com>
Tue, 17 Nov 2020 14:56:24 +0000 (14:56 +0000)
committerWoltLab <woltlab@woltlab.com>
Tue, 17 Nov 2020 14:56:24 +0000 (14:56 +0000)
wcfsetup/install/files/acp/templates/codeMetaCode.tpl [new file with mode: 0644]
wcfsetup/install/files/js/3rdParty/redactor2/redactor.combined.min.js

diff --git a/wcfsetup/install/files/acp/templates/codeMetaCode.tpl b/wcfsetup/install/files/acp/templates/codeMetaCode.tpl
new file mode 100644 (file)
index 0000000..67e183b
--- /dev/null
@@ -0,0 +1,32 @@
+<div class="codeBox collapsibleBbcode jsCollapsibleBbcode {if $lines > 10} collapsed{/if}">
+       <div class="codeBoxHeader">
+               <div class="codeBoxHeadline">{$title}{if $filename}: {$filename}{/if}</div>
+               
+               {if !$isAmp && $lines > 10}
+                       <span class="toggleButton icon icon24 fa-expand jsTooltip pointer" title="{lang}wcf.bbcode.button.showAll{/lang}" data-title-collapse="{lang}wcf.bbcode.button.collapse{/lang}" data-title-expand="{lang}wcf.bbcode.button.showAll{/lang}"></span>
+               {/if}
+       </div>
+       
+       {assign var='lineNumber' value=$startLineNumber}
+       <pre class="codeBoxCode collapsibleBbcodeOverflow"><code{if $language} class="language-{$language}"{/if}>{foreach from=$content item=line}{*
+               *}{assign var='codeLineID' value='codeLine_'|concat:$lineNumber:'_':$codeID}{*
+               *}<div class="codeBoxLine" id="{$codeLineID}"><a href="{@$__wcf->getAnchor($codeLineID)}" class="lineAnchor" title="{@$lineNumber}"></a><span>{$line}</span></div>{*
+               *}{assign var='lineNumber' value=$lineNumber+1}{*
+       *}{/foreach}</code></pre>
+       
+       {if !$isAmp && $lines > 10}
+               <span class="toggleButton" data-title-collapse="{lang}wcf.bbcode.button.collapse{/lang}" data-title-expand="{lang}wcf.bbcode.button.showAll{/lang}">{lang}wcf.bbcode.button.showAll{/lang}</span>
+       {/if}
+</div>
+{if !$isAmp}
+       <script data-relocate="true">
+               require(['Language', 'WoltLabSuite/Core/Bbcode/Collapsible', 'WoltLabSuite/Core/Bbcode/Code'], function (Language, BbcodeCollapsible, BbcodeCode) {
+                       Language.addObject({
+                               'wcf.message.bbcode.code.copy': '{jslang}wcf.message.bbcode.code.copy{/jslang}',
+                               'wcf.message.bbcode.code.copy.success': '{jslang}wcf.message.bbcode.code.copy.success{/jslang}'
+                       });
+                       BbcodeCollapsible.observe();
+                       BbcodeCode.processAll();
+               });
+       </script>
+{/if}
index f61ecb29753ad90548103d85af0b3fcf6c5880bb..7a9e5c7cf3b4da435b42c894f55c8efe93809b51 100644 (file)
@@ -55,7 +55,7 @@
 (function (window, undefined) { $.Redactor.prototype.WoltLabInlineCode=function(){"use strict";var s;return{init:function(){this.opts.activeButtonsStates.kbd="tt",require(["Environment","EventHandler"],function(e,t){s=e,t.add("com.woltlab.wcf.redactor2","bbcode_tt_"+this.$element[0].id,this.WoltLabInlineCode._toggle.bind(this))}.bind(this))},_toggle:function(e){var t;e.cancel=!0;var o=window.getSelection();if(o.isCollapsed){t=null;var n=o.anchorNode;n.nodeType===Node.TEXT_NODE&&(n=n.parentNode);var r,d,i=!1;if("KBD"===n.nodeName&&""!==n.textContent.replace(/\u200b/g,"")&&(r=o.anchorNode,d=o.anchorOffset,r.nodeType===Node.TEXT_NODE&&0===d?t=r:r===n&&(0===d?i=!0:t=n.childNodes[d-1])),!1===i&&null!==t)for(var a,l=0,c=n.childNodes.length;l<c;l++){if((a=n.childNodes[l])===t){i=!0;break}if(a.nodeType!==Node.TEXT_NODE||""!==a.textContent.replace(/\u200b/g,""))break}if(i){var N=n.previousSibling;return null!==N&&N.nodeType===Node.TEXT_NODE&&"​"===N.textContent||(N=document.createTextNode("​"),n.parentNode.insertBefore(N,n)),void this.caret.before(n)}}if(this.button.toggle({},"kbd","func","inline.format"),(t=o.anchorNode).nodeType===Node.TEXT_NODE&&(t=t.parentNode),"KBD"===t.nodeName){var f=t.nextSibling;if("ios"===s.platform()&&"safari"===s.browser())return void(f&&"BR"===f.nodeName&&t.parentNode.insertBefore(document.createTextNode("​"),f));for(;f;){if(f.nodeType!==Node.TEXT_NODE||f.textContent.length)return;f=f.nextSibling}f?f.textContent="​":t.parentNode.appendChild(document.createTextNode("​"))}}}}; })(this);
 
 // plugins/WoltLabInsert.js
-(function (window, undefined) { $.Redactor.prototype.WoltLabInsert=function(){"use strict";return{init:function(){var s=this.opts.woltlab.placeholderCallback,a=this.insert.html;this.insert.html=function(e,t){s=s&&s();var o=window.getSelection();o.rangeCount&&"IMG"===o.anchorNode.nodeName&&this.caret.after(o.anchorNode),this.placeholder.hide(),this.core.editor().focus(),!this.detect.isFirefox()||null===(o.anchorNode.nodeType===Node.TEXT_NODE?o.anchorNode.parentNode:o.anchorNode).closest(".redactor-layer")&&(this.selection.restore(),null===(o.anchorNode.nodeType===Node.TEXT_NODE?o.anchorNode.parentNode:o.anchorNode).closest(".redactor-layer")&&(this.WoltLabCaret.endOfEditor(),this.selection.save()));var r,n=this.selection.block(),i=""===this.$editor[0].innerHTML.replace(/<\/?p>/g,"").replace(/<br>/g,"").replace(/\u200B/g,"").trim();a.call(this,e,t),i&&(n=this.$editor[0].firstElementChild),n&&"P"===n.nodeName&&n.nextElementSibling&&(r=!1,(0===n.childElementCount&&""===n.textContent.replace(/\u200B/g,"").trim()||1===n.childElementCount&&"<br>"===n.innerHTML)&&(r=!0),r&&elRemove(n)),o.rangeCount&&"IMG"===o.anchorNode.nodeName&&this.caret.after(o.anchorNode)}.bind(this);var t=this.insert.text;this.insert.text=function(e){s=s&&s(),this.core.editor().focus(),this.selection.restore(),elClosest(window.getSelection().anchorNode,".redactor-layer")!==this.core.editor()[0]&&this.WoltLabCaret.endOfEditor(),t.call(this,e),this.selection.saveInstant()}.bind(this),this.insert.placeHtml=function(e){var t=!1;e.forEach(function(e){e instanceof Element&&e.classList.contains("woltlab-bbcode-marker")&&(t=!0)});var o=document.createElement("span");o.id="redactor-insert-marker",o=this.insert.node(o),$(o).before(e),t||(this.selection.restore(),this.caret.after(o)),$(o).remove()}.bind(this)}}}; })(this);
+(function (window, undefined) { $.Redactor.prototype.WoltLabInsert=function(){"use strict";return{init:function(){var s=this.opts.woltlab.placeholderCallback;var a=this.insert.html;this.insert.html=function(e,t){s=s&&s();var o=window.getSelection();o.rangeCount&&"IMG"===o.anchorNode.nodeName&&this.caret.after(o.anchorNode),this.placeholder.hide(),this.core.editor().focus(),!this.detect.isFirefox()||null===(o.anchorNode.nodeType===Node.TEXT_NODE?o.anchorNode.parentNode:o.anchorNode).closest(".redactor-layer")&&(this.selection.restore(),null===(o.anchorNode.nodeType===Node.TEXT_NODE?o.anchorNode.parentNode:o.anchorNode).closest(".redactor-layer")&&(this.WoltLabCaret.endOfEditor(),this.selection.save()));var r,i=this.selection.block(),n=""===this.$editor[0].innerHTML.replace(/<\/?p>/g,"").replace(/<br>/g,"").replace(/\u200B/g,"").trim();a.call(this,e,t),n&&(i=this.$editor[0].firstElementChild),i&&"P"===i.nodeName&&i.nextElementSibling&&(r=!1,(0===i.childElementCount&&""===i.textContent.replace(/\u200B/g,"").trim()||1===i.childElementCount&&"<br>"===i.innerHTML)&&(r=!0),r&&elRemove(i)),this.detect.isFirefox()&&(this.selection.save(),function e(t){var o=t.querySelector("p > p");if(null!==o){for(var r=o.parentElement,i=r.parentElement;r.childNodes.length;)i.insertBefore(r.childNodes[0],r);r.remove(),e(t)}}(this.$editor[0]),this.selection.restore()),o.rangeCount&&"IMG"===o.anchorNode.nodeName&&this.caret.after(o.anchorNode)}.bind(this);var t=this.insert.text;this.insert.text=function(e){s=s&&s(),this.core.editor().focus(),this.selection.restore(),elClosest(window.getSelection().anchorNode,".redactor-layer")!==this.core.editor()[0]&&this.WoltLabCaret.endOfEditor(),t.call(this,e),this.selection.saveInstant()}.bind(this),this.insert.placeHtml=function(e){var t=!1;e.forEach(function(e){e instanceof Element&&e.classList.contains("woltlab-bbcode-marker")&&(t=!0)});var o=document.createElement("span");o.id="redactor-insert-marker",o=this.insert.node(o),$(o).before(e),t||(this.selection.restore(),this.caret.after(o)),$(o).remove()}.bind(this)}}}; })(this);
 
 // plugins/WoltLabKeydown.js
 (function (window, undefined) { $.Redactor.prototype.WoltLabKeydown=function(){"use strict";var s=!1,n=[];return{init:function(){var b=window.getSelection();require(["Environment"],function(e){s="safari"===e.browser()});var y=this.keydown.init;this.keydown.init=function(e){if(this.detect.isFirefox()&&b.isCollapsed&&e.which===this.keyCode.BACKSPACE&&((N=b.anchorNode).nodeType===Node.ELEMENT_NODE&&0<b.anchorOffset&&(N=N.childNodes[b.anchorOffset-1]),N.nodeType===Node.TEXT_NODE&&"​"===N.textContent)){for(var t=[],i=N;i=i.previousSibling;){if(i.nodeType===Node.ELEMENT_NODE){"IMG"!==i.nodeName&&(t=[]);break}if(i.nodeType===Node.TEXT_NODE){var n=i.textContent;if(""!==n&&"​"!==n){t=[];break}t.push(i)}}t.length&&t.forEach(elRemove)}if((e.originalEvent.which===this.keyCode.BACKSPACE||e.originalEvent.which===this.keyCode.DELETE)&&b.isCollapsed){var o=this.selection.block();if("P"===o.nodeName){if(this.list.combineAfterAndBefore(o))return void e.originalEvent.preventDefault();if(this.utils.isEmpty(o.innerHTML)&&o.previousElementSibling!==o.nextElementSibling){var r=null,l=null;return e.originalEvent.which===this.keyCode.BACKSPACE?null===o.previousElementSibling?l=o.nextElementSibling:r=o.previousElementSibling:null===o.nextElementSibling?r=o.previousElementSibling:l=o.nextElementSibling,elRemove(o),null===l?("OL"!==r.nodeName&&"UL"!==r.nodeName||(r=r.lastElementChild),this.caret.end(r)):("OL"!==l.nodeName&&"UL"!==l.nodeName||(l=l.firstElementChild),this.caret.start(l)),void e.originalEvent.preventDefault()}}else{if(e.originalEvent.which===this.keyCode.DELETE&&-1!==["H1","H2","H3","H4","H5","H6"].indexOf(o.nodeName)&&this.utils.isEmpty(o.innerHTML)){var s=o.nextElementSibling;return s?s=o.nextElementSibling:((s=elCreate("p")).innerHTML=this.opts.invisibleSpace,o.parentNode.appendChild(s)),o.parentNode.removeChild(o),this.caret.start(s),void e.originalEvent.preventDefault()}if(this.detect.isWebkit()&&"LI"===o.nodeName&&e.which===this.keyCode.DELETE){var a=b.anchorNode;if(a.nodeType===Node.TEXT_NODE&&a.textContent.length===b.anchorOffset&&a.parentNode.lastChild===a){var d=o.nextElementSibling;if(d&&"LI"===d.nodeName){for(this.buffer.set(),this.selection.save();d.childNodes.length;)o.appendChild(d.childNodes[0]);return elRemove(d),this.selection.restore(),void e.preventDefault()}}}}}var h,c=null;if(e.which===this.keyCode.BACKSPACE&&this.detect.isFirefox()){var f=this.selection.block();if(f&&"P"===f.tagName&&this.utils.isStartOfElement(f)){var u=f.previousElementSibling;if(u&&("OL"===u.nodeName||"UL"===u.nodeName)){this.buffer.set(),this.selection.save();for(var m=u.lastElementChild;f.childNodes.length;)m.appendChild(f.childNodes[0]);return elRemove(f),this.selection.restore(),void e.preventDefault()}u&&"P"===u.nodeName&&null!==(c=u.lastElementChild)&&"BR"!==c.nodeName&&(c=null)}}if(!1===y.call(this,e)||e.originalEvent.defaultPrevented)null===c||!this.detect.isFirefox()||1===(h=b.getRangeAt(0)).startOffset&&h.startContainer.firstElementChild===c&&elRemove(c);else if(!(39!==(e=e.originalEvent).which||e.ctrlKey||e.shiftKey||e.metaKey||e.altKey)){if(!b.isCollapsed)return;var v=b.anchorNode;if(v.nodeType!==Node.TEXT_NODE||b.getRangeAt(0).startOffset!==v.textContent.length)return;var p=v.parentNode;if("KBD"!==p.nodeName)return;for(var g=!0,N=p;N&&N!==this.core.editor()[0];){if(null!==N.nextSibling){for(;N.nextSibling&&N.nextSibling.nodeType===Node.TEXT_NODE&&0===N.nextSibling.textContent.length;)N.parentNode.removeChild(N.nextSibling);if(N.nextSibling&&"BR"!==N.nextSibling.nodeName||null!==N.nextSibling.nextSibling){g=!1;break}}N=N.parentNode}g&&p.parentNode.insertBefore(document.createTextNode("​"),p.nextSibling)}}.bind(this);var e=window.navigator.userAgent.toLowerCase();-1!==e.indexOf("linux")&&-1!==e.indexOf("android")&&-1!==e.indexOf("chrome")&&(this.keydown.checkEvents=function(){this.core.addEvent(!1)}.bind(this)),this.core.editor().off("keydown.redactor"),this.core.editor().on("keydown.redactor",this.keydown.init.bind(this)),this.keydown.onArrowDown=function(){for(var e,t,i=this.WoltLabKeydown._getBlocks(),n=0;n<i.length;n++)if(t=i[n]){if(!this.utils.isEndOfElement(t))continue;if(null!==(e=t.nextElementSibling)&&"P"===e.nodeName)break;return void this.keydown.insertAfterLastElement(t)}}.bind(this),this.keydown.onArrowUp=function(){for(var e,t,i=this.WoltLabKeydown._getBlocks(),n=0;n<i.length;n++)if(t=i[n]){if(!this.utils.isStartOfElement())break;if(null===(e=t.previousElementSibling)||"P"===e.nodeName)return void this.keydown.insertBeforeFirstElement(t);var o=$(this.opts.emptyHtml)[0];t.parentNode.insertBefore(o,t),this.caret.end(o);break}}.bind(this);var n=function(e){if(!1===this.core.callback("enter",e))return e.preventDefault(),!1;if(this.keydown.blockquote&&!0===this.keydown.exitFromBlockquote(e))return!1;if(this.keydown.pre)return this.keydown.insertNewLine(e);if(this.keydown.blockquote||this.keydown.figcaption)return this.keydown.insertBreakLine(e);if(this.keydown.figure)setTimeout($.proxy(function(){this.keydown.replaceToParagraph("FIGURE")},this),1);else if(this.keydown.block){var t,i,n,o,r=null;this.detect.isFirefox()&&"P"===this.keydown.block.nodeName&&b.isCollapsed&&(null!==(t=elClosest(b.getRangeAt(0).startContainer,"a"))&&null===elBySel("br",t)&&(r=this.keydown.block)),setTimeout($.proxy(function(){var t,e,i;this.keydown.replaceToParagraph("DIV"),null!==r&&null!==r.previousElementSibling&&(t=[],elBySelAll("a",r.previousElementSibling,function(e){t.push(e)}),t.length&&(e=t[t.length-1],null!==(i=elBySel("br",e))&&elRemove(i)))},this),1),"LI"===this.keydown.block.tagName&&(i=this.selection.current(),n=elClosest(i,"li"),this.utils.isRedactorParent(n)&&this.utils.isEmpty(n.innerHTML)&&null===n.nextElementSibling&&(n.innerHTML=s?"<br>":"",s&&((o=document.createRange()).selectNodeContents(n),o.collapse(!1),b.removeAllRanges(),b.addRange(o))))}else if(!this.keydown.block)return this.keydown.insertParagraph(e);return this.detect.isFirefox()&&this.utils.isInline(this.keydown.parent)?(this.keydown.insertBreakLine(e),void setTimeout(function(){for(var e=this.selection.block(),t=this.selection.inline();t&&t!==e;){if("A"===t.nodeName){var i=!1;if(0===t.childNodes.length?i=!0:""===t.textContent.replace(/\u200B/g,"").trim()&&(i=!0,elBySelAll("*",t,function(e){"SPAN"!==e.nodeName&&(i=!1)})),i){for(;t.childNodes.length;)t.parentNode.insertBefore(t.childNodes[0],t);elRemove(t);break}}t=t.parentNode}}.bind(this),1)):void 0}.bind(this);this.keydown.onEnter=function(e){var t=this.keydown.blockquote;t&&(this.keydown.blockquote=!1);var i=n.call(this,e);return t&&(this.keydown.blockquote=t),i}.bind(this),this.keydown.replaceToParagraph=function(e){var t=this.selection.block(),i=t.innerHTML.replace(/<br\s?\/?>/gi,"");if(t.tagName===e&&this.utils.isEmpty(i)&&!$(t).hasClass("redactor-in")){var n=document.createElement("p");$(t).replaceWith(n);var o=document.createRange();o.setStart(n,0);var r=document.createTextNode("​");o.insertNode(r),o.setStartAfter(r),o.collapse(!0);var l=window.getSelection();return l.removeAllRanges(),l.addRange(o),!1}"P"===t.tagName&&$(t).removeAttr("style")}.bind(this),this.keydown.onShiftEnter=function(e){return this.buffer.set(),this.keydown.pre?this.keydown.insertNewLine(e):this.insert.raw("<br>​")}.bind(this);var r=this.keydown.onTab;this.keydown.onTab=function(e,t){if(!this.keydown.pre){var i=$(this.selection.current()).closest("ul, ol, td",this.core.editor()[0]);if(0===i.length)return!0;if("TD"===(i=i[0]).nodeName){var n,o=null;return e.originalEvent.shiftKey?null===(o=i.previousElementSibling)&&null!==(o=i.parentNode.previousElementSibling)&&(o=o.lastElementChild):null===(o=i.nextElementSibling)&&(null===(o=i.parentNode.nextElementSibling)&&(this.table.addRowBelow(),o=i.parentNode.nextElementSibling),o=o.firstElementChild),null!==o&&(this.utils.isEmpty(o.innerHTML)?this.caret.end(o):((n=document.createRange()).selectNodeContents(o),b.removeAllRanges(),b.addRange(n))),e.originalEvent.preventDefault(),!1}}return r.call(this,e,t)}.bind(this);var l=this.keydown.formatEmpty;this.keydown.formatEmpty=function(e){for(var t,i=this.$editor[0],n=0,o=i.childElementCount;n<o;n++)if("P"!==(t=i.children[n]).nodeName&&this.utils.isBlockTag(t.nodeName))return;return l.call(this,e)}.bind(this);var t=this.keydown.removeInvisibleSpace;this.keydown.removeInvisibleSpace=function(){this.keydown.current!==this.$editor[0]&&t.call(this)}.bind(this),require(["Core","Environment"],function(i,e){var t,n,o;"desktop"!==e.platform()||null!==(t=this.$editor[0].closest("form, .message, .jsOuterEditorContainer"))&&(null===(n=elBySel(".formSubmit",t))||(o=elBySel('input[type="submit"], button[data-type="save"], button[accesskey="s"]',n))&&(o.removeAttribute("accesskey"),this.WoltLabEvent.register("keydown",function(e){var t;83===e.event.which&&(t=!1,window.navigator.platform.match(/^Mac/)?e.event.ctrlKey&&e.event.altKey&&(t=!0):e.event.altKey&&!e.event.ctrlKey&&(t=!0),t&&(e.cancel=!0,"function"==typeof o.click?o.click():i.triggerEvent(o,WCF_CLICK_EVENT)))}.bind(this))))}.bind(this)),this.WoltLabKeydown._handleBackspaceAndDelete()},register:function(e){-1===n.indexOf(e)&&n.push(e)},_getBlocks:function(){for(var e=[this.keydown.blockquote,this.keydown.pre,this.keydown.figcaption],t=0,i=n.length;t<i;t++)e.push(this.utils.isTag(this.keydown.current,n[t]));return e},_handleBackspaceAndDelete:function(){function f(e){return null===elBySel("img",e)&&""===e.textContent.replace(/\u200B/g,"").trim()}var t=function(e){var t,i=this.selection.block();if(i)if("TD"===i.nodeName){var n=i.innerHTML;"​"===n?e.preventDefault():""===n&&(e.preventDefault(),i.innerHTML="​")}else if(-1!==i.nodeName.indexOf("-")&&f(i))(t=i.parentNode).insertBefore(this.marker.get(),i.nextSibling),elRemove(i),this.selection.restore();else if((t=i&&"P"===i.nodeName?i.parentNode:null)&&-1!==t.nodeName.indexOf("-")){var o=window.getSelection().getRangeAt(0),r=document.createRange();r.setStartBefore(i),r.setEnd(o.startContainer,o.startOffset);var l=r.cloneContents(),s=elCreate("div");if(s.appendChild(l),f(s)){e.preventDefault();var a=i.previousElementSibling,d=null;if(a)d=f(a);else for(t=i;(t=t.parentNode)&&t!==this.$editor[0];)if(a=t.previousElementSibling){d=!1;break}if(d)elRemove(a);else if(null!==d){var h,c=i.parentNode;if("P"===a.nodeName){for(a.appendChild(this.marker.get());i.childNodes.length;){if("BR"===(h=i.childNodes[0]).nodeName){elRemove(h);break}a.appendChild(h)}0===i.childNodes.length&&elRemove(i),this.selection.restore()}else a.appendChild(i),i.insertBefore(this.marker.get(),i.firstChild),this.selection.restore();f(c)&&elRemove(c)}else null===d&&(t=i.parentNode,f(t)&&elRemove(t))}}}.bind(this),i=function(e){var t,i=this.selection.block();if(-1!==i.nodeName.indexOf("-")&&f(i))(t=i.parentNode).insertBefore(this.marker.get(),i.nextSibling),elRemove(i),this.selection.restore();else if((t=i&&"P"===i.nodeName?i.parentNode:null)&&-1!==t.nodeName.indexOf("-")){var n=window.getSelection().getRangeAt(0),o=document.createRange();o.setStart(n.startContainer,n.startOffset),o.setEndAfter(i);var r=o.cloneContents(),l=elCreate("div");if(l.appendChild(r),f(l)){e.preventDefault();var s=i.nextElementSibling,a=null;if(s)a=f(s);else for(t=i;(t=t.parentNode)&&t!==this.$editor[0];)if(s=t.nextElementSibling){a=!1;break}if(a)elRemove(s);else if(null!==a){var d=s.parentNode;if("P"===s.nodeName){for(;s.childNodes.length;)i.appendChild(s.childNodes[0]);elRemove(s)}else{if(i.appendChild(this.marker.get()),t=i.parentNode,-1!==s.nodeName.indexOf("-")){var h=s.firstElementChild;if(h&&"P"===h.nodeName){for(;h.childNodes.length;)i.appendChild(h.childNodes[0]);s.removeChild(h),f(s)&&elRemove(s)}}else t.insertBefore(s,i.nextSibling);this.selection.restore()}f(d)&&elRemove(d)}else null===a&&(t=i.parentNode,f(t)&&elRemove(t))}}}.bind(this),l=function(){return this.opts.blockTags.filter(function(e){return-1!==e.indexOf("-")}).join(",")}.bind(this),s=[],a=function(){elBySelAll(l(),this.core.editor()[0],function(o){null!==o.parentNode&&-1!==s.indexOf(o)&&["nextElementSibling","previousElementSibling"].forEach(function(e){for(var t,i=o[e];null!==i&&i.nodeName===o.nodeName&&-1===s.indexOf(i);){if("previousElementSibling"===e)for(var n=i.childNodes.length-1;0<=n;n--)o.insertBefore(i.childNodes[n],o.firstChild);else for(;0<i.childNodes.length;)o.appendChild(i.childNodes[0]);t=i[e],elRemove(i),i=t}})})}.bind(this),d=0,h=function(){var n=!1;elBySelAll(l(),this.core.editor()[0],function(e){var t=elData(e,"firefox-duplication-bug");if(""!==t){var i=s[parseInt(t,10)];if(null!==i&&null!==i.parentNode&&e!==i&&i.contains(e)){for(;e.childNodes.length;)e.parentNode.insertBefore(e.childNodes[0],e);return e.parentNode.removeChild(e),void(n=!0)}e.removeAttribute("data-firefox-duplication-bug")}}),n&&elBySelAll("h1,h2,h3,h4,h5,h6",this.core.editor()[0],function(e){elBySelAll("p",e,function(e){for(;e.childNodes.length;)e.parentNode.insertBefore(e.childNodes[0],e);e.parentNode.removeChild(e)})}),d=0}.bind(this);this.keydown.onBackspaceAndDeleteAfter=function(o){this.detect.isFirefox()&&(this.selection.isCollapsed()?o.which===this.keyCode.BACKSPACE?t(o):o.which===this.keyCode.DELETE&&i(o):o.which!==this.keyCode.BACKSPACE&&o.which!==this.keyCode.DELETE||elBySelAll(l(),this.core.editor()[0],function(e){s.push(e),elData(e,"firefox-duplication-bug",d++)}));var e,r=!1;o.which===this.keyCode.BACKSPACE&&this.selection.isCollapsed()&&this.detect.isWebkit()&&(!1!==(e=this.selection.block())&&"PRE"===e.nodeName&&(r=!0)),setTimeout($.proxy(function(){var e;if(0<s.length&&(this.selection.save(),a(),h(),this.selection.restore(),s=[]),r){var t=this.selection.block();if((!1===t||"PRE"!==t.nodeName)&&(e=this.selection.current()).nodeType===Node.TEXT_NODE&&e.nextSibling&&"SPAN"===e.nextSibling.nodeName){var i=e.nextSibling;if(-1!==i.style.getPropertyValue("font-family").indexOf("monospace")&&"pre-wrap"===i.style.getPropertyValue("white-space")){for(;i.childNodes.length;)i.parentNode.insertBefore(i.childNodes[0],i);elRemove(i)}}}this.code.syncFire=!1,this.keydown.removeEmptyLists();var n="";0!==this.opts.keepStyleAttr.length&&(n=","+this.opts.keepStyleAttr.join(",")),this.core.editor().find("*[style]").not("span, img, figure, iframe, #redactor-image-box, #redactor-image-editter, [data-redactor-style-cache], [data-redactor-span]"+n).removeAttr("style"),this.keydown.formatEmpty(o),"KBD"===(e=this.selection.current()).nodeName&&0===e.innerHTML.length&&elRemove(e),this.code.syncFire=!0},this),1)}.bind(this)}}}; })(this);