@innovastudio/contentbuilder 1.0.77 → 1.0.78

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.
@@ -1,4 +1,4 @@
1
- var ContentBuilder=function(){"use strict";class t{constructor(t){this.builder=t,this.dom=new e}cellSelected(){return document.querySelector(".cell-active")}builderStuff(){return document.querySelector("#_cbhtml")}cellNext(t){const e=this.dom;let i=t.nextElementSibling;return i?e.hasClass(i,"is-row-tool")||e.hasClass(i,"is-rowadd-tool")||e.hasClass(i,"is-row-overlay")?null:i:null}out(t){if(this.builder){let e=this.builder.opts.lang[t];return e||(this.builder.checkLang&&console.log(t),t)}return t}confirm(t,e){const i=this.dom;let n=`<div class="is-modal is-confirm">\n <div class="is-modal-content" style="padding-bottom:20px;">\n <p>${t}</p>\n <button title="${this.out("Delete")}" class="input-ok classic">${this.out("Delete")}</button>\n </div>\n </div>`;const o=this.builder.builderStuff;let s=o.querySelector(".is-confirm");s||(i.appendHtml(o,n),s=o.querySelector(".is-confirm")),this.showModal(s,!1,(()=>{s.parentNode.removeChild(s),e(!1)}),!0);let r=s.querySelector(".is-confirm .input-ok");i.addEventListener(r,"click",(()=>{this.hideModal(s),s.parentNode.removeChild(s),e(!0)}))}showModal(t,e,i,n){const o=this.dom;o.addClass(t,"active");let s=!1;if(this.builder?this.builder.opts.animateModal&&(s=!0,n||(s=!1)):n&&(s=!0),s&&this.builder){const t=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(t,(t=>{t.style.transform=`scale(${this.builder.opts.zoom-.02})`,t.style.WebkitTransform=`scale(${this.builder.opts.zoom-.02})`,t.style.MozTransform=`scale(${this.builder.opts.zoom-.02})`,t.setAttribute("scaled-down","1")}))}if(!t.querySelector(".is-modal-overlay")){let n;if(n=e?'<div class="is-modal-overlay overlay-stay"></div>':'<div class="is-modal-overlay"></div>',t.insertAdjacentHTML("afterbegin",n),!e){let e=t.querySelector(".is-modal-overlay");o.addEventListener(e,"click",(()=>{i&&i(),this.hideModal(t)}))}}}hideModal(t){if(this.builder){const t=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(t,(t=>{t.getAttribute("scaled-down")&&(t.style.transform=`scale(${this.builder.opts.zoom})`,t.style.WebkitTransform=`scale(${this.builder.opts.zoom})`,t.style.MozTransform=`scale(${this.builder.opts.zoom})`,t.removeAttribute("scaled-down"))}))}this.dom.removeClass(t,"active")}fixLayout(t){const e=this.dom;let i=2;t.querySelector(".is-row-overlay")&&(i=3);const n=t.childElementCount-i,o=this.builder.opts.row,s=this.builder.opts.cols,r=this.builder.opts.colequal;if(r.length>0){e.elementChildren(t).forEach((t=>{if(!(e.hasClass(t,"is-row-tool")||e.hasClass(t,"is-rowadd-tool")||e.hasClass(t,"is-row-overlay"))){for(let i=0;i<=s.length-1;i++)e.removeClass(t,s[i]);for(let i=0;i<=r.length-1;i++)if(r[i].length===n){e.addClass(t,r[i][0]);break}1===n&&e.addClass(t,s[s.length-1])}}))}else if(""!==o&&s.length>0){let i=0;e.elementChildren(t).forEach((t=>{if(!(e.hasClass(t,"is-row-tool")||e.hasClass(t,"is-rowadd-tool")||e.hasClass(t,"is-row-overlay"))){i++;for(var o=0;o<=s.length-1;o++)e.removeClass(t,s[o]);1===n&&e.addClass(t,s[11]),2===n&&e.addClass(t,s[5]),3===n&&e.addClass(t,s[3]),4===n&&e.addClass(t,s[2]),5===n&&(5===i?e.addClass(t,s[3]):e.addClass(t,s[1])),6===n&&e.addClass(t,s[1]),7===n&&(i>=6?e.addClass(t,s[0]):e.addClass(t,s[1])),8===n&&(i>=5?e.addClass(t,s[0]):e.addClass(t,s[1])),9===n&&(i>=4?e.addClass(t,s[0]):e.addClass(t,s[1])),10===n&&(i>=3?e.addClass(t,s[0]):e.addClass(t,s[1])),11===n&&(i>=2?e.addClass(t,s[0]):e.addClass(t,s[1])),12===n&&e.addClass(t,s[0])}}))}}addContent(t,e,i){const n=this.dom;this.builder.opts.onAdd&&(t=this.builder.opts.onAdd(t));const o=this.cellSelected();let s;if(o)s=o.parentNode;else{if(s=document.querySelector(".row-active"),!s)return;e="row"}if("cell"===e||"cell-left"===e||"cell-right"===e){let r=4;this.builder.maxColumns&&(r=this.builder.maxColumns);let l,a=2;if(s.querySelector(".is-row-overlay")&&(a=3),s.childElementCount>=r+a)return alert(this.out("You have reached the maximum number of columns")),!1;if(this.builder.uo.saveForUndo(),""===this.builder.opts.row){let e=this.builder.opts.cellFormat,i=e.indexOf("</");t=e.substring(0,i)+t+e.substring(i),l=this.createElementFromHTML(t)}else{l=o.cloneNode(!0),l.removeAttribute("data-noedit"),l.removeAttribute("data-protected"),l.removeAttribute("data-module"),l.removeAttribute("data-module-desc"),l.removeAttribute("data-dialog-width"),l.removeAttribute("data-html"),l.removeAttribute("data-settings");for(let t=1;t<=20;t++)l.removeAttribute("data-html-"+t);l.removeAttribute("data-noedit"),n.removeClass(l,"cell-active"),l.removeAttribute("data-click"),l.removeAttribute("style"),i&&l.setAttribute(i,""),l.innerHTML=t}s.insertBefore(l,o),"cell"!==e&&"cell-right"!==e||n.moveAfter(l,o);let d=document.querySelector(".builder-active");d&&this.builder.applyBehaviorOn(d),this.fixLayout(s),l.click()}if("row"===e){let e,o;if(this.builder.uo.saveForUndo(),""===this.builder.opts.row){e=this.htmlToElement(this.builder.opts.rowFormat);let s=this.builder.opts.cellFormat,r=s.indexOf("</");t=s.substring(0,r)+t+s.substring(r);let l=n.elementChildren(e);for(;l.length>0&&(l=l[0],n.elementChildren(l).length>0);)l=n.elementChildren(l);l.innerHTML=t,o=l.firstChild,i&&o.setAttribute(i,"")}else o=n.createElement("div"),n.addClass(o,this.builder.opts.cols[this.builder.opts.cols.length-1]),o.innerHTML=t,i&&o.setAttribute(i,""),e=n.createElement("div"),n.addClass(e,this.builder.opts.row),n.appendChild(e,o);s.parentNode.insertBefore(e,s),n.moveAfter(e,s);let r=document.querySelector(".builder-active");r&&this.builder.applyBehaviorOn(r),o.click()}if("elm"===e){let e=this.builder.activeElement;if(!e)return;this.builder.uo.saveForUndo();let i=e;i.insertAdjacentHTML("afterend",t);let n=document.querySelector(".builder-active");n&&this.builder.applyBehaviorOn(n);let o=i.nextElementSibling;var r;if("img"===o.tagName.toLowerCase())clearTimeout(r),r=setTimeout((()=>{o.complete&&o.click()}),200);else o.click()}this.builder.opts.onChange()}htmlToElement(t){var e=document.createElement("template");return t=t.trim(),e.innerHTML=t,e.content.firstChild}addSnippet(t,e,i){this.builder.uo.saveForUndo();const n=this.dom;let o,s,r,l,a=!1;const d=this.builder.builderStuff.querySelector(".quickadd").getAttribute("data-mode");if(!e||"cell"!==d&&"cell-left"!==d&&"cell-right"!==d){if(e&&"row"===d){let e;if(r=document.createElement("div"),r.className=this.builder.opts.cols[this.builder.opts.cols.length-1],r.innerHTML=t,i&&r.setAttribute("data-noedit",""),o=document.createElement("div"),o.className=this.builder.opts.row,o.appendChild(r),s=this.builder.cellSelected(),s?e=s.parentNode:(e=document.querySelector(".row-active"),e||(a=!0)),a){const t=document.querySelectorAll(".is-builder"),i=t[t.length-1],o=n.elementChildren(i);e=o[o.length-1]}e.parentNode.insertBefore(o,e),n.moveAfter(o,e);let d=document.querySelector(".builder-active");d&&this.builder.applyBehaviorOn(d),r.click(),o.className=o.className.replace("row-outline",""),l=document.querySelector(".is-column-tool"),l.className=l.className.replace("active","")}else{if(e)return void(i?this.addContent(t,d,"data-noedit"):this.addContent(t,d));{var c=document.createElement("div");c.innerHTML=t;var u=c.querySelectorAll("[data-html]");if(Array.prototype.forEach.call(u,(e=>{t=(t=decodeURIComponent(e.getAttribute("data-html"))).replace(/{id}/g,this.makeId());for(var i=1;i<=20;i++)t=t.replace("[%HTML"+i+"%]",void 0===e.getAttribute("data-html-"+i)?"":decodeURIComponent(e.getAttribute("data-html-"+i)));e.innerHTML=t})),1===c.childNodes.length&&1===c.childNodes[0].childNodes.length&&("cell"===d||"cell-left"===d||"cell-right"===d)){const t=this.cellSelected();let e=t.parentNode,i=4;if(this.builder.maxColumns&&(i=this.builder.maxColumns),e.querySelector(".is-row-overlay")){if(e.childElementCount>=i+3)return alert(this.out("You have reached the maximum number of columns")),!1}else if(e.childElementCount>=i+2)return alert(this.out("You have reached the maximum number of columns")),!1;this.builder.uo.saveForUndo();let n=c.childNodes[0].childNodes[0];var p=document.createRange();t.parentNode.insertBefore(p.createContextualFragment(n.outerHTML),t),"cell"!==d&&"cell-right"!==d||(t.parentNode.insertBefore(t.previousElementSibling,t),t.parentNode.insertBefore(t,t.previousElementSibling));let o=document.querySelector(".builder-active");return o&&this.builder.applyBehaviorOn(o),this.fixLayout(e),"cell"===d||"cell-right"===d?t.nextElementSibling.click():t.previousElementSibling.click(),void this.builder.opts.onChange()}let e;if(s=this.builder.activeCol,s?e=s.parentNode:(e=document.querySelector(".row-active"),e||(a=!0)),a){const t=document.querySelectorAll(".is-builder"),i=t[t.length-1],o=n.elementChildren(i);e=o[o.length-1]}p=document.createRange(),e.parentNode.insertBefore(p.createContextualFragment(c.innerHTML),e.nextSibling),o=c.childNodes[0],o=e.nextElementSibling;let i=document.querySelector(".builder-active");i&&this.builder.applyBehaviorOn(i),r=o.childNodes[0],r.click(),o.className=o.className.replace("row-outline",""),l=document.querySelector(".is-column-tool"),l.className=l.className.replace("active","")}}this.builder.opts.onChange()}else i?this.addContent(t,d,"data-noedit"):this.addContent(t,d)}clearActiveCell(){const t=this.builder.builderStuff;if(!t)return;if(t.getAttribute("preventDevault"))return void setTimeout((()=>{t.removeAttribute("preventDevault")}),30);const e=this.dom;let i=document.getElementsByClassName("cell-active");for(;i.length;)i[0].classList.remove("cell-active");for(i=document.getElementsByClassName("row-outline");i.length;)i[0].classList.remove("row-outline");for(i=document.getElementsByClassName("row-active");i.length;)i[0].classList.remove("row-active");for(i=document.getElementsByClassName("builder-active");i.length;)i[0].classList.remove("builder-active");let n=t.querySelector(".is-column-tool");e.removeClass(n,"active"),t.querySelector(".is-element-tool").style.display="",this.builder.activeCol=null}clearAfterUndoRedo(){const t=this.dom,e=this.builder.builderStuff;let i=e.querySelectorAll(".is-tool");Array.prototype.forEach.call(i,(t=>{t.style.display=""})),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none",this.builder.activeSpacer=null,this.builder.activeCodeBlock=null,this.builder.activeLink=null,this.builder.activeIframe=null,this.builder.activeTd=null,this.builder.activeTable=null,this.builder.activeModule=null;const n=document.querySelectorAll(".icon-active");Array.prototype.forEach.call(n,(e=>{t.removeClass(e,"icon-active")})),this.builder.activeIcon=null;let o=e.querySelector(".is-rte-tool").querySelectorAll("button");Array.prototype.forEach.call(o,(e=>{t.removeClass(e,"on")})),o=e.querySelector(".is-elementrte-tool").querySelectorAll("button"),Array.prototype.forEach.call(o,(e=>{t.removeClass(e,"on")}));let s=e.querySelectorAll(".is-pop");Array.prototype.forEach.call(s,(t=>{t.style.display=""}))}hideControls(){let t=this.builder.builderStuff.querySelectorAll(".is-tool");Array.prototype.forEach.call(t,(t=>{t.style.display=""})),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}clearActiveElement(t){const e=this.dom,i=this.builder.builderStuff,n=document.querySelectorAll(".icon-active");Array.prototype.forEach.call(n,(t=>{e.removeClass(t,"icon-active")}));let o=document.querySelectorAll(".elm-inspected");if(Array.prototype.forEach.call(o,(t=>{e.removeClass(t,"elm-inspected")})),o=document.querySelectorAll(".elm-active"),Array.prototype.forEach.call(o,(t=>{e.removeClass(t,"elm-active")})),i.querySelector(".is-element-tool").style.display="",i.querySelector("#divLinkTool").style.display="",t){this.builder.activeIcon=null,this.builder.inspectedElement=null,this.builder.activeElement=null;let t=i.querySelector(".is-rte-tool");t&&(t.style.display="none");let e=i.querySelector(".is-elementrte-tool");e&&(e.style.display="flex");let n=i.querySelector(".rte-more-options");n&&(n.style.display="");let o=i.querySelector(".elementrte-more-options");o&&(o.style.display="");let s=e.querySelectorAll("button[data-align]");Array.prototype.forEach.call(s,(t=>{t.style.display="none"})),this.builder.rte.positionToolbar()}}clearControls(){const t=this.dom,e=this.builder.builderStuff;if(!e)return;if(e.getAttribute("preventDevault"))return void setTimeout((()=>{e.removeAttribute("preventDevault")}),30);let i=e.querySelectorAll(".is-tool");Array.prototype.forEach.call(i,(t=>{t.style.display=""})),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none",this.builder.activeSpacer=null,this.builder.activeCodeBlock=null,this.builder.activeLink=null,this.builder.activeIframe=null,this.builder.activeTd=null,this.builder.activeTable=null,this.builder.activeModule=null,this.builder.activeImage=null;const n=document.querySelectorAll(".icon-active");Array.prototype.forEach.call(n,(e=>{t.removeClass(e,"icon-active")})),this.builder.activeIcon=null;let o=document.querySelectorAll(".ovl");Array.prototype.forEach.call(o,(t=>{t.style.display="block"}));var s=e.querySelectorAll(".is-side.elementstyles");Array.prototype.forEach.call(s,(e=>{t.removeClass(e,"active")}));let r=document.querySelectorAll("[data-saveforundo]");Array.prototype.forEach.call(r,(t=>{t.removeAttribute("data-saveforundo")})),r=document.querySelectorAll(".elm-inspected"),Array.prototype.forEach.call(r,(e=>{t.removeClass(e,"elm-inspected")}));let l=e.querySelector(".is-rte-tool");l&&(l.style.display="none");let a=e.querySelector(".is-elementrte-tool");a&&(a.style.display="none");let d=e.querySelector(".rte-more-options");d&&(d.style.display="");let c=e.querySelector(".elementrte-more-options");c&&(c.style.display=""),r=document.querySelectorAll(".elm-active"),Array.prototype.forEach.call(r,(e=>{t.removeClass(e,"elm-active")}));let u=e.querySelectorAll(".is-rte-pop");Array.prototype.forEach.call(u,(e=>{e.style.display="",t.removeClass(e,"active"),t.removeClass(e,"deactive")})),this.builder.colTool.lockIndicator.style.display=""}makeId(){let t="",e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";for(let i=0;i<2;i++)t+=e.charAt(Math.floor(Math.random()*e.length));let i="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let t=0;t<5;t++)i+=n.charAt(Math.floor(Math.random()*n.length));return t+i}saveSelection(){if(window.getSelection){let t=window.getSelection();if(t.getRangeAt&&t.rangeCount){let e=[];for(let i=0,n=t.rangeCount;i<n;++i)e.push(t.getRangeAt(i));return this.builder.selection=e,e}}else if(document.selection&&document.selection.createRange)return this.builder.selection=document.selection.createRange(),document.selection.createRange();return this.builder.selection=null,null}restoreSelection(){let t=this.builder.selection;if(t)if(window.getSelection){let o=window.getSelection();if(document.body.createTextRange){var e=document.body.createTextRange();e.collapse(),e.select()}else window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty();for(var i=0,n=t.length;i<n;++i)o.addRange(t[i])}else document.selection&&t.select&&t.select()}cleanHTML(t,e){let i,n=t.replace(/(\n|\r| class=(")?Mso[a-zA-Z]+(")?)/g," "),o=new RegExp("\x3c!--(.*?)--\x3e","g");n=n.replace(o,""),i=e?new RegExp("<(/)*(meta|link|span|\\?xml:|st1:|o:|font)(.*?)>","gi"):new RegExp("<(/)*(meta|link|\\?xml:|st1:|o:|font)(.*?)>","gi"),n=n.replace(i,"");let s,r=["style","script","applet","embed","noframes","noscript"];for(let t=0;t<r.length;t++)i=new RegExp("<"+r[t]+".*?"+r[t]+"(.*?)>","gi"),n=n.replace(i,"");s=e?["style","start"]:["start"];for(let t=0;t<s.length;t++){let e=new RegExp(" "+s[t]+'="(.*?)"',"gi");n=n.replace(e,"")}return n=n.replace(/<(!|script[^>]*>.*?<\/script(?=[>\s])|\/?(\?xml(:\w+)?|img|meta|link|style|\w:\w+)(?=[\s/>]))[^>]*>/gi,""),n=n.replace(/<(\/?)s>/gi,"<$1strike>"),n=n.replace(/&nbsp;/gi," "),n=n.replace(/background-color: rgba\(200, 200, 201, 0.11\);/gi,""),n=n.replace(/background-color: rgba\(200, 200, 201, 0.11\)/gi,""),n}checkEmpty(){const t=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(t,(t=>{this.checkEmptyOn(t)}))}checkEmptyOn(t){const e=this.dom,i=e.elementChildren(t);let n=!0;if(i.forEach((t=>{e.hasClass(t,"row-add-initial")||e.hasClass(t,"dummy-space")||(n=!1)})),n){let i=t.querySelector(".row-add-initial");i||(t.innerHTML=`<button type="button" class="row-add-initial">${this.out("Empty")}<br><span>${this.out("+ Click to add content")}</span></div>`,i=t.querySelector(".row-add-initial")),i.addEventListener("click",(()=>{this.clearActiveCell();const n=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(n,(t=>{e.removeClass(t,"builder-active")})),e.addClass(t,"builder-active"),e.addClass(i,"row-active");let o=this.builder.builderStuff.querySelector(".quickadd");o.querySelector(".is-pop-tabs").style.display="none";const s=window.innerHeight;let r=i.getBoundingClientRect().top;const l=i.getBoundingClientRect().left+i.offsetWidth*this.builder.opts.zoom/2-11;o.style.display="flex";const a=o.offsetWidth,d=o.offsetHeight;s-r>d?(r=r+i.offsetHeight*this.builder.opts.zoom-19,o.style.top=r+window.pageYOffset+27+"px",o.style.left=l-a/2+7+"px",e.removeClass(o,"arrow-bottom"),e.removeClass(o,"arrow-right"),e.removeClass(o,"arrow-left"),e.removeClass(o,"center"),e.addClass(o,"arrow-top"),e.addClass(o,"center")):(o.style.top=r+window.pageYOffset-d-8+"px",o.style.left=l-a/2+7+"px",e.removeClass(o,"arrow-top"),e.removeClass(o,"arrow-right"),e.removeClass(o,"arrow-left"),e.removeClass(o,"center"),e.addClass(o,"arrow-bottom"),e.addClass(o,"center")),o.setAttribute("data-mode","row")}))}else{let e=t.querySelector(".row-add-initial");e&&e.parentNode.removeChild(e)}}clearPreferences(){localStorage.removeItem("_theme"),localStorage.removeItem("_zoom"),localStorage.removeItem("_buildermode"),localStorage.removeItem("_editingtoolbar"),localStorage.removeItem("_editingtoolbardisplay"),localStorage.removeItem("_hidecelltool"),localStorage.removeItem("_rowtool"),localStorage.removeItem("_hideelementtool"),localStorage.removeItem("_hidesnippetaddtool"),localStorage.removeItem("_outlinemode"),localStorage.removeItem("_hiderowcoloutline"),localStorage.removeItem("_outlinestyle"),localStorage.removeItem("_hideelementhighlight"),localStorage.removeItem("_opensnippets"),localStorage.removeItem("_toolstyle"),localStorage.removeItem("_snippetssidebardisplay"),localStorage.removeItem("_pasteresult"),localStorage.removeItem("_scrollableeditor"),localStorage.removeItem("_animatedsorting"),localStorage.removeItem("_addbuttonplace"),localStorage.removeItem("_hiderowtool"),localStorage.removeItem("_dragwithouthandle"),localStorage.removeItem("_advancedhtmleditor"),localStorage.removeItem("_hidecolhtmleditor"),localStorage.removeItem("_hiderowhtmleditor")}pasteHtmlAtCaret(t,e){var i,n;if(this.restoreSelection(),window.getSelection){if(!this.builder.activeCol)return;if((i=window.getSelection()).getRangeAt&&i.rangeCount){(n=i.getRangeAt(0)).deleteContents();var o=document.createElement("div");o.innerHTML=t;for(var s,r,l=document.createDocumentFragment();s=o.firstChild;)r=l.appendChild(s);var a=l.firstChild;n.insertNode(l),r&&((n=n.cloneRange()).setStartAfter(r),e?n.setStartBefore(a):n.collapse(!0),i.removeAllRanges(),this.builder.isTouchSupport||i.addRange(n))}}else if((i=document.selection)&&"Control"!==i.type){if(!this.builder.activeCol)return;var d=i.createRange();d.collapse(!0),i.createRange().pasteHTML(t),e&&((n=i.createRange()).setEndPoint("StartToStart",d),this.builder.isTouchSupport||n.select())}}refreshModule(){let t=this.builder.activeModule;if(!t)return;let e=1,i=t.querySelectorAll("[data-subblock]");Array.prototype.forEach.call(i,(i=>{let n=i.innerHTML;t.setAttribute("data-html-"+e,encodeURIComponent(n)),e++}));let n=decodeURIComponent(t.getAttribute("data-html"));n=n.replace(/{id}/g,this.makeId()),t.innerHTML="";var o=document.createRange();o.setStart(t,0),t.appendChild(o.createContextualFragment(n)),i=t.querySelectorAll("[data-subblock]");var s=1;Array.prototype.forEach.call(i,(e=>{t.getAttribute("data-html-"+s)&&(e.innerHTML=decodeURIComponent(t.getAttribute("data-html-"+s))),s++})),this.repositionColumnTool(!0),this.builder.onRefreshTool&&this.builder.onRefreshTool()}repositionColumnTool(t){let e=this.builder.colTool.columnTool,i=this.builder.activeCol;t?(e.style.transition="all ease 100ms",setTimeout((()=>{e.style.top=i.getBoundingClientRect().top-29+window.pageYOffset+"px",e.style.left=i.getBoundingClientRect().left-1+"px",setTimeout((()=>{e.style.transition=""}),100)}),10)):(e.style.top=i.getBoundingClientRect().top-29+window.pageYOffset+"px",e.style.left=i.getBoundingClientRect().left-1+"px")}isTouchSupport(){return!!window.matchMedia("(pointer: coarse)").matches}detectIE(){return!!document.documentMode}LightenDarkenColor(t,e){var i=!1;"#"===t[0]&&(t=t.slice(1),i=!0);var n=parseInt(t,16),o=(n>>16)+e;o>255?o=255:o<0&&(o=0);var s=(n>>8&255)+e;s>255?s=255:s<0&&(s=0);var r=(255&n)+e;return r>255?r=255:r<0&&(r=0),(i?"#":"")+String("000000"+(r|s<<8|o<<16).toString(16)).slice(-6)}getUIStyles(){this.dom.appendHtml(this.builder.builderStuff,'<button class="style-helper"><svg><use xlink:href="#ion-code-working"></use></svg></button>\n <input type="text" class="style-helper-input" style="display:none;">\n <label class="style-helper-label" style="display:none;"></label>\n <input class="style-helper-checkbox" type="checkbox" style="display:none;">\n <button class="style-helper-button-classic classic" style="display:none;"><svg><use xlink:href="#ion-code-working"></use></svg></button>\n <select class="style-helper-select" style="display:none;"><option value=""></option></select>\n ');const t=this.builder.builderStuff.querySelector(".style-helper"),e=this.builder.builderStuff.querySelector(".style-helper-input"),i=this.builder.builderStuff.querySelector(".style-helper-label"),n=this.builder.builderStuff.querySelector(".style-helper-select"),o=this.builder.builderStuff.querySelector(".style-helper-button-classic");this.builder.styleModalColor=this.getUIStyleValue(t,"modal-color","background-color"),this.builder.styleModalBackground=this.getUIStyleValue(t,"modal-background","background-color"),this.builder.styleButtonPickColorBorder=this.getUIStyleValue(t,"button-pickcolor-border","border"),this.builder.styleButtonPickColorBackground=this.getUIStyleValue(t,"button-pickcolor-background","background-color"),this.builder.styleToolBackground=window.getComputedStyle(t,null).getPropertyValue("background-color"),this.builder.styleButtonColor=window.getComputedStyle(t,null).getPropertyValue("color"),this.builder.styleButtonSvgFill=window.getComputedStyle(t.querySelector("svg"),null).getPropertyValue("fill"),this.builder.styleButtonBackgroundHover=this.getUIStyleValue(t,"hover","background-color"),this.builder.styleSnippetColor=this.getUIStyleValue(t,"snippet-color","background-color"),this.builder.styleSnippetBackground=this.getUIStyleValue(t,"snippet-background","background-color"),this.builder.styleSnippetTabsBackground=this.getUIStyleValue(t,"snippet-tabs-background","background-color"),this.builder.styleSnippetTabItemBackground=this.getUIStyleValue(t,"snippet-tab-item-background","background-color"),this.builder.styleSnippetTabItemBackgroundActive=this.getUIStyleValue(t,"snippet-tab-item-background-active","background-color"),this.builder.styleSnippetTabItemBackgroundHover=this.getUIStyleValue(t,"snippet-tab-item-background-hover","background-color"),this.builder.styleSnippetTabItemColor=this.getUIStyleValue(t,"snippet-tab-item-color","background-color"),this.builder.styleSnippetMoreItemBackground=this.getUIStyleValue(t,"snippet-more-item-background","background-color"),this.builder.styleSnippetMoreItemBackgroundActive=this.getUIStyleValue(t,"snippet-more-item-background-active","background-color"),this.builder.styleSnippetMoreItemBackgroundHover=this.getUIStyleValue(t,"snippet-more-item-background-hover","background-color"),this.builder.styleSnippetMoreItemColor=this.getUIStyleValue(t,"snippet-more-item-color","background-color"),this.builder.styleTabsBackground=this.getUIStyleValue(t,"tabs-background","background-color"),this.builder.styleTabItemBorderBottomActive=this.getUIStyleValue(t,"tab-item-active-border-bottom","border"),this.builder.styleTabItemColor=this.getUIStyleValue(t,"tab-item-color","background-color"),this.builder.styleTabsMoreBackground=this.getUIStyleValue(t,"tabs-more-background","background-color"),this.builder.styleTabsMoreBorder=this.getUIStyleValue(t,"tabs-more-border","border"),this.builder.styleTabsMoreItemColor=this.getUIStyleValue(t,"tabs-more-item-color","background-color"),this.builder.styleTabsMoreBackgroundHover=this.getUIStyleValue(t,"tabs-more-item-background-hover","background-color"),this.builder.styleSeparatorColor=this.getUIStyleValue(t,"separator-color","background-color"),this.builder.styleSelectBackground=window.getComputedStyle(n,null).getPropertyValue("background-color"),this.builder.styleSelectColor=window.getComputedStyle(n,null).getPropertyValue("color"),this.builder.styleSelectOptionBackground=window.getComputedStyle(n.querySelector("option"),null).getPropertyValue("background-color"),this.builder.styleInputBackground=window.getComputedStyle(e,null).getPropertyValue("background-color"),this.builder.styleInputBorderBottom=window.getComputedStyle(e,null).getPropertyValue("border-bottom"),this.builder.styleInputColor=window.getComputedStyle(e,null).getPropertyValue("color"),this.builder.styleLabelColor=window.getComputedStyle(i,null).getPropertyValue("color"),this.builder.styleButtonClassicBackground=window.getComputedStyle(o,null).getPropertyValue("background-color"),this.builder.styleButtonClassicColor=window.getComputedStyle(o,null).getPropertyValue("color"),this.builder.styleButtonClassicBackgroundHover=this.getUIStyleValue(o,"hover","background-color"),this.builder.styleDark=!1,this.builder.styleColored=!1,this.builder.styleColoredDark=!1,this.builder.styleLight=!1,document.body.getAttribute("class")&&(-1!==document.body.getAttribute("class").indexOf("colored-dark")?this.builder.styleColoredDark=!0:-1!==document.body.getAttribute("class").indexOf("dark")?this.builder.styleDark=!0:-1!==document.body.getAttribute("class").indexOf("colored")?this.builder.styleColored=!0:-1!==document.body.getAttribute("class").indexOf("light")&&(this.builder.styleLight=!0))}getUIStyleValue(t,e,i){const n=this.dom;n.addClass(t,e);let o=window.getComputedStyle(t,null).getPropertyValue(i);return n.removeClass(t,e),o}getFontFamilyStyle(t){return`\n html, body {height:100%}\n body {overflow:hidden;margin:0;\n font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\n font-size:100%; \n line-height:1.7;\n }\n #divFontList {margin:0;padding:0 0 9px 9px;height:100%;overflow-y:scroll !important;box-sizing:border-box;}\n #divFontList > div {width:100%;cursor:pointer;overflow:hidden;text-align:center;position:relative;}\n #divFontList > div img {margin:7px 5px 0px 5px;max-width: 230px;max-height: 27px;}\n #divFontList > div div {position:absolute;top:0;left:0;width:100%;height:100%;}\n\n #divFontList > div > div {\n position:absolute;left:0px;top:0px;width:100%;height:100%;\n // z-index: 1;\n }\n\n #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n #divFontList > div > div:after {\n // background: rgba(0, 0, 0, 0.04); \n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n position: absolute;\n content: "";\n display: block;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n opacity: 0;\n }\n #divFontList > div:hover > div:after {\n opacity: 1;\n }\n #divFontList > div.on > div:after {\n opacity: 1;\n }\n\n ${this.builder.styleDark||this.builder.styleColoredDark||this.builder.styleColore?"":"\n #divFontList > div img {\n mix-blend-mode: multiply;\n }\n "}\n\n .dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n filter: invert(1);\n }\n .dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n \n .colored-dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored-dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored-dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n .colored #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n /* Scrollbar for toolbar/RTE and modal */\n\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgba(255, 255, 255, 0.3) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgba(255, 255, 255, 0.3);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .colored * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .colored *::-webkit-scrollbar {\n width: 12px;\n }\n .colored *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n }`}refreshFontFamilyStyle1(){let t=this.builder.rte.rteFontFamilyOptions.querySelector("iframe").contentWindow.document;t.querySelector("#mainstyle").innerHTML=this.getFontFamilyStyle(),this.builder.styleDark?t.body.setAttribute("class","dark"):this.builder.styleColored?t.body.className="colored":this.builder.styleColoredDark?t.body.className="colored-dark":this.builder.styleLight?t.body.className="light":t.body.className=""}refreshFontFamilyStyle2(){let t=this.builder.builderStuff.querySelector(".is-modal.pickfontfamily").querySelector("iframe").contentWindow.document;t.querySelector("#mainstyle").innerHTML=this.getFontFamilyStyle(!0),this.builder.styleDark?t.body.setAttribute("class","dark"):this.builder.styleColored?t.body.className="colored":this.builder.styleColoredDark?t.body.className="colored-dark":this.builder.styleLight?t.body.className="light":t.body.className=""}getFontPreview(){let t=this.builder.fontAssetPath,e="";return e=`\n <div data-provider="" data-font-family="" style="font-size:12px;padding:10px 7px;box-sizing:border-box;"><div></div>\n <span style="z-index:1;position: relative;">${this.out("None")}</span>\n </div>\n <div data-provider="" data-font-family="Arial, sans-serif"><div></div><img src="${t}arial.png"></div>\n <div data-provider="" data-font-family="courier"><div></div><img src="${t}courier.png"></div>\n <div data-provider="" data-font-family="Georgia, serif"><div></div><img src="${t}georgia.png"></div>\n <div data-provider="" data-font-family="monospace"><div></div><img src="${t}monospace.png"></div>\n <div data-provider="" data-font-family="sans-serif"><div></div><img src="${t}sans_serif.png"></div>\n <div data-provider="" data-font-family="serif"><div></div><img src="${t}serif.png"></div>\n <div data-provider="google" data-font-family="Abel, sans-serif"><div></div><img src="${t}abel.png"></div>\n <div data-provider="google" data-font-family="Abril Fatface"><div></div><img src="${t}abril_fatface.png"></div>\n <div data-provider="google" data-font-family="Advent Pro, sans-serif" data-font-style="300"><div></div><img src="${t}advent_pro.png"></div>\n <div data-provider="google" data-font-family="Aladin, cursive"><div></div><img src="${t}aladin.png"></div>\n <div data-provider="google" data-font-family="Alegreya, serif" data-font-style="400,400i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}alegreya.png"></div>\n <div data-provider="google" data-font-family="Alegreya Sans SC, sans-serif" data-font-style="300,700"><div></div><img src="${t}alegreya_sans_sc.png"></div>\n <div data-provider="google" data-font-family="Alegreya SC, serif" data-font-style="400,400i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}alegreya_sc.png"></div>\n <div data-provider="google" data-font-family="Alice, serif"><div></div><img src="${t}alice.png"></div>\n <div data-provider="google" data-font-family="Allerta Stencil, sans-serif"><div></div><img src="${t}allerta_stencil.png"></div>\n <div data-provider="google" data-font-family="Allura, cursive"><div></div><img src="${t}allura.png"></div>\n <div data-provider="google" data-font-family="Almendra Display, cursive"><div></div><img src="${t}almendra_display.png"></div>\n <div data-provider="google" data-font-family="Amatic SC, cursive" data-font-style="400,700"><div></div><img src="${t}amatic_sc.png"></div>\n <div data-provider="google" data-font-family="Andika, sans-serif"><div></div><img src="${t}andika.png"></div>\n <div data-provider="google" data-font-family="Anonymous Pro, monospace" data-font-style="400,400i,700,700i"><div></div><img src="${t}anonymous_pro.png"></div>\n <div data-provider="google" data-font-family="Architects Daughter, cursive"><div></div><img style="transform:scale(1.1);" src="${t}architects_daughter.png"></div>\n <div data-provider="google" data-font-family="Arimo, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}arimo.png"></div>\n <div data-provider="google" data-font-family="Arsenal, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}arsenal.png"></div>\n <div data-provider="google" data-font-family="Assistant" data-font-style="300,700"><div></div><img src="${t}assistant.png"></div>\n <div data-provider="google" data-font-family="Aubrey, cursive"><div></div><img src="${t}aubrey.png"></div>\n <div data-provider="google" data-font-family="Anton, sans-serif"><div></div><img src="${t}anton.png"></div>\n <div data-provider="google" data-font-family="Archivo Narrow, sans-serif"><div></div><img src="${t}archivo_narrow.png"></div>\n <div data-provider="google" data-font-family="Bad Script, cursive"><div></div><img src="${t}bad_script.png"></div>\n <div data-provider="google" data-font-family="BenchNine, sans-serif"><div></div><img src="${t}benchNine.png"></div>\n <div data-provider="google" data-font-family="Bevan, cursive"><div></div><img src="${t}bevan.png"></div>\n <div data-provider="google" data-font-family="Bigelow Rules, cursive"><div></div><img src="${t}bigelow_rules.png"></div>\n <div data-provider="google" data-font-family="Bilbo, cursive"><div></div><img src="${t}bilbo.png"></div>\n <div data-provider="google" data-font-family="Bonbon, cursive"><div></div><img src="${t}bonbon.png"></div>\n <div data-provider="google" data-font-family="Bowlby One SC, cursive"><div></div><img src="${t}bowlby_one_sc.png"></div>\n <div data-provider="google" data-font-family="Cabin Condensed, sans-serif"><div></div><img src="${t}cabin_condensed.png"></div>\n <div data-provider="google" data-font-family="Carrois Gothic SC, sans-serif"><div></div><img src="${t}carrois_gothic_sc.png"></div>\n <div data-provider="google" data-font-family="Caveat, cursive" data-font-style="400,700"><div></div><img src="${t}caveat.png"></div>\n <div data-provider="google" data-font-family="Chewy, cursive"><div></div><img src="${t}chewy.png"></div>\n <div data-provider="google" data-font-family="Cinzel, serif"><div></div><img src="${t}cinzel.png"></div>\n <div data-provider="google" data-font-family="Comfortaa, cursive" data-font-style="300"><div></div><img src="${t}comfortaa.png"></div>\n <div data-provider="google" data-font-family="Concert One, cursive"><div></div><img src="${t}concert_one.png"></div>\n <div data-provider="google" data-font-family="Cormorant, serif" data-font-style="300,300i,600,600i,700,700i"><div></div><img src="${t}cormorant.png"></div>\n <div data-provider="google" data-font-family="Cormorant Garamond, serif" data-font-style="300,300i,600,600i,700,700i"><div></div><img src="${t}cormorant_garamond.png"></div>\n <div data-provider="google" data-font-family="Cormorant Infant, serif" data-font-style="300,300i,600,600i,700,700i"><div></div><img src="${t}cormorant_infant.png"></div>\n <div data-provider="google" data-font-family="Cormorant SC, serif" data-font-style="300,600,700"><div></div><img src="${t}cormorant_sc.png"></div>\n <div data-provider="google" data-font-family="Cormorant Unicase, serif" data-font-style="300,600,700"><div></div><img src="${t}cormorant_unicase.png"></div>\n <div data-provider="google" data-font-family="Cousine" data-font-style="400,700"><div></div><img src="${t}cousine.png"></div>\n <div data-provider="google" data-font-family="Crafty Girls, cursive"><div></div><img src="${t}crafty_girls.png"></div>\n <div data-provider="google" data-font-family="Cuprum, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}cuprum.png"></div>\n <div data-provider="google" data-font-family="Cutive Mono, monospace"><div></div><img src="${t}cutive_mono.png"></div>\n <div data-provider="google" data-font-family="Devonshire, cursive"><div></div><img src="${t}devonshire.png"></div>\n <div data-provider="google" data-font-family="Didact Gothic, sans-serif"><div></div><img src="${t}didact_gothic.png"></div>\n <div data-provider="google" data-font-family="Diplomata SC, cursive"><div></div><img src="${t}diplomata_sc.png"></div>\n <div data-provider="google" data-font-family="Dosis, sans-serif" data-font-style="200"><div></div><img src="${t}dosis.png"></div>\n <div data-provider="google" data-font-family="EB Garamond, serif" data-font-style="400,400i,600,600i,700,700i,800,800i"><div></div><img src="${t}eb_garamond.png"></div>\n <div data-provider="google" data-font-family="El Messiri, sans-serif" data-font-style="400,600,700"><div></div><img src="${t}el_messiri.png"></div>\n <div data-provider="google" data-font-family="Elsie, cursive" data-font-style="400,900"><div></div><img src="${t}elsie.png"></div>\n <div data-provider="google" data-font-family="Encode Sans, sans-serif" data-font-style="300,700"><div></div><img src="${t}encode_sans.png"></div>\n <div data-provider="google" data-font-family="Exo, sans-serif" data-font-style="100"><div></div><img src="${t}exo.png"></div>\n <div data-provider="google" data-font-family="'Exo 2', sans-serif" data-font-style="200,200i,600,600i,700,700i,800,800i,900,900i" data-font-display="swap"><div></div><img src="${t}exo_2.png"></div>\n <div data-provider="google" data-font-family="Felipa, cursive"><div></div><img src="${t}felipa.png"></div>\n <div data-provider="google" data-font-family="Fira Code, monospace" data-font-style="300,500,600,700"><div></div><img src="${t}fira_code.png"></div>\n <div data-provider="google" data-font-family="Fira Mono, monospace" data-font-style="400,500,700"><div></div><img src="${t}fira_mono.png"></div>\n <div data-provider="google" data-font-family="Fira Sans, sans-serif" data-font-style="200,200i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}fira_sans.png"></div>\n <div data-provider="google" data-font-family="Fira Sans Condensed, sans-serif" data-font-style="200,200i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}fira_sans_condensed.png"></div>\n <div data-provider="google" data-font-family="Fira Sans Extra Condensed, sans-serif" data-font-style="200,200i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}fira_sans_extra_condensed.png"></div>\n <div data-provider="google" data-font-family="Fjalla One, sans-serif"><div></div><img src="${t}fjalla_one.png"></div>\n <div data-provider="google" data-font-family="Forum, cursive"><div></div><img src="${t}forum.png"></div>\n <div data-provider="google" data-font-family="Frank Ruhl Libre" data-font-style="300,700"><div></div><img src="${t}frank_ruhl_libre.png"></div>\n <div data-provider="google" data-font-family="Fredericka the Great, cursive"><div></div><img src="${t}fredericka_the_great.png"></div>\n <div data-provider="google" data-font-family="Gabriela, serif"><div></div><img src="${t}gabriela.png"></div>\n <div data-provider="google" data-font-family="Gilda Display, serif"><div></div><img src="${t}gilda_display.png"></div>\n <div data-provider="google" data-font-family="Give You Glory, cursive"><div></div><img style="transform:scale(1.3);" src="${t}give_you_glory.png"></div>\n <div data-provider="google" data-font-family="Gruppo, cursive"><div></div><img src="${t}gruppo.png"></div>\n <div data-provider="google" data-font-family="Handlee, cursive"><div></div><img src="${t}handlee.png"></div>\n <div data-provider="google" data-font-family="Happy Monkey, cursive"><div></div><img src="${t}happy_monkey.png"></div>\n <div data-provider="google" data-font-family="Hind" data-font-style="300,700"><div></div><img src="${t}hind.png"></div>\n <div data-provider="google" data-font-family="IBM Plex Mono, monospace" data-font-style="300,300i,500,500i,600,600i,700,700i"><div></div><img src="${t}ibm_plex_mono.png"></div>\n <div data-provider="google" data-font-family="IBM Plex Sans, sans-serif" data-font-style="300,300i,500,500i,600,600i,700,700i"><div></div><img src="${t}ibm_plex_sans.png"></div>\n <div data-provider="google" data-font-family="IBM Plex Serif, serif" data-font-style="300,300i,500,500i,600,600i,700,700i"><div></div><img src="${t}ibm_plex_serif.png"></div>\n <div data-provider="google" data-font-family="Iceland, cursive"><div></div><img src="${t}iceland.png"></div>\n <div data-provider="google" data-font-family="Inconsolata, monospace" data-font-style="400,700"><div></div><img src="${t}inconsolata.png"></div>\n <div data-provider="google" data-font-family="Josefin Sans, sans-serif" data-font-style="300,700"><div></div><img src="${t}josefin_sans.png"></div>\n <div data-provider="google" data-font-family="Istok Web, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}istok_web.png"></div>\n <div data-provider="google" data-font-family="Julee, cursive"><div></div><img src="${t}julee.png"></div>\n <div data-provider="google" data-font-family="Julius Sans One, sans-serif"><div></div><img src="${t}julius_sans_one.png"></div>\n <div data-provider="google" data-font-family="Junge, serif"><div></div><img src="${t}junge.png"></div>\n <div data-provider="google" data-font-family="Jura, sans-serif" data-font-style="300,600,700"><div></div><img src="${t}jura.png"></div>\n <div data-provider="google" data-font-family="Just Me Again Down Here, cursive"><div></div><img style="transform:scale(1.1);" src="${t}just_me_again_down_here.png"></div>\n <div data-provider="google" data-font-family="Kaushan Script, cursive"><div></div><img src="${t}kaushan_script.png"></div>\n <div data-provider="google" data-font-family="Kelly Slab, cursive"><div></div><img src="${t}kelly_slab.png"></div>\n <div data-provider="google" data-font-family="Kite One, sans-serif"><div></div><img src="${t}kite_one.png"></div>\n <div data-provider="google" data-font-family="Kosugi, sans-serif"><div></div><img src="${t}kosugi.png"></div>\n <div data-provider="google" data-font-family="Kosugi Maru, sans-serif"><div></div><img src="${t}kosugi_maru.png"></div>\n <div data-provider="google" data-font-family="Kurale, serif"><div></div><img src="${t}kurale.png"></div>\n <div data-provider="google" data-font-family="Lato, sans-serif" data-font-style="300,700"><div></div><img src="${t}lato.png"></div>\n <div data-provider="google" data-font-family="Ledger, serif" data-font-style="300,700" data-font-display="swap"><div></div><img src="${t}ledger.png"></div>\n <div data-provider="google" data-font-family="Lekton, sans-serif" data-font-style="400,700"><div></div><img src="${t}lekton.png"></div>\n <div data-provider="google" data-font-family="Life Savers, cursive"><div></div><img src="${t}life_savers.png"></div>\n <div data-provider="google" data-font-family="Literata, serif" data-font-style="400,400i,600,600i,700,700i"><div></div><img src="${t}literata.png"></div>\n <div data-provider="google" data-font-family="Lobster, cursive"><div></div><img src="${t}lobster.png"></div>\n <div data-provider="google" data-font-family="Lobster Two, cursive"><div></div><img src="${t}lobster_two.png"></div>\n <div data-provider="google" data-font-family="Londrina Shadow, cursive"><div></div><img src="${t}londrina_shadow.png"></div>\n <div data-provider="google" data-font-family="Lora, serif" data-font-style="400,700"><div></div><img src="${t}lora.png"></div>\n <div data-provider="google" data-font-family="Lovers Quarrel, cursive"><div></div><img style="transform:scale(1.1);" src="${t}lovers_quarrel.png"></div>\n <div data-provider="google" data-font-family="'M PLUS 1p', sans-serif" data-font-style="300,500,700,800,900" data-font-display="swap"><div></div><img src="${t}m_plus_1p.png"></div>\n <div data-provider="google" data-font-family="'M PLUS Rounded 1c', sans-serif" data-font-style="300,500,700,800,900" data-font-display="swap"><div></div><img src="${t}m_plus_rounded_1c.png"></div>\n <div data-provider="google" data-font-family="Macondo, cursive"><div></div><img src="${t}macondo.png"></div>\n <div data-provider="google" data-font-family="Marcellus SC, serif"><div></div><img src="${t}marcellus_sc.png"></div>\n <div data-provider="google" data-font-family="Marck Script, cursive"><div></div><img src="${t}marck_script.png"></div>\n <div data-provider="google" data-font-family="Martel, serif" data-font-style="300,700"><div></div><img src="${t}martel.png"></div>\n <div data-provider="google" data-font-family="Maven Pro, sans-serif"><div></div><img src="${t}maven_pro.png"></div>\n <div data-provider="google" data-font-family="Merriweather, serif" data-font-style="300,700"><div></div><img src="${t}merriweather.png"></div>\n <div data-provider="google" data-font-family="Merriweather Sans" data-font-style="300,700"><div></div><img src="${t}merriweather_sans.png"></div>\n <div data-provider="google" data-font-family="Mogra, cursive"><div></div><img src="${t}mogra.png"></div>\n <div data-provider="google" data-font-family="Monoton, cursive"><div></div><img src="${t}monoton.png"></div>\n <div data-provider="google" data-font-family="Montez, cursive"><div></div><img src="${t}montez.png"></div>\n <div data-provider="google" data-font-family="Montserrat, sans-serif" data-font-style="300,400,700"><div></div><img src="${t}montserrat.png"></div>\n <div data-provider="google" data-font-family="Montserrat Alternates, sans-serif" data-font-style="300,300i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}montserrat_alternates.png"></div>\n <div data-provider="google" data-font-family="Montserrat Subrayada, sans-serif"><div></div><img src="${t}montserrat_subrayada.png"></div>\n <div data-provider="google" data-font-family="Neucha, cursive"><div></div><img src="${t}neucha.png"></div>\n <div data-provider="google" data-font-family="Neuton, serif" data-font-style="200,700"><div></div><img src="${t}neuton.png"></div>\n <div data-provider="google" data-font-family="Nixie One, cursive"><div></div><img src="${t}nixie_one.png"></div>\n <div data-provider="google" data-font-family="Nothing You Could Do, cursive"><div></div><img style="transform:scale(1.1);" src="${t}nothing_you_could_do.png"></div>\n <div data-provider="google" data-font-family="Noto Sans, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}noto_sans.png"></div>\n <div data-provider="google" data-font-family="Noto Sans SC, sans-serif" data-font-style="300,500,700,900"><div></div><img src="${t}noto_sans_sc.png"></div>\n <div data-provider="google" data-font-family="Noto Serif, serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}noto_serif.png"></div>\n <div data-provider="google" data-font-family="Noto Serif TC, serif" data-font-style="300,600,700,900"><div></div><img src="${t}noto_serif_tc.png"></div>\n <div data-provider="google" data-font-family="Nunito, sans-serif" data-font-style="200,200i,600,600i,700,700i,800,800i,900,900i"><div></div><img src="${t}nunito.png"></div>\n <div data-provider="google" data-font-family="Old Standard TT, serif" data-font-style="400,400i,700"><div></div><img src="${t}old_standard_tt.png"></div>\n <div data-provider="google" data-font-family="Open Sans, sans-serif" data-font-style="300,400,600,800"><div></div><img src="${t}open_sans.png"></div>\n <div data-provider="google" data-font-family="Open Sans Condensed, sans-serif" data-font-style="300,300i,700"><div></div><img src="${t}open_sans_condensed.png"></div>\n <div data-provider="google" data-font-family="Oranienbaum, serif"><div></div><img src="${t}oranienbaum.png"></div>\n <div data-provider="google" data-font-family="Oswald, sans-serif" data-font-style="300,400,700"><div></div><img src="${t}oswald.png"></div>\n <div data-provider="google" data-font-family="Oxygen, sans-serif" data-font-style="300,700"><div></div><img src="${t}oxygen.png"></div>\n <div data-provider="google" data-font-family="Pacifico, cursive"><div></div><img src="${t}pacifico.png"></div>\n <div data-provider="google" data-font-family="Pangolin, cursive"><div></div><img src="${t}pangolin.png"></div>\n <div data-provider="google" data-font-family="Passion One, cursive"><div></div><img src="${t}passion_one.png"></div>\n <div data-provider="google" data-font-family="Pathway Gothic One, sans-serif"><div></div><img src="${t}pathway_gothic_one.png"></div>\n <div data-provider="google" data-font-family="Pattaya, sans-serif"><div></div><img src="${t}pattaya.png"></div>\n <div data-provider="google" data-font-family="Petit Formal Script, cursive"><div></div><img style="transform:scale(1.1);" src="${t}petit_formal_script.png"></div>\n <div data-provider="google" data-font-family="Philosopher, sans-serif"><div></div><img src="${t}philosopher.png"></div>\n <div data-provider="google" data-font-family="Play, sans-serif" data-font-style="400,700"><div></div><img src="${t}play.png"></div>\n <div data-provider="google" data-font-family="Playfair Display, serif" data-font-style="400,400i,700,700i,900,900i"><div></div><img src="${t}playfair_display.png"></div>\n <div data-provider="google" data-font-family="Playfair Display SC, serif" data-font-style="400,400i,700,700i,900,900i"><div></div><img src="${t}playfair_display_sc.png"></div>\n <div data-provider="google" data-font-family="Podkova, serif" data-font-style="400,600,700,800"><div></div><img src="${t}podkova.png"></div>\n <div data-provider="google" data-font-family="Poiret One, cursive"><div></div><img src="${t}poiret_one.png"></div>\n <div data-provider="google" data-font-family="Pompiere, cursive"><div></div><img style="transform:scale(1.1);" src="${t}pompiere.png"></div>\n `,e+=`<div data-provider="google" data-font-family="Poppins, sans-serif" data-font-style="400,600"><div></div><img src="${t}poppins.png"></div>\n <div data-provider="google" data-font-family="Prata, serif"><div></div><img src="${t}prata.png"></div>\n <div data-provider="google" data-font-family="'Press Start 2P', cursive" data-font-display="swap"><div></div><img src="${t}press_start_2p.png"></div>\n <div data-provider="google" data-font-family="Prosto One, cursive"><div></div><img src="${t}prosto_one.png"></div>\n <div data-provider="google" data-font-family="PT Mono, monospace"><div></div><img src="${t}pt_mono.png"></div>\n <div data-provider="google" data-font-family="PT Sans, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}pt_sans.png"></div>\n <div data-provider="google" data-font-family="PT Sans Caption, sans-serif" data-font-style="400,700"><div></div><img src="${t}pt_sans_caption.png"></div>\n <div data-provider="google" data-font-family="PT Sans Narrow, sans-serif" data-font-style="400,700"><div></div><img src="${t}pt_sans_narrow.png"></div>\n <div data-provider="google" data-font-family="PT Serif, serif" data-font-style="400,700"><div></div><img src="${t}pt_serif.png"></div>\n <div data-provider="google" data-font-family="PT Serif Caption, serif" data-font-style="400,700"><div></div><img src="${t}pt_serif_caption.png"></div>\n <div data-provider="google" data-font-family="Quattrocento Sans, sans-serif"><div></div><img src="${t}quattrocento_sans.png"></div>\n <div data-provider="google" data-font-family="Quattrocento, serif"><div></div><img src="${t}quattrocento.png"></div>\n <div data-provider="google" data-font-family="Quicksand, sans-serif"><div></div><img src="${t}quicksand.png"></div>\n <div data-provider="google" data-font-family="Qwigley, cursive"><div></div><img src="${t}qwigley.png"></div>\n <div data-provider="google" data-font-family="Raleway, sans-serif" data-font-style="100"><div></div><img src="${t}raleway.png"></div>\n <div data-provider="google" data-font-family="Raleway Dots, sans-serif"><div></div><img src="${t}raleway_dots.png"></div>\n <div data-provider="google" data-font-family="Redressed, cursive"><div></div><img src="${t}redressed.png"></div>\n <div data-provider="google" data-font-family="Ribeye Marrow, cursive"><div></div><img src="${t}ribeye_marrow.png"></div>\n <div data-provider="google" data-font-family="Righteous, cursive"><div></div><img src="${t}righteous.png"></div>\n <div data-provider="google" data-font-family="Roboto, sans-serif" data-font-style="300"><div></div><img src="${t}roboto.png"></div>\n <div data-provider="google" data-font-family="Roboto Condensed, sans-serif" data-font-style="300,300i,700,700i"><div></div><img src="${t}roboto_condensed.png"></div>\n <div data-provider="google" data-font-family="Roboto Mono, monospace" data-font-style="300,700"><div></div><img src="${t}roboto_mono.png"></div>\n <div data-provider="google" data-font-family="Roboto Slab, serif" data-font-style="200,600,700,800,900"><div></div><img src="${t}roboto_slab.png"></div>\n <div data-provider="google" data-font-family="Rochester, cursive"><div></div><img src="${t}rochester.png"></div>\n <div data-provider="google" data-font-family="Rouge Script, cursive"><div></div><img src="${t}rouge_script.png"></div>\n <div data-provider="google" data-font-family="Rubik, sans-serif" data-font-style="300,300i,500,500i,700,700i,900,900i"><div></div><img src="${t}rubik.png"></div>\n <div data-provider="google" data-font-family="Rubik Mono One, sans-serif"><div></div><img src="${t}rubik_mono_one.png"></div>\n <div data-provider="google" data-font-family="Ruslan Display, cursive"><div></div><img src="${t}ruslan_display.png"></div>\n <div data-provider="google" data-font-family="Russo One, sans-serif"><div></div><img src="${t}russo_one.png"></div>\n <div data-provider="google" data-font-family="Sacramento, cursive"><div></div><img src="${t}sacramento.png"></div>\n <div data-provider="google" data-font-family="Sanchez, serif"><div></div><img src="${t}sanchez.png"></div>\n <div data-provider="google" data-font-family="Satisfy, cursive"><div></div><img src="${t}satisfy.png"></div>\n <div data-provider="google" data-font-family="Sawarabi Gothic, sans-serif"><div></div><img src="${t}sawarabi_gothic.png"></div>\n <div data-provider="google" data-font-family="Scada, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}scada.png"></div>\n <div data-provider="google" data-font-family="Seaweed Script, cursive"><div></div><img src="${t}seaweed_script.png"></div>\n <div data-provider="google" data-font-family="Seymour One, sans-serif"><div></div><img src="${t}seymour_one.png"></div>\n <div data-provider="google" data-font-family="Shadows Into Light Two, cursive"><div></div><img src="${t}shadows_into_light_two.png"></div>\n <div data-provider="google" data-font-family="Six Caps, sans-serif"><div></div><img src="${t}six_caps.png"></div>\n <div data-provider="google" data-font-family="Snowburst One, cursive"><div></div><img src="${t}snowburst_one.png"></div>\n <div data-provider="google" data-font-family="Source Code Pro, monospace" data-font-style="300,700"><div></div><img src="${t}source_code_pro.png"></div>\n <div data-provider="google" data-font-family="Source Sans Pro, sans-serif" data-font-style="200"><div></div><img src="${t}source_sans_pro.png"></div>\n <div data-provider="google" data-font-family="Special Elite, cursive"><div></div><img src="${t}special_elite.png"></div>\n <div data-provider="google" data-font-family="Spectral, serif" data-font-style="200,200i,600,600i,700,700i,800,800i"><div></div><img src="${t}spectral.png"></div>\n <div data-provider="google" data-font-family="Spectral SC, serif" data-font-style="300,300i,600,600i,700,700i,800,800i"><div></div><img src="${t}spectral_sc.png"></div>\n <div data-provider="google" data-font-family="Squada One, cursive"><div></div><img src="${t}squada_one.png"></div>\n <div data-provider="google" data-font-family="Stalinist One, cursive"><div></div><img src="${t}stalinist_one.png"></div>\n <div data-provider="google" data-font-family="Stint Ultra Expanded, cursive"><div></div><img src="${t}stint_ultra_expanded.png"></div>\n <div data-provider="google" data-font-family="Syncopate, sans-serif"><div></div><img src="${t}syncopate.png"></div>\n <div data-provider="google" data-font-family="Tangerine, cursive"><div></div><img src="${t}tangerine.png"></div>\n <div data-provider="google" data-font-family="Tenor Sans, sans-serif"><div></div><img src="${t}tenor_sans.png"></div>\n <div data-provider="google" data-font-family="Tinos, serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}tinos.png"></div>\n <div data-provider="google" data-font-family="Ubuntu, sans-serif" data-font-style="300,300i,500,500i,700,700i"><div></div><img src="${t}ubuntu.png"></div>\n <div data-provider="google" data-font-family="Ubuntu Condensed, sans-serif"><div></div><img src="${t}ubuntu_condensed.png"></div>\n <div data-provider="google" data-font-family="Ubuntu Mono, monospace" data-font-style="400,700"><div></div><img src="${t}ubuntu_mono.png"></div>\n <div data-provider="google" data-font-family="Underdog, cursive"><div></div><img src="${t}underdog.png"></div>\n <div data-provider="google" data-font-family="UnifrakturMaguntia, cursive"><div></div><img src="${t}unifrakturmaguntia.png"></div>\n <div data-provider="google" data-font-family="Vast Shadow, cursive"><div></div><img src="${t}vast_shadow.png"></div>\n <div data-provider="google" data-font-family="Viga, sans-serif"><div></div><img src="${t}viga.png"></div>\n <div data-provider="google" data-font-family="Vollkorn, serif" data-font-style="400,400i,600,600i,700,700i,900,900i"><div></div><img src="${t}vollkorn.png"></div>\n <div data-provider="google" data-font-family="Vollkorn SC, serif" data-font-style="400,600,700,900"><div></div><img src="${t}vollkorn_sc.png"></div>\n <div data-provider="google" data-font-family="Voltaire, sans-serif"><div></div><img src="${t}voltaire.png"></div>\n <div data-provider="google" data-font-family="Wire One, sans-serif"><div></div><img src="${t}wire_one.png"></div>\n <div data-provider="google" data-font-family="Yanone Kaffeesatz, sans-serif" data-font-style="300,700"><div></div><img src="${t}yanone_kaffeesatz.png"></div>\n <div data-provider="google" data-font-family="Yeseva One, cursive"><div></div><img src="${t}yeseva_one.png"></div>\n `,e}getFontFamilyHTML(t){return`\n <!DOCTYPE HTML>\n <html>\n <head>\n <meta charset="utf-8">\n <title>Fonts</title>\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <meta name="description" content=""> \n <style id="mainstyle">\n html, body {height:100%}\n body {overflow:hidden;margin:0;\n font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\n font-size:100%; \n line-height:1.7;\n }\n #divFontList {margin:0;padding:0 0 9px 9px;height:100%;overflow-y:scroll !important;box-sizing:border-box;}\n #divFontList > div {width:100%;cursor:pointer;overflow:hidden;text-align:center;position:relative;}\n #divFontList > div img {margin:7px 5px 0px 5px;max-width: 230px;max-height: 27px;}\n #divFontList > div div {position:absolute;top:0;left:0;width:100%;height:100%;}\n\n #divFontList > div > div {\n position:absolute;left:0px;top:0px;width:100%;height:100%;\n // z-index: 1;\n }\n\n #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n #divFontList > div > div:after {\n // background: rgba(0, 0, 0, 0.04); \n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n position: absolute;\n content: "";\n display: block;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n opacity: 0;\n }\n #divFontList > div:hover > div:after {\n opacity: 1;\n }\n #divFontList > div.on > div:after {\n opacity: 1;\n }\n\n ${this.builder.styleDark||this.builder.styleColoredDark||this.builder.styleColore?"":"\n #divFontList > div img {\n mix-blend-mode: multiply;\n }\n "}\n\n .dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n filter: invert(1);\n }\n .dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n \n .colored-dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored-dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored-dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n .colored #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n /* Scrollbar for toolbar/RTE and modal */\n\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgba(255, 255, 255, 0.3) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgba(255, 255, 255, 0.3);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .colored * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .colored *::-webkit-scrollbar {\n width: 12px;\n }\n .colored *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n </style>\n\n </head>\n <body${this.builder.styleDark?' class="dark"':""}${this.builder.styleColored?' class="colored"':""}${this.builder.styleColoredDark?' class="colored-dark"':""}${this.builder.styleLight?' class="light"':""}>\n\n <div id="divFontList">\n ${this.getFontPreview()}\n </div>\n\n <script type="text/javascript">\n var elms = document.querySelectorAll('#divFontList > div');\n for(var i=0;i<elms.length;i++) {\n elms[i].addEventListener('click', function(e){\n\n var elm = e.target.parentNode;\n var on = false;\n if(elm.className) {\n if(elm.className.indexOf('on')!==-1) {\n on = true;\n }\n }\n /*\n if(on) {\n parent._cb.clearFont();\n } else {\n var provider = elm.getAttribute('data-provider');\n var fontfamily = elm.getAttribute('data-font-family');\n var fontstyle = elm.getAttribute('data-font-style');\n var fontdisplay = elm.getAttribute('data-font-display');\n //parent._cb.applyFont(fontfamily, fontstyle, provider);\n parent._cb.setFont(fontfamily, fontstyle, fontdisplay, provider);\n }\n */\n var provider = elm.getAttribute('data-provider');\n var fontfamily = elm.getAttribute('data-font-family');\n var fontstyle = elm.getAttribute('data-font-style');\n var fontdisplay = elm.getAttribute('data-font-display');\n //parent._cb.applyFont(fontfamily, fontstyle, provider);\n parent._cb.setFont(fontfamily, fontstyle, fontdisplay, provider);\n\n });\n }\n <\/script>\n \n </body>\n </html>\n \n \n `}getFontFamilyEmail(t){let e=this.builder.fontAssetPath;return`\n <!DOCTYPE HTML>\n <html>\n <head>\n <meta charset="utf-8">\n <title>Fonts</title>\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <meta name="description" content=""> \n <style>\n html, body {height:100%}\n body {overflow:hidden;margin:0;\n font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\n font-size:100%; \n line-height:1.7;\n }\n #divFontList {margin:0;padding:0 0 9px 9px;height:100%;overflow-y:scroll !important;box-sizing:border-box;}\n #divFontList > div {width:100%;cursor:pointer;overflow:hidden;text-align:center;position:relative;}\n #divFontList > div img {margin:7px 5px 0px 5px;max-width: 230px;max-height: 27px;}\n #divFontList > div div {position:absolute;top:0;left:0;width:100%;height:100%;}\n\n #divFontList > div > div {\n position:absolute;left:0px;top:0px;width:100%;height:100%;\n // z-index: 1;\n }\n\n #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n #divFontList > div > div:after {\n // background: rgba(0, 0, 0, 0.04); \n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n position: absolute;\n content: "";\n display: block;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n opacity: 0;\n }\n #divFontList > div:hover > div:after {\n opacity: 1;\n }\n #divFontList > div.on > div:after {\n opacity: 1;\n }\n\n ${this.builder.styleDark||this.builder.styleColoredDark||this.builder.styleColore?"":"\n #divFontList > div img {\n mix-blend-mode: multiply;\n }\n "}\n\n .dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n filter: invert(1);\n }\n .dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n \n .colored-dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored-dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored-dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n .colored #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n /* Scrollbar for toolbar/RTE and modal */\n\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgba(255, 255, 255, 0.3) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgba(255, 255, 255, 0.3);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .colored * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .colored *::-webkit-scrollbar {\n width: 12px;\n }\n .colored *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n </style>\n </head>\n <body${this.builder.styleDark?' class="dark"':""}${this.builder.styleColored?' class="colored"':""}${this.builder.styleColoredDark?' class="colored-dark"':""}${this.builder.styleLight?' class="light"':""}>\n\n <div id="divFontList">\n <div data-provider="" data-font-family="" style="font-size:12px;padding:10px 7px;box-sizing:border-box;"><div></div>None</div>\n <div data-provider="" data-font-family="Arial, sans-serif"><div></div><img src="${e}arial.png"></div>\n <div data-provider="" data-font-family="courier"><div></div><img src="${e}courier.png"></div>\n <div data-provider="" data-font-family="Georgia, serif"><div></div><img src="${e}georgia.png"></div>\n <div data-provider="" data-font-family="monospace"><div></div><img src="${e}monospace.png"></div>\n <div data-provider="" data-font-family="sans-serif"><div></div><img src="${e}sans_serif.png"></div>\n <div data-provider="" data-font-family="serif"><div></div><img src="${e}serif.png"></div>\n </div>\n\n <script type="text/javascript">\n var elms = document.querySelectorAll('#divFontList > div');\n for(var i=0;i<elms.length;i++) {\n elms[i].addEventListener('click', function(e){\n\n var elm = e.target.parentNode;\n var on = false;\n if(elm.className) {\n if(elm.className.indexOf('on')!==-1) {\n on = true;\n }\n }\n /*\n if(on) {\n parent._cb.clearFont();\n } else {\n var provider = elm.getAttribute('data-provider');\n var fontfamily = elm.getAttribute('data-font-family');\n var fontstyle = elm.getAttribute('data-font-style');\n var fontdisplay = elm.getAttribute('data-font-display');\n //parent._cb.applyFont(fontfamily, fontstyle, provider);\n parent._cb.setFont(fontfamily, fontstyle, fontdisplay, provider);\n }\n */\n var provider = elm.getAttribute('data-provider');\n var fontfamily = elm.getAttribute('data-font-family');\n var fontstyle = elm.getAttribute('data-font-style');\n var fontdisplay = elm.getAttribute('data-font-display');\n //parent._cb.applyFont(fontfamily, fontstyle, provider);\n parent._cb.setFont(fontfamily, fontstyle, fontdisplay, provider);\n\n });\n }\n\n <\/script>\n \n </body>\n </html>\n \n \n `}}class e{createElement(t){return document.createElement(t)}appendChild(t,e){t&&t.appendChild(e)}appendHtml(t,e){t&&t.insertAdjacentHTML("beforeend",e)}addEventListener(t,e,i){t&&t.addEventListener(e,i)}addClass(t,e){t&&(this.hasClass(t,e)||(0===t.classList.length?t.className=e:t.className=t.className+" "+e,t.className=t.className.replace(/ +/g," ")))}removeClass(t,e){if(t&&t.classList.length>0){let i,n,o,s,r=e.split(" ");for(i=0,o=r.length;i<o;++i){if(!r[i])continue;let e=r[i],o="",l=t.className.split(" ");for(n=0,s=l.length;n<s;++n)l[n]&&l[n]!==e&&(o+=l[n]+" ");t.className=o.trim()}""===t.className&&t.removeAttribute("class")}}hasClass(t,e){if(!t)return!1;try{let i=t.getAttribute("class");return new RegExp("\\b"+e+"\\b").test(i)}catch(t){}}moveAfter(t,e){e.parentNode.insertBefore(t,e),e.parentNode.insertBefore(e,e.previousElementSibling)}elementChildren(t){const e=t.childNodes;let i=[],n=e.length;for(;n--;)1===e[n].nodeType&&i.unshift(e[n]);return i}getElementOffset(t){const e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset,left:e.left+window.pageXOffset,width:e.width,height:e.height}}parentsHasClass(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(this.hasClass(t,e))return!0;t=t.parentNode}}parentsHasId(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(t.id===e)return!0;t=t.parentNode}}parentsHasTag(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(t.tagName.toLowerCase()===e.toLowerCase())return!0;t=t.parentNode}}parentsHasAttribute(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;try{if(t.hasAttribute(e))return!0}catch(t){}t=t.parentNode}}getParentByTag(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(t.tagName.toLowerCase()===e.toLowerCase())return t;t=t.parentNode}}getParentByAttribute(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;try{if(t.hasAttribute(e))return t}catch(t){}t=t.parentNode}}parentsHasElement(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(!(t=t.parentNode))return!1;if(!t.tagName)return!1;if(t.tagName.toLowerCase()===e)return!0}}getParentElement(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(!(t=t.parentNode))return!1;if(!t.tagName)return!1;if(t.tagName.toLowerCase()===e)return t}}removeClasses(t,e){for(let i=0;i<t.length;i++)t[i].classList.remove(e)}removeAttributes(t,e){for(let i=0;i<t.length;i++)t[i].removeAttribute(e)}removeElements(t){Array.prototype.forEach.call(t,(t=>{t.parentNode.removeChild(t)}))}moveCursorToElement(t){var e,i;window.getSelection&&document.createRange?((i=document.createRange()).selectNodeContents(t),i.collapse(!1),(e=window.getSelection()).removeAllRanges(),e.addRange(i)):document.body.createTextRange&&((i=document.body.createTextRange()).moveToElementText(t),i.collapse(!1),i.select())}selectElementContents(t){var e=document.createRange();e.selectNodeContents(t);var i=window.getSelection();i.removeAllRanges(),i.addRange(e)}getSelected(){if(window.getSelection)return window.getSelection().toString();if(document.getSelection)return document.getSelection().toString();var t=document.selection&&document.selection.createRange();return!!t.text&&t.text}checkEditable(){try{var t,e;return window.getSelection?t=3===(e=window.getSelection().getRangeAt(0).commonAncestorContainer).nodeType?e.parentNode:e:document.selection&&(e=document.selection.createRange(),t=document.selection.createRange().parentElement()),!!this.parentsHasAttribute(t,"contenteditable")}catch(t){return!1}}textSelection(){const t=this.getSelection().anchorNode;if(!t)return!1;return t.nodeType!==Node.TEXT_NODE&&t.nodeType!==Node.COMMENT_NODE?t:t.parentElement}getStyle(t,e){return window.getComputedStyle?window.getComputedStyle(t,null).getPropertyValue(e):t.style[e.replace(/-([a-z])/g,(function(t){return t[1].toUpperCase()}))]}observeElement(t,e,i,n=0){let o=Object.getPrototypeOf(t);if(Object.prototype.hasOwnProperty.call(o,e)){let s=Object.getOwnPropertyDescriptor(o,e);Object.defineProperty(t,e,{get:function(){return s.get.apply(this,arguments)},set:function(){let t=this[e];s.set.apply(this,arguments);let o=this[e];"function"==typeof i&&setTimeout(i.bind(this,t,o),n)}})}}baseName(t){if("string"==typeof t){var e=t.split(".");return e.splice(0,e.length-1).join(".")}}doFunction(t,e,i){if(e(t),i){let i=Array.prototype.slice.call(t.getElementsByTagName("*"));for(var n=0;n<i.length;n++)e(i[n])}}execCommand(t,e,i){const n=this.getSelection();if(!n)return;const o=n.anchorNode;if(o){const s=o.nodeType!==Node.TEXT_NODE&&o.nodeType!==Node.COMMENT_NODE?o:o.parentElement;let r;r=s&&s.innerText===n.toString()||""===n.toString().trim()?this.updateSelection(t,e,s):this.replaceSelection(t,e,n,s),i&&i(!0,r)}else i&&i(!1)}updateSelection(t,e,i){return i.style[t]=this.getStyleValue(i,t,e),this.checkStyleIfSameAsParent(i,t),this.cleanChildren(t,i),i}replaceSelection(t,e,i,n){const o=i.getRangeAt(0),s=o.extractContents(),r=this.createSpan(n,t,e);return r.appendChild(s),this.cleanChildren(t,r),o.insertNode(r),i.selectAllChildren(r),this.checkStyleIfSameAsParent(r,t),r}checkStyleIfSameAsParent(t,e){t.parentNode&&(t.parentNode.style[e]!==t.style[e]&&window.getComputedStyle(t.parentNode,null).getPropertyValue(e)!==t.style[e]||(t.style[e]="",""!==t.getAttribute("style")&&null!==t.style||t.removeAttribute("style")))}createSpan(t,e,i){const n=document.createElement("span");return n.style[e]=this.getStyleValue(t,e,i),n}findParentStyle(t,e){if("HTML"===t.nodeName.toUpperCase()||"BODY"===t.nodeName.toUpperCase())return null;if(!t.parentNode)return null;if(null!==t.style[e]&&void 0!==t.style[e]&&""!==t.style[e])return t;this.findParentStyle(t.parentNode,e)}getStyleValue(t,e,i){if("font-weight"===e||"font-style"===e||"text-decoration"===e||"text-transform"===e){let n,o=this.findParentStyle(t,e);if(o&&(n=o.style[e]),i===n){t.style[e]="";let o=window.getComputedStyle(t,null).getPropertyValue(e);t.style[e]=n,i=o}}return i}getSelection(){return window&&window.getSelection?window.getSelection():document&&document.getSelection?document.getSelection():document&&document.selection?document.selection.createRange().text:null}cleanChildren(t,e){if(!e.hasChildNodes())return;const i=Array.from(e.children).filter((e=>void 0!==e.style[t]&&""!==e.style[t.style]));i&&i.length>0&&i.forEach((e=>{e.style[t]="",""!==e.getAttribute("style")&&null!==e.style||e.removeAttribute("style")}));const n=Array.from(e.children).map((e=>this.cleanChildren(t,e)));n&&n.length}removeEmptyStyle(t){if(!t.hasChildNodes())return;const e=Array.from(t.children).filter((t=>t.getAttribute("style")));e&&e.length>0&&e.forEach((t=>{""!==t.getAttribute("style").trim()&&null!==t.style||t.removeAttribute("style")}));const i=Array.from(t.children).map((t=>this.removeEmptyStyle(t)));i&&i.length}cleanEmptySpans(t){let e=t.querySelectorAll("span");const i=Array.prototype.filter;let n=i.call(e,(t=>0===t.attributes.length));n&&n.length>0&&n.forEach((t=>{t.outerHTML=t.innerHTML})),e=t.querySelectorAll("span"),i.call(e,(t=>{""===t.innerHTML&&t.parentNode.removeChild(t)})),e=t.querySelectorAll("span"),n=i.call(e,(t=>0===t.attributes.length)),n&&n.length>0&&this.cleanEmptySpans(t)}cleanClassSize(t,e){if(!t.hasChildNodes())return;const i=Array.from(t.children).filter((t=>this.hasClass(t,e)));i&&i.length>0&&i.forEach((t=>{this.removeClass(t,e)}));const n=Array.from(t.children).map((t=>this.cleanClassSize(t,e)));n&&n.length}removeFormat(){const t=this.getSelection();if(!t)return;const e=t.anchorNode;if(!e)return;const i=e.nodeType!==Node.TEXT_NODE&&e.nodeType!==Node.COMMENT_NODE?e:e.parentElement;i&&i.innerText===t.toString()||""===t.toString().trim()?this.cleanElement(i):this.cleanSelection(t)}cleanElement(t){t.style.fontWeight="",t.style.fontStyle="",t.style.textDecoration="",t.style.textTransform="",t.style.fontFamily="",t.style.fontSize="",t.style.color="",t.style.backgroundColor="",t.classList.forEach((e=>{-1!==e.indexOf("size-")&&this.removeClass(t,e)})),t.querySelectorAll("*").forEach((t=>{t.style.fontWeight="",t.style.fontStyle="",t.style.textDecoration="",t.style.textTransform="",t.style.fontFamily="",t.style.fontSize="",t.style.color="",t.style.backgroundColor="",t.classList.forEach((e=>{-1!==e.indexOf("size-")&&this.removeClass(t,e)}))})),this.cleanUnusedSpan(t)}cleanSelection(t){const e=t.getRangeAt(0),i=e.extractContents(),n=document.createElement("span");n.appendChild(i),e.insertNode(n),t.selectAllChildren(n),this.cleanElement(n)}cleanUnusedSpan(t){if(!t.hasChildNodes())return;const e=Array.from(t.children).filter((t=>{""!==t.getAttribute("style")&&null!==t.style||t.removeAttribute("style");let e=0===t.attributes.length||1===t.attributes.length&&t.hasAttribute("data-keep");return"span"===t.nodeName.toLowerCase()&&e}));if(e&&e.length>0)return void e.forEach((t=>{const e=document.createTextNode(t.textContent);t.parentElement.replaceChild(e,t)}));const i=Array.from(t.children).map((t=>this.cleanUnusedSpan(t)));i&&i.length}}var i={exports:{}},n={},o={exports:{}},s={},r={};function l(t){this.__parent=t,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function a(t,e){this.__cache=[""],this.__indent_size=t.indent_size,this.__indent_string=t.indent_char,t.indent_with_tabs||(this.__indent_string=new Array(t.indent_size+1).join(t.indent_char)),e=e||"",t.indent_level>0&&(e=new Array(t.indent_level+1).join(this.__indent_string)),this.__base_string=e,this.__base_string_length=e.length}function d(t,e){this.__indent_cache=new a(t,e),this.raw=!1,this._end_with_newline=t.end_with_newline,this.indent_size=t.indent_size,this.wrap_line_length=t.wrap_line_length,this.indent_empty_lines=t.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new l(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}l.prototype.clone_empty=function(){var t=new l(this.__parent);return t.set_indent(this.__indent_count,this.__alignment_count),t},l.prototype.item=function(t){return t<0?this.__items[this.__items.length+t]:this.__items[t]},l.prototype.has_match=function(t){for(var e=this.__items.length-1;e>=0;e--)if(this.__items[e].match(t))return!0;return!1},l.prototype.set_indent=function(t,e){this.is_empty()&&(this.__indent_count=t||0,this.__alignment_count=e||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},l.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},l.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},l.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var t=this.__parent.current_line;return t.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),t.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),t.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===t.__items[0]&&(t.__items.splice(0,1),t.__character_count-=1),!0}return!1},l.prototype.is_empty=function(){return 0===this.__items.length},l.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},l.prototype.push=function(t){this.__items.push(t);var e=t.lastIndexOf("\n");-1!==e?this.__character_count=t.length-e:this.__character_count+=t.length},l.prototype.pop=function(){var t=null;return this.is_empty()||(t=this.__items.pop(),this.__character_count-=t.length),t},l.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},l.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},l.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},l.prototype.toString=function(){var t="";return this.is_empty()?this.__parent.indent_empty_lines&&(t=this.__parent.get_indent_string(this.__indent_count)):(t=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),t+=this.__items.join("")),t},a.prototype.get_indent_size=function(t,e){var i=this.__base_string_length;return e=e||0,t<0&&(i=0),i+=t*this.__indent_size,i+=e},a.prototype.get_indent_string=function(t,e){var i=this.__base_string;return e=e||0,t<0&&(t=0,i=""),e+=t*this.__indent_size,this.__ensure_cache(e),i+=this.__cache[e]},a.prototype.__ensure_cache=function(t){for(;t>=this.__cache.length;)this.__add_column()},a.prototype.__add_column=function(){var t=this.__cache.length,e=0,i="";this.__indent_size&&t>=this.__indent_size&&(t-=(e=Math.floor(t/this.__indent_size))*this.__indent_size,i=new Array(e+1).join(this.__indent_string)),t&&(i+=new Array(t+1).join(" ")),this.__cache.push(i)},d.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},d.prototype.get_line_number=function(){return this.__lines.length},d.prototype.get_indent_string=function(t,e){return this.__indent_cache.get_indent_string(t,e)},d.prototype.get_indent_size=function(t,e){return this.__indent_cache.get_indent_size(t,e)},d.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},d.prototype.add_new_line=function(t){return!(this.is_empty()||!t&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},d.prototype.get_code=function(t){this.trim(!0);var e=this.current_line.pop();e&&("\n"===e[e.length-1]&&(e=e.replace(/\n+$/g,"")),this.current_line.push(e)),this._end_with_newline&&this.__add_outputline();var i=this.__lines.join("\n");return"\n"!==t&&(i=i.replace(/[\n]/g,t)),i},d.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},d.prototype.set_indent=function(t,e){return t=t||0,e=e||0,this.next_line.set_indent(t,e),this.__lines.length>1?(this.current_line.set_indent(t,e),!0):(this.current_line.set_indent(),!1)},d.prototype.add_raw_token=function(t){for(var e=0;e<t.newlines;e++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(t.whitespace_before),this.current_line.push(t.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},d.prototype.add_token=function(t){this.__add_space_before_token(),this.current_line.push(t),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},d.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},d.prototype.remove_indent=function(t){for(var e=this.__lines.length;t<e;)this.__lines[t]._remove_indent(),t++;this.current_line._remove_wrap_indent()},d.prototype.trim=function(t){for(t=void 0!==t&&t,this.current_line.trim();t&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},d.prototype.just_added_newline=function(){return this.current_line.is_empty()},d.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},d.prototype.ensure_empty_line_above=function(t,e){for(var i=this.__lines.length-2;i>=0;){var n=this.__lines[i];if(n.is_empty())break;if(0!==n.item(0).indexOf(t)&&n.item(-1)!==e){this.__lines.splice(i+1,0,new l(this)),this.previous_line=this.__lines[this.__lines.length-2];break}i--}},r.Output=d;var c={};c.Token=function(t,e,i,n){this.type=t,this.text=e,this.comments_before=null,this.newlines=i||0,this.whitespace_before=n||"",this.parent=null,this.next=null,this.previous=null,this.opened=null,this.closed=null,this.directives=null};var u,p,h,v,f,g={};p="\\x24\\x30-\\x39\\x41-\\x5a\\x5f\\x61-\\x7a",v="\\u0300-\\u036f\\u0483-\\u0487\\u0591-\\u05bd\\u05bf\\u05c1\\u05c2\\u05c4\\u05c5\\u05c7\\u0610-\\u061a\\u0620-\\u0649\\u0672-\\u06d3\\u06e7-\\u06e8\\u06fb-\\u06fc\\u0730-\\u074a\\u0800-\\u0814\\u081b-\\u0823\\u0825-\\u0827\\u0829-\\u082d\\u0840-\\u0857\\u08e4-\\u08fe\\u0900-\\u0903\\u093a-\\u093c\\u093e-\\u094f\\u0951-\\u0957\\u0962-\\u0963\\u0966-\\u096f\\u0981-\\u0983\\u09bc\\u09be-\\u09c4\\u09c7\\u09c8\\u09d7\\u09df-\\u09e0\\u0a01-\\u0a03\\u0a3c\\u0a3e-\\u0a42\\u0a47\\u0a48\\u0a4b-\\u0a4d\\u0a51\\u0a66-\\u0a71\\u0a75\\u0a81-\\u0a83\\u0abc\\u0abe-\\u0ac5\\u0ac7-\\u0ac9\\u0acb-\\u0acd\\u0ae2-\\u0ae3\\u0ae6-\\u0aef\\u0b01-\\u0b03\\u0b3c\\u0b3e-\\u0b44\\u0b47\\u0b48\\u0b4b-\\u0b4d\\u0b56\\u0b57\\u0b5f-\\u0b60\\u0b66-\\u0b6f\\u0b82\\u0bbe-\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcd\\u0bd7\\u0be6-\\u0bef\\u0c01-\\u0c03\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55\\u0c56\\u0c62-\\u0c63\\u0c66-\\u0c6f\\u0c82\\u0c83\\u0cbc\\u0cbe-\\u0cc4\\u0cc6-\\u0cc8\\u0cca-\\u0ccd\\u0cd5\\u0cd6\\u0ce2-\\u0ce3\\u0ce6-\\u0cef\\u0d02\\u0d03\\u0d46-\\u0d48\\u0d57\\u0d62-\\u0d63\\u0d66-\\u0d6f\\u0d82\\u0d83\\u0dca\\u0dcf-\\u0dd4\\u0dd6\\u0dd8-\\u0ddf\\u0df2\\u0df3\\u0e34-\\u0e3a\\u0e40-\\u0e45\\u0e50-\\u0e59\\u0eb4-\\u0eb9\\u0ec8-\\u0ecd\\u0ed0-\\u0ed9\\u0f18\\u0f19\\u0f20-\\u0f29\\u0f35\\u0f37\\u0f39\\u0f41-\\u0f47\\u0f71-\\u0f84\\u0f86-\\u0f87\\u0f8d-\\u0f97\\u0f99-\\u0fbc\\u0fc6\\u1000-\\u1029\\u1040-\\u1049\\u1067-\\u106d\\u1071-\\u1074\\u1082-\\u108d\\u108f-\\u109d\\u135d-\\u135f\\u170e-\\u1710\\u1720-\\u1730\\u1740-\\u1750\\u1772\\u1773\\u1780-\\u17b2\\u17dd\\u17e0-\\u17e9\\u180b-\\u180d\\u1810-\\u1819\\u1920-\\u192b\\u1930-\\u193b\\u1951-\\u196d\\u19b0-\\u19c0\\u19c8-\\u19c9\\u19d0-\\u19d9\\u1a00-\\u1a15\\u1a20-\\u1a53\\u1a60-\\u1a7c\\u1a7f-\\u1a89\\u1a90-\\u1a99\\u1b46-\\u1b4b\\u1b50-\\u1b59\\u1b6b-\\u1b73\\u1bb0-\\u1bb9\\u1be6-\\u1bf3\\u1c00-\\u1c22\\u1c40-\\u1c49\\u1c5b-\\u1c7d\\u1cd0-\\u1cd2\\u1d00-\\u1dbe\\u1e01-\\u1f15\\u200c\\u200d\\u203f\\u2040\\u2054\\u20d0-\\u20dc\\u20e1\\u20e5-\\u20f0\\u2d81-\\u2d96\\u2de0-\\u2dff\\u3021-\\u3028\\u3099\\u309a\\ua640-\\ua66d\\ua674-\\ua67d\\ua69f\\ua6f0-\\ua6f1\\ua7f8-\\ua800\\ua806\\ua80b\\ua823-\\ua827\\ua880-\\ua881\\ua8b4-\\ua8c4\\ua8d0-\\ua8d9\\ua8f3-\\ua8f7\\ua900-\\ua909\\ua926-\\ua92d\\ua930-\\ua945\\ua980-\\ua983\\ua9b3-\\ua9c0\\uaa00-\\uaa27\\uaa40-\\uaa41\\uaa4c-\\uaa4d\\uaa50-\\uaa59\\uaa7b\\uaae0-\\uaae9\\uaaf2-\\uaaf3\\uabc0-\\uabe1\\uabec\\uabed\\uabf0-\\uabf9\\ufb20-\\ufb28\\ufe00-\\ufe0f\\ufe20-\\ufe26\\ufe33\\ufe34\\ufe4d-\\ufe4f\\uff10-\\uff19\\uff3f",f="(?:\\\\u[0-9a-fA-F]{4}|[\\x23\\x24\\x40\\x41-\\x5a\\x5f\\x61-\\x7a"+(h="\\xaa\\xb5\\xba\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ec\\u02ee\\u0370-\\u0374\\u0376\\u0377\\u037a-\\u037d\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0481\\u048a-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05d0-\\u05ea\\u05f0-\\u05f2\\u0620-\\u064a\\u066e\\u066f\\u0671-\\u06d3\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\\u0712-\\u072f\\u074d-\\u07a5\\u07b1\\u07ca-\\u07ea\\u07f4\\u07f5\\u07fa\\u0800-\\u0815\\u081a\\u0824\\u0828\\u0840-\\u0858\\u08a0\\u08a2-\\u08ac\\u0904-\\u0939\\u093d\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097f\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc\\u09dd\\u09df-\\u09e1\\u09f0\\u09f1\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd\\u0ad0\\u0ae0\\u0ae1\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bd0\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c33\\u0c35-\\u0c39\\u0c3d\\u0c58\\u0c59\\u0c60\\u0c61\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cde\\u0ce0\\u0ce1\\u0cf1\\u0cf2\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d\\u0d4e\\u0d60\\u0d61\\u0d7a-\\u0d7f\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e81\\u0e82\\u0e84\\u0e87\\u0e88\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\\u0eaa\\u0eab\\u0ead-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0edc-\\u0edf\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6c\\u0f88-\\u0f8c\\u1000-\\u102a\\u103f\\u1050-\\u1055\\u105a-\\u105d\\u1061\\u1065\\u1066\\u106e-\\u1070\\u1075-\\u1081\\u108e\\u10a0-\\u10c5\\u10c7\\u10cd\\u10d0-\\u10fa\\u10fc-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f4\\u1401-\\u166c\\u166f-\\u167f\\u1681-\\u169a\\u16a0-\\u16ea\\u16ee-\\u16f0\\u1700-\\u170c\\u170e-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\\u17dc\\u1820-\\u1877\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191c\\u1950-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19c1-\\u19c7\\u1a00-\\u1a16\\u1a20-\\u1a54\\u1aa7\\u1b05-\\u1b33\\u1b45-\\u1b4b\\u1b83-\\u1ba0\\u1bae\\u1baf\\u1bba-\\u1be5\\u1c00-\\u1c23\\u1c4d-\\u1c4f\\u1c5a-\\u1c7d\\u1ce9-\\u1cec\\u1cee-\\u1cf1\\u1cf5\\u1cf6\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\\u212f-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u2160-\\u2188\\u2c00-\\u2c2e\\u2c30-\\u2c5e\\u2c60-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u2e2f\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312d\\u3131-\\u318e\\u31a0-\\u31ba\\u31f0-\\u31ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\ua000-\\ua48c\\ua4d0-\\ua4fd\\ua500-\\ua60c\\ua610-\\ua61f\\ua62a\\ua62b\\ua640-\\ua66e\\ua67f-\\ua697\\ua6a0-\\ua6ef\\ua717-\\ua71f\\ua722-\\ua788\\ua78b-\\ua78e\\ua790-\\ua793\\ua7a0-\\ua7aa\\ua7f8-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua822\\ua840-\\ua873\\ua882-\\ua8b3\\ua8f2-\\ua8f7\\ua8fb\\ua90a-\\ua925\\ua930-\\ua946\\ua960-\\ua97c\\ua984-\\ua9b2\\ua9cf\\uaa00-\\uaa28\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa60-\\uaa76\\uaa7a\\uaa80-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaadd\\uaae0-\\uaaea\\uaaf2-\\uaaf4\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uabc0-\\uabe2\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40\\ufb41\\ufb43\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc")+"])",(u=g).identifier=new RegExp(f+"(?:\\\\u[0-9a-fA-F]{4}|[\\x24\\x30-\\x39\\x41-\\x5a\\x5f\\x61-\\x7a\\xaa\\xb5\\xba\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ec\\u02ee\\u0370-\\u0374\\u0376\\u0377\\u037a-\\u037d\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0481\\u048a-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05d0-\\u05ea\\u05f0-\\u05f2\\u0620-\\u064a\\u066e\\u066f\\u0671-\\u06d3\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\\u0712-\\u072f\\u074d-\\u07a5\\u07b1\\u07ca-\\u07ea\\u07f4\\u07f5\\u07fa\\u0800-\\u0815\\u081a\\u0824\\u0828\\u0840-\\u0858\\u08a0\\u08a2-\\u08ac\\u0904-\\u0939\\u093d\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097f\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc\\u09dd\\u09df-\\u09e1\\u09f0\\u09f1\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd\\u0ad0\\u0ae0\\u0ae1\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bd0\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c33\\u0c35-\\u0c39\\u0c3d\\u0c58\\u0c59\\u0c60\\u0c61\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cde\\u0ce0\\u0ce1\\u0cf1\\u0cf2\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d\\u0d4e\\u0d60\\u0d61\\u0d7a-\\u0d7f\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e81\\u0e82\\u0e84\\u0e87\\u0e88\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\\u0eaa\\u0eab\\u0ead-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0edc-\\u0edf\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6c\\u0f88-\\u0f8c\\u1000-\\u102a\\u103f\\u1050-\\u1055\\u105a-\\u105d\\u1061\\u1065\\u1066\\u106e-\\u1070\\u1075-\\u1081\\u108e\\u10a0-\\u10c5\\u10c7\\u10cd\\u10d0-\\u10fa\\u10fc-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f4\\u1401-\\u166c\\u166f-\\u167f\\u1681-\\u169a\\u16a0-\\u16ea\\u16ee-\\u16f0\\u1700-\\u170c\\u170e-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\\u17dc\\u1820-\\u1877\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191c\\u1950-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19c1-\\u19c7\\u1a00-\\u1a16\\u1a20-\\u1a54\\u1aa7\\u1b05-\\u1b33\\u1b45-\\u1b4b\\u1b83-\\u1ba0\\u1bae\\u1baf\\u1bba-\\u1be5\\u1c00-\\u1c23\\u1c4d-\\u1c4f\\u1c5a-\\u1c7d\\u1ce9-\\u1cec\\u1cee-\\u1cf1\\u1cf5\\u1cf6\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\\u212f-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u2160-\\u2188\\u2c00-\\u2c2e\\u2c30-\\u2c5e\\u2c60-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u2e2f\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312d\\u3131-\\u318e\\u31a0-\\u31ba\\u31f0-\\u31ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\ua000-\\ua48c\\ua4d0-\\ua4fd\\ua500-\\ua60c\\ua610-\\ua61f\\ua62a\\ua62b\\ua640-\\ua66e\\ua67f-\\ua697\\ua6a0-\\ua6ef\\ua717-\\ua71f\\ua722-\\ua788\\ua78b-\\ua78e\\ua790-\\ua793\\ua7a0-\\ua7aa\\ua7f8-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua822\\ua840-\\ua873\\ua882-\\ua8b3\\ua8f2-\\ua8f7\\ua8fb\\ua90a-\\ua925\\ua930-\\ua946\\ua960-\\ua97c\\ua984-\\ua9b2\\ua9cf\\uaa00-\\uaa28\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa60-\\uaa76\\uaa7a\\uaa80-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaadd\\uaae0-\\uaaea\\uaaf2-\\uaaf4\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uabc0-\\uabe2\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40\\ufb41\\ufb43\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc\\u0300-\\u036f\\u0483-\\u0487\\u0591-\\u05bd\\u05bf\\u05c1\\u05c2\\u05c4\\u05c5\\u05c7\\u0610-\\u061a\\u0620-\\u0649\\u0672-\\u06d3\\u06e7-\\u06e8\\u06fb-\\u06fc\\u0730-\\u074a\\u0800-\\u0814\\u081b-\\u0823\\u0825-\\u0827\\u0829-\\u082d\\u0840-\\u0857\\u08e4-\\u08fe\\u0900-\\u0903\\u093a-\\u093c\\u093e-\\u094f\\u0951-\\u0957\\u0962-\\u0963\\u0966-\\u096f\\u0981-\\u0983\\u09bc\\u09be-\\u09c4\\u09c7\\u09c8\\u09d7\\u09df-\\u09e0\\u0a01-\\u0a03\\u0a3c\\u0a3e-\\u0a42\\u0a47\\u0a48\\u0a4b-\\u0a4d\\u0a51\\u0a66-\\u0a71\\u0a75\\u0a81-\\u0a83\\u0abc\\u0abe-\\u0ac5\\u0ac7-\\u0ac9\\u0acb-\\u0acd\\u0ae2-\\u0ae3\\u0ae6-\\u0aef\\u0b01-\\u0b03\\u0b3c\\u0b3e-\\u0b44\\u0b47\\u0b48\\u0b4b-\\u0b4d\\u0b56\\u0b57\\u0b5f-\\u0b60\\u0b66-\\u0b6f\\u0b82\\u0bbe-\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcd\\u0bd7\\u0be6-\\u0bef\\u0c01-\\u0c03\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55\\u0c56\\u0c62-\\u0c63\\u0c66-\\u0c6f\\u0c82\\u0c83\\u0cbc\\u0cbe-\\u0cc4\\u0cc6-\\u0cc8\\u0cca-\\u0ccd\\u0cd5\\u0cd6\\u0ce2-\\u0ce3\\u0ce6-\\u0cef\\u0d02\\u0d03\\u0d46-\\u0d48\\u0d57\\u0d62-\\u0d63\\u0d66-\\u0d6f\\u0d82\\u0d83\\u0dca\\u0dcf-\\u0dd4\\u0dd6\\u0dd8-\\u0ddf\\u0df2\\u0df3\\u0e34-\\u0e3a\\u0e40-\\u0e45\\u0e50-\\u0e59\\u0eb4-\\u0eb9\\u0ec8-\\u0ecd\\u0ed0-\\u0ed9\\u0f18\\u0f19\\u0f20-\\u0f29\\u0f35\\u0f37\\u0f39\\u0f41-\\u0f47\\u0f71-\\u0f84\\u0f86-\\u0f87\\u0f8d-\\u0f97\\u0f99-\\u0fbc\\u0fc6\\u1000-\\u1029\\u1040-\\u1049\\u1067-\\u106d\\u1071-\\u1074\\u1082-\\u108d\\u108f-\\u109d\\u135d-\\u135f\\u170e-\\u1710\\u1720-\\u1730\\u1740-\\u1750\\u1772\\u1773\\u1780-\\u17b2\\u17dd\\u17e0-\\u17e9\\u180b-\\u180d\\u1810-\\u1819\\u1920-\\u192b\\u1930-\\u193b\\u1951-\\u196d\\u19b0-\\u19c0\\u19c8-\\u19c9\\u19d0-\\u19d9\\u1a00-\\u1a15\\u1a20-\\u1a53\\u1a60-\\u1a7c\\u1a7f-\\u1a89\\u1a90-\\u1a99\\u1b46-\\u1b4b\\u1b50-\\u1b59\\u1b6b-\\u1b73\\u1bb0-\\u1bb9\\u1be6-\\u1bf3\\u1c00-\\u1c22\\u1c40-\\u1c49\\u1c5b-\\u1c7d\\u1cd0-\\u1cd2\\u1d00-\\u1dbe\\u1e01-\\u1f15\\u200c\\u200d\\u203f\\u2040\\u2054\\u20d0-\\u20dc\\u20e1\\u20e5-\\u20f0\\u2d81-\\u2d96\\u2de0-\\u2dff\\u3021-\\u3028\\u3099\\u309a\\ua640-\\ua66d\\ua674-\\ua67d\\ua69f\\ua6f0-\\ua6f1\\ua7f8-\\ua800\\ua806\\ua80b\\ua823-\\ua827\\ua880-\\ua881\\ua8b4-\\ua8c4\\ua8d0-\\ua8d9\\ua8f3-\\ua8f7\\ua900-\\ua909\\ua926-\\ua92d\\ua930-\\ua945\\ua980-\\ua983\\ua9b3-\\ua9c0\\uaa00-\\uaa27\\uaa40-\\uaa41\\uaa4c-\\uaa4d\\uaa50-\\uaa59\\uaa7b\\uaae0-\\uaae9\\uaaf2-\\uaaf3\\uabc0-\\uabe1\\uabec\\uabed\\uabf0-\\uabf9\\ufb20-\\ufb28\\ufe00-\\ufe0f\\ufe20-\\ufe26\\ufe33\\ufe34\\ufe4d-\\ufe4f\\uff10-\\uff19\\uff3f])*","g"),u.identifierStart=new RegExp(f),u.identifierMatch=new RegExp("(?:\\\\u[0-9a-fA-F]{4}|["+p+h+v+"])+"),u.newline=/[\n\r\u2028\u2029]/,u.lineBreak=new RegExp("\r\n|"+u.newline.source),u.allLineBreaks=new RegExp(u.lineBreak.source,"g");var m={},b={};function y(t,e){this.raw_options=x(t,e),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php","smarty"],["auto"])}function x(t,e){var i,n={};for(i in t=_(t))i!==e&&(n[i]=t[i]);if(e&&t[e])for(i in t[e])n[i]=t[e][i];return n}function _(t){var e,i={};for(e in t){i[e.replace(/-/g,"_")]=t[e]}return i}y.prototype._get_array=function(t,e){var i=this.raw_options[t],n=e||[];return"object"==typeof i?null!==i&&"function"==typeof i.concat&&(n=i.concat()):"string"==typeof i&&(n=i.split(/[^a-zA-Z0-9_\/\-]+/)),n},y.prototype._get_boolean=function(t,e){var i=this.raw_options[t];return void 0===i?!!e:!!i},y.prototype._get_characters=function(t,e){var i=this.raw_options[t],n=e||"";return"string"==typeof i&&(n=i.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),n},y.prototype._get_number=function(t,e){var i=this.raw_options[t];e=parseInt(e,10),isNaN(e)&&(e=0);var n=parseInt(i,10);return isNaN(n)&&(n=e),n},y.prototype._get_selection=function(t,e,i){var n=this._get_selection_list(t,e,i);if(1!==n.length)throw new Error("Invalid Option Value: The option '"+t+"' can only be one of the following values:\n"+e+"\nYou passed in: '"+this.raw_options[t]+"'");return n[0]},y.prototype._get_selection_list=function(t,e,i){if(!e||0===e.length)throw new Error("Selection list cannot be empty.");if(i=i||[e[0]],!this._is_valid_selection(i,e))throw new Error("Invalid Default Value!");var n=this._get_array(t,i);if(!this._is_valid_selection(n,e))throw new Error("Invalid Option Value: The option '"+t+"' can contain only the following values:\n"+e+"\nYou passed in: '"+this.raw_options[t]+"'");return n},y.prototype._is_valid_selection=function(t,e){return t.length&&e.length&&!t.some((function(t){return-1===e.indexOf(t)}))},b.Options=y,b.normalizeOpts=_,b.mergeOpts=x;var w=b.Options,S=["before-newline","after-newline","preserve-newline"];function C(t){w.call(this,t,"js");var e=this.raw_options.brace_style||null;"expand-strict"===e?this.raw_options.brace_style="expand":"collapse-preserve-inline"===e?this.raw_options.brace_style="collapse,preserve-inline":void 0!==this.raw_options.braces_on_own_line&&(this.raw_options.brace_style=this.raw_options.braces_on_own_line?"expand":"collapse");var i=this._get_selection_list("brace_style",["collapse","expand","end-expand","none","preserve-inline"]);this.brace_preserve_inline=!1,this.brace_style="collapse";for(var n=0;n<i.length;n++)"preserve-inline"===i[n]?this.brace_preserve_inline=!0:this.brace_style=i[n];this.unindent_chained_methods=this._get_boolean("unindent_chained_methods"),this.break_chained_methods=this._get_boolean("break_chained_methods"),this.space_in_paren=this._get_boolean("space_in_paren"),this.space_in_empty_paren=this._get_boolean("space_in_empty_paren"),this.jslint_happy=this._get_boolean("jslint_happy"),this.space_after_anon_function=this._get_boolean("space_after_anon_function"),this.space_after_named_function=this._get_boolean("space_after_named_function"),this.keep_array_indentation=this._get_boolean("keep_array_indentation"),this.space_before_conditional=this._get_boolean("space_before_conditional",!0),this.unescape_strings=this._get_boolean("unescape_strings"),this.e4x=this._get_boolean("e4x"),this.comma_first=this._get_boolean("comma_first"),this.operator_position=this._get_selection("operator_position",S),this.test_output_raw=this._get_boolean("test_output_raw"),this.jslint_happy&&(this.space_after_anon_function=!0)}C.prototype=new w,m.Options=C;var k={},E={},A=RegExp.prototype.hasOwnProperty("sticky");function L(t){this.__input=t||"",this.__input_length=this.__input.length,this.__position=0}L.prototype.restart=function(){this.__position=0},L.prototype.back=function(){this.__position>0&&(this.__position-=1)},L.prototype.hasNext=function(){return this.__position<this.__input_length},L.prototype.next=function(){var t=null;return this.hasNext()&&(t=this.__input.charAt(this.__position),this.__position+=1),t},L.prototype.peek=function(t){var e=null;return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&(e=this.__input.charAt(t)),e},L.prototype.__match=function(t,e){t.lastIndex=e;var i=t.exec(this.__input);return!i||A&&t.sticky||i.index!==e&&(i=null),i},L.prototype.test=function(t,e){return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&!!this.__match(t,e)},L.prototype.testChar=function(t,e){var i=this.peek(e);return t.lastIndex=0,null!==i&&t.test(i)},L.prototype.match=function(t){var e=this.__match(t,this.__position);return e?this.__position+=e[0].length:e=null,e},L.prototype.read=function(t,e,i){var n,o="";return t&&(n=this.match(t))&&(o+=n[0]),!e||!n&&t||(o+=this.readUntil(e,i)),o},L.prototype.readUntil=function(t,e){var i,n=this.__position;t.lastIndex=this.__position;var o=t.exec(this.__input);return o?(n=o.index,e&&(n+=o[0].length)):n=this.__input_length,i=this.__input.substring(this.__position,n),this.__position=n,i},L.prototype.readUntilAfter=function(t){return this.readUntil(t,!0)},L.prototype.get_regexp=function(t,e){var i=null,n="g";return e&&A&&(n="y"),"string"==typeof t&&""!==t?i=new RegExp(t,n):t&&(i=new RegExp(t.source,n)),i},L.prototype.get_literal_regexp=function(t){return RegExp(t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},L.prototype.peekUntilAfter=function(t){var e=this.__position,i=this.readUntilAfter(t);return this.__position=e,i},L.prototype.lookBack=function(t){var e=this.__position-1;return e>=t.length&&this.__input.substring(e-t.length,e).toLowerCase()===t},E.InputScanner=L;var q={},T={};function M(t){this.__tokens=[],this.__tokens_length=this.__tokens.length,this.__position=0,this.__parent_token=t}M.prototype.restart=function(){this.__position=0},M.prototype.isEmpty=function(){return 0===this.__tokens_length},M.prototype.hasNext=function(){return this.__position<this.__tokens_length},M.prototype.next=function(){var t=null;return this.hasNext()&&(t=this.__tokens[this.__position],this.__position+=1),t},M.prototype.peek=function(t){var e=null;return t=t||0,(t+=this.__position)>=0&&t<this.__tokens_length&&(e=this.__tokens[t]),e},M.prototype.add=function(t){this.__parent_token&&(t.parent=this.__parent_token),this.__tokens.push(t),this.__tokens_length+=1},T.TokenStream=M;var O={},R={};function N(t,e){this._input=t,this._starting_pattern=null,this._match_pattern=null,this._until_pattern=null,this._until_after=!1,e&&(this._starting_pattern=this._input.get_regexp(e._starting_pattern,!0),this._match_pattern=this._input.get_regexp(e._match_pattern,!0),this._until_pattern=this._input.get_regexp(e._until_pattern),this._until_after=e._until_after)}N.prototype.read=function(){var t=this._input.read(this._starting_pattern);return this._starting_pattern&&!t||(t+=this._input.read(this._match_pattern,this._until_pattern,this._until_after)),t},N.prototype.read_match=function(){return this._input.match(this._match_pattern)},N.prototype.until_after=function(t){var e=this._create();return e._until_after=!0,e._until_pattern=this._input.get_regexp(t),e._update(),e},N.prototype.until=function(t){var e=this._create();return e._until_after=!1,e._until_pattern=this._input.get_regexp(t),e._update(),e},N.prototype.starting_with=function(t){var e=this._create();return e._starting_pattern=this._input.get_regexp(t,!0),e._update(),e},N.prototype.matching=function(t){var e=this._create();return e._match_pattern=this._input.get_regexp(t,!0),e._update(),e},N.prototype._create=function(){return new N(this._input,this)},N.prototype._update=function(){},R.Pattern=N;var B=R.Pattern;function $(t,e){B.call(this,t,e),e?this._line_regexp=this._input.get_regexp(e._line_regexp):this.__set_whitespace_patterns("",""),this.newline_count=0,this.whitespace_before_token=""}$.prototype=new B,$.prototype.__set_whitespace_patterns=function(t,e){t+="\\t ",e+="\\n\\r",this._match_pattern=this._input.get_regexp("["+t+e+"]+",!0),this._newline_regexp=this._input.get_regexp("\\r\\n|["+e+"]")},$.prototype.read=function(){this.newline_count=0,this.whitespace_before_token="";var t=this._input.read(this._match_pattern);if(" "===t)this.whitespace_before_token=" ";else if(t){var e=this.__split(this._newline_regexp,t);this.newline_count=e.length-1,this.whitespace_before_token=e[this.newline_count]}return t},$.prototype.matching=function(t,e){var i=this._create();return i.__set_whitespace_patterns(t,e),i._update(),i},$.prototype._create=function(){return new $(this._input,this)},$.prototype.__split=function(t,e){t.lastIndex=0;for(var i=0,n=[],o=t.exec(e);o;)n.push(e.substring(i,o.index)),i=o.index+o[0].length,o=t.exec(e);return i<e.length?n.push(e.substring(i,e.length)):n.push(""),n},O.WhitespacePattern=$;var I=E.InputScanner,H=c.Token,D=T.TokenStream,z=O.WhitespacePattern,P={START:"TK_START",RAW:"TK_RAW",EOF:"TK_EOF"},F=function(t,e){this._input=new I(t),this._options=e||{},this.__tokens=null,this._patterns={},this._patterns.whitespace=new z(this._input)};F.prototype.tokenize=function(){var t;this._input.restart(),this.__tokens=new D,this._reset();for(var e=new H(P.START,""),i=null,n=[],o=new D;e.type!==P.EOF;){for(t=this._get_next_token(e,i);this._is_comment(t);)o.add(t),t=this._get_next_token(e,i);o.isEmpty()||(t.comments_before=o,o=new D),t.parent=i,this._is_opening(t)?(n.push(i),i=t):i&&this._is_closing(t,i)&&(t.opened=i,i.closed=t,i=n.pop(),t.parent=i),t.previous=e,e.next=t,this.__tokens.add(t),e=t}return this.__tokens},F.prototype._is_first_token=function(){return this.__tokens.isEmpty()},F.prototype._reset=function(){},F.prototype._get_next_token=function(t,e){this._readWhitespace();var i=this._input.read(/.+/g);return i?this._create_token(P.RAW,i):this._create_token(P.EOF,"")},F.prototype._is_comment=function(t){return!1},F.prototype._is_opening=function(t){return!1},F.prototype._is_closing=function(t,e){return!1},F.prototype._create_token=function(t,e){return new H(t,e,this._patterns.whitespace.newline_count,this._patterns.whitespace.whitespace_before_token)},F.prototype._readWhitespace=function(){return this._patterns.whitespace.read()},q.Tokenizer=F,q.TOKEN=P;var U={};function W(t,e){t="string"==typeof t?t:t.source,e="string"==typeof e?e:e.source,this.__directives_block_pattern=new RegExp(t+/ beautify( \w+[:]\w+)+ /.source+e,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(t+/\sbeautify\signore:end\s/.source+e,"g")}W.prototype.get_directives=function(t){if(!t.match(this.__directives_block_pattern))return null;var e={};this.__directive_pattern.lastIndex=0;for(var i=this.__directive_pattern.exec(t);i;)e[i[1]]=i[2],i=this.__directive_pattern.exec(t);return e},W.prototype.readIgnored=function(t){return t.readUntilAfter(this.__directives_end_ignore_pattern)},U.Directives=W;var j={},G=R.Pattern,Y={django:!1,erb:!1,handlebars:!1,php:!1,smarty:!1};function V(t,e){G.call(this,t,e),this.__template_pattern=null,this._disabled=Object.assign({},Y),this._excluded=Object.assign({},Y),e&&(this.__template_pattern=this._input.get_regexp(e.__template_pattern),this._excluded=Object.assign(this._excluded,e._excluded),this._disabled=Object.assign(this._disabled,e._disabled));var i=new G(t);this.__patterns={handlebars_comment:i.starting_with(/{{!--/).until_after(/--}}/),handlebars_unescaped:i.starting_with(/{{{/).until_after(/}}}/),handlebars:i.starting_with(/{{/).until_after(/}}/),php:i.starting_with(/<\?(?:[= ]|php)/).until_after(/\?>/),erb:i.starting_with(/<%[^%]/).until_after(/[^%]%>/),django:i.starting_with(/{%/).until_after(/%}/),django_value:i.starting_with(/{{/).until_after(/}}/),django_comment:i.starting_with(/{#/).until_after(/#}/),smarty:i.starting_with(/{(?=[^}{\s\n])/).until_after(/[^\s\n]}/),smarty_comment:i.starting_with(/{\*/).until_after(/\*}/),smarty_literal:i.starting_with(/{literal}/).until_after(/{\/literal}/)}}V.prototype=new G,V.prototype._create=function(){return new V(this._input,this)},V.prototype._update=function(){this.__set_templated_pattern()},V.prototype.disable=function(t){var e=this._create();return e._disabled[t]=!0,e._update(),e},V.prototype.read_options=function(t){var e=this._create();for(var i in Y)e._disabled[i]=-1===t.templating.indexOf(i);return e._update(),e},V.prototype.exclude=function(t){var e=this._create();return e._excluded[t]=!0,e._update(),e},V.prototype.read=function(){var t="";t=this._match_pattern?this._input.read(this._starting_pattern):this._input.read(this._starting_pattern,this.__template_pattern);for(var e=this._read_template();e;)this._match_pattern?e+=this._input.read(this._match_pattern):e+=this._input.readUntil(this.__template_pattern),t+=e,e=this._read_template();return this._until_after&&(t+=this._input.readUntilAfter(this._until_pattern)),t},V.prototype.__set_templated_pattern=function(){var t=[];this._disabled.php||t.push(this.__patterns.php._starting_pattern.source),this._disabled.handlebars||t.push(this.__patterns.handlebars._starting_pattern.source),this._disabled.erb||t.push(this.__patterns.erb._starting_pattern.source),this._disabled.django||(t.push(this.__patterns.django._starting_pattern.source),t.push(this.__patterns.django_value._starting_pattern.source),t.push(this.__patterns.django_comment._starting_pattern.source)),this._disabled.smarty||t.push(this.__patterns.smarty._starting_pattern.source),this._until_pattern&&t.push(this._until_pattern.source),this.__template_pattern=this._input.get_regexp("(?:"+t.join("|")+")")},V.prototype._read_template=function(){var t="",e=this._input.peek();if("<"===e){var i=this._input.peek(1);this._disabled.php||this._excluded.php||"?"!==i||(t=t||this.__patterns.php.read()),this._disabled.erb||this._excluded.erb||"%"!==i||(t=t||this.__patterns.erb.read())}else"{"===e&&(this._disabled.handlebars||this._excluded.handlebars||(t=(t=(t=t||this.__patterns.handlebars_comment.read())||this.__patterns.handlebars_unescaped.read())||this.__patterns.handlebars.read()),this._disabled.django||(this._excluded.django||this._excluded.handlebars||(t=t||this.__patterns.django_value.read()),this._excluded.django||(t=(t=t||this.__patterns.django_comment.read())||this.__patterns.django.read())),this._disabled.smarty||this._disabled.django&&this._disabled.handlebars&&(t=(t=(t=t||this.__patterns.smarty_comment.read())||this.__patterns.smarty_literal.read())||this.__patterns.smarty.read()));return t},j.TemplatablePattern=V;var X=E.InputScanner,Z=q.Tokenizer,K=q.TOKEN,J=U.Directives,Q=g,tt=R.Pattern,et=j.TemplatablePattern;function it(t,e){return-1!==e.indexOf(t)}var nt={START_EXPR:"TK_START_EXPR",END_EXPR:"TK_END_EXPR",START_BLOCK:"TK_START_BLOCK",END_BLOCK:"TK_END_BLOCK",WORD:"TK_WORD",RESERVED:"TK_RESERVED",SEMICOLON:"TK_SEMICOLON",STRING:"TK_STRING",EQUALS:"TK_EQUALS",OPERATOR:"TK_OPERATOR",COMMA:"TK_COMMA",BLOCK_COMMENT:"TK_BLOCK_COMMENT",COMMENT:"TK_COMMENT",DOT:"TK_DOT",UNKNOWN:"TK_UNKNOWN",START:K.START,RAW:K.RAW,EOF:K.EOF},ot=new J(/\/\*/,/\*\//),st=/0[xX][0123456789abcdefABCDEF_]*n?|0[oO][01234567_]*n?|0[bB][01_]*n?|\d[\d_]*n|(?:\.\d[\d_]*|\d[\d_]*\.?[\d_]*)(?:[eE][+-]?[\d_]+)?/,rt=/[0-9]/,lt=/[^\d\.]/,at=">>> === !== << && >= ** != == <= >> || ?? |> < / - + > : & % ? ^ | *".split(" "),dt=">>>= ... >>= <<= === >>> !== **= => ^= :: /= << <= == && -= >= >> != -- += ** || ?? ++ %= &= *= |= |> = ! ? > < : / ^ - + * & % ~ |";dt=(dt="\\?\\.(?!\\d) "+(dt=dt.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&"))).replace(/ /g,"|");var ct,ut=new RegExp(dt),pt="continue,try,throw,return,var,let,const,if,switch,case,default,for,while,break,function,import,export".split(","),ht=pt.concat(["do","in","of","else","get","set","new","catch","finally","typeof","yield","async","await","from","as"]),vt=new RegExp("^(?:"+ht.join("|")+")$"),ft=function(t,e){Z.call(this,t,e),this._patterns.whitespace=this._patterns.whitespace.matching(/\u00A0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff/.source,/\u2028\u2029/.source);var i=new tt(this._input),n=new et(this._input).read_options(this._options);this.__patterns={template:n,identifier:n.starting_with(Q.identifier).matching(Q.identifierMatch),number:i.matching(st),punct:i.matching(ut),comment:i.starting_with(/\/\//).until(/[\n\r\u2028\u2029]/),block_comment:i.starting_with(/\/\*/).until_after(/\*\//),html_comment_start:i.matching(/<!--/),html_comment_end:i.matching(/-->/),include:i.starting_with(/#include/).until_after(Q.lineBreak),shebang:i.starting_with(/#!/).until_after(Q.lineBreak),xml:i.matching(/[\s\S]*?<(\/?)([-a-zA-Z:0-9_.]+|{[\s\S]+?}|!\[CDATA\[[\s\S]*?\]\]|)(\s+{[\s\S]+?}|\s+[-a-zA-Z:0-9_.]+|\s+[-a-zA-Z:0-9_.]+\s*=\s*('[^']*'|"[^"]*"|{[\s\S]+?}))*\s*(\/?)\s*>/),single_quote:n.until(/['\\\n\r\u2028\u2029]/),double_quote:n.until(/["\\\n\r\u2028\u2029]/),template_text:n.until(/[`\\$]/),template_expression:n.until(/[`}\\]/)}};(ft.prototype=new Z)._is_comment=function(t){return t.type===nt.COMMENT||t.type===nt.BLOCK_COMMENT||t.type===nt.UNKNOWN},ft.prototype._is_opening=function(t){return t.type===nt.START_BLOCK||t.type===nt.START_EXPR},ft.prototype._is_closing=function(t,e){return(t.type===nt.END_BLOCK||t.type===nt.END_EXPR)&&e&&("]"===t.text&&"["===e.text||")"===t.text&&"("===e.text||"}"===t.text&&"{"===e.text)},ft.prototype._reset=function(){ct=!1},ft.prototype._get_next_token=function(t,e){var i=null;this._readWhitespace();var n=this._input.peek();return null===n?this._create_token(nt.EOF,""):i=(i=(i=(i=(i=(i=(i=(i=(i=i||this._read_non_javascript(n))||this._read_string(n))||this._read_word(t))||this._read_singles(n))||this._read_comment(n))||this._read_regexp(n,t))||this._read_xml(n,t))||this._read_punctuation())||this._create_token(nt.UNKNOWN,this._input.next())},ft.prototype._read_word=function(t){var e;return""!==(e=this.__patterns.identifier.read())?(e=e.replace(Q.allLineBreaks,"\n"),t.type!==nt.DOT&&(t.type!==nt.RESERVED||"set"!==t.text&&"get"!==t.text)&&vt.test(e)?"in"===e||"of"===e?this._create_token(nt.OPERATOR,e):this._create_token(nt.RESERVED,e):this._create_token(nt.WORD,e)):""!==(e=this.__patterns.number.read())?this._create_token(nt.WORD,e):void 0},ft.prototype._read_singles=function(t){var e=null;return"("===t||"["===t?e=this._create_token(nt.START_EXPR,t):")"===t||"]"===t?e=this._create_token(nt.END_EXPR,t):"{"===t?e=this._create_token(nt.START_BLOCK,t):"}"===t?e=this._create_token(nt.END_BLOCK,t):";"===t?e=this._create_token(nt.SEMICOLON,t):"."===t&&lt.test(this._input.peek(1))?e=this._create_token(nt.DOT,t):","===t&&(e=this._create_token(nt.COMMA,t)),e&&this._input.next(),e},ft.prototype._read_punctuation=function(){var t=this.__patterns.punct.read();if(""!==t)return"="===t?this._create_token(nt.EQUALS,t):"?."===t?this._create_token(nt.DOT,t):this._create_token(nt.OPERATOR,t)},ft.prototype._read_non_javascript=function(t){var e="";if("#"===t){if(this._is_first_token()&&(e=this.__patterns.shebang.read()))return this._create_token(nt.UNKNOWN,e.trim()+"\n");if(e=this.__patterns.include.read())return this._create_token(nt.UNKNOWN,e.trim()+"\n");t=this._input.next();var i="#";if(this._input.hasNext()&&this._input.testChar(rt)){do{i+=t=this._input.next()}while(this._input.hasNext()&&"#"!==t&&"="!==t);return"#"===t||("["===this._input.peek()&&"]"===this._input.peek(1)?(i+="[]",this._input.next(),this._input.next()):"{"===this._input.peek()&&"}"===this._input.peek(1)&&(i+="{}",this._input.next(),this._input.next())),this._create_token(nt.WORD,i)}this._input.back()}else if("<"===t&&this._is_first_token()){if(e=this.__patterns.html_comment_start.read()){for(;this._input.hasNext()&&!this._input.testChar(Q.newline);)e+=this._input.next();return ct=!0,this._create_token(nt.COMMENT,e)}}else if(ct&&"-"===t&&(e=this.__patterns.html_comment_end.read()))return ct=!1,this._create_token(nt.COMMENT,e);return null},ft.prototype._read_comment=function(t){var e=null;if("/"===t){var i="";if("*"===this._input.peek(1)){i=this.__patterns.block_comment.read();var n=ot.get_directives(i);n&&"start"===n.ignore&&(i+=ot.readIgnored(this._input)),i=i.replace(Q.allLineBreaks,"\n"),(e=this._create_token(nt.BLOCK_COMMENT,i)).directives=n}else"/"===this._input.peek(1)&&(i=this.__patterns.comment.read(),e=this._create_token(nt.COMMENT,i))}return e},ft.prototype._read_string=function(t){if("`"===t||"'"===t||'"'===t){var e=this._input.next();return this.has_char_escapes=!1,e+="`"===t?this._read_string_recursive("`",!0,"${"):this._read_string_recursive(t),this.has_char_escapes&&this._options.unescape_strings&&(e=function(t){var e="",i=0,n=new X(t),o=null;for(;n.hasNext();)if((o=n.match(/([\s]|[^\\]|\\\\)+/g))&&(e+=o[0]),"\\"===n.peek()){if(n.next(),"x"===n.peek())o=n.match(/x([0-9A-Fa-f]{2})/g);else{if("u"!==n.peek()){e+="\\",n.hasNext()&&(e+=n.next());continue}o=n.match(/u([0-9A-Fa-f]{4})/g)}if(!o)return t;if((i=parseInt(o[1],16))>126&&i<=255&&0===o[0].indexOf("x"))return t;if(i>=0&&i<32){e+="\\"+o[0];continue}e+=34===i||39===i||92===i?"\\"+String.fromCharCode(i):String.fromCharCode(i)}return e}(e)),this._input.peek()===t&&(e+=this._input.next()),e=e.replace(Q.allLineBreaks,"\n"),this._create_token(nt.STRING,e)}return null},ft.prototype._allow_regexp_or_xml=function(t){return t.type===nt.RESERVED&&it(t.text,["return","case","throw","else","do","typeof","yield"])||t.type===nt.END_EXPR&&")"===t.text&&t.opened.previous.type===nt.RESERVED&&it(t.opened.previous.text,["if","while","for"])||it(t.type,[nt.COMMENT,nt.START_EXPR,nt.START_BLOCK,nt.START,nt.END_BLOCK,nt.OPERATOR,nt.EQUALS,nt.EOF,nt.SEMICOLON,nt.COMMA])},ft.prototype._read_regexp=function(t,e){if("/"===t&&this._allow_regexp_or_xml(e)){for(var i=this._input.next(),n=!1,o=!1;this._input.hasNext()&&(n||o||this._input.peek()!==t)&&!this._input.testChar(Q.newline);)i+=this._input.peek(),n?n=!1:(n="\\"===this._input.peek(),"["===this._input.peek()?o=!0:"]"===this._input.peek()&&(o=!1)),this._input.next();return this._input.peek()===t&&(i+=this._input.next(),i+=this._input.read(Q.identifier)),this._create_token(nt.STRING,i)}return null},ft.prototype._read_xml=function(t,e){if(this._options.e4x&&"<"===t&&this._allow_regexp_or_xml(e)){var i="",n=this.__patterns.xml.read_match();if(n){for(var o=n[2].replace(/^{\s+/,"{").replace(/\s+}$/,"}"),s=0===o.indexOf("{"),r=0;n;){var l=!!n[1],a=n[2];if(!(!!n[n.length-1]||"![CDATA["===a.slice(0,8))&&(a===o||s&&a.replace(/^{\s+/,"{").replace(/\s+}$/,"}"))&&(l?--r:++r),i+=n[0],r<=0)break;n=this.__patterns.xml.read_match()}return n||(i+=this._input.match(/[\s\S]*/g)[0]),i=i.replace(Q.allLineBreaks,"\n"),this._create_token(nt.STRING,i)}}return null},ft.prototype._read_string_recursive=function(t,e,i){var n,o;"'"===t?o=this.__patterns.single_quote:'"'===t?o=this.__patterns.double_quote:"`"===t?o=this.__patterns.template_text:"}"===t&&(o=this.__patterns.template_expression);for(var s=o.read(),r="";this._input.hasNext();){if((r=this._input.next())===t||!e&&Q.newline.test(r)){this._input.back();break}"\\"===r&&this._input.hasNext()?("x"===(n=this._input.peek())||"u"===n?this.has_char_escapes=!0:"\r"===n&&"\n"===this._input.peek(1)&&this._input.next(),r+=this._input.next()):i&&("${"===i&&"$"===r&&"{"===this._input.peek()&&(r+=this._input.next()),i===r&&(r+="`"===t?this._read_string_recursive("}",e,"`"):this._read_string_recursive("`",e,"${"),this._input.hasNext()&&(r+=this._input.next()))),s+=r+=o.read()}return s},k.Tokenizer=ft,k.TOKEN=nt,k.positionable_operators=at.slice(),k.line_starters=pt.slice();var gt=r.Output,mt=c.Token,bt=g,yt=m.Options,xt=k.Tokenizer,_t=k.line_starters,wt=k.positionable_operators,St=k.TOKEN;function Ct(t,e){return-1!==e.indexOf(t)}function kt(t,e){return t&&t.type===St.RESERVED&&t.text===e}function Et(t,e){return t&&t.type===St.RESERVED&&Ct(t.text,e)}var At=["case","return","do","if","throw","else","await","break","continue","async"],Lt=function(t){for(var e={},i=0;i<t.length;i++)e[t[i].replace(/-/g,"_")]=t[i];return e}(["before-newline","after-newline","preserve-newline"]),qt=[Lt.before_newline,Lt.preserve_newline],Tt="BlockStatement",Mt="Statement",Ot="ObjectLiteral",Rt="ArrayLiteral",Nt="ForInitializer",Bt="Conditional",$t="Expression";function It(t,e){e.multiline_frame||e.mode===Nt||e.mode===Bt||t.remove_indent(e.start_line_index)}function Ht(t){return t===Rt}function Dt(t){return Ct(t,[$t,Nt,Bt])}function zt(t,e){e=e||{},this._source_text=t||"",this._output=null,this._tokens=null,this._last_last_text=null,this._flags=null,this._previous_flags=null,this._flag_store=null,this._options=new yt(e)}zt.prototype.create_flags=function(t,e){var i=0;return t&&(i=t.indentation_level,!this._output.just_added_newline()&&t.line_indent_level>i&&(i=t.line_indent_level)),{mode:e,parent:t,last_token:t?t.last_token:new mt(St.START_BLOCK,""),last_word:t?t.last_word:"",declaration_statement:!1,declaration_assignment:!1,multiline_frame:!1,inline_frame:!1,if_block:!1,else_block:!1,do_block:!1,do_while:!1,import_block:!1,in_case_statement:!1,in_case:!1,case_body:!1,indentation_level:i,alignment:0,line_indent_level:t?t.line_indent_level:i,start_line_index:this._output.get_line_number(),ternary_depth:0}},zt.prototype._reset=function(t){var e=t.match(/^[\t ]*/)[0];this._last_last_text="",this._output=new gt(this._options,e),this._output.raw=this._options.test_output_raw,this._flag_store=[],this.set_mode(Tt);var i=new xt(t,this._options);return this._tokens=i.tokenize(),t},zt.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var t=this._reset(this._source_text),e=this._options.eol;"auto"===this._options.eol&&(e="\n",t&&bt.lineBreak.test(t||"")&&(e=t.match(bt.lineBreak)[0]));for(var i=this._tokens.next();i;)this.handle_token(i),this._last_last_text=this._flags.last_token.text,this._flags.last_token=i,i=this._tokens.next();return this._output.get_code(e)},zt.prototype.handle_token=function(t,e){t.type===St.START_EXPR?this.handle_start_expr(t):t.type===St.END_EXPR?this.handle_end_expr(t):t.type===St.START_BLOCK?this.handle_start_block(t):t.type===St.END_BLOCK?this.handle_end_block(t):t.type===St.WORD||t.type===St.RESERVED?this.handle_word(t):t.type===St.SEMICOLON?this.handle_semicolon(t):t.type===St.STRING?this.handle_string(t):t.type===St.EQUALS?this.handle_equals(t):t.type===St.OPERATOR?this.handle_operator(t):t.type===St.COMMA?this.handle_comma(t):t.type===St.BLOCK_COMMENT?this.handle_block_comment(t,e):t.type===St.COMMENT?this.handle_comment(t,e):t.type===St.DOT?this.handle_dot(t):t.type===St.EOF?this.handle_eof(t):(t.type,St.UNKNOWN,this.handle_unknown(t,e))},zt.prototype.handle_whitespace_and_comments=function(t,e){var i=t.newlines,n=this._options.keep_array_indentation&&Ht(this._flags.mode);if(t.comments_before)for(var o=t.comments_before.next();o;)this.handle_whitespace_and_comments(o,e),this.handle_token(o,e),o=t.comments_before.next();if(n)for(var s=0;s<i;s+=1)this.print_newline(s>0,e);else if(this._options.max_preserve_newlines&&i>this._options.max_preserve_newlines&&(i=this._options.max_preserve_newlines),this._options.preserve_newlines&&i>1){this.print_newline(!1,e);for(var r=1;r<i;r+=1)this.print_newline(!0,e)}};var Pt=["async","break","continue","return","throw","yield"];zt.prototype.allow_wrap_or_preserved_newline=function(t,e){if(e=void 0!==e&&e,!this._output.just_added_newline()){var i=this._options.preserve_newlines&&t.newlines||e;if(Ct(this._flags.last_token.text,wt)||Ct(t.text,wt)){var n=Ct(this._flags.last_token.text,wt)&&Ct(this._options.operator_position,qt)||Ct(t.text,wt);i=i&&n}if(i)this.print_newline(!1,!0);else if(this._options.wrap_line_length){if(Et(this._flags.last_token,Pt))return;this._output.set_wrap_point()}}},zt.prototype.print_newline=function(t,e){if(!e&&";"!==this._flags.last_token.text&&","!==this._flags.last_token.text&&"="!==this._flags.last_token.text&&(this._flags.last_token.type!==St.OPERATOR||"--"===this._flags.last_token.text||"++"===this._flags.last_token.text))for(var i=this._tokens.peek();!(this._flags.mode!==Mt||this._flags.if_block&&kt(i,"else")||this._flags.do_block);)this.restore_mode();this._output.add_new_line(t)&&(this._flags.multiline_frame=!0)},zt.prototype.print_token_line_indentation=function(t){this._output.just_added_newline()&&(this._options.keep_array_indentation&&t.newlines&&("["===t.text||Ht(this._flags.mode))?(this._output.current_line.set_indent(-1),this._output.current_line.push(t.whitespace_before),this._output.space_before_token=!1):this._output.set_indent(this._flags.indentation_level,this._flags.alignment)&&(this._flags.line_indent_level=this._flags.indentation_level))},zt.prototype.print_token=function(t){if(this._output.raw)this._output.add_raw_token(t);else{if(this._options.comma_first&&t.previous&&t.previous.type===St.COMMA&&this._output.just_added_newline()&&","===this._output.previous_line.last()){var e=this._output.previous_line.pop();this._output.previous_line.is_empty()&&(this._output.previous_line.push(e),this._output.trim(!0),this._output.current_line.pop(),this._output.trim()),this.print_token_line_indentation(t),this._output.add_token(","),this._output.space_before_token=!0}this.print_token_line_indentation(t),this._output.non_breaking_space=!0,this._output.add_token(t.text),this._output.previous_token_wrapped&&(this._flags.multiline_frame=!0)}},zt.prototype.indent=function(){this._flags.indentation_level+=1,this._output.set_indent(this._flags.indentation_level,this._flags.alignment)},zt.prototype.deindent=function(){this._flags.indentation_level>0&&(!this._flags.parent||this._flags.indentation_level>this._flags.parent.indentation_level)&&(this._flags.indentation_level-=1,this._output.set_indent(this._flags.indentation_level,this._flags.alignment))},zt.prototype.set_mode=function(t){this._flags?(this._flag_store.push(this._flags),this._previous_flags=this._flags):this._previous_flags=this.create_flags(null,t),this._flags=this.create_flags(this._previous_flags,t),this._output.set_indent(this._flags.indentation_level,this._flags.alignment)},zt.prototype.restore_mode=function(){this._flag_store.length>0&&(this._previous_flags=this._flags,this._flags=this._flag_store.pop(),this._previous_flags.mode===Mt&&It(this._output,this._previous_flags),this._output.set_indent(this._flags.indentation_level,this._flags.alignment))},zt.prototype.start_of_object_property=function(){return this._flags.parent.mode===Ot&&this._flags.mode===Mt&&(":"===this._flags.last_token.text&&0===this._flags.ternary_depth||Et(this._flags.last_token,["get","set"]))},zt.prototype.start_of_statement=function(t){var e=!1;return!!(e=(e=(e=(e=(e=(e=(e=e||Et(this._flags.last_token,["var","let","const"])&&t.type===St.WORD)||kt(this._flags.last_token,"do"))||!(this._flags.parent.mode===Ot&&this._flags.mode===Mt)&&Et(this._flags.last_token,Pt)&&!t.newlines)||kt(this._flags.last_token,"else")&&!(kt(t,"if")&&!t.comments_before))||this._flags.last_token.type===St.END_EXPR&&(this._previous_flags.mode===Nt||this._previous_flags.mode===Bt))||this._flags.last_token.type===St.WORD&&this._flags.mode===Tt&&!this._flags.in_case&&!("--"===t.text||"++"===t.text)&&"function"!==this._last_last_text&&t.type!==St.WORD&&t.type!==St.RESERVED)||this._flags.mode===Ot&&(":"===this._flags.last_token.text&&0===this._flags.ternary_depth||Et(this._flags.last_token,["get","set"])))&&(this.set_mode(Mt),this.indent(),this.handle_whitespace_and_comments(t,!0),this.start_of_object_property()||this.allow_wrap_or_preserved_newline(t,Et(t,["do","for","if","while"])),!0)},zt.prototype.handle_start_expr=function(t){this.start_of_statement(t)||this.handle_whitespace_and_comments(t);var e=$t;if("["===t.text){if(this._flags.last_token.type===St.WORD||")"===this._flags.last_token.text)return Et(this._flags.last_token,_t)&&(this._output.space_before_token=!0),this.print_token(t),this.set_mode(e),this.indent(),void(this._options.space_in_paren&&(this._output.space_before_token=!0));e=Rt,Ht(this._flags.mode)&&("["!==this._flags.last_token.text&&(","!==this._flags.last_token.text||"]"!==this._last_last_text&&"}"!==this._last_last_text)||this._options.keep_array_indentation||this.print_newline()),Ct(this._flags.last_token.type,[St.START_EXPR,St.END_EXPR,St.WORD,St.OPERATOR,St.DOT])||(this._output.space_before_token=!0)}else{if(this._flags.last_token.type===St.RESERVED)"for"===this._flags.last_token.text?(this._output.space_before_token=this._options.space_before_conditional,e=Nt):Ct(this._flags.last_token.text,["if","while","switch"])?(this._output.space_before_token=this._options.space_before_conditional,e=Bt):Ct(this._flags.last_word,["await","async"])?this._output.space_before_token=!0:"import"===this._flags.last_token.text&&""===t.whitespace_before?this._output.space_before_token=!1:(Ct(this._flags.last_token.text,_t)||"catch"===this._flags.last_token.text)&&(this._output.space_before_token=!0);else if(this._flags.last_token.type===St.EQUALS||this._flags.last_token.type===St.OPERATOR)this.start_of_object_property()||this.allow_wrap_or_preserved_newline(t);else if(this._flags.last_token.type===St.WORD){this._output.space_before_token=!1;var i=this._tokens.peek(-3);if(this._options.space_after_named_function&&i){var n=this._tokens.peek(-4);Et(i,["async","function"])||"*"===i.text&&Et(n,["async","function"])?this._output.space_before_token=!0:this._flags.mode===Ot&&("{"!==i.text&&","!==i.text&&("*"!==i.text||"{"!==n.text&&","!==n.text)||(this._output.space_before_token=!0))}}else this.allow_wrap_or_preserved_newline(t);(this._flags.last_token.type===St.RESERVED&&("function"===this._flags.last_word||"typeof"===this._flags.last_word)||"*"===this._flags.last_token.text&&(Ct(this._last_last_text,["function","yield"])||this._flags.mode===Ot&&Ct(this._last_last_text,["{",","])))&&(this._output.space_before_token=this._options.space_after_anon_function)}";"===this._flags.last_token.text||this._flags.last_token.type===St.START_BLOCK?this.print_newline():this._flags.last_token.type!==St.END_EXPR&&this._flags.last_token.type!==St.START_EXPR&&this._flags.last_token.type!==St.END_BLOCK&&"."!==this._flags.last_token.text&&this._flags.last_token.type!==St.COMMA||this.allow_wrap_or_preserved_newline(t,t.newlines),this.print_token(t),this.set_mode(e),this._options.space_in_paren&&(this._output.space_before_token=!0),this.indent()},zt.prototype.handle_end_expr=function(t){for(;this._flags.mode===Mt;)this.restore_mode();this.handle_whitespace_and_comments(t),this._flags.multiline_frame&&this.allow_wrap_or_preserved_newline(t,"]"===t.text&&Ht(this._flags.mode)&&!this._options.keep_array_indentation),this._options.space_in_paren&&(this._flags.last_token.type!==St.START_EXPR||this._options.space_in_empty_paren?this._output.space_before_token=!0:(this._output.trim(),this._output.space_before_token=!1)),this.deindent(),this.print_token(t),this.restore_mode(),It(this._output,this._previous_flags),this._flags.do_while&&this._previous_flags.mode===Bt&&(this._previous_flags.mode=$t,this._flags.do_block=!1,this._flags.do_while=!1)},zt.prototype.handle_start_block=function(t){this.handle_whitespace_and_comments(t);var e=this._tokens.peek(),i=this._tokens.peek(1);"switch"===this._flags.last_word&&this._flags.last_token.type===St.END_EXPR?(this.set_mode(Tt),this._flags.in_case_statement=!0):this._flags.case_body?this.set_mode(Tt):i&&(Ct(i.text,[":",","])&&Ct(e.type,[St.STRING,St.WORD,St.RESERVED])||Ct(e.text,["get","set","..."])&&Ct(i.type,[St.WORD,St.RESERVED]))?Ct(this._last_last_text,["class","interface"])?this.set_mode(Tt):this.set_mode(Ot):this._flags.last_token.type===St.OPERATOR&&"=>"===this._flags.last_token.text?this.set_mode(Tt):Ct(this._flags.last_token.type,[St.EQUALS,St.START_EXPR,St.COMMA,St.OPERATOR])||Et(this._flags.last_token,["return","throw","import","default"])?this.set_mode(Ot):this.set_mode(Tt);var n=!e.comments_before&&"}"===e.text,o=n&&"function"===this._flags.last_word&&this._flags.last_token.type===St.END_EXPR;if(this._options.brace_preserve_inline){var s=0,r=null;this._flags.inline_frame=!0;do{if(s+=1,(r=this._tokens.peek(s-1)).newlines){this._flags.inline_frame=!1;break}}while(r.type!==St.EOF&&(r.type!==St.END_BLOCK||r.opened!==t))}("expand"===this._options.brace_style||"none"===this._options.brace_style&&t.newlines)&&!this._flags.inline_frame?this._flags.last_token.type!==St.OPERATOR&&(o||this._flags.last_token.type===St.EQUALS||Et(this._flags.last_token,At)&&"else"!==this._flags.last_token.text)?this._output.space_before_token=!0:this.print_newline(!1,!0):(!Ht(this._previous_flags.mode)||this._flags.last_token.type!==St.START_EXPR&&this._flags.last_token.type!==St.COMMA||((this._flags.last_token.type===St.COMMA||this._options.space_in_paren)&&(this._output.space_before_token=!0),(this._flags.last_token.type===St.COMMA||this._flags.last_token.type===St.START_EXPR&&this._flags.inline_frame)&&(this.allow_wrap_or_preserved_newline(t),this._previous_flags.multiline_frame=this._previous_flags.multiline_frame||this._flags.multiline_frame,this._flags.multiline_frame=!1)),this._flags.last_token.type!==St.OPERATOR&&this._flags.last_token.type!==St.START_EXPR&&(this._flags.last_token.type!==St.START_BLOCK||this._flags.inline_frame?this._output.space_before_token=!0:this.print_newline())),this.print_token(t),this.indent(),n||this._options.brace_preserve_inline&&this._flags.inline_frame||this.print_newline()},zt.prototype.handle_end_block=function(t){for(this.handle_whitespace_and_comments(t);this._flags.mode===Mt;)this.restore_mode();var e=this._flags.last_token.type===St.START_BLOCK;this._flags.inline_frame&&!e?this._output.space_before_token=!0:"expand"===this._options.brace_style?e||this.print_newline():e||(Ht(this._flags.mode)&&this._options.keep_array_indentation?(this._options.keep_array_indentation=!1,this.print_newline(),this._options.keep_array_indentation=!0):this.print_newline()),this.restore_mode(),this.print_token(t)},zt.prototype.handle_word=function(t){if(t.type===St.RESERVED)if(Ct(t.text,["set","get"])&&this._flags.mode!==Ot)t.type=St.WORD;else if("import"===t.text&&"("===this._tokens.peek().text)t.type=St.WORD;else if(Ct(t.text,["as","from"])&&!this._flags.import_block)t.type=St.WORD;else if(this._flags.mode===Ot){":"===this._tokens.peek().text&&(t.type=St.WORD)}if(this.start_of_statement(t)?Et(this._flags.last_token,["var","let","const"])&&t.type===St.WORD&&(this._flags.declaration_statement=!0):!t.newlines||Dt(this._flags.mode)||this._flags.last_token.type===St.OPERATOR&&"--"!==this._flags.last_token.text&&"++"!==this._flags.last_token.text||this._flags.last_token.type===St.EQUALS||!this._options.preserve_newlines&&Et(this._flags.last_token,["var","let","const","set","get"])?this.handle_whitespace_and_comments(t):(this.handle_whitespace_and_comments(t),this.print_newline()),this._flags.do_block&&!this._flags.do_while){if(kt(t,"while"))return this._output.space_before_token=!0,this.print_token(t),this._output.space_before_token=!0,void(this._flags.do_while=!0);this.print_newline(),this._flags.do_block=!1}if(this._flags.if_block)if(!this._flags.else_block&&kt(t,"else"))this._flags.else_block=!0;else{for(;this._flags.mode===Mt;)this.restore_mode();this._flags.if_block=!1,this._flags.else_block=!1}if(this._flags.in_case_statement&&Et(t,["case","default"]))return this.print_newline(),this._flags.last_token.type!==St.END_BLOCK&&(this._flags.case_body||this._options.jslint_happy)&&this.deindent(),this._flags.case_body=!1,this.print_token(t),void(this._flags.in_case=!0);if(this._flags.last_token.type!==St.COMMA&&this._flags.last_token.type!==St.START_EXPR&&this._flags.last_token.type!==St.EQUALS&&this._flags.last_token.type!==St.OPERATOR||this.start_of_object_property()||this.allow_wrap_or_preserved_newline(t),kt(t,"function"))return(Ct(this._flags.last_token.text,["}",";"])||this._output.just_added_newline()&&!Ct(this._flags.last_token.text,["(","[","{",":","=",","])&&this._flags.last_token.type!==St.OPERATOR)&&(this._output.just_added_blankline()||t.comments_before||(this.print_newline(),this.print_newline(!0))),this._flags.last_token.type===St.RESERVED||this._flags.last_token.type===St.WORD?Et(this._flags.last_token,["get","set","new","export"])||Et(this._flags.last_token,Pt)||kt(this._flags.last_token,"default")&&"export"===this._last_last_text||"declare"===this._flags.last_token.text?this._output.space_before_token=!0:this.print_newline():this._flags.last_token.type===St.OPERATOR||"="===this._flags.last_token.text?this._output.space_before_token=!0:(this._flags.multiline_frame||!Dt(this._flags.mode)&&!Ht(this._flags.mode))&&this.print_newline(),this.print_token(t),void(this._flags.last_word=t.text);var e="NONE";(this._flags.last_token.type===St.END_BLOCK?this._previous_flags.inline_frame?e="SPACE":Et(t,["else","catch","finally","from"])?"expand"===this._options.brace_style||"end-expand"===this._options.brace_style||"none"===this._options.brace_style&&t.newlines?e="NEWLINE":(e="SPACE",this._output.space_before_token=!0):e="NEWLINE":this._flags.last_token.type===St.SEMICOLON&&this._flags.mode===Tt?e="NEWLINE":this._flags.last_token.type===St.SEMICOLON&&Dt(this._flags.mode)?e="SPACE":this._flags.last_token.type===St.STRING?e="NEWLINE":this._flags.last_token.type===St.RESERVED||this._flags.last_token.type===St.WORD||"*"===this._flags.last_token.text&&(Ct(this._last_last_text,["function","yield"])||this._flags.mode===Ot&&Ct(this._last_last_text,["{",","]))?e="SPACE":this._flags.last_token.type===St.START_BLOCK?e=this._flags.inline_frame?"SPACE":"NEWLINE":this._flags.last_token.type===St.END_EXPR&&(this._output.space_before_token=!0,e="NEWLINE"),Et(t,_t)&&")"!==this._flags.last_token.text&&(e=this._flags.inline_frame||"else"===this._flags.last_token.text||"export"===this._flags.last_token.text?"SPACE":"NEWLINE"),Et(t,["else","catch","finally"]))?(this._flags.last_token.type!==St.END_BLOCK||this._previous_flags.mode!==Tt||"expand"===this._options.brace_style||"end-expand"===this._options.brace_style||"none"===this._options.brace_style&&t.newlines)&&!this._flags.inline_frame?this.print_newline():(this._output.trim(!0),"}"!==this._output.current_line.last()&&this.print_newline(),this._output.space_before_token=!0):"NEWLINE"===e?Et(this._flags.last_token,At)||"declare"===this._flags.last_token.text&&Et(t,["var","let","const"])?this._output.space_before_token=!0:this._flags.last_token.type!==St.END_EXPR?this._flags.last_token.type===St.START_EXPR&&Et(t,["var","let","const"])||":"===this._flags.last_token.text||(kt(t,"if")&&kt(t.previous,"else")?this._output.space_before_token=!0:this.print_newline()):Et(t,_t)&&")"!==this._flags.last_token.text&&this.print_newline():this._flags.multiline_frame&&Ht(this._flags.mode)&&","===this._flags.last_token.text&&"}"===this._last_last_text?this.print_newline():"SPACE"===e&&(this._output.space_before_token=!0);!t.previous||t.previous.type!==St.WORD&&t.previous.type!==St.RESERVED||(this._output.space_before_token=!0),this.print_token(t),this._flags.last_word=t.text,t.type===St.RESERVED&&("do"===t.text?this._flags.do_block=!0:"if"===t.text?this._flags.if_block=!0:"import"===t.text?this._flags.import_block=!0:this._flags.import_block&&kt(t,"from")&&(this._flags.import_block=!1))},zt.prototype.handle_semicolon=function(t){this.start_of_statement(t)?this._output.space_before_token=!1:this.handle_whitespace_and_comments(t);for(var e=this._tokens.peek();!(this._flags.mode!==Mt||this._flags.if_block&&kt(e,"else")||this._flags.do_block);)this.restore_mode();this._flags.import_block&&(this._flags.import_block=!1),this.print_token(t)},zt.prototype.handle_string=function(t){(!t.text.startsWith("`")||0!==t.newlines||""!==t.whitespace_before||")"!==t.previous.text&&this._flags.last_token.type!==St.WORD)&&(this.start_of_statement(t)?this._output.space_before_token=!0:(this.handle_whitespace_and_comments(t),this._flags.last_token.type===St.RESERVED||this._flags.last_token.type===St.WORD||this._flags.inline_frame?this._output.space_before_token=!0:this._flags.last_token.type===St.COMMA||this._flags.last_token.type===St.START_EXPR||this._flags.last_token.type===St.EQUALS||this._flags.last_token.type===St.OPERATOR?this.start_of_object_property()||this.allow_wrap_or_preserved_newline(t):!t.text.startsWith("`")||this._flags.last_token.type!==St.END_EXPR||"]"!==t.previous.text&&")"!==t.previous.text||0!==t.newlines?this.print_newline():this._output.space_before_token=!0)),this.print_token(t)},zt.prototype.handle_equals=function(t){this.start_of_statement(t)||this.handle_whitespace_and_comments(t),this._flags.declaration_statement&&(this._flags.declaration_assignment=!0),this._output.space_before_token=!0,this.print_token(t),this._output.space_before_token=!0},zt.prototype.handle_comma=function(t){this.handle_whitespace_and_comments(t,!0),this.print_token(t),this._output.space_before_token=!0,this._flags.declaration_statement?(Dt(this._flags.parent.mode)&&(this._flags.declaration_assignment=!1),this._flags.declaration_assignment?(this._flags.declaration_assignment=!1,this.print_newline(!1,!0)):this._options.comma_first&&this.allow_wrap_or_preserved_newline(t)):this._flags.mode===Ot||this._flags.mode===Mt&&this._flags.parent.mode===Ot?(this._flags.mode===Mt&&this.restore_mode(),this._flags.inline_frame||this.print_newline()):this._options.comma_first&&this.allow_wrap_or_preserved_newline(t)},zt.prototype.handle_operator=function(t){var e="*"===t.text&&(Et(this._flags.last_token,["function","yield"])||Ct(this._flags.last_token.type,[St.START_BLOCK,St.COMMA,St.END_BLOCK,St.SEMICOLON])),i=Ct(t.text,["-","+"])&&(Ct(this._flags.last_token.type,[St.START_BLOCK,St.START_EXPR,St.EQUALS,St.OPERATOR])||Ct(this._flags.last_token.text,_t)||","===this._flags.last_token.text);if(this.start_of_statement(t));else{var n=!e;this.handle_whitespace_and_comments(t,n)}if(Et(this._flags.last_token,At))return this._output.space_before_token=!0,void this.print_token(t);if("*"!==t.text||this._flags.last_token.type!==St.DOT)if("::"!==t.text){if(this._flags.last_token.type===St.OPERATOR&&Ct(this._options.operator_position,qt)&&this.allow_wrap_or_preserved_newline(t),":"===t.text&&this._flags.in_case)return this.print_token(t),this._flags.in_case=!1,this._flags.case_body=!0,void(this._tokens.peek().type!==St.START_BLOCK?(this.indent(),this.print_newline()):this._output.space_before_token=!0);var o=!0,s=!0,r=!1;if(":"===t.text?0===this._flags.ternary_depth?o=!1:(this._flags.ternary_depth-=1,r=!0):"?"===t.text&&(this._flags.ternary_depth+=1),!i&&!e&&this._options.preserve_newlines&&Ct(t.text,wt)){var l=":"===t.text,a=l&&r,d=l&&!r;switch(this._options.operator_position){case Lt.before_newline:return this._output.space_before_token=!d,this.print_token(t),l&&!a||this.allow_wrap_or_preserved_newline(t),void(this._output.space_before_token=!0);case Lt.after_newline:return this._output.space_before_token=!0,!l||a?this._tokens.peek().newlines?this.print_newline(!1,!0):this.allow_wrap_or_preserved_newline(t):this._output.space_before_token=!1,this.print_token(t),void(this._output.space_before_token=!0);case Lt.preserve_newline:return d||this.allow_wrap_or_preserved_newline(t),o=!(this._output.just_added_newline()||d),this._output.space_before_token=o,this.print_token(t),void(this._output.space_before_token=!0)}}if(e){this.allow_wrap_or_preserved_newline(t),o=!1;var c=this._tokens.peek();s=c&&Ct(c.type,[St.WORD,St.RESERVED])}else"..."===t.text?(this.allow_wrap_or_preserved_newline(t),o=this._flags.last_token.type===St.START_BLOCK,s=!1):(Ct(t.text,["--","++","!","~"])||i)&&(this._flags.last_token.type!==St.COMMA&&this._flags.last_token.type!==St.START_EXPR||this.allow_wrap_or_preserved_newline(t),o=!1,s=!1,!t.newlines||"--"!==t.text&&"++"!==t.text||this.print_newline(!1,!0),";"===this._flags.last_token.text&&Dt(this._flags.mode)&&(o=!0),this._flags.last_token.type===St.RESERVED?o=!0:this._flags.last_token.type===St.END_EXPR?o=!("]"===this._flags.last_token.text&&("--"===t.text||"++"===t.text)):this._flags.last_token.type===St.OPERATOR&&(o=Ct(t.text,["--","-","++","+"])&&Ct(this._flags.last_token.text,["--","-","++","+"]),Ct(t.text,["+","-"])&&Ct(this._flags.last_token.text,["--","++"])&&(s=!0)),(this._flags.mode!==Tt||this._flags.inline_frame)&&this._flags.mode!==Mt||"{"!==this._flags.last_token.text&&";"!==this._flags.last_token.text||this.print_newline());this._output.space_before_token=this._output.space_before_token||o,this.print_token(t),this._output.space_before_token=s}else this.print_token(t);else this.print_token(t)},zt.prototype.handle_block_comment=function(t,e){return this._output.raw?(this._output.add_raw_token(t),void(t.directives&&"end"===t.directives.preserve&&(this._output.raw=this._options.test_output_raw))):t.directives?(this.print_newline(!1,e),this.print_token(t),"start"===t.directives.preserve&&(this._output.raw=!0),void this.print_newline(!1,!0)):bt.newline.test(t.text)||t.newlines?void this.print_block_commment(t,e):(this._output.space_before_token=!0,this.print_token(t),void(this._output.space_before_token=!0))},zt.prototype.print_block_commment=function(t,e){var i,n=function(t){for(var e=[],i=(t=t.replace(bt.allLineBreaks,"\n")).indexOf("\n");-1!==i;)e.push(t.substring(0,i)),i=(t=t.substring(i+1)).indexOf("\n");return t.length&&e.push(t),e}(t.text),o=!1,s=!1,r=t.whitespace_before,l=r.length;if(this.print_newline(!1,e),this.print_token_line_indentation(t),this._output.add_token(n[0]),this.print_newline(!1,e),n.length>1){for(o=function(t,e){for(var i=0;i<t.length;i++)if(t[i].trim().charAt(0)!==e)return!1;return!0}(n=n.slice(1),"*"),s=function(t,e){for(var i,n=0,o=t.length;n<o;n++)if((i=t[n])&&0!==i.indexOf(e))return!1;return!0}(n,r),o&&(this._flags.alignment=1),i=0;i<n.length;i++)o?(this.print_token_line_indentation(t),this._output.add_token(n[i].replace(/^\s+/g,""))):s&&n[i]?(this.print_token_line_indentation(t),this._output.add_token(n[i].substring(l))):(this._output.current_line.set_indent(-1),this._output.add_token(n[i])),this.print_newline(!1,e);this._flags.alignment=0}},zt.prototype.handle_comment=function(t,e){t.newlines?this.print_newline(!1,e):this._output.trim(!0),this._output.space_before_token=!0,this.print_token(t),this.print_newline(!1,e)},zt.prototype.handle_dot=function(t){this.start_of_statement(t)||this.handle_whitespace_and_comments(t,!0),Et(this._flags.last_token,At)?this._output.space_before_token=!1:this.allow_wrap_or_preserved_newline(t,")"===this._flags.last_token.text&&this._options.break_chained_methods),this._options.unindent_chained_methods&&this._output.just_added_newline()&&this.deindent(),this.print_token(t)},zt.prototype.handle_unknown=function(t,e){this.print_token(t),"\n"===t.text[t.text.length-1]&&this.print_newline(!1,e)},zt.prototype.handle_eof=function(t){for(;this._flags.mode===Mt;)this.restore_mode();this.handle_whitespace_and_comments(t)},s.Beautifier=zt;var Ft=s.Beautifier,Ut=m.Options;o.exports=function(t,e){return new Ft(t,e).beautify()},o.exports.defaultOptions=function(){return new Ut};var Wt={exports:{}},jt={},Gt={},Yt=b.Options;function Vt(t){Yt.call(this,t,"css"),this.selector_separator_newline=this._get_boolean("selector_separator_newline",!0),this.newline_between_rules=this._get_boolean("newline_between_rules",!0);var e=this._get_boolean("space_around_selector_separator");this.space_around_combinator=this._get_boolean("space_around_combinator")||e;var i=this._get_selection_list("brace_style",["collapse","expand","end-expand","none","preserve-inline"]);this.brace_style="collapse";for(var n=0;n<i.length;n++)"expand"!==i[n]?this.brace_style="collapse":this.brace_style=i[n]}Vt.prototype=new Yt,Gt.Options=Vt;var Xt=Gt.Options,Zt=r.Output,Kt=E.InputScanner,Jt=new(0,U.Directives)(/\/\*/,/\*\//),Qt=/\r\n|[\r\n]/,te=/\r\n|[\r\n]/g,ee=/\s/,ie=/(?:\s|\n)+/g,ne=/\/\*(?:[\s\S]*?)((?:\*\/)|$)/g,oe=/\/\/(?:[^\n\r\u2028\u2029]*)/g;function se(t,e){this._source_text=t||"",this._options=new Xt(e),this._ch=null,this._input=null,this.NESTED_AT_RULE={"@page":!0,"@font-face":!0,"@keyframes":!0,"@media":!0,"@supports":!0,"@document":!0},this.CONDITIONAL_GROUP_RULE={"@media":!0,"@supports":!0,"@document":!0}}se.prototype.eatString=function(t){var e="";for(this._ch=this._input.next();this._ch;){if(e+=this._ch,"\\"===this._ch)e+=this._input.next();else if(-1!==t.indexOf(this._ch)||"\n"===this._ch)break;this._ch=this._input.next()}return e},se.prototype.eatWhitespace=function(t){for(var e=ee.test(this._input.peek()),i=0;ee.test(this._input.peek());)this._ch=this._input.next(),t&&"\n"===this._ch&&(0===i||i<this._options.max_preserve_newlines)&&(i++,this._output.add_new_line(!0));return e},se.prototype.foundNestedPseudoClass=function(){for(var t=0,e=1,i=this._input.peek(e);i;){if("{"===i)return!0;if("("===i)t+=1;else if(")"===i){if(0===t)return!1;t-=1}else if(";"===i||"}"===i)return!1;e++,i=this._input.peek(e)}return!1},se.prototype.print_string=function(t){this._output.set_indent(this._indentLevel),this._output.non_breaking_space=!0,this._output.add_token(t)},se.prototype.preserveSingleSpace=function(t){t&&(this._output.space_before_token=!0)},se.prototype.indent=function(){this._indentLevel++},se.prototype.outdent=function(){this._indentLevel>0&&this._indentLevel--},se.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var t=this._source_text,e=this._options.eol;"auto"===e&&(e="\n",t&&Qt.test(t||"")&&(e=t.match(Qt)[0]));var i=(t=t.replace(te,"\n")).match(/^[\t ]*/)[0];this._output=new Zt(this._options,i),this._input=new Kt(t),this._indentLevel=0,this._nestedLevel=0,this._ch=null;for(var n,o,s=0,r=!1,l=!1,a=!1,d=!1,c=!1,u=this._ch;n=""!==this._input.read(ie),o=u,this._ch=this._input.next(),"\\"===this._ch&&this._input.hasNext()&&(this._ch+=this._input.next()),u=this._ch,this._ch;)if("/"===this._ch&&"*"===this._input.peek()){this._output.add_new_line(),this._input.back();var p=this._input.read(ne),h=Jt.get_directives(p);h&&"start"===h.ignore&&(p+=Jt.readIgnored(this._input)),this.print_string(p),this.eatWhitespace(!0),this._output.add_new_line()}else if("/"===this._ch&&"/"===this._input.peek())this._output.space_before_token=!0,this._input.back(),this.print_string(this._input.read(oe)),this.eatWhitespace(!0);else if("@"===this._ch)if(this.preserveSingleSpace(n),"{"===this._input.peek())this.print_string(this._ch+this.eatString("}"));else{this.print_string(this._ch);var v=this._input.peekUntilAfter(/[: ,;{}()[\]\/='"]/g);v.match(/[ :]$/)&&(v=this.eatString(": ").replace(/\s$/,""),this.print_string(v),this._output.space_before_token=!0),"extend"===(v=v.replace(/\s$/,""))?d=!0:"import"===v&&(c=!0),v in this.NESTED_AT_RULE?(this._nestedLevel+=1,v in this.CONDITIONAL_GROUP_RULE&&(a=!0)):r||0!==s||-1===v.indexOf(":")||(l=!0,this.indent())}else"#"===this._ch&&"{"===this._input.peek()?(this.preserveSingleSpace(n),this.print_string(this._ch+this.eatString("}"))):"{"===this._ch?(l&&(l=!1,this.outdent()),a?(a=!1,r=this._indentLevel>=this._nestedLevel):r=this._indentLevel>=this._nestedLevel-1,this._options.newline_between_rules&&r&&this._output.previous_line&&"{"!==this._output.previous_line.item(-1)&&this._output.ensure_empty_line_above("/",","),this._output.space_before_token=!0,"expand"===this._options.brace_style?(this._output.add_new_line(),this.print_string(this._ch),this.indent(),this._output.set_indent(this._indentLevel)):(this.indent(),this.print_string(this._ch)),this.eatWhitespace(!0),this._output.add_new_line()):"}"===this._ch?(this.outdent(),this._output.add_new_line(),"{"===o&&this._output.trim(!0),c=!1,d=!1,l&&(this.outdent(),l=!1),this.print_string(this._ch),r=!1,this._nestedLevel&&this._nestedLevel--,this.eatWhitespace(!0),this._output.add_new_line(),this._options.newline_between_rules&&!this._output.just_added_blankline()&&"}"!==this._input.peek()&&this._output.add_new_line(!0)):":"===this._ch?!r&&!a||this._input.lookBack("&")||this.foundNestedPseudoClass()||this._input.lookBack("(")||d||0!==s?(this._input.lookBack(" ")&&(this._output.space_before_token=!0),":"===this._input.peek()?(this._ch=this._input.next(),this.print_string("::")):this.print_string(":")):(this.print_string(":"),l||(l=!0,this._output.space_before_token=!0,this.eatWhitespace(!0),this.indent())):'"'===this._ch||"'"===this._ch?(this.preserveSingleSpace(n),this.print_string(this._ch+this.eatString(this._ch)),this.eatWhitespace(!0)):";"===this._ch?0===s?(l&&(this.outdent(),l=!1),d=!1,c=!1,this.print_string(this._ch),this.eatWhitespace(!0),"/"!==this._input.peek()&&this._output.add_new_line()):(this.print_string(this._ch),this.eatWhitespace(!0),this._output.space_before_token=!0):"("===this._ch?this._input.lookBack("url")?(this.print_string(this._ch),this.eatWhitespace(),s++,this.indent(),this._ch=this._input.next(),")"===this._ch||'"'===this._ch||"'"===this._ch?this._input.back():this._ch&&(this.print_string(this._ch+this.eatString(")")),s&&(s--,this.outdent()))):(this.preserveSingleSpace(n),this.print_string(this._ch),this.eatWhitespace(),s++,this.indent()):")"===this._ch?(s&&(s--,this.outdent()),this.print_string(this._ch)):","===this._ch?(this.print_string(this._ch),this.eatWhitespace(!0),!this._options.selector_separator_newline||l||0!==s||c||d?this._output.space_before_token=!0:this._output.add_new_line()):">"!==this._ch&&"+"!==this._ch&&"~"!==this._ch||l||0!==s?"]"===this._ch?this.print_string(this._ch):"["===this._ch?(this.preserveSingleSpace(n),this.print_string(this._ch)):"="===this._ch?(this.eatWhitespace(),this.print_string("="),ee.test(this._ch)&&(this._ch="")):"!"!==this._ch||this._input.lookBack("\\")?(this.preserveSingleSpace(n),this.print_string(this._ch)):(this.print_string(" "),this.print_string(this._ch)):this._options.space_around_combinator?(this._output.space_before_token=!0,this.print_string(this._ch),this._output.space_before_token=!0):(this.print_string(this._ch),this.eatWhitespace(),this._ch&&ee.test(this._ch)&&(this._ch=""));return this._output.get_code(e)},jt.Beautifier=se;var re=jt.Beautifier,le=Gt.Options;Wt.exports=function(t,e){return new re(t,e).beautify()},Wt.exports.defaultOptions=function(){return new le};var ae={exports:{}},de={},ce={},ue=b.Options;function pe(t){ue.call(this,t,"html"),1===this.templating.length&&"auto"===this.templating[0]&&(this.templating=["django","erb","handlebars","php"]),this.indent_inner_html=this._get_boolean("indent_inner_html"),this.indent_body_inner_html=this._get_boolean("indent_body_inner_html",!0),this.indent_head_inner_html=this._get_boolean("indent_head_inner_html",!0),this.indent_handlebars=this._get_boolean("indent_handlebars",!0),this.wrap_attributes=this._get_selection("wrap_attributes",["auto","force","force-aligned","force-expand-multiline","aligned-multiple","preserve","preserve-aligned"]),this.wrap_attributes_indent_size=this._get_number("wrap_attributes_indent_size",this.indent_size),this.extra_liners=this._get_array("extra_liners",["head","body","/html"]),this.inline=this._get_array("inline",["a","abbr","area","audio","b","bdi","bdo","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","i","iframe","img","input","ins","kbd","keygen","label","map","mark","math","meter","noscript","object","output","progress","q","ruby","s","samp","select","small","span","strong","sub","sup","svg","template","textarea","time","u","var","video","wbr","text","acronym","big","strike","tt"]),this.void_elements=this._get_array("void_elements",["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr","!doctype","?xml","basefont","isindex"]),this.unformatted=this._get_array("unformatted",[]),this.content_unformatted=this._get_array("content_unformatted",["pre","textarea"]),this.unformatted_content_delimiter=this._get_characters("unformatted_content_delimiter"),this.indent_scripts=this._get_selection("indent_scripts",["normal","keep","separate"])}pe.prototype=new ue,ce.Options=pe;var he={},ve=q.Tokenizer,fe=q.TOKEN,ge=U.Directives,me=j.TemplatablePattern,be=R.Pattern,ye={TAG_OPEN:"TK_TAG_OPEN",TAG_CLOSE:"TK_TAG_CLOSE",ATTRIBUTE:"TK_ATTRIBUTE",EQUALS:"TK_EQUALS",VALUE:"TK_VALUE",COMMENT:"TK_COMMENT",TEXT:"TK_TEXT",UNKNOWN:"TK_UNKNOWN",START:fe.START,RAW:fe.RAW,EOF:fe.EOF},xe=new ge(/<\!--/,/-->/),_e=function(t,e){ve.call(this,t,e),this._current_tag_name="";var i=new me(this._input).read_options(this._options),n=new be(this._input);if(this.__patterns={word:i.until(/[\n\r\t <]/),single_quote:i.until_after(/'/),double_quote:i.until_after(/"/),attribute:i.until(/[\n\r\t =>]|\/>/),element_name:i.until(/[\n\r\t >\/]/),handlebars_comment:n.starting_with(/{{!--/).until_after(/--}}/),handlebars:n.starting_with(/{{/).until_after(/}}/),handlebars_open:n.until(/[\n\r\t }]/),handlebars_raw_close:n.until(/}}/),comment:n.starting_with(/<!--/).until_after(/-->/),cdata:n.starting_with(/<!\[CDATA\[/).until_after(/]]>/),conditional_comment:n.starting_with(/<!\[/).until_after(/]>/),processing:n.starting_with(/<\?/).until_after(/\?>/)},this._options.indent_handlebars&&(this.__patterns.word=this.__patterns.word.exclude("handlebars")),this._unformatted_content_delimiter=null,this._options.unformatted_content_delimiter){var o=this._input.get_literal_regexp(this._options.unformatted_content_delimiter);this.__patterns.unformatted_content_delimiter=n.matching(o).until_after(o)}};(_e.prototype=new ve)._is_comment=function(t){return!1},_e.prototype._is_opening=function(t){return t.type===ye.TAG_OPEN},_e.prototype._is_closing=function(t,e){return t.type===ye.TAG_CLOSE&&e&&((">"===t.text||"/>"===t.text)&&"<"===e.text[0]||"}}"===t.text&&"{"===e.text[0]&&"{"===e.text[1])},_e.prototype._reset=function(){this._current_tag_name=""},_e.prototype._get_next_token=function(t,e){var i=null;this._readWhitespace();var n=this._input.peek();return null===n?this._create_token(ye.EOF,""):i=(i=(i=(i=(i=(i=(i=(i=(i=i||this._read_open_handlebars(n,e))||this._read_attribute(n,t,e))||this._read_close(n,e))||this._read_raw_content(n,t,e))||this._read_content_word(n))||this._read_comment_or_cdata(n))||this._read_processing(n))||this._read_open(n,e))||this._create_token(ye.UNKNOWN,this._input.next())},_e.prototype._read_comment_or_cdata=function(t){var e=null,i=null,n=null;"<"===t&&("!"===this._input.peek(1)&&((i=this.__patterns.comment.read())?(n=xe.get_directives(i))&&"start"===n.ignore&&(i+=xe.readIgnored(this._input)):i=this.__patterns.cdata.read()),i&&((e=this._create_token(ye.COMMENT,i)).directives=n));return e},_e.prototype._read_processing=function(t){var e=null,i=null;if("<"===t){var n=this._input.peek(1);"!"!==n&&"?"!==n||(i=(i=this.__patterns.conditional_comment.read())||this.__patterns.processing.read()),i&&((e=this._create_token(ye.COMMENT,i)).directives=null)}return e},_e.prototype._read_open=function(t,e){var i=null,n=null;return e||"<"===t&&(i=this._input.next(),"/"===this._input.peek()&&(i+=this._input.next()),i+=this.__patterns.element_name.read(),n=this._create_token(ye.TAG_OPEN,i)),n},_e.prototype._read_open_handlebars=function(t,e){var i=null,n=null;return e||this._options.indent_handlebars&&"{"===t&&"{"===this._input.peek(1)&&("!"===this._input.peek(2)?(i=(i=this.__patterns.handlebars_comment.read())||this.__patterns.handlebars.read(),n=this._create_token(ye.COMMENT,i)):(i=this.__patterns.handlebars_open.read(),n=this._create_token(ye.TAG_OPEN,i))),n},_e.prototype._read_close=function(t,e){var i=null,n=null;return e&&("<"===e.text[0]&&(">"===t||"/"===t&&">"===this._input.peek(1))?(i=this._input.next(),"/"===t&&(i+=this._input.next()),n=this._create_token(ye.TAG_CLOSE,i)):"{"===e.text[0]&&"}"===t&&"}"===this._input.peek(1)&&(this._input.next(),this._input.next(),n=this._create_token(ye.TAG_CLOSE,"}}"))),n},_e.prototype._read_attribute=function(t,e,i){var n=null,o="";if(i&&"<"===i.text[0])if("="===t)n=this._create_token(ye.EQUALS,this._input.next());else if('"'===t||"'"===t){var s=this._input.next();s+='"'===t?this.__patterns.double_quote.read():this.__patterns.single_quote.read(),n=this._create_token(ye.VALUE,s)}else(o=this.__patterns.attribute.read())&&(n=e.type===ye.EQUALS?this._create_token(ye.VALUE,o):this._create_token(ye.ATTRIBUTE,o));return n},_e.prototype._is_content_unformatted=function(t){return-1===this._options.void_elements.indexOf(t)&&(-1!==this._options.content_unformatted.indexOf(t)||-1!==this._options.unformatted.indexOf(t))},_e.prototype._read_raw_content=function(t,e,i){var n="";if(i&&"{"===i.text[0])n=this.__patterns.handlebars_raw_close.read();else if(e.type===ye.TAG_CLOSE&&"<"===e.opened.text[0]&&"/"!==e.text[0]){var o=e.opened.text.substr(1).toLowerCase();if("script"===o||"style"===o){var s=this._read_comment_or_cdata(t);if(s)return s.type=ye.TEXT,s;n=this._input.readUntil(new RegExp("</"+o+"[\\n\\r\\t ]*?>","ig"))}else this._is_content_unformatted(o)&&(n=this._input.readUntil(new RegExp("</"+o+"[\\n\\r\\t ]*?>","ig")))}return n?this._create_token(ye.TEXT,n):null},_e.prototype._read_content_word=function(t){var e="";if(this._options.unformatted_content_delimiter&&t===this._options.unformatted_content_delimiter[0]&&(e=this.__patterns.unformatted_content_delimiter.read()),e||(e=this.__patterns.word.read()),e)return this._create_token(ye.TEXT,e)},he.Tokenizer=_e,he.TOKEN=ye;var we=ce.Options,Se=r.Output,Ce=he.Tokenizer,ke=he.TOKEN,Ee=/\r\n|[\r\n]/,Ae=/\r\n|[\r\n]/g,Le=function(t,e){this.indent_level=0,this.alignment_size=0,this.max_preserve_newlines=t.max_preserve_newlines,this.preserve_newlines=t.preserve_newlines,this._output=new Se(t,e)};Le.prototype.current_line_has_match=function(t){return this._output.current_line.has_match(t)},Le.prototype.set_space_before_token=function(t,e){this._output.space_before_token=t,this._output.non_breaking_space=e},Le.prototype.set_wrap_point=function(){this._output.set_indent(this.indent_level,this.alignment_size),this._output.set_wrap_point()},Le.prototype.add_raw_token=function(t){this._output.add_raw_token(t)},Le.prototype.print_preserved_newlines=function(t){var e=0;t.type!==ke.TEXT&&t.previous.type!==ke.TEXT&&(e=t.newlines?1:0),this.preserve_newlines&&(e=t.newlines<this.max_preserve_newlines+1?t.newlines:this.max_preserve_newlines+1);for(var i=0;i<e;i++)this.print_newline(i>0);return 0!==e},Le.prototype.traverse_whitespace=function(t){return!(!t.whitespace_before&&!t.newlines)&&(this.print_preserved_newlines(t)||(this._output.space_before_token=!0),!0)},Le.prototype.previous_token_wrapped=function(){return this._output.previous_token_wrapped},Le.prototype.print_newline=function(t){this._output.add_new_line(t)},Le.prototype.print_token=function(t){t.text&&(this._output.set_indent(this.indent_level,this.alignment_size),this._output.add_token(t.text))},Le.prototype.indent=function(){this.indent_level++},Le.prototype.get_full_indent=function(t){return(t=this.indent_level+(t||0))<1?"":this._output.get_indent_string(t)};var qe=function(t,e){var i=null,n=null;return e.closed?("script"===t?i="text/javascript":"style"===t&&(i="text/css"),(i=function(t){for(var e=null,i=t.next;i.type!==ke.EOF&&t.closed!==i;){if(i.type===ke.ATTRIBUTE&&"type"===i.text){i.next&&i.next.type===ke.EQUALS&&i.next.next&&i.next.next.type===ke.VALUE&&(e=i.next.next.text);break}i=i.next}return e}(e)||i).search("text/css")>-1?n="css":i.search(/module|((text|application|dojo)\/(x-)?(javascript|ecmascript|jscript|livescript|(ld\+)?json|method|aspect))/)>-1?n="javascript":i.search(/(text|application|dojo)\/(x-)?(html)/)>-1?n="html":i.search(/test\/null/)>-1&&(n="null"),n):null};function Te(t,e){return-1!==e.indexOf(t)}function Me(t,e,i){this.parent=t||null,this.tag=e?e.tag_name:"",this.indent_level=i||0,this.parser_token=e||null}function Oe(t){this._printer=t,this._current_frame=null}function Re(t,e,i,n){this._source_text=t||"",e=e||{},this._js_beautify=i,this._css_beautify=n,this._tag_stack=null;var o=new we(e,"html");this._options=o,this._is_wrap_attributes_force="force"===this._options.wrap_attributes.substr(0,"force".length),this._is_wrap_attributes_force_expand_multiline="force-expand-multiline"===this._options.wrap_attributes,this._is_wrap_attributes_force_aligned="force-aligned"===this._options.wrap_attributes,this._is_wrap_attributes_aligned_multiple="aligned-multiple"===this._options.wrap_attributes,this._is_wrap_attributes_preserve="preserve"===this._options.wrap_attributes.substr(0,"preserve".length),this._is_wrap_attributes_preserve_aligned="preserve-aligned"===this._options.wrap_attributes}Oe.prototype.get_parser_token=function(){return this._current_frame?this._current_frame.parser_token:null},Oe.prototype.record_tag=function(t){var e=new Me(this._current_frame,t,this._printer.indent_level);this._current_frame=e},Oe.prototype._try_pop_frame=function(t){var e=null;return t&&(e=t.parser_token,this._printer.indent_level=t.indent_level,this._current_frame=t.parent),e},Oe.prototype._get_frame=function(t,e){for(var i=this._current_frame;i&&-1===t.indexOf(i.tag);){if(e&&-1!==e.indexOf(i.tag)){i=null;break}i=i.parent}return i},Oe.prototype.try_pop=function(t,e){var i=this._get_frame([t],e);return this._try_pop_frame(i)},Oe.prototype.indent_to_tag=function(t){var e=this._get_frame(t);e&&(this._printer.indent_level=e.indent_level)},Re.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var t=this._source_text,e=this._options.eol;"auto"===this._options.eol&&(e="\n",t&&Ee.test(t)&&(e=t.match(Ee)[0]));var i=(t=t.replace(Ae,"\n")).match(/^[\t ]*/)[0],n={text:"",type:""},o=new Ne,s=new Le(this._options,i),r=new Ce(t,this._options).tokenize();this._tag_stack=new Oe(s);for(var l=null,a=r.next();a.type!==ke.EOF;)a.type===ke.TAG_OPEN||a.type===ke.COMMENT?o=l=this._handle_tag_open(s,a,o,n):a.type===ke.ATTRIBUTE||a.type===ke.EQUALS||a.type===ke.VALUE||a.type===ke.TEXT&&!o.tag_complete?l=this._handle_inside_tag(s,a,o,r):a.type===ke.TAG_CLOSE?l=this._handle_tag_close(s,a,o):a.type===ke.TEXT?l=this._handle_text(s,a,o):s.add_raw_token(a),n=l,a=r.next();return s._output.get_code(e)},Re.prototype._handle_tag_close=function(t,e,i){var n={text:e.text,type:e.type};return t.alignment_size=0,i.tag_complete=!0,t.set_space_before_token(e.newlines||""!==e.whitespace_before,!0),i.is_unformatted?t.add_raw_token(e):("<"===i.tag_start_char&&(t.set_space_before_token("/"===e.text[0],!0),this._is_wrap_attributes_force_expand_multiline&&i.has_wrapped_attrs&&t.print_newline(!1)),t.print_token(e)),!i.indent_content||i.is_unformatted||i.is_content_unformatted||(t.indent(),i.indent_content=!1),i.is_inline_element||i.is_unformatted||i.is_content_unformatted||t.set_wrap_point(),n},Re.prototype._handle_inside_tag=function(t,e,i,n){var o=i.has_wrapped_attrs,s={text:e.text,type:e.type};if(t.set_space_before_token(e.newlines||""!==e.whitespace_before,!0),i.is_unformatted)t.add_raw_token(e);else if("{"===i.tag_start_char&&e.type===ke.TEXT)t.print_preserved_newlines(e)?(e.newlines=0,t.add_raw_token(e)):t.print_token(e);else{if(e.type===ke.ATTRIBUTE?(t.set_space_before_token(!0),i.attr_count+=1):(e.type===ke.EQUALS||e.type===ke.VALUE&&e.previous.type===ke.EQUALS)&&t.set_space_before_token(!1),e.type===ke.ATTRIBUTE&&"<"===i.tag_start_char&&((this._is_wrap_attributes_preserve||this._is_wrap_attributes_preserve_aligned)&&(t.traverse_whitespace(e),o=o||0!==e.newlines),this._is_wrap_attributes_force)){var r=i.attr_count>1;if(this._is_wrap_attributes_force_expand_multiline&&1===i.attr_count){var l,a=!0,d=0;do{if((l=n.peek(d)).type===ke.ATTRIBUTE){a=!1;break}d+=1}while(d<4&&l.type!==ke.EOF&&l.type!==ke.TAG_CLOSE);r=!a}r&&(t.print_newline(!1),o=!0)}t.print_token(e),o=o||t.previous_token_wrapped(),i.has_wrapped_attrs=o}return s},Re.prototype._handle_text=function(t,e,i){var n={text:e.text,type:"TK_CONTENT"};return i.custom_beautifier_name?this._print_custom_beatifier_text(t,e,i):i.is_unformatted||i.is_content_unformatted?t.add_raw_token(e):(t.traverse_whitespace(e),t.print_token(e)),n},Re.prototype._print_custom_beatifier_text=function(t,e,i){var n=this;if(""!==e.text){var o,s=e.text,r=1,l="",a="";"javascript"===i.custom_beautifier_name&&"function"==typeof this._js_beautify?o=this._js_beautify:"css"===i.custom_beautifier_name&&"function"==typeof this._css_beautify?o=this._css_beautify:"html"===i.custom_beautifier_name&&(o=function(t,e){return new Re(t,e,n._js_beautify,n._css_beautify).beautify()}),"keep"===this._options.indent_scripts?r=0:"separate"===this._options.indent_scripts&&(r=-t.indent_level);var d=t.get_full_indent(r);if(s=s.replace(/\n[ \t]*$/,""),"html"!==i.custom_beautifier_name&&"<"===s[0]&&s.match(/^(<!--|<!\[CDATA\[)/)){var c=/^(<!--[^\n]*|<!\[CDATA\[)(\n?)([ \t\n]*)([\s\S]*)(-->|]]>)$/.exec(s);if(!c)return void t.add_raw_token(e);l=d+c[1]+"\n",s=c[4],c[5]&&(a=d+c[5]),s=s.replace(/\n[ \t]*$/,""),(c[2]||-1!==c[3].indexOf("\n"))&&(c=c[3].match(/[ \t]+$/))&&(e.whitespace_before=c[0])}if(s)if(o){var u=function(){this.eol="\n"};u.prototype=this._options.raw_options,s=o(d+s,new u)}else{var p=e.whitespace_before;p&&(s=s.replace(new RegExp("\n("+p+")?","g"),"\n")),s=d+s.replace(/\n/g,"\n"+d)}l&&(s=s?l+s+"\n"+a:l+a),t.print_newline(!1),s&&(e.text=s,e.whitespace_before="",e.newlines=0,t.add_raw_token(e),t.print_newline(!0))}},Re.prototype._handle_tag_open=function(t,e,i,n){var o=this._get_tag_open_token(e);return!i.is_unformatted&&!i.is_content_unformatted||i.is_empty_element||e.type!==ke.TAG_OPEN||0!==e.text.indexOf("</")?(t.traverse_whitespace(e),this._set_tag_position(t,e,o,i,n),o.is_inline_element||t.set_wrap_point(),t.print_token(e)):(t.add_raw_token(e),o.start_tag_token=this._tag_stack.try_pop(o.tag_name)),(this._is_wrap_attributes_force_aligned||this._is_wrap_attributes_aligned_multiple||this._is_wrap_attributes_preserve_aligned)&&(o.alignment_size=e.text.length+1),o.tag_complete||o.is_unformatted||(t.alignment_size=o.alignment_size),o};var Ne=function(t,e){var i;(this.parent=t||null,this.text="",this.type="TK_TAG_OPEN",this.tag_name="",this.is_inline_element=!1,this.is_unformatted=!1,this.is_content_unformatted=!1,this.is_empty_element=!1,this.is_start_tag=!1,this.is_end_tag=!1,this.indent_content=!1,this.multiline_content=!1,this.custom_beautifier_name=null,this.start_tag_token=null,this.attr_count=0,this.has_wrapped_attrs=!1,this.alignment_size=0,this.tag_complete=!1,this.tag_start_char="",this.tag_check="",e)?(this.tag_start_char=e.text[0],this.text=e.text,"<"===this.tag_start_char?(i=e.text.match(/^<([^\s>]*)/),this.tag_check=i?i[1]:""):(i=e.text.match(/^{{(?:[\^]|#\*?)?([^\s}]+)/),this.tag_check=i?i[1]:"","{{#>"===e.text&&">"===this.tag_check&&null!==e.next&&(this.tag_check=e.next.text)),this.tag_check=this.tag_check.toLowerCase(),e.type===ke.COMMENT&&(this.tag_complete=!0),this.is_start_tag="/"!==this.tag_check.charAt(0),this.tag_name=this.is_start_tag?this.tag_check:this.tag_check.substr(1),this.is_end_tag=!this.is_start_tag||e.closed&&"/>"===e.closed.text,this.is_end_tag=this.is_end_tag||"{"===this.tag_start_char&&(this.text.length<3||/[^#\^]/.test(this.text.charAt(2)))):this.tag_complete=!0};Re.prototype._get_tag_open_token=function(t){var e=new Ne(this._tag_stack.get_parser_token(),t);return e.alignment_size=this._options.wrap_attributes_indent_size,e.is_end_tag=e.is_end_tag||Te(e.tag_check,this._options.void_elements),e.is_empty_element=e.tag_complete||e.is_start_tag&&e.is_end_tag,e.is_unformatted=!e.tag_complete&&Te(e.tag_check,this._options.unformatted),e.is_content_unformatted=!e.is_empty_element&&Te(e.tag_check,this._options.content_unformatted),e.is_inline_element=Te(e.tag_name,this._options.inline)||"{"===e.tag_start_char,e},Re.prototype._set_tag_position=function(t,e,i,n,o){if(i.is_empty_element||(i.is_end_tag?i.start_tag_token=this._tag_stack.try_pop(i.tag_name):(this._do_optional_end_element(i)&&(i.is_inline_element||t.print_newline(!1)),this._tag_stack.record_tag(i),"script"!==i.tag_name&&"style"!==i.tag_name||i.is_unformatted||i.is_content_unformatted||(i.custom_beautifier_name=qe(i.tag_check,e)))),Te(i.tag_check,this._options.extra_liners)&&(t.print_newline(!1),t._output.just_added_blankline()||t.print_newline(!0)),i.is_empty_element){if("{"===i.tag_start_char&&"else"===i.tag_check)this._tag_stack.indent_to_tag(["if","unless","each"]),i.indent_content=!0,t.current_line_has_match(/{{#if/)||t.print_newline(!1);"!--"===i.tag_name&&o.type===ke.TAG_CLOSE&&n.is_end_tag&&-1===i.text.indexOf("\n")||(i.is_inline_element||i.is_unformatted||t.print_newline(!1),this._calcluate_parent_multiline(t,i))}else if(i.is_end_tag){var s=!1;s=(s=i.start_tag_token&&i.start_tag_token.multiline_content)||!i.is_inline_element&&!(n.is_inline_element||n.is_unformatted)&&!(o.type===ke.TAG_CLOSE&&i.start_tag_token===n)&&"TK_CONTENT"!==o.type,(i.is_content_unformatted||i.is_unformatted)&&(s=!1),s&&t.print_newline(!1)}else i.indent_content=!i.custom_beautifier_name,"<"===i.tag_start_char&&("html"===i.tag_name?i.indent_content=this._options.indent_inner_html:"head"===i.tag_name?i.indent_content=this._options.indent_head_inner_html:"body"===i.tag_name&&(i.indent_content=this._options.indent_body_inner_html)),i.is_inline_element||i.is_unformatted||"TK_CONTENT"===o.type&&!i.is_content_unformatted||t.print_newline(!1),this._calcluate_parent_multiline(t,i)},Re.prototype._calcluate_parent_multiline=function(t,e){!e.parent||!t._output.just_added_newline()||(e.is_inline_element||e.is_unformatted)&&e.parent.is_inline_element||(e.parent.multiline_content=!0)};var Be=["address","article","aside","blockquote","details","div","dl","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hr","main","nav","ol","p","pre","section","table","ul"],$e=["a","audio","del","ins","map","noscript","video"];Re.prototype._do_optional_end_element=function(t){var e=null;if(!t.is_empty_element&&t.is_start_tag&&t.parent){if("body"===t.tag_name)e=e||this._tag_stack.try_pop("head");else if("li"===t.tag_name)e=e||this._tag_stack.try_pop("li",["ol","ul"]);else if("dd"===t.tag_name||"dt"===t.tag_name)e=(e=e||this._tag_stack.try_pop("dt",["dl"]))||this._tag_stack.try_pop("dd",["dl"]);else if("p"===t.parent.tag_name&&-1!==Be.indexOf(t.tag_name)){var i=t.parent.parent;i&&-1!==$e.indexOf(i.tag_name)||(e=e||this._tag_stack.try_pop("p"))}else"rp"===t.tag_name||"rt"===t.tag_name?e=(e=e||this._tag_stack.try_pop("rt",["ruby","rtc"]))||this._tag_stack.try_pop("rp",["ruby","rtc"]):"optgroup"===t.tag_name?e=e||this._tag_stack.try_pop("optgroup",["select"]):"option"===t.tag_name?e=e||this._tag_stack.try_pop("option",["select","datalist","optgroup"]):"colgroup"===t.tag_name?e=e||this._tag_stack.try_pop("caption",["table"]):"thead"===t.tag_name?e=(e=e||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]):"tbody"===t.tag_name||"tfoot"===t.tag_name?e=(e=(e=(e=e||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("thead",["table"]))||this._tag_stack.try_pop("tbody",["table"]):"tr"===t.tag_name?e=(e=(e=e||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("tr",["table","thead","tbody","tfoot"]):"th"!==t.tag_name&&"td"!==t.tag_name||(e=(e=e||this._tag_stack.try_pop("td",["table","thead","tbody","tfoot","tr"]))||this._tag_stack.try_pop("th",["table","thead","tbody","tfoot","tr"]));return t.parent=this._tag_stack.get_parser_token(),e}},de.Beautifier=Re;var Ie=de.Beautifier,He=ce.Options;ae.exports=function(t,e,i,n){return new Ie(t,e,i,n).beautify()},ae.exports.defaultOptions=function(){return new He};var De=o.exports,ze=Wt.exports,Pe=ae.exports;function Fe(t,e,i,n){return Pe(t,e,i=i||De,n=n||ze)}Fe.defaultOptions=Pe.defaultOptions,n.js=De,n.css=ze,n.html=Fe,function(t){var e=n;e.js_beautify=e.js,e.css_beautify=e.css,e.html_beautify=e.html,t.exports=function(t,e,i){var n=function(e,i){return t.js_beautify(e,i)};return n.js=t.js_beautify,n.css=e.css_beautify,n.html=i.html_beautify,n.js_beautify=t.js_beautify,n.css_beautify=e.css_beautify,n.html_beautify=i.html_beautify,n}(e,e,e)}(i);var Ue=i.exports;const We=new e;let je={};class Ge{constructor(t){this.builder=t;const e=this.builder.util,i=this.builder.builderStuff;let n=i.querySelector(".viewhtml");if(!n){const t=`<div class="is-modal viewhtml">\n <div class="is-modal-content">\n <textarea class="tabSupport" style="width:100%;height:calc(100% - 50px);border:none;margin:0;box-sizing:border-box;"></textarea>\n <button title="${e.out("Enlarge")}" class="input-html-larger" style="width:35px;height:35px;position:absolute;right:20px;top:0;background:transparent;"><svg class="is-icon-flex" style="width:19px;height:19px;"><use xlink:href="#ion-arrow-expand"></use></svg></button>\n <div class="is-modal-footer" style="border-top:1px solid ${this.builder.styleSeparatorColor};width:100%;height:50px;position:absolute;left:0;bottom:0;overflow:hidden;text-align:right">\n <button title="${e.out("Cancel")}" class="input-cancel classic-secondary">${e.out("Cancel")}</button>\n <button title="${e.out("Ok")}" class="input-ok classic-primary">${e.out("Ok")}</button>\n </div>\n </div>\n </div>\n \n <div class="is-modal viewhtmlformatted">\n <div class="is-modal-content">\n <iframe id="ifrHtmlFormatted" style="width:100%;height:100%;border:none;margin:0;box-sizing:border-box;" src="about:blank"></iframe>\n <textarea style="position:absolute;display:none;"></textarea>\n <button title=" out('Enlarge') + '" class="input-html-larger" style="width:35px;height:35px;position:absolute;right:20px;top:0;background:transparent;"><svg class="is-icon-flex" style="width:19px;height:19px;"><use xlink:href="#ion-arrow-expand"></use></svg></button>\n <div class="is-modal-footer" style="border-top:1px solid ${this.builder.styleSeparatorColor};display:none">\n <button title="${e.out("Cancel")}" class="input-cancel classic-secondary">${e.out("Cancel")}</button>\n <button title="${e.out("Ok")}" class="input-ok classic-primary">${e.out("Ok")}</button>\n </div>\n </div>\n </div>\n\n <div class="is-modal viewhtmllarger">\n <div class="is-modal-content">\n <iframe id="ifrHtml" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>\n </div>\n </div>\n\n <div class="is-modal viewhtmlnormal">\n <div class="is-modal-content">\n <button title="${e.out("Enlarge")}" class="input-html-larger" style="width:35px;height:35px;position:absolute;right:20px;top:0;background:transparent;"><svg class="is-icon-flex" style="width:19px;height:19px;"><use xlink:href="#ion-arrow-expand"></use></svg></button>\n <iframe id="ifrHtml" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>\n </div>\n </div>\n \n `;We.appendHtml(i,t),n=i.querySelector(".viewhtml");let o=i.querySelector(".viewhtmlformatted"),s=i.querySelector(".viewhtmlnormal"),r=n.querySelector(".input-html-larger");We.addEventListener(r,"click",(()=>{let t=n.querySelector("textarea");t.setAttribute("data-source-active","1"),t.setAttribute("data-source-ok",".viewhtml .input-ok"),t.setAttribute("data-source-cancel",".viewhtml .input-cancel"),this.viewHtmlLarger()})),r=o.querySelector(".input-html-larger"),We.addEventListener(r,"click",(()=>{We.hasClass(o,"is-modal-full")?We.removeClass(o,"is-modal-full"):We.addClass(o,"is-modal-full")})),r=s.querySelector(".input-html-larger"),We.addEventListener(r,"click",(()=>{We.hasClass(s,"is-modal-full")?We.removeClass(s,"is-modal-full"):We.addClass(s,"is-modal-full")}))}}viewHtmlNormal(){const t=this.builder.util,e=this.builder.builderStuff.querySelector(".viewhtmlnormal");e.querySelector("iframe").outerHTML='<iframe id="ifrHtml" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>';var i=e.querySelector("iframe").contentWindow.document;i.open(),i.write(this.getIframeHtml()),i.close(),t.showModal(e,!0,null,!1)}viewHtmlLarger(){const t=this.builder.util,e=this.builder.builderStuff.querySelector(".viewhtmllarger");e.querySelector("iframe").outerHTML='<iframe id="ifrHtml" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>';var i=e.querySelector("iframe").contentWindow.document;i.open(),i.write(this.getIframeHtml()),i.close(),t.showModal(e,!0,null,!1)}view(t,e){const i=this.builder.util,n=this.builder.builderStuff;let o;if(o=this.builder.opts.htmlSyntaxHighlighting?n.querySelector(".viewhtmlformatted"):n.querySelector(".viewhtml"),o.querySelector(".is-modal-footer").innerHTML=`<button title="${i.out("Cancel")}" class="input-cancel classic-secondary">${i.out("Cancel")}</button>\n <button title="${i.out("Ok")}" class="input-ok classic-primary">${i.out("Ok")}</button>`,i.showModal(o,!0),"cell"===t){const t=i.cellSelected();if(!t)return;o.querySelector("textarea").value=this.readHtml(t,!0)}if("row"===t){const t=i.cellSelected();if(!t)return;const e=t.parentNode;o.querySelector("textarea").value=this.readHtml(e,!0),We.removeClass(e,"row-outline");let s=n.querySelector(".is-column-tool");We.removeClass(s,"active")}if("full"===t){if(e);else{const t=document.querySelectorAll(this.builder.opts.container);if(t.length>1){const n=i.cellSelected();e=n?n.parentNode.parentNode:t[0]}else e=t[0];if(""!==this.builder.opts.page){const t=document.querySelector(this.builder.opts.page);t&&(e=t)}}o.querySelector("textarea").value=this.readHtml(e,!0)}let s=o.querySelector(".input-ok");if(We.addEventListener(s,"click",(()=>{this.builder.uo.saveForUndo();var n=o.querySelector("textarea").value;if(n=this.fromViewToActual(n),"cell"===t){i.cellSelected().innerHTML=n;let t=document.querySelector(".builder-active");t&&this.builder.applyBehaviorOn(t),this.builder.opts.onChange(),this.builder.opts.onRender()}if("row"===t){i.cellSelected().parentNode.innerHTML=n;let t=document.querySelector(".builder-active");t&&this.builder.applyBehaviorOn(t),this.builder.opts.onChange(),this.builder.opts.onRender()}if("full"===t){e.innerHTML="";var s=document.createRange();s.setStart(e,0),e.appendChild(s.createContextualFragment(n));let t=document.querySelector(".builder-active");t&&this.builder.applyBehaviorOn(t),this.builder.opts.onChange(),this.builder.opts.onRender(),i.clearActiveCell()}i.clearControls(),i.hideModal(o)})),s=o.querySelector(".input-cancel"),We.addEventListener(s,"click",(()=>{i.hideModal(o)})),this.builder.opts.htmlSyntaxHighlighting){let t=o.querySelector("textarea");t.setAttribute("data-source-active","1"),t.setAttribute("data-source-ok",".viewhtmlformatted .input-ok"),t.setAttribute("data-source-cancel",".viewhtmlformatted .input-cancel"),o.querySelector("iframe").outerHTML='<iframe id="ifrHtmlFormatted" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>';var r=o.querySelector("iframe").contentWindow.document;r.open(),r.write(this.getIframeHtml()),r.close()}n.querySelector(".is-pop.columnmore").style.display="",n.querySelector(".is-pop.rowmore").style.display=""}fromViewToActual(t){for(var e in je)t=t.replace(e,je[e]);return t}readHtml(t,e,i){if(this.builder.opts.absolutePath){let e=t.querySelectorAll("a");Array.prototype.forEach.call(e,(t=>{let e=t.href;t.setAttribute("href",e)}));let i=t.querySelectorAll("img");Array.prototype.forEach.call(i,(t=>{let e=t.src;t.setAttribute("src",e)}))}const n=this.builder.util,o=this.builder.builderStuff;let s=o.querySelector("#tmp_content");s&&o.removeChild(s),s=o.querySelector("#tmp_buildercontent"),s&&o.removeChild(s);let r='<div id="tmp_content" style="position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;visibility:hidden;"></div>\n <div id="tmp_buildercontent" style="position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;visibility:hidden;"></div>';We.appendHtml(o,r);let l=o.querySelector("#tmp_content");l.innerHTML=t.innerHTML;let a=l.querySelectorAll("[data-html]");Array.prototype.forEach.call(a,(t=>{let e=1,i=t.querySelectorAll("[data-subblock]");Array.prototype.forEach.call(i,(i=>{let n=i.innerHTML;t.setAttribute("data-html-"+e,encodeURIComponent(n)),e++}))})),a=l.querySelectorAll("[data-html]"),Array.prototype.forEach.call(a,(t=>{let e=decodeURIComponent(t.getAttribute("data-html"));e=e.replace(/{id}/g,n.makeId()),t.innerHTML=e;let i=t.querySelectorAll("[data-subblock]");var o=1;Array.prototype.forEach.call(i,(e=>{e.innerHTML=void 0===t.getAttribute("data-html-"+o)?"":decodeURIComponent(t.getAttribute("data-html-"+o)),o++}))})),e&&(je={},a=l.querySelectorAll("[data-html]"),Array.prototype.forEach.call(a,(t=>{let e=n.makeId();je[e]=t.getAttribute("data-html"),t.setAttribute("data-html",e);for(let i=1;i<=20;i++)void 0!==t.getAttribute("data-html-"+i)&&(e=n.makeId(),je[e]=t.getAttribute("data-html-"+i),t.getAttribute("data-html-"+i,e));void 0!==t.getAttribute("data-settings")&&(e=n.makeId(),je[e]=t.getAttribute("data-settings"),t.getAttribute("data-settings",e))})));let d=l.querySelectorAll(".is-builder");Array.prototype.forEach.call(d,(t=>{t.style.transform="",t.style.WebkitTransform="",t.style.MozTransform="",t.removeAttribute("data-sort"),We.removeClass(t,"builder-active")}));let c=l.querySelectorAll(".sortable-chosen");We.removeClasses(c,"sortable-chosen"),c=l.querySelectorAll(".sortable-ghost"),We.removeClasses(c,"sortable-ghost"),c=l.querySelectorAll(".elm-active"),We.removeClasses(c,"elm-active"),c=l.querySelectorAll(".elm-inspected"),We.removeClasses(c,"elm-inspected"),c=l.querySelectorAll(".cell-active"),We.removeClasses(c,"cell-active"),c=l.querySelectorAll(".row-active"),We.removeClasses(c,"row-active"),c=l.querySelectorAll(".row-outline"),We.removeClasses(c,"row-outline"),c=l.querySelectorAll(".is-builder"),We.removeClasses(c,"is-builder"),c=l.querySelectorAll(".row-outline"),We.removeClasses(c,"row-outline"),c=l.querySelectorAll("[data-click]"),We.removeAttributes(c,"data-click"),c=l.querySelectorAll("[contenteditable]"),We.removeAttributes(c,"contenteditable"),c=l.querySelectorAll("[draggridoutline]"),We.removeAttributes(c,"draggridoutline"),c=l.querySelectorAll("[between-blocks-left]"),We.removeAttributes(c,"between-blocks-left"),c=l.querySelectorAll("[between-blocks-center]"),We.removeAttributes(c,"between-blocks-center"),c=l.querySelectorAll("[hideelementhighlight]"),We.removeAttributes(c,"hideelementhighlight"),c=l.querySelectorAll("[data-module-active]"),We.removeAttributes(c,"data-module-active"),c=l.querySelectorAll("[draggable]"),We.removeAttributes(c,"draggable"),c=l.querySelectorAll("[data-animated]"),We.removeAttributes(c,"data-animated"),c=l.querySelectorAll("[data-saveforundo]"),We.removeAttributes(c,"data-saveforundo"),c=l.querySelectorAll("[hidesnippetaddtool]"),We.removeAttributes(c,"hidesnippetaddtool"),c=l.querySelectorAll("[gray]"),We.removeAttributes(c,"gray"),c=l.querySelectorAll("[rowoutline]"),We.removeAttributes(c,"rowoutline"),c=l.querySelectorAll("[grayoutline]"),We.removeAttributes(c,"grayoutline"),c=l.querySelectorAll("[hideoutline]"),We.removeAttributes(c,"hideoutline"),c=l.querySelectorAll("[leftrowtool]"),We.removeAttributes(c,"leftrowtool"),c=l.querySelectorAll("[minimal]"),We.removeAttributes(c,"minimal"),c=l.querySelectorAll("[clean]"),We.removeAttributes(c,"clean"),c=l.querySelectorAll("[grideditor]"),We.removeAttributes(c,"grideditor"),c=l.querySelectorAll("[gridoutline]"),We.removeAttributes(c,"gridoutline"),We.removeElements(l.querySelectorAll(".is-row-tool")),We.removeElements(l.querySelectorAll(".is-rowadd-tool")),We.removeElements(l.querySelectorAll(".ovl")),We.removeElements(l.querySelectorAll(".row-add-initial")),c=l.querySelectorAll(".aos-init"),We.removeClasses(c,"aos-init"),c=l.querySelectorAll(".aos-animate"),We.removeClasses(c,"aos-animate"),c=l.querySelectorAll(".skrollable"),We.removeClasses(c,"skrollable"),c=l.querySelectorAll(".skrollable-after"),We.removeClasses(c,"skrollable-after"),c=l.querySelectorAll(".skrollable-before"),We.removeClasses(c,"skrollable-before"),c=l.querySelectorAll(".skrollable-between"),We.removeClasses(c,"skrollable-between");let u=l.querySelectorAll('[class=""]');Array.prototype.forEach.call(u,(t=>{t.removeAttribute("class")}));let p=l.querySelectorAll('[style=""]');Array.prototype.forEach.call(p,(t=>{t.removeAttribute("style")})),We.removeEmptyStyle(l),c=l.querySelectorAll("[data-keep]"),We.removeAttributes(c,"data-keep");let h=l.querySelectorAll("a");if(Array.prototype.forEach.call(h,(t=>{"inline-block"===t.style.display&&1===t.parentNode.childElementCount&&"span"===t.parentNode.tagName.toLowerCase()&&(t.parentNode.outerHTML=t.parentNode.innerHTML)})),r="",i){let t=l.querySelectorAll(".is-dummy");We.removeElements(t),t=l.querySelectorAll(".is-animated"),Array.prototype.forEach.call(t,(t=>{We.removeClass(t,"animated"),We.removeClass(t,"pulse"),We.removeClass(t,"bounceIn"),We.removeClass(t,"fadeIn"),We.removeClass(t,"fadeOut"),We.removeClass(t,"fadeInDown"),We.removeClass(t,"fadeInLeft"),We.removeClass(t,"fadeInRight"),We.removeClass(t,"fadeInUp"),We.removeClass(t,"flipInX"),We.removeClass(t,"flipInY"),We.removeClass(t,"slideInUp"),We.removeClass(t,"slideInDown"),We.removeClass(t,"slideInLeft"),We.removeClass(t,"slideInRight"),We.removeClass(t,"zoomIn"),t.style.animationDelay=""})),t=l.querySelectorAll(".is-appeared"),Array.prototype.forEach.call(t,(t=>{We.removeClass(t,"is-appeared")})),t=l.querySelectorAll(".box-active"),Array.prototype.forEach.call(t,(t=>{We.removeClass(t,"box-active")})),t=l.querySelectorAll(".section-active"),Array.prototype.forEach.call(t,(t=>{We.removeClass(t,"section-active")})),t=l.querySelectorAll(".is-section-tool"),We.removeElements(t);var v="",f="",g="";We.elementChildren(l).forEach((t=>{let e=t;if(We.hasClass(e,"is-section")){var i="";e.getAttribute("class")&&(i=' class="'+e.getAttribute("class")+'"');var n=e.cloneNode(!0),o=n.outerHTML;r+=o,-1===i.indexOf("is-static")?v+=o+"\n\n":f+=o+"\n\n"}else o=(n=e.cloneNode(!0)).outerHTML,r+=o,g+=o})),""!==f&&(f="\x3c!---FOOTER---\x3e\n"+f),""!==g&&(g="\x3c!---OTHERS---\x3e\n"+g);let e=document.querySelector("[data-contentbox"),i=!1;e&&(i=e.settings.disableStaticSection),i||(r=v+f+g)}else r=l.innerHTML.trim(),r=r.replace(/<font/g,"<span").replace(/<\/font/g,"</span");return s=o.querySelector("#tmp_content"),s&&o.removeChild(s),s=o.querySelector("#tmp_buildercontent"),s&&o.removeChild(s),(0,Ue.html)(r)}getIframeHtml(){return`\n <!DOCTYPE HTML>\n <html>\n <head>\n <meta charset="utf-8">\n <title>Fonts</title>\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <meta name="description" content=""> \n <link href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/codemirror.css" rel="stylesheet" type="text/css" />\n \n <style>\n html, body {height:100%}\n body {margin:0;overflow:hidden;}\n \n button {\n width: 51px;\n height: 45px;\n line-height:1;\n display: inline-block;\n box-sizing:border-box;\n margin: 0;\n padding: 0;\n cursor: pointer;\n background-color: ${this.builder.styleModalBackground};\n color: ${this.builder.styleModalColor}; \n border: 1px solid transparent;\n font-family: sans-serif;\n letter-spacing: 1px;\n font-size:12px;\n font-weight:normal;\n // text-transform:uppercase;\n text-align:center; \n position:relative;\n border-radius: 0;\n transition: all ease 0.3s; \n user-select: none;\n -moz-user-select: none;\n -khtml-user-select: none;\n -webkit-user-select: none;\n -o-user-select: none; \n }\n button.classic-primary {display:inline-block;width:auto;height:50px;padding-left:30px;padding-right:30px;min-width:135px;\n background-color: ${this.builder.styleButtonClassicBackground};\n color: ${this.builder.styleButtonClassicColor}; \n }\n button.classic-secondary {display:inline-block;width:auto;height:50px;padding-left:30px;padding-right:30px;\n background:transparent;\n }\n button.classic-primary:hover {\n background-color: ${this.builder.styleButtonClassicBackgroundHover}; \n }\n button:focus {outline:none;}\n textarea {font-family: courier;font-size: 17px;line-height: 2;letter-spacing: 1px;padding:8px 16px;box-sizing:border-box;border:1px solid rgb(199, 199, 199);}\n textarea:focus {outline:none} \n \n #code {display:none;}\n .CodeMirror {\n font-family: courier;\n font-size: 15px;\n line-height:1.9;\n width:100%;height:100%;\n }\n\n /* adjustment => for colored & dark */\n .colored .CodeMirror{\n background:#f5f5f5;\n }\n .colored .CodeMirror-gutters{\n background:#ececec;\n }\n\n .colored-dark .CodeMirror{\n background:#f5f5f5;\n }\n .colored-dark .CodeMirror-gutters{\n background:#ececec;\n }\n\n .dark .CodeMirror{\n background:#f5f5f5;\n }\n .dark .CodeMirror-gutters{\n background:#ececec;\n }\n\n /* base16-light => not used */\n .cm-s-base16-light.CodeMirror{\n background:#eaeaea;//#f5f5f5;\n color:#202020\n }\n .cm-s-base16-light div.CodeMirror-selected{background:#e0e0e0}.cm-s-base16-light .CodeMirror-line::selection,.cm-s-base16-light .CodeMirror-line>span::selection,.cm-s-base16-light .CodeMirror-line>span>span::selection{background:#e0e0e0}.cm-s-base16-light .CodeMirror-line::-moz-selection,.cm-s-base16-light .CodeMirror-line>span::-moz-selection,.cm-s-base16-light .CodeMirror-line>span>span::-moz-selection{background:#e0e0e0}\n .cm-s-base16-light .CodeMirror-gutters{\n background:#dcdcdc; //#f5f5f5;\n border-right:0\n }\n .cm-s-base16-light .CodeMirror-guttermarker{color:#ac4142}.cm-s-base16-light .CodeMirror-guttermarker-subtle{color:#b0b0b0}\n .cm-s-base16-light .CodeMirror-linenumber{\n color:#989898;//#b0b0b0\n }\n .cm-s-base16-light .CodeMirror-cursor{border-left:1px solid #505050}.cm-s-base16-light span.cm-comment{color:#8f5536}.cm-s-base16-light span.cm-atom{color:#aa759f}.cm-s-base16-light span.cm-number{color:#aa759f}.cm-s-base16-light span.cm-attribute,.cm-s-base16-light span.cm-property{color:#90a959}.cm-s-base16-light span.cm-keyword{color:#ac4142}\n .cm-s-base16-light span.cm-string{color:#c37f20}\n .cm-s-base16-light span.cm-variable{color:#90a959}.cm-s-base16-light span.cm-variable-2{color:#6a9fb5}.cm-s-base16-light span.cm-def{color:#d28445}.cm-s-base16-light span.cm-bracket{color:#202020}.cm-s-base16-light span.cm-tag{color:#ac4142}.cm-s-base16-light span.cm-link{color:#aa759f}.cm-s-base16-light span.cm-error{background:#ac4142;color:#505050}.cm-s-base16-light .CodeMirror-activeline-background{background:#dddcdc}.cm-s-base16-light .CodeMirror-matchingbracket{color:#f5f5f5!important;background-color:#6a9fb5!important}\n\n /* Port of TextMate's Blackboard theme => not used */\n\n .cm-s-blackboard.CodeMirror { background: #262626; color: #F8F8F8; } \n .cm-s-blackboard div.CodeMirror-selected { background: #253B76; }\n .cm-s-blackboard .CodeMirror-line::selection, .cm-s-blackboard .CodeMirror-line > span::selection, .cm-s-blackboard .CodeMirror-line > span > span::selection { background: rgba(37, 59, 118, .99); }\n .cm-s-blackboard .CodeMirror-line::-moz-selection, .cm-s-blackboard .CodeMirror-line > span::-moz-selection, .cm-s-blackboard .CodeMirror-line > span > span::-moz-selection { background: rgba(37, 59, 118, .99); }\n .cm-s-blackboard .CodeMirror-gutters { background: #323232; border-right: 0; }\n .cm-s-blackboard .CodeMirror-guttermarker { color: #FBDE2D; }\n .cm-s-blackboard .CodeMirror-guttermarker-subtle { color: #888; }\n .cm-s-blackboard .CodeMirror-linenumber { color: #888; }\n .cm-s-blackboard .CodeMirror-cursor { border-left: 1px solid #A7A7A7; }\n\n .cm-s-blackboard .cm-keyword { color: #FBDE2D; }\n .cm-s-blackboard .cm-atom { color: #D8FA3C; }\n .cm-s-blackboard .cm-number { color: #D8FA3C; }\n .cm-s-blackboard .cm-def { color: #8DA6CE; }\n .cm-s-blackboard .cm-variable { color: #FF6400; }\n .cm-s-blackboard .cm-operator { color: #FBDE2D; }\n .cm-s-blackboard .cm-comment { color: #AEAEAE; }\n .cm-s-blackboard .cm-string { color: #61CE3C; }\n .cm-s-blackboard .cm-string-2 { color: #61CE3C; }\n .cm-s-blackboard .cm-meta { color: #D8FA3C; }\n .cm-s-blackboard .cm-builtin { color: #8DA6CE; }\n .cm-s-blackboard .cm-tag { color: #8DA6CE; }\n .cm-s-blackboard .cm-attribute { color: #8DA6CE; }\n .cm-s-blackboard .cm-header { color: #FF6400; }\n .cm-s-blackboard .cm-hr { color: #AEAEAE; }\n .cm-s-blackboard .cm-link { color: #8DA6CE; }\n .cm-s-blackboard .cm-error { background: #9D1E15; color: #F8F8F8; }\n\n .cm-s-blackboard .CodeMirror-activeline-background { background: #3C3636; }\n .cm-s-blackboard .CodeMirror-matchingbracket { outline:1px solid grey;color:white !important; }\n\n \n /* Scrollbar for modal */\n\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgba(255, 255, 255, 0.3) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgba(255, 255, 255, 0.3);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n </style>\n </head>\n <body${this.builder.styleDark?' class="dark"':""}${this.builder.styleColored?' class="colored"':""}${this.builder.styleColoredDark?' class="colored-dark"':""}${this.builder.styleLight?' class="light"':""}>\n\n <div style="position:absolute;top:0;left:0;width:100%;height:100%;border:none;border-bottom:50px solid transparent;box-sizing: border-box;">\n <textarea id="code"></textarea> \n </div>\n <div style="width:100%;height:50px;position:absolute;left:0;border-top:1px solid ${this.builder.styleSeparatorColor};bottom:0;overflow:hidden;text-align:right">\n <button title="${this.builder.out("Cancel")}" class="input-cancel classic-secondary">${this.builder.out("Cancel")}</button>\n <button title="${this.builder.out("Ok")}" class="input-ok classic-primary">${this.builder.out("Ok")}</button>\n </div>\n \n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/codemirror.js" type="text/javascript"><\/script>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/mode/xml/xml.js" type="text/javascript"><\/script>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/mode/javascript/javascript.js" type="text/javascript"><\/script>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/mode/css/css.js" type="text/javascript"><\/script>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/mode/htmlmixed/htmlmixed.js" type="text/javascript"><\/script>\n <script type="text/javascript">\n \n var source = parent.document.querySelector('textarea[data-source-active]');\n var selectorOk = source.getAttribute('data-source-ok');\n var selectorCancel = source.getAttribute('data-source-cancel');\n \n var html = source.value;\n var myTextArea = document.querySelector('#code');\n myTextArea.value = html;\n\n var htmlEditor = CodeMirror.fromTextArea(myTextArea, {\n value: html,\n mode: "htmlmixed",\n lineWrapping: true,\n lineNumbers: true,\n tabMode: "indent",\n });\n\n ${this.builder.styleDark?'htmlEditor.setOption("theme", "blackboard");':""}\n /*\n ${this.builder.styleDark?'htmlEditor.setOption("theme", "base16-light");':""}\n \n ${this.builder.styleColored?'htmlEditor.setOption("theme", "blackboard");':""}\n */\n\n htmlEditor.on("change", function (cm, change) {\n myTextArea.value = cm.getValue();\n });\n \n let elm = document.querySelector('.input-ok');\n elm.addEventListener('click', function(e){\n \n myTextArea.value = htmlEditor.getValue();\n \n var html = myTextArea.value;\n source.value = html;\n\n source.removeAttribute('data-source-active');\n source.removeAttribute('data-source-ok');\n source.removeAttribute('data-source-cancel');\n \n var modal = parent.document.querySelector('.viewhtmllarger');\n if(modal.className.indexOf('active')!==-1) {\n modal.className = modal.className.replace('active', '');\n } else {\n modal = parent.document.querySelector('.viewhtmlformatted');\n modal.className = modal.className.replace('active', '');\n }\n \n modal = parent.document.querySelector('.viewhtmlnormal');\n if(modal.className.indexOf('active')!==-1) {\n modal.className = modal.className.replace('active', '');\n }\n\n parent.document.querySelector(selectorOk).click();\n });\n \n elm = document.querySelector('.input-cancel');\n elm.addEventListener('click', function(e){\n source.removeAttribute('data-source-active');\n source.removeAttribute('data-source-ok');\n source.removeAttribute('data-source-cancel');\n \n var modal = parent.document.querySelector('.viewhtmllarger');\n if(modal.className.indexOf('active')!==-1) {\n modal.className = modal.className.replace('active', '');\n } else {\n modal = parent.document.querySelector('.viewhtmlformatted');\n modal.className = modal.className.replace('active', '');\n }\n \n modal = parent.document.querySelector('.viewhtmlnormal');\n if(modal.className.indexOf('active')!==-1) {\n modal.className = modal.className.replace('active', '');\n }\n\n parent.document.querySelector(selectorCancel).click();\n });\n \n <\/script>\n \n </body>\n </html>\n \n `}}const Ye=new e;class Ve{constructor(t){this.builder=t,this.undoList=[]}readStyles(){if(this.builder.opts.undoContainerOnly)return"";let t,e,i="",n=document.getElementsByTagName("link");for(t=0;t<n.length;t++)e=n[t].href.toLowerCase(),-1!==e.indexOf("basetype-")&&(i+=n[t].outerHTML);for(n=document.getElementsByTagName("link"),t=0;t<n.length;t++)e=n[t].href.toLowerCase(),-1!==e.indexOf("basetype-")||-1!==e.indexOf("type-")&&(i+=n[t].outerHTML);return i}writeStyles(t){if(this.builder.opts.undoContainerOnly)return;let e,i,n=document.getElementsByTagName("link");for(e=0;e<n.length;e++)i=n[e].href.toLowerCase(),(-1!==i.indexOf("basetype-")||-1!==i.indexOf("type-"))&&n[e].parentNode.removeChild(n[e]);let o=document.getElementsByTagName("head")[0];Ye.appendHtml(o,t)}readHtml(){const t=new Ge(this.builder);if(""===this.builder.opts.page||this.builder.opts.undoContainerOnly){const e=document.querySelectorAll(this.builder.opts.container);let i="";return Array.prototype.forEach.call(e,(e=>{i+=t.readHtml(e,!1)+"####|####"})),i=i.substr(0,i.length-9),i}{let e=document.querySelector(this.builder.opts.page);return t.readHtml(e,!1)}}writeHtml(t){if(""===this.builder.opts.page||this.builder.opts.undoContainerOnly){const e=document.querySelectorAll(this.builder.opts.container);let i=0;Array.prototype.forEach.call(e,(e=>{var n=document.createRange();e.innerHTML="",e.appendChild(n.createContextualFragment(t.split("####|####")[i])),i++}))}else{let i=document.querySelector(this.builder.opts.page);var e=document.createRange();i.innerHTML="",i.appendChild(e.createContextualFragment(t))}}saveForUndo(t){if(this.builder.undoRedoStyles){if(this.undoList[120]){let e=this.undoList[120][0].split("###$###")[1];if(this.builder.saveForUndoCheck&&e===this.readHtml())return void(this.builder.saveForUndoCheck=!0===t)}}else if(this.undoList[120]){let e=this.undoList[120][0];if(this.builder.saveForUndoCheck&&e===this.readHtml())return void(this.builder.saveForUndoCheck=!0===t)}if(this.builder.saveForUndoCheck=!0===t,this.undoList[140]=this.undoList[139],this.undoList[139]=this.undoList[138],this.undoList[138]=this.undoList[137],this.undoList[137]=this.undoList[136],this.undoList[136]=this.undoList[135],this.undoList[135]=this.undoList[134],this.undoList[134]=this.undoList[133],this.undoList[133]=this.undoList[132],this.undoList[132]=this.undoList[131],this.undoList[131]=this.undoList[130],this.undoList[130]=this.undoList[129],this.undoList[129]=this.undoList[128],this.undoList[128]=this.undoList[127],this.undoList[127]=this.undoList[126],this.undoList[126]=this.undoList[125],this.undoList[125]=this.undoList[124],this.undoList[124]=this.undoList[123],this.undoList[123]=this.undoList[122],this.undoList[122]=this.undoList[121],this.undoList[121]=this.undoList[120],this.builder.undoRedoStyles){let t=" "+this.readStyles()+"###$###"+this.readHtml();this.undoList[120]=[t,null]}else this.undoList[120]=[this.readHtml(),null]}doUndo(){if(!this.undoList[120])return;if(!0===this.builder.undoRedoInProcess)return;if(this.builder.undoRedoInProcess=!0,this.undoList[99]=this.undoList[100],this.undoList[100]=this.undoList[101],this.undoList[101]=this.undoList[102],this.undoList[102]=this.undoList[103],this.undoList[103]=this.undoList[104],this.undoList[104]=this.undoList[105],this.undoList[105]=this.undoList[106],this.undoList[106]=this.undoList[107],this.undoList[107]=this.undoList[108],this.undoList[108]=this.undoList[109],this.undoList[109]=this.undoList[110],this.undoList[110]=this.undoList[111],this.undoList[111]=this.undoList[112],this.undoList[112]=this.undoList[113],this.undoList[113]=this.undoList[114],this.undoList[114]=this.undoList[115],this.undoList[115]=this.undoList[116],this.undoList[116]=this.undoList[117],this.undoList[117]=this.undoList[118],this.undoList[118]=this.undoList[119],this.builder.undoRedoStyles){let t=this.readStyles(),e=this.readHtml(),i=" "+t+"###$###"+e;this.undoList[119]=[i,null],i=this.undoList[120][0],t=i.split("###$###")[0].trim(),e=i.split("###$###")[1],this.writeStyles(t),this.writeHtml(e)}else{this.undoList[119]=[this.readHtml(),null];let t=this.undoList[120][0];this.writeHtml(t)}this.builder.applyBehavior(),this.builder.opts.onChange(),this.undoList[120]=this.undoList[121],this.undoList[121]=this.undoList[122],this.undoList[122]=this.undoList[123],this.undoList[123]=this.undoList[124],this.undoList[124]=this.undoList[125],this.undoList[125]=this.undoList[126],this.undoList[126]=this.undoList[127],this.undoList[127]=this.undoList[128],this.undoList[128]=this.undoList[129],this.undoList[129]=this.undoList[130],this.undoList[130]=this.undoList[131],this.undoList[131]=this.undoList[132],this.undoList[132]=this.undoList[133],this.undoList[133]=this.undoList[134],this.undoList[134]=this.undoList[135],this.undoList[135]=this.undoList[136],this.undoList[136]=this.undoList[137],this.undoList[137]=this.undoList[138],this.undoList[138]=this.undoList[139],this.undoList[139]=this.undoList[140],this.undoList[140]=this.undoList[141];const e=new t(this.builder);e.clearActiveCell(),e.clearAfterUndoRedo();let i=document.querySelector("[data-saveforundo]");if(i){let t=document.querySelector(".is-side.elementstyles");Ye.addClass(t,"active"),setTimeout((()=>{i.click()}),700)}else{let t=document.querySelector(".is-side.elementstyles");Ye.removeClass(t,"active")}this.builder.opts.onUndo&&this.builder.opts.onUndo(),this.builder.undoRedoInProcess=!1}doRedo(){if(!this.undoList[119])return;if(!0===this.builder.undoRedoInProcess)return;if(this.builder.undoRedoInProcess=!0,this.undoList[141]=this.undoList[140],this.undoList[140]=this.undoList[139],this.undoList[139]=this.undoList[138],this.undoList[138]=this.undoList[137],this.undoList[137]=this.undoList[136],this.undoList[136]=this.undoList[135],this.undoList[135]=this.undoList[134],this.undoList[134]=this.undoList[133],this.undoList[133]=this.undoList[132],this.undoList[132]=this.undoList[131],this.undoList[131]=this.undoList[130],this.undoList[130]=this.undoList[129],this.undoList[129]=this.undoList[128],this.undoList[128]=this.undoList[127],this.undoList[127]=this.undoList[126],this.undoList[126]=this.undoList[125],this.undoList[125]=this.undoList[124],this.undoList[124]=this.undoList[123],this.undoList[123]=this.undoList[122],this.undoList[122]=this.undoList[121],this.undoList[121]=this.undoList[120],this.builder.undoRedoStyles){let t=this.readStyles(),e=this.readHtml(),i=" "+t+"###$###"+e;this.undoList[120]=[i,null],i=this.undoList[119][0],t=i.split("###$###")[0].trim(),e=i.split("###$###")[1],this.writeStyles(t),this.writeHtml(e)}else{this.undoList[120]=[this.readHtml(),null];let t=this.undoList[119][0];this.writeHtml(t)}this.builder.applyBehavior(),this.builder.opts.onChange(),this.undoList[119]=this.undoList[118],this.undoList[118]=this.undoList[117],this.undoList[117]=this.undoList[116],this.undoList[116]=this.undoList[115],this.undoList[115]=this.undoList[114],this.undoList[114]=this.undoList[113],this.undoList[113]=this.undoList[112],this.undoList[112]=this.undoList[111],this.undoList[111]=this.undoList[110],this.undoList[110]=this.undoList[109],this.undoList[109]=this.undoList[108],this.undoList[108]=this.undoList[107],this.undoList[107]=this.undoList[106],this.undoList[106]=this.undoList[105],this.undoList[105]=this.undoList[104],this.undoList[104]=this.undoList[103],this.undoList[103]=this.undoList[102],this.undoList[102]=this.undoList[101],this.undoList[101]=this.undoList[100],this.undoList[100]=this.undoList[99],this.undoList[99]=null;const e=new t(this.builder);e.clearActiveCell(),e.clearAfterUndoRedo();let i=document.querySelector("[data-saveforundo]");if(i){let t=document.querySelector(".is-side.elementstyles");Ye.addClass(t,"active"),setTimeout((()=>{i.click()}),700)}else{let t=document.querySelector(".is-side.elementstyles");Ye.removeClass(t,"active")}this.builder.opts.onRedo&&this.builder.opts.onRedo(),this.builder.undoRedoInProcess=!1}}const Xe=new t,Ze=new e,Ke=()=>{const t=Xe.builderStuff();Ze.appendHtml(t,'<svg width="0" height="0" style="position:absolute;display:none;">\n <defs>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-left"><path d="M352 115.4L331.3 96 160 256l171.3 160 20.7-19.3L201.5 256z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-right"><path d="M160 115.4L180.7 96 352 256 180.7 416 160 396.7 310.5 256z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-plus-outline"><path d="M256 48C141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208S370.9 48 256 48zm0 398.7c-105.1 0-190.7-85.5-190.7-190.7S150.9 65.3 256 65.3 446.7 150.9 446.7 256 361.1 446.7 256 446.7z"></path><path d="M264.1 128h-16.8v119.9H128v16.8h119.3V384h16.8V264.7H384v-16.8H264.1z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-image"><path d="M368 224c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48z"></path><path d="M452 64H60c-15.6 0-28 12.7-28 28.3v327.4c0 15.6 12.4 28.3 28 28.3h392c15.6 0 28-12.7 28-28.3V92.3c0-15.6-12.4-28.3-28-28.3zM348.9 261.7c-3-3.5-7.6-6.2-12.8-6.2-5.1 0-8.7 2.4-12.8 5.7L304.6 277c-3.9 2.8-7 4.7-11.5 4.7-4.3 0-8.2-1.6-11-4.1-1-.9-2.8-2.6-4.3-4.1L224 215.3c-4-4.6-10-7.5-16.7-7.5-6.7 0-12.9 3.3-16.8 7.8L64 368.2V107.7c1-6.8 6.3-11.7 13.1-11.7h357.7c6.9 0 12.5 5.1 12.9 12l.3 260.4-99.1-106.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-photos-outline"><path d="M96 128v320h384V128H96zm368 304H112V144h352v288z"></path><path d="M32 64v320h48v-16H48V80h352v32h16V64z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-settings-strong"><path d="M32 376h283.35c6.186-14.112 20.281-24 36.65-24s30.465 9.888 36.65 24H480v32h-91.35c-6.186 14.112-20.281 24-36.65 24s-30.465-9.888-36.65-24H32M32 240h91.35c6.186-14.112 20.281-24 36.65-24s30.465 9.888 36.65 24H480v32H196.65c-6.186 14.112-20.281 24-36.65 24s-30.465-9.888-36.65-24H32M32 104h283.35c6.186-14.112 20.281-24 36.65-24s30.465 9.888 36.65 24H480v32h-91.35c-6.186 14.112-20.281 24-36.65 24s-30.465-9.888-36.65-24H32"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-settings"><path d="M352 104c8.837 0 16 7.163 16 16s-7.163 16-16 16-16-7.163-16-16 7.163-16 16-16m0-16c-17.645 0-32 14.355-32 32s14.355 32 32 32 32-14.355 32-32-14.355-32-32-32zM352 376c8.837 0 16 7.163 16 16s-7.163 16-16 16-16-7.163-16-16 7.163-16 16-16m0-16c-17.645 0-32 14.355-32 32s14.355 32 32 32 32-14.355 32-32-14.355-32-32-32zM160 240c8.837 0 16 7.163 16 16s-7.163 16-16 16-16-7.163-16-16 7.163-16 16-16m0-16c-17.645 0-32 14.355-32 32s14.355 32 32 32 32-14.355 32-32-14.355-32-32-32zM207.32 248H480v16H207.32c.439-2.604.68-5.273.68-8s-.24-5.396-.68-8zM112 256c0 2.727.24 5.396.68 8H32v-16h80.68a47.955 47.955 0 0 0-.68 8zM399.32 384H480v16h-80.68c.439-2.604.68-5.273.68-8s-.24-5.396-.68-8zM304 392c0 2.727.24 5.396.68 8H32v-16h272.68a47.955 47.955 0 0 0-.68 8zM399.32 112H480v16h-80.68c.439-2.604.68-5.273.68-8s-.24-5.396-.68-8zM304.68 112c-.439 2.604-.68 5.273-.68 8s.24 5.396.68 8H32v-16h272.68z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-options"><path d="M32 384h272v32H32zM400 384h80v32h-80zM384 447.5c0 17.949-14.327 32.5-32 32.5-17.673 0-32-14.551-32-32.5v-95c0-17.949 14.327-32.5 32-32.5 17.673 0 32 14.551 32 32.5v95z"></path><g><path d="M32 240h80v32H32zM208 240h272v32H208zM192 303.5c0 17.949-14.327 32.5-32 32.5-17.673 0-32-14.551-32-32.5v-95c0-17.949 14.327-32.5 32-32.5 17.673 0 32 14.551 32 32.5v95z"></path></g><g><path d="M32 96h272v32H32zM400 96h80v32h-80zM384 159.5c0 17.949-14.327 32.5-32 32.5-17.673 0-32-14.551-32-32.5v-95c0-17.949 14.327-32.5 32-32.5 17.673 0 32 14.551 32 32.5v95z"></path></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-list-number"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-1043.45,1024 C-1039.25,946.283 -1023.18,878.648 -995.249,821.096 C-967.313,763.544 -912.806,711.242 -831.728,664.192 L-710.742,594.247 C-656.55,562.74 -618.532,535.854 -596.687,513.589 C-562.24,478.722 -545.016,438.813 -545.016,393.863 C-545.016,341.352 -560.769,299.658 -592.276,268.781 C-623.783,237.904 -665.792,222.466 -718.304,222.466 C-796.02,222.466 -849.792,251.873 -879.619,310.685 C-895.582,342.192 -904.404,385.882 -906.084,441.754 L-1021.4,441.754 C-1020.14,363.197 -1005.65,299.133 -977.92,249.562 C-928.769,162.183 -842.02,118.494 -717.673,118.494 C-614.331,118.494 -538.82,146.43 -491.139,202.302 C-443.459,258.174 -419.619,320.347 -419.619,388.822 C-419.619,461.078 -445.034,522.831 -495.865,574.082 C-525.272,603.909 -577.993,640.037 -654.03,682.466 L-740.358,730.356 C-781.527,753.041 -813.874,774.676 -837.399,795.26 C-879.408,831.808 -905.874,872.347 -916.797,916.877 L-424.03,916.877 L-424.03,1024 L-1043.45,1024 Z " /><path d="M-922.391,-764.384 L-922.391,-851.343 C-840.474,-859.324 -783.341,-872.662 -750.994,-891.356 C-718.647,-910.05 -694.492,-954.265 -678.529,-1024 L-589.049,-1024 L-589.049,-125.425 L-710.035,-125.425 L-710.035,-764.384 L-922.391,-764.384 Z " /><path d="M-198.618,-510.942 L-198.618,-667.156 L1004.57,-667.156 L1004.57,-510.942 L-198.618,-510.942 Z " /><path d="M-198.618,78.1071 L-198.618,-78.1071 L1004.57,-78.1071 L1004.57,78.1071 L-198.618,78.1071 Z " /><path d="M-179.185,649.354 L-179.185,493.14 L1024,493.14 L1024,649.354 L-179.185,649.354 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-list-bullet"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-379.801,-514.33 L-379.801,-670.545 L914.662,-670.545 L914.662,-514.33 L-379.801,-514.33 Z " /><path d="M-379.801,78.1071 L-379.801,-78.1071 L914.662,-78.1071 L914.662,78.1071 L-379.801,78.1071 Z " /><path d="M-379.801,670.545 L-379.801,514.33 L914.662,514.33 L914.662,670.545 L-379.801,670.545 Z " /><path d="M-929.642,-469.441 L-929.642,-715.434 L-669.092,-715.434 L-669.092,-469.441 L-929.642,-469.441 Z " /><path d="M-929.642,127.109 L-929.642,-118.885 L-669.092,-118.885 L-669.092,127.109 L-929.642,127.109 Z " /><path d="M-929.642,715.434 L-929.642,469.441 L-669.092,469.441 L-669.092,715.434 L-929.642,715.434 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-clean">\n <g transform="matrix(1,0,0,1,1024.0,1024.0)">\n <path d="M75.0013,893.849 L-1030.73,900.993 L-32.1518,-880.838 L1009.54,-880.838 L75.0013,893.849 Z " fill="currentColor" />\n <path d="M-30.8571,780.685 L-845.2,787.828 L-508.893,193.749 L305.26,194.963 L-30.8571,780.685 Z " fill="#ffffff" fill-opacity="1.00" />\n </g>\n </symbol>\n <symbol viewBox="0 0 512 512" id="ion-location"><path d="M256 64c-65.9 0-119.3 53.7-119.3 120 0 114.6 119.3 264 119.3 264s119.3-149.4 119.3-264c0-66.3-53.4-120-119.3-120zm0 178.2c-31.2 0-56.4-25.4-56.4-56.7 0-31.3 25.3-56.8 56.4-56.8 31.2 0 56.4 25.4 56.4 56.8 0 31.3-25.2 56.7-56.4 56.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-film-outline"><path d="M0 360h400v-336h-400v336zM72 40v48h-56v-48h56zM72 104v48h-56v-48h56zM72 168v48h-56v-48h56zM72 232v48h-56v-48h56zM72 296v48h-56v-48h56zM312 40v144h-224v-144h224zM312 200v144h-224v-144h224zM384 40v48h-56v-48h56zM384 104v48h-56v-48h56zM384 168v48h-56v-48\n h56zM384 232v48h-56v-48h56zM384 296v48h-56v-48h56z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-social-youtube-outline"><path d="M265 96c65.3 0 118.7 1.1 168.1 3.3h1.4c23.1 0 42 22 42 49.1v1.1l.1 1.1c2.3 34 3.4 69.3 3.4 104.9.1 35.6-1.1 70.9-3.4 104.9l-.1 1.1v1.1c0 13.8-4.7 26.6-13.4 36.1-7.8 8.6-18 13.4-28.6 13.4h-1.6c-52.9 2.5-108.8 3.8-166.4 3.8h-10.6.1-10.9c-57.8 0-113.7-1.3-166.2-3.7h-1.6c-10.6 0-20.7-4.8-28.5-13.4-8.6-9.5-13.4-22.3-13.4-36.1v-1.1l-.1-1.1c-2.4-34.1-3.5-69.4-3.3-104.7v-.2c-.1-35.3 1-70.5 3.3-104.6l.1-1.1v-1.1c0-27.2 18.8-49.3 41.9-49.3h1.4c49.5-2.3 102.9-3.3 168.2-3.3H265m0-32.2h-18c-57.6 0-114.2.8-169.6 3.3-40.8 0-73.9 36.3-73.9 81.3C1 184.4-.1 220 0 255.7c-.1 35.7.9 71.3 3.4 107 0 45 33.1 81.6 73.9 81.6 54.8 2.6 110.7 3.8 167.8 3.8h21.6c57.1 0 113-1.2 167.9-3.8 40.9 0 74-36.6 74-81.6 2.4-35.7 3.5-71.4 3.4-107.1.1-35.7-1-71.3-3.4-107.1 0-45-33.1-81.1-74-81.1C379.2 64.8 322.7 64 265 64z"></path><path d="M207 353.8V157.4l145 98.2-145 98.2z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-play"><path d="M128 96v320l256-160L128 96z"></path></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-align-full"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-770.727,738.299 L-770.727,582.085 L769.712,582.085 L769.712,738.299 L-770.727,738.299 Z " /><path d="M-770.727,-534.628 L-770.727,-690.842 L769.712,-690.842 L769.712,-534.628 L-770.727,-534.628 Z " /><path d="M-770.219,-115.563 L-770.219,-271.777 L770.219,-271.777 L770.219,-115.563 L-770.219,-115.563 Z " /><path d="M-770.219,303.503 L-770.219,147.288 L770.219,147.288 L770.219,303.503 L-770.219,303.503 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-align-center"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-770.727,738.299 L-770.727,582.085 L769.712,582.085 L769.712,738.299 L-770.727,738.299 Z " /><path d="M-552.286,-107.697 L-552.286,-263.911 L552.286,-263.911 L552.286,-107.697 L-552.286,-107.697 Z " /><path d="M-467.355,319.234 L-467.355,163.02 L466.34,163.02 L466.34,319.234 L-467.355,319.234 Z " /><path d="M-770.727,-534.628 L-770.727,-690.842 L769.712,-690.842 L769.712,-534.628 L-770.727,-534.628 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-align-left"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-770.727,738.299 L-770.727,582.085 L769.712,582.085 L769.712,738.299 L-770.727,738.299 Z " /><path d="M-770.727,-534.628 L-770.727,-690.842 L769.712,-690.842 L769.712,-534.628 L-770.727,-534.628 Z " /><path d="M-770.219,-115.563 L-770.219,-271.777 L482.839,-271.777 L482.839,-115.563 L-770.219,-115.563 Z " /><path d="M-770.219,303.503 L-770.219,147.288 L122.787,147.288 L122.787,303.503 L-770.219,303.503 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-align-right"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-770.727,738.299 L-770.727,582.085 L769.712,582.085 L769.712,738.299 L-770.727,738.299 Z " /><path d="M-770.727,-534.628 L-770.727,-690.842 L769.712,-690.842 L769.712,-534.628 L-770.727,-534.628 Z " /><path d="M-483.346,-118.081 L-483.346,-274.295 L769.712,-274.295 L769.712,-118.081 L-483.346,-118.081 Z " /><path d="M-123.871,303.503 L-123.871,147.288 L769.136,147.288 L769.136,303.503 L-123.871,303.503 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-indent"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-829.04,-514.33 L-829.04,-670.545 L808.959,-670.545 L808.959,-514.33 L-829.04,-514.33 Z " /><path d="M-829.04,670.545 L-829.04,514.33 L808.959,514.33 L808.959,670.545 L-829.04,670.545 Z " /><path d="M-254.279,-110.244 L-254.279,-266.458 L808.959,-266.458 L808.959,-110.244 L-254.279,-110.244 Z " /><path d="M-254.279,266.458 L-254.279,110.244 L808.959,110.244 L808.959,266.458 L-254.279,266.458 Z " /><path d="M-829.04,-195.117 L-490.958,-1.03508e-14 L-829.04,195.117 L-829.04,-195.117 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-outdent"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-829.04,-514.33 L-829.04,-670.545 L808.959,-670.545 L808.959,-514.33 L-829.04,-514.33 Z " /><path d="M-829.04,670.545 L-829.04,514.33 L808.959,514.33 L808.959,670.545 L-829.04,670.545 Z " /><path d="M-829.04,-110.244 L-829.04,-266.458 L234.198,-266.458 L234.198,-110.244 L-829.04,-110.244 Z " /><path d="M-829.04,266.458 L-829.04,110.244 L234.198,110.244 L234.198,266.458 L-829.04,266.458 Z " /><path d="M808.959,-195.117 L470.877,-1.03508e-14 L808.959,195.117 L808.959,-195.117 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-table"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-660.783,660.783 L660.783,660.783 L660.783,-660.783 L-660.783,-660.783 L-660.783,660.783 Z " fill="none" stroke-width="75.82" stroke="currentColor" stroke-linecap="square" stroke-linejoin="miter" /><path d="M-37.9645,698.933 L37.9645,698.933 L37.9645,-698.569 L-37.9645,-698.569 L-37.9645,698.933 Z " fill="currentColor" fill-opacity="1.00" stroke-width="0.25" stroke="currentColor" stroke-linecap="square" stroke-linejoin="miter" /><path d="M-698.933,-37.7825 L-698.933,38.1465 L698.569,38.1465 L698.569,-37.7825 L-698.933,-37.7825 Z " fill="currentColor" fill-opacity="1.00" stroke-width="0.25" stroke="currentColor" stroke-linecap="square" stroke-linejoin="miter" /></g></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-happy"><path d="M256 48C140.563 48 48 141.6 48 256s92.563 208 208 208 208-93.6 208-208S370.401 48 256 48zm0 374.4c-91.518 0-166.404-74.883-166.404-166.4 0-91.518 74.887-166.4 166.404-166.4S422.404 164.482 422.404 256 347.518 422.4 256 422.4zm72.8-187.2c17.683 0 31.201-13.518 31.201-31.2s-13.519-31.2-31.201-31.2c-17.682 0-31.2 13.518-31.2 31.2s13.518 31.2 31.2 31.2zm-145.6 0c17.682 0 31.2-13.518 31.2-31.2s-13.519-31.2-31.2-31.2c-17.683 0-31.201 13.518-31.201 31.2s13.519 31.2 31.201 31.2zM256 370.4c48.883 0 89.436-30.164 106.081-72.801H149.919C166.564 340.236 207.117 370.4 256 370.4z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-create"><path d="M64 368v80h80l235.727-235.729-79.999-79.998L64 368zm377.602-217.602c8.531-8.531 8.531-21.334 0-29.865l-50.135-50.135c-8.531-8.531-21.334-8.531-29.865 0l-39.468 39.469 79.999 79.998 39.469-39.467z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-minus-empty"><path d="M384 265H128v-17h256v17z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-eye"><path d="M256 128c-81.9 0-145.7 48.8-224 128 67.4 67.7 124 128 224 128 99.9 0 173.4-76.4 224-126.6C428.2 198.6 354.8 128 256 128zm0 219.3c-49.4 0-89.6-41-89.6-91.3 0-50.4 40.2-91.3 89.6-91.3s89.6 41 89.6 91.3c0 50.4-40.2 91.3-89.6 91.3z"></path><path d="M256 224c0-7.9 2.9-15.1 7.6-20.7-2.5-.4-5-.6-7.6-.6-28.8 0-52.3 23.9-52.3 53.3s23.5 53.3 52.3 53.3 52.3-23.9 52.3-53.3c0-2.3-.2-4.6-.4-6.9-5.5 4.3-12.3 6.9-19.8 6.9-17.8 0-32.1-14.3-32.1-32z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-reply"><path d="M448 400s-36.8-208-224-208v-80L64 256l160 134.4v-92.3c101.6 0 171 8.9 224 101.9z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-redo"><path d="M64 400h10.3l19.2-31.2c20.5-32.7 44.9-62.8 75.8-76.6 24.4-10.9 46.7-18.9 86.7-20V352l192-128L256 96v80.3c-63 2.8-108.1 20.7-143.3 56.2C60.4 285.2 64 351.5 64 368.2c.1 8.9 0 21.7 0 31.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-wrench"><path d="M461.9 114.9l-56.5 56.7-55.1-10-9.9-55.1 56.5-56.7c-12.7-12.7-30.8-18.5-44.2-17.8-13.5.7-42.3 8.3-64.6 32-21.6 22.8-44.3 65.3-24.2 112.5 2.4 5.7 5.1 13.2-2.9 21.2-8.1 8-215 202.8-215 202.8-19.4 16.7-18 47.6-.1 65.6 18.2 17.9 48.9 19 65.6-.3 0 0 193.2-205.8 202.7-215.1 8.5-8.3 16.1-5.5 21.2-2.9 35.6 18.4 86.3 2.4 112.6-23.9 26.3-26.3 31.1-51.7 31.9-64.7.8-12.9-3.7-30-18-44.3zM91.3 443.2c-6.3 6.2-16.5 6.2-22.7 0-6.2-6.3-6.2-16.5 0-22.7 6.3-6.2 16.5-6.2 22.7 0 6.2 6.3 6.2 16.5 0 22.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-more"><path d="M113.7 304C86.2 304 64 282.6 64 256c0-26.5 22.2-48 49.7-48 27.6 0 49.8 21.5 49.8 48 0 26.6-22.2 48-49.8 48zM256 304c-27.5 0-49.8-21.4-49.8-48 0-26.5 22.3-48 49.8-48 27.5 0 49.7 21.5 49.7 48 0 26.6-22.2 48-49.7 48zM398.2 304c-27.5 0-49.8-21.4-49.8-48 0-26.5 22.2-48 49.8-48 27.5 0 49.8 21.5 49.8 48 0 26.6-22.2 48-49.8 48z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-code-working"><circle cx="184.166" cy="256.166" r="24"></circle><circle cx="256.166" cy="256.166" r="24"></circle><circle cx="328.166" cy="256.166" r="24"></circle><g><path d="M168 392a23.929 23.929 0 0 1-16.971-7.029l-112-112c-9.373-9.373-9.373-24.569 0-33.941l112-112c9.373-9.372 24.568-9.372 33.941 0 9.371 9.372 9.371 24.568 0 33.941L89.941 256l95.029 95.029c9.371 9.372 9.371 24.568 0 33.941A23.925 23.925 0 0 1 168 392zM344 392a23.929 23.929 0 0 0 16.971-7.029l112-112c9.373-9.373 9.373-24.569 0-33.941l-112-112c-9.373-9.372-24.568-9.372-33.941 0-9.371 9.372-9.371 24.568 0 33.941L422.059 256l-95.029 95.029c-9.371 9.372-9.371 24.568 0 33.941A23.925 23.925 0 0 0 344 392z"></path></g></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-gear"><path d="M416.349 256.046c-.001-21.013 13.143-38.948 31.651-46.062a196.302 196.302 0 0 0-23.664-57.139 49.423 49.423 0 0 1-20.082 4.254c-12.621 0-25.238-4.811-34.871-14.442-14.863-14.863-18.248-36.846-10.18-54.97A196.274 196.274 0 0 0 302.074 64C294.971 82.529 277.027 95.69 256 95.69c-21.025 0-38.969-13.161-46.073-31.69a196.243 196.243 0 0 0-57.128 23.688c8.068 18.122 4.683 40.104-10.181 54.97-9.631 9.631-22.25 14.443-34.871 14.443a49.429 49.429 0 0 1-20.083-4.255A196.273 196.273 0 0 0 64 209.984c18.509 7.112 31.652 25.049 31.652 46.062 0 21.008-13.132 38.936-31.63 46.054a196.318 196.318 0 0 0 23.692 57.128 49.428 49.428 0 0 1 20.032-4.232c12.622 0 25.239 4.812 34.871 14.443 14.841 14.841 18.239 36.781 10.215 54.889a196.257 196.257 0 0 0 57.13 23.673c7.128-18.479 25.046-31.596 46.038-31.596 20.992 0 38.91 13.115 46.037 31.596a196.234 196.234 0 0 0 57.132-23.675c-8.023-18.106-4.626-40.046 10.216-54.887 9.629-9.632 22.248-14.444 34.868-14.444 6.836 0 13.67 1.411 20.033 4.233a196.318 196.318 0 0 0 23.692-57.128c-18.498-7.119-31.629-25.048-31.629-46.054zM256.9 335.9c-44.3 0-80-35.9-80-80 0-44.101 35.7-80 80-80 44.299 0 80 35.899 80 80 0 44.1-35.701 80-80 80z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-arrow-expand"><path d="M274 209.7l63.9-63.8L288 96h128v128l-49.9-49.9-63.8 63.9zM274 302.3l63.9 63.8L288 416h128V288l-49.9 49.9-63.8-63.9zM238 302.3l-63.9 63.8L224 416H96V288l49.9 49.9 63.8-63.9zM238 209.7l-63.9-63.8L224 96H96v128l49.9-49.9 63.8 63.9z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-expand"><path d="M396.795 396.8H320V448h128V320h-51.205zM396.8 115.205V192H448V64H320v51.205zM115.205 115.2H192V64H64v128h51.205zM115.2 396.795V320H64v128h128v-51.205z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-arrow-move"><path d="M480 256l-96-96v76H276V128h76l-96-96-96 96h76v108H128v-76l-96 96 96 96v-76h108v108h-76l96 96 96-96h-76.2l-.4-108.5 108.6.3V352z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-drag"><path d="M0 144h512v32H0zM0 240h512v32H0zM0 336h512v32H0z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-link"><path d="M74.6 256c0-38.3 31.1-69.4 69.4-69.4h88V144h-88c-61.8 0-112 50.2-112 112s50.2 112 112 112h88v-42.6h-88c-38.3 0-69.4-31.1-69.4-69.4zm85.4 22h192v-44H160v44zm208-134h-88v42.6h88c38.3 0 69.4 31.1 69.4 69.4s-31.1 69.4-69.4 69.4h-88V368h88c61.8 0 112-50.2 112-112s-50.2-112-112-112z"/></symbol>\n <symbol viewBox="0 0 512 512" id="ion-contrast"><path d="M256 32C132.3 32 32 132.3 32 256s100.3 224 224 224 224-100.3 224-224S379.7 32 256 32zm135.8 359.8C355.5 428 307 448 256 448V64c51 0 99.5 20 135.8 56.2C428 156.5 448 204.7 448 256c0 51.3-20 99.5-56.2 135.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-plus-empty"><path d="M384 265H264v119h-17V265H128v-17h119V128h17v120h120v17z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-thin-up"><path d="M349.7 189.8c-3.1 3.1-8 3-11.3 0L264 123.4V408c0 4.4-3.6 8-8 8s-8-3.6-8-8V123.4l-74.4 66.3c-3.4 2.9-8.1 3.2-11.2.1-3.1-3.1-3.3-8.5-.1-11.4 0 0 87-79.2 88-80s2.8-2.4 5.7-2.4 4.9 1.6 5.7 2.4 88 80 88 80c1.5 1.5 2.3 3.6 2.3 5.7s-.8 4.1-2.3 5.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-thin-down"><path d="M349.7 322.2c-3.1-3.1-8-3-11.3 0L264 388.6V104c0-4.4-3.6-8-8-8s-8 3.6-8 8v284.6l-74.4-66.3c-3.4-2.9-8.1-3.2-11.2-.1-3.1 3.1-3.3 8.5-.1 11.4 0 0 87 79.2 88 80s2.8 2.4 5.7 2.4 4.9-1.6 5.7-2.4 88-80 88-80c1.5-1.5 2.3-3.6 2.3-5.7s-.8-4.1-2.3-5.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-thin-left"><path d="M189.8 349.7c3.1-3.1 3-8 0-11.3L123.4 264H408c4.4 0 8-3.6 8-8s-3.6-8-8-8H123.4l66.3-74.4c2.9-3.4 3.2-8.1.1-11.2-3.1-3.1-8.5-3.3-11.4-.1 0 0-79.2 87-80 88S96 253.1 96 256s1.6 4.9 2.4 5.7 80 88 80 88c1.5 1.5 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-thin-right"><path d="M322.2 349.7c-3.1-3.1-3-8 0-11.3l66.4-74.4H104c-4.4 0-8-3.6-8-8s3.6-8 8-8h284.6l-66.3-74.4c-2.9-3.4-3.2-8.1-.1-11.2 3.1-3.1 8.5-3.3 11.4-.1 0 0 79.2 87 80 88s2.4 2.8 2.4 5.7-1.6 4.9-2.4 5.7-80 88-80 88c-1.5 1.5-3.6 2.3-5.7 2.3s-4.1-.8-5.7-2.3z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-close-empty"><path d="M340.2 160l-84.4 84.3-84-83.9-11.8 11.8 84 83.8-84 83.9 11.8 11.7 84-83.8 84.4 84.2 11.8-11.7-84.4-84.3 84.4-84.2z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-more-vertical"><path d="M296 136c0-22.002-17.998-40-40-40s-40 17.998-40 40 17.998 40 40 40 40-17.998 40-40zm0 240c0-22.002-17.998-40-40-40s-40 17.998-40 40 17.998 40 40 40 40-17.998 40-40zm0-120c0-22.002-17.998-40-40-40s-40 17.998-40 40 17.998 40 40 40 40-17.998 40-40z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-quote"><path d="M192 64c-40.646 0-72.483 11.229-94.627 33.373C75.229 119.517 64 151.354 64 192v256h160V192h-96c0-23.056 4.922-39.666 14.627-49.373C152.334 132.922 168.944 128 192 128M416 64c-40.646 0-72.483 11.229-94.627 33.373C299.229 119.517 288 151.354 288 192v256h160V192h-96c0-23.056 4.922-39.666 14.627-49.373C376.334 132.922 392.944 128 416 128"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-code"><path d="M168 392a23.929 23.929 0 0 1-16.971-7.029l-112-112c-9.373-9.373-9.373-24.569 0-33.941l112-112c9.373-9.372 24.568-9.372 33.941 0 9.371 9.372 9.371 24.568 0 33.941L89.941 256l95.029 95.029c9.371 9.373 9.371 24.568 0 33.941A23.925 23.925 0 0 1 168 392zM344 392a23.929 23.929 0 0 0 16.971-7.029l112-112c9.373-9.373 9.373-24.569 0-33.941l-112-112c-9.373-9.372-24.568-9.372-33.941 0-9.371 9.372-9.371 24.568 0 33.941L422.059 256l-95.029 95.029c-9.371 9.373-9.371 24.568 0 33.941A23.925 23.925 0 0 0 344 392z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-camera"><path d="M430.4 147h-67.5l-40.4-40.8s-.2-.2-.3-.2l-.2-.2c-6-6-14.1-9.8-23.3-9.8h-84c-9.8 0-18.5 4.2-24.6 10.9v.1l-39.5 40h-69C63 147 48 161.6 48 180.2v202.1c0 18.6 15 33.7 33.6 33.7h348.8c18.5 0 33.6-15.1 33.6-33.7V180.2c0-18.6-15.1-33.2-33.6-33.2zM256 365.5c-50.9 0-92.4-41.6-92.4-92.6 0-51.1 41.5-92.6 92.4-92.6 51 0 92.4 41.5 92.4 92.6 0 51-41.4 92.6-92.4 92.6zm168.1-165c-7.7 0-14-6.3-14-14.1s6.3-14.1 14-14.1 14 6.3 14 14.1-6.3 14.1-14 14.1z"></path><path d="M256 202.9c-38.6 0-69.8 31.3-69.8 70 0 38.6 31.2 70 69.8 70 38.5 0 69.8-31.3 69.8-70s-31.3-70-69.8-70z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-move"><path d="M475.9 246.2l-79.4-79.4c-5.4-5.4-14.2-5.4-19.6 0l-.2.2c-5.4 5.4-5.4 14.2 0 19.6l54.9 54.9-161.8.5.5-161.8 54.9 54.9c5.4 5.4 14.2 5.4 19.6 0l.2-.2c5.4-5.4 5.4-14.2 0-19.6l-79.4-79.4c-5.4-5.4-14.2-5.4-19.6 0l-79.4 79.4c-5.4 5.4-5.4 14.2 0 19.6l.2.2c5.4 5.4 14.2 5.4 19.6 0l54.9-54.9.5 161.8-161.8-.5 54.9-54.9c5.4-5.4 5.4-14.2 0-19.6l-.2-.2c-5.4-5.4-14.2-5.4-19.6 0l-79.4 79.4c-5.4 5.4-5.4 14.2 0 19.6l79.4 79.4c5.4 5.4 14.2 5.4 19.6 0l.2-.2c5.4-5.4 5.4-14.2 0-19.6L80 270.5l161.8-.5-.5 161.8-54.9-54.9c-5.4-5.4-14.2-5.4-19.6 0l-.2.2c-5.4 5.4-5.4 14.2 0 19.6l79.4 79.4c5.4 5.4 14.2 5.4 19.6 0l79.4-79.4c5.4-5.4 5.4-14.2 0-19.6l-.2-.2c-5.4-5.4-14.2-5.4-19.6 0l-54.9 54.9-.5-161.8 161.8.5-54.9 54.9c-5.4 5.4-5.4 14.2 0 19.6l.2.2c5.4 5.4 14.2 5.4 19.6 0l79.4-79.4c5.5-5.4 5.5-14.2 0-19.6z"/></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-ok">\n <rect x="0" y="0" width="2048.00" height="2048.00" fill="none" />\n <g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)">\n <path d="M330.323,493.628 L330.323,398.406 L-330.323,398.406 L-330.323,493.628 L330.323,493.628 Z " fill="currentColor" fill-opacity="1.00" />\n <path d="M230.718,468.568 L328.59,468.568 L328.59,-599.718 L230.718,-599.718 L230.718,468.568 Z " fill="currentColor" fill-opacity="1.00" />\n <path d="M-300.714,376.053 L-373.748,449.088 L-68.5805,754.255 L4.45387,681.221 L-300.714,376.053 Z " fill="currentColor" fill-opacity="1.00" />\n <path d="M-9.9476e-14,216.241 L-73.0344,143.207 L-378.202,448.375 L-305.168,521.409 L-9.9476e-14,216.241 Z " fill="currentColor" fill-opacity="1.00" />\n </g>\n </symbol>\n <symbol viewBox="0 0 512 512" id="ion-grid"><path d="M160 153.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM288 153.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM416 153.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5z"></path><g><path d="M160 281.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM288 281.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM416 281.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5z"></path></g><g><path d="M160 409.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM288 409.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM416 409.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5z"></path></g></symbol>\n <symbol viewBox="0 0 512 512" id="ion-gear-b"><path d="M448 294.4v-76.8h-42.8c-3.4-14.4-8.9-28-16.1-40.5l29.8-29.7-54.3-54.3-29.1 29.1c-12.6-7.7-26.4-13.5-41.1-17.3V64h-76.8v40.9c-14.7 3.8-28.5 9.7-41.1 17.3l-29.1-29.1-54.3 54.3 29.8 29.7c-7.2 12.5-12.6 26.1-16.1 40.5H64v76.8h44.1c3.8 13.7 9.5 26.6 16.7 38.6l-31.7 31.7 54.3 54.3 32.3-32.3c11.7 6.8 24.5 11.9 37.9 15.4v46h76.8v-46c13.5-3.5 26.2-8.6 37.9-15.4l32.3 32.3 54.3-54.3-31.6-31.7c7.2-11.9 12.9-24.8 16.7-38.6h44zm-192 15.4c-29.7 0-53.7-24.1-53.7-53.8s24-53.8 53.7-53.8 53.8 24.1 53.8 53.8-24.1 53.8-53.8 53.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-grid-view-outline"><path d="M448 192v-16H336V64h-16v112H192V64h-16v112H64v16h112v128H64v16h112v112h16V336h128v112h16V336h112v-16H336V192h112zM320 320H192V192h128v128z"></path></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-increase"><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M852.574,595.004 L852.574,507.837 L-852.574,507.837 L-852.574,595.004 L852.574,595.004 Z " /><path d="M852.574,224.232 L852.574,137.066 L-852.574,137.066 L-852.574,224.232 L852.574,224.232 Z " /><path d="M852.574,-134.971 L852.574,-222.138 L-852.574,-222.138 L-852.574,-134.971 L852.574,-134.971 Z " /><path d="M852.574,-505.743 L852.574,-592.909 L-852.574,-592.909 L-852.574,-505.743 L852.574,-505.743 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-decrease"><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M509.832,595.004 L509.832,507.837 L-509.832,507.837 L-509.832,595.004 L509.832,595.004 Z " /><path d="M509.832,224.232 L509.832,137.066 L-509.832,137.066 L-509.832,224.232 L509.832,224.232 Z " /><path d="M509.832,-136.947 L509.832,-224.113 L-509.832,-224.113 L-509.832,-136.947 L509.832,-136.947 Z " /><path d="M509.832,-505.743 L509.832,-592.909 L-509.832,-592.909 L-509.832,-505.743 L509.832,-505.743 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-strike">\n <g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)">\n <path d="M298.298,-653.766 C292.151,-624.873 284.005,-605.663 273.862,-596.135 C263.719,-586.607 250.656,-581.842 234.673,-581.842 C220.535,-581.842 196.253,-589.526 161.828,-604.895 C87.4454,-637.475 17.0588,-653.766 -49.3321,-653.766 C-155.68,-653.766 -243.28,-621.339 -312.129,-556.485 C-380.979,-491.631 -415.404,-414.328 -415.404,-324.578 C-415.404,-272.94 -403.724,-225.606 -380.364,-182.575 C-357.005,-139.544 -322.733,-100.201 -277.551,-64.5467 C-232.368,-28.8923 -156.295,18.903 -49.3321,78.8392 C57.631,138.775 123.1,177.964 147.074,196.406 C182.729,223.455 209.008,252.654 225.913,284.005 C242.819,315.357 251.271,346.401 251.271,377.137 C251.271,432.463 228.987,480.412 184.419,520.984 C139.851,561.556 79.1465,581.842 2.30524,581.842 C-64.0856,581.842 -125.098,567.089 -180.731,537.582 C-236.364,508.075 -277.704,471.037 -304.753,426.469 C-331.801,381.901 -353.316,314.742 -369.299,224.991 L-403.417,224.991 L-403.417,653.766 L-369.299,653.766 C-364.996,624.873 -358.388,605.817 -349.474,596.596 C-340.561,587.375 -328.42,582.764 -313.051,582.764 C-297.068,582.764 -259.109,592.446 -199.173,611.81 C-139.236,631.174 -99.74,642.393 -80.6834,645.467 C-48.7174,651 -14.5998,653.766 21.6692,653.766 C137.239,653.766 231.753,619.495 305.214,550.952 C378.674,482.41 415.404,400.804 415.404,306.136 C415.404,256.343 403.878,208.701 380.826,163.211 C357.773,117.721 324.885,78.2244 282.161,44.7216 C239.438,11.2188 159.676,-36.8838 42.8774,-99.5863 C-100.355,-176.428 -191.027,-237.901 -229.141,-284.005 C-255.574,-315.357 -268.791,-350.089 -268.791,-388.202 C-268.791,-437.995 -247.89,-482.41 -206.088,-521.445 C-164.287,-560.48 -111.42,-579.998 -47.4879,-579.998 C9.06727,-579.998 63.7783,-565.552 116.645,-536.66 C169.512,-507.767 210.238,-468.732 238.823,-419.554 C267.408,-370.375 287.233,-304.292 298.298,-221.303 L332.415,-221.303 L332.415,-653.766 L298.298,-653.766 Z " fill="currentColor" fill-opacity="1.00" /><path d="M-530.954,-41.4477 L-530.954,41.4477 L530.954,41.4477 L530.954,-41.4477 L-530.954,-41.4477 Z " fill="currentColor" fill-opacity="1.00" /></g></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-undo"><path d="M447.9 368.2c0-16.8 3.6-83.1-48.7-135.7-35.2-35.4-80.3-53.4-143.3-56.2V96L64 224l192 128v-79.8c40 1.1 62.4 9.1 86.7 20 30.9 13.8 55.3 44 75.8 76.6l19.2 31.2H448c0-10.1-.1-22.9-.1-31.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-redo"><path d="M64 400h10.3l19.2-31.2c20.5-32.7 44.9-62.8 75.8-76.6 24.4-10.9 46.7-18.9 86.7-20V352l192-128L256 96v80.3c-63 2.8-108.1 20.7-143.3 56.2C60.4 285.2 64 351.5 64 368.2c.1 8.9 0 21.7 0 31.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-arrow-dropdown"><path d="M128 192l128 128 128-128z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-social-twitter"><path d="M492 109.5c-17.4 7.7-36 12.9-55.6 15.3 20-12 35.4-31 42.6-53.6-18.7 11.1-39.4 19.2-61.5 23.5C399.8 75.8 374.6 64 346.8 64c-53.5 0-96.8 43.4-96.8 96.9 0 7.6.8 15 2.5 22.1-80.5-4-151.9-42.6-199.6-101.3-8.3 14.3-13.1 31-13.1 48.7 0 33.6 17.2 63.3 43.2 80.7-16-.4-31-4.8-44-12.1v1.2c0 47 33.4 86.1 77.7 95-8.1 2.2-16.7 3.4-25.5 3.4-6.2 0-12.3-.6-18.2-1.8 12.3 38.5 48.1 66.5 90.5 67.3-33.1 26-74.9 41.5-120.3 41.5-7.8 0-15.5-.5-23.1-1.4C62.8 432 113.7 448 168.3 448 346.6 448 444 300.3 444 172.2c0-4.2-.1-8.4-.3-12.5C462.6 146 479 129 492 109.5z"></path></symbol>\n <symbol viewBox="0 0 24 24" id="icon-zoom-in" stroke-width="1" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">\n <path stroke="none" d="M0 0h24v24H0z" fill="none"></path>\n <circle cx="10" cy="10" r="7"></circle>\n <line x1="7" y1="10" x2="13" y2="10"></line>\n <line x1="10" y1="7" x2="10" y2="13"></line>\n <line x1="21" y1="21" x2="15" y2="15"></line>\n </symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-contract"><path d="M64 371.2h76.795V448H192V320H64v51.2zm76.795-230.4H64V192h128V64h-51.205v76.8zM320 448h51.2v-76.8H448V320H320v128zm51.2-307.2V64H320v128h128v-51.2h-76.8z"></path></symbol>\n \n <symbol viewBox="0 0 24 24" id="icon-lock-off" stroke-width="1" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">\n <path stroke="none" d="M0 0h24v24H0z" fill="none"/>\n <line x1="3" y1="3" x2="21" y2="21" />\n <path d="M19 19a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-6a2 2 0 0 1 2 -2h4m4 0h2a2 2 0 0 1 2 2v2" />\n <circle cx="12" cy="16" r="1" />\n <path d="M8 11v-3m.712 -3.278a4 4 0 0 1 7.288 2.278v4" />\n </symbol>\n <symbol viewBox="0 0 24 24" id="icon-lock" stroke-width="1" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">\n <path stroke="none" d="M0 0h24v24H0z" fill="none"/>\n <rect x="5" y="11" width="14" height="10" rx="2" />\n <circle cx="12" cy="16" r="1" />\n <path d="M8 11v-4a4 4 0 0 1 8 0v4" />\n </symbol>\n <symbol viewBox="0 0 24 24" id="icon-code" stroke-width="1" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">\n <path stroke="none" d="M0 0h24v24H0z"/>\n <polyline points="7 8 3 12 7 16" />\n <polyline points="17 8 21 12 17 16" />\n <line x1="14" y1="4" x2="10" y2="20" />\n </symbol>\n\n </defs>\n </svg>')};class Je{constructor(t){this.builder=t;const e=this.builder.util;this.util=e}getSnippetsHtml(){const t=this.util,e=this.builder.opts.snippetUrl,i=this.builder.opts.snippetPath;let n="[";for(let e=0;e<this.builder.opts.snippetCategories.length;e++)n+=`[${this.builder.opts.snippetCategories[e][0]},'${t.out(this.builder.opts.snippetCategories[e][1])}'],`;n+="]";const o=this.builder.opts.defaultSnippetCategory;return`\n <!DOCTYPE HTML>\n <html>\n \n <head>\n <meta charset="utf-8">\n <title></title>\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <meta name="description" content="">\n <script src="${e}" type="text/javascript"><\/script>\n <style>\n body {\n // background: #fff;\n background: ${this.builder.styleSnippetBackground};\n margin: 0;\n }\n /*\n body.dark {\n background: #111;\n }\n .dark .is-categories {\n background: #333;\n }\n .dark .is-category-list a {\n background: #333;\n color: #fff;\n }\n .dark .is-category-list a.active {\n background: #525252;\n color: #fff;\n }\n .dark .is-category-list a:hover {\n color: #fff;\n }\n .dark .is-design-list>div img {\n opacity: 0.93;\n }\n .dark .is-more-categories {\n background: #333;\n }\n .dark .is-more-categories a {\n background: #333;\n color: #fff;\n }\n .dark .is-more-categories a:hover {\n background: #4c4c4c;\n }\n .dark .is-more-categories a.active {\n background: #4c4c4c;\n }\n */\n\n \n .dark .is-design-list>div {\n outline: transparent 1px solid;\n }\n\n \n \n /* Scrollbar for modal */\n\n /* Darker color, because background for snippet thumbnails is always light. */\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(78 78 78 / 62%) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgb(78 78 78 / 62%);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .colored * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .colored *::-webkit-scrollbar {\n width: 12px;\n }\n .colored *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n \n svg {\n fill: ${this.builder.styleSnippetColor};\n }\n\n .is-design-list {\n position: fixed;\n top: 0px;\n left: 0px;\n border-top: transparent 68px solid;\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 0px 0px 30px 30px;\n box-sizing: border-box;\n overflow: auto;\n }\n \n .is-design-list>div {\n width: 250px;\n min-height:120px;\n position:relative;\n background: #fff;\n // background: ${this.builder.styleToolBackground};\n overflow: hidden;\n margin: 32px 40px 0 0;\n cursor: pointer;\n display: inline-block;\n outline: #ececec 1px solid;\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\n }\n \n .is-design-list>div img {\n box-shadow: none;\n opacity: 1;\n display: block;\n box-sizing: border-box;\n transition: all 0.2s ease-in-out;\n max-width: 400px;\n width: 100%\n }\n \n // .is-design-list>div:hover img {\n // opacity: 0.95;\n // }\n \n // .is-design-list>div:hover {\n // background: #999;\n // }\n .is-overlay {\n position:absolute;left:0px;top:0px;width:100%;height:100%;\n }\n .is-design-list>div .is-overlay:after {\n background: rgba(0, 0, 0, 0.02);\n position: absolute;\n content: "";\n display: block;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n transition: all 0.3s ease-in-out;\n opacity: 0;\n }\n .is-design-list>div:hover .is-overlay:after {\n opacity: 0.9;\n }\n .dark .is-design-list>div .is-overlay:after {\n background: rgb(78 78 78 / 13%);\n }\n \n .is-category-list {\n position: relative;\n top: 0px;\n left: 0px;\n width: 100%;\n height: 80px;\n box-sizing: border-box;\n z-index: 1;\n }\n \n .is-category-list>div {\n white-space: nowrap;\n padding: 0 30px;\n box-sizing: border-box;\n font-family: sans-serif;\n font-size: 10px;\n text-transform: uppercase;\n letter-spacing: 2px;\n // background: #f5f5f5;\n background: ${this.builder.styleSnippetTabsBackground};\n // box-shadow: 0 5px 8px rgb(0 0 0 / 4%);\n }\n \n .is-category-list a {\n display: inline-block;\n padding: 10px 20px;\n // background: #fefefe;\n // color: #000;\n background: ${this.builder.styleSnippetTabItemBackground};\n color: ${this.builder.styleSnippetTabItemColor};\n border-radius: 50px;\n \n margin: 0 12px 0 0;\n text-decoration: none;\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.03);\n transition: box-shadow ease 0.3s;\n }\n \n .is-category-list a:hover {\n /*background: #fafafa;*/\n background: ${this.builder.styleSnippetTabItemBackgroundHover};\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.06);\n // color: #000;\n color: ${this.builder.styleSnippetTabItemColor};\n }\n \n .is-category-list a.active {\n // background: #f5f5f5;\n background: ${this.builder.styleSnippetTabItemBackgroundActive};\n // color: #000;\n color: ${this.builder.styleSnippetTabItemColor};\n box-shadow: none;\n cursor: default;\n }\n \n .is-more-categories {\n display: none;\n position: absolute;\n width: 400px;\n box-sizing: border-box;\n padding: 0;\n z-index: 1;\n font-family: sans-serif;\n font-size: 10px;\n text-transform: uppercase;\n letter-spacing: 2px;\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\n // background: #fff;\n background: ${this.builder.styleSnippetMoreItemBackground};\n }\n \n .is-more-categories a {\n width: 200px;\n float: left;\n display: block;\n box-sizing: border-box;\n padding: 12px 20px;\n // background: #fff;\n background: ${this.builder.styleSnippetMoreItemBackground};\n text-decoration: none;\n // color: #000;\n color: ${this.builder.styleSnippetMoreItemColor};\n line-height: 1.6;\n }\n \n .is-more-categories a:hover {\n // background: #eee;\n background: ${this.builder.styleSnippetMoreItemBackgroundHover};\n }\n \n .is-more-categories a.active {\n // background: #eee;\n background: ${this.builder.styleSnippetMoreItemBackgroundActive};\n }\n \n .is-more-categories.active {\n display: block;\n }\n \n /* First Loading */\n /* .is-category-list {\n display: none;\n }\n \n .is-design-list {\n display: none;\n }\n \n .pace {\n -webkit-pointer-events: none;\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n \n .pace-inactive {\n display: none;\n }\n \n .pace .pace-progress {\n background: #000000;\n position: fixed;\n z-index: 2000;\n top: 0;\n right: 100%;\n width: 100%;\n height: 2px;\n } */\n \n .is-more-categories>a:nth-child(0) {\n display: none\n }\n \n .is-more-categories>a:nth-child(1) {\n display: none\n }\n \n .is-more-categories>a:nth-child(2) {\n display: none\n }\n \n .is-more-categories>a:nth-child(3) {\n display: none\n }\n \n .is-more-categories>a:nth-child(4) {\n display: none\n }\n \n .is-more-categories>a:nth-child(5) {\n display: none\n }\n \n .is-more-categories>a:nth-child(6) {\n display: none\n }\n \n .is-more-categories>a:nth-child(7) {\n display: none\n }\n \n @media all and (max-width: 1212px) {\n .is-categories>a:nth-child(7):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(7) {\n display: block\n }\n }\n \n @media all and (max-width: 1070px) {\n .is-categories>a:nth-child(6):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(6) {\n display: block\n }\n }\n \n @media all and (max-width: 940px) {\n .is-categories>a:nth-child(5):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(5) {\n display: block\n }\n }\n \n @media all and (max-width: 700px) {\n .is-categories>a:nth-child(4):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(4) {\n display: block\n }\n }\n \n @media all and (max-width: 555px) {\n .is-categories>a:nth-child(3):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(3) {\n display: block\n }\n }\n \n @media all and (max-width: 415px) {\n .is-categories>a:nth-child(2):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(2) {\n display: block\n }\n }\n \n @media all and (max-width: 640px) {\n .is-more-categories a {\n width: 150px;\n padding: 10px 5px 10px 15px;\n font-size: 10px;\n }\n \n .is-more-categories {\n left: 0 !important;\n width: 100% !important;\n }\n }\n </style>\n </head>\n \n <body${this.builder.styleDark?' class="dark"':""}${this.builder.styleColored?' class="colored"':""}${this.builder.styleColoredDark?' class="colored-dark"':""}${this.builder.styleLight?' class="light"':""}>\n\n <svg style="display:none">\n <defs>\n <symbol viewBox="0 0 512 512" id="ion-ios-close-empty">\n <path d="M340.2 160l-84.4 84.3-84-83.9-11.8 11.8 84 83.8-84 83.9 11.8 11.7 84-83.8 84.4 84.2 11.8-11.7-84.4-84.3 84.4-84.2z"></path>\n </symbol>\n </defs>\n </svg>\n \n <div class="is-pop-close"\n style="z-index:10;width:30px;height:30px;position:absolute;top:0px;right:0px;box-sizing:border-box;padding:0;line-height:40px;font-size: 12px;text-align:center;cursor:pointer;">\n <svg class="is-icon-flex" style="width:30px;height:30px;">\n <use xlink:href="#ion-ios-close-empty"></use>\n </svg>\n </div>\n \n <div class="is-category-list">\n <div class="is-categories" style="position:fixed;top:0;left:0;right:0;height:68px;padding-top:17px;box-sizing:border-box;">\n </div>\n </div>\n\n <div class="is-more-categories">\n </div>\n \n <div class="is-design-list">\n </div>\n \n <script>\n \n var snippetPath = '${i}';\n var snippetCategories = ${n};\n var defaultSnippetCategory = ${o};\n\n ${void 0!==this.builder.slider&&null!==this.builder.slider?`\n var slider='${this.builder.slider}';`:"var slider=null;"};\n \n var numOfCat = snippetCategories.length;\n if (numOfCat <= 7) {\n document.querySelector('.is-more-categories').style.width = '200px';\n }\n \n var categorytabs = document.querySelector('.is-categories');\n categorytabs.innerHTML = '';\n let html_catselect = '';\n for (var i = 0; i < numOfCat; i++) {\n if (i < 7) {\n html_catselect += '<a href="" data-cat="' + snippetCategories[i][0] + '">' + parent._cb.out(snippetCategories[i][1]) + '</a>';\n }\n }\n html_catselect += '<a href="" class="more-snippets">' + parent._cb.out('More') + '</a>';\n categorytabs.innerHTML = html_catselect;\n \n var categorymore = document.querySelector('.is-more-categories');\n html_catselect = '';\n for (var i = 0; i < numOfCat; i++) {\n html_catselect += '<a href="" data-cat="' + snippetCategories[i][0] + '">' + parent._cb.out(snippetCategories[i][1]) + '</a>';\n }\n categorymore.innerHTML = html_catselect;\n \n // Show/hide "More" button\n if (numOfCat <= 7) {\n var bHasMore = false;\n \n const childNodes = categorymore.childNodes;\n let i = childNodes.length;\n while (i--) {\n if(childNodes[i].style.display === 'block') {\n bHasMore = true;\n }\n }\n var more = document.querySelector('.more-snippets');\n if (!bHasMore) more.style.display = 'none';\n else more.style.display = '';\n }\n \n var elms = categorytabs.querySelectorAll('a[data-cat="' + defaultSnippetCategory + '"]'); //.classList.add('active');\n Array.prototype.forEach.call(elms, function(elm){\n elm.classList.add('active');\n });\n elms = categorymore.querySelectorAll('a[data-cat="' + defaultSnippetCategory + '"]'); //.classList.add('active');\n Array.prototype.forEach.call(elms, function(elm){\n elm.classList.add('active');\n });\n \n var snippets = data_basic.snippets; //DATA\n\n if (slider !== null){\n if(slider==='slick') {\n //remove glide\n const predicate = (item) => (item.type!=='glide');\n snippets = snippets.filter(predicate);\n } else if(slider==='glide') {\n //remove slick\n const predicate = (item) => (item.type!=='slick');\n snippets = snippets.filter(predicate);\n } else if(slider==='all') {\n // Do Nothing\n } else {\n // remove all slider (if incorrect settings)\n const predicate = (item) => (item.type!=='glide' && item.type!=='slick');\n snippets = snippets.filter(predicate);\n }\n\n } else {\n //backward compatible\n\n // Hide slider snippet if slick is not included\n var bHideSliderSnippet = true;\n if(parent.jQuery) {\n if(parent.jQuery.fn.slick) {\n bHideSliderSnippet = false;\n }\n }\n \n if(bHideSliderSnippet){\n for (let i = 0; i < snippets.length; i++) {\n if (snippets[i].thumbnail.indexOf('element-slider.png') != -1||\n snippets[i].type === 'slick'||\n snippets[i].type === 'glide') {\n snippets.splice(i, 1);\n break;\n }\n }\n } \n }\n \n var designlist = document.querySelector('.is-design-list');\n for (let i = 0; i <snippets.length; i++) {\n \n snippets[i].id = i+1;\n var thumb = snippets[i].thumbnail;\n \n thumb = snippetPath + thumb;\n \n if (snippets[i].category === defaultSnippetCategory + '') {\n designlist.insertAdjacentHTML('beforeend', '<div data-id="' + snippets[i].id + '" data-cat="' + snippets[i].category + '"><img src="' + thumb + '"><span class="is-overlay"></span></div>');\n \n var newitem = designlist.querySelector('[data-id="' + snippets[i].id + '"]');\n newitem.addEventListener('click', function(e){\n \n var snippetid = e.target.parentNode.getAttribute('data-id');\n addSnippet(snippetid);\n \n });\n \n }\n \n }\n \n var categorylist = document.querySelector('.is-category-list');\n elms = categorylist.querySelectorAll('a');\n Array.prototype.forEach.call(elms, function(elm){\n \n elm.addEventListener('click', function(e){\n \n if(elm.classList.contains('active')) {\n e.preventDefault();\n return false;\n }\n \n var cat = elm.getAttribute('data-cat');\n if(designlist.querySelectorAll('[data-cat="' + cat + '"]').length === 0) {\n \n for (let i = 0; i <snippets.length; i++) {\n \n var thumb = snippets[i].thumbnail;\n \n thumb = snippetPath + thumb; \n \n if (snippets[i].category === cat) {\n designlist.insertAdjacentHTML('beforeend', '<div data-id="' + snippets[i].id + '" data-cat="' + snippets[i].category + '"><img src="' + thumb + '"><span class="is-overlay"></span></div>');\n \n var newitem = designlist.querySelector('[data-id="' + snippets[i].id + '"]');\n newitem.addEventListener('click', function(e){\n \n var snippetid = e.target.parentNode.getAttribute('data-id');\n addSnippet(snippetid);\n \n });\n }\n \n } \n }\n \n if (cat) {\n // Hide all, show items from selected category\n var categorylist_items = categorylist.querySelectorAll('a'); \n Array.prototype.forEach.call(categorylist_items, function(elm){\n elm.className = elm.className.replace('active', '');\n });\n categorymore.className = categorymore.className.replace('active', ''); \n var categorymore_items = categorymore.querySelectorAll('a');\n Array.prototype.forEach.call(categorymore_items, function(elm){\n elm.className = elm.className.replace('active', '');\n });\n \n var items = designlist.querySelectorAll('div');\n Array.prototype.forEach.call(items, function(elm){\n elm.style.display = 'none';\n });\n Array.prototype.forEach.call(items, function(elm){\n var catSplit = elm.getAttribute('data-cat').split(',');\n for (var j = 0; j < catSplit.length; j++) {\n if (catSplit[j] == cat) {\n elm.style.display = ''; // TODO: hide & show snippets => animated\n }\n }\n });\n \n } else {\n // more snipptes\n var more = document.querySelector('.more-snippets');\n var moreCategories = document.querySelector('.is-more-categories');\n if(more.classList.contains('active')) {\n more.className = more.className.replace('active', '');\n moreCategories.className = moreCategories.className.replace('active', '');\n } else {\n var _width = moreCategories.offsetWidth;\n more.classList.add('active');\n moreCategories.classList.add('active');\n var top = more.getBoundingClientRect().top;\n var left = more.getBoundingClientRect().left;\n top = top + 50;\n moreCategories.style.top = top + 'px';\n moreCategories.style.left = left + 'px';\n }\n }\n elm.classList.add('active');\n \n e.preventDefault();\n });\n \n });\n \n elms = categorymore.querySelectorAll('a');\n Array.prototype.forEach.call(elms, function(elm){\n \n elm.addEventListener('click', function(e){\n \n var cat = elm.getAttribute('data-cat');\n if(designlist.querySelectorAll('[data-cat="' + cat + '"]').length === 0) {\n \n for (let i = 0; i <snippets.length; i++) {\n \n var thumb = snippets[i].thumbnail;\n \n thumb = snippetPath + thumb;\n \n if (snippets[i].category === cat) {\n \n designlist.insertAdjacentHTML('beforeend', '<div data-id="' + snippets[i].id + '" data-cat="' + snippets[i].category + '"><img src="' + thumb + '"><span class="is-overlay"></span></div>');\n \n var newitem = designlist.querySelector('[data-id="' + snippets[i].id + '"]');\n newitem.addEventListener('click', function(e){\n \n var snippetid = e.target.parentNode.getAttribute('data-id');\n addSnippet(snippetid);\n \n });\n }\n \n } \n }\n \n // Hide all, show items from selected category\n Array.prototype.forEach.call(elms, function(elm){\n elm.className = elm.className.replace('active', '');\n });\n categorymore.className = categorymore.className.replace('active', ''); // hide popup\n //var categorymore_items = categorymore.querySelectorAll('a');\n \n var categorylist = document.querySelector('.is-category-list');\n var categorylist_items = categorylist.querySelectorAll('a'); \n Array.prototype.forEach.call(categorylist_items, function(elm){\n elm.className = elm.className.replace('active', '');\n });\n \n var more = document.querySelector('.more-snippets');\n more.className = more.className.replace('active', '');\n \n var items = designlist.querySelectorAll('div');\n Array.prototype.forEach.call(items, function(elm){\n elm.style.display = 'none';\n });\n Array.prototype.forEach.call(items, function(elm){\n var catSplit = elm.getAttribute('data-cat').split(',');\n for (var j = 0; j < catSplit.length; j++) {\n if (catSplit[j] == cat) {\n elm.style.display = '';\n }\n }\n });\n \n elm.classList.add('active');\n \n e.preventDefault();\n });\n \n });\n \n var close = document.querySelector('.is-pop-close');\n close.addEventListener('click', function(e){\n var modal = parent.document.querySelector('.is-modal.snippets');\n removeClass(modal, 'active');\n });\n \n // Add document Click event\n document.addEventListener('click', function(e){\n e = e || window.event;\n var target = e.target || e.srcElement; \n \n if(parentsHasClass(target, 'more-snippets')) return;\n if(hasClass(target, 'more-snippets')) return;\n \n var more = document.querySelector('.more-snippets');\n var moreCategories = document.querySelector('.is-more-categories');\n \n more.className = more.className.replace('active', '');\n moreCategories.className = moreCategories.className.replace('active', '');\n });\n \n parent.document.addEventListener('click', function(e){\n var more = document.querySelector('.more-snippets');\n var moreCategories = document.querySelector('.is-more-categories');\n \n more.className = more.className.replace('active', '');\n moreCategories.className = moreCategories.className.replace('active', '');\n });\n \n function addSnippet(snippetid) {\n \n // TODO: var framework = parent._cb.opts.framework;\n var snippetPathReplace = parent._cb.opts.snippetPathReplace;\n var emailMode = parent._cb.opts.emailMode;\n \n // \n for (let i = 0; i <snippets.length; i++) {\n if(snippets[i].id + ''=== snippetid) {\n \n var html = snippets[i].html;\n var noedit = snippets[i].noedit;\n break;\n }\n }\n \n var bSnippet;\n if (html.indexOf('row clearfix') === -1) {\n bSnippet = true; // Just snippet (without row/column grid)\n } else {\n bSnippet = false; // Snippet is wrapped in row/colum\n }\n if (emailMode) bSnippet = false;\n\n if(bSnippet) {\n var quickadd = parent._cb.builderStuff.querySelector('.quickadd');\n var mode = quickadd.getAttribute('data-mode');\n if(!mode) {\n // in case of using viewSnippets() to open the dialog (mode=null) => change to non snippet.\n html = '<div class="row clearfix">' +\n '<div class="column full">' +\n html +\n '</div>' +\n '</div>';\n bSnippet=false;\n }\n }\n \n // Convert snippet into your defined 12 columns grid \n var rowClass = parent._cb.opts.row; //row\n var colClass = parent._cb.opts.cols; //['col s1', 'col s2', 'col s3', 'col s4', 'col s5', 'col s6', 'col s7', 'col s8', 'col s9', 'col s10', 'col s11', 'col s12']\n if(rowClass!=='' && colClass.length===12){\n html = html.replace(new RegExp('row clearfix', 'g'), rowClass);\n html = html.replace(new RegExp('column full', 'g'), colClass[11]);\n html = html.replace(new RegExp('column half', 'g'), colClass[5]);\n html = html.replace(new RegExp('column third', 'g'), colClass[3]);\n html = html.replace(new RegExp('column fourth', 'g'), colClass[2]);\n html = html.replace(new RegExp('column fifth', 'g'), colClass[1]);\n html = html.replace(new RegExp('column sixth', 'g'), colClass[1]);\n html = html.replace(new RegExp('column two-third', 'g'), colClass[7]);\n html = html.replace(new RegExp('column two-fourth', 'g'), colClass[8]);\n html = html.replace(new RegExp('column two-fifth', 'g'), colClass[9]);\n html = html.replace(new RegExp('column two-sixth', 'g'), colClass[9]);\n }\n \n html = html.replace(/{id}/g, makeid()); // Replace {id} with auto generated id (for custom code snippet)\n \n if(parent._cb.opts.onAdd){\n html = parent._cb.opts.onAdd(html);\n }\n\n if(snippetPathReplace.length>0) {\n if (snippetPathReplace[0] != '') {\n var regex = new RegExp(snippetPathReplace[0], 'g');\n html = html.replace(regex, snippetPathReplace[1]);\n\n /* for encoded replace, change / to %2F */\n var slash = new RegExp('/', 'g');\n var snippetPathReplace_0 = snippetPathReplace[0].replace(slash, '%2F');\n var snippetPathReplace_1 = snippetPathReplace[1].replace(slash, '%2F');\n regex = new RegExp(snippetPathReplace_0, 'g');\n html = html.replace(regex, snippetPathReplace_1);\n }\n }\n \n parent._cb.addSnippet(html, bSnippet, noedit);\n \n var modal = parent.document.querySelector('.is-modal.snippets');\n removeClass(modal, 'active');\n \n }\n \n function hasClass(element, classname) {\n if(!element) return false;\n return element.classList ? element.classList.contains(classname) : new RegExp('\\b'+ classname+'\\b').test(element.className);\n }\n \n function removeClass(element, classname) {\n if(!element) return;\n if(element.classList.length>0) {\n element.className = element.className.replace(classname, '');\n }\n }\n \n function parentsHasClass(element, classname) {\n while (element) {\n if(element.tagName === 'BODY' || element.tagName === 'HTML') return false;\n if(!element.classList) return false;\n if (element.classList.contains(classname)) {\n return true;\n }\n element = element.parentNode;\n }\n }\n \n function makeid() {//http://stackoverflow.com/questions/1349404/generate-a-string-of-5-random-characters-in-javascript\n var text = "";\n var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";\n for (var i = 0; i < 2; i++)\n text += possible.charAt(Math.floor(Math.random() * possible.length));\n \n var text2 = "";\n var possible2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";\n for (var i = 0; i < 5; i++)\n text2 += possible2.charAt(Math.floor(Math.random() * possible2.length));\n \n return text + text2;\n }\n \n <\/script>\n \n </textarea>\n </body>\n \n </html>\n `}}const Qe=new e,ti=t=>{const e=t.util,i=t.builderStuff;let n=i.querySelector(".quickadd");if(!n){const o=`<div class="is-pop quickadd arrow-right" style="z-index:10003;">\n <div class="is-pop-close" style="display:none;z-index:1;width:40px;height:40px;position:absolute;top:0px;right:0px;box-sizing:border-box;padding:0;line-height:40px;font-size: 12px;color:#777;text-align:center;cursor:pointer;"><svg class="is-icon-flex" style="width:40px;height:40px;"><use xlink:href="#ion-ios-close-empty"></use></svg></div>\n <div class="is-pop-tabs">\n <div class="is-pop-tab-item active" data-value="left">${e.out("Add to Left")}</div>\n <div class="is-pop-tab-item" data-value="right">${e.out("Add to Right")}</div>\n </div>\n <div style="padding:12px;display:flex;flex-direction:row;flex-flow: wrap;justify-content: center;align-items: center;">\n <button title="${e.out("Paragraph")}" class="add-paragraph"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:12px;height:12px;"><use xlink:href="#icon-align-full"></use></svg></span>${e.out("Paragraph")}</button>\n <button title="${e.out("Headline")}" class="add-headline"><span style="font-family:serif;display:block;margin:0 0 8px;font-size:11px;">H</span>${e.out("Headline")}</button>\n <button title="${e.out("Image")}" class="add-image"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex ion-image" style="width:14px;height:14px;"><use xlink:href="#ion-image"></use></svg></span>${e.out("Image")}</button>\n <button title="${e.out("List")}" class="add-list"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#icon-list-bullet"></use></svg></span>${e.out("List")}</button>\n <button title="${e.out("Heading 1")}" class="add-heading1"><span style="font-family:serif;display:block;margin:0 0 8px;">H1</span>${e.out("Heading 1")}</button>\n <button title="${e.out("Heading 2")}" class="add-heading2"><span style="font-family:serif;display:block;margin:0 0 8px;">H2</span>${e.out("Heading 2")}</button>\n <button title="${e.out("Heading 3")}" class="add-heading3"><span style="font-family:serif;display:block;margin:0 0 8px;">H3</span>${e.out("Heading 3")}</button>\n <button title="${e.out("Heading 4")}" class="add-heading4"><span style="font-family:serif;display:block;margin:0 0 8px;">H4</span>${e.out("Heading 4")}</button>\n <button title="${e.out("Quote")}" class="add-quote"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-quote"></use></svg></span>${e.out("Quote")}</button>\n <button title="${e.out("Preformatted")}" class="add-preformatted"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-code"></use></svg></span>${e.out("Preformatted")}</button>\n ${t.opts.emailMode?"":`<button title="${e.out("Button")}" class="add-button"><span style="display:block;margin:0 0 8px;"><span style="display:inline-block;border:#a1a1a1 1px solid;background:#f3f3f3;width:10px;height:4px;"></span></span>${e.out("Button")}</button>`}\n ${t.opts.emailMode?"":`<button title="${e.out("Two Button")}" class="add-twobutton"><span style="display:block;margin:0 0 8px;"><span style="display:inline-block;border:#a1a1a1 1px solid;background:#f3f3f3;width:10px;height:4px;"></span></span>${e.out("Two Button")}</button>`}\n <button title="${e.out("Youtube")}" class="add-youtube"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-social-youtube-outline"></use></svg></use></svg></svg></span>${e.out("Youtube")}</button>\n <button title="${e.out("Video")}" class="add-video"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-ios-play"></use></svg></use></svg></svg></span>${e.out("Video")}</button>\n <button title="${e.out("Map")}" class="add-map"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-location"></use></svg></use></svg></svg></span>${e.out("Map")}</button>\n <button title="${e.out("Table")}" class="add-table"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:15px;height:15px;"><use xlink:href="#icon-table"></use></svg></use></svg></svg></span>${e.out("Table")}</button>\n <button title="${e.out("Icon")}" class="add-icon"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-android-happy"></use></svg></use></svg></svg></span>${e.out("Icon")}</button>\n <button title="${e.out("Social Links")}" class="add-social"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-social-twitter"></use></svg></use></svg></svg></span>${e.out("Social Links")}</button>\n <button title="${e.out("HTML/JS")}" class="add-code"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#icon-code"></use></svg></use></svg></svg></span>${e.out("HTML/JS")}</button>\n <button title="${e.out("Spacer")}" class="add-spacer"><span style="display:block;margin:0 0 8px;"><span style="display:inline-block;background:#eee;width:30px;height:5px;"></span></span>${e.out("Spacer")}</button>\n <div class="pop-separator"></div>\n <button title="${e.out("More...")}" class="add-more" style="flex-direction:initial;">${e.out("More...")}</button>\n </div>\n </div>\n \n <div class="is-modal snippets">\n <div class="is-modal-content" style="max-width:1250px;height:90%;padding:0;">\n <iframe style="width:100%;height:100%;border: none;display: block;" src="about:blank"></iframe>\n </div>\n </div>\n `;Qe.appendHtml(i,o),n=i.querySelector(".quickadd"),document.addEventListener("click",(t=>{var e=(t=t||window.event).target||t.srcElement;if("flex"===n.style.display){let t=Qe.parentsHasClass(e,"quickadd"),i=Qe.parentsHasClass(e,"row-add"),o=Qe.parentsHasClass(e,"is-rowadd-tool"),s=Qe.parentsHasClass(e,"cell-add"),r=Qe.parentsHasClass(e,"elm-add"),l=Qe.parentsHasClass(e,"row-add-initial");if(t||i||o||s||r||l)return;n.style.display=""}}));let s=n.querySelectorAll(".is-pop-tab-item");Array.prototype.forEach.call(s,(t=>{Qe.addEventListener(t,"click",(t=>{let e=n.querySelectorAll(".is-pop-tab-item");Array.prototype.forEach.call(e,(t=>{Qe.removeClass(t,"active")})),Qe.addClass(t.target,"active"),"left"===n.querySelector(".active").getAttribute("data-value")?n.setAttribute("data-mode","cell-left"):n.setAttribute("data-mode","cell-right")}))}));let r=n.querySelector(".add-paragraph");Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. \n Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, \n when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>",t)})),r=n.querySelector(".add-headline"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="display">\n <h1>Headline Goes Here</h1>\n <p>Lorem Ipsum is simply dummy text</p>\n </div>',t)})),r=n.querySelector(".add-image"),Qe.addEventListener(r,"click",(()=>{const i=n.getAttribute("data-mode");let o=`<img onload="imageLoaded(this)" src="${t.opts.snippetPath}example.png" alt="" />`;t.opts.snippetSampleImage&&(o=`<img onload="imageLoaded(this)" src="${t.opts.snippetSampleImage}" alt="" />`),e.addContent(o,i)})),r=n.querySelector(".add-heading1"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<h1>Heading 1 here</h1>",t)})),r=n.querySelector(".add-heading2"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<h2>Heading 2 here</h2>",t)})),r=n.querySelector(".add-heading3"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<h3>Heading 3 here</h3>",t)})),r=n.querySelector(".add-heading4"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<h4>Heading 4 here</h4>",t)})),r=n.querySelector(".add-preformatted"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<pre>Lorem Ipsum is simply dummy text of the printing and typesetting industry. \n Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, \n when an unknown printer took a galley of type and scrambled it to make a type specimen book.</pre>",t)})),r=n.querySelector(".add-list"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<ul style="list-style: initial;padding-left: 20px;">\n <li>Lorem Ipsum is simply dummy text</li>\n <li>Lorem Ipsum is simply dummy text</li>\n </ul>',t)})),r=n.querySelector(".add-quote"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<blockquote>Lorem Ipsum is simply dummy text</blockquote>",t)})),r=n.querySelector(".add-button"),r&&Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div><a href="#" style="margin-top: ;margin-right: ;margin-bottom: ;margin-left: ;display: inline-block; text-decoration: none; transition: all 0.16s ease 0s; border-style: solid; cursor: pointer; background-color: rgb(220, 220, 220); color: rgb(0, 0, 0); border-color: rgb(220, 220, 220); border-width: 2px; border-radius: 0px; padding: 13px 28px; line-height: 21px; text-transform: uppercase; font-weight: 400; font-size: 14px; letter-spacing: 3px;">Read More</a></div>',t)})),r=n.querySelector(".add-twobutton"),r&&Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div>\n <a href="#" style="margin-top: ;margin-right: ;margin-bottom: ;margin-left: ;display: inline-block; text-decoration: none; transition: all 0.16s ease 0s; border-style: solid; cursor: pointer; background-color: rgb(220, 220, 220); color: rgb(0, 0, 0); border-color: rgb(220, 220, 220); border-width: 2px; border-radius: 0px; padding: 13px 28px; line-height: 21px; text-transform: uppercase; font-weight: 400; font-size: 14px; letter-spacing: 3px;">Read More</a> &nbsp;\n <a href="#" style="display: inline-block; text-decoration: none; transition: all 0.16s ease 0s; border-style: solid; cursor: pointer; background-color: rgba(0, 0, 0, 0); border-color: rgb(53, 53, 53); border-width: 2px; border-radius: 0px; padding: 13px 28px; line-height: 21px; text-transform: uppercase; font-weight: 600; font-size: 14px; letter-spacing: 3px; color: rgb(53, 53, 53);">Get Started</a>\n </div>',t)})),r=n.querySelector(".add-spacer"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="spacer height-80"></div>',t)})),r=n.querySelector(".add-code"),Qe.addEventListener(r,"click",(()=>{let i='<div class="row clearfix"><div class="column full" data-noedit data-html="'+encodeURIComponent("<h1 id=\"{id}\">Lorem ipsum</h1><p>This is a code block. You can edit this block using the source dialog.</p><script>var docReady = function (fn) {var stateCheck = setInterval(function () {if (document.readyState !== \"complete\") return;clearInterval(stateCheck);try{fn()}catch(e){}}, 1);};docReady(function() {document.querySelector('#{id}').innerHTML ='<b>Hello World..!</b>';});<\/script>")+'"></div></div>',n=t.opts.snippetPathReplace,o=t.opts.row,s=t.opts.cols;if(""!==o&&12===s.length&&(i=i.replace(new RegExp("row clearfix","g"),o),i=i.replace(new RegExp("column full","g"),s[11]),i=i.replace(new RegExp("column half","g"),s[5]),i=i.replace(new RegExp("column third","g"),s[3]),i=i.replace(new RegExp("column fourth","g"),s[2]),i=i.replace(new RegExp("column fifth","g"),s[1]),i=i.replace(new RegExp("column sixth","g"),s[1]),i=i.replace(new RegExp("column two-third","g"),s[7]),i=i.replace(new RegExp("column two-fourth","g"),s[8]),i=i.replace(new RegExp("column two-fifth","g"),s[9]),i=i.replace(new RegExp("column two-sixth","g"),s[9])),i=i.replace(/{id}/g,e.makeId()),t.opts.onAdd&&(i=t.opts.onAdd(i)),n.length>0&&""!==n[0]){let t=new RegExp(n[0],"g");i=i.replace(t,n[1])}t.addSnippet(i,!1,!0)})),r=n.querySelector(".add-table"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<table class="default" style="border-collapse:collapse;width:100%;">\n <thead>\n <tr>\n <td><br></td>\n <td><br></td>\n </tr>\n </thead>\n <tr>\n <td><br></td>\n <td><br></td>\n </tr>\n </table>',t)})),r=n.querySelector(".add-icon"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div style="text-align: center;">\n <i class="icon ion-android-alarm-clock size-80"></i>\n </div>',t)})),r=n.querySelector(".add-social"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="is-social" style="text-align: center;">\n <a href="https://twitter.com/"><i class="icon ion-social-twitter" style="margin-right: 1em"></i></a>\n <a href="https://www.facebook.com/"><i class="icon ion-social-facebook" style="margin-right: 1em"></i></a>\n <a href="mailto:you@example.com"><i class="icon ion-android-drafts"></i></a>\n </div>',t)})),r=n.querySelector(".add-map"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="embed-responsive embed-responsive-16by9">\n <iframe width="100%" height="400" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" class="mg1" src="https://maps.google.com/maps?q=Melbourne,+Victoria,+Australia&amp;hl=en&amp;sll=-7.981898,112.626504&amp;sspn=0.009084,0.016512&amp;oq=melbourne&amp;hnear=Melbourne+Victoria,+Australia&amp;t=m&amp;z=10&amp;output=embed"></iframe>\n </div>',t)})),r=n.querySelector(".add-youtube"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="embed-responsive embed-responsive-16by9">\n <iframe width="560" height="315" src="https://www.youtube.com/embed/P5yHEKqx86U?rel=0" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe>\n </div>',t)})),r=n.querySelector(".add-video"),Qe.addEventListener(r,"click",(()=>{const i=n.getAttribute("data-mode");let o=`<video style="width: 100%;" loop="" autoplay="">\n <source src="${t.opts.snippetPath}example.mp4" type="video/mp4"></video>`;t.opts.snippetSampleVideo&&(o=`<video style="width: 100%;" loop="" autoplay="">\n <source src="${t.opts.snippetSampleVideo}" type="video/mp4"></video>`),e.addContent(o,i)}));const l=new Je(t);r=n.querySelector(".add-more"),Qe.addEventListener(r,"click",(()=>{let t=i.querySelector(".snippets");e.showModal(t,!1,null,!1);var o=t.querySelector("iframe").contentWindow.document;""===o.body.innerHTML&&(o.open(),o.write(l.getSnippetsHtml()),o.close()),n.style.display=""}))}return n},ei=new e;class ii{constructor(e){this.builder=e,this.columnTool=new oi(e),this.rowTool=new ni(e),this.util=new t(this.builder)}moveColumnPrevious(){let t=this.columnTool;const e=this.util.cellSelected();e&&e.previousElementSibling&&(this.builder.uo.saveForUndo(),e.parentElement.insertBefore(e,e.previousElementSibling),t.position(e),this.builder.opts.onChange())}moveColumnNext(){let t=this.columnTool,e=this.util;const i=e.cellSelected();if(!i)return;const n=e.cellNext(i);n&&(this.builder.uo.saveForUndo(),i.parentElement.insertBefore(n,i),t.position(i),this.builder.opts.onChange())}moveColumnUp(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o=n.parentNode,s=2;if(o.querySelector(".is-row-overlay")&&(s=3),o.childElementCount-s==1){if(!o.previousElementSibling)return;{let i=4;if(this.builder.maxColumns&&(i=this.builder.maxColumns),o.previousElementSibling.childElementCount>=i+s||o.previousElementSibling.hasAttribute("data-protected"))return this.builder.uo.saveForUndo(),o.parentNode.insertBefore(o,o.previousElementSibling),e.position(n),void this.builder.opts.onChange();{this.builder.uo.saveForUndo();let i=o.previousElementSibling.querySelector(".is-row-tool");o.previousElementSibling.removeChild(i),i=o.previousElementSibling.querySelector(".is-rowadd-tool"),o.previousElementSibling.removeChild(i),o.previousElementSibling.appendChild(n),o.parentNode.removeChild(o);let s=document.querySelector(".builder-active");t.applyBehaviorOn(s),e.position(n),n.click(),this.builder.opts.onChange()}}}else{this.builder.uo.saveForUndo();var r=o.cloneNode(!0);r.innerHTML="",r.appendChild(n),o.parentNode.insertBefore(r,o);let i=document.querySelector(".builder-active");t.applyBehaviorOn(i),e.position(n),n.click(),this.builder.opts.onChange()}o=n.parentNode,i.fixLayout(o,t),o.nextElementSibling&&i.fixLayout(o.nextElementSibling,t)}moveColumnDown(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o=n.parentNode,s=2;if(o.querySelector(".is-row-overlay")&&(s=3),o.childElementCount-s==1){if(!o.nextElementSibling)return;{let i=4;if(this.builder.maxColumns&&(i=this.builder.maxColumns),o.nextElementSibling.childElementCount>=i+s||o.nextElementSibling.hasAttribute("data-protected"))return this.builder.uo.saveForUndo(),o.parentNode.insertBefore(o.nextElementSibling,o),e.position(n),void this.builder.opts.onChange();{this.builder.uo.saveForUndo();let i=o.nextElementSibling.querySelector(".is-row-tool");o.nextElementSibling.removeChild(i),i=o.nextElementSibling.querySelector(".is-rowadd-tool"),o.nextElementSibling.removeChild(i),o.nextElementSibling.appendChild(n),o.parentNode.removeChild(o);let s=document.querySelector(".builder-active");t.applyBehaviorOn(s),e.position(n),n.click(),this.builder.opts.onChange()}}}else{this.builder.uo.saveForUndo();var r=o.cloneNode(!0);r.innerHTML="",r.appendChild(n),ei.moveAfter(r,o);let i=document.querySelector(".builder-active");t.applyBehaviorOn(i),e.position(n),n.click(),this.builder.opts.onChange()}o=n.parentNode,i.fixLayout(o,t),o.previousElementSibling&&i.fixLayout(o.previousElementSibling,t)}duplicateColumn(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;this.builder.uo.saveForUndo();var o=n.cloneNode(!0);ei.removeClass(o,"cell-active"),o.removeAttribute("data-click");let s=n.parentNode,r=2;s.querySelector(".is-row-overlay")&&(r=3);let l=4;if(this.builder.maxColumns&&(l=this.builder.maxColumns),s.childElementCount>=l+r)return alert(i.out("You have reached the maximum number of columns")),!1;s.insertBefore(o,n),i.fixLayout(s,t);let a=document.querySelector(".builder-active");t.applyBehaviorOn(a),e.position(n),n.click(),this.builder.opts.onChange()}removeColumn(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o=n.parentNode,s=2;o.querySelector(".is-row-overlay")&&(s=3),e.hide(),i.confirm(i.out("Are you sure you want to delete this block?"),(r=>{r?(this.builder.uo.saveForUndo(),o.childElementCount-s==1?(o.parentNode.removeChild(o),i.checkEmpty()):(o.removeChild(n),i.fixLayout(o,t)),i.clearActiveCell(),this.builder.opts.onChange()):setTimeout((()=>{e.position(n),e.show()}),200)}))}increaseColumn(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o,s=i.cellNext(n);if(s)o=i.cellNext(s),o||(o=n.previousElementSibling);else{if(s=n.previousElementSibling,!s)return;o=s.previousElementSibling}const r=t.opts.row,l=t.opts.cols,a=t.opts.colsizes;if(""!==r&&l.length>0&&a.length>0){if(o)for(let t=0;t<a.length;t++){let i=a[t];for(let t=0;t<i.length;t++)if(3===i[t].length&&ei.hasClass(n,i[t][0])&&ei.hasClass(s,i[t][1])&&ei.hasClass(o,i[t][2])&&t+1!==i.length)return this.builder.uo.saveForUndo(),ei.removeClass(n,i[t][0]),ei.removeClass(s,i[t][1]),ei.removeClass(o,i[t][2]),ei.addClass(n,i[t+1][0]),ei.addClass(s,i[t+1][1]),ei.addClass(o,i[t+1][2]),e.position(n),void this.builder.opts.onChange()}for(let t=0;t<a.length;t++){let i=a[t];for(let t=0;t<i.length;t++)if(2===i[t].length&&ei.hasClass(n,i[t][0])&&ei.hasClass(s,i[t][1])&&t+1!==i.length)return this.builder.uo.saveForUndo(),ei.removeClass(n,i[t][0]),ei.removeClass(s,i[t][1]),ei.addClass(n,i[t+1][0]),ei.addClass(s,i[t+1][1]),e.position(n),void this.builder.opts.onChange()}e.position(n)}else if(""!==r&&l.length>0&&!ei.hasClass(n,l[11])){if(ei.hasClass(n,l[11]))return;if(ei.hasClass(s,l[0]))return;this.builder.uo.saveForUndo(),ei.hasClass(n,l[10])?(ei.removeClass(n,l[10]),ei.addClass(n,l[11])):ei.hasClass(n,l[9])?(ei.removeClass(n,l[9]),ei.addClass(n,l[10])):ei.hasClass(n,l[8])?(ei.removeClass(n,l[8]),ei.addClass(n,l[9])):ei.hasClass(n,l[7])?(ei.removeClass(n,l[7]),ei.addClass(n,l[8])):ei.hasClass(n,l[6])?(ei.removeClass(n,l[6]),ei.addClass(n,l[7])):ei.hasClass(n,l[5])?(ei.removeClass(n,l[5]),ei.addClass(n,l[6])):ei.hasClass(n,l[4])?(ei.removeClass(n,l[4]),ei.addClass(n,l[5])):ei.hasClass(n,l[3])?(ei.removeClass(n,l[3]),ei.addClass(n,l[4])):ei.hasClass(n,l[2])?(ei.removeClass(n,l[2]),ei.addClass(n,l[3])):ei.hasClass(n,l[1])?(ei.removeClass(n,l[1]),ei.addClass(n,l[2])):ei.hasClass(n,l[0])&&(ei.removeClass(n,l[0]),ei.addClass(n,l[1])),ei.hasClass(s,l[1])?(ei.removeClass(s,l[1]),ei.addClass(s,l[0])):ei.hasClass(s,l[2])?(ei.removeClass(s,l[2]),ei.addClass(s,l[1])):ei.hasClass(s,l[3])?(ei.removeClass(s,l[3]),ei.addClass(s,l[2])):ei.hasClass(s,l[4])?(ei.removeClass(s,l[4]),ei.addClass(s,l[3])):ei.hasClass(s,l[5])?(ei.removeClass(s,l[5]),ei.addClass(s,l[4])):ei.hasClass(s,l[6])?(ei.removeClass(s,l[6]),ei.addClass(s,l[5])):ei.hasClass(s,l[7])?(ei.removeClass(s,l[7]),ei.addClass(s,l[6])):ei.hasClass(s,l[8])?(ei.removeClass(s,l[8]),ei.addClass(s,l[7])):ei.hasClass(s,l[9])?(ei.removeClass(s,l[9]),ei.addClass(s,l[8])):ei.hasClass(s,l[10])?(ei.removeClass(s,l[10]),ei.addClass(s,l[9])):ei.hasClass(s,l[11])&&(ei.removeClass(s,l[11]),ei.addClass(s,l[10])),e.position(n),this.builder.opts.onChange()}}decreaseColumn(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o,s=i.cellNext(n);if(s)o=i.cellNext(s),o||(o=n.previousElementSibling);else{if(s=n.previousElementSibling,!s)return;o=s.previousElementSibling}const r=t.opts.row,l=t.opts.cols,a=t.opts.colsizes;if(""!==r&&l.length>0&&a.length>0){if(o)for(let t=0;t<a.length;t++){let i=a[t];for(let t=0;t<i.length;t++)if(3===i[t].length&&ei.hasClass(n,i[t][0])&&ei.hasClass(s,i[t][1])&&ei.hasClass(o,i[t][2])&&0!==t)return this.builder.uo.saveForUndo(),ei.removeClass(n,i[t][0]),ei.removeClass(s,i[t][1]),ei.removeClass(o,i[t][2]),ei.addClass(n,i[t-1][0]),ei.addClass(s,i[t-1][1]),ei.addClass(o,i[t-1][2]),e.position(n),void this.builder.opts.onChange()}for(let t=0;t<a.length;t++){let i=a[t];for(let t=0;t<i.length;t++)if(2===i[t].length&&ei.hasClass(n,i[t][0])&&ei.hasClass(s,i[t][1])&&0!==t)return this.builder.uo.saveForUndo(),ei.removeClass(n,i[t][0]),ei.removeClass(s,i[t][1]),ei.addClass(n,i[t-1][0]),ei.addClass(s,i[t-1][1]),e.position(n),void this.builder.opts.onChange()}e.position(n)}else if(""!==r&&l.length>0&&!ei.hasClass(n,l[11])){if(ei.hasClass(n,l[0]))return;if(ei.hasClass(s,l[11]))return;this.builder.uo.saveForUndo(),ei.hasClass(n,l[11])?(ei.removeClass(n,l[11]),ei.addClass(n,l[10])):ei.hasClass(n,l[10])?(ei.removeClass(n,l[10]),ei.addClass(n,l[9])):ei.hasClass(n,l[9])?(ei.removeClass(n,l[9]),ei.addClass(n,l[8])):ei.hasClass(n,l[8])?(ei.removeClass(n,l[8]),ei.addClass(n,l[7])):ei.hasClass(n,l[7])?(ei.removeClass(n,l[7]),ei.addClass(n,l[6])):ei.hasClass(n,l[6])?(ei.removeClass(n,l[6]),ei.addClass(n,l[5])):ei.hasClass(n,l[5])?(ei.removeClass(n,l[5]),ei.addClass(n,l[4])):ei.hasClass(n,l[4])?(ei.removeClass(n,l[4]),ei.addClass(n,l[3])):ei.hasClass(n,l[3])?(ei.removeClass(n,l[3]),ei.addClass(n,l[2])):ei.hasClass(n,l[2])?(ei.removeClass(n,l[2]),ei.addClass(n,l[1])):ei.hasClass(n,l[1])&&(ei.removeClass(n,l[1]),ei.addClass(n,l[0])),ei.hasClass(s,l[0])?(ei.removeClass(s,l[0]),ei.addClass(s,l[1])):ei.hasClass(s,l[1])?(ei.removeClass(s,l[1]),ei.addClass(s,l[2])):ei.hasClass(s,l[2])?(ei.removeClass(s,l[2]),ei.addClass(s,l[3])):ei.hasClass(s,l[3])?(ei.removeClass(s,l[3]),ei.addClass(s,l[4])):ei.hasClass(s,l[4])?(ei.removeClass(s,l[4]),ei.addClass(s,l[5])):ei.hasClass(s,l[5])?(ei.removeClass(s,l[5]),ei.addClass(s,l[6])):ei.hasClass(s,l[6])?(ei.removeClass(s,l[6]),ei.addClass(s,l[7])):ei.hasClass(s,l[7])?(ei.removeClass(s,l[7]),ei.addClass(s,l[8])):ei.hasClass(s,l[8])?(ei.removeClass(s,l[8]),ei.addClass(s,l[9])):ei.hasClass(s,l[9])?(ei.removeClass(s,l[9]),ei.addClass(s,l[10])):ei.hasClass(s,l[10])&&(ei.removeClass(s,l[10]),ei.addClass(s,l[11])),e.position(n),this.builder.opts.onChange()}}removeRow(){let t=this.util;const e=t.cellSelected();if(!e)return;const i=e.parentNode;ei.removeClass(i,"row-outline"),this.columnTool.hide(),t.confirm(t.out("Are you sure you want to delete this block?"),(e=>{const i=t.cellSelected();if(!i)return;const n=i.parentNode;e&&(this.builder.uo.saveForUndo(),n.parentNode.removeChild(n),t.checkEmpty(),this.builder.opts.onChange())}))}moveRowUp(){let t=this.columnTool,e=this.util;const i=e.cellSelected();if(!i)return;let n=i.parentNode;if(ei.removeClass(n,"row-outline"),t.hide(),n.previousElementSibling)this.builder.uo.saveForUndo(),n.parentNode.insertBefore(n,n.previousElementSibling),this.rowTool.position(n),this.builder.opts.onChange();else{let t=n.parentNode,i=null;const o=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(o,(o=>{if(o.innerHTML===t.innerHTML&&i)return ei.moveAfter(n,i.lastChild),this.rowTool.position(n),e.checkEmpty(),this.builder.opts.onChange(),!1;i=o}))}}moveRowDown(){let t=this.columnTool,e=this.util;const i=e.cellSelected();if(!i)return;let n=i.parentNode;if(ei.removeClass(n,"row-outline"),t.hide(),n.nextElementSibling)this.builder.uo.saveForUndo(),n.parentNode.insertBefore(n.nextElementSibling,n),this.rowTool.position(n),this.builder.opts.onChange();else{let t=n.parentNode,i=!1;const o=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(o,(o=>{if(i)return o.insertBefore(n,o.firstChild),this.rowTool.position(n),e.checkEmpty(),this.builder.opts.onChange(),!1;o.innerHTML===t.innerHTML&&(i=!0)}))}}duplicateRow(){let t=this.builder,e=this.columnTool;const i=this.util.cellSelected();if(!i)return;let n=i.parentNode;ei.removeClass(n,"row-outline"),e.hide(),this.builder.uo.saveForUndo();const o=n.cloneNode(!0);o.removeChild(o.querySelector(".is-row-tool"));let s=ei.elementChildren(o);s.forEach((e=>{e.removeAttribute("data-click"),e.classList.contains("cell-active")&&(t.activeCol=e)})),ei.moveAfter(o,n),ei.removeClass(n,"row-active"),ei.removeClass(n,"row-outline"),s=ei.elementChildren(n),s.forEach((t=>{ei.removeClass(t,"cell-active")}));let r=document.querySelector(".builder-active");t.applyBehaviorOn(r),this.rowTool.position(o),this.builder.opts.onChange()}refreshColumnTool(t){this.columnTool.position(t)}showColumnTool(){this.columnTool.show()}hideColumnTool(){this.columnTool.hide()}}class ni{constructor(t){this.builder=t}position(t){const e=this.builder.builderStuff;let i=t.querySelector(".is-row-tool"),n=e.querySelector(".rowmore");ei.addClass(n,"transition1");const o=i.querySelector(".row-more"),s=o.getBoundingClientRect().top+window.pageYOffset,r=o.getBoundingClientRect().left+window.pageXOffset;n.style.top=s-8+"px",ei.removeClass(n,"arrow-bottom"),ei.removeClass(n,"arrow-left"),ei.removeClass(n,"arrow-right"),ei.removeClass(n,"center"),ei.removeClass(n,"right"),ei.removeClass(n,"left"),"right"===this.builder.opts.rowTool?(n.style.left=r-n.offsetWidth-10+"px",ei.addClass(n,"arrow-right"),ei.addClass(n,"left")):(n.style.left=r+35+"px",ei.addClass(n,"arrow-left"),ei.addClass(n,"left")),setTimeout((()=>{ei.removeClass(n,"transition1")}),300)}}class oi{constructor(t){this.builder=t}position(t){const e=this.builder.builderStuff;this.columnTool=e.querySelector(".is-column-tool"),this.columnMore=e.querySelector(".columnmore"),ei.addClass(this.columnMore,"transition1"),setTimeout((()=>{this.columnTool.style.top=t.getBoundingClientRect().top-29+window.pageYOffset+"px",this.columnTool.style.left=t.getBoundingClientRect().left-1+"px";let e=parseInt(this.columnTool.style.top),i=parseInt(this.columnTool.style.left);this.columnMore.style.top=e+35+"px",this.columnMore.style.left=i+19+"px",setTimeout((()=>{ei.removeClass(this.columnMore,"transition1")}),300)}),300)}hide(){const t=this.builder.builderStuff;this.columnTool=t.querySelector(".is-column-tool"),ei.removeClass(this.columnTool,"active")}show(){const t=this.builder.builderStuff;this.columnTool=t.querySelector(".is-column-tool"),ei.addClass(this.columnTool,"active")}}let si,ri,li,ai,di,ci,ui,pi;class hi{constructor(t={}){this.opts=t;const e=document.querySelectorAll(this.opts.selector);Array.prototype.forEach.call(e,(t=>{t.setAttribute("draggable",""),t.addEventListener("touchstart",this.dragStart,!1),t.addEventListener("touchend",this.dragEnd,!1),t.addEventListener("mousedown",this.dragStart,!1),t.addEventListener("mouseup",this.dragEnd,!1)})),document.addEventListener("touchmove",this.drag,!1),document.addEventListener("mousemove",this.drag,!1)}dragStart(t){var e,i;t.target.hasAttribute("draggable")&&(ui=!0,pi=t.target.parentElement,pi.getAttribute("data-xOffset")?e=pi.getAttribute("data-xOffset"):(pi.setAttribute("data-xOffset",0),e=0),pi.getAttribute("data-yOffset")?i=pi.getAttribute("data-yOffset"):(pi.setAttribute("data-yOffset",0),i=0),"touchstart"===t.type?(si=t.touches[0].clientX-e,ri=t.touches[0].clientY-i):(si=t.clientX-e,ri=t.clientY-i),pi.setAttribute("data-initialX",si),pi.setAttribute("data-initialY",ri))}dragEnd(t){t.target.hasAttribute("draggable")&&(li=pi.getAttribute("data-currentX"),ai=pi.getAttribute("data-currentY"),si=li,ri=ai,pi.setAttribute("data-initialX",si),pi.setAttribute("data-initialY",ri),ui=!1)}drag(t){if(ui){t.preventDefault();var e=pi.getAttribute("data-initialX"),i=pi.getAttribute("data-initialY");"touchmove"===t.type?(li=t.touches[0].clientX-e,ai=t.touches[0].clientY-i):(li=t.clientX-e,ai=t.clientY-i),pi.style.transform="translate3d("+li+"px, "+ai+"px, 0)",pi.setAttribute("data-currentX",li),pi.setAttribute("data-currentY",ai),di=li,ci=ai,pi.setAttribute("data-xOffset",di),pi.setAttribute("data-yOffset",ci)}}isTouchSupport(){return"ontouchstart"in window||navigator.MaxTouchPoints>0||navigator.msMaxTouchPoints>0}}const vi=new e,fi=new e;class gi{constructor(t,e={}){this.opts=Object.assign(this,{onChange:function(){}},e);const i=t;let n=i.getAttribute("data-group"),o=document.querySelector('.is-selectbox-options[data-group="'+n+'"]');this.opts.dropdown&&(o=this.opts.dropdown),fi.addEventListener(i,"click",(()=>{if("none"===o.style.display){let t=document.querySelectorAll(".is-selectbox-options");Array.prototype.forEach.call(t,(t=>{t.style.display="none"})),o.style.display="block",fi.elementChildren(o).forEach((t=>{fi.removeClass(t,"selected")}));let e=i.getAttribute("data-value"),n=o.querySelector('[data-value="'+e+'"]');n&&fi.addClass(n,"selected")}else o.style.display="none"}));fi.elementChildren(o).forEach((t=>{fi.addEventListener(t,"click",(()=>{o.style.display="none";let e=t.getAttribute("data-value");i.querySelector("span").innerHTML=t.innerHTML,i.setAttribute("data-value",e),this.opts.onChange(e)}))}))}}
1
+ var ContentBuilder=function(){"use strict";class t{constructor(t){this.builder=t,this.dom=new e}cellSelected(){return document.querySelector(".cell-active")}builderStuff(){return document.querySelector("#_cbhtml")}cellNext(t){const e=this.dom;let i=t.nextElementSibling;return i?e.hasClass(i,"is-row-tool")||e.hasClass(i,"is-rowadd-tool")||e.hasClass(i,"is-row-overlay")?null:i:null}out(t){if(this.builder){let e=this.builder.opts.lang[t];return e||(this.builder.checkLang&&console.log(t),t)}return t}confirm(t,e){const i=this.dom;let n=`<div class="is-modal is-confirm">\n <div class="is-modal-content" style="padding-bottom:20px;">\n <p>${t}</p>\n <button title="${this.out("Delete")}" class="input-ok classic">${this.out("Delete")}</button>\n </div>\n </div>`;const o=this.builder.builderStuff;let s=o.querySelector(".is-confirm");s||(i.appendHtml(o,n),s=o.querySelector(".is-confirm")),this.showModal(s,!1,(()=>{s.parentNode.removeChild(s),e(!1)}),!0);let r=s.querySelector(".is-confirm .input-ok");i.addEventListener(r,"click",(()=>{this.hideModal(s),s.parentNode.removeChild(s),e(!0)}))}showModal(t,e,i,n){const o=this.dom;o.addClass(t,"active");let s=!1;if(this.builder?this.builder.opts.animateModal&&(s=!0,n||(s=!1)):n&&(s=!0),s&&this.builder){const t=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(t,(t=>{t.style.transform=`scale(${this.builder.opts.zoom-.02})`,t.style.WebkitTransform=`scale(${this.builder.opts.zoom-.02})`,t.style.MozTransform=`scale(${this.builder.opts.zoom-.02})`,t.setAttribute("scaled-down","1")}))}if(!t.querySelector(".is-modal-overlay")){let n;if(n=e?'<div class="is-modal-overlay overlay-stay"></div>':'<div class="is-modal-overlay"></div>',t.insertAdjacentHTML("afterbegin",n),!e){let e=t.querySelector(".is-modal-overlay");o.addEventListener(e,"click",(()=>{i&&i(),this.hideModal(t)}))}}}hideModal(t){if(this.builder){const t=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(t,(t=>{t.getAttribute("scaled-down")&&(t.style.transform=`scale(${this.builder.opts.zoom})`,t.style.WebkitTransform=`scale(${this.builder.opts.zoom})`,t.style.MozTransform=`scale(${this.builder.opts.zoom})`,t.removeAttribute("scaled-down"))}))}this.dom.removeClass(t,"active")}fixLayout(t){const e=this.dom;let i=2;t.querySelector(".is-row-overlay")&&(i=3);const n=t.childElementCount-i,o=this.builder.opts.row,s=this.builder.opts.cols,r=this.builder.opts.colequal;if(r.length>0){e.elementChildren(t).forEach((t=>{if(!(e.hasClass(t,"is-row-tool")||e.hasClass(t,"is-rowadd-tool")||e.hasClass(t,"is-row-overlay"))){for(let i=0;i<=s.length-1;i++)e.removeClass(t,s[i]);for(let i=0;i<=r.length-1;i++)if(r[i].length===n){e.addClass(t,r[i][0]);break}1===n&&e.addClass(t,s[s.length-1])}}))}else if(""!==o&&s.length>0){let i=0;e.elementChildren(t).forEach((t=>{if(!(e.hasClass(t,"is-row-tool")||e.hasClass(t,"is-rowadd-tool")||e.hasClass(t,"is-row-overlay"))){i++;for(var o=0;o<=s.length-1;o++)e.removeClass(t,s[o]);1===n&&e.addClass(t,s[11]),2===n&&e.addClass(t,s[5]),3===n&&e.addClass(t,s[3]),4===n&&e.addClass(t,s[2]),5===n&&(5===i?e.addClass(t,s[3]):e.addClass(t,s[1])),6===n&&e.addClass(t,s[1]),7===n&&(i>=6?e.addClass(t,s[0]):e.addClass(t,s[1])),8===n&&(i>=5?e.addClass(t,s[0]):e.addClass(t,s[1])),9===n&&(i>=4?e.addClass(t,s[0]):e.addClass(t,s[1])),10===n&&(i>=3?e.addClass(t,s[0]):e.addClass(t,s[1])),11===n&&(i>=2?e.addClass(t,s[0]):e.addClass(t,s[1])),12===n&&e.addClass(t,s[0])}}))}}addContent(t,e,i){const n=this.dom;this.builder.opts.onAdd&&(t=this.builder.opts.onAdd(t));const o=this.cellSelected();let s;if(o)s=o.parentNode;else{if(s=document.querySelector(".row-active"),!s)return;e="row"}if("cell"===e||"cell-left"===e||"cell-right"===e){let r=4;this.builder.maxColumns&&(r=this.builder.maxColumns);let l,a=2;if(s.querySelector(".is-row-overlay")&&(a=3),s.childElementCount>=r+a)return alert(this.out("You have reached the maximum number of columns")),!1;if(this.builder.uo.saveForUndo(),""===this.builder.opts.row){let e=this.builder.opts.cellFormat,i=e.indexOf("</");t=e.substring(0,i)+t+e.substring(i),l=this.createElementFromHTML(t)}else{l=o.cloneNode(!0),l.removeAttribute("data-noedit"),l.removeAttribute("data-protected"),l.removeAttribute("data-module"),l.removeAttribute("data-module-desc"),l.removeAttribute("data-dialog-width"),l.removeAttribute("data-html"),l.removeAttribute("data-settings");for(let t=1;t<=20;t++)l.removeAttribute("data-html-"+t);l.removeAttribute("data-noedit"),n.removeClass(l,"cell-active"),l.removeAttribute("data-click"),l.removeAttribute("style"),i&&l.setAttribute(i,""),l.innerHTML=t}s.insertBefore(l,o),"cell"!==e&&"cell-right"!==e||n.moveAfter(l,o);let d=document.querySelector(".builder-active");d&&this.builder.applyBehaviorOn(d),this.fixLayout(s),l.click()}if("row"===e){let e,o;if(this.builder.uo.saveForUndo(),""===this.builder.opts.row){e=this.htmlToElement(this.builder.opts.rowFormat);let s=this.builder.opts.cellFormat,r=s.indexOf("</");t=s.substring(0,r)+t+s.substring(r);let l=n.elementChildren(e);for(;l.length>0&&(l=l[0],n.elementChildren(l).length>0);)l=n.elementChildren(l);l.innerHTML=t,o=l.firstChild,i&&o.setAttribute(i,"")}else o=n.createElement("div"),n.addClass(o,this.builder.opts.cols[this.builder.opts.cols.length-1]),o.innerHTML=t,i&&o.setAttribute(i,""),e=n.createElement("div"),n.addClass(e,this.builder.opts.row),n.appendChild(e,o);s.parentNode.insertBefore(e,s),n.moveAfter(e,s);let r=document.querySelector(".builder-active");r&&this.builder.applyBehaviorOn(r),o.click()}if("elm"===e){let e=this.builder.activeElement;if(!e)return;this.builder.uo.saveForUndo();let i=e;i.insertAdjacentHTML("afterend",t);let n=document.querySelector(".builder-active");n&&this.builder.applyBehaviorOn(n);let o=i.nextElementSibling;var r;if("img"===o.tagName.toLowerCase())clearTimeout(r),r=setTimeout((()=>{o.complete&&o.click()}),200);else o.click()}this.builder.opts.onChange()}htmlToElement(t){var e=document.createElement("template");return t=t.trim(),e.innerHTML=t,e.content.firstChild}addSnippet(t,e,i){this.builder.uo.saveForUndo();const n=this.dom;let o,s,r,l,a=!1;const d=this.builder.builderStuff.querySelector(".quickadd").getAttribute("data-mode");if(!e||"cell"!==d&&"cell-left"!==d&&"cell-right"!==d){if(e&&"row"===d){let e;if(r=document.createElement("div"),r.className=this.builder.opts.cols[this.builder.opts.cols.length-1],r.innerHTML=t,i&&r.setAttribute("data-noedit",""),o=document.createElement("div"),o.className=this.builder.opts.row,o.appendChild(r),s=this.builder.cellSelected(),s?e=s.parentNode:(e=document.querySelector(".row-active"),e||(a=!0)),a){const t=document.querySelectorAll(".is-builder"),i=t[t.length-1],o=n.elementChildren(i);e=o[o.length-1]}e.parentNode.insertBefore(o,e),n.moveAfter(o,e);let d=document.querySelector(".builder-active");d&&this.builder.applyBehaviorOn(d),r.click(),o.className=o.className.replace("row-outline",""),l=document.querySelector(".is-column-tool"),l.className=l.className.replace("active","")}else{if(e)return void(i?this.addContent(t,d,"data-noedit"):this.addContent(t,d));{var c=document.createElement("div");c.innerHTML=t;var u=c.querySelectorAll("[data-html]");if(Array.prototype.forEach.call(u,(e=>{t=(t=decodeURIComponent(e.getAttribute("data-html"))).replace(/{id}/g,this.makeId());for(var i=1;i<=20;i++)t=t.replace("[%HTML"+i+"%]",void 0===e.getAttribute("data-html-"+i)?"":decodeURIComponent(e.getAttribute("data-html-"+i)));e.innerHTML=t})),1===c.childNodes.length&&1===c.childNodes[0].childNodes.length&&("cell"===d||"cell-left"===d||"cell-right"===d)){const t=this.cellSelected();let e=t.parentNode,i=4;if(this.builder.maxColumns&&(i=this.builder.maxColumns),e.querySelector(".is-row-overlay")){if(e.childElementCount>=i+3)return alert(this.out("You have reached the maximum number of columns")),!1}else if(e.childElementCount>=i+2)return alert(this.out("You have reached the maximum number of columns")),!1;this.builder.uo.saveForUndo();let n=c.childNodes[0].childNodes[0];var p=document.createRange();t.parentNode.insertBefore(p.createContextualFragment(n.outerHTML),t),"cell"!==d&&"cell-right"!==d||(t.parentNode.insertBefore(t.previousElementSibling,t),t.parentNode.insertBefore(t,t.previousElementSibling));let o=document.querySelector(".builder-active");return o&&this.builder.applyBehaviorOn(o),this.fixLayout(e),"cell"===d||"cell-right"===d?t.nextElementSibling.click():t.previousElementSibling.click(),void this.builder.opts.onChange()}let e;if(s=this.builder.activeCol,s?e=s.parentNode:(e=document.querySelector(".row-active"),e||(a=!0)),a){const t=document.querySelectorAll(".is-builder"),i=t[t.length-1],o=n.elementChildren(i);e=o[o.length-1]}p=document.createRange(),e.parentNode.insertBefore(p.createContextualFragment(c.innerHTML),e.nextSibling),o=c.childNodes[0],o=e.nextElementSibling;let i=document.querySelector(".builder-active");i&&this.builder.applyBehaviorOn(i),r=o.childNodes[0],r.click(),o.className=o.className.replace("row-outline",""),l=document.querySelector(".is-column-tool"),l.className=l.className.replace("active","")}}this.builder.opts.onChange()}else i?this.addContent(t,d,"data-noedit"):this.addContent(t,d)}clearActiveCell(){const t=this.builder.builderStuff;if(!t)return;if(t.getAttribute("preventDevault"))return void setTimeout((()=>{t.removeAttribute("preventDevault")}),30);const e=this.dom;let i=document.getElementsByClassName("cell-active");for(;i.length;)i[0].classList.remove("cell-active");for(i=document.getElementsByClassName("row-outline");i.length;)i[0].classList.remove("row-outline");for(i=document.getElementsByClassName("row-active");i.length;)i[0].classList.remove("row-active");for(i=document.getElementsByClassName("builder-active");i.length;)i[0].classList.remove("builder-active");let n=t.querySelector(".is-column-tool");e.removeClass(n,"active"),t.querySelector(".is-element-tool").style.display="",this.builder.activeCol=null}clearAfterUndoRedo(){const t=this.dom,e=this.builder.builderStuff;let i=e.querySelectorAll(".is-tool");Array.prototype.forEach.call(i,(t=>{t.style.display=""})),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none",this.builder.activeSpacer=null,this.builder.activeCodeBlock=null,this.builder.activeLink=null,this.builder.activeIframe=null,this.builder.activeTd=null,this.builder.activeTable=null,this.builder.activeModule=null;const n=document.querySelectorAll(".icon-active");Array.prototype.forEach.call(n,(e=>{t.removeClass(e,"icon-active")})),this.builder.activeIcon=null;let o=e.querySelector(".is-rte-tool").querySelectorAll("button");Array.prototype.forEach.call(o,(e=>{t.removeClass(e,"on")})),o=e.querySelector(".is-elementrte-tool").querySelectorAll("button"),Array.prototype.forEach.call(o,(e=>{t.removeClass(e,"on")}));let s=e.querySelectorAll(".is-pop");Array.prototype.forEach.call(s,(t=>{t.style.display=""}))}hideControls(){let t=this.builder.builderStuff.querySelectorAll(".is-tool");Array.prototype.forEach.call(t,(t=>{t.style.display=""})),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}clearActiveElement(t){const e=this.dom,i=this.builder.builderStuff,n=document.querySelectorAll(".icon-active");Array.prototype.forEach.call(n,(t=>{e.removeClass(t,"icon-active")}));let o=document.querySelectorAll(".elm-inspected");if(Array.prototype.forEach.call(o,(t=>{e.removeClass(t,"elm-inspected")})),o=document.querySelectorAll(".elm-active"),Array.prototype.forEach.call(o,(t=>{e.removeClass(t,"elm-active")})),i.querySelector(".is-element-tool").style.display="",i.querySelector("#divLinkTool").style.display="",t){this.builder.activeIcon=null,this.builder.inspectedElement=null,this.builder.activeElement=null;let t=i.querySelector(".is-rte-tool");t&&(t.style.display="none");let e=i.querySelector(".is-elementrte-tool");e&&(e.style.display="flex");let n=i.querySelector(".rte-more-options");n&&(n.style.display="");let o=i.querySelector(".elementrte-more-options");o&&(o.style.display="");let s=e.querySelectorAll("button[data-align]");Array.prototype.forEach.call(s,(t=>{t.style.display="none"})),this.builder.rte.positionToolbar()}}clearControls(){const t=this.dom,e=this.builder.builderStuff;if(!e)return;if(e.getAttribute("preventDevault"))return void setTimeout((()=>{e.removeAttribute("preventDevault")}),30);let i=e.querySelectorAll(".is-tool");Array.prototype.forEach.call(i,(t=>{t.style.display=""})),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none",this.builder.activeSpacer=null,this.builder.activeCodeBlock=null,this.builder.activeLink=null,this.builder.activeIframe=null,this.builder.activeTd=null,this.builder.activeTable=null,this.builder.activeModule=null,this.builder.activeImage=null;const n=document.querySelectorAll(".icon-active");Array.prototype.forEach.call(n,(e=>{t.removeClass(e,"icon-active")})),this.builder.activeIcon=null;let o=document.querySelectorAll(".ovl");Array.prototype.forEach.call(o,(t=>{t.style.display="block"}));var s=e.querySelectorAll(".is-side.elementstyles");Array.prototype.forEach.call(s,(e=>{t.removeClass(e,"active")}));let r=document.querySelectorAll("[data-saveforundo]");Array.prototype.forEach.call(r,(t=>{t.removeAttribute("data-saveforundo")})),r=document.querySelectorAll(".elm-inspected"),Array.prototype.forEach.call(r,(e=>{t.removeClass(e,"elm-inspected")}));let l=e.querySelector(".is-rte-tool");l&&(l.style.display="none");let a=e.querySelector(".is-elementrte-tool");a&&(a.style.display="none");let d=e.querySelector(".rte-more-options");d&&(d.style.display="");let c=e.querySelector(".elementrte-more-options");c&&(c.style.display=""),r=document.querySelectorAll(".elm-active"),Array.prototype.forEach.call(r,(e=>{t.removeClass(e,"elm-active")}));let u=e.querySelectorAll(".is-rte-pop");Array.prototype.forEach.call(u,(e=>{e.style.display="",t.removeClass(e,"active"),t.removeClass(e,"deactive")})),this.builder.colTool.lockIndicator.style.display=""}makeId(){let t="",e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";for(let i=0;i<2;i++)t+=e.charAt(Math.floor(Math.random()*e.length));let i="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let t=0;t<5;t++)i+=n.charAt(Math.floor(Math.random()*n.length));return t+i}saveSelection(){if(window.getSelection){let t=window.getSelection();if(t.getRangeAt&&t.rangeCount){let e=[];for(let i=0,n=t.rangeCount;i<n;++i)e.push(t.getRangeAt(i));return this.builder.selection=e,e}}else if(document.selection&&document.selection.createRange)return this.builder.selection=document.selection.createRange(),document.selection.createRange();return this.builder.selection=null,null}restoreSelection(){let t=this.builder.selection;if(t)if(window.getSelection){let o=window.getSelection();if(document.body.createTextRange){var e=document.body.createTextRange();e.collapse(),e.select()}else window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty();for(var i=0,n=t.length;i<n;++i)o.addRange(t[i])}else document.selection&&t.select&&t.select()}cleanHTML(t,e){let i,n=t.replace(/(\n|\r| class=(")?Mso[a-zA-Z]+(")?)/g," "),o=new RegExp("\x3c!--(.*?)--\x3e","g");n=n.replace(o,""),i=e?new RegExp("<(/)*(meta|link|span|\\?xml:|st1:|o:|font)(.*?)>","gi"):new RegExp("<(/)*(meta|link|\\?xml:|st1:|o:|font)(.*?)>","gi"),n=n.replace(i,"");let s,r=["style","script","applet","embed","noframes","noscript"];for(let t=0;t<r.length;t++)i=new RegExp("<"+r[t]+".*?"+r[t]+"(.*?)>","gi"),n=n.replace(i,"");s=e?["style","start"]:["start"];for(let t=0;t<s.length;t++){let e=new RegExp(" "+s[t]+'="(.*?)"',"gi");n=n.replace(e,"")}return n=n.replace(/<(!|script[^>]*>.*?<\/script(?=[>\s])|\/?(\?xml(:\w+)?|img|meta|link|style|\w:\w+)(?=[\s/>]))[^>]*>/gi,""),n=n.replace(/<(\/?)s>/gi,"<$1strike>"),n=n.replace(/&nbsp;/gi," "),n=n.replace(/background-color: rgba\(200, 200, 201, 0.11\);/gi,""),n=n.replace(/background-color: rgba\(200, 200, 201, 0.11\)/gi,""),n}checkEmpty(){const t=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(t,(t=>{this.checkEmptyOn(t)}))}checkEmptyOn(t){const e=this.dom,i=e.elementChildren(t);let n=!0;if(i.forEach((t=>{e.hasClass(t,"row-add-initial")||e.hasClass(t,"dummy-space")||(n=!1)})),n){let i=t.querySelector(".row-add-initial");i||(t.innerHTML=`<button type="button" class="row-add-initial">${this.out("Empty")}<br><span>${this.out("+ Click to add content")}</span></div>`,i=t.querySelector(".row-add-initial")),i.addEventListener("click",(()=>{this.clearActiveCell();const n=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(n,(t=>{e.removeClass(t,"builder-active")})),e.addClass(t,"builder-active"),e.addClass(i,"row-active");let o=this.builder.builderStuff.querySelector(".quickadd");o.querySelector(".is-pop-tabs").style.display="none";const s=window.innerHeight;let r=i.getBoundingClientRect().top;const l=i.getBoundingClientRect().left+i.offsetWidth*this.builder.opts.zoom/2-11;o.style.display="flex";const a=o.offsetWidth,d=o.offsetHeight;s-r>d?(r=r+i.offsetHeight*this.builder.opts.zoom-19,o.style.top=r+window.pageYOffset+27+"px",o.style.left=l-a/2+7+"px",e.removeClass(o,"arrow-bottom"),e.removeClass(o,"arrow-right"),e.removeClass(o,"arrow-left"),e.removeClass(o,"center"),e.addClass(o,"arrow-top"),e.addClass(o,"center")):(o.style.top=r+window.pageYOffset-d-8+"px",o.style.left=l-a/2+7+"px",e.removeClass(o,"arrow-top"),e.removeClass(o,"arrow-right"),e.removeClass(o,"arrow-left"),e.removeClass(o,"center"),e.addClass(o,"arrow-bottom"),e.addClass(o,"center")),o.setAttribute("data-mode","row")}))}else{let e=t.querySelector(".row-add-initial");e&&e.parentNode.removeChild(e)}}clearPreferences(){localStorage.removeItem("_theme"),localStorage.removeItem("_zoom"),localStorage.removeItem("_buildermode"),localStorage.removeItem("_editingtoolbar"),localStorage.removeItem("_editingtoolbardisplay"),localStorage.removeItem("_hidecelltool"),localStorage.removeItem("_rowtool"),localStorage.removeItem("_hideelementtool"),localStorage.removeItem("_hidesnippetaddtool"),localStorage.removeItem("_outlinemode"),localStorage.removeItem("_hiderowcoloutline"),localStorage.removeItem("_outlinestyle"),localStorage.removeItem("_hideelementhighlight"),localStorage.removeItem("_opensnippets"),localStorage.removeItem("_toolstyle"),localStorage.removeItem("_snippetssidebardisplay"),localStorage.removeItem("_pasteresult"),localStorage.removeItem("_scrollableeditor"),localStorage.removeItem("_animatedsorting"),localStorage.removeItem("_addbuttonplace"),localStorage.removeItem("_hiderowtool"),localStorage.removeItem("_dragwithouthandle"),localStorage.removeItem("_advancedhtmleditor"),localStorage.removeItem("_hidecolhtmleditor"),localStorage.removeItem("_hiderowhtmleditor")}pasteHtmlAtCaret(t,e){var i,n;if(this.restoreSelection(),window.getSelection){if(!this.builder.activeCol)return;if((i=window.getSelection()).getRangeAt&&i.rangeCount){(n=i.getRangeAt(0)).deleteContents();var o=document.createElement("div");o.innerHTML=t;for(var s,r,l=document.createDocumentFragment();s=o.firstChild;)r=l.appendChild(s);var a=l.firstChild;n.insertNode(l),r&&((n=n.cloneRange()).setStartAfter(r),e?n.setStartBefore(a):n.collapse(!0),i.removeAllRanges(),this.builder.isTouchSupport||i.addRange(n))}}else if((i=document.selection)&&"Control"!==i.type){if(!this.builder.activeCol)return;var d=i.createRange();d.collapse(!0),i.createRange().pasteHTML(t),e&&((n=i.createRange()).setEndPoint("StartToStart",d),this.builder.isTouchSupport||n.select())}}refreshModule(){let t=this.builder.activeModule;if(!t)return;let e=1,i=t.querySelectorAll("[data-subblock]");Array.prototype.forEach.call(i,(i=>{let n=i.innerHTML;t.setAttribute("data-html-"+e,encodeURIComponent(n)),e++}));let n=decodeURIComponent(t.getAttribute("data-html"));n=n.replace(/{id}/g,this.makeId()),t.innerHTML="";var o=document.createRange();o.setStart(t,0),t.appendChild(o.createContextualFragment(n)),i=t.querySelectorAll("[data-subblock]");var s=1;Array.prototype.forEach.call(i,(e=>{t.getAttribute("data-html-"+s)&&(e.innerHTML=decodeURIComponent(t.getAttribute("data-html-"+s))),s++})),this.repositionColumnTool(!0),this.builder.onRefreshTool&&this.builder.onRefreshTool()}repositionColumnTool(t){let e=this.builder.colTool.columnTool,i=this.builder.activeCol;t?(e.style.transition="all ease 100ms",setTimeout((()=>{e.style.top=i.getBoundingClientRect().top-29+window.pageYOffset+"px",e.style.left=i.getBoundingClientRect().left-1+"px",setTimeout((()=>{e.style.transition=""}),100)}),10)):(e.style.top=i.getBoundingClientRect().top-29+window.pageYOffset+"px",e.style.left=i.getBoundingClientRect().left-1+"px")}isTouchSupport(){return!!window.matchMedia("(pointer: coarse)").matches}detectIE(){return!!document.documentMode}LightenDarkenColor(t,e){var i=!1;"#"===t[0]&&(t=t.slice(1),i=!0);var n=parseInt(t,16),o=(n>>16)+e;o>255?o=255:o<0&&(o=0);var s=(n>>8&255)+e;s>255?s=255:s<0&&(s=0);var r=(255&n)+e;return r>255?r=255:r<0&&(r=0),(i?"#":"")+String("000000"+(r|s<<8|o<<16).toString(16)).slice(-6)}getUIStyles(){this.dom.appendHtml(this.builder.builderStuff,'<button class="style-helper"><svg><use xlink:href="#ion-code-working"></use></svg></button>\n <input type="text" class="style-helper-input" style="display:none;">\n <label class="style-helper-label" style="display:none;"></label>\n <input class="style-helper-checkbox" type="checkbox" style="display:none;">\n <button class="style-helper-button-classic classic" style="display:none;"><svg><use xlink:href="#ion-code-working"></use></svg></button>\n <select class="style-helper-select" style="display:none;"><option value=""></option></select>\n ');const t=this.builder.builderStuff.querySelector(".style-helper"),e=this.builder.builderStuff.querySelector(".style-helper-input"),i=this.builder.builderStuff.querySelector(".style-helper-label"),n=this.builder.builderStuff.querySelector(".style-helper-select"),o=this.builder.builderStuff.querySelector(".style-helper-button-classic");this.builder.styleModalColor=this.getUIStyleValue(t,"modal-color","background-color"),this.builder.styleModalBackground=this.getUIStyleValue(t,"modal-background","background-color"),this.builder.styleButtonPickColorBorder=this.getUIStyleValue(t,"button-pickcolor-border","border"),this.builder.styleButtonPickColorBackground=this.getUIStyleValue(t,"button-pickcolor-background","background-color"),this.builder.styleToolBackground=window.getComputedStyle(t,null).getPropertyValue("background-color"),this.builder.styleButtonColor=window.getComputedStyle(t,null).getPropertyValue("color"),this.builder.styleButtonSvgFill=window.getComputedStyle(t.querySelector("svg"),null).getPropertyValue("fill"),this.builder.styleButtonBackgroundHover=this.getUIStyleValue(t,"hover","background-color"),this.builder.styleSnippetColor=this.getUIStyleValue(t,"snippet-color","background-color"),this.builder.styleSnippetBackground=this.getUIStyleValue(t,"snippet-background","background-color"),this.builder.styleSnippetTabsBackground=this.getUIStyleValue(t,"snippet-tabs-background","background-color"),this.builder.styleSnippetTabItemBackground=this.getUIStyleValue(t,"snippet-tab-item-background","background-color"),this.builder.styleSnippetTabItemBackgroundActive=this.getUIStyleValue(t,"snippet-tab-item-background-active","background-color"),this.builder.styleSnippetTabItemBackgroundHover=this.getUIStyleValue(t,"snippet-tab-item-background-hover","background-color"),this.builder.styleSnippetTabItemColor=this.getUIStyleValue(t,"snippet-tab-item-color","background-color"),this.builder.styleSnippetMoreItemBackground=this.getUIStyleValue(t,"snippet-more-item-background","background-color"),this.builder.styleSnippetMoreItemBackgroundActive=this.getUIStyleValue(t,"snippet-more-item-background-active","background-color"),this.builder.styleSnippetMoreItemBackgroundHover=this.getUIStyleValue(t,"snippet-more-item-background-hover","background-color"),this.builder.styleSnippetMoreItemColor=this.getUIStyleValue(t,"snippet-more-item-color","background-color"),this.builder.styleTabsBackground=this.getUIStyleValue(t,"tabs-background","background-color"),this.builder.styleTabItemBorderBottomActive=this.getUIStyleValue(t,"tab-item-active-border-bottom","border"),this.builder.styleTabItemColor=this.getUIStyleValue(t,"tab-item-color","background-color"),this.builder.styleTabsMoreBackground=this.getUIStyleValue(t,"tabs-more-background","background-color"),this.builder.styleTabsMoreBorder=this.getUIStyleValue(t,"tabs-more-border","border"),this.builder.styleTabsMoreItemColor=this.getUIStyleValue(t,"tabs-more-item-color","background-color"),this.builder.styleTabsMoreBackgroundHover=this.getUIStyleValue(t,"tabs-more-item-background-hover","background-color"),this.builder.styleSeparatorColor=this.getUIStyleValue(t,"separator-color","background-color"),this.builder.styleSelectBackground=window.getComputedStyle(n,null).getPropertyValue("background-color"),this.builder.styleSelectColor=window.getComputedStyle(n,null).getPropertyValue("color"),this.builder.styleSelectOptionBackground=window.getComputedStyle(n.querySelector("option"),null).getPropertyValue("background-color"),this.builder.styleInputBackground=window.getComputedStyle(e,null).getPropertyValue("background-color"),this.builder.styleInputBorderBottom=window.getComputedStyle(e,null).getPropertyValue("border-bottom"),this.builder.styleInputColor=window.getComputedStyle(e,null).getPropertyValue("color"),this.builder.styleLabelColor=window.getComputedStyle(i,null).getPropertyValue("color"),this.builder.styleButtonClassicBackground=window.getComputedStyle(o,null).getPropertyValue("background-color"),this.builder.styleButtonClassicColor=window.getComputedStyle(o,null).getPropertyValue("color"),this.builder.styleButtonClassicBackgroundHover=this.getUIStyleValue(o,"hover","background-color"),this.builder.styleDark=!1,this.builder.styleColored=!1,this.builder.styleColoredDark=!1,this.builder.styleLight=!1,document.body.getAttribute("class")&&(-1!==document.body.getAttribute("class").indexOf("colored-dark")?this.builder.styleColoredDark=!0:-1!==document.body.getAttribute("class").indexOf("dark")?this.builder.styleDark=!0:-1!==document.body.getAttribute("class").indexOf("colored")?this.builder.styleColored=!0:-1!==document.body.getAttribute("class").indexOf("light")&&(this.builder.styleLight=!0))}getUIStyleValue(t,e,i){const n=this.dom;n.addClass(t,e);let o=window.getComputedStyle(t,null).getPropertyValue(i);return n.removeClass(t,e),o}getFontFamilyStyle(t){return`\n html, body {height:100%}\n body {overflow:hidden;margin:0;\n font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\n font-size:100%; \n line-height:1.7;\n }\n #divFontList {margin:0;padding:0 0 9px 9px;height:100%;overflow-y:scroll !important;box-sizing:border-box;}\n #divFontList > div {width:100%;cursor:pointer;overflow:hidden;text-align:center;position:relative;}\n #divFontList > div img {margin:7px 5px 0px 5px;max-width: 230px;max-height: 27px;}\n #divFontList > div div {position:absolute;top:0;left:0;width:100%;height:100%;}\n\n #divFontList > div > div {\n position:absolute;left:0px;top:0px;width:100%;height:100%;\n // z-index: 1;\n }\n\n #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n #divFontList > div > div:after {\n // background: rgba(0, 0, 0, 0.04); \n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n position: absolute;\n content: "";\n display: block;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n opacity: 0;\n }\n #divFontList > div:hover > div:after {\n opacity: 1;\n }\n #divFontList > div.on > div:after {\n opacity: 1;\n }\n\n ${this.builder.styleDark||this.builder.styleColoredDark||this.builder.styleColore?"":"\n #divFontList > div img {\n mix-blend-mode: multiply;\n }\n "}\n\n .dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n filter: invert(1);\n }\n .dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n \n .colored-dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored-dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored-dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n .colored #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n /* Scrollbar for toolbar/RTE and modal */\n\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgba(255, 255, 255, 0.3) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgba(255, 255, 255, 0.3);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .colored * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .colored *::-webkit-scrollbar {\n width: 12px;\n }\n .colored *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n }`}refreshFontFamilyStyle1(){let t=this.builder.rte.rteFontFamilyOptions.querySelector("iframe").contentWindow.document;t.querySelector("#mainstyle").innerHTML=this.getFontFamilyStyle(),this.builder.styleDark?t.body.setAttribute("class","dark"):this.builder.styleColored?t.body.className="colored":this.builder.styleColoredDark?t.body.className="colored-dark":this.builder.styleLight?t.body.className="light":t.body.className=""}refreshFontFamilyStyle2(){let t=this.builder.builderStuff.querySelector(".is-modal.pickfontfamily").querySelector("iframe").contentWindow.document;t.querySelector("#mainstyle").innerHTML=this.getFontFamilyStyle(!0),this.builder.styleDark?t.body.setAttribute("class","dark"):this.builder.styleColored?t.body.className="colored":this.builder.styleColoredDark?t.body.className="colored-dark":this.builder.styleLight?t.body.className="light":t.body.className=""}getFontPreview(){let t=this.builder.fontAssetPath,e="";return e=`\n <div data-provider="" data-font-family="" style="font-size:12px;padding:10px 7px;box-sizing:border-box;"><div></div>\n <span style="z-index:1;position: relative;">${this.out("None")}</span>\n </div>\n <div data-provider="" data-font-family="Arial, sans-serif"><div></div><img src="${t}arial.png"></div>\n <div data-provider="" data-font-family="courier"><div></div><img src="${t}courier.png"></div>\n <div data-provider="" data-font-family="Georgia, serif"><div></div><img src="${t}georgia.png"></div>\n <div data-provider="" data-font-family="monospace"><div></div><img src="${t}monospace.png"></div>\n <div data-provider="" data-font-family="sans-serif"><div></div><img src="${t}sans_serif.png"></div>\n <div data-provider="" data-font-family="serif"><div></div><img src="${t}serif.png"></div>\n <div data-provider="google" data-font-family="Abel, sans-serif"><div></div><img src="${t}abel.png"></div>\n <div data-provider="google" data-font-family="Abril Fatface"><div></div><img src="${t}abril_fatface.png"></div>\n <div data-provider="google" data-font-family="Advent Pro, sans-serif" data-font-style="300"><div></div><img src="${t}advent_pro.png"></div>\n <div data-provider="google" data-font-family="Aladin, cursive"><div></div><img src="${t}aladin.png"></div>\n <div data-provider="google" data-font-family="Alegreya, serif" data-font-style="400,400i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}alegreya.png"></div>\n <div data-provider="google" data-font-family="Alegreya Sans SC, sans-serif" data-font-style="300,700"><div></div><img src="${t}alegreya_sans_sc.png"></div>\n <div data-provider="google" data-font-family="Alegreya SC, serif" data-font-style="400,400i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}alegreya_sc.png"></div>\n <div data-provider="google" data-font-family="Alice, serif"><div></div><img src="${t}alice.png"></div>\n <div data-provider="google" data-font-family="Allerta Stencil, sans-serif"><div></div><img src="${t}allerta_stencil.png"></div>\n <div data-provider="google" data-font-family="Allura, cursive"><div></div><img src="${t}allura.png"></div>\n <div data-provider="google" data-font-family="Almendra Display, cursive"><div></div><img src="${t}almendra_display.png"></div>\n <div data-provider="google" data-font-family="Amatic SC, cursive" data-font-style="400,700"><div></div><img src="${t}amatic_sc.png"></div>\n <div data-provider="google" data-font-family="Andika, sans-serif"><div></div><img src="${t}andika.png"></div>\n <div data-provider="google" data-font-family="Anonymous Pro, monospace" data-font-style="400,400i,700,700i"><div></div><img src="${t}anonymous_pro.png"></div>\n <div data-provider="google" data-font-family="Architects Daughter, cursive"><div></div><img style="transform:scale(1.1);" src="${t}architects_daughter.png"></div>\n <div data-provider="google" data-font-family="Arimo, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}arimo.png"></div>\n <div data-provider="google" data-font-family="Arsenal, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}arsenal.png"></div>\n <div data-provider="google" data-font-family="Assistant" data-font-style="300,700"><div></div><img src="${t}assistant.png"></div>\n <div data-provider="google" data-font-family="Aubrey, cursive"><div></div><img src="${t}aubrey.png"></div>\n <div data-provider="google" data-font-family="Anton, sans-serif"><div></div><img src="${t}anton.png"></div>\n <div data-provider="google" data-font-family="Archivo Narrow, sans-serif"><div></div><img src="${t}archivo_narrow.png"></div>\n <div data-provider="google" data-font-family="Bad Script, cursive"><div></div><img src="${t}bad_script.png"></div>\n <div data-provider="google" data-font-family="BenchNine, sans-serif"><div></div><img src="${t}benchNine.png"></div>\n <div data-provider="google" data-font-family="Bevan, cursive"><div></div><img src="${t}bevan.png"></div>\n <div data-provider="google" data-font-family="Bigelow Rules, cursive"><div></div><img src="${t}bigelow_rules.png"></div>\n <div data-provider="google" data-font-family="Bilbo, cursive"><div></div><img src="${t}bilbo.png"></div>\n <div data-provider="google" data-font-family="Bonbon, cursive"><div></div><img src="${t}bonbon.png"></div>\n <div data-provider="google" data-font-family="Bowlby One SC, cursive"><div></div><img src="${t}bowlby_one_sc.png"></div>\n <div data-provider="google" data-font-family="Cabin Condensed, sans-serif"><div></div><img src="${t}cabin_condensed.png"></div>\n <div data-provider="google" data-font-family="Carrois Gothic SC, sans-serif"><div></div><img src="${t}carrois_gothic_sc.png"></div>\n <div data-provider="google" data-font-family="Caveat, cursive" data-font-style="400,700"><div></div><img src="${t}caveat.png"></div>\n <div data-provider="google" data-font-family="Chewy, cursive"><div></div><img src="${t}chewy.png"></div>\n <div data-provider="google" data-font-family="Cinzel, serif"><div></div><img src="${t}cinzel.png"></div>\n <div data-provider="google" data-font-family="Comfortaa, cursive" data-font-style="300"><div></div><img src="${t}comfortaa.png"></div>\n <div data-provider="google" data-font-family="Concert One, cursive"><div></div><img src="${t}concert_one.png"></div>\n <div data-provider="google" data-font-family="Cormorant, serif" data-font-style="300,300i,600,600i,700,700i"><div></div><img src="${t}cormorant.png"></div>\n <div data-provider="google" data-font-family="Cormorant Garamond, serif" data-font-style="300,300i,600,600i,700,700i"><div></div><img src="${t}cormorant_garamond.png"></div>\n <div data-provider="google" data-font-family="Cormorant Infant, serif" data-font-style="300,300i,600,600i,700,700i"><div></div><img src="${t}cormorant_infant.png"></div>\n <div data-provider="google" data-font-family="Cormorant SC, serif" data-font-style="300,600,700"><div></div><img src="${t}cormorant_sc.png"></div>\n <div data-provider="google" data-font-family="Cormorant Unicase, serif" data-font-style="300,600,700"><div></div><img src="${t}cormorant_unicase.png"></div>\n <div data-provider="google" data-font-family="Cousine" data-font-style="400,700"><div></div><img src="${t}cousine.png"></div>\n <div data-provider="google" data-font-family="Crafty Girls, cursive"><div></div><img src="${t}crafty_girls.png"></div>\n <div data-provider="google" data-font-family="Cuprum, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}cuprum.png"></div>\n <div data-provider="google" data-font-family="Cutive Mono, monospace"><div></div><img src="${t}cutive_mono.png"></div>\n <div data-provider="google" data-font-family="Devonshire, cursive"><div></div><img src="${t}devonshire.png"></div>\n <div data-provider="google" data-font-family="Didact Gothic, sans-serif"><div></div><img src="${t}didact_gothic.png"></div>\n <div data-provider="google" data-font-family="Diplomata SC, cursive"><div></div><img src="${t}diplomata_sc.png"></div>\n <div data-provider="google" data-font-family="Dosis, sans-serif" data-font-style="200"><div></div><img src="${t}dosis.png"></div>\n <div data-provider="google" data-font-family="EB Garamond, serif" data-font-style="400,400i,600,600i,700,700i,800,800i"><div></div><img src="${t}eb_garamond.png"></div>\n <div data-provider="google" data-font-family="El Messiri, sans-serif" data-font-style="400,600,700"><div></div><img src="${t}el_messiri.png"></div>\n <div data-provider="google" data-font-family="Elsie, cursive" data-font-style="400,900"><div></div><img src="${t}elsie.png"></div>\n <div data-provider="google" data-font-family="Encode Sans, sans-serif" data-font-style="300,700"><div></div><img src="${t}encode_sans.png"></div>\n <div data-provider="google" data-font-family="Exo, sans-serif" data-font-style="100"><div></div><img src="${t}exo.png"></div>\n <div data-provider="google" data-font-family="'Exo 2', sans-serif" data-font-style="200,200i,600,600i,700,700i,800,800i,900,900i" data-font-display="swap"><div></div><img src="${t}exo_2.png"></div>\n <div data-provider="google" data-font-family="Felipa, cursive"><div></div><img src="${t}felipa.png"></div>\n <div data-provider="google" data-font-family="Fira Code, monospace" data-font-style="300,500,600,700"><div></div><img src="${t}fira_code.png"></div>\n <div data-provider="google" data-font-family="Fira Mono, monospace" data-font-style="400,500,700"><div></div><img src="${t}fira_mono.png"></div>\n <div data-provider="google" data-font-family="Fira Sans, sans-serif" data-font-style="200,200i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}fira_sans.png"></div>\n <div data-provider="google" data-font-family="Fira Sans Condensed, sans-serif" data-font-style="200,200i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}fira_sans_condensed.png"></div>\n <div data-provider="google" data-font-family="Fira Sans Extra Condensed, sans-serif" data-font-style="200,200i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}fira_sans_extra_condensed.png"></div>\n <div data-provider="google" data-font-family="Fjalla One, sans-serif"><div></div><img src="${t}fjalla_one.png"></div>\n <div data-provider="google" data-font-family="Forum, cursive"><div></div><img src="${t}forum.png"></div>\n <div data-provider="google" data-font-family="Frank Ruhl Libre" data-font-style="300,700"><div></div><img src="${t}frank_ruhl_libre.png"></div>\n <div data-provider="google" data-font-family="Fredericka the Great, cursive"><div></div><img src="${t}fredericka_the_great.png"></div>\n <div data-provider="google" data-font-family="Gabriela, serif"><div></div><img src="${t}gabriela.png"></div>\n <div data-provider="google" data-font-family="Gilda Display, serif"><div></div><img src="${t}gilda_display.png"></div>\n <div data-provider="google" data-font-family="Give You Glory, cursive"><div></div><img style="transform:scale(1.3);" src="${t}give_you_glory.png"></div>\n <div data-provider="google" data-font-family="Gruppo, cursive"><div></div><img src="${t}gruppo.png"></div>\n <div data-provider="google" data-font-family="Handlee, cursive"><div></div><img src="${t}handlee.png"></div>\n <div data-provider="google" data-font-family="Happy Monkey, cursive"><div></div><img src="${t}happy_monkey.png"></div>\n <div data-provider="google" data-font-family="Hind" data-font-style="300,700"><div></div><img src="${t}hind.png"></div>\n <div data-provider="google" data-font-family="IBM Plex Mono, monospace" data-font-style="300,300i,500,500i,600,600i,700,700i"><div></div><img src="${t}ibm_plex_mono.png"></div>\n <div data-provider="google" data-font-family="IBM Plex Sans, sans-serif" data-font-style="300,300i,500,500i,600,600i,700,700i"><div></div><img src="${t}ibm_plex_sans.png"></div>\n <div data-provider="google" data-font-family="IBM Plex Serif, serif" data-font-style="300,300i,500,500i,600,600i,700,700i"><div></div><img src="${t}ibm_plex_serif.png"></div>\n <div data-provider="google" data-font-family="Iceland, cursive"><div></div><img src="${t}iceland.png"></div>\n <div data-provider="google" data-font-family="Inconsolata, monospace" data-font-style="400,700"><div></div><img src="${t}inconsolata.png"></div>\n <div data-provider="google" data-font-family="Josefin Sans, sans-serif" data-font-style="300,700"><div></div><img src="${t}josefin_sans.png"></div>\n <div data-provider="google" data-font-family="Istok Web, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}istok_web.png"></div>\n <div data-provider="google" data-font-family="Julee, cursive"><div></div><img src="${t}julee.png"></div>\n <div data-provider="google" data-font-family="Julius Sans One, sans-serif"><div></div><img src="${t}julius_sans_one.png"></div>\n <div data-provider="google" data-font-family="Junge, serif"><div></div><img src="${t}junge.png"></div>\n <div data-provider="google" data-font-family="Jura, sans-serif" data-font-style="300,600,700"><div></div><img src="${t}jura.png"></div>\n <div data-provider="google" data-font-family="Just Me Again Down Here, cursive"><div></div><img style="transform:scale(1.1);" src="${t}just_me_again_down_here.png"></div>\n <div data-provider="google" data-font-family="Kaushan Script, cursive"><div></div><img src="${t}kaushan_script.png"></div>\n <div data-provider="google" data-font-family="Kelly Slab, cursive"><div></div><img src="${t}kelly_slab.png"></div>\n <div data-provider="google" data-font-family="Kite One, sans-serif"><div></div><img src="${t}kite_one.png"></div>\n <div data-provider="google" data-font-family="Kosugi, sans-serif"><div></div><img src="${t}kosugi.png"></div>\n <div data-provider="google" data-font-family="Kosugi Maru, sans-serif"><div></div><img src="${t}kosugi_maru.png"></div>\n <div data-provider="google" data-font-family="Kurale, serif"><div></div><img src="${t}kurale.png"></div>\n <div data-provider="google" data-font-family="Lato, sans-serif" data-font-style="300,700"><div></div><img src="${t}lato.png"></div>\n <div data-provider="google" data-font-family="Ledger, serif" data-font-style="300,700" data-font-display="swap"><div></div><img src="${t}ledger.png"></div>\n <div data-provider="google" data-font-family="Lekton, sans-serif" data-font-style="400,700"><div></div><img src="${t}lekton.png"></div>\n <div data-provider="google" data-font-family="Life Savers, cursive"><div></div><img src="${t}life_savers.png"></div>\n <div data-provider="google" data-font-family="Literata, serif" data-font-style="400,400i,600,600i,700,700i"><div></div><img src="${t}literata.png"></div>\n <div data-provider="google" data-font-family="Lobster, cursive"><div></div><img src="${t}lobster.png"></div>\n <div data-provider="google" data-font-family="Lobster Two, cursive"><div></div><img src="${t}lobster_two.png"></div>\n <div data-provider="google" data-font-family="Londrina Shadow, cursive"><div></div><img src="${t}londrina_shadow.png"></div>\n <div data-provider="google" data-font-family="Lora, serif" data-font-style="400,700"><div></div><img src="${t}lora.png"></div>\n <div data-provider="google" data-font-family="Lovers Quarrel, cursive"><div></div><img style="transform:scale(1.1);" src="${t}lovers_quarrel.png"></div>\n <div data-provider="google" data-font-family="'M PLUS 1p', sans-serif" data-font-style="300,500,700,800,900" data-font-display="swap"><div></div><img src="${t}m_plus_1p.png"></div>\n <div data-provider="google" data-font-family="'M PLUS Rounded 1c', sans-serif" data-font-style="300,500,700,800,900" data-font-display="swap"><div></div><img src="${t}m_plus_rounded_1c.png"></div>\n <div data-provider="google" data-font-family="Macondo, cursive"><div></div><img src="${t}macondo.png"></div>\n <div data-provider="google" data-font-family="Marcellus SC, serif"><div></div><img src="${t}marcellus_sc.png"></div>\n <div data-provider="google" data-font-family="Marck Script, cursive"><div></div><img src="${t}marck_script.png"></div>\n <div data-provider="google" data-font-family="Martel, serif" data-font-style="300,700"><div></div><img src="${t}martel.png"></div>\n <div data-provider="google" data-font-family="Maven Pro, sans-serif"><div></div><img src="${t}maven_pro.png"></div>\n <div data-provider="google" data-font-family="Merriweather, serif" data-font-style="300,700"><div></div><img src="${t}merriweather.png"></div>\n <div data-provider="google" data-font-family="Merriweather Sans" data-font-style="300,700"><div></div><img src="${t}merriweather_sans.png"></div>\n <div data-provider="google" data-font-family="Mogra, cursive"><div></div><img src="${t}mogra.png"></div>\n <div data-provider="google" data-font-family="Monoton, cursive"><div></div><img src="${t}monoton.png"></div>\n <div data-provider="google" data-font-family="Montez, cursive"><div></div><img src="${t}montez.png"></div>\n <div data-provider="google" data-font-family="Montserrat, sans-serif" data-font-style="300,400,700"><div></div><img src="${t}montserrat.png"></div>\n <div data-provider="google" data-font-family="Montserrat Alternates, sans-serif" data-font-style="300,300i,500,500i,700,700i,800,800i,900,900i"><div></div><img src="${t}montserrat_alternates.png"></div>\n <div data-provider="google" data-font-family="Montserrat Subrayada, sans-serif"><div></div><img src="${t}montserrat_subrayada.png"></div>\n <div data-provider="google" data-font-family="Neucha, cursive"><div></div><img src="${t}neucha.png"></div>\n <div data-provider="google" data-font-family="Neuton, serif" data-font-style="200,700"><div></div><img src="${t}neuton.png"></div>\n <div data-provider="google" data-font-family="Nixie One, cursive"><div></div><img src="${t}nixie_one.png"></div>\n <div data-provider="google" data-font-family="Nothing You Could Do, cursive"><div></div><img style="transform:scale(1.1);" src="${t}nothing_you_could_do.png"></div>\n <div data-provider="google" data-font-family="Noto Sans, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}noto_sans.png"></div>\n <div data-provider="google" data-font-family="Noto Sans SC, sans-serif" data-font-style="300,500,700,900"><div></div><img src="${t}noto_sans_sc.png"></div>\n <div data-provider="google" data-font-family="Noto Serif, serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}noto_serif.png"></div>\n <div data-provider="google" data-font-family="Noto Serif TC, serif" data-font-style="300,600,700,900"><div></div><img src="${t}noto_serif_tc.png"></div>\n <div data-provider="google" data-font-family="Nunito, sans-serif" data-font-style="200,200i,600,600i,700,700i,800,800i,900,900i"><div></div><img src="${t}nunito.png"></div>\n <div data-provider="google" data-font-family="Old Standard TT, serif" data-font-style="400,400i,700"><div></div><img src="${t}old_standard_tt.png"></div>\n <div data-provider="google" data-font-family="Open Sans, sans-serif" data-font-style="300,400,600,800"><div></div><img src="${t}open_sans.png"></div>\n <div data-provider="google" data-font-family="Open Sans Condensed, sans-serif" data-font-style="300,300i,700"><div></div><img src="${t}open_sans_condensed.png"></div>\n <div data-provider="google" data-font-family="Oranienbaum, serif"><div></div><img src="${t}oranienbaum.png"></div>\n <div data-provider="google" data-font-family="Oswald, sans-serif" data-font-style="300,400,700"><div></div><img src="${t}oswald.png"></div>\n <div data-provider="google" data-font-family="Oxygen, sans-serif" data-font-style="300,700"><div></div><img src="${t}oxygen.png"></div>\n <div data-provider="google" data-font-family="Pacifico, cursive"><div></div><img src="${t}pacifico.png"></div>\n <div data-provider="google" data-font-family="Pangolin, cursive"><div></div><img src="${t}pangolin.png"></div>\n <div data-provider="google" data-font-family="Passion One, cursive"><div></div><img src="${t}passion_one.png"></div>\n <div data-provider="google" data-font-family="Pathway Gothic One, sans-serif"><div></div><img src="${t}pathway_gothic_one.png"></div>\n <div data-provider="google" data-font-family="Pattaya, sans-serif"><div></div><img src="${t}pattaya.png"></div>\n <div data-provider="google" data-font-family="Petit Formal Script, cursive"><div></div><img style="transform:scale(1.1);" src="${t}petit_formal_script.png"></div>\n <div data-provider="google" data-font-family="Philosopher, sans-serif"><div></div><img src="${t}philosopher.png"></div>\n <div data-provider="google" data-font-family="Play, sans-serif" data-font-style="400,700"><div></div><img src="${t}play.png"></div>\n <div data-provider="google" data-font-family="Playfair Display, serif" data-font-style="400,400i,700,700i,900,900i"><div></div><img src="${t}playfair_display.png"></div>\n <div data-provider="google" data-font-family="Playfair Display SC, serif" data-font-style="400,400i,700,700i,900,900i"><div></div><img src="${t}playfair_display_sc.png"></div>\n <div data-provider="google" data-font-family="Podkova, serif" data-font-style="400,600,700,800"><div></div><img src="${t}podkova.png"></div>\n <div data-provider="google" data-font-family="Poiret One, cursive"><div></div><img src="${t}poiret_one.png"></div>\n <div data-provider="google" data-font-family="Pompiere, cursive"><div></div><img style="transform:scale(1.1);" src="${t}pompiere.png"></div>\n `,e+=`<div data-provider="google" data-font-family="Poppins, sans-serif" data-font-style="400,600"><div></div><img src="${t}poppins.png"></div>\n <div data-provider="google" data-font-family="Prata, serif"><div></div><img src="${t}prata.png"></div>\n <div data-provider="google" data-font-family="'Press Start 2P', cursive" data-font-display="swap"><div></div><img src="${t}press_start_2p.png"></div>\n <div data-provider="google" data-font-family="Prosto One, cursive"><div></div><img src="${t}prosto_one.png"></div>\n <div data-provider="google" data-font-family="PT Mono, monospace"><div></div><img src="${t}pt_mono.png"></div>\n <div data-provider="google" data-font-family="PT Sans, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}pt_sans.png"></div>\n <div data-provider="google" data-font-family="PT Sans Caption, sans-serif" data-font-style="400,700"><div></div><img src="${t}pt_sans_caption.png"></div>\n <div data-provider="google" data-font-family="PT Sans Narrow, sans-serif" data-font-style="400,700"><div></div><img src="${t}pt_sans_narrow.png"></div>\n <div data-provider="google" data-font-family="PT Serif, serif" data-font-style="400,700"><div></div><img src="${t}pt_serif.png"></div>\n <div data-provider="google" data-font-family="PT Serif Caption, serif" data-font-style="400,700"><div></div><img src="${t}pt_serif_caption.png"></div>\n <div data-provider="google" data-font-family="Quattrocento Sans, sans-serif"><div></div><img src="${t}quattrocento_sans.png"></div>\n <div data-provider="google" data-font-family="Quattrocento, serif"><div></div><img src="${t}quattrocento.png"></div>\n <div data-provider="google" data-font-family="Quicksand, sans-serif"><div></div><img src="${t}quicksand.png"></div>\n <div data-provider="google" data-font-family="Qwigley, cursive"><div></div><img src="${t}qwigley.png"></div>\n <div data-provider="google" data-font-family="Raleway, sans-serif" data-font-style="100"><div></div><img src="${t}raleway.png"></div>\n <div data-provider="google" data-font-family="Raleway Dots, sans-serif"><div></div><img src="${t}raleway_dots.png"></div>\n <div data-provider="google" data-font-family="Redressed, cursive"><div></div><img src="${t}redressed.png"></div>\n <div data-provider="google" data-font-family="Ribeye Marrow, cursive"><div></div><img src="${t}ribeye_marrow.png"></div>\n <div data-provider="google" data-font-family="Righteous, cursive"><div></div><img src="${t}righteous.png"></div>\n <div data-provider="google" data-font-family="Roboto, sans-serif" data-font-style="300"><div></div><img src="${t}roboto.png"></div>\n <div data-provider="google" data-font-family="Roboto Condensed, sans-serif" data-font-style="300,300i,700,700i"><div></div><img src="${t}roboto_condensed.png"></div>\n <div data-provider="google" data-font-family="Roboto Mono, monospace" data-font-style="300,700"><div></div><img src="${t}roboto_mono.png"></div>\n <div data-provider="google" data-font-family="Roboto Slab, serif" data-font-style="200,600,700,800,900"><div></div><img src="${t}roboto_slab.png"></div>\n <div data-provider="google" data-font-family="Rochester, cursive"><div></div><img src="${t}rochester.png"></div>\n <div data-provider="google" data-font-family="Rouge Script, cursive"><div></div><img src="${t}rouge_script.png"></div>\n <div data-provider="google" data-font-family="Rubik, sans-serif" data-font-style="300,300i,500,500i,700,700i,900,900i"><div></div><img src="${t}rubik.png"></div>\n <div data-provider="google" data-font-family="Rubik Mono One, sans-serif"><div></div><img src="${t}rubik_mono_one.png"></div>\n <div data-provider="google" data-font-family="Ruslan Display, cursive"><div></div><img src="${t}ruslan_display.png"></div>\n <div data-provider="google" data-font-family="Russo One, sans-serif"><div></div><img src="${t}russo_one.png"></div>\n <div data-provider="google" data-font-family="Sacramento, cursive"><div></div><img src="${t}sacramento.png"></div>\n <div data-provider="google" data-font-family="Sanchez, serif"><div></div><img src="${t}sanchez.png"></div>\n <div data-provider="google" data-font-family="Satisfy, cursive"><div></div><img src="${t}satisfy.png"></div>\n <div data-provider="google" data-font-family="Sawarabi Gothic, sans-serif"><div></div><img src="${t}sawarabi_gothic.png"></div>\n <div data-provider="google" data-font-family="Scada, sans-serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}scada.png"></div>\n <div data-provider="google" data-font-family="Seaweed Script, cursive"><div></div><img src="${t}seaweed_script.png"></div>\n <div data-provider="google" data-font-family="Seymour One, sans-serif"><div></div><img src="${t}seymour_one.png"></div>\n <div data-provider="google" data-font-family="Shadows Into Light Two, cursive"><div></div><img src="${t}shadows_into_light_two.png"></div>\n <div data-provider="google" data-font-family="Six Caps, sans-serif"><div></div><img src="${t}six_caps.png"></div>\n <div data-provider="google" data-font-family="Snowburst One, cursive"><div></div><img src="${t}snowburst_one.png"></div>\n <div data-provider="google" data-font-family="Source Code Pro, monospace" data-font-style="300,700"><div></div><img src="${t}source_code_pro.png"></div>\n <div data-provider="google" data-font-family="Source Sans Pro, sans-serif" data-font-style="200"><div></div><img src="${t}source_sans_pro.png"></div>\n <div data-provider="google" data-font-family="Special Elite, cursive"><div></div><img src="${t}special_elite.png"></div>\n <div data-provider="google" data-font-family="Spectral, serif" data-font-style="200,200i,600,600i,700,700i,800,800i"><div></div><img src="${t}spectral.png"></div>\n <div data-provider="google" data-font-family="Spectral SC, serif" data-font-style="300,300i,600,600i,700,700i,800,800i"><div></div><img src="${t}spectral_sc.png"></div>\n <div data-provider="google" data-font-family="Squada One, cursive"><div></div><img src="${t}squada_one.png"></div>\n <div data-provider="google" data-font-family="Stalinist One, cursive"><div></div><img src="${t}stalinist_one.png"></div>\n <div data-provider="google" data-font-family="Stint Ultra Expanded, cursive"><div></div><img src="${t}stint_ultra_expanded.png"></div>\n <div data-provider="google" data-font-family="Syncopate, sans-serif"><div></div><img src="${t}syncopate.png"></div>\n <div data-provider="google" data-font-family="Tangerine, cursive"><div></div><img src="${t}tangerine.png"></div>\n <div data-provider="google" data-font-family="Tenor Sans, sans-serif"><div></div><img src="${t}tenor_sans.png"></div>\n <div data-provider="google" data-font-family="Tinos, serif" data-font-style="400,400i,700,700i"><div></div><img src="${t}tinos.png"></div>\n <div data-provider="google" data-font-family="Ubuntu, sans-serif" data-font-style="300,300i,500,500i,700,700i"><div></div><img src="${t}ubuntu.png"></div>\n <div data-provider="google" data-font-family="Ubuntu Condensed, sans-serif"><div></div><img src="${t}ubuntu_condensed.png"></div>\n <div data-provider="google" data-font-family="Ubuntu Mono, monospace" data-font-style="400,700"><div></div><img src="${t}ubuntu_mono.png"></div>\n <div data-provider="google" data-font-family="Underdog, cursive"><div></div><img src="${t}underdog.png"></div>\n <div data-provider="google" data-font-family="UnifrakturMaguntia, cursive"><div></div><img src="${t}unifrakturmaguntia.png"></div>\n <div data-provider="google" data-font-family="Vast Shadow, cursive"><div></div><img src="${t}vast_shadow.png"></div>\n <div data-provider="google" data-font-family="Viga, sans-serif"><div></div><img src="${t}viga.png"></div>\n <div data-provider="google" data-font-family="Vollkorn, serif" data-font-style="400,400i,600,600i,700,700i,900,900i"><div></div><img src="${t}vollkorn.png"></div>\n <div data-provider="google" data-font-family="Vollkorn SC, serif" data-font-style="400,600,700,900"><div></div><img src="${t}vollkorn_sc.png"></div>\n <div data-provider="google" data-font-family="Voltaire, sans-serif"><div></div><img src="${t}voltaire.png"></div>\n <div data-provider="google" data-font-family="Wire One, sans-serif"><div></div><img src="${t}wire_one.png"></div>\n <div data-provider="google" data-font-family="Yanone Kaffeesatz, sans-serif" data-font-style="300,700"><div></div><img src="${t}yanone_kaffeesatz.png"></div>\n <div data-provider="google" data-font-family="Yeseva One, cursive"><div></div><img src="${t}yeseva_one.png"></div>\n `,e}getFontFamilyHTML(t){return`\n <!DOCTYPE HTML>\n <html>\n <head>\n <meta charset="utf-8">\n <title>Fonts</title>\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <meta name="description" content=""> \n <style id="mainstyle">\n html, body {height:100%}\n body {overflow:hidden;margin:0;\n font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\n font-size:100%; \n line-height:1.7;\n }\n #divFontList {margin:0;padding:0 0 9px 9px;height:100%;overflow-y:scroll !important;box-sizing:border-box;}\n #divFontList > div {width:100%;cursor:pointer;overflow:hidden;text-align:center;position:relative;}\n #divFontList > div img {margin:7px 5px 0px 5px;max-width: 230px;max-height: 27px;}\n #divFontList > div div {position:absolute;top:0;left:0;width:100%;height:100%;}\n\n #divFontList > div > div {\n position:absolute;left:0px;top:0px;width:100%;height:100%;\n // z-index: 1;\n }\n\n #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n #divFontList > div > div:after {\n // background: rgba(0, 0, 0, 0.04); \n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n position: absolute;\n content: "";\n display: block;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n opacity: 0;\n }\n #divFontList > div:hover > div:after {\n opacity: 1;\n }\n #divFontList > div.on > div:after {\n opacity: 1;\n }\n\n ${this.builder.styleDark||this.builder.styleColoredDark||this.builder.styleColore?"":"\n #divFontList > div img {\n mix-blend-mode: multiply;\n }\n "}\n\n .dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n filter: invert(1);\n }\n .dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n \n .colored-dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored-dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored-dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n .colored #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n /* Scrollbar for toolbar/RTE and modal */\n\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgba(255, 255, 255, 0.3) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgba(255, 255, 255, 0.3);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .colored * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .colored *::-webkit-scrollbar {\n width: 12px;\n }\n .colored *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n </style>\n\n </head>\n <body${this.builder.styleDark?' class="dark"':""}${this.builder.styleColored?' class="colored"':""}${this.builder.styleColoredDark?' class="colored-dark"':""}${this.builder.styleLight?' class="light"':""}>\n\n <div id="divFontList">\n ${this.getFontPreview()}\n </div>\n\n <script type="text/javascript">\n var elms = document.querySelectorAll('#divFontList > div');\n for(var i=0;i<elms.length;i++) {\n elms[i].addEventListener('click', function(e){\n\n var elm = e.target.parentNode;\n var on = false;\n if(elm.className) {\n if(elm.className.indexOf('on')!==-1) {\n on = true;\n }\n }\n /*\n if(on) {\n parent._cb.clearFont();\n } else {\n var provider = elm.getAttribute('data-provider');\n var fontfamily = elm.getAttribute('data-font-family');\n var fontstyle = elm.getAttribute('data-font-style');\n var fontdisplay = elm.getAttribute('data-font-display');\n //parent._cb.applyFont(fontfamily, fontstyle, provider);\n parent._cb.setFont(fontfamily, fontstyle, fontdisplay, provider);\n }\n */\n var provider = elm.getAttribute('data-provider');\n var fontfamily = elm.getAttribute('data-font-family');\n var fontstyle = elm.getAttribute('data-font-style');\n var fontdisplay = elm.getAttribute('data-font-display');\n //parent._cb.applyFont(fontfamily, fontstyle, provider);\n parent._cb.setFont(fontfamily, fontstyle, fontdisplay, provider);\n\n });\n }\n <\/script>\n \n </body>\n </html>\n \n \n `}getFontFamilyEmail(t){let e=this.builder.fontAssetPath;return`\n <!DOCTYPE HTML>\n <html>\n <head>\n <meta charset="utf-8">\n <title>Fonts</title>\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <meta name="description" content=""> \n <style>\n html, body {height:100%}\n body {overflow:hidden;margin:0;\n font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\n font-size:100%; \n line-height:1.7;\n }\n #divFontList {margin:0;padding:0 0 9px 9px;height:100%;overflow-y:scroll !important;box-sizing:border-box;}\n #divFontList > div {width:100%;cursor:pointer;overflow:hidden;text-align:center;position:relative;}\n #divFontList > div img {margin:7px 5px 0px 5px;max-width: 230px;max-height: 27px;}\n #divFontList > div div {position:absolute;top:0;left:0;width:100%;height:100%;}\n\n #divFontList > div > div {\n position:absolute;left:0px;top:0px;width:100%;height:100%;\n // z-index: 1;\n }\n\n #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n #divFontList > div > div:after {\n // background: rgba(0, 0, 0, 0.04); \n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n position: absolute;\n content: "";\n display: block;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n opacity: 0;\n }\n #divFontList > div:hover > div:after {\n opacity: 1;\n }\n #divFontList > div.on > div:after {\n opacity: 1;\n }\n\n ${this.builder.styleDark||this.builder.styleColoredDark||this.builder.styleColore?"":"\n #divFontList > div img {\n mix-blend-mode: multiply;\n }\n "}\n\n .dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n filter: invert(1);\n }\n .dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n \n .colored-dark #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored-dark #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored-dark #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n .colored #divFontList > div img {\n ${t?"":"mix-blend-mode: screen;"};\n ${t?"":"filter: invert(1);"};\n }\n .colored #divFontList > div {\n color: ${t?this.builder.styleModalColor:this.builder.styleButtonColor};\n background: ${t?this.builder.styleModalBackground:this.builder.styleToolBackground};\n }\n .colored #divFontList > div > div:after {\n background: ${t?this.builder.styleButtonClassicBackgroundHover:this.builder.styleButtonBackgroundHover};\n }\n\n\n /* Scrollbar for toolbar/RTE and modal */\n\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgba(255, 255, 255, 0.3) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgba(255, 255, 255, 0.3);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .colored * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .colored *::-webkit-scrollbar {\n width: 12px;\n }\n .colored *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n </style>\n </head>\n <body${this.builder.styleDark?' class="dark"':""}${this.builder.styleColored?' class="colored"':""}${this.builder.styleColoredDark?' class="colored-dark"':""}${this.builder.styleLight?' class="light"':""}>\n\n <div id="divFontList">\n <div data-provider="" data-font-family="" style="font-size:12px;padding:10px 7px;box-sizing:border-box;"><div></div>None</div>\n <div data-provider="" data-font-family="Arial, sans-serif"><div></div><img src="${e}arial.png"></div>\n <div data-provider="" data-font-family="courier"><div></div><img src="${e}courier.png"></div>\n <div data-provider="" data-font-family="Georgia, serif"><div></div><img src="${e}georgia.png"></div>\n <div data-provider="" data-font-family="monospace"><div></div><img src="${e}monospace.png"></div>\n <div data-provider="" data-font-family="sans-serif"><div></div><img src="${e}sans_serif.png"></div>\n <div data-provider="" data-font-family="serif"><div></div><img src="${e}serif.png"></div>\n </div>\n\n <script type="text/javascript">\n var elms = document.querySelectorAll('#divFontList > div');\n for(var i=0;i<elms.length;i++) {\n elms[i].addEventListener('click', function(e){\n\n var elm = e.target.parentNode;\n var on = false;\n if(elm.className) {\n if(elm.className.indexOf('on')!==-1) {\n on = true;\n }\n }\n /*\n if(on) {\n parent._cb.clearFont();\n } else {\n var provider = elm.getAttribute('data-provider');\n var fontfamily = elm.getAttribute('data-font-family');\n var fontstyle = elm.getAttribute('data-font-style');\n var fontdisplay = elm.getAttribute('data-font-display');\n //parent._cb.applyFont(fontfamily, fontstyle, provider);\n parent._cb.setFont(fontfamily, fontstyle, fontdisplay, provider);\n }\n */\n var provider = elm.getAttribute('data-provider');\n var fontfamily = elm.getAttribute('data-font-family');\n var fontstyle = elm.getAttribute('data-font-style');\n var fontdisplay = elm.getAttribute('data-font-display');\n //parent._cb.applyFont(fontfamily, fontstyle, provider);\n parent._cb.setFont(fontfamily, fontstyle, fontdisplay, provider);\n\n });\n }\n\n <\/script>\n \n </body>\n </html>\n \n \n `}}class e{createElement(t){return document.createElement(t)}appendChild(t,e){t&&t.appendChild(e)}appendHtml(t,e){t&&t.insertAdjacentHTML("beforeend",e)}addEventListener(t,e,i){t&&t.addEventListener(e,i)}addClass(t,e){t&&(this.hasClass(t,e)||(0===t.classList.length?t.className=e:t.className=t.className+" "+e,t.className=t.className.replace(/ +/g," ")))}removeClass(t,e){if(t&&t.classList.length>0){let i,n,o,s,r=e.split(" ");for(i=0,o=r.length;i<o;++i){if(!r[i])continue;let e=r[i],o="",l=t.className.split(" ");for(n=0,s=l.length;n<s;++n)l[n]&&l[n]!==e&&(o+=l[n]+" ");t.className=o.trim()}""===t.className&&t.removeAttribute("class")}}hasClass(t,e){if(!t)return!1;try{let i=t.getAttribute("class");return new RegExp("\\b"+e+"\\b").test(i)}catch(t){}}moveAfter(t,e){e.parentNode.insertBefore(t,e),e.parentNode.insertBefore(e,e.previousElementSibling)}elementChildren(t){const e=t.childNodes;let i=[],n=e.length;for(;n--;)1===e[n].nodeType&&i.unshift(e[n]);return i}getElementOffset(t){const e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset,left:e.left+window.pageXOffset,width:e.width,height:e.height}}parentsHasClass(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(this.hasClass(t,e))return!0;t=t.parentNode}}parentsHasId(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(t.id===e)return!0;t=t.parentNode}}parentsHasTag(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(t.tagName.toLowerCase()===e.toLowerCase())return!0;t=t.parentNode}}parentsHasAttribute(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;try{if(t.hasAttribute(e))return!0}catch(t){}t=t.parentNode}}getParentByTag(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(t.tagName.toLowerCase()===e.toLowerCase())return t;t=t.parentNode}}getParentByAttribute(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;try{if(t.hasAttribute(e))return t}catch(t){}t=t.parentNode}}parentsHasElement(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(!(t=t.parentNode))return!1;if(!t.tagName)return!1;if(t.tagName.toLowerCase()===e)return!0}}getParentElement(t,e){for(;t;){if(!t.tagName)return!1;if("BODY"===t.tagName||"HTML"===t.tagName)return!1;if(!(t=t.parentNode))return!1;if(!t.tagName)return!1;if(t.tagName.toLowerCase()===e)return t}}removeClasses(t,e){for(let i=0;i<t.length;i++)t[i].classList.remove(e)}removeAttributes(t,e){for(let i=0;i<t.length;i++)t[i].removeAttribute(e)}removeElements(t){Array.prototype.forEach.call(t,(t=>{t.parentNode.removeChild(t)}))}moveCursorToElement(t){var e,i;window.getSelection&&document.createRange?((i=document.createRange()).selectNodeContents(t),i.collapse(!1),(e=window.getSelection()).removeAllRanges(),e.addRange(i)):document.body.createTextRange&&((i=document.body.createTextRange()).moveToElementText(t),i.collapse(!1),i.select())}selectElementContents(t){var e=document.createRange();e.selectNodeContents(t);var i=window.getSelection();i.removeAllRanges(),i.addRange(e)}getSelected(){if(window.getSelection)return window.getSelection().toString();if(document.getSelection)return document.getSelection().toString();var t=document.selection&&document.selection.createRange();return!!t.text&&t.text}checkEditable(){try{var t,e;return window.getSelection?t=3===(e=window.getSelection().getRangeAt(0).commonAncestorContainer).nodeType?e.parentNode:e:document.selection&&(e=document.selection.createRange(),t=document.selection.createRange().parentElement()),!!this.parentsHasAttribute(t,"contenteditable")}catch(t){return!1}}textSelection(){const t=this.getSelection().anchorNode;if(!t)return!1;return t.nodeType!==Node.TEXT_NODE&&t.nodeType!==Node.COMMENT_NODE?t:t.parentElement}getStyle(t,e){return window.getComputedStyle?window.getComputedStyle(t,null).getPropertyValue(e):t.style[e.replace(/-([a-z])/g,(function(t){return t[1].toUpperCase()}))]}observeElement(t,e,i,n=0){let o=Object.getPrototypeOf(t);if(Object.prototype.hasOwnProperty.call(o,e)){let s=Object.getOwnPropertyDescriptor(o,e);Object.defineProperty(t,e,{get:function(){return s.get.apply(this,arguments)},set:function(){let t=this[e];s.set.apply(this,arguments);let o=this[e];"function"==typeof i&&setTimeout(i.bind(this,t,o),n)}})}}baseName(t){if("string"==typeof t){var e=t.split(".");return e.splice(0,e.length-1).join(".")}}doFunction(t,e,i){if(e(t),i){let i=Array.prototype.slice.call(t.getElementsByTagName("*"));for(var n=0;n<i.length;n++)e(i[n])}}execCommand(t,e,i){const n=this.getSelection();if(!n)return;const o=n.anchorNode;if(o){const s=o.nodeType!==Node.TEXT_NODE&&o.nodeType!==Node.COMMENT_NODE?o:o.parentElement;let r;r=s&&s.innerText===n.toString()||""===n.toString().trim()?this.updateSelection(t,e,s):this.replaceSelection(t,e,n,s),i&&i(!0,r)}else i&&i(!1)}updateSelection(t,e,i){return i.style[t]=this.getStyleValue(i,t,e),this.checkStyleIfSameAsParent(i,t),this.cleanChildren(t,i),i}replaceSelection(t,e,i,n){const o=i.getRangeAt(0),s=o.extractContents(),r=this.createSpan(n,t,e);return r.appendChild(s),this.cleanChildren(t,r),o.insertNode(r),i.selectAllChildren(r),this.checkStyleIfSameAsParent(r,t),r}checkStyleIfSameAsParent(t,e){t.parentNode&&(t.parentNode.style[e]!==t.style[e]&&window.getComputedStyle(t.parentNode,null).getPropertyValue(e)!==t.style[e]||(t.style[e]="",""!==t.getAttribute("style")&&null!==t.style||t.removeAttribute("style")))}createSpan(t,e,i){const n=document.createElement("span");return n.style[e]=this.getStyleValue(t,e,i),n}findParentStyle(t,e){if("HTML"===t.nodeName.toUpperCase()||"BODY"===t.nodeName.toUpperCase())return null;if(!t.parentNode)return null;if(null!==t.style[e]&&void 0!==t.style[e]&&""!==t.style[e])return t;this.findParentStyle(t.parentNode,e)}getStyleValue(t,e,i){if("font-weight"===e||"font-style"===e||"text-decoration"===e||"text-transform"===e){let n,o=this.findParentStyle(t,e);if(o&&(n=o.style[e]),i===n){t.style[e]="";let o=window.getComputedStyle(t,null).getPropertyValue(e);t.style[e]=n,i=o}}return i}getSelection(){return window&&window.getSelection?window.getSelection():document&&document.getSelection?document.getSelection():document&&document.selection?document.selection.createRange().text:null}cleanChildren(t,e){if(!e.hasChildNodes())return;const i=Array.from(e.children).filter((e=>void 0!==e.style[t]&&""!==e.style[t.style]));i&&i.length>0&&i.forEach((e=>{e.style[t]="",""!==e.getAttribute("style")&&null!==e.style||e.removeAttribute("style")}));const n=Array.from(e.children).map((e=>this.cleanChildren(t,e)));n&&n.length}removeEmptyStyle(t){if(!t.hasChildNodes())return;const e=Array.from(t.children).filter((t=>t.getAttribute("style")));e&&e.length>0&&e.forEach((t=>{""!==t.getAttribute("style").trim()&&null!==t.style||t.removeAttribute("style")}));const i=Array.from(t.children).map((t=>this.removeEmptyStyle(t)));i&&i.length}cleanEmptySpans(t){let e=t.querySelectorAll("span");const i=Array.prototype.filter;let n=i.call(e,(t=>0===t.attributes.length));n&&n.length>0&&n.forEach((t=>{t.outerHTML=t.innerHTML})),e=t.querySelectorAll("span"),i.call(e,(t=>{""===t.innerHTML&&t.parentNode.removeChild(t)})),e=t.querySelectorAll("span"),n=i.call(e,(t=>0===t.attributes.length)),n&&n.length>0&&this.cleanEmptySpans(t)}cleanClassSize(t,e){if(!t.hasChildNodes())return;const i=Array.from(t.children).filter((t=>this.hasClass(t,e)));i&&i.length>0&&i.forEach((t=>{this.removeClass(t,e)}));const n=Array.from(t.children).map((t=>this.cleanClassSize(t,e)));n&&n.length}removeFormat(){const t=this.getSelection();if(!t)return;const e=t.anchorNode;if(!e)return;const i=e.nodeType!==Node.TEXT_NODE&&e.nodeType!==Node.COMMENT_NODE?e:e.parentElement;i&&i.innerText===t.toString()||""===t.toString().trim()?this.cleanElement(i):this.cleanSelection(t)}cleanElement(t){t.style.fontWeight="",t.style.fontStyle="",t.style.textDecoration="",t.style.textTransform="",t.style.fontFamily="",t.style.fontSize="",t.style.color="",t.style.backgroundColor="",t.classList.forEach((e=>{-1!==e.indexOf("size-")&&this.removeClass(t,e)})),t.querySelectorAll("*").forEach((t=>{t.style.fontWeight="",t.style.fontStyle="",t.style.textDecoration="",t.style.textTransform="",t.style.fontFamily="",t.style.fontSize="",t.style.color="",t.style.backgroundColor="",t.classList.forEach((e=>{-1!==e.indexOf("size-")&&this.removeClass(t,e)}))})),this.cleanUnusedSpan(t)}cleanSelection(t){const e=t.getRangeAt(0),i=e.extractContents(),n=document.createElement("span");n.appendChild(i),e.insertNode(n),t.selectAllChildren(n),this.cleanElement(n)}cleanUnusedSpan(t){if(!t.hasChildNodes())return;const e=Array.from(t.children).filter((t=>{""!==t.getAttribute("style")&&null!==t.style||t.removeAttribute("style");let e=0===t.attributes.length||1===t.attributes.length&&t.hasAttribute("data-keep");return"span"===t.nodeName.toLowerCase()&&e}));if(e&&e.length>0)return void e.forEach((t=>{const e=document.createTextNode(t.textContent);t.parentElement.replaceChild(e,t)}));const i=Array.from(t.children).map((t=>this.cleanUnusedSpan(t)));i&&i.length}}var i={exports:{}},n={},o={exports:{}},s={},r={};function l(t){this.__parent=t,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function a(t,e){this.__cache=[""],this.__indent_size=t.indent_size,this.__indent_string=t.indent_char,t.indent_with_tabs||(this.__indent_string=new Array(t.indent_size+1).join(t.indent_char)),e=e||"",t.indent_level>0&&(e=new Array(t.indent_level+1).join(this.__indent_string)),this.__base_string=e,this.__base_string_length=e.length}function d(t,e){this.__indent_cache=new a(t,e),this.raw=!1,this._end_with_newline=t.end_with_newline,this.indent_size=t.indent_size,this.wrap_line_length=t.wrap_line_length,this.indent_empty_lines=t.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new l(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}l.prototype.clone_empty=function(){var t=new l(this.__parent);return t.set_indent(this.__indent_count,this.__alignment_count),t},l.prototype.item=function(t){return t<0?this.__items[this.__items.length+t]:this.__items[t]},l.prototype.has_match=function(t){for(var e=this.__items.length-1;e>=0;e--)if(this.__items[e].match(t))return!0;return!1},l.prototype.set_indent=function(t,e){this.is_empty()&&(this.__indent_count=t||0,this.__alignment_count=e||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},l.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},l.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},l.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var t=this.__parent.current_line;return t.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),t.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),t.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===t.__items[0]&&(t.__items.splice(0,1),t.__character_count-=1),!0}return!1},l.prototype.is_empty=function(){return 0===this.__items.length},l.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},l.prototype.push=function(t){this.__items.push(t);var e=t.lastIndexOf("\n");-1!==e?this.__character_count=t.length-e:this.__character_count+=t.length},l.prototype.pop=function(){var t=null;return this.is_empty()||(t=this.__items.pop(),this.__character_count-=t.length),t},l.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},l.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},l.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},l.prototype.toString=function(){var t="";return this.is_empty()?this.__parent.indent_empty_lines&&(t=this.__parent.get_indent_string(this.__indent_count)):(t=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),t+=this.__items.join("")),t},a.prototype.get_indent_size=function(t,e){var i=this.__base_string_length;return e=e||0,t<0&&(i=0),i+=t*this.__indent_size,i+=e},a.prototype.get_indent_string=function(t,e){var i=this.__base_string;return e=e||0,t<0&&(t=0,i=""),e+=t*this.__indent_size,this.__ensure_cache(e),i+=this.__cache[e]},a.prototype.__ensure_cache=function(t){for(;t>=this.__cache.length;)this.__add_column()},a.prototype.__add_column=function(){var t=this.__cache.length,e=0,i="";this.__indent_size&&t>=this.__indent_size&&(t-=(e=Math.floor(t/this.__indent_size))*this.__indent_size,i=new Array(e+1).join(this.__indent_string)),t&&(i+=new Array(t+1).join(" ")),this.__cache.push(i)},d.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},d.prototype.get_line_number=function(){return this.__lines.length},d.prototype.get_indent_string=function(t,e){return this.__indent_cache.get_indent_string(t,e)},d.prototype.get_indent_size=function(t,e){return this.__indent_cache.get_indent_size(t,e)},d.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},d.prototype.add_new_line=function(t){return!(this.is_empty()||!t&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},d.prototype.get_code=function(t){this.trim(!0);var e=this.current_line.pop();e&&("\n"===e[e.length-1]&&(e=e.replace(/\n+$/g,"")),this.current_line.push(e)),this._end_with_newline&&this.__add_outputline();var i=this.__lines.join("\n");return"\n"!==t&&(i=i.replace(/[\n]/g,t)),i},d.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},d.prototype.set_indent=function(t,e){return t=t||0,e=e||0,this.next_line.set_indent(t,e),this.__lines.length>1?(this.current_line.set_indent(t,e),!0):(this.current_line.set_indent(),!1)},d.prototype.add_raw_token=function(t){for(var e=0;e<t.newlines;e++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(t.whitespace_before),this.current_line.push(t.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},d.prototype.add_token=function(t){this.__add_space_before_token(),this.current_line.push(t),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},d.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},d.prototype.remove_indent=function(t){for(var e=this.__lines.length;t<e;)this.__lines[t]._remove_indent(),t++;this.current_line._remove_wrap_indent()},d.prototype.trim=function(t){for(t=void 0!==t&&t,this.current_line.trim();t&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},d.prototype.just_added_newline=function(){return this.current_line.is_empty()},d.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},d.prototype.ensure_empty_line_above=function(t,e){for(var i=this.__lines.length-2;i>=0;){var n=this.__lines[i];if(n.is_empty())break;if(0!==n.item(0).indexOf(t)&&n.item(-1)!==e){this.__lines.splice(i+1,0,new l(this)),this.previous_line=this.__lines[this.__lines.length-2];break}i--}},r.Output=d;var c={};c.Token=function(t,e,i,n){this.type=t,this.text=e,this.comments_before=null,this.newlines=i||0,this.whitespace_before=n||"",this.parent=null,this.next=null,this.previous=null,this.opened=null,this.closed=null,this.directives=null};var u,p,h,v,f,g={};p="\\x24\\x30-\\x39\\x41-\\x5a\\x5f\\x61-\\x7a",v="\\u0300-\\u036f\\u0483-\\u0487\\u0591-\\u05bd\\u05bf\\u05c1\\u05c2\\u05c4\\u05c5\\u05c7\\u0610-\\u061a\\u0620-\\u0649\\u0672-\\u06d3\\u06e7-\\u06e8\\u06fb-\\u06fc\\u0730-\\u074a\\u0800-\\u0814\\u081b-\\u0823\\u0825-\\u0827\\u0829-\\u082d\\u0840-\\u0857\\u08e4-\\u08fe\\u0900-\\u0903\\u093a-\\u093c\\u093e-\\u094f\\u0951-\\u0957\\u0962-\\u0963\\u0966-\\u096f\\u0981-\\u0983\\u09bc\\u09be-\\u09c4\\u09c7\\u09c8\\u09d7\\u09df-\\u09e0\\u0a01-\\u0a03\\u0a3c\\u0a3e-\\u0a42\\u0a47\\u0a48\\u0a4b-\\u0a4d\\u0a51\\u0a66-\\u0a71\\u0a75\\u0a81-\\u0a83\\u0abc\\u0abe-\\u0ac5\\u0ac7-\\u0ac9\\u0acb-\\u0acd\\u0ae2-\\u0ae3\\u0ae6-\\u0aef\\u0b01-\\u0b03\\u0b3c\\u0b3e-\\u0b44\\u0b47\\u0b48\\u0b4b-\\u0b4d\\u0b56\\u0b57\\u0b5f-\\u0b60\\u0b66-\\u0b6f\\u0b82\\u0bbe-\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcd\\u0bd7\\u0be6-\\u0bef\\u0c01-\\u0c03\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55\\u0c56\\u0c62-\\u0c63\\u0c66-\\u0c6f\\u0c82\\u0c83\\u0cbc\\u0cbe-\\u0cc4\\u0cc6-\\u0cc8\\u0cca-\\u0ccd\\u0cd5\\u0cd6\\u0ce2-\\u0ce3\\u0ce6-\\u0cef\\u0d02\\u0d03\\u0d46-\\u0d48\\u0d57\\u0d62-\\u0d63\\u0d66-\\u0d6f\\u0d82\\u0d83\\u0dca\\u0dcf-\\u0dd4\\u0dd6\\u0dd8-\\u0ddf\\u0df2\\u0df3\\u0e34-\\u0e3a\\u0e40-\\u0e45\\u0e50-\\u0e59\\u0eb4-\\u0eb9\\u0ec8-\\u0ecd\\u0ed0-\\u0ed9\\u0f18\\u0f19\\u0f20-\\u0f29\\u0f35\\u0f37\\u0f39\\u0f41-\\u0f47\\u0f71-\\u0f84\\u0f86-\\u0f87\\u0f8d-\\u0f97\\u0f99-\\u0fbc\\u0fc6\\u1000-\\u1029\\u1040-\\u1049\\u1067-\\u106d\\u1071-\\u1074\\u1082-\\u108d\\u108f-\\u109d\\u135d-\\u135f\\u170e-\\u1710\\u1720-\\u1730\\u1740-\\u1750\\u1772\\u1773\\u1780-\\u17b2\\u17dd\\u17e0-\\u17e9\\u180b-\\u180d\\u1810-\\u1819\\u1920-\\u192b\\u1930-\\u193b\\u1951-\\u196d\\u19b0-\\u19c0\\u19c8-\\u19c9\\u19d0-\\u19d9\\u1a00-\\u1a15\\u1a20-\\u1a53\\u1a60-\\u1a7c\\u1a7f-\\u1a89\\u1a90-\\u1a99\\u1b46-\\u1b4b\\u1b50-\\u1b59\\u1b6b-\\u1b73\\u1bb0-\\u1bb9\\u1be6-\\u1bf3\\u1c00-\\u1c22\\u1c40-\\u1c49\\u1c5b-\\u1c7d\\u1cd0-\\u1cd2\\u1d00-\\u1dbe\\u1e01-\\u1f15\\u200c\\u200d\\u203f\\u2040\\u2054\\u20d0-\\u20dc\\u20e1\\u20e5-\\u20f0\\u2d81-\\u2d96\\u2de0-\\u2dff\\u3021-\\u3028\\u3099\\u309a\\ua640-\\ua66d\\ua674-\\ua67d\\ua69f\\ua6f0-\\ua6f1\\ua7f8-\\ua800\\ua806\\ua80b\\ua823-\\ua827\\ua880-\\ua881\\ua8b4-\\ua8c4\\ua8d0-\\ua8d9\\ua8f3-\\ua8f7\\ua900-\\ua909\\ua926-\\ua92d\\ua930-\\ua945\\ua980-\\ua983\\ua9b3-\\ua9c0\\uaa00-\\uaa27\\uaa40-\\uaa41\\uaa4c-\\uaa4d\\uaa50-\\uaa59\\uaa7b\\uaae0-\\uaae9\\uaaf2-\\uaaf3\\uabc0-\\uabe1\\uabec\\uabed\\uabf0-\\uabf9\\ufb20-\\ufb28\\ufe00-\\ufe0f\\ufe20-\\ufe26\\ufe33\\ufe34\\ufe4d-\\ufe4f\\uff10-\\uff19\\uff3f",f="(?:\\\\u[0-9a-fA-F]{4}|[\\x23\\x24\\x40\\x41-\\x5a\\x5f\\x61-\\x7a"+(h="\\xaa\\xb5\\xba\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ec\\u02ee\\u0370-\\u0374\\u0376\\u0377\\u037a-\\u037d\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0481\\u048a-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05d0-\\u05ea\\u05f0-\\u05f2\\u0620-\\u064a\\u066e\\u066f\\u0671-\\u06d3\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\\u0712-\\u072f\\u074d-\\u07a5\\u07b1\\u07ca-\\u07ea\\u07f4\\u07f5\\u07fa\\u0800-\\u0815\\u081a\\u0824\\u0828\\u0840-\\u0858\\u08a0\\u08a2-\\u08ac\\u0904-\\u0939\\u093d\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097f\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc\\u09dd\\u09df-\\u09e1\\u09f0\\u09f1\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd\\u0ad0\\u0ae0\\u0ae1\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bd0\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c33\\u0c35-\\u0c39\\u0c3d\\u0c58\\u0c59\\u0c60\\u0c61\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cde\\u0ce0\\u0ce1\\u0cf1\\u0cf2\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d\\u0d4e\\u0d60\\u0d61\\u0d7a-\\u0d7f\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e81\\u0e82\\u0e84\\u0e87\\u0e88\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\\u0eaa\\u0eab\\u0ead-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0edc-\\u0edf\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6c\\u0f88-\\u0f8c\\u1000-\\u102a\\u103f\\u1050-\\u1055\\u105a-\\u105d\\u1061\\u1065\\u1066\\u106e-\\u1070\\u1075-\\u1081\\u108e\\u10a0-\\u10c5\\u10c7\\u10cd\\u10d0-\\u10fa\\u10fc-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f4\\u1401-\\u166c\\u166f-\\u167f\\u1681-\\u169a\\u16a0-\\u16ea\\u16ee-\\u16f0\\u1700-\\u170c\\u170e-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\\u17dc\\u1820-\\u1877\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191c\\u1950-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19c1-\\u19c7\\u1a00-\\u1a16\\u1a20-\\u1a54\\u1aa7\\u1b05-\\u1b33\\u1b45-\\u1b4b\\u1b83-\\u1ba0\\u1bae\\u1baf\\u1bba-\\u1be5\\u1c00-\\u1c23\\u1c4d-\\u1c4f\\u1c5a-\\u1c7d\\u1ce9-\\u1cec\\u1cee-\\u1cf1\\u1cf5\\u1cf6\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\\u212f-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u2160-\\u2188\\u2c00-\\u2c2e\\u2c30-\\u2c5e\\u2c60-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u2e2f\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312d\\u3131-\\u318e\\u31a0-\\u31ba\\u31f0-\\u31ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\ua000-\\ua48c\\ua4d0-\\ua4fd\\ua500-\\ua60c\\ua610-\\ua61f\\ua62a\\ua62b\\ua640-\\ua66e\\ua67f-\\ua697\\ua6a0-\\ua6ef\\ua717-\\ua71f\\ua722-\\ua788\\ua78b-\\ua78e\\ua790-\\ua793\\ua7a0-\\ua7aa\\ua7f8-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua822\\ua840-\\ua873\\ua882-\\ua8b3\\ua8f2-\\ua8f7\\ua8fb\\ua90a-\\ua925\\ua930-\\ua946\\ua960-\\ua97c\\ua984-\\ua9b2\\ua9cf\\uaa00-\\uaa28\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa60-\\uaa76\\uaa7a\\uaa80-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaadd\\uaae0-\\uaaea\\uaaf2-\\uaaf4\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uabc0-\\uabe2\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40\\ufb41\\ufb43\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc")+"])",(u=g).identifier=new RegExp(f+"(?:\\\\u[0-9a-fA-F]{4}|[\\x24\\x30-\\x39\\x41-\\x5a\\x5f\\x61-\\x7a\\xaa\\xb5\\xba\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ec\\u02ee\\u0370-\\u0374\\u0376\\u0377\\u037a-\\u037d\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0481\\u048a-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05d0-\\u05ea\\u05f0-\\u05f2\\u0620-\\u064a\\u066e\\u066f\\u0671-\\u06d3\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\\u0712-\\u072f\\u074d-\\u07a5\\u07b1\\u07ca-\\u07ea\\u07f4\\u07f5\\u07fa\\u0800-\\u0815\\u081a\\u0824\\u0828\\u0840-\\u0858\\u08a0\\u08a2-\\u08ac\\u0904-\\u0939\\u093d\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097f\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc\\u09dd\\u09df-\\u09e1\\u09f0\\u09f1\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd\\u0ad0\\u0ae0\\u0ae1\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bd0\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c33\\u0c35-\\u0c39\\u0c3d\\u0c58\\u0c59\\u0c60\\u0c61\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cde\\u0ce0\\u0ce1\\u0cf1\\u0cf2\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d\\u0d4e\\u0d60\\u0d61\\u0d7a-\\u0d7f\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e81\\u0e82\\u0e84\\u0e87\\u0e88\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\\u0eaa\\u0eab\\u0ead-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0edc-\\u0edf\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6c\\u0f88-\\u0f8c\\u1000-\\u102a\\u103f\\u1050-\\u1055\\u105a-\\u105d\\u1061\\u1065\\u1066\\u106e-\\u1070\\u1075-\\u1081\\u108e\\u10a0-\\u10c5\\u10c7\\u10cd\\u10d0-\\u10fa\\u10fc-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f4\\u1401-\\u166c\\u166f-\\u167f\\u1681-\\u169a\\u16a0-\\u16ea\\u16ee-\\u16f0\\u1700-\\u170c\\u170e-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\\u17dc\\u1820-\\u1877\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191c\\u1950-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19c1-\\u19c7\\u1a00-\\u1a16\\u1a20-\\u1a54\\u1aa7\\u1b05-\\u1b33\\u1b45-\\u1b4b\\u1b83-\\u1ba0\\u1bae\\u1baf\\u1bba-\\u1be5\\u1c00-\\u1c23\\u1c4d-\\u1c4f\\u1c5a-\\u1c7d\\u1ce9-\\u1cec\\u1cee-\\u1cf1\\u1cf5\\u1cf6\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\\u212f-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u2160-\\u2188\\u2c00-\\u2c2e\\u2c30-\\u2c5e\\u2c60-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u2e2f\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312d\\u3131-\\u318e\\u31a0-\\u31ba\\u31f0-\\u31ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\ua000-\\ua48c\\ua4d0-\\ua4fd\\ua500-\\ua60c\\ua610-\\ua61f\\ua62a\\ua62b\\ua640-\\ua66e\\ua67f-\\ua697\\ua6a0-\\ua6ef\\ua717-\\ua71f\\ua722-\\ua788\\ua78b-\\ua78e\\ua790-\\ua793\\ua7a0-\\ua7aa\\ua7f8-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua822\\ua840-\\ua873\\ua882-\\ua8b3\\ua8f2-\\ua8f7\\ua8fb\\ua90a-\\ua925\\ua930-\\ua946\\ua960-\\ua97c\\ua984-\\ua9b2\\ua9cf\\uaa00-\\uaa28\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa60-\\uaa76\\uaa7a\\uaa80-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaadd\\uaae0-\\uaaea\\uaaf2-\\uaaf4\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uabc0-\\uabe2\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40\\ufb41\\ufb43\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc\\u0300-\\u036f\\u0483-\\u0487\\u0591-\\u05bd\\u05bf\\u05c1\\u05c2\\u05c4\\u05c5\\u05c7\\u0610-\\u061a\\u0620-\\u0649\\u0672-\\u06d3\\u06e7-\\u06e8\\u06fb-\\u06fc\\u0730-\\u074a\\u0800-\\u0814\\u081b-\\u0823\\u0825-\\u0827\\u0829-\\u082d\\u0840-\\u0857\\u08e4-\\u08fe\\u0900-\\u0903\\u093a-\\u093c\\u093e-\\u094f\\u0951-\\u0957\\u0962-\\u0963\\u0966-\\u096f\\u0981-\\u0983\\u09bc\\u09be-\\u09c4\\u09c7\\u09c8\\u09d7\\u09df-\\u09e0\\u0a01-\\u0a03\\u0a3c\\u0a3e-\\u0a42\\u0a47\\u0a48\\u0a4b-\\u0a4d\\u0a51\\u0a66-\\u0a71\\u0a75\\u0a81-\\u0a83\\u0abc\\u0abe-\\u0ac5\\u0ac7-\\u0ac9\\u0acb-\\u0acd\\u0ae2-\\u0ae3\\u0ae6-\\u0aef\\u0b01-\\u0b03\\u0b3c\\u0b3e-\\u0b44\\u0b47\\u0b48\\u0b4b-\\u0b4d\\u0b56\\u0b57\\u0b5f-\\u0b60\\u0b66-\\u0b6f\\u0b82\\u0bbe-\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcd\\u0bd7\\u0be6-\\u0bef\\u0c01-\\u0c03\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55\\u0c56\\u0c62-\\u0c63\\u0c66-\\u0c6f\\u0c82\\u0c83\\u0cbc\\u0cbe-\\u0cc4\\u0cc6-\\u0cc8\\u0cca-\\u0ccd\\u0cd5\\u0cd6\\u0ce2-\\u0ce3\\u0ce6-\\u0cef\\u0d02\\u0d03\\u0d46-\\u0d48\\u0d57\\u0d62-\\u0d63\\u0d66-\\u0d6f\\u0d82\\u0d83\\u0dca\\u0dcf-\\u0dd4\\u0dd6\\u0dd8-\\u0ddf\\u0df2\\u0df3\\u0e34-\\u0e3a\\u0e40-\\u0e45\\u0e50-\\u0e59\\u0eb4-\\u0eb9\\u0ec8-\\u0ecd\\u0ed0-\\u0ed9\\u0f18\\u0f19\\u0f20-\\u0f29\\u0f35\\u0f37\\u0f39\\u0f41-\\u0f47\\u0f71-\\u0f84\\u0f86-\\u0f87\\u0f8d-\\u0f97\\u0f99-\\u0fbc\\u0fc6\\u1000-\\u1029\\u1040-\\u1049\\u1067-\\u106d\\u1071-\\u1074\\u1082-\\u108d\\u108f-\\u109d\\u135d-\\u135f\\u170e-\\u1710\\u1720-\\u1730\\u1740-\\u1750\\u1772\\u1773\\u1780-\\u17b2\\u17dd\\u17e0-\\u17e9\\u180b-\\u180d\\u1810-\\u1819\\u1920-\\u192b\\u1930-\\u193b\\u1951-\\u196d\\u19b0-\\u19c0\\u19c8-\\u19c9\\u19d0-\\u19d9\\u1a00-\\u1a15\\u1a20-\\u1a53\\u1a60-\\u1a7c\\u1a7f-\\u1a89\\u1a90-\\u1a99\\u1b46-\\u1b4b\\u1b50-\\u1b59\\u1b6b-\\u1b73\\u1bb0-\\u1bb9\\u1be6-\\u1bf3\\u1c00-\\u1c22\\u1c40-\\u1c49\\u1c5b-\\u1c7d\\u1cd0-\\u1cd2\\u1d00-\\u1dbe\\u1e01-\\u1f15\\u200c\\u200d\\u203f\\u2040\\u2054\\u20d0-\\u20dc\\u20e1\\u20e5-\\u20f0\\u2d81-\\u2d96\\u2de0-\\u2dff\\u3021-\\u3028\\u3099\\u309a\\ua640-\\ua66d\\ua674-\\ua67d\\ua69f\\ua6f0-\\ua6f1\\ua7f8-\\ua800\\ua806\\ua80b\\ua823-\\ua827\\ua880-\\ua881\\ua8b4-\\ua8c4\\ua8d0-\\ua8d9\\ua8f3-\\ua8f7\\ua900-\\ua909\\ua926-\\ua92d\\ua930-\\ua945\\ua980-\\ua983\\ua9b3-\\ua9c0\\uaa00-\\uaa27\\uaa40-\\uaa41\\uaa4c-\\uaa4d\\uaa50-\\uaa59\\uaa7b\\uaae0-\\uaae9\\uaaf2-\\uaaf3\\uabc0-\\uabe1\\uabec\\uabed\\uabf0-\\uabf9\\ufb20-\\ufb28\\ufe00-\\ufe0f\\ufe20-\\ufe26\\ufe33\\ufe34\\ufe4d-\\ufe4f\\uff10-\\uff19\\uff3f])*","g"),u.identifierStart=new RegExp(f),u.identifierMatch=new RegExp("(?:\\\\u[0-9a-fA-F]{4}|["+p+h+v+"])+"),u.newline=/[\n\r\u2028\u2029]/,u.lineBreak=new RegExp("\r\n|"+u.newline.source),u.allLineBreaks=new RegExp(u.lineBreak.source,"g");var m={},b={};function y(t,e){this.raw_options=x(t,e),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php","smarty"],["auto"])}function x(t,e){var i,n={};for(i in t=_(t))i!==e&&(n[i]=t[i]);if(e&&t[e])for(i in t[e])n[i]=t[e][i];return n}function _(t){var e,i={};for(e in t){i[e.replace(/-/g,"_")]=t[e]}return i}y.prototype._get_array=function(t,e){var i=this.raw_options[t],n=e||[];return"object"==typeof i?null!==i&&"function"==typeof i.concat&&(n=i.concat()):"string"==typeof i&&(n=i.split(/[^a-zA-Z0-9_\/\-]+/)),n},y.prototype._get_boolean=function(t,e){var i=this.raw_options[t];return void 0===i?!!e:!!i},y.prototype._get_characters=function(t,e){var i=this.raw_options[t],n=e||"";return"string"==typeof i&&(n=i.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),n},y.prototype._get_number=function(t,e){var i=this.raw_options[t];e=parseInt(e,10),isNaN(e)&&(e=0);var n=parseInt(i,10);return isNaN(n)&&(n=e),n},y.prototype._get_selection=function(t,e,i){var n=this._get_selection_list(t,e,i);if(1!==n.length)throw new Error("Invalid Option Value: The option '"+t+"' can only be one of the following values:\n"+e+"\nYou passed in: '"+this.raw_options[t]+"'");return n[0]},y.prototype._get_selection_list=function(t,e,i){if(!e||0===e.length)throw new Error("Selection list cannot be empty.");if(i=i||[e[0]],!this._is_valid_selection(i,e))throw new Error("Invalid Default Value!");var n=this._get_array(t,i);if(!this._is_valid_selection(n,e))throw new Error("Invalid Option Value: The option '"+t+"' can contain only the following values:\n"+e+"\nYou passed in: '"+this.raw_options[t]+"'");return n},y.prototype._is_valid_selection=function(t,e){return t.length&&e.length&&!t.some((function(t){return-1===e.indexOf(t)}))},b.Options=y,b.normalizeOpts=_,b.mergeOpts=x;var w=b.Options,S=["before-newline","after-newline","preserve-newline"];function C(t){w.call(this,t,"js");var e=this.raw_options.brace_style||null;"expand-strict"===e?this.raw_options.brace_style="expand":"collapse-preserve-inline"===e?this.raw_options.brace_style="collapse,preserve-inline":void 0!==this.raw_options.braces_on_own_line&&(this.raw_options.brace_style=this.raw_options.braces_on_own_line?"expand":"collapse");var i=this._get_selection_list("brace_style",["collapse","expand","end-expand","none","preserve-inline"]);this.brace_preserve_inline=!1,this.brace_style="collapse";for(var n=0;n<i.length;n++)"preserve-inline"===i[n]?this.brace_preserve_inline=!0:this.brace_style=i[n];this.unindent_chained_methods=this._get_boolean("unindent_chained_methods"),this.break_chained_methods=this._get_boolean("break_chained_methods"),this.space_in_paren=this._get_boolean("space_in_paren"),this.space_in_empty_paren=this._get_boolean("space_in_empty_paren"),this.jslint_happy=this._get_boolean("jslint_happy"),this.space_after_anon_function=this._get_boolean("space_after_anon_function"),this.space_after_named_function=this._get_boolean("space_after_named_function"),this.keep_array_indentation=this._get_boolean("keep_array_indentation"),this.space_before_conditional=this._get_boolean("space_before_conditional",!0),this.unescape_strings=this._get_boolean("unescape_strings"),this.e4x=this._get_boolean("e4x"),this.comma_first=this._get_boolean("comma_first"),this.operator_position=this._get_selection("operator_position",S),this.test_output_raw=this._get_boolean("test_output_raw"),this.jslint_happy&&(this.space_after_anon_function=!0)}C.prototype=new w,m.Options=C;var k={},E={},A=RegExp.prototype.hasOwnProperty("sticky");function L(t){this.__input=t||"",this.__input_length=this.__input.length,this.__position=0}L.prototype.restart=function(){this.__position=0},L.prototype.back=function(){this.__position>0&&(this.__position-=1)},L.prototype.hasNext=function(){return this.__position<this.__input_length},L.prototype.next=function(){var t=null;return this.hasNext()&&(t=this.__input.charAt(this.__position),this.__position+=1),t},L.prototype.peek=function(t){var e=null;return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&(e=this.__input.charAt(t)),e},L.prototype.__match=function(t,e){t.lastIndex=e;var i=t.exec(this.__input);return!i||A&&t.sticky||i.index!==e&&(i=null),i},L.prototype.test=function(t,e){return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&!!this.__match(t,e)},L.prototype.testChar=function(t,e){var i=this.peek(e);return t.lastIndex=0,null!==i&&t.test(i)},L.prototype.match=function(t){var e=this.__match(t,this.__position);return e?this.__position+=e[0].length:e=null,e},L.prototype.read=function(t,e,i){var n,o="";return t&&(n=this.match(t))&&(o+=n[0]),!e||!n&&t||(o+=this.readUntil(e,i)),o},L.prototype.readUntil=function(t,e){var i,n=this.__position;t.lastIndex=this.__position;var o=t.exec(this.__input);return o?(n=o.index,e&&(n+=o[0].length)):n=this.__input_length,i=this.__input.substring(this.__position,n),this.__position=n,i},L.prototype.readUntilAfter=function(t){return this.readUntil(t,!0)},L.prototype.get_regexp=function(t,e){var i=null,n="g";return e&&A&&(n="y"),"string"==typeof t&&""!==t?i=new RegExp(t,n):t&&(i=new RegExp(t.source,n)),i},L.prototype.get_literal_regexp=function(t){return RegExp(t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},L.prototype.peekUntilAfter=function(t){var e=this.__position,i=this.readUntilAfter(t);return this.__position=e,i},L.prototype.lookBack=function(t){var e=this.__position-1;return e>=t.length&&this.__input.substring(e-t.length,e).toLowerCase()===t},E.InputScanner=L;var q={},T={};function M(t){this.__tokens=[],this.__tokens_length=this.__tokens.length,this.__position=0,this.__parent_token=t}M.prototype.restart=function(){this.__position=0},M.prototype.isEmpty=function(){return 0===this.__tokens_length},M.prototype.hasNext=function(){return this.__position<this.__tokens_length},M.prototype.next=function(){var t=null;return this.hasNext()&&(t=this.__tokens[this.__position],this.__position+=1),t},M.prototype.peek=function(t){var e=null;return t=t||0,(t+=this.__position)>=0&&t<this.__tokens_length&&(e=this.__tokens[t]),e},M.prototype.add=function(t){this.__parent_token&&(t.parent=this.__parent_token),this.__tokens.push(t),this.__tokens_length+=1},T.TokenStream=M;var O={},R={};function N(t,e){this._input=t,this._starting_pattern=null,this._match_pattern=null,this._until_pattern=null,this._until_after=!1,e&&(this._starting_pattern=this._input.get_regexp(e._starting_pattern,!0),this._match_pattern=this._input.get_regexp(e._match_pattern,!0),this._until_pattern=this._input.get_regexp(e._until_pattern),this._until_after=e._until_after)}N.prototype.read=function(){var t=this._input.read(this._starting_pattern);return this._starting_pattern&&!t||(t+=this._input.read(this._match_pattern,this._until_pattern,this._until_after)),t},N.prototype.read_match=function(){return this._input.match(this._match_pattern)},N.prototype.until_after=function(t){var e=this._create();return e._until_after=!0,e._until_pattern=this._input.get_regexp(t),e._update(),e},N.prototype.until=function(t){var e=this._create();return e._until_after=!1,e._until_pattern=this._input.get_regexp(t),e._update(),e},N.prototype.starting_with=function(t){var e=this._create();return e._starting_pattern=this._input.get_regexp(t,!0),e._update(),e},N.prototype.matching=function(t){var e=this._create();return e._match_pattern=this._input.get_regexp(t,!0),e._update(),e},N.prototype._create=function(){return new N(this._input,this)},N.prototype._update=function(){},R.Pattern=N;var B=R.Pattern;function $(t,e){B.call(this,t,e),e?this._line_regexp=this._input.get_regexp(e._line_regexp):this.__set_whitespace_patterns("",""),this.newline_count=0,this.whitespace_before_token=""}$.prototype=new B,$.prototype.__set_whitespace_patterns=function(t,e){t+="\\t ",e+="\\n\\r",this._match_pattern=this._input.get_regexp("["+t+e+"]+",!0),this._newline_regexp=this._input.get_regexp("\\r\\n|["+e+"]")},$.prototype.read=function(){this.newline_count=0,this.whitespace_before_token="";var t=this._input.read(this._match_pattern);if(" "===t)this.whitespace_before_token=" ";else if(t){var e=this.__split(this._newline_regexp,t);this.newline_count=e.length-1,this.whitespace_before_token=e[this.newline_count]}return t},$.prototype.matching=function(t,e){var i=this._create();return i.__set_whitespace_patterns(t,e),i._update(),i},$.prototype._create=function(){return new $(this._input,this)},$.prototype.__split=function(t,e){t.lastIndex=0;for(var i=0,n=[],o=t.exec(e);o;)n.push(e.substring(i,o.index)),i=o.index+o[0].length,o=t.exec(e);return i<e.length?n.push(e.substring(i,e.length)):n.push(""),n},O.WhitespacePattern=$;var I=E.InputScanner,H=c.Token,D=T.TokenStream,z=O.WhitespacePattern,P={START:"TK_START",RAW:"TK_RAW",EOF:"TK_EOF"},F=function(t,e){this._input=new I(t),this._options=e||{},this.__tokens=null,this._patterns={},this._patterns.whitespace=new z(this._input)};F.prototype.tokenize=function(){var t;this._input.restart(),this.__tokens=new D,this._reset();for(var e=new H(P.START,""),i=null,n=[],o=new D;e.type!==P.EOF;){for(t=this._get_next_token(e,i);this._is_comment(t);)o.add(t),t=this._get_next_token(e,i);o.isEmpty()||(t.comments_before=o,o=new D),t.parent=i,this._is_opening(t)?(n.push(i),i=t):i&&this._is_closing(t,i)&&(t.opened=i,i.closed=t,i=n.pop(),t.parent=i),t.previous=e,e.next=t,this.__tokens.add(t),e=t}return this.__tokens},F.prototype._is_first_token=function(){return this.__tokens.isEmpty()},F.prototype._reset=function(){},F.prototype._get_next_token=function(t,e){this._readWhitespace();var i=this._input.read(/.+/g);return i?this._create_token(P.RAW,i):this._create_token(P.EOF,"")},F.prototype._is_comment=function(t){return!1},F.prototype._is_opening=function(t){return!1},F.prototype._is_closing=function(t,e){return!1},F.prototype._create_token=function(t,e){return new H(t,e,this._patterns.whitespace.newline_count,this._patterns.whitespace.whitespace_before_token)},F.prototype._readWhitespace=function(){return this._patterns.whitespace.read()},q.Tokenizer=F,q.TOKEN=P;var U={};function W(t,e){t="string"==typeof t?t:t.source,e="string"==typeof e?e:e.source,this.__directives_block_pattern=new RegExp(t+/ beautify( \w+[:]\w+)+ /.source+e,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(t+/\sbeautify\signore:end\s/.source+e,"g")}W.prototype.get_directives=function(t){if(!t.match(this.__directives_block_pattern))return null;var e={};this.__directive_pattern.lastIndex=0;for(var i=this.__directive_pattern.exec(t);i;)e[i[1]]=i[2],i=this.__directive_pattern.exec(t);return e},W.prototype.readIgnored=function(t){return t.readUntilAfter(this.__directives_end_ignore_pattern)},U.Directives=W;var j={},G=R.Pattern,Y={django:!1,erb:!1,handlebars:!1,php:!1,smarty:!1};function V(t,e){G.call(this,t,e),this.__template_pattern=null,this._disabled=Object.assign({},Y),this._excluded=Object.assign({},Y),e&&(this.__template_pattern=this._input.get_regexp(e.__template_pattern),this._excluded=Object.assign(this._excluded,e._excluded),this._disabled=Object.assign(this._disabled,e._disabled));var i=new G(t);this.__patterns={handlebars_comment:i.starting_with(/{{!--/).until_after(/--}}/),handlebars_unescaped:i.starting_with(/{{{/).until_after(/}}}/),handlebars:i.starting_with(/{{/).until_after(/}}/),php:i.starting_with(/<\?(?:[= ]|php)/).until_after(/\?>/),erb:i.starting_with(/<%[^%]/).until_after(/[^%]%>/),django:i.starting_with(/{%/).until_after(/%}/),django_value:i.starting_with(/{{/).until_after(/}}/),django_comment:i.starting_with(/{#/).until_after(/#}/),smarty:i.starting_with(/{(?=[^}{\s\n])/).until_after(/[^\s\n]}/),smarty_comment:i.starting_with(/{\*/).until_after(/\*}/),smarty_literal:i.starting_with(/{literal}/).until_after(/{\/literal}/)}}V.prototype=new G,V.prototype._create=function(){return new V(this._input,this)},V.prototype._update=function(){this.__set_templated_pattern()},V.prototype.disable=function(t){var e=this._create();return e._disabled[t]=!0,e._update(),e},V.prototype.read_options=function(t){var e=this._create();for(var i in Y)e._disabled[i]=-1===t.templating.indexOf(i);return e._update(),e},V.prototype.exclude=function(t){var e=this._create();return e._excluded[t]=!0,e._update(),e},V.prototype.read=function(){var t="";t=this._match_pattern?this._input.read(this._starting_pattern):this._input.read(this._starting_pattern,this.__template_pattern);for(var e=this._read_template();e;)this._match_pattern?e+=this._input.read(this._match_pattern):e+=this._input.readUntil(this.__template_pattern),t+=e,e=this._read_template();return this._until_after&&(t+=this._input.readUntilAfter(this._until_pattern)),t},V.prototype.__set_templated_pattern=function(){var t=[];this._disabled.php||t.push(this.__patterns.php._starting_pattern.source),this._disabled.handlebars||t.push(this.__patterns.handlebars._starting_pattern.source),this._disabled.erb||t.push(this.__patterns.erb._starting_pattern.source),this._disabled.django||(t.push(this.__patterns.django._starting_pattern.source),t.push(this.__patterns.django_value._starting_pattern.source),t.push(this.__patterns.django_comment._starting_pattern.source)),this._disabled.smarty||t.push(this.__patterns.smarty._starting_pattern.source),this._until_pattern&&t.push(this._until_pattern.source),this.__template_pattern=this._input.get_regexp("(?:"+t.join("|")+")")},V.prototype._read_template=function(){var t="",e=this._input.peek();if("<"===e){var i=this._input.peek(1);this._disabled.php||this._excluded.php||"?"!==i||(t=t||this.__patterns.php.read()),this._disabled.erb||this._excluded.erb||"%"!==i||(t=t||this.__patterns.erb.read())}else"{"===e&&(this._disabled.handlebars||this._excluded.handlebars||(t=(t=(t=t||this.__patterns.handlebars_comment.read())||this.__patterns.handlebars_unescaped.read())||this.__patterns.handlebars.read()),this._disabled.django||(this._excluded.django||this._excluded.handlebars||(t=t||this.__patterns.django_value.read()),this._excluded.django||(t=(t=t||this.__patterns.django_comment.read())||this.__patterns.django.read())),this._disabled.smarty||this._disabled.django&&this._disabled.handlebars&&(t=(t=(t=t||this.__patterns.smarty_comment.read())||this.__patterns.smarty_literal.read())||this.__patterns.smarty.read()));return t},j.TemplatablePattern=V;var X=E.InputScanner,Z=q.Tokenizer,K=q.TOKEN,J=U.Directives,Q=g,tt=R.Pattern,et=j.TemplatablePattern;function it(t,e){return-1!==e.indexOf(t)}var nt={START_EXPR:"TK_START_EXPR",END_EXPR:"TK_END_EXPR",START_BLOCK:"TK_START_BLOCK",END_BLOCK:"TK_END_BLOCK",WORD:"TK_WORD",RESERVED:"TK_RESERVED",SEMICOLON:"TK_SEMICOLON",STRING:"TK_STRING",EQUALS:"TK_EQUALS",OPERATOR:"TK_OPERATOR",COMMA:"TK_COMMA",BLOCK_COMMENT:"TK_BLOCK_COMMENT",COMMENT:"TK_COMMENT",DOT:"TK_DOT",UNKNOWN:"TK_UNKNOWN",START:K.START,RAW:K.RAW,EOF:K.EOF},ot=new J(/\/\*/,/\*\//),st=/0[xX][0123456789abcdefABCDEF_]*n?|0[oO][01234567_]*n?|0[bB][01_]*n?|\d[\d_]*n|(?:\.\d[\d_]*|\d[\d_]*\.?[\d_]*)(?:[eE][+-]?[\d_]+)?/,rt=/[0-9]/,lt=/[^\d\.]/,at=">>> === !== << && >= ** != == <= >> || ?? |> < / - + > : & % ? ^ | *".split(" "),dt=">>>= ... >>= <<= === >>> !== **= => ^= :: /= << <= == && -= >= >> != -- += ** || ?? ++ %= &= *= |= |> = ! ? > < : / ^ - + * & % ~ |";dt=(dt="\\?\\.(?!\\d) "+(dt=dt.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&"))).replace(/ /g,"|");var ct,ut=new RegExp(dt),pt="continue,try,throw,return,var,let,const,if,switch,case,default,for,while,break,function,import,export".split(","),ht=pt.concat(["do","in","of","else","get","set","new","catch","finally","typeof","yield","async","await","from","as"]),vt=new RegExp("^(?:"+ht.join("|")+")$"),ft=function(t,e){Z.call(this,t,e),this._patterns.whitespace=this._patterns.whitespace.matching(/\u00A0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff/.source,/\u2028\u2029/.source);var i=new tt(this._input),n=new et(this._input).read_options(this._options);this.__patterns={template:n,identifier:n.starting_with(Q.identifier).matching(Q.identifierMatch),number:i.matching(st),punct:i.matching(ut),comment:i.starting_with(/\/\//).until(/[\n\r\u2028\u2029]/),block_comment:i.starting_with(/\/\*/).until_after(/\*\//),html_comment_start:i.matching(/<!--/),html_comment_end:i.matching(/-->/),include:i.starting_with(/#include/).until_after(Q.lineBreak),shebang:i.starting_with(/#!/).until_after(Q.lineBreak),xml:i.matching(/[\s\S]*?<(\/?)([-a-zA-Z:0-9_.]+|{[\s\S]+?}|!\[CDATA\[[\s\S]*?\]\]|)(\s+{[\s\S]+?}|\s+[-a-zA-Z:0-9_.]+|\s+[-a-zA-Z:0-9_.]+\s*=\s*('[^']*'|"[^"]*"|{[\s\S]+?}))*\s*(\/?)\s*>/),single_quote:n.until(/['\\\n\r\u2028\u2029]/),double_quote:n.until(/["\\\n\r\u2028\u2029]/),template_text:n.until(/[`\\$]/),template_expression:n.until(/[`}\\]/)}};(ft.prototype=new Z)._is_comment=function(t){return t.type===nt.COMMENT||t.type===nt.BLOCK_COMMENT||t.type===nt.UNKNOWN},ft.prototype._is_opening=function(t){return t.type===nt.START_BLOCK||t.type===nt.START_EXPR},ft.prototype._is_closing=function(t,e){return(t.type===nt.END_BLOCK||t.type===nt.END_EXPR)&&e&&("]"===t.text&&"["===e.text||")"===t.text&&"("===e.text||"}"===t.text&&"{"===e.text)},ft.prototype._reset=function(){ct=!1},ft.prototype._get_next_token=function(t,e){var i=null;this._readWhitespace();var n=this._input.peek();return null===n?this._create_token(nt.EOF,""):i=(i=(i=(i=(i=(i=(i=(i=(i=i||this._read_non_javascript(n))||this._read_string(n))||this._read_word(t))||this._read_singles(n))||this._read_comment(n))||this._read_regexp(n,t))||this._read_xml(n,t))||this._read_punctuation())||this._create_token(nt.UNKNOWN,this._input.next())},ft.prototype._read_word=function(t){var e;return""!==(e=this.__patterns.identifier.read())?(e=e.replace(Q.allLineBreaks,"\n"),t.type!==nt.DOT&&(t.type!==nt.RESERVED||"set"!==t.text&&"get"!==t.text)&&vt.test(e)?"in"===e||"of"===e?this._create_token(nt.OPERATOR,e):this._create_token(nt.RESERVED,e):this._create_token(nt.WORD,e)):""!==(e=this.__patterns.number.read())?this._create_token(nt.WORD,e):void 0},ft.prototype._read_singles=function(t){var e=null;return"("===t||"["===t?e=this._create_token(nt.START_EXPR,t):")"===t||"]"===t?e=this._create_token(nt.END_EXPR,t):"{"===t?e=this._create_token(nt.START_BLOCK,t):"}"===t?e=this._create_token(nt.END_BLOCK,t):";"===t?e=this._create_token(nt.SEMICOLON,t):"."===t&&lt.test(this._input.peek(1))?e=this._create_token(nt.DOT,t):","===t&&(e=this._create_token(nt.COMMA,t)),e&&this._input.next(),e},ft.prototype._read_punctuation=function(){var t=this.__patterns.punct.read();if(""!==t)return"="===t?this._create_token(nt.EQUALS,t):"?."===t?this._create_token(nt.DOT,t):this._create_token(nt.OPERATOR,t)},ft.prototype._read_non_javascript=function(t){var e="";if("#"===t){if(this._is_first_token()&&(e=this.__patterns.shebang.read()))return this._create_token(nt.UNKNOWN,e.trim()+"\n");if(e=this.__patterns.include.read())return this._create_token(nt.UNKNOWN,e.trim()+"\n");t=this._input.next();var i="#";if(this._input.hasNext()&&this._input.testChar(rt)){do{i+=t=this._input.next()}while(this._input.hasNext()&&"#"!==t&&"="!==t);return"#"===t||("["===this._input.peek()&&"]"===this._input.peek(1)?(i+="[]",this._input.next(),this._input.next()):"{"===this._input.peek()&&"}"===this._input.peek(1)&&(i+="{}",this._input.next(),this._input.next())),this._create_token(nt.WORD,i)}this._input.back()}else if("<"===t&&this._is_first_token()){if(e=this.__patterns.html_comment_start.read()){for(;this._input.hasNext()&&!this._input.testChar(Q.newline);)e+=this._input.next();return ct=!0,this._create_token(nt.COMMENT,e)}}else if(ct&&"-"===t&&(e=this.__patterns.html_comment_end.read()))return ct=!1,this._create_token(nt.COMMENT,e);return null},ft.prototype._read_comment=function(t){var e=null;if("/"===t){var i="";if("*"===this._input.peek(1)){i=this.__patterns.block_comment.read();var n=ot.get_directives(i);n&&"start"===n.ignore&&(i+=ot.readIgnored(this._input)),i=i.replace(Q.allLineBreaks,"\n"),(e=this._create_token(nt.BLOCK_COMMENT,i)).directives=n}else"/"===this._input.peek(1)&&(i=this.__patterns.comment.read(),e=this._create_token(nt.COMMENT,i))}return e},ft.prototype._read_string=function(t){if("`"===t||"'"===t||'"'===t){var e=this._input.next();return this.has_char_escapes=!1,e+="`"===t?this._read_string_recursive("`",!0,"${"):this._read_string_recursive(t),this.has_char_escapes&&this._options.unescape_strings&&(e=function(t){var e="",i=0,n=new X(t),o=null;for(;n.hasNext();)if((o=n.match(/([\s]|[^\\]|\\\\)+/g))&&(e+=o[0]),"\\"===n.peek()){if(n.next(),"x"===n.peek())o=n.match(/x([0-9A-Fa-f]{2})/g);else{if("u"!==n.peek()){e+="\\",n.hasNext()&&(e+=n.next());continue}o=n.match(/u([0-9A-Fa-f]{4})/g)}if(!o)return t;if((i=parseInt(o[1],16))>126&&i<=255&&0===o[0].indexOf("x"))return t;if(i>=0&&i<32){e+="\\"+o[0];continue}e+=34===i||39===i||92===i?"\\"+String.fromCharCode(i):String.fromCharCode(i)}return e}(e)),this._input.peek()===t&&(e+=this._input.next()),e=e.replace(Q.allLineBreaks,"\n"),this._create_token(nt.STRING,e)}return null},ft.prototype._allow_regexp_or_xml=function(t){return t.type===nt.RESERVED&&it(t.text,["return","case","throw","else","do","typeof","yield"])||t.type===nt.END_EXPR&&")"===t.text&&t.opened.previous.type===nt.RESERVED&&it(t.opened.previous.text,["if","while","for"])||it(t.type,[nt.COMMENT,nt.START_EXPR,nt.START_BLOCK,nt.START,nt.END_BLOCK,nt.OPERATOR,nt.EQUALS,nt.EOF,nt.SEMICOLON,nt.COMMA])},ft.prototype._read_regexp=function(t,e){if("/"===t&&this._allow_regexp_or_xml(e)){for(var i=this._input.next(),n=!1,o=!1;this._input.hasNext()&&(n||o||this._input.peek()!==t)&&!this._input.testChar(Q.newline);)i+=this._input.peek(),n?n=!1:(n="\\"===this._input.peek(),"["===this._input.peek()?o=!0:"]"===this._input.peek()&&(o=!1)),this._input.next();return this._input.peek()===t&&(i+=this._input.next(),i+=this._input.read(Q.identifier)),this._create_token(nt.STRING,i)}return null},ft.prototype._read_xml=function(t,e){if(this._options.e4x&&"<"===t&&this._allow_regexp_or_xml(e)){var i="",n=this.__patterns.xml.read_match();if(n){for(var o=n[2].replace(/^{\s+/,"{").replace(/\s+}$/,"}"),s=0===o.indexOf("{"),r=0;n;){var l=!!n[1],a=n[2];if(!(!!n[n.length-1]||"![CDATA["===a.slice(0,8))&&(a===o||s&&a.replace(/^{\s+/,"{").replace(/\s+}$/,"}"))&&(l?--r:++r),i+=n[0],r<=0)break;n=this.__patterns.xml.read_match()}return n||(i+=this._input.match(/[\s\S]*/g)[0]),i=i.replace(Q.allLineBreaks,"\n"),this._create_token(nt.STRING,i)}}return null},ft.prototype._read_string_recursive=function(t,e,i){var n,o;"'"===t?o=this.__patterns.single_quote:'"'===t?o=this.__patterns.double_quote:"`"===t?o=this.__patterns.template_text:"}"===t&&(o=this.__patterns.template_expression);for(var s=o.read(),r="";this._input.hasNext();){if((r=this._input.next())===t||!e&&Q.newline.test(r)){this._input.back();break}"\\"===r&&this._input.hasNext()?("x"===(n=this._input.peek())||"u"===n?this.has_char_escapes=!0:"\r"===n&&"\n"===this._input.peek(1)&&this._input.next(),r+=this._input.next()):i&&("${"===i&&"$"===r&&"{"===this._input.peek()&&(r+=this._input.next()),i===r&&(r+="`"===t?this._read_string_recursive("}",e,"`"):this._read_string_recursive("`",e,"${"),this._input.hasNext()&&(r+=this._input.next()))),s+=r+=o.read()}return s},k.Tokenizer=ft,k.TOKEN=nt,k.positionable_operators=at.slice(),k.line_starters=pt.slice();var gt=r.Output,mt=c.Token,bt=g,yt=m.Options,xt=k.Tokenizer,_t=k.line_starters,wt=k.positionable_operators,St=k.TOKEN;function Ct(t,e){return-1!==e.indexOf(t)}function kt(t,e){return t&&t.type===St.RESERVED&&t.text===e}function Et(t,e){return t&&t.type===St.RESERVED&&Ct(t.text,e)}var At=["case","return","do","if","throw","else","await","break","continue","async"],Lt=function(t){for(var e={},i=0;i<t.length;i++)e[t[i].replace(/-/g,"_")]=t[i];return e}(["before-newline","after-newline","preserve-newline"]),qt=[Lt.before_newline,Lt.preserve_newline],Tt="BlockStatement",Mt="Statement",Ot="ObjectLiteral",Rt="ArrayLiteral",Nt="ForInitializer",Bt="Conditional",$t="Expression";function It(t,e){e.multiline_frame||e.mode===Nt||e.mode===Bt||t.remove_indent(e.start_line_index)}function Ht(t){return t===Rt}function Dt(t){return Ct(t,[$t,Nt,Bt])}function zt(t,e){e=e||{},this._source_text=t||"",this._output=null,this._tokens=null,this._last_last_text=null,this._flags=null,this._previous_flags=null,this._flag_store=null,this._options=new yt(e)}zt.prototype.create_flags=function(t,e){var i=0;return t&&(i=t.indentation_level,!this._output.just_added_newline()&&t.line_indent_level>i&&(i=t.line_indent_level)),{mode:e,parent:t,last_token:t?t.last_token:new mt(St.START_BLOCK,""),last_word:t?t.last_word:"",declaration_statement:!1,declaration_assignment:!1,multiline_frame:!1,inline_frame:!1,if_block:!1,else_block:!1,do_block:!1,do_while:!1,import_block:!1,in_case_statement:!1,in_case:!1,case_body:!1,indentation_level:i,alignment:0,line_indent_level:t?t.line_indent_level:i,start_line_index:this._output.get_line_number(),ternary_depth:0}},zt.prototype._reset=function(t){var e=t.match(/^[\t ]*/)[0];this._last_last_text="",this._output=new gt(this._options,e),this._output.raw=this._options.test_output_raw,this._flag_store=[],this.set_mode(Tt);var i=new xt(t,this._options);return this._tokens=i.tokenize(),t},zt.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var t=this._reset(this._source_text),e=this._options.eol;"auto"===this._options.eol&&(e="\n",t&&bt.lineBreak.test(t||"")&&(e=t.match(bt.lineBreak)[0]));for(var i=this._tokens.next();i;)this.handle_token(i),this._last_last_text=this._flags.last_token.text,this._flags.last_token=i,i=this._tokens.next();return this._output.get_code(e)},zt.prototype.handle_token=function(t,e){t.type===St.START_EXPR?this.handle_start_expr(t):t.type===St.END_EXPR?this.handle_end_expr(t):t.type===St.START_BLOCK?this.handle_start_block(t):t.type===St.END_BLOCK?this.handle_end_block(t):t.type===St.WORD||t.type===St.RESERVED?this.handle_word(t):t.type===St.SEMICOLON?this.handle_semicolon(t):t.type===St.STRING?this.handle_string(t):t.type===St.EQUALS?this.handle_equals(t):t.type===St.OPERATOR?this.handle_operator(t):t.type===St.COMMA?this.handle_comma(t):t.type===St.BLOCK_COMMENT?this.handle_block_comment(t,e):t.type===St.COMMENT?this.handle_comment(t,e):t.type===St.DOT?this.handle_dot(t):t.type===St.EOF?this.handle_eof(t):(t.type,St.UNKNOWN,this.handle_unknown(t,e))},zt.prototype.handle_whitespace_and_comments=function(t,e){var i=t.newlines,n=this._options.keep_array_indentation&&Ht(this._flags.mode);if(t.comments_before)for(var o=t.comments_before.next();o;)this.handle_whitespace_and_comments(o,e),this.handle_token(o,e),o=t.comments_before.next();if(n)for(var s=0;s<i;s+=1)this.print_newline(s>0,e);else if(this._options.max_preserve_newlines&&i>this._options.max_preserve_newlines&&(i=this._options.max_preserve_newlines),this._options.preserve_newlines&&i>1){this.print_newline(!1,e);for(var r=1;r<i;r+=1)this.print_newline(!0,e)}};var Pt=["async","break","continue","return","throw","yield"];zt.prototype.allow_wrap_or_preserved_newline=function(t,e){if(e=void 0!==e&&e,!this._output.just_added_newline()){var i=this._options.preserve_newlines&&t.newlines||e;if(Ct(this._flags.last_token.text,wt)||Ct(t.text,wt)){var n=Ct(this._flags.last_token.text,wt)&&Ct(this._options.operator_position,qt)||Ct(t.text,wt);i=i&&n}if(i)this.print_newline(!1,!0);else if(this._options.wrap_line_length){if(Et(this._flags.last_token,Pt))return;this._output.set_wrap_point()}}},zt.prototype.print_newline=function(t,e){if(!e&&";"!==this._flags.last_token.text&&","!==this._flags.last_token.text&&"="!==this._flags.last_token.text&&(this._flags.last_token.type!==St.OPERATOR||"--"===this._flags.last_token.text||"++"===this._flags.last_token.text))for(var i=this._tokens.peek();!(this._flags.mode!==Mt||this._flags.if_block&&kt(i,"else")||this._flags.do_block);)this.restore_mode();this._output.add_new_line(t)&&(this._flags.multiline_frame=!0)},zt.prototype.print_token_line_indentation=function(t){this._output.just_added_newline()&&(this._options.keep_array_indentation&&t.newlines&&("["===t.text||Ht(this._flags.mode))?(this._output.current_line.set_indent(-1),this._output.current_line.push(t.whitespace_before),this._output.space_before_token=!1):this._output.set_indent(this._flags.indentation_level,this._flags.alignment)&&(this._flags.line_indent_level=this._flags.indentation_level))},zt.prototype.print_token=function(t){if(this._output.raw)this._output.add_raw_token(t);else{if(this._options.comma_first&&t.previous&&t.previous.type===St.COMMA&&this._output.just_added_newline()&&","===this._output.previous_line.last()){var e=this._output.previous_line.pop();this._output.previous_line.is_empty()&&(this._output.previous_line.push(e),this._output.trim(!0),this._output.current_line.pop(),this._output.trim()),this.print_token_line_indentation(t),this._output.add_token(","),this._output.space_before_token=!0}this.print_token_line_indentation(t),this._output.non_breaking_space=!0,this._output.add_token(t.text),this._output.previous_token_wrapped&&(this._flags.multiline_frame=!0)}},zt.prototype.indent=function(){this._flags.indentation_level+=1,this._output.set_indent(this._flags.indentation_level,this._flags.alignment)},zt.prototype.deindent=function(){this._flags.indentation_level>0&&(!this._flags.parent||this._flags.indentation_level>this._flags.parent.indentation_level)&&(this._flags.indentation_level-=1,this._output.set_indent(this._flags.indentation_level,this._flags.alignment))},zt.prototype.set_mode=function(t){this._flags?(this._flag_store.push(this._flags),this._previous_flags=this._flags):this._previous_flags=this.create_flags(null,t),this._flags=this.create_flags(this._previous_flags,t),this._output.set_indent(this._flags.indentation_level,this._flags.alignment)},zt.prototype.restore_mode=function(){this._flag_store.length>0&&(this._previous_flags=this._flags,this._flags=this._flag_store.pop(),this._previous_flags.mode===Mt&&It(this._output,this._previous_flags),this._output.set_indent(this._flags.indentation_level,this._flags.alignment))},zt.prototype.start_of_object_property=function(){return this._flags.parent.mode===Ot&&this._flags.mode===Mt&&(":"===this._flags.last_token.text&&0===this._flags.ternary_depth||Et(this._flags.last_token,["get","set"]))},zt.prototype.start_of_statement=function(t){var e=!1;return!!(e=(e=(e=(e=(e=(e=(e=e||Et(this._flags.last_token,["var","let","const"])&&t.type===St.WORD)||kt(this._flags.last_token,"do"))||!(this._flags.parent.mode===Ot&&this._flags.mode===Mt)&&Et(this._flags.last_token,Pt)&&!t.newlines)||kt(this._flags.last_token,"else")&&!(kt(t,"if")&&!t.comments_before))||this._flags.last_token.type===St.END_EXPR&&(this._previous_flags.mode===Nt||this._previous_flags.mode===Bt))||this._flags.last_token.type===St.WORD&&this._flags.mode===Tt&&!this._flags.in_case&&!("--"===t.text||"++"===t.text)&&"function"!==this._last_last_text&&t.type!==St.WORD&&t.type!==St.RESERVED)||this._flags.mode===Ot&&(":"===this._flags.last_token.text&&0===this._flags.ternary_depth||Et(this._flags.last_token,["get","set"])))&&(this.set_mode(Mt),this.indent(),this.handle_whitespace_and_comments(t,!0),this.start_of_object_property()||this.allow_wrap_or_preserved_newline(t,Et(t,["do","for","if","while"])),!0)},zt.prototype.handle_start_expr=function(t){this.start_of_statement(t)||this.handle_whitespace_and_comments(t);var e=$t;if("["===t.text){if(this._flags.last_token.type===St.WORD||")"===this._flags.last_token.text)return Et(this._flags.last_token,_t)&&(this._output.space_before_token=!0),this.print_token(t),this.set_mode(e),this.indent(),void(this._options.space_in_paren&&(this._output.space_before_token=!0));e=Rt,Ht(this._flags.mode)&&("["!==this._flags.last_token.text&&(","!==this._flags.last_token.text||"]"!==this._last_last_text&&"}"!==this._last_last_text)||this._options.keep_array_indentation||this.print_newline()),Ct(this._flags.last_token.type,[St.START_EXPR,St.END_EXPR,St.WORD,St.OPERATOR,St.DOT])||(this._output.space_before_token=!0)}else{if(this._flags.last_token.type===St.RESERVED)"for"===this._flags.last_token.text?(this._output.space_before_token=this._options.space_before_conditional,e=Nt):Ct(this._flags.last_token.text,["if","while","switch"])?(this._output.space_before_token=this._options.space_before_conditional,e=Bt):Ct(this._flags.last_word,["await","async"])?this._output.space_before_token=!0:"import"===this._flags.last_token.text&&""===t.whitespace_before?this._output.space_before_token=!1:(Ct(this._flags.last_token.text,_t)||"catch"===this._flags.last_token.text)&&(this._output.space_before_token=!0);else if(this._flags.last_token.type===St.EQUALS||this._flags.last_token.type===St.OPERATOR)this.start_of_object_property()||this.allow_wrap_or_preserved_newline(t);else if(this._flags.last_token.type===St.WORD){this._output.space_before_token=!1;var i=this._tokens.peek(-3);if(this._options.space_after_named_function&&i){var n=this._tokens.peek(-4);Et(i,["async","function"])||"*"===i.text&&Et(n,["async","function"])?this._output.space_before_token=!0:this._flags.mode===Ot&&("{"!==i.text&&","!==i.text&&("*"!==i.text||"{"!==n.text&&","!==n.text)||(this._output.space_before_token=!0))}}else this.allow_wrap_or_preserved_newline(t);(this._flags.last_token.type===St.RESERVED&&("function"===this._flags.last_word||"typeof"===this._flags.last_word)||"*"===this._flags.last_token.text&&(Ct(this._last_last_text,["function","yield"])||this._flags.mode===Ot&&Ct(this._last_last_text,["{",","])))&&(this._output.space_before_token=this._options.space_after_anon_function)}";"===this._flags.last_token.text||this._flags.last_token.type===St.START_BLOCK?this.print_newline():this._flags.last_token.type!==St.END_EXPR&&this._flags.last_token.type!==St.START_EXPR&&this._flags.last_token.type!==St.END_BLOCK&&"."!==this._flags.last_token.text&&this._flags.last_token.type!==St.COMMA||this.allow_wrap_or_preserved_newline(t,t.newlines),this.print_token(t),this.set_mode(e),this._options.space_in_paren&&(this._output.space_before_token=!0),this.indent()},zt.prototype.handle_end_expr=function(t){for(;this._flags.mode===Mt;)this.restore_mode();this.handle_whitespace_and_comments(t),this._flags.multiline_frame&&this.allow_wrap_or_preserved_newline(t,"]"===t.text&&Ht(this._flags.mode)&&!this._options.keep_array_indentation),this._options.space_in_paren&&(this._flags.last_token.type!==St.START_EXPR||this._options.space_in_empty_paren?this._output.space_before_token=!0:(this._output.trim(),this._output.space_before_token=!1)),this.deindent(),this.print_token(t),this.restore_mode(),It(this._output,this._previous_flags),this._flags.do_while&&this._previous_flags.mode===Bt&&(this._previous_flags.mode=$t,this._flags.do_block=!1,this._flags.do_while=!1)},zt.prototype.handle_start_block=function(t){this.handle_whitespace_and_comments(t);var e=this._tokens.peek(),i=this._tokens.peek(1);"switch"===this._flags.last_word&&this._flags.last_token.type===St.END_EXPR?(this.set_mode(Tt),this._flags.in_case_statement=!0):this._flags.case_body?this.set_mode(Tt):i&&(Ct(i.text,[":",","])&&Ct(e.type,[St.STRING,St.WORD,St.RESERVED])||Ct(e.text,["get","set","..."])&&Ct(i.type,[St.WORD,St.RESERVED]))?Ct(this._last_last_text,["class","interface"])?this.set_mode(Tt):this.set_mode(Ot):this._flags.last_token.type===St.OPERATOR&&"=>"===this._flags.last_token.text?this.set_mode(Tt):Ct(this._flags.last_token.type,[St.EQUALS,St.START_EXPR,St.COMMA,St.OPERATOR])||Et(this._flags.last_token,["return","throw","import","default"])?this.set_mode(Ot):this.set_mode(Tt);var n=!e.comments_before&&"}"===e.text,o=n&&"function"===this._flags.last_word&&this._flags.last_token.type===St.END_EXPR;if(this._options.brace_preserve_inline){var s=0,r=null;this._flags.inline_frame=!0;do{if(s+=1,(r=this._tokens.peek(s-1)).newlines){this._flags.inline_frame=!1;break}}while(r.type!==St.EOF&&(r.type!==St.END_BLOCK||r.opened!==t))}("expand"===this._options.brace_style||"none"===this._options.brace_style&&t.newlines)&&!this._flags.inline_frame?this._flags.last_token.type!==St.OPERATOR&&(o||this._flags.last_token.type===St.EQUALS||Et(this._flags.last_token,At)&&"else"!==this._flags.last_token.text)?this._output.space_before_token=!0:this.print_newline(!1,!0):(!Ht(this._previous_flags.mode)||this._flags.last_token.type!==St.START_EXPR&&this._flags.last_token.type!==St.COMMA||((this._flags.last_token.type===St.COMMA||this._options.space_in_paren)&&(this._output.space_before_token=!0),(this._flags.last_token.type===St.COMMA||this._flags.last_token.type===St.START_EXPR&&this._flags.inline_frame)&&(this.allow_wrap_or_preserved_newline(t),this._previous_flags.multiline_frame=this._previous_flags.multiline_frame||this._flags.multiline_frame,this._flags.multiline_frame=!1)),this._flags.last_token.type!==St.OPERATOR&&this._flags.last_token.type!==St.START_EXPR&&(this._flags.last_token.type!==St.START_BLOCK||this._flags.inline_frame?this._output.space_before_token=!0:this.print_newline())),this.print_token(t),this.indent(),n||this._options.brace_preserve_inline&&this._flags.inline_frame||this.print_newline()},zt.prototype.handle_end_block=function(t){for(this.handle_whitespace_and_comments(t);this._flags.mode===Mt;)this.restore_mode();var e=this._flags.last_token.type===St.START_BLOCK;this._flags.inline_frame&&!e?this._output.space_before_token=!0:"expand"===this._options.brace_style?e||this.print_newline():e||(Ht(this._flags.mode)&&this._options.keep_array_indentation?(this._options.keep_array_indentation=!1,this.print_newline(),this._options.keep_array_indentation=!0):this.print_newline()),this.restore_mode(),this.print_token(t)},zt.prototype.handle_word=function(t){if(t.type===St.RESERVED)if(Ct(t.text,["set","get"])&&this._flags.mode!==Ot)t.type=St.WORD;else if("import"===t.text&&"("===this._tokens.peek().text)t.type=St.WORD;else if(Ct(t.text,["as","from"])&&!this._flags.import_block)t.type=St.WORD;else if(this._flags.mode===Ot){":"===this._tokens.peek().text&&(t.type=St.WORD)}if(this.start_of_statement(t)?Et(this._flags.last_token,["var","let","const"])&&t.type===St.WORD&&(this._flags.declaration_statement=!0):!t.newlines||Dt(this._flags.mode)||this._flags.last_token.type===St.OPERATOR&&"--"!==this._flags.last_token.text&&"++"!==this._flags.last_token.text||this._flags.last_token.type===St.EQUALS||!this._options.preserve_newlines&&Et(this._flags.last_token,["var","let","const","set","get"])?this.handle_whitespace_and_comments(t):(this.handle_whitespace_and_comments(t),this.print_newline()),this._flags.do_block&&!this._flags.do_while){if(kt(t,"while"))return this._output.space_before_token=!0,this.print_token(t),this._output.space_before_token=!0,void(this._flags.do_while=!0);this.print_newline(),this._flags.do_block=!1}if(this._flags.if_block)if(!this._flags.else_block&&kt(t,"else"))this._flags.else_block=!0;else{for(;this._flags.mode===Mt;)this.restore_mode();this._flags.if_block=!1,this._flags.else_block=!1}if(this._flags.in_case_statement&&Et(t,["case","default"]))return this.print_newline(),this._flags.last_token.type!==St.END_BLOCK&&(this._flags.case_body||this._options.jslint_happy)&&this.deindent(),this._flags.case_body=!1,this.print_token(t),void(this._flags.in_case=!0);if(this._flags.last_token.type!==St.COMMA&&this._flags.last_token.type!==St.START_EXPR&&this._flags.last_token.type!==St.EQUALS&&this._flags.last_token.type!==St.OPERATOR||this.start_of_object_property()||this.allow_wrap_or_preserved_newline(t),kt(t,"function"))return(Ct(this._flags.last_token.text,["}",";"])||this._output.just_added_newline()&&!Ct(this._flags.last_token.text,["(","[","{",":","=",","])&&this._flags.last_token.type!==St.OPERATOR)&&(this._output.just_added_blankline()||t.comments_before||(this.print_newline(),this.print_newline(!0))),this._flags.last_token.type===St.RESERVED||this._flags.last_token.type===St.WORD?Et(this._flags.last_token,["get","set","new","export"])||Et(this._flags.last_token,Pt)||kt(this._flags.last_token,"default")&&"export"===this._last_last_text||"declare"===this._flags.last_token.text?this._output.space_before_token=!0:this.print_newline():this._flags.last_token.type===St.OPERATOR||"="===this._flags.last_token.text?this._output.space_before_token=!0:(this._flags.multiline_frame||!Dt(this._flags.mode)&&!Ht(this._flags.mode))&&this.print_newline(),this.print_token(t),void(this._flags.last_word=t.text);var e="NONE";(this._flags.last_token.type===St.END_BLOCK?this._previous_flags.inline_frame?e="SPACE":Et(t,["else","catch","finally","from"])?"expand"===this._options.brace_style||"end-expand"===this._options.brace_style||"none"===this._options.brace_style&&t.newlines?e="NEWLINE":(e="SPACE",this._output.space_before_token=!0):e="NEWLINE":this._flags.last_token.type===St.SEMICOLON&&this._flags.mode===Tt?e="NEWLINE":this._flags.last_token.type===St.SEMICOLON&&Dt(this._flags.mode)?e="SPACE":this._flags.last_token.type===St.STRING?e="NEWLINE":this._flags.last_token.type===St.RESERVED||this._flags.last_token.type===St.WORD||"*"===this._flags.last_token.text&&(Ct(this._last_last_text,["function","yield"])||this._flags.mode===Ot&&Ct(this._last_last_text,["{",","]))?e="SPACE":this._flags.last_token.type===St.START_BLOCK?e=this._flags.inline_frame?"SPACE":"NEWLINE":this._flags.last_token.type===St.END_EXPR&&(this._output.space_before_token=!0,e="NEWLINE"),Et(t,_t)&&")"!==this._flags.last_token.text&&(e=this._flags.inline_frame||"else"===this._flags.last_token.text||"export"===this._flags.last_token.text?"SPACE":"NEWLINE"),Et(t,["else","catch","finally"]))?(this._flags.last_token.type!==St.END_BLOCK||this._previous_flags.mode!==Tt||"expand"===this._options.brace_style||"end-expand"===this._options.brace_style||"none"===this._options.brace_style&&t.newlines)&&!this._flags.inline_frame?this.print_newline():(this._output.trim(!0),"}"!==this._output.current_line.last()&&this.print_newline(),this._output.space_before_token=!0):"NEWLINE"===e?Et(this._flags.last_token,At)||"declare"===this._flags.last_token.text&&Et(t,["var","let","const"])?this._output.space_before_token=!0:this._flags.last_token.type!==St.END_EXPR?this._flags.last_token.type===St.START_EXPR&&Et(t,["var","let","const"])||":"===this._flags.last_token.text||(kt(t,"if")&&kt(t.previous,"else")?this._output.space_before_token=!0:this.print_newline()):Et(t,_t)&&")"!==this._flags.last_token.text&&this.print_newline():this._flags.multiline_frame&&Ht(this._flags.mode)&&","===this._flags.last_token.text&&"}"===this._last_last_text?this.print_newline():"SPACE"===e&&(this._output.space_before_token=!0);!t.previous||t.previous.type!==St.WORD&&t.previous.type!==St.RESERVED||(this._output.space_before_token=!0),this.print_token(t),this._flags.last_word=t.text,t.type===St.RESERVED&&("do"===t.text?this._flags.do_block=!0:"if"===t.text?this._flags.if_block=!0:"import"===t.text?this._flags.import_block=!0:this._flags.import_block&&kt(t,"from")&&(this._flags.import_block=!1))},zt.prototype.handle_semicolon=function(t){this.start_of_statement(t)?this._output.space_before_token=!1:this.handle_whitespace_and_comments(t);for(var e=this._tokens.peek();!(this._flags.mode!==Mt||this._flags.if_block&&kt(e,"else")||this._flags.do_block);)this.restore_mode();this._flags.import_block&&(this._flags.import_block=!1),this.print_token(t)},zt.prototype.handle_string=function(t){(!t.text.startsWith("`")||0!==t.newlines||""!==t.whitespace_before||")"!==t.previous.text&&this._flags.last_token.type!==St.WORD)&&(this.start_of_statement(t)?this._output.space_before_token=!0:(this.handle_whitespace_and_comments(t),this._flags.last_token.type===St.RESERVED||this._flags.last_token.type===St.WORD||this._flags.inline_frame?this._output.space_before_token=!0:this._flags.last_token.type===St.COMMA||this._flags.last_token.type===St.START_EXPR||this._flags.last_token.type===St.EQUALS||this._flags.last_token.type===St.OPERATOR?this.start_of_object_property()||this.allow_wrap_or_preserved_newline(t):!t.text.startsWith("`")||this._flags.last_token.type!==St.END_EXPR||"]"!==t.previous.text&&")"!==t.previous.text||0!==t.newlines?this.print_newline():this._output.space_before_token=!0)),this.print_token(t)},zt.prototype.handle_equals=function(t){this.start_of_statement(t)||this.handle_whitespace_and_comments(t),this._flags.declaration_statement&&(this._flags.declaration_assignment=!0),this._output.space_before_token=!0,this.print_token(t),this._output.space_before_token=!0},zt.prototype.handle_comma=function(t){this.handle_whitespace_and_comments(t,!0),this.print_token(t),this._output.space_before_token=!0,this._flags.declaration_statement?(Dt(this._flags.parent.mode)&&(this._flags.declaration_assignment=!1),this._flags.declaration_assignment?(this._flags.declaration_assignment=!1,this.print_newline(!1,!0)):this._options.comma_first&&this.allow_wrap_or_preserved_newline(t)):this._flags.mode===Ot||this._flags.mode===Mt&&this._flags.parent.mode===Ot?(this._flags.mode===Mt&&this.restore_mode(),this._flags.inline_frame||this.print_newline()):this._options.comma_first&&this.allow_wrap_or_preserved_newline(t)},zt.prototype.handle_operator=function(t){var e="*"===t.text&&(Et(this._flags.last_token,["function","yield"])||Ct(this._flags.last_token.type,[St.START_BLOCK,St.COMMA,St.END_BLOCK,St.SEMICOLON])),i=Ct(t.text,["-","+"])&&(Ct(this._flags.last_token.type,[St.START_BLOCK,St.START_EXPR,St.EQUALS,St.OPERATOR])||Ct(this._flags.last_token.text,_t)||","===this._flags.last_token.text);if(this.start_of_statement(t));else{var n=!e;this.handle_whitespace_and_comments(t,n)}if(Et(this._flags.last_token,At))return this._output.space_before_token=!0,void this.print_token(t);if("*"!==t.text||this._flags.last_token.type!==St.DOT)if("::"!==t.text){if(this._flags.last_token.type===St.OPERATOR&&Ct(this._options.operator_position,qt)&&this.allow_wrap_or_preserved_newline(t),":"===t.text&&this._flags.in_case)return this.print_token(t),this._flags.in_case=!1,this._flags.case_body=!0,void(this._tokens.peek().type!==St.START_BLOCK?(this.indent(),this.print_newline()):this._output.space_before_token=!0);var o=!0,s=!0,r=!1;if(":"===t.text?0===this._flags.ternary_depth?o=!1:(this._flags.ternary_depth-=1,r=!0):"?"===t.text&&(this._flags.ternary_depth+=1),!i&&!e&&this._options.preserve_newlines&&Ct(t.text,wt)){var l=":"===t.text,a=l&&r,d=l&&!r;switch(this._options.operator_position){case Lt.before_newline:return this._output.space_before_token=!d,this.print_token(t),l&&!a||this.allow_wrap_or_preserved_newline(t),void(this._output.space_before_token=!0);case Lt.after_newline:return this._output.space_before_token=!0,!l||a?this._tokens.peek().newlines?this.print_newline(!1,!0):this.allow_wrap_or_preserved_newline(t):this._output.space_before_token=!1,this.print_token(t),void(this._output.space_before_token=!0);case Lt.preserve_newline:return d||this.allow_wrap_or_preserved_newline(t),o=!(this._output.just_added_newline()||d),this._output.space_before_token=o,this.print_token(t),void(this._output.space_before_token=!0)}}if(e){this.allow_wrap_or_preserved_newline(t),o=!1;var c=this._tokens.peek();s=c&&Ct(c.type,[St.WORD,St.RESERVED])}else"..."===t.text?(this.allow_wrap_or_preserved_newline(t),o=this._flags.last_token.type===St.START_BLOCK,s=!1):(Ct(t.text,["--","++","!","~"])||i)&&(this._flags.last_token.type!==St.COMMA&&this._flags.last_token.type!==St.START_EXPR||this.allow_wrap_or_preserved_newline(t),o=!1,s=!1,!t.newlines||"--"!==t.text&&"++"!==t.text||this.print_newline(!1,!0),";"===this._flags.last_token.text&&Dt(this._flags.mode)&&(o=!0),this._flags.last_token.type===St.RESERVED?o=!0:this._flags.last_token.type===St.END_EXPR?o=!("]"===this._flags.last_token.text&&("--"===t.text||"++"===t.text)):this._flags.last_token.type===St.OPERATOR&&(o=Ct(t.text,["--","-","++","+"])&&Ct(this._flags.last_token.text,["--","-","++","+"]),Ct(t.text,["+","-"])&&Ct(this._flags.last_token.text,["--","++"])&&(s=!0)),(this._flags.mode!==Tt||this._flags.inline_frame)&&this._flags.mode!==Mt||"{"!==this._flags.last_token.text&&";"!==this._flags.last_token.text||this.print_newline());this._output.space_before_token=this._output.space_before_token||o,this.print_token(t),this._output.space_before_token=s}else this.print_token(t);else this.print_token(t)},zt.prototype.handle_block_comment=function(t,e){return this._output.raw?(this._output.add_raw_token(t),void(t.directives&&"end"===t.directives.preserve&&(this._output.raw=this._options.test_output_raw))):t.directives?(this.print_newline(!1,e),this.print_token(t),"start"===t.directives.preserve&&(this._output.raw=!0),void this.print_newline(!1,!0)):bt.newline.test(t.text)||t.newlines?void this.print_block_commment(t,e):(this._output.space_before_token=!0,this.print_token(t),void(this._output.space_before_token=!0))},zt.prototype.print_block_commment=function(t,e){var i,n=function(t){for(var e=[],i=(t=t.replace(bt.allLineBreaks,"\n")).indexOf("\n");-1!==i;)e.push(t.substring(0,i)),i=(t=t.substring(i+1)).indexOf("\n");return t.length&&e.push(t),e}(t.text),o=!1,s=!1,r=t.whitespace_before,l=r.length;if(this.print_newline(!1,e),this.print_token_line_indentation(t),this._output.add_token(n[0]),this.print_newline(!1,e),n.length>1){for(o=function(t,e){for(var i=0;i<t.length;i++)if(t[i].trim().charAt(0)!==e)return!1;return!0}(n=n.slice(1),"*"),s=function(t,e){for(var i,n=0,o=t.length;n<o;n++)if((i=t[n])&&0!==i.indexOf(e))return!1;return!0}(n,r),o&&(this._flags.alignment=1),i=0;i<n.length;i++)o?(this.print_token_line_indentation(t),this._output.add_token(n[i].replace(/^\s+/g,""))):s&&n[i]?(this.print_token_line_indentation(t),this._output.add_token(n[i].substring(l))):(this._output.current_line.set_indent(-1),this._output.add_token(n[i])),this.print_newline(!1,e);this._flags.alignment=0}},zt.prototype.handle_comment=function(t,e){t.newlines?this.print_newline(!1,e):this._output.trim(!0),this._output.space_before_token=!0,this.print_token(t),this.print_newline(!1,e)},zt.prototype.handle_dot=function(t){this.start_of_statement(t)||this.handle_whitespace_and_comments(t,!0),Et(this._flags.last_token,At)?this._output.space_before_token=!1:this.allow_wrap_or_preserved_newline(t,")"===this._flags.last_token.text&&this._options.break_chained_methods),this._options.unindent_chained_methods&&this._output.just_added_newline()&&this.deindent(),this.print_token(t)},zt.prototype.handle_unknown=function(t,e){this.print_token(t),"\n"===t.text[t.text.length-1]&&this.print_newline(!1,e)},zt.prototype.handle_eof=function(t){for(;this._flags.mode===Mt;)this.restore_mode();this.handle_whitespace_and_comments(t)},s.Beautifier=zt;var Ft=s.Beautifier,Ut=m.Options;o.exports=function(t,e){return new Ft(t,e).beautify()},o.exports.defaultOptions=function(){return new Ut};var Wt={exports:{}},jt={},Gt={},Yt=b.Options;function Vt(t){Yt.call(this,t,"css"),this.selector_separator_newline=this._get_boolean("selector_separator_newline",!0),this.newline_between_rules=this._get_boolean("newline_between_rules",!0);var e=this._get_boolean("space_around_selector_separator");this.space_around_combinator=this._get_boolean("space_around_combinator")||e;var i=this._get_selection_list("brace_style",["collapse","expand","end-expand","none","preserve-inline"]);this.brace_style="collapse";for(var n=0;n<i.length;n++)"expand"!==i[n]?this.brace_style="collapse":this.brace_style=i[n]}Vt.prototype=new Yt,Gt.Options=Vt;var Xt=Gt.Options,Zt=r.Output,Kt=E.InputScanner,Jt=new(0,U.Directives)(/\/\*/,/\*\//),Qt=/\r\n|[\r\n]/,te=/\r\n|[\r\n]/g,ee=/\s/,ie=/(?:\s|\n)+/g,ne=/\/\*(?:[\s\S]*?)((?:\*\/)|$)/g,oe=/\/\/(?:[^\n\r\u2028\u2029]*)/g;function se(t,e){this._source_text=t||"",this._options=new Xt(e),this._ch=null,this._input=null,this.NESTED_AT_RULE={"@page":!0,"@font-face":!0,"@keyframes":!0,"@media":!0,"@supports":!0,"@document":!0},this.CONDITIONAL_GROUP_RULE={"@media":!0,"@supports":!0,"@document":!0}}se.prototype.eatString=function(t){var e="";for(this._ch=this._input.next();this._ch;){if(e+=this._ch,"\\"===this._ch)e+=this._input.next();else if(-1!==t.indexOf(this._ch)||"\n"===this._ch)break;this._ch=this._input.next()}return e},se.prototype.eatWhitespace=function(t){for(var e=ee.test(this._input.peek()),i=0;ee.test(this._input.peek());)this._ch=this._input.next(),t&&"\n"===this._ch&&(0===i||i<this._options.max_preserve_newlines)&&(i++,this._output.add_new_line(!0));return e},se.prototype.foundNestedPseudoClass=function(){for(var t=0,e=1,i=this._input.peek(e);i;){if("{"===i)return!0;if("("===i)t+=1;else if(")"===i){if(0===t)return!1;t-=1}else if(";"===i||"}"===i)return!1;e++,i=this._input.peek(e)}return!1},se.prototype.print_string=function(t){this._output.set_indent(this._indentLevel),this._output.non_breaking_space=!0,this._output.add_token(t)},se.prototype.preserveSingleSpace=function(t){t&&(this._output.space_before_token=!0)},se.prototype.indent=function(){this._indentLevel++},se.prototype.outdent=function(){this._indentLevel>0&&this._indentLevel--},se.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var t=this._source_text,e=this._options.eol;"auto"===e&&(e="\n",t&&Qt.test(t||"")&&(e=t.match(Qt)[0]));var i=(t=t.replace(te,"\n")).match(/^[\t ]*/)[0];this._output=new Zt(this._options,i),this._input=new Kt(t),this._indentLevel=0,this._nestedLevel=0,this._ch=null;for(var n,o,s=0,r=!1,l=!1,a=!1,d=!1,c=!1,u=this._ch;n=""!==this._input.read(ie),o=u,this._ch=this._input.next(),"\\"===this._ch&&this._input.hasNext()&&(this._ch+=this._input.next()),u=this._ch,this._ch;)if("/"===this._ch&&"*"===this._input.peek()){this._output.add_new_line(),this._input.back();var p=this._input.read(ne),h=Jt.get_directives(p);h&&"start"===h.ignore&&(p+=Jt.readIgnored(this._input)),this.print_string(p),this.eatWhitespace(!0),this._output.add_new_line()}else if("/"===this._ch&&"/"===this._input.peek())this._output.space_before_token=!0,this._input.back(),this.print_string(this._input.read(oe)),this.eatWhitespace(!0);else if("@"===this._ch)if(this.preserveSingleSpace(n),"{"===this._input.peek())this.print_string(this._ch+this.eatString("}"));else{this.print_string(this._ch);var v=this._input.peekUntilAfter(/[: ,;{}()[\]\/='"]/g);v.match(/[ :]$/)&&(v=this.eatString(": ").replace(/\s$/,""),this.print_string(v),this._output.space_before_token=!0),"extend"===(v=v.replace(/\s$/,""))?d=!0:"import"===v&&(c=!0),v in this.NESTED_AT_RULE?(this._nestedLevel+=1,v in this.CONDITIONAL_GROUP_RULE&&(a=!0)):r||0!==s||-1===v.indexOf(":")||(l=!0,this.indent())}else"#"===this._ch&&"{"===this._input.peek()?(this.preserveSingleSpace(n),this.print_string(this._ch+this.eatString("}"))):"{"===this._ch?(l&&(l=!1,this.outdent()),a?(a=!1,r=this._indentLevel>=this._nestedLevel):r=this._indentLevel>=this._nestedLevel-1,this._options.newline_between_rules&&r&&this._output.previous_line&&"{"!==this._output.previous_line.item(-1)&&this._output.ensure_empty_line_above("/",","),this._output.space_before_token=!0,"expand"===this._options.brace_style?(this._output.add_new_line(),this.print_string(this._ch),this.indent(),this._output.set_indent(this._indentLevel)):(this.indent(),this.print_string(this._ch)),this.eatWhitespace(!0),this._output.add_new_line()):"}"===this._ch?(this.outdent(),this._output.add_new_line(),"{"===o&&this._output.trim(!0),c=!1,d=!1,l&&(this.outdent(),l=!1),this.print_string(this._ch),r=!1,this._nestedLevel&&this._nestedLevel--,this.eatWhitespace(!0),this._output.add_new_line(),this._options.newline_between_rules&&!this._output.just_added_blankline()&&"}"!==this._input.peek()&&this._output.add_new_line(!0)):":"===this._ch?!r&&!a||this._input.lookBack("&")||this.foundNestedPseudoClass()||this._input.lookBack("(")||d||0!==s?(this._input.lookBack(" ")&&(this._output.space_before_token=!0),":"===this._input.peek()?(this._ch=this._input.next(),this.print_string("::")):this.print_string(":")):(this.print_string(":"),l||(l=!0,this._output.space_before_token=!0,this.eatWhitespace(!0),this.indent())):'"'===this._ch||"'"===this._ch?(this.preserveSingleSpace(n),this.print_string(this._ch+this.eatString(this._ch)),this.eatWhitespace(!0)):";"===this._ch?0===s?(l&&(this.outdent(),l=!1),d=!1,c=!1,this.print_string(this._ch),this.eatWhitespace(!0),"/"!==this._input.peek()&&this._output.add_new_line()):(this.print_string(this._ch),this.eatWhitespace(!0),this._output.space_before_token=!0):"("===this._ch?this._input.lookBack("url")?(this.print_string(this._ch),this.eatWhitespace(),s++,this.indent(),this._ch=this._input.next(),")"===this._ch||'"'===this._ch||"'"===this._ch?this._input.back():this._ch&&(this.print_string(this._ch+this.eatString(")")),s&&(s--,this.outdent()))):(this.preserveSingleSpace(n),this.print_string(this._ch),this.eatWhitespace(),s++,this.indent()):")"===this._ch?(s&&(s--,this.outdent()),this.print_string(this._ch)):","===this._ch?(this.print_string(this._ch),this.eatWhitespace(!0),!this._options.selector_separator_newline||l||0!==s||c||d?this._output.space_before_token=!0:this._output.add_new_line()):">"!==this._ch&&"+"!==this._ch&&"~"!==this._ch||l||0!==s?"]"===this._ch?this.print_string(this._ch):"["===this._ch?(this.preserveSingleSpace(n),this.print_string(this._ch)):"="===this._ch?(this.eatWhitespace(),this.print_string("="),ee.test(this._ch)&&(this._ch="")):"!"!==this._ch||this._input.lookBack("\\")?(this.preserveSingleSpace(n),this.print_string(this._ch)):(this.print_string(" "),this.print_string(this._ch)):this._options.space_around_combinator?(this._output.space_before_token=!0,this.print_string(this._ch),this._output.space_before_token=!0):(this.print_string(this._ch),this.eatWhitespace(),this._ch&&ee.test(this._ch)&&(this._ch=""));return this._output.get_code(e)},jt.Beautifier=se;var re=jt.Beautifier,le=Gt.Options;Wt.exports=function(t,e){return new re(t,e).beautify()},Wt.exports.defaultOptions=function(){return new le};var ae={exports:{}},de={},ce={},ue=b.Options;function pe(t){ue.call(this,t,"html"),1===this.templating.length&&"auto"===this.templating[0]&&(this.templating=["django","erb","handlebars","php"]),this.indent_inner_html=this._get_boolean("indent_inner_html"),this.indent_body_inner_html=this._get_boolean("indent_body_inner_html",!0),this.indent_head_inner_html=this._get_boolean("indent_head_inner_html",!0),this.indent_handlebars=this._get_boolean("indent_handlebars",!0),this.wrap_attributes=this._get_selection("wrap_attributes",["auto","force","force-aligned","force-expand-multiline","aligned-multiple","preserve","preserve-aligned"]),this.wrap_attributes_indent_size=this._get_number("wrap_attributes_indent_size",this.indent_size),this.extra_liners=this._get_array("extra_liners",["head","body","/html"]),this.inline=this._get_array("inline",["a","abbr","area","audio","b","bdi","bdo","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","i","iframe","img","input","ins","kbd","keygen","label","map","mark","math","meter","noscript","object","output","progress","q","ruby","s","samp","select","small","span","strong","sub","sup","svg","template","textarea","time","u","var","video","wbr","text","acronym","big","strike","tt"]),this.void_elements=this._get_array("void_elements",["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr","!doctype","?xml","basefont","isindex"]),this.unformatted=this._get_array("unformatted",[]),this.content_unformatted=this._get_array("content_unformatted",["pre","textarea"]),this.unformatted_content_delimiter=this._get_characters("unformatted_content_delimiter"),this.indent_scripts=this._get_selection("indent_scripts",["normal","keep","separate"])}pe.prototype=new ue,ce.Options=pe;var he={},ve=q.Tokenizer,fe=q.TOKEN,ge=U.Directives,me=j.TemplatablePattern,be=R.Pattern,ye={TAG_OPEN:"TK_TAG_OPEN",TAG_CLOSE:"TK_TAG_CLOSE",ATTRIBUTE:"TK_ATTRIBUTE",EQUALS:"TK_EQUALS",VALUE:"TK_VALUE",COMMENT:"TK_COMMENT",TEXT:"TK_TEXT",UNKNOWN:"TK_UNKNOWN",START:fe.START,RAW:fe.RAW,EOF:fe.EOF},xe=new ge(/<\!--/,/-->/),_e=function(t,e){ve.call(this,t,e),this._current_tag_name="";var i=new me(this._input).read_options(this._options),n=new be(this._input);if(this.__patterns={word:i.until(/[\n\r\t <]/),single_quote:i.until_after(/'/),double_quote:i.until_after(/"/),attribute:i.until(/[\n\r\t =>]|\/>/),element_name:i.until(/[\n\r\t >\/]/),handlebars_comment:n.starting_with(/{{!--/).until_after(/--}}/),handlebars:n.starting_with(/{{/).until_after(/}}/),handlebars_open:n.until(/[\n\r\t }]/),handlebars_raw_close:n.until(/}}/),comment:n.starting_with(/<!--/).until_after(/-->/),cdata:n.starting_with(/<!\[CDATA\[/).until_after(/]]>/),conditional_comment:n.starting_with(/<!\[/).until_after(/]>/),processing:n.starting_with(/<\?/).until_after(/\?>/)},this._options.indent_handlebars&&(this.__patterns.word=this.__patterns.word.exclude("handlebars")),this._unformatted_content_delimiter=null,this._options.unformatted_content_delimiter){var o=this._input.get_literal_regexp(this._options.unformatted_content_delimiter);this.__patterns.unformatted_content_delimiter=n.matching(o).until_after(o)}};(_e.prototype=new ve)._is_comment=function(t){return!1},_e.prototype._is_opening=function(t){return t.type===ye.TAG_OPEN},_e.prototype._is_closing=function(t,e){return t.type===ye.TAG_CLOSE&&e&&((">"===t.text||"/>"===t.text)&&"<"===e.text[0]||"}}"===t.text&&"{"===e.text[0]&&"{"===e.text[1])},_e.prototype._reset=function(){this._current_tag_name=""},_e.prototype._get_next_token=function(t,e){var i=null;this._readWhitespace();var n=this._input.peek();return null===n?this._create_token(ye.EOF,""):i=(i=(i=(i=(i=(i=(i=(i=(i=i||this._read_open_handlebars(n,e))||this._read_attribute(n,t,e))||this._read_close(n,e))||this._read_raw_content(n,t,e))||this._read_content_word(n))||this._read_comment_or_cdata(n))||this._read_processing(n))||this._read_open(n,e))||this._create_token(ye.UNKNOWN,this._input.next())},_e.prototype._read_comment_or_cdata=function(t){var e=null,i=null,n=null;"<"===t&&("!"===this._input.peek(1)&&((i=this.__patterns.comment.read())?(n=xe.get_directives(i))&&"start"===n.ignore&&(i+=xe.readIgnored(this._input)):i=this.__patterns.cdata.read()),i&&((e=this._create_token(ye.COMMENT,i)).directives=n));return e},_e.prototype._read_processing=function(t){var e=null,i=null;if("<"===t){var n=this._input.peek(1);"!"!==n&&"?"!==n||(i=(i=this.__patterns.conditional_comment.read())||this.__patterns.processing.read()),i&&((e=this._create_token(ye.COMMENT,i)).directives=null)}return e},_e.prototype._read_open=function(t,e){var i=null,n=null;return e||"<"===t&&(i=this._input.next(),"/"===this._input.peek()&&(i+=this._input.next()),i+=this.__patterns.element_name.read(),n=this._create_token(ye.TAG_OPEN,i)),n},_e.prototype._read_open_handlebars=function(t,e){var i=null,n=null;return e||this._options.indent_handlebars&&"{"===t&&"{"===this._input.peek(1)&&("!"===this._input.peek(2)?(i=(i=this.__patterns.handlebars_comment.read())||this.__patterns.handlebars.read(),n=this._create_token(ye.COMMENT,i)):(i=this.__patterns.handlebars_open.read(),n=this._create_token(ye.TAG_OPEN,i))),n},_e.prototype._read_close=function(t,e){var i=null,n=null;return e&&("<"===e.text[0]&&(">"===t||"/"===t&&">"===this._input.peek(1))?(i=this._input.next(),"/"===t&&(i+=this._input.next()),n=this._create_token(ye.TAG_CLOSE,i)):"{"===e.text[0]&&"}"===t&&"}"===this._input.peek(1)&&(this._input.next(),this._input.next(),n=this._create_token(ye.TAG_CLOSE,"}}"))),n},_e.prototype._read_attribute=function(t,e,i){var n=null,o="";if(i&&"<"===i.text[0])if("="===t)n=this._create_token(ye.EQUALS,this._input.next());else if('"'===t||"'"===t){var s=this._input.next();s+='"'===t?this.__patterns.double_quote.read():this.__patterns.single_quote.read(),n=this._create_token(ye.VALUE,s)}else(o=this.__patterns.attribute.read())&&(n=e.type===ye.EQUALS?this._create_token(ye.VALUE,o):this._create_token(ye.ATTRIBUTE,o));return n},_e.prototype._is_content_unformatted=function(t){return-1===this._options.void_elements.indexOf(t)&&(-1!==this._options.content_unformatted.indexOf(t)||-1!==this._options.unformatted.indexOf(t))},_e.prototype._read_raw_content=function(t,e,i){var n="";if(i&&"{"===i.text[0])n=this.__patterns.handlebars_raw_close.read();else if(e.type===ye.TAG_CLOSE&&"<"===e.opened.text[0]&&"/"!==e.text[0]){var o=e.opened.text.substr(1).toLowerCase();if("script"===o||"style"===o){var s=this._read_comment_or_cdata(t);if(s)return s.type=ye.TEXT,s;n=this._input.readUntil(new RegExp("</"+o+"[\\n\\r\\t ]*?>","ig"))}else this._is_content_unformatted(o)&&(n=this._input.readUntil(new RegExp("</"+o+"[\\n\\r\\t ]*?>","ig")))}return n?this._create_token(ye.TEXT,n):null},_e.prototype._read_content_word=function(t){var e="";if(this._options.unformatted_content_delimiter&&t===this._options.unformatted_content_delimiter[0]&&(e=this.__patterns.unformatted_content_delimiter.read()),e||(e=this.__patterns.word.read()),e)return this._create_token(ye.TEXT,e)},he.Tokenizer=_e,he.TOKEN=ye;var we=ce.Options,Se=r.Output,Ce=he.Tokenizer,ke=he.TOKEN,Ee=/\r\n|[\r\n]/,Ae=/\r\n|[\r\n]/g,Le=function(t,e){this.indent_level=0,this.alignment_size=0,this.max_preserve_newlines=t.max_preserve_newlines,this.preserve_newlines=t.preserve_newlines,this._output=new Se(t,e)};Le.prototype.current_line_has_match=function(t){return this._output.current_line.has_match(t)},Le.prototype.set_space_before_token=function(t,e){this._output.space_before_token=t,this._output.non_breaking_space=e},Le.prototype.set_wrap_point=function(){this._output.set_indent(this.indent_level,this.alignment_size),this._output.set_wrap_point()},Le.prototype.add_raw_token=function(t){this._output.add_raw_token(t)},Le.prototype.print_preserved_newlines=function(t){var e=0;t.type!==ke.TEXT&&t.previous.type!==ke.TEXT&&(e=t.newlines?1:0),this.preserve_newlines&&(e=t.newlines<this.max_preserve_newlines+1?t.newlines:this.max_preserve_newlines+1);for(var i=0;i<e;i++)this.print_newline(i>0);return 0!==e},Le.prototype.traverse_whitespace=function(t){return!(!t.whitespace_before&&!t.newlines)&&(this.print_preserved_newlines(t)||(this._output.space_before_token=!0),!0)},Le.prototype.previous_token_wrapped=function(){return this._output.previous_token_wrapped},Le.prototype.print_newline=function(t){this._output.add_new_line(t)},Le.prototype.print_token=function(t){t.text&&(this._output.set_indent(this.indent_level,this.alignment_size),this._output.add_token(t.text))},Le.prototype.indent=function(){this.indent_level++},Le.prototype.get_full_indent=function(t){return(t=this.indent_level+(t||0))<1?"":this._output.get_indent_string(t)};var qe=function(t,e){var i=null,n=null;return e.closed?("script"===t?i="text/javascript":"style"===t&&(i="text/css"),(i=function(t){for(var e=null,i=t.next;i.type!==ke.EOF&&t.closed!==i;){if(i.type===ke.ATTRIBUTE&&"type"===i.text){i.next&&i.next.type===ke.EQUALS&&i.next.next&&i.next.next.type===ke.VALUE&&(e=i.next.next.text);break}i=i.next}return e}(e)||i).search("text/css")>-1?n="css":i.search(/module|((text|application|dojo)\/(x-)?(javascript|ecmascript|jscript|livescript|(ld\+)?json|method|aspect))/)>-1?n="javascript":i.search(/(text|application|dojo)\/(x-)?(html)/)>-1?n="html":i.search(/test\/null/)>-1&&(n="null"),n):null};function Te(t,e){return-1!==e.indexOf(t)}function Me(t,e,i){this.parent=t||null,this.tag=e?e.tag_name:"",this.indent_level=i||0,this.parser_token=e||null}function Oe(t){this._printer=t,this._current_frame=null}function Re(t,e,i,n){this._source_text=t||"",e=e||{},this._js_beautify=i,this._css_beautify=n,this._tag_stack=null;var o=new we(e,"html");this._options=o,this._is_wrap_attributes_force="force"===this._options.wrap_attributes.substr(0,"force".length),this._is_wrap_attributes_force_expand_multiline="force-expand-multiline"===this._options.wrap_attributes,this._is_wrap_attributes_force_aligned="force-aligned"===this._options.wrap_attributes,this._is_wrap_attributes_aligned_multiple="aligned-multiple"===this._options.wrap_attributes,this._is_wrap_attributes_preserve="preserve"===this._options.wrap_attributes.substr(0,"preserve".length),this._is_wrap_attributes_preserve_aligned="preserve-aligned"===this._options.wrap_attributes}Oe.prototype.get_parser_token=function(){return this._current_frame?this._current_frame.parser_token:null},Oe.prototype.record_tag=function(t){var e=new Me(this._current_frame,t,this._printer.indent_level);this._current_frame=e},Oe.prototype._try_pop_frame=function(t){var e=null;return t&&(e=t.parser_token,this._printer.indent_level=t.indent_level,this._current_frame=t.parent),e},Oe.prototype._get_frame=function(t,e){for(var i=this._current_frame;i&&-1===t.indexOf(i.tag);){if(e&&-1!==e.indexOf(i.tag)){i=null;break}i=i.parent}return i},Oe.prototype.try_pop=function(t,e){var i=this._get_frame([t],e);return this._try_pop_frame(i)},Oe.prototype.indent_to_tag=function(t){var e=this._get_frame(t);e&&(this._printer.indent_level=e.indent_level)},Re.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var t=this._source_text,e=this._options.eol;"auto"===this._options.eol&&(e="\n",t&&Ee.test(t)&&(e=t.match(Ee)[0]));var i=(t=t.replace(Ae,"\n")).match(/^[\t ]*/)[0],n={text:"",type:""},o=new Ne,s=new Le(this._options,i),r=new Ce(t,this._options).tokenize();this._tag_stack=new Oe(s);for(var l=null,a=r.next();a.type!==ke.EOF;)a.type===ke.TAG_OPEN||a.type===ke.COMMENT?o=l=this._handle_tag_open(s,a,o,n):a.type===ke.ATTRIBUTE||a.type===ke.EQUALS||a.type===ke.VALUE||a.type===ke.TEXT&&!o.tag_complete?l=this._handle_inside_tag(s,a,o,r):a.type===ke.TAG_CLOSE?l=this._handle_tag_close(s,a,o):a.type===ke.TEXT?l=this._handle_text(s,a,o):s.add_raw_token(a),n=l,a=r.next();return s._output.get_code(e)},Re.prototype._handle_tag_close=function(t,e,i){var n={text:e.text,type:e.type};return t.alignment_size=0,i.tag_complete=!0,t.set_space_before_token(e.newlines||""!==e.whitespace_before,!0),i.is_unformatted?t.add_raw_token(e):("<"===i.tag_start_char&&(t.set_space_before_token("/"===e.text[0],!0),this._is_wrap_attributes_force_expand_multiline&&i.has_wrapped_attrs&&t.print_newline(!1)),t.print_token(e)),!i.indent_content||i.is_unformatted||i.is_content_unformatted||(t.indent(),i.indent_content=!1),i.is_inline_element||i.is_unformatted||i.is_content_unformatted||t.set_wrap_point(),n},Re.prototype._handle_inside_tag=function(t,e,i,n){var o=i.has_wrapped_attrs,s={text:e.text,type:e.type};if(t.set_space_before_token(e.newlines||""!==e.whitespace_before,!0),i.is_unformatted)t.add_raw_token(e);else if("{"===i.tag_start_char&&e.type===ke.TEXT)t.print_preserved_newlines(e)?(e.newlines=0,t.add_raw_token(e)):t.print_token(e);else{if(e.type===ke.ATTRIBUTE?(t.set_space_before_token(!0),i.attr_count+=1):(e.type===ke.EQUALS||e.type===ke.VALUE&&e.previous.type===ke.EQUALS)&&t.set_space_before_token(!1),e.type===ke.ATTRIBUTE&&"<"===i.tag_start_char&&((this._is_wrap_attributes_preserve||this._is_wrap_attributes_preserve_aligned)&&(t.traverse_whitespace(e),o=o||0!==e.newlines),this._is_wrap_attributes_force)){var r=i.attr_count>1;if(this._is_wrap_attributes_force_expand_multiline&&1===i.attr_count){var l,a=!0,d=0;do{if((l=n.peek(d)).type===ke.ATTRIBUTE){a=!1;break}d+=1}while(d<4&&l.type!==ke.EOF&&l.type!==ke.TAG_CLOSE);r=!a}r&&(t.print_newline(!1),o=!0)}t.print_token(e),o=o||t.previous_token_wrapped(),i.has_wrapped_attrs=o}return s},Re.prototype._handle_text=function(t,e,i){var n={text:e.text,type:"TK_CONTENT"};return i.custom_beautifier_name?this._print_custom_beatifier_text(t,e,i):i.is_unformatted||i.is_content_unformatted?t.add_raw_token(e):(t.traverse_whitespace(e),t.print_token(e)),n},Re.prototype._print_custom_beatifier_text=function(t,e,i){var n=this;if(""!==e.text){var o,s=e.text,r=1,l="",a="";"javascript"===i.custom_beautifier_name&&"function"==typeof this._js_beautify?o=this._js_beautify:"css"===i.custom_beautifier_name&&"function"==typeof this._css_beautify?o=this._css_beautify:"html"===i.custom_beautifier_name&&(o=function(t,e){return new Re(t,e,n._js_beautify,n._css_beautify).beautify()}),"keep"===this._options.indent_scripts?r=0:"separate"===this._options.indent_scripts&&(r=-t.indent_level);var d=t.get_full_indent(r);if(s=s.replace(/\n[ \t]*$/,""),"html"!==i.custom_beautifier_name&&"<"===s[0]&&s.match(/^(<!--|<!\[CDATA\[)/)){var c=/^(<!--[^\n]*|<!\[CDATA\[)(\n?)([ \t\n]*)([\s\S]*)(-->|]]>)$/.exec(s);if(!c)return void t.add_raw_token(e);l=d+c[1]+"\n",s=c[4],c[5]&&(a=d+c[5]),s=s.replace(/\n[ \t]*$/,""),(c[2]||-1!==c[3].indexOf("\n"))&&(c=c[3].match(/[ \t]+$/))&&(e.whitespace_before=c[0])}if(s)if(o){var u=function(){this.eol="\n"};u.prototype=this._options.raw_options,s=o(d+s,new u)}else{var p=e.whitespace_before;p&&(s=s.replace(new RegExp("\n("+p+")?","g"),"\n")),s=d+s.replace(/\n/g,"\n"+d)}l&&(s=s?l+s+"\n"+a:l+a),t.print_newline(!1),s&&(e.text=s,e.whitespace_before="",e.newlines=0,t.add_raw_token(e),t.print_newline(!0))}},Re.prototype._handle_tag_open=function(t,e,i,n){var o=this._get_tag_open_token(e);return!i.is_unformatted&&!i.is_content_unformatted||i.is_empty_element||e.type!==ke.TAG_OPEN||0!==e.text.indexOf("</")?(t.traverse_whitespace(e),this._set_tag_position(t,e,o,i,n),o.is_inline_element||t.set_wrap_point(),t.print_token(e)):(t.add_raw_token(e),o.start_tag_token=this._tag_stack.try_pop(o.tag_name)),(this._is_wrap_attributes_force_aligned||this._is_wrap_attributes_aligned_multiple||this._is_wrap_attributes_preserve_aligned)&&(o.alignment_size=e.text.length+1),o.tag_complete||o.is_unformatted||(t.alignment_size=o.alignment_size),o};var Ne=function(t,e){var i;(this.parent=t||null,this.text="",this.type="TK_TAG_OPEN",this.tag_name="",this.is_inline_element=!1,this.is_unformatted=!1,this.is_content_unformatted=!1,this.is_empty_element=!1,this.is_start_tag=!1,this.is_end_tag=!1,this.indent_content=!1,this.multiline_content=!1,this.custom_beautifier_name=null,this.start_tag_token=null,this.attr_count=0,this.has_wrapped_attrs=!1,this.alignment_size=0,this.tag_complete=!1,this.tag_start_char="",this.tag_check="",e)?(this.tag_start_char=e.text[0],this.text=e.text,"<"===this.tag_start_char?(i=e.text.match(/^<([^\s>]*)/),this.tag_check=i?i[1]:""):(i=e.text.match(/^{{(?:[\^]|#\*?)?([^\s}]+)/),this.tag_check=i?i[1]:"","{{#>"===e.text&&">"===this.tag_check&&null!==e.next&&(this.tag_check=e.next.text)),this.tag_check=this.tag_check.toLowerCase(),e.type===ke.COMMENT&&(this.tag_complete=!0),this.is_start_tag="/"!==this.tag_check.charAt(0),this.tag_name=this.is_start_tag?this.tag_check:this.tag_check.substr(1),this.is_end_tag=!this.is_start_tag||e.closed&&"/>"===e.closed.text,this.is_end_tag=this.is_end_tag||"{"===this.tag_start_char&&(this.text.length<3||/[^#\^]/.test(this.text.charAt(2)))):this.tag_complete=!0};Re.prototype._get_tag_open_token=function(t){var e=new Ne(this._tag_stack.get_parser_token(),t);return e.alignment_size=this._options.wrap_attributes_indent_size,e.is_end_tag=e.is_end_tag||Te(e.tag_check,this._options.void_elements),e.is_empty_element=e.tag_complete||e.is_start_tag&&e.is_end_tag,e.is_unformatted=!e.tag_complete&&Te(e.tag_check,this._options.unformatted),e.is_content_unformatted=!e.is_empty_element&&Te(e.tag_check,this._options.content_unformatted),e.is_inline_element=Te(e.tag_name,this._options.inline)||"{"===e.tag_start_char,e},Re.prototype._set_tag_position=function(t,e,i,n,o){if(i.is_empty_element||(i.is_end_tag?i.start_tag_token=this._tag_stack.try_pop(i.tag_name):(this._do_optional_end_element(i)&&(i.is_inline_element||t.print_newline(!1)),this._tag_stack.record_tag(i),"script"!==i.tag_name&&"style"!==i.tag_name||i.is_unformatted||i.is_content_unformatted||(i.custom_beautifier_name=qe(i.tag_check,e)))),Te(i.tag_check,this._options.extra_liners)&&(t.print_newline(!1),t._output.just_added_blankline()||t.print_newline(!0)),i.is_empty_element){if("{"===i.tag_start_char&&"else"===i.tag_check)this._tag_stack.indent_to_tag(["if","unless","each"]),i.indent_content=!0,t.current_line_has_match(/{{#if/)||t.print_newline(!1);"!--"===i.tag_name&&o.type===ke.TAG_CLOSE&&n.is_end_tag&&-1===i.text.indexOf("\n")||(i.is_inline_element||i.is_unformatted||t.print_newline(!1),this._calcluate_parent_multiline(t,i))}else if(i.is_end_tag){var s=!1;s=(s=i.start_tag_token&&i.start_tag_token.multiline_content)||!i.is_inline_element&&!(n.is_inline_element||n.is_unformatted)&&!(o.type===ke.TAG_CLOSE&&i.start_tag_token===n)&&"TK_CONTENT"!==o.type,(i.is_content_unformatted||i.is_unformatted)&&(s=!1),s&&t.print_newline(!1)}else i.indent_content=!i.custom_beautifier_name,"<"===i.tag_start_char&&("html"===i.tag_name?i.indent_content=this._options.indent_inner_html:"head"===i.tag_name?i.indent_content=this._options.indent_head_inner_html:"body"===i.tag_name&&(i.indent_content=this._options.indent_body_inner_html)),i.is_inline_element||i.is_unformatted||"TK_CONTENT"===o.type&&!i.is_content_unformatted||t.print_newline(!1),this._calcluate_parent_multiline(t,i)},Re.prototype._calcluate_parent_multiline=function(t,e){!e.parent||!t._output.just_added_newline()||(e.is_inline_element||e.is_unformatted)&&e.parent.is_inline_element||(e.parent.multiline_content=!0)};var Be=["address","article","aside","blockquote","details","div","dl","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hr","main","nav","ol","p","pre","section","table","ul"],$e=["a","audio","del","ins","map","noscript","video"];Re.prototype._do_optional_end_element=function(t){var e=null;if(!t.is_empty_element&&t.is_start_tag&&t.parent){if("body"===t.tag_name)e=e||this._tag_stack.try_pop("head");else if("li"===t.tag_name)e=e||this._tag_stack.try_pop("li",["ol","ul"]);else if("dd"===t.tag_name||"dt"===t.tag_name)e=(e=e||this._tag_stack.try_pop("dt",["dl"]))||this._tag_stack.try_pop("dd",["dl"]);else if("p"===t.parent.tag_name&&-1!==Be.indexOf(t.tag_name)){var i=t.parent.parent;i&&-1!==$e.indexOf(i.tag_name)||(e=e||this._tag_stack.try_pop("p"))}else"rp"===t.tag_name||"rt"===t.tag_name?e=(e=e||this._tag_stack.try_pop("rt",["ruby","rtc"]))||this._tag_stack.try_pop("rp",["ruby","rtc"]):"optgroup"===t.tag_name?e=e||this._tag_stack.try_pop("optgroup",["select"]):"option"===t.tag_name?e=e||this._tag_stack.try_pop("option",["select","datalist","optgroup"]):"colgroup"===t.tag_name?e=e||this._tag_stack.try_pop("caption",["table"]):"thead"===t.tag_name?e=(e=e||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]):"tbody"===t.tag_name||"tfoot"===t.tag_name?e=(e=(e=(e=e||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("thead",["table"]))||this._tag_stack.try_pop("tbody",["table"]):"tr"===t.tag_name?e=(e=(e=e||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("tr",["table","thead","tbody","tfoot"]):"th"!==t.tag_name&&"td"!==t.tag_name||(e=(e=e||this._tag_stack.try_pop("td",["table","thead","tbody","tfoot","tr"]))||this._tag_stack.try_pop("th",["table","thead","tbody","tfoot","tr"]));return t.parent=this._tag_stack.get_parser_token(),e}},de.Beautifier=Re;var Ie=de.Beautifier,He=ce.Options;ae.exports=function(t,e,i,n){return new Ie(t,e,i,n).beautify()},ae.exports.defaultOptions=function(){return new He};var De=o.exports,ze=Wt.exports,Pe=ae.exports;function Fe(t,e,i,n){return Pe(t,e,i=i||De,n=n||ze)}Fe.defaultOptions=Pe.defaultOptions,n.js=De,n.css=ze,n.html=Fe,function(t){var e=n;e.js_beautify=e.js,e.css_beautify=e.css,e.html_beautify=e.html,t.exports=function(t,e,i){var n=function(e,i){return t.js_beautify(e,i)};return n.js=t.js_beautify,n.css=e.css_beautify,n.html=i.html_beautify,n.js_beautify=t.js_beautify,n.css_beautify=e.css_beautify,n.html_beautify=i.html_beautify,n}(e,e,e)}(i);var Ue=i.exports;const We=new e;let je={};class Ge{constructor(t){this.builder=t;const e=this.builder.util,i=this.builder.builderStuff;let n=i.querySelector(".viewhtml");if(!n){const t=`<div class="is-modal viewhtml">\n <div class="is-modal-content">\n <textarea class="tabSupport" style="width:100%;height:calc(100% - 50px);border:none;margin:0;box-sizing:border-box;"></textarea>\n <button title="${e.out("Enlarge")}" class="input-html-larger" style="width:35px;height:35px;position:absolute;right:20px;top:0;background:transparent;"><svg class="is-icon-flex" style="width:19px;height:19px;"><use xlink:href="#ion-arrow-expand"></use></svg></button>\n <div class="is-modal-footer" style="border-top:1px solid ${this.builder.styleSeparatorColor};width:100%;height:50px;position:absolute;left:0;bottom:0;overflow:hidden;text-align:right">\n <button title="${e.out("Cancel")}" class="input-cancel classic-secondary">${e.out("Cancel")}</button>\n <button title="${e.out("Ok")}" class="input-ok classic-primary">${e.out("Ok")}</button>\n </div>\n </div>\n </div>\n \n <div class="is-modal viewhtmlformatted">\n <div class="is-modal-content">\n <iframe id="ifrHtmlFormatted" style="width:100%;height:100%;border:none;margin:0;box-sizing:border-box;" src="about:blank"></iframe>\n <textarea style="position:absolute;display:none;"></textarea>\n <button title=" out('Enlarge') + '" class="input-html-larger" style="width:35px;height:35px;position:absolute;right:20px;top:0;background:transparent;"><svg class="is-icon-flex" style="width:19px;height:19px;"><use xlink:href="#ion-arrow-expand"></use></svg></button>\n <div class="is-modal-footer" style="border-top:1px solid ${this.builder.styleSeparatorColor};display:none">\n <button title="${e.out("Cancel")}" class="input-cancel classic-secondary">${e.out("Cancel")}</button>\n <button title="${e.out("Ok")}" class="input-ok classic-primary">${e.out("Ok")}</button>\n </div>\n </div>\n </div>\n\n <div class="is-modal viewhtmllarger">\n <div class="is-modal-content">\n <iframe id="ifrHtml" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>\n </div>\n </div>\n\n <div class="is-modal viewhtmlnormal">\n <div class="is-modal-content">\n <button title="${e.out("Enlarge")}" class="input-html-larger" style="width:35px;height:35px;position:absolute;right:20px;top:0;background:transparent;"><svg class="is-icon-flex" style="width:19px;height:19px;"><use xlink:href="#ion-arrow-expand"></use></svg></button>\n <iframe id="ifrHtml" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>\n </div>\n </div>\n \n `;We.appendHtml(i,t),n=i.querySelector(".viewhtml");let o=i.querySelector(".viewhtmlformatted"),s=i.querySelector(".viewhtmlnormal"),r=n.querySelector(".input-html-larger");We.addEventListener(r,"click",(()=>{let t=n.querySelector("textarea");t.setAttribute("data-source-active","1"),t.setAttribute("data-source-ok",".viewhtml .input-ok"),t.setAttribute("data-source-cancel",".viewhtml .input-cancel"),this.viewHtmlLarger()})),r=o.querySelector(".input-html-larger"),We.addEventListener(r,"click",(()=>{We.hasClass(o,"is-modal-full")?We.removeClass(o,"is-modal-full"):We.addClass(o,"is-modal-full")})),r=s.querySelector(".input-html-larger"),We.addEventListener(r,"click",(()=>{We.hasClass(s,"is-modal-full")?We.removeClass(s,"is-modal-full"):We.addClass(s,"is-modal-full")}))}}viewHtmlNormal(){const t=this.builder.util,e=this.builder.builderStuff.querySelector(".viewhtmlnormal");e.querySelector("iframe").outerHTML='<iframe id="ifrHtml" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>';var i=e.querySelector("iframe").contentWindow.document;i.open(),i.write(this.getIframeHtml()),i.close(),t.showModal(e,!0,null,!1)}viewHtmlLarger(){const t=this.builder.util,e=this.builder.builderStuff.querySelector(".viewhtmllarger");e.querySelector("iframe").outerHTML='<iframe id="ifrHtml" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>';var i=e.querySelector("iframe").contentWindow.document;i.open(),i.write(this.getIframeHtml()),i.close(),t.showModal(e,!0,null,!1)}view(t,e){const i=this.builder.util,n=this.builder.builderStuff;let o;if(o=this.builder.opts.htmlSyntaxHighlighting?n.querySelector(".viewhtmlformatted"):n.querySelector(".viewhtml"),o.querySelector(".is-modal-footer").innerHTML=`<button title="${i.out("Cancel")}" class="input-cancel classic-secondary">${i.out("Cancel")}</button>\n <button title="${i.out("Ok")}" class="input-ok classic-primary">${i.out("Ok")}</button>`,i.showModal(o,!0),"cell"===t){const t=i.cellSelected();if(!t)return;o.querySelector("textarea").value=this.readHtml(t,!0)}if("row"===t){const t=i.cellSelected();if(!t)return;const e=t.parentNode;o.querySelector("textarea").value=this.readHtml(e,!0),We.removeClass(e,"row-outline");let s=n.querySelector(".is-column-tool");We.removeClass(s,"active")}if("full"===t){if(e);else{const t=document.querySelectorAll(this.builder.opts.container);if(t.length>1){const n=i.cellSelected();e=n?n.parentNode.parentNode:t[0]}else e=t[0];if(""!==this.builder.opts.page){const t=document.querySelector(this.builder.opts.page);t&&(e=t)}}o.querySelector("textarea").value=this.readHtml(e,!0)}let s=o.querySelector(".input-ok");if(We.addEventListener(s,"click",(()=>{this.builder.uo.saveForUndo();var n=o.querySelector("textarea").value;if(n=this.fromViewToActual(n),"cell"===t){i.cellSelected().innerHTML=n;let t=document.querySelector(".builder-active");t&&this.builder.applyBehaviorOn(t),this.builder.opts.onChange(),this.builder.opts.onRender()}if("row"===t){i.cellSelected().parentNode.innerHTML=n;let t=document.querySelector(".builder-active");t&&this.builder.applyBehaviorOn(t),this.builder.opts.onChange(),this.builder.opts.onRender()}if("full"===t){e.innerHTML="";var s=document.createRange();s.setStart(e,0),e.appendChild(s.createContextualFragment(n));let t=document.querySelector(".builder-active");t&&this.builder.applyBehaviorOn(t),this.builder.opts.onChange(),this.builder.opts.onRender(),i.clearActiveCell()}i.clearControls(),i.hideModal(o)})),s=o.querySelector(".input-cancel"),We.addEventListener(s,"click",(()=>{i.hideModal(o)})),this.builder.opts.htmlSyntaxHighlighting){let t=o.querySelector("textarea");t.setAttribute("data-source-active","1"),t.setAttribute("data-source-ok",".viewhtmlformatted .input-ok"),t.setAttribute("data-source-cancel",".viewhtmlformatted .input-cancel"),o.querySelector("iframe").outerHTML='<iframe id="ifrHtmlFormatted" style="width:100%;height:100%;border: none;" src="about:blank"></iframe>';var r=o.querySelector("iframe").contentWindow.document;r.open(),r.write(this.getIframeHtml()),r.close()}n.querySelector(".is-pop.columnmore").style.display="",n.querySelector(".is-pop.rowmore").style.display=""}fromViewToActual(t){for(var e in je)t=t.replace(e,je[e]);return t}readHtml(t,e,i){if(this.builder.opts.absolutePath){let e=t.querySelectorAll("a");Array.prototype.forEach.call(e,(t=>{let e=t.href;t.setAttribute("href",e)}));let i=t.querySelectorAll("img");Array.prototype.forEach.call(i,(t=>{let e=t.src;t.setAttribute("src",e)}))}const n=this.builder.util,o=this.builder.builderStuff;let s=o.querySelector("#tmp_content");s&&o.removeChild(s),s=o.querySelector("#tmp_buildercontent"),s&&o.removeChild(s);let r='<div id="tmp_content" style="position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;visibility:hidden;"></div>\n <div id="tmp_buildercontent" style="position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;visibility:hidden;"></div>';We.appendHtml(o,r);let l=o.querySelector("#tmp_content");l.innerHTML=t.innerHTML;let a=l.querySelectorAll("[data-html]");Array.prototype.forEach.call(a,(t=>{let e=1,i=t.querySelectorAll("[data-subblock]");Array.prototype.forEach.call(i,(i=>{let n=i.innerHTML;t.setAttribute("data-html-"+e,encodeURIComponent(n)),e++}))})),a=l.querySelectorAll("[data-html]"),Array.prototype.forEach.call(a,(t=>{let e=decodeURIComponent(t.getAttribute("data-html"));e=e.replace(/{id}/g,n.makeId()),t.innerHTML=e;let i=t.querySelectorAll("[data-subblock]");var o=1;Array.prototype.forEach.call(i,(e=>{e.innerHTML=void 0===t.getAttribute("data-html-"+o)?"":decodeURIComponent(t.getAttribute("data-html-"+o)),o++}))})),e&&(je={},a=l.querySelectorAll("[data-html]"),Array.prototype.forEach.call(a,(t=>{let e=n.makeId();je[e]=t.getAttribute("data-html"),t.setAttribute("data-html",e);for(let i=1;i<=20;i++)void 0!==t.getAttribute("data-html-"+i)&&(e=n.makeId(),je[e]=t.getAttribute("data-html-"+i),t.getAttribute("data-html-"+i,e));void 0!==t.getAttribute("data-settings")&&(e=n.makeId(),je[e]=t.getAttribute("data-settings"),t.getAttribute("data-settings",e))})));let d=l.querySelectorAll(".is-builder");Array.prototype.forEach.call(d,(t=>{t.style.transform="",t.style.WebkitTransform="",t.style.MozTransform="",t.removeAttribute("data-sort"),We.removeClass(t,"builder-active")}));let c=l.querySelectorAll(".sortable-chosen");We.removeClasses(c,"sortable-chosen"),c=l.querySelectorAll(".sortable-ghost"),We.removeClasses(c,"sortable-ghost"),c=l.querySelectorAll(".elm-active"),We.removeClasses(c,"elm-active"),c=l.querySelectorAll(".elm-inspected"),We.removeClasses(c,"elm-inspected"),c=l.querySelectorAll(".cell-active"),We.removeClasses(c,"cell-active"),c=l.querySelectorAll(".row-active"),We.removeClasses(c,"row-active"),c=l.querySelectorAll(".row-outline"),We.removeClasses(c,"row-outline"),c=l.querySelectorAll(".is-builder"),We.removeClasses(c,"is-builder"),c=l.querySelectorAll(".row-outline"),We.removeClasses(c,"row-outline"),c=l.querySelectorAll("[data-click]"),We.removeAttributes(c,"data-click"),c=l.querySelectorAll("[contenteditable]"),We.removeAttributes(c,"contenteditable"),c=l.querySelectorAll("[draggridoutline]"),We.removeAttributes(c,"draggridoutline"),c=l.querySelectorAll("[between-blocks-left]"),We.removeAttributes(c,"between-blocks-left"),c=l.querySelectorAll("[between-blocks-center]"),We.removeAttributes(c,"between-blocks-center"),c=l.querySelectorAll("[hideelementhighlight]"),We.removeAttributes(c,"hideelementhighlight"),c=l.querySelectorAll("[data-module-active]"),We.removeAttributes(c,"data-module-active"),c=l.querySelectorAll("[draggable]"),We.removeAttributes(c,"draggable"),c=l.querySelectorAll("[data-animated]"),We.removeAttributes(c,"data-animated"),c=l.querySelectorAll("[data-saveforundo]"),We.removeAttributes(c,"data-saveforundo"),c=l.querySelectorAll("[hidesnippetaddtool]"),We.removeAttributes(c,"hidesnippetaddtool"),c=l.querySelectorAll("[gray]"),We.removeAttributes(c,"gray"),c=l.querySelectorAll("[rowoutline]"),We.removeAttributes(c,"rowoutline"),c=l.querySelectorAll("[grayoutline]"),We.removeAttributes(c,"grayoutline"),c=l.querySelectorAll("[hideoutline]"),We.removeAttributes(c,"hideoutline"),c=l.querySelectorAll("[leftrowtool]"),We.removeAttributes(c,"leftrowtool"),c=l.querySelectorAll("[minimal]"),We.removeAttributes(c,"minimal"),c=l.querySelectorAll("[clean]"),We.removeAttributes(c,"clean"),c=l.querySelectorAll("[grideditor]"),We.removeAttributes(c,"grideditor"),c=l.querySelectorAll("[gridoutline]"),We.removeAttributes(c,"gridoutline"),We.removeElements(l.querySelectorAll(".is-row-tool")),We.removeElements(l.querySelectorAll(".is-rowadd-tool")),We.removeElements(l.querySelectorAll(".ovl")),We.removeElements(l.querySelectorAll(".row-add-initial")),c=l.querySelectorAll(".aos-init"),We.removeClasses(c,"aos-init"),c=l.querySelectorAll(".aos-animate"),We.removeClasses(c,"aos-animate"),c=l.querySelectorAll(".skrollable"),We.removeClasses(c,"skrollable"),c=l.querySelectorAll(".skrollable-after"),We.removeClasses(c,"skrollable-after"),c=l.querySelectorAll(".skrollable-before"),We.removeClasses(c,"skrollable-before"),c=l.querySelectorAll(".skrollable-between"),We.removeClasses(c,"skrollable-between");let u=l.querySelectorAll('[class=""]');Array.prototype.forEach.call(u,(t=>{t.removeAttribute("class")}));let p=l.querySelectorAll('[style=""]');Array.prototype.forEach.call(p,(t=>{t.removeAttribute("style")})),We.removeEmptyStyle(l),c=l.querySelectorAll("[data-keep]"),We.removeAttributes(c,"data-keep");let h=l.querySelectorAll("a");if(Array.prototype.forEach.call(h,(t=>{"inline-block"===t.style.display&&1===t.parentNode.childElementCount&&"span"===t.parentNode.tagName.toLowerCase()&&(t.parentNode.outerHTML=t.parentNode.innerHTML)})),r="",i){let t=l.querySelectorAll(".is-dummy");We.removeElements(t),t=l.querySelectorAll(".is-animated"),Array.prototype.forEach.call(t,(t=>{We.removeClass(t,"animated"),We.removeClass(t,"pulse"),We.removeClass(t,"bounceIn"),We.removeClass(t,"fadeIn"),We.removeClass(t,"fadeOut"),We.removeClass(t,"fadeInDown"),We.removeClass(t,"fadeInLeft"),We.removeClass(t,"fadeInRight"),We.removeClass(t,"fadeInUp"),We.removeClass(t,"flipInX"),We.removeClass(t,"flipInY"),We.removeClass(t,"slideInUp"),We.removeClass(t,"slideInDown"),We.removeClass(t,"slideInLeft"),We.removeClass(t,"slideInRight"),We.removeClass(t,"zoomIn"),t.style.animationDelay=""})),t=l.querySelectorAll(".is-appeared"),Array.prototype.forEach.call(t,(t=>{We.removeClass(t,"is-appeared")})),t=l.querySelectorAll(".box-active"),Array.prototype.forEach.call(t,(t=>{We.removeClass(t,"box-active")})),t=l.querySelectorAll(".section-active"),Array.prototype.forEach.call(t,(t=>{We.removeClass(t,"section-active")})),t=l.querySelectorAll(".is-section-tool"),We.removeElements(t);var v="",f="",g="";We.elementChildren(l).forEach((t=>{let e=t;if(We.hasClass(e,"is-section")){var i="";e.getAttribute("class")&&(i=' class="'+e.getAttribute("class")+'"');var n=e.cloneNode(!0),o=n.outerHTML;r+=o,-1===i.indexOf("is-static")?v+=o+"\n\n":f+=o+"\n\n"}else o=(n=e.cloneNode(!0)).outerHTML,r+=o,g+=o})),""!==f&&(f="\x3c!---FOOTER---\x3e\n"+f),""!==g&&(g="\x3c!---OTHERS---\x3e\n"+g);let e=document.querySelector("[data-contentbox"),i=!1;e&&(i=e.settings.disableStaticSection),i||(r=v+f+g)}else r=l.innerHTML.trim(),r=r.replace(/<font/g,"<span").replace(/<\/font/g,"</span");return s=o.querySelector("#tmp_content"),s&&o.removeChild(s),s=o.querySelector("#tmp_buildercontent"),s&&o.removeChild(s),(0,Ue.html)(r)}getIframeHtml(){return`\n <!DOCTYPE HTML>\n <html>\n <head>\n <meta charset="utf-8">\n <title>Fonts</title>\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <meta name="description" content=""> \n <link href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/codemirror.css" rel="stylesheet" type="text/css" />\n \n <style>\n html, body {height:100%}\n body {margin:0;overflow:hidden;}\n \n button {\n width: 51px;\n height: 45px;\n line-height:1;\n display: inline-block;\n box-sizing:border-box;\n margin: 0;\n padding: 0;\n cursor: pointer;\n background-color: ${this.builder.styleModalBackground};\n color: ${this.builder.styleModalColor}; \n border: 1px solid transparent;\n font-family: sans-serif;\n letter-spacing: 1px;\n font-size:12px;\n font-weight:normal;\n // text-transform:uppercase;\n text-align:center; \n position:relative;\n border-radius: 0;\n transition: all ease 0.3s; \n user-select: none;\n -moz-user-select: none;\n -khtml-user-select: none;\n -webkit-user-select: none;\n -o-user-select: none; \n }\n button.classic-primary {display:inline-block;width:auto;height:50px;padding-left:30px;padding-right:30px;min-width:135px;\n background-color: ${this.builder.styleButtonClassicBackground};\n color: ${this.builder.styleButtonClassicColor}; \n }\n button.classic-secondary {display:inline-block;width:auto;height:50px;padding-left:30px;padding-right:30px;\n background:transparent;\n }\n button.classic-primary:hover {\n background-color: ${this.builder.styleButtonClassicBackgroundHover}; \n }\n button:focus {outline:none;}\n textarea {font-family: courier;font-size: 17px;line-height: 2;letter-spacing: 1px;padding:8px 16px;box-sizing:border-box;border:1px solid rgb(199, 199, 199);}\n textarea:focus {outline:none} \n \n #code {display:none;}\n .CodeMirror {\n font-family: courier;\n font-size: 15px;\n line-height:1.9;\n width:100%;height:100%;\n }\n\n /* adjustment => for colored & dark */\n .colored .CodeMirror{\n background:#f5f5f5;\n }\n .colored .CodeMirror-gutters{\n background:#ececec;\n }\n\n .colored-dark .CodeMirror{\n background:#f5f5f5;\n }\n .colored-dark .CodeMirror-gutters{\n background:#ececec;\n }\n\n .dark .CodeMirror{\n background:#f5f5f5;\n }\n .dark .CodeMirror-gutters{\n background:#ececec;\n }\n\n /* base16-light => not used */\n .cm-s-base16-light.CodeMirror{\n background:#eaeaea;//#f5f5f5;\n color:#202020\n }\n .cm-s-base16-light div.CodeMirror-selected{background:#e0e0e0}.cm-s-base16-light .CodeMirror-line::selection,.cm-s-base16-light .CodeMirror-line>span::selection,.cm-s-base16-light .CodeMirror-line>span>span::selection{background:#e0e0e0}.cm-s-base16-light .CodeMirror-line::-moz-selection,.cm-s-base16-light .CodeMirror-line>span::-moz-selection,.cm-s-base16-light .CodeMirror-line>span>span::-moz-selection{background:#e0e0e0}\n .cm-s-base16-light .CodeMirror-gutters{\n background:#dcdcdc; //#f5f5f5;\n border-right:0\n }\n .cm-s-base16-light .CodeMirror-guttermarker{color:#ac4142}.cm-s-base16-light .CodeMirror-guttermarker-subtle{color:#b0b0b0}\n .cm-s-base16-light .CodeMirror-linenumber{\n color:#989898;//#b0b0b0\n }\n .cm-s-base16-light .CodeMirror-cursor{border-left:1px solid #505050}.cm-s-base16-light span.cm-comment{color:#8f5536}.cm-s-base16-light span.cm-atom{color:#aa759f}.cm-s-base16-light span.cm-number{color:#aa759f}.cm-s-base16-light span.cm-attribute,.cm-s-base16-light span.cm-property{color:#90a959}.cm-s-base16-light span.cm-keyword{color:#ac4142}\n .cm-s-base16-light span.cm-string{color:#c37f20}\n .cm-s-base16-light span.cm-variable{color:#90a959}.cm-s-base16-light span.cm-variable-2{color:#6a9fb5}.cm-s-base16-light span.cm-def{color:#d28445}.cm-s-base16-light span.cm-bracket{color:#202020}.cm-s-base16-light span.cm-tag{color:#ac4142}.cm-s-base16-light span.cm-link{color:#aa759f}.cm-s-base16-light span.cm-error{background:#ac4142;color:#505050}.cm-s-base16-light .CodeMirror-activeline-background{background:#dddcdc}.cm-s-base16-light .CodeMirror-matchingbracket{color:#f5f5f5!important;background-color:#6a9fb5!important}\n\n /* Port of TextMate's Blackboard theme => not used */\n\n .cm-s-blackboard.CodeMirror { background: #262626; color: #F8F8F8; } \n .cm-s-blackboard div.CodeMirror-selected { background: #253B76; }\n .cm-s-blackboard .CodeMirror-line::selection, .cm-s-blackboard .CodeMirror-line > span::selection, .cm-s-blackboard .CodeMirror-line > span > span::selection { background: rgba(37, 59, 118, .99); }\n .cm-s-blackboard .CodeMirror-line::-moz-selection, .cm-s-blackboard .CodeMirror-line > span::-moz-selection, .cm-s-blackboard .CodeMirror-line > span > span::-moz-selection { background: rgba(37, 59, 118, .99); }\n .cm-s-blackboard .CodeMirror-gutters { background: #323232; border-right: 0; }\n .cm-s-blackboard .CodeMirror-guttermarker { color: #FBDE2D; }\n .cm-s-blackboard .CodeMirror-guttermarker-subtle { color: #888; }\n .cm-s-blackboard .CodeMirror-linenumber { color: #888; }\n .cm-s-blackboard .CodeMirror-cursor { border-left: 1px solid #A7A7A7; }\n\n .cm-s-blackboard .cm-keyword { color: #FBDE2D; }\n .cm-s-blackboard .cm-atom { color: #D8FA3C; }\n .cm-s-blackboard .cm-number { color: #D8FA3C; }\n .cm-s-blackboard .cm-def { color: #8DA6CE; }\n .cm-s-blackboard .cm-variable { color: #FF6400; }\n .cm-s-blackboard .cm-operator { color: #FBDE2D; }\n .cm-s-blackboard .cm-comment { color: #AEAEAE; }\n .cm-s-blackboard .cm-string { color: #61CE3C; }\n .cm-s-blackboard .cm-string-2 { color: #61CE3C; }\n .cm-s-blackboard .cm-meta { color: #D8FA3C; }\n .cm-s-blackboard .cm-builtin { color: #8DA6CE; }\n .cm-s-blackboard .cm-tag { color: #8DA6CE; }\n .cm-s-blackboard .cm-attribute { color: #8DA6CE; }\n .cm-s-blackboard .cm-header { color: #FF6400; }\n .cm-s-blackboard .cm-hr { color: #AEAEAE; }\n .cm-s-blackboard .cm-link { color: #8DA6CE; }\n .cm-s-blackboard .cm-error { background: #9D1E15; color: #F8F8F8; }\n\n .cm-s-blackboard .CodeMirror-activeline-background { background: #3C3636; }\n .cm-s-blackboard .CodeMirror-matchingbracket { outline:1px solid grey;color:white !important; }\n\n \n /* Scrollbar for modal */\n\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgba(255, 255, 255, 0.3) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgba(255, 255, 255, 0.3);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n </style>\n </head>\n <body${this.builder.styleDark?' class="dark"':""}${this.builder.styleColored?' class="colored"':""}${this.builder.styleColoredDark?' class="colored-dark"':""}${this.builder.styleLight?' class="light"':""}>\n\n <div style="position:absolute;top:0;left:0;width:100%;height:100%;border:none;border-bottom:50px solid transparent;box-sizing: border-box;">\n <textarea id="code"></textarea> \n </div>\n <div style="width:100%;height:50px;position:absolute;left:0;border-top:1px solid ${this.builder.styleSeparatorColor};bottom:0;overflow:hidden;text-align:right">\n <button title="${this.builder.out("Cancel")}" class="input-cancel classic-secondary">${this.builder.out("Cancel")}</button>\n <button title="${this.builder.out("Ok")}" class="input-ok classic-primary">${this.builder.out("Ok")}</button>\n </div>\n \n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/codemirror.js" type="text/javascript"><\/script>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/mode/xml/xml.js" type="text/javascript"><\/script>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/mode/javascript/javascript.js" type="text/javascript"><\/script>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/mode/css/css.js" type="text/javascript"><\/script>\n <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.48.4/mode/htmlmixed/htmlmixed.js" type="text/javascript"><\/script>\n <script type="text/javascript">\n \n var source = parent.document.querySelector('textarea[data-source-active]');\n var selectorOk = source.getAttribute('data-source-ok');\n var selectorCancel = source.getAttribute('data-source-cancel');\n \n var html = source.value;\n var myTextArea = document.querySelector('#code');\n myTextArea.value = html;\n\n var htmlEditor = CodeMirror.fromTextArea(myTextArea, {\n value: html,\n mode: "htmlmixed",\n lineWrapping: true,\n lineNumbers: true,\n tabMode: "indent",\n });\n\n ${this.builder.styleDark?'htmlEditor.setOption("theme", "blackboard");':""}\n /*\n ${this.builder.styleDark?'htmlEditor.setOption("theme", "base16-light");':""}\n \n ${this.builder.styleColored?'htmlEditor.setOption("theme", "blackboard");':""}\n */\n\n htmlEditor.on("change", function (cm, change) {\n myTextArea.value = cm.getValue();\n });\n \n let elm = document.querySelector('.input-ok');\n elm.addEventListener('click', function(e){\n \n myTextArea.value = htmlEditor.getValue();\n \n var html = myTextArea.value;\n source.value = html;\n\n source.removeAttribute('data-source-active');\n source.removeAttribute('data-source-ok');\n source.removeAttribute('data-source-cancel');\n \n var modal = parent.document.querySelector('.viewhtmllarger');\n if(modal.className.indexOf('active')!==-1) {\n modal.className = modal.className.replace('active', '');\n } else {\n modal = parent.document.querySelector('.viewhtmlformatted');\n modal.className = modal.className.replace('active', '');\n }\n \n modal = parent.document.querySelector('.viewhtmlnormal');\n if(modal.className.indexOf('active')!==-1) {\n modal.className = modal.className.replace('active', '');\n }\n\n parent.document.querySelector(selectorOk).click();\n });\n \n elm = document.querySelector('.input-cancel');\n elm.addEventListener('click', function(e){\n source.removeAttribute('data-source-active');\n source.removeAttribute('data-source-ok');\n source.removeAttribute('data-source-cancel');\n \n var modal = parent.document.querySelector('.viewhtmllarger');\n if(modal.className.indexOf('active')!==-1) {\n modal.className = modal.className.replace('active', '');\n } else {\n modal = parent.document.querySelector('.viewhtmlformatted');\n modal.className = modal.className.replace('active', '');\n }\n \n modal = parent.document.querySelector('.viewhtmlnormal');\n if(modal.className.indexOf('active')!==-1) {\n modal.className = modal.className.replace('active', '');\n }\n\n parent.document.querySelector(selectorCancel).click();\n });\n \n <\/script>\n \n </body>\n </html>\n \n `}}const Ye=new e;class Ve{constructor(t){this.builder=t,this.undoList=[]}readStyles(){if(this.builder.opts.undoContainerOnly)return"";let t,e,i="",n=document.getElementsByTagName("link");for(t=0;t<n.length;t++)e=n[t].href.toLowerCase(),-1!==e.indexOf("basetype-")&&(i+=n[t].outerHTML);for(n=document.getElementsByTagName("link"),t=0;t<n.length;t++)e=n[t].href.toLowerCase(),-1!==e.indexOf("basetype-")||-1!==e.indexOf("type-")&&(i+=n[t].outerHTML);return i}writeStyles(t){if(this.builder.opts.undoContainerOnly)return;let e,i,n=document.getElementsByTagName("link");for(e=0;e<n.length;e++)i=n[e].href.toLowerCase(),(-1!==i.indexOf("basetype-")||-1!==i.indexOf("type-"))&&n[e].parentNode.removeChild(n[e]);let o=document.getElementsByTagName("head")[0];Ye.appendHtml(o,t)}readHtml(){const t=new Ge(this.builder);if(""===this.builder.opts.page||this.builder.opts.undoContainerOnly){const e=document.querySelectorAll(this.builder.opts.container);let i="";return Array.prototype.forEach.call(e,(e=>{i+=t.readHtml(e,!1)+"####|####"})),i=i.substr(0,i.length-9),i}{let e=document.querySelector(this.builder.opts.page);return t.readHtml(e,!1)}}writeHtml(t){if(""===this.builder.opts.page||this.builder.opts.undoContainerOnly){const e=document.querySelectorAll(this.builder.opts.container);let i=0;Array.prototype.forEach.call(e,(e=>{var n=document.createRange();e.innerHTML="",e.appendChild(n.createContextualFragment(t.split("####|####")[i])),i++}))}else{let i=document.querySelector(this.builder.opts.page);var e=document.createRange();i.innerHTML="",i.appendChild(e.createContextualFragment(t))}}saveForUndo(t){if(this.builder.undoRedoStyles){if(this.undoList[120]){let e=this.undoList[120][0].split("###$###")[1];if(this.builder.saveForUndoCheck&&e===this.readHtml())return void(this.builder.saveForUndoCheck=!0===t)}}else if(this.undoList[120]){let e=this.undoList[120][0];if(this.builder.saveForUndoCheck&&e===this.readHtml())return void(this.builder.saveForUndoCheck=!0===t)}if(this.builder.saveForUndoCheck=!0===t,this.undoList[140]=this.undoList[139],this.undoList[139]=this.undoList[138],this.undoList[138]=this.undoList[137],this.undoList[137]=this.undoList[136],this.undoList[136]=this.undoList[135],this.undoList[135]=this.undoList[134],this.undoList[134]=this.undoList[133],this.undoList[133]=this.undoList[132],this.undoList[132]=this.undoList[131],this.undoList[131]=this.undoList[130],this.undoList[130]=this.undoList[129],this.undoList[129]=this.undoList[128],this.undoList[128]=this.undoList[127],this.undoList[127]=this.undoList[126],this.undoList[126]=this.undoList[125],this.undoList[125]=this.undoList[124],this.undoList[124]=this.undoList[123],this.undoList[123]=this.undoList[122],this.undoList[122]=this.undoList[121],this.undoList[121]=this.undoList[120],this.builder.undoRedoStyles){let t=" "+this.readStyles()+"###$###"+this.readHtml();this.undoList[120]=[t,null]}else this.undoList[120]=[this.readHtml(),null]}doUndo(){if(!this.undoList[120])return;if(!0===this.builder.undoRedoInProcess)return;if(this.builder.undoRedoInProcess=!0,this.undoList[99]=this.undoList[100],this.undoList[100]=this.undoList[101],this.undoList[101]=this.undoList[102],this.undoList[102]=this.undoList[103],this.undoList[103]=this.undoList[104],this.undoList[104]=this.undoList[105],this.undoList[105]=this.undoList[106],this.undoList[106]=this.undoList[107],this.undoList[107]=this.undoList[108],this.undoList[108]=this.undoList[109],this.undoList[109]=this.undoList[110],this.undoList[110]=this.undoList[111],this.undoList[111]=this.undoList[112],this.undoList[112]=this.undoList[113],this.undoList[113]=this.undoList[114],this.undoList[114]=this.undoList[115],this.undoList[115]=this.undoList[116],this.undoList[116]=this.undoList[117],this.undoList[117]=this.undoList[118],this.undoList[118]=this.undoList[119],this.builder.undoRedoStyles){let t=this.readStyles(),e=this.readHtml(),i=" "+t+"###$###"+e;this.undoList[119]=[i,null],i=this.undoList[120][0],t=i.split("###$###")[0].trim(),e=i.split("###$###")[1],this.writeStyles(t),this.writeHtml(e)}else{this.undoList[119]=[this.readHtml(),null];let t=this.undoList[120][0];this.writeHtml(t)}this.builder.applyBehavior(),this.builder.opts.onChange(),this.undoList[120]=this.undoList[121],this.undoList[121]=this.undoList[122],this.undoList[122]=this.undoList[123],this.undoList[123]=this.undoList[124],this.undoList[124]=this.undoList[125],this.undoList[125]=this.undoList[126],this.undoList[126]=this.undoList[127],this.undoList[127]=this.undoList[128],this.undoList[128]=this.undoList[129],this.undoList[129]=this.undoList[130],this.undoList[130]=this.undoList[131],this.undoList[131]=this.undoList[132],this.undoList[132]=this.undoList[133],this.undoList[133]=this.undoList[134],this.undoList[134]=this.undoList[135],this.undoList[135]=this.undoList[136],this.undoList[136]=this.undoList[137],this.undoList[137]=this.undoList[138],this.undoList[138]=this.undoList[139],this.undoList[139]=this.undoList[140],this.undoList[140]=this.undoList[141];const e=new t(this.builder);e.clearActiveCell(),e.clearAfterUndoRedo();let i=document.querySelector("[data-saveforundo]");if(i){let t=document.querySelector(".is-side.elementstyles");Ye.addClass(t,"active"),setTimeout((()=>{i.click()}),700)}else{let t=document.querySelector(".is-side.elementstyles");Ye.removeClass(t,"active")}this.builder.opts.onUndo&&this.builder.opts.onUndo(),this.builder.undoRedoInProcess=!1}doRedo(){if(!this.undoList[119])return;if(!0===this.builder.undoRedoInProcess)return;if(this.builder.undoRedoInProcess=!0,this.undoList[141]=this.undoList[140],this.undoList[140]=this.undoList[139],this.undoList[139]=this.undoList[138],this.undoList[138]=this.undoList[137],this.undoList[137]=this.undoList[136],this.undoList[136]=this.undoList[135],this.undoList[135]=this.undoList[134],this.undoList[134]=this.undoList[133],this.undoList[133]=this.undoList[132],this.undoList[132]=this.undoList[131],this.undoList[131]=this.undoList[130],this.undoList[130]=this.undoList[129],this.undoList[129]=this.undoList[128],this.undoList[128]=this.undoList[127],this.undoList[127]=this.undoList[126],this.undoList[126]=this.undoList[125],this.undoList[125]=this.undoList[124],this.undoList[124]=this.undoList[123],this.undoList[123]=this.undoList[122],this.undoList[122]=this.undoList[121],this.undoList[121]=this.undoList[120],this.builder.undoRedoStyles){let t=this.readStyles(),e=this.readHtml(),i=" "+t+"###$###"+e;this.undoList[120]=[i,null],i=this.undoList[119][0],t=i.split("###$###")[0].trim(),e=i.split("###$###")[1],this.writeStyles(t),this.writeHtml(e)}else{this.undoList[120]=[this.readHtml(),null];let t=this.undoList[119][0];this.writeHtml(t)}this.builder.applyBehavior(),this.builder.opts.onChange(),this.undoList[119]=this.undoList[118],this.undoList[118]=this.undoList[117],this.undoList[117]=this.undoList[116],this.undoList[116]=this.undoList[115],this.undoList[115]=this.undoList[114],this.undoList[114]=this.undoList[113],this.undoList[113]=this.undoList[112],this.undoList[112]=this.undoList[111],this.undoList[111]=this.undoList[110],this.undoList[110]=this.undoList[109],this.undoList[109]=this.undoList[108],this.undoList[108]=this.undoList[107],this.undoList[107]=this.undoList[106],this.undoList[106]=this.undoList[105],this.undoList[105]=this.undoList[104],this.undoList[104]=this.undoList[103],this.undoList[103]=this.undoList[102],this.undoList[102]=this.undoList[101],this.undoList[101]=this.undoList[100],this.undoList[100]=this.undoList[99],this.undoList[99]=null;const e=new t(this.builder);e.clearActiveCell(),e.clearAfterUndoRedo();let i=document.querySelector("[data-saveforundo]");if(i){let t=document.querySelector(".is-side.elementstyles");Ye.addClass(t,"active"),setTimeout((()=>{i.click()}),700)}else{let t=document.querySelector(".is-side.elementstyles");Ye.removeClass(t,"active")}this.builder.opts.onRedo&&this.builder.opts.onRedo(),this.builder.undoRedoInProcess=!1}}const Xe=new t,Ze=new e,Ke=()=>{const t=Xe.builderStuff();Ze.appendHtml(t,'<svg width="0" height="0" style="position:absolute;display:none;">\n <defs>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-left"><path d="M352 115.4L331.3 96 160 256l171.3 160 20.7-19.3L201.5 256z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-right"><path d="M160 115.4L180.7 96 352 256 180.7 416 160 396.7 310.5 256z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-plus-outline"><path d="M256 48C141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208S370.9 48 256 48zm0 398.7c-105.1 0-190.7-85.5-190.7-190.7S150.9 65.3 256 65.3 446.7 150.9 446.7 256 361.1 446.7 256 446.7z"></path><path d="M264.1 128h-16.8v119.9H128v16.8h119.3V384h16.8V264.7H384v-16.8H264.1z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-image"><path d="M368 224c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48z"></path><path d="M452 64H60c-15.6 0-28 12.7-28 28.3v327.4c0 15.6 12.4 28.3 28 28.3h392c15.6 0 28-12.7 28-28.3V92.3c0-15.6-12.4-28.3-28-28.3zM348.9 261.7c-3-3.5-7.6-6.2-12.8-6.2-5.1 0-8.7 2.4-12.8 5.7L304.6 277c-3.9 2.8-7 4.7-11.5 4.7-4.3 0-8.2-1.6-11-4.1-1-.9-2.8-2.6-4.3-4.1L224 215.3c-4-4.6-10-7.5-16.7-7.5-6.7 0-12.9 3.3-16.8 7.8L64 368.2V107.7c1-6.8 6.3-11.7 13.1-11.7h357.7c6.9 0 12.5 5.1 12.9 12l.3 260.4-99.1-106.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-photos-outline"><path d="M96 128v320h384V128H96zm368 304H112V144h352v288z"></path><path d="M32 64v320h48v-16H48V80h352v32h16V64z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-settings-strong"><path d="M32 376h283.35c6.186-14.112 20.281-24 36.65-24s30.465 9.888 36.65 24H480v32h-91.35c-6.186 14.112-20.281 24-36.65 24s-30.465-9.888-36.65-24H32M32 240h91.35c6.186-14.112 20.281-24 36.65-24s30.465 9.888 36.65 24H480v32H196.65c-6.186 14.112-20.281 24-36.65 24s-30.465-9.888-36.65-24H32M32 104h283.35c6.186-14.112 20.281-24 36.65-24s30.465 9.888 36.65 24H480v32h-91.35c-6.186 14.112-20.281 24-36.65 24s-30.465-9.888-36.65-24H32"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-settings"><path d="M352 104c8.837 0 16 7.163 16 16s-7.163 16-16 16-16-7.163-16-16 7.163-16 16-16m0-16c-17.645 0-32 14.355-32 32s14.355 32 32 32 32-14.355 32-32-14.355-32-32-32zM352 376c8.837 0 16 7.163 16 16s-7.163 16-16 16-16-7.163-16-16 7.163-16 16-16m0-16c-17.645 0-32 14.355-32 32s14.355 32 32 32 32-14.355 32-32-14.355-32-32-32zM160 240c8.837 0 16 7.163 16 16s-7.163 16-16 16-16-7.163-16-16 7.163-16 16-16m0-16c-17.645 0-32 14.355-32 32s14.355 32 32 32 32-14.355 32-32-14.355-32-32-32zM207.32 248H480v16H207.32c.439-2.604.68-5.273.68-8s-.24-5.396-.68-8zM112 256c0 2.727.24 5.396.68 8H32v-16h80.68a47.955 47.955 0 0 0-.68 8zM399.32 384H480v16h-80.68c.439-2.604.68-5.273.68-8s-.24-5.396-.68-8zM304 392c0 2.727.24 5.396.68 8H32v-16h272.68a47.955 47.955 0 0 0-.68 8zM399.32 112H480v16h-80.68c.439-2.604.68-5.273.68-8s-.24-5.396-.68-8zM304.68 112c-.439 2.604-.68 5.273-.68 8s.24 5.396.68 8H32v-16h272.68z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-options"><path d="M32 384h272v32H32zM400 384h80v32h-80zM384 447.5c0 17.949-14.327 32.5-32 32.5-17.673 0-32-14.551-32-32.5v-95c0-17.949 14.327-32.5 32-32.5 17.673 0 32 14.551 32 32.5v95z"></path><g><path d="M32 240h80v32H32zM208 240h272v32H208zM192 303.5c0 17.949-14.327 32.5-32 32.5-17.673 0-32-14.551-32-32.5v-95c0-17.949 14.327-32.5 32-32.5 17.673 0 32 14.551 32 32.5v95z"></path></g><g><path d="M32 96h272v32H32zM400 96h80v32h-80zM384 159.5c0 17.949-14.327 32.5-32 32.5-17.673 0-32-14.551-32-32.5v-95c0-17.949 14.327-32.5 32-32.5 17.673 0 32 14.551 32 32.5v95z"></path></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-list-number"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-1043.45,1024 C-1039.25,946.283 -1023.18,878.648 -995.249,821.096 C-967.313,763.544 -912.806,711.242 -831.728,664.192 L-710.742,594.247 C-656.55,562.74 -618.532,535.854 -596.687,513.589 C-562.24,478.722 -545.016,438.813 -545.016,393.863 C-545.016,341.352 -560.769,299.658 -592.276,268.781 C-623.783,237.904 -665.792,222.466 -718.304,222.466 C-796.02,222.466 -849.792,251.873 -879.619,310.685 C-895.582,342.192 -904.404,385.882 -906.084,441.754 L-1021.4,441.754 C-1020.14,363.197 -1005.65,299.133 -977.92,249.562 C-928.769,162.183 -842.02,118.494 -717.673,118.494 C-614.331,118.494 -538.82,146.43 -491.139,202.302 C-443.459,258.174 -419.619,320.347 -419.619,388.822 C-419.619,461.078 -445.034,522.831 -495.865,574.082 C-525.272,603.909 -577.993,640.037 -654.03,682.466 L-740.358,730.356 C-781.527,753.041 -813.874,774.676 -837.399,795.26 C-879.408,831.808 -905.874,872.347 -916.797,916.877 L-424.03,916.877 L-424.03,1024 L-1043.45,1024 Z " /><path d="M-922.391,-764.384 L-922.391,-851.343 C-840.474,-859.324 -783.341,-872.662 -750.994,-891.356 C-718.647,-910.05 -694.492,-954.265 -678.529,-1024 L-589.049,-1024 L-589.049,-125.425 L-710.035,-125.425 L-710.035,-764.384 L-922.391,-764.384 Z " /><path d="M-198.618,-510.942 L-198.618,-667.156 L1004.57,-667.156 L1004.57,-510.942 L-198.618,-510.942 Z " /><path d="M-198.618,78.1071 L-198.618,-78.1071 L1004.57,-78.1071 L1004.57,78.1071 L-198.618,78.1071 Z " /><path d="M-179.185,649.354 L-179.185,493.14 L1024,493.14 L1024,649.354 L-179.185,649.354 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-list-bullet"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-379.801,-514.33 L-379.801,-670.545 L914.662,-670.545 L914.662,-514.33 L-379.801,-514.33 Z " /><path d="M-379.801,78.1071 L-379.801,-78.1071 L914.662,-78.1071 L914.662,78.1071 L-379.801,78.1071 Z " /><path d="M-379.801,670.545 L-379.801,514.33 L914.662,514.33 L914.662,670.545 L-379.801,670.545 Z " /><path d="M-929.642,-469.441 L-929.642,-715.434 L-669.092,-715.434 L-669.092,-469.441 L-929.642,-469.441 Z " /><path d="M-929.642,127.109 L-929.642,-118.885 L-669.092,-118.885 L-669.092,127.109 L-929.642,127.109 Z " /><path d="M-929.642,715.434 L-929.642,469.441 L-669.092,469.441 L-669.092,715.434 L-929.642,715.434 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-clean">\n <g transform="matrix(1,0,0,1,1024.0,1024.0)">\n <path d="M75.0013,893.849 L-1030.73,900.993 L-32.1518,-880.838 L1009.54,-880.838 L75.0013,893.849 Z " fill="currentColor" />\n <path d="M-30.8571,780.685 L-845.2,787.828 L-508.893,193.749 L305.26,194.963 L-30.8571,780.685 Z " fill="#ffffff" fill-opacity="1.00" />\n </g>\n </symbol>\n <symbol viewBox="0 0 512 512" id="ion-location"><path d="M256 64c-65.9 0-119.3 53.7-119.3 120 0 114.6 119.3 264 119.3 264s119.3-149.4 119.3-264c0-66.3-53.4-120-119.3-120zm0 178.2c-31.2 0-56.4-25.4-56.4-56.7 0-31.3 25.3-56.8 56.4-56.8 31.2 0 56.4 25.4 56.4 56.8 0 31.3-25.2 56.7-56.4 56.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-film-outline"><path d="M0 360h400v-336h-400v336zM72 40v48h-56v-48h56zM72 104v48h-56v-48h56zM72 168v48h-56v-48h56zM72 232v48h-56v-48h56zM72 296v48h-56v-48h56zM312 40v144h-224v-144h224zM312 200v144h-224v-144h224zM384 40v48h-56v-48h56zM384 104v48h-56v-48h56zM384 168v48h-56v-48\n h56zM384 232v48h-56v-48h56zM384 296v48h-56v-48h56z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-social-youtube-outline"><path d="M265 96c65.3 0 118.7 1.1 168.1 3.3h1.4c23.1 0 42 22 42 49.1v1.1l.1 1.1c2.3 34 3.4 69.3 3.4 104.9.1 35.6-1.1 70.9-3.4 104.9l-.1 1.1v1.1c0 13.8-4.7 26.6-13.4 36.1-7.8 8.6-18 13.4-28.6 13.4h-1.6c-52.9 2.5-108.8 3.8-166.4 3.8h-10.6.1-10.9c-57.8 0-113.7-1.3-166.2-3.7h-1.6c-10.6 0-20.7-4.8-28.5-13.4-8.6-9.5-13.4-22.3-13.4-36.1v-1.1l-.1-1.1c-2.4-34.1-3.5-69.4-3.3-104.7v-.2c-.1-35.3 1-70.5 3.3-104.6l.1-1.1v-1.1c0-27.2 18.8-49.3 41.9-49.3h1.4c49.5-2.3 102.9-3.3 168.2-3.3H265m0-32.2h-18c-57.6 0-114.2.8-169.6 3.3-40.8 0-73.9 36.3-73.9 81.3C1 184.4-.1 220 0 255.7c-.1 35.7.9 71.3 3.4 107 0 45 33.1 81.6 73.9 81.6 54.8 2.6 110.7 3.8 167.8 3.8h21.6c57.1 0 113-1.2 167.9-3.8 40.9 0 74-36.6 74-81.6 2.4-35.7 3.5-71.4 3.4-107.1.1-35.7-1-71.3-3.4-107.1 0-45-33.1-81.1-74-81.1C379.2 64.8 322.7 64 265 64z"></path><path d="M207 353.8V157.4l145 98.2-145 98.2z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-play"><path d="M128 96v320l256-160L128 96z"></path></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-align-full"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-770.727,738.299 L-770.727,582.085 L769.712,582.085 L769.712,738.299 L-770.727,738.299 Z " /><path d="M-770.727,-534.628 L-770.727,-690.842 L769.712,-690.842 L769.712,-534.628 L-770.727,-534.628 Z " /><path d="M-770.219,-115.563 L-770.219,-271.777 L770.219,-271.777 L770.219,-115.563 L-770.219,-115.563 Z " /><path d="M-770.219,303.503 L-770.219,147.288 L770.219,147.288 L770.219,303.503 L-770.219,303.503 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-align-center"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-770.727,738.299 L-770.727,582.085 L769.712,582.085 L769.712,738.299 L-770.727,738.299 Z " /><path d="M-552.286,-107.697 L-552.286,-263.911 L552.286,-263.911 L552.286,-107.697 L-552.286,-107.697 Z " /><path d="M-467.355,319.234 L-467.355,163.02 L466.34,163.02 L466.34,319.234 L-467.355,319.234 Z " /><path d="M-770.727,-534.628 L-770.727,-690.842 L769.712,-690.842 L769.712,-534.628 L-770.727,-534.628 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-align-left"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-770.727,738.299 L-770.727,582.085 L769.712,582.085 L769.712,738.299 L-770.727,738.299 Z " /><path d="M-770.727,-534.628 L-770.727,-690.842 L769.712,-690.842 L769.712,-534.628 L-770.727,-534.628 Z " /><path d="M-770.219,-115.563 L-770.219,-271.777 L482.839,-271.777 L482.839,-115.563 L-770.219,-115.563 Z " /><path d="M-770.219,303.503 L-770.219,147.288 L122.787,147.288 L122.787,303.503 L-770.219,303.503 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-align-right"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-770.727,738.299 L-770.727,582.085 L769.712,582.085 L769.712,738.299 L-770.727,738.299 Z " /><path d="M-770.727,-534.628 L-770.727,-690.842 L769.712,-690.842 L769.712,-534.628 L-770.727,-534.628 Z " /><path d="M-483.346,-118.081 L-483.346,-274.295 L769.712,-274.295 L769.712,-118.081 L-483.346,-118.081 Z " /><path d="M-123.871,303.503 L-123.871,147.288 L769.136,147.288 L769.136,303.503 L-123.871,303.503 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-indent"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-829.04,-514.33 L-829.04,-670.545 L808.959,-670.545 L808.959,-514.33 L-829.04,-514.33 Z " /><path d="M-829.04,670.545 L-829.04,514.33 L808.959,514.33 L808.959,670.545 L-829.04,670.545 Z " /><path d="M-254.279,-110.244 L-254.279,-266.458 L808.959,-266.458 L808.959,-110.244 L-254.279,-110.244 Z " /><path d="M-254.279,266.458 L-254.279,110.244 L808.959,110.244 L808.959,266.458 L-254.279,266.458 Z " /><path d="M-829.04,-195.117 L-490.958,-1.03508e-14 L-829.04,195.117 L-829.04,-195.117 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-outdent"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-829.04,-514.33 L-829.04,-670.545 L808.959,-670.545 L808.959,-514.33 L-829.04,-514.33 Z " /><path d="M-829.04,670.545 L-829.04,514.33 L808.959,514.33 L808.959,670.545 L-829.04,670.545 Z " /><path d="M-829.04,-110.244 L-829.04,-266.458 L234.198,-266.458 L234.198,-110.244 L-829.04,-110.244 Z " /><path d="M-829.04,266.458 L-829.04,110.244 L234.198,110.244 L234.198,266.458 L-829.04,266.458 Z " /><path d="M808.959,-195.117 L470.877,-1.03508e-14 L808.959,195.117 L808.959,-195.117 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-table"><rect x="0" y="0" width="2048.00" height="2048.00" fill="none" /><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M-660.783,660.783 L660.783,660.783 L660.783,-660.783 L-660.783,-660.783 L-660.783,660.783 Z " fill="none" stroke-width="75.82" stroke="currentColor" stroke-linecap="square" stroke-linejoin="miter" /><path d="M-37.9645,698.933 L37.9645,698.933 L37.9645,-698.569 L-37.9645,-698.569 L-37.9645,698.933 Z " fill="currentColor" fill-opacity="1.00" stroke-width="0.25" stroke="currentColor" stroke-linecap="square" stroke-linejoin="miter" /><path d="M-698.933,-37.7825 L-698.933,38.1465 L698.569,38.1465 L698.569,-37.7825 L-698.933,-37.7825 Z " fill="currentColor" fill-opacity="1.00" stroke-width="0.25" stroke="currentColor" stroke-linecap="square" stroke-linejoin="miter" /></g></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-happy"><path d="M256 48C140.563 48 48 141.6 48 256s92.563 208 208 208 208-93.6 208-208S370.401 48 256 48zm0 374.4c-91.518 0-166.404-74.883-166.404-166.4 0-91.518 74.887-166.4 166.404-166.4S422.404 164.482 422.404 256 347.518 422.4 256 422.4zm72.8-187.2c17.683 0 31.201-13.518 31.201-31.2s-13.519-31.2-31.201-31.2c-17.682 0-31.2 13.518-31.2 31.2s13.518 31.2 31.2 31.2zm-145.6 0c17.682 0 31.2-13.518 31.2-31.2s-13.519-31.2-31.2-31.2c-17.683 0-31.201 13.518-31.201 31.2s13.519 31.2 31.201 31.2zM256 370.4c48.883 0 89.436-30.164 106.081-72.801H149.919C166.564 340.236 207.117 370.4 256 370.4z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-create"><path d="M64 368v80h80l235.727-235.729-79.999-79.998L64 368zm377.602-217.602c8.531-8.531 8.531-21.334 0-29.865l-50.135-50.135c-8.531-8.531-21.334-8.531-29.865 0l-39.468 39.469 79.999 79.998 39.469-39.467z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-minus-empty"><path d="M384 265H128v-17h256v17z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-eye"><path d="M256 128c-81.9 0-145.7 48.8-224 128 67.4 67.7 124 128 224 128 99.9 0 173.4-76.4 224-126.6C428.2 198.6 354.8 128 256 128zm0 219.3c-49.4 0-89.6-41-89.6-91.3 0-50.4 40.2-91.3 89.6-91.3s89.6 41 89.6 91.3c0 50.4-40.2 91.3-89.6 91.3z"></path><path d="M256 224c0-7.9 2.9-15.1 7.6-20.7-2.5-.4-5-.6-7.6-.6-28.8 0-52.3 23.9-52.3 53.3s23.5 53.3 52.3 53.3 52.3-23.9 52.3-53.3c0-2.3-.2-4.6-.4-6.9-5.5 4.3-12.3 6.9-19.8 6.9-17.8 0-32.1-14.3-32.1-32z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-reply"><path d="M448 400s-36.8-208-224-208v-80L64 256l160 134.4v-92.3c101.6 0 171 8.9 224 101.9z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-redo"><path d="M64 400h10.3l19.2-31.2c20.5-32.7 44.9-62.8 75.8-76.6 24.4-10.9 46.7-18.9 86.7-20V352l192-128L256 96v80.3c-63 2.8-108.1 20.7-143.3 56.2C60.4 285.2 64 351.5 64 368.2c.1 8.9 0 21.7 0 31.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-wrench"><path d="M461.9 114.9l-56.5 56.7-55.1-10-9.9-55.1 56.5-56.7c-12.7-12.7-30.8-18.5-44.2-17.8-13.5.7-42.3 8.3-64.6 32-21.6 22.8-44.3 65.3-24.2 112.5 2.4 5.7 5.1 13.2-2.9 21.2-8.1 8-215 202.8-215 202.8-19.4 16.7-18 47.6-.1 65.6 18.2 17.9 48.9 19 65.6-.3 0 0 193.2-205.8 202.7-215.1 8.5-8.3 16.1-5.5 21.2-2.9 35.6 18.4 86.3 2.4 112.6-23.9 26.3-26.3 31.1-51.7 31.9-64.7.8-12.9-3.7-30-18-44.3zM91.3 443.2c-6.3 6.2-16.5 6.2-22.7 0-6.2-6.3-6.2-16.5 0-22.7 6.3-6.2 16.5-6.2 22.7 0 6.2 6.3 6.2 16.5 0 22.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-more"><path d="M113.7 304C86.2 304 64 282.6 64 256c0-26.5 22.2-48 49.7-48 27.6 0 49.8 21.5 49.8 48 0 26.6-22.2 48-49.8 48zM256 304c-27.5 0-49.8-21.4-49.8-48 0-26.5 22.3-48 49.8-48 27.5 0 49.7 21.5 49.7 48 0 26.6-22.2 48-49.7 48zM398.2 304c-27.5 0-49.8-21.4-49.8-48 0-26.5 22.2-48 49.8-48 27.5 0 49.8 21.5 49.8 48 0 26.6-22.2 48-49.8 48z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-code-working"><circle cx="184.166" cy="256.166" r="24"></circle><circle cx="256.166" cy="256.166" r="24"></circle><circle cx="328.166" cy="256.166" r="24"></circle><g><path d="M168 392a23.929 23.929 0 0 1-16.971-7.029l-112-112c-9.373-9.373-9.373-24.569 0-33.941l112-112c9.373-9.372 24.568-9.372 33.941 0 9.371 9.372 9.371 24.568 0 33.941L89.941 256l95.029 95.029c9.371 9.372 9.371 24.568 0 33.941A23.925 23.925 0 0 1 168 392zM344 392a23.929 23.929 0 0 0 16.971-7.029l112-112c9.373-9.373 9.373-24.569 0-33.941l-112-112c-9.373-9.372-24.568-9.372-33.941 0-9.371 9.372-9.371 24.568 0 33.941L422.059 256l-95.029 95.029c-9.371 9.372-9.371 24.568 0 33.941A23.925 23.925 0 0 0 344 392z"></path></g></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-gear"><path d="M416.349 256.046c-.001-21.013 13.143-38.948 31.651-46.062a196.302 196.302 0 0 0-23.664-57.139 49.423 49.423 0 0 1-20.082 4.254c-12.621 0-25.238-4.811-34.871-14.442-14.863-14.863-18.248-36.846-10.18-54.97A196.274 196.274 0 0 0 302.074 64C294.971 82.529 277.027 95.69 256 95.69c-21.025 0-38.969-13.161-46.073-31.69a196.243 196.243 0 0 0-57.128 23.688c8.068 18.122 4.683 40.104-10.181 54.97-9.631 9.631-22.25 14.443-34.871 14.443a49.429 49.429 0 0 1-20.083-4.255A196.273 196.273 0 0 0 64 209.984c18.509 7.112 31.652 25.049 31.652 46.062 0 21.008-13.132 38.936-31.63 46.054a196.318 196.318 0 0 0 23.692 57.128 49.428 49.428 0 0 1 20.032-4.232c12.622 0 25.239 4.812 34.871 14.443 14.841 14.841 18.239 36.781 10.215 54.889a196.257 196.257 0 0 0 57.13 23.673c7.128-18.479 25.046-31.596 46.038-31.596 20.992 0 38.91 13.115 46.037 31.596a196.234 196.234 0 0 0 57.132-23.675c-8.023-18.106-4.626-40.046 10.216-54.887 9.629-9.632 22.248-14.444 34.868-14.444 6.836 0 13.67 1.411 20.033 4.233a196.318 196.318 0 0 0 23.692-57.128c-18.498-7.119-31.629-25.048-31.629-46.054zM256.9 335.9c-44.3 0-80-35.9-80-80 0-44.101 35.7-80 80-80 44.299 0 80 35.899 80 80 0 44.1-35.701 80-80 80z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-arrow-expand"><path d="M274 209.7l63.9-63.8L288 96h128v128l-49.9-49.9-63.8 63.9zM274 302.3l63.9 63.8L288 416h128V288l-49.9 49.9-63.8-63.9zM238 302.3l-63.9 63.8L224 416H96V288l49.9 49.9 63.8-63.9zM238 209.7l-63.9-63.8L224 96H96v128l49.9-49.9 63.8 63.9z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-expand"><path d="M396.795 396.8H320V448h128V320h-51.205zM396.8 115.205V192H448V64H320v51.205zM115.205 115.2H192V64H64v128h51.205zM115.2 396.795V320H64v128h128v-51.205z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-arrow-move"><path d="M480 256l-96-96v76H276V128h76l-96-96-96 96h76v108H128v-76l-96 96 96 96v-76h108v108h-76l96 96 96-96h-76.2l-.4-108.5 108.6.3V352z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-drag"><path d="M0 144h512v32H0zM0 240h512v32H0zM0 336h512v32H0z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-link"><path d="M74.6 256c0-38.3 31.1-69.4 69.4-69.4h88V144h-88c-61.8 0-112 50.2-112 112s50.2 112 112 112h88v-42.6h-88c-38.3 0-69.4-31.1-69.4-69.4zm85.4 22h192v-44H160v44zm208-134h-88v42.6h88c38.3 0 69.4 31.1 69.4 69.4s-31.1 69.4-69.4 69.4h-88V368h88c61.8 0 112-50.2 112-112s-50.2-112-112-112z"/></symbol>\n <symbol viewBox="0 0 512 512" id="ion-contrast"><path d="M256 32C132.3 32 32 132.3 32 256s100.3 224 224 224 224-100.3 224-224S379.7 32 256 32zm135.8 359.8C355.5 428 307 448 256 448V64c51 0 99.5 20 135.8 56.2C428 156.5 448 204.7 448 256c0 51.3-20 99.5-56.2 135.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-plus-empty"><path d="M384 265H264v119h-17V265H128v-17h119V128h17v120h120v17z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-thin-up"><path d="M349.7 189.8c-3.1 3.1-8 3-11.3 0L264 123.4V408c0 4.4-3.6 8-8 8s-8-3.6-8-8V123.4l-74.4 66.3c-3.4 2.9-8.1 3.2-11.2.1-3.1-3.1-3.3-8.5-.1-11.4 0 0 87-79.2 88-80s2.8-2.4 5.7-2.4 4.9 1.6 5.7 2.4 88 80 88 80c1.5 1.5 2.3 3.6 2.3 5.7s-.8 4.1-2.3 5.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-thin-down"><path d="M349.7 322.2c-3.1-3.1-8-3-11.3 0L264 388.6V104c0-4.4-3.6-8-8-8s-8 3.6-8 8v284.6l-74.4-66.3c-3.4-2.9-8.1-3.2-11.2-.1-3.1 3.1-3.3 8.5-.1 11.4 0 0 87 79.2 88 80s2.8 2.4 5.7 2.4 4.9-1.6 5.7-2.4 88-80 88-80c1.5-1.5 2.3-3.6 2.3-5.7s-.8-4.1-2.3-5.7z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-thin-left"><path d="M189.8 349.7c3.1-3.1 3-8 0-11.3L123.4 264H408c4.4 0 8-3.6 8-8s-3.6-8-8-8H123.4l66.3-74.4c2.9-3.4 3.2-8.1.1-11.2-3.1-3.1-8.5-3.3-11.4-.1 0 0-79.2 87-80 88S96 253.1 96 256s1.6 4.9 2.4 5.7 80 88 80 88c1.5 1.5 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-arrow-thin-right"><path d="M322.2 349.7c-3.1-3.1-3-8 0-11.3l66.4-74.4H104c-4.4 0-8-3.6-8-8s3.6-8 8-8h284.6l-66.3-74.4c-2.9-3.4-3.2-8.1-.1-11.2 3.1-3.1 8.5-3.3 11.4-.1 0 0 79.2 87 80 88s2.4 2.8 2.4 5.7-1.6 4.9-2.4 5.7-80 88-80 88c-1.5 1.5-3.6 2.3-5.7 2.3s-4.1-.8-5.7-2.3z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-close-empty"><path d="M340.2 160l-84.4 84.3-84-83.9-11.8 11.8 84 83.8-84 83.9 11.8 11.7 84-83.8 84.4 84.2 11.8-11.7-84.4-84.3 84.4-84.2z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-more-vertical"><path d="M296 136c0-22.002-17.998-40-40-40s-40 17.998-40 40 17.998 40 40 40 40-17.998 40-40zm0 240c0-22.002-17.998-40-40-40s-40 17.998-40 40 17.998 40 40 40 40-17.998 40-40zm0-120c0-22.002-17.998-40-40-40s-40 17.998-40 40 17.998 40 40 40 40-17.998 40-40z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-quote"><path d="M192 64c-40.646 0-72.483 11.229-94.627 33.373C75.229 119.517 64 151.354 64 192v256h160V192h-96c0-23.056 4.922-39.666 14.627-49.373C152.334 132.922 168.944 128 192 128M416 64c-40.646 0-72.483 11.229-94.627 33.373C299.229 119.517 288 151.354 288 192v256h160V192h-96c0-23.056 4.922-39.666 14.627-49.373C376.334 132.922 392.944 128 416 128"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-code"><path d="M168 392a23.929 23.929 0 0 1-16.971-7.029l-112-112c-9.373-9.373-9.373-24.569 0-33.941l112-112c9.373-9.372 24.568-9.372 33.941 0 9.371 9.372 9.371 24.568 0 33.941L89.941 256l95.029 95.029c9.371 9.373 9.371 24.568 0 33.941A23.925 23.925 0 0 1 168 392zM344 392a23.929 23.929 0 0 0 16.971-7.029l112-112c9.373-9.373 9.373-24.569 0-33.941l-112-112c-9.373-9.372-24.568-9.372-33.941 0-9.371 9.372-9.371 24.568 0 33.941L422.059 256l-95.029 95.029c-9.371 9.373-9.371 24.568 0 33.941A23.925 23.925 0 0 0 344 392z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-camera"><path d="M430.4 147h-67.5l-40.4-40.8s-.2-.2-.3-.2l-.2-.2c-6-6-14.1-9.8-23.3-9.8h-84c-9.8 0-18.5 4.2-24.6 10.9v.1l-39.5 40h-69C63 147 48 161.6 48 180.2v202.1c0 18.6 15 33.7 33.6 33.7h348.8c18.5 0 33.6-15.1 33.6-33.7V180.2c0-18.6-15.1-33.2-33.6-33.2zM256 365.5c-50.9 0-92.4-41.6-92.4-92.6 0-51.1 41.5-92.6 92.4-92.6 51 0 92.4 41.5 92.4 92.6 0 51-41.4 92.6-92.4 92.6zm168.1-165c-7.7 0-14-6.3-14-14.1s6.3-14.1 14-14.1 14 6.3 14 14.1-6.3 14.1-14 14.1z"></path><path d="M256 202.9c-38.6 0-69.8 31.3-69.8 70 0 38.6 31.2 70 69.8 70 38.5 0 69.8-31.3 69.8-70s-31.3-70-69.8-70z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-move"><path d="M475.9 246.2l-79.4-79.4c-5.4-5.4-14.2-5.4-19.6 0l-.2.2c-5.4 5.4-5.4 14.2 0 19.6l54.9 54.9-161.8.5.5-161.8 54.9 54.9c5.4 5.4 14.2 5.4 19.6 0l.2-.2c5.4-5.4 5.4-14.2 0-19.6l-79.4-79.4c-5.4-5.4-14.2-5.4-19.6 0l-79.4 79.4c-5.4 5.4-5.4 14.2 0 19.6l.2.2c5.4 5.4 14.2 5.4 19.6 0l54.9-54.9.5 161.8-161.8-.5 54.9-54.9c5.4-5.4 5.4-14.2 0-19.6l-.2-.2c-5.4-5.4-14.2-5.4-19.6 0l-79.4 79.4c-5.4 5.4-5.4 14.2 0 19.6l79.4 79.4c5.4 5.4 14.2 5.4 19.6 0l.2-.2c5.4-5.4 5.4-14.2 0-19.6L80 270.5l161.8-.5-.5 161.8-54.9-54.9c-5.4-5.4-14.2-5.4-19.6 0l-.2.2c-5.4 5.4-5.4 14.2 0 19.6l79.4 79.4c5.4 5.4 14.2 5.4 19.6 0l79.4-79.4c5.4-5.4 5.4-14.2 0-19.6l-.2-.2c-5.4-5.4-14.2-5.4-19.6 0l-54.9 54.9-.5-161.8 161.8.5-54.9 54.9c-5.4 5.4-5.4 14.2 0 19.6l.2.2c5.4 5.4 14.2 5.4 19.6 0l79.4-79.4c5.5-5.4 5.5-14.2 0-19.6z"/></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-ok">\n <rect x="0" y="0" width="2048.00" height="2048.00" fill="none" />\n <g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)">\n <path d="M330.323,493.628 L330.323,398.406 L-330.323,398.406 L-330.323,493.628 L330.323,493.628 Z " fill="currentColor" fill-opacity="1.00" />\n <path d="M230.718,468.568 L328.59,468.568 L328.59,-599.718 L230.718,-599.718 L230.718,468.568 Z " fill="currentColor" fill-opacity="1.00" />\n <path d="M-300.714,376.053 L-373.748,449.088 L-68.5805,754.255 L4.45387,681.221 L-300.714,376.053 Z " fill="currentColor" fill-opacity="1.00" />\n <path d="M-9.9476e-14,216.241 L-73.0344,143.207 L-378.202,448.375 L-305.168,521.409 L-9.9476e-14,216.241 Z " fill="currentColor" fill-opacity="1.00" />\n </g>\n </symbol>\n <symbol viewBox="0 0 512 512" id="ion-grid"><path d="M160 153.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM288 153.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM416 153.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5z"></path><g><path d="M160 281.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM288 281.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM416 281.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5z"></path></g><g><path d="M160 409.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM288 409.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5zM416 409.3c0 3.7-3 6.7-6.7 6.7h-50.5c-3.7 0-6.7-3-6.7-6.7v-50.5c0-3.7 3-6.7 6.7-6.7h50.5c3.7 0 6.7 3 6.7 6.7v50.5z"></path></g></symbol>\n <symbol viewBox="0 0 512 512" id="ion-gear-b"><path d="M448 294.4v-76.8h-42.8c-3.4-14.4-8.9-28-16.1-40.5l29.8-29.7-54.3-54.3-29.1 29.1c-12.6-7.7-26.4-13.5-41.1-17.3V64h-76.8v40.9c-14.7 3.8-28.5 9.7-41.1 17.3l-29.1-29.1-54.3 54.3 29.8 29.7c-7.2 12.5-12.6 26.1-16.1 40.5H64v76.8h44.1c3.8 13.7 9.5 26.6 16.7 38.6l-31.7 31.7 54.3 54.3 32.3-32.3c11.7 6.8 24.5 11.9 37.9 15.4v46h76.8v-46c13.5-3.5 26.2-8.6 37.9-15.4l32.3 32.3 54.3-54.3-31.6-31.7c7.2-11.9 12.9-24.8 16.7-38.6h44zm-192 15.4c-29.7 0-53.7-24.1-53.7-53.8s24-53.8 53.7-53.8 53.8 24.1 53.8 53.8-24.1 53.8-53.8 53.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-grid-view-outline"><path d="M448 192v-16H336V64h-16v112H192V64h-16v112H64v16h112v128H64v16h112v112h16V336h128v112h16V336h112v-16H336V192h112zM320 320H192V192h128v128z"></path></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-increase"><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M852.574,595.004 L852.574,507.837 L-852.574,507.837 L-852.574,595.004 L852.574,595.004 Z " /><path d="M852.574,224.232 L852.574,137.066 L-852.574,137.066 L-852.574,224.232 L852.574,224.232 Z " /><path d="M852.574,-134.971 L852.574,-222.138 L-852.574,-222.138 L-852.574,-134.971 L852.574,-134.971 Z " /><path d="M852.574,-505.743 L852.574,-592.909 L-852.574,-592.909 L-852.574,-505.743 L852.574,-505.743 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-decrease"><g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)"><path d="M509.832,595.004 L509.832,507.837 L-509.832,507.837 L-509.832,595.004 L509.832,595.004 Z " /><path d="M509.832,224.232 L509.832,137.066 L-509.832,137.066 L-509.832,224.232 L509.832,224.232 Z " /><path d="M509.832,-136.947 L509.832,-224.113 L-509.832,-224.113 L-509.832,-136.947 L509.832,-136.947 Z " /><path d="M509.832,-505.743 L509.832,-592.909 L-509.832,-592.909 L-509.832,-505.743 L509.832,-505.743 Z " /></g></symbol>\n <symbol viewBox="0 0 2048.0 2048.0" id="icon-strike">\n <g id="document" transform="matrix(1,0,0,1,1024.0,1024.0)">\n <path d="M298.298,-653.766 C292.151,-624.873 284.005,-605.663 273.862,-596.135 C263.719,-586.607 250.656,-581.842 234.673,-581.842 C220.535,-581.842 196.253,-589.526 161.828,-604.895 C87.4454,-637.475 17.0588,-653.766 -49.3321,-653.766 C-155.68,-653.766 -243.28,-621.339 -312.129,-556.485 C-380.979,-491.631 -415.404,-414.328 -415.404,-324.578 C-415.404,-272.94 -403.724,-225.606 -380.364,-182.575 C-357.005,-139.544 -322.733,-100.201 -277.551,-64.5467 C-232.368,-28.8923 -156.295,18.903 -49.3321,78.8392 C57.631,138.775 123.1,177.964 147.074,196.406 C182.729,223.455 209.008,252.654 225.913,284.005 C242.819,315.357 251.271,346.401 251.271,377.137 C251.271,432.463 228.987,480.412 184.419,520.984 C139.851,561.556 79.1465,581.842 2.30524,581.842 C-64.0856,581.842 -125.098,567.089 -180.731,537.582 C-236.364,508.075 -277.704,471.037 -304.753,426.469 C-331.801,381.901 -353.316,314.742 -369.299,224.991 L-403.417,224.991 L-403.417,653.766 L-369.299,653.766 C-364.996,624.873 -358.388,605.817 -349.474,596.596 C-340.561,587.375 -328.42,582.764 -313.051,582.764 C-297.068,582.764 -259.109,592.446 -199.173,611.81 C-139.236,631.174 -99.74,642.393 -80.6834,645.467 C-48.7174,651 -14.5998,653.766 21.6692,653.766 C137.239,653.766 231.753,619.495 305.214,550.952 C378.674,482.41 415.404,400.804 415.404,306.136 C415.404,256.343 403.878,208.701 380.826,163.211 C357.773,117.721 324.885,78.2244 282.161,44.7216 C239.438,11.2188 159.676,-36.8838 42.8774,-99.5863 C-100.355,-176.428 -191.027,-237.901 -229.141,-284.005 C-255.574,-315.357 -268.791,-350.089 -268.791,-388.202 C-268.791,-437.995 -247.89,-482.41 -206.088,-521.445 C-164.287,-560.48 -111.42,-579.998 -47.4879,-579.998 C9.06727,-579.998 63.7783,-565.552 116.645,-536.66 C169.512,-507.767 210.238,-468.732 238.823,-419.554 C267.408,-370.375 287.233,-304.292 298.298,-221.303 L332.415,-221.303 L332.415,-653.766 L298.298,-653.766 Z " fill="currentColor" fill-opacity="1.00" /><path d="M-530.954,-41.4477 L-530.954,41.4477 L530.954,41.4477 L530.954,-41.4477 L-530.954,-41.4477 Z " fill="currentColor" fill-opacity="1.00" /></g></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-undo"><path d="M447.9 368.2c0-16.8 3.6-83.1-48.7-135.7-35.2-35.4-80.3-53.4-143.3-56.2V96L64 224l192 128v-79.8c40 1.1 62.4 9.1 86.7 20 30.9 13.8 55.3 44 75.8 76.6l19.2 31.2H448c0-10.1-.1-22.9-.1-31.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-ios-redo"><path d="M64 400h10.3l19.2-31.2c20.5-32.7 44.9-62.8 75.8-76.6 24.4-10.9 46.7-18.9 86.7-20V352l192-128L256 96v80.3c-63 2.8-108.1 20.7-143.3 56.2C60.4 285.2 64 351.5 64 368.2c.1 8.9 0 21.7 0 31.8z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-arrow-dropdown"><path d="M128 192l128 128 128-128z"></path></symbol>\n <symbol viewBox="0 0 512 512" id="ion-social-twitter"><path d="M492 109.5c-17.4 7.7-36 12.9-55.6 15.3 20-12 35.4-31 42.6-53.6-18.7 11.1-39.4 19.2-61.5 23.5C399.8 75.8 374.6 64 346.8 64c-53.5 0-96.8 43.4-96.8 96.9 0 7.6.8 15 2.5 22.1-80.5-4-151.9-42.6-199.6-101.3-8.3 14.3-13.1 31-13.1 48.7 0 33.6 17.2 63.3 43.2 80.7-16-.4-31-4.8-44-12.1v1.2c0 47 33.4 86.1 77.7 95-8.1 2.2-16.7 3.4-25.5 3.4-6.2 0-12.3-.6-18.2-1.8 12.3 38.5 48.1 66.5 90.5 67.3-33.1 26-74.9 41.5-120.3 41.5-7.8 0-15.5-.5-23.1-1.4C62.8 432 113.7 448 168.3 448 346.6 448 444 300.3 444 172.2c0-4.2-.1-8.4-.3-12.5C462.6 146 479 129 492 109.5z"></path></symbol>\n <symbol viewBox="0 0 24 24" id="icon-zoom-in" stroke-width="1" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">\n <path stroke="none" d="M0 0h24v24H0z" fill="none"></path>\n <circle cx="10" cy="10" r="7"></circle>\n <line x1="7" y1="10" x2="13" y2="10"></line>\n <line x1="10" y1="7" x2="10" y2="13"></line>\n <line x1="21" y1="21" x2="15" y2="15"></line>\n </symbol>\n <symbol viewBox="0 0 512 512" id="ion-android-contract"><path d="M64 371.2h76.795V448H192V320H64v51.2zm76.795-230.4H64V192h128V64h-51.205v76.8zM320 448h51.2v-76.8H448V320H320v128zm51.2-307.2V64H320v128h128v-51.2h-76.8z"></path></symbol>\n \n <symbol viewBox="0 0 24 24" id="icon-lock-off" stroke-width="1" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">\n <path stroke="none" d="M0 0h24v24H0z" fill="none"/>\n <line x1="3" y1="3" x2="21" y2="21" />\n <path d="M19 19a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-6a2 2 0 0 1 2 -2h4m4 0h2a2 2 0 0 1 2 2v2" />\n <circle cx="12" cy="16" r="1" />\n <path d="M8 11v-3m.712 -3.278a4 4 0 0 1 7.288 2.278v4" />\n </symbol>\n <symbol viewBox="0 0 24 24" id="icon-lock" stroke-width="1" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">\n <path stroke="none" d="M0 0h24v24H0z" fill="none"/>\n <rect x="5" y="11" width="14" height="10" rx="2" />\n <circle cx="12" cy="16" r="1" />\n <path d="M8 11v-4a4 4 0 0 1 8 0v4" />\n </symbol>\n <symbol viewBox="0 0 24 24" id="icon-code" stroke-width="1" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">\n <path stroke="none" d="M0 0h24v24H0z"/>\n <polyline points="7 8 3 12 7 16" />\n <polyline points="17 8 21 12 17 16" />\n <line x1="14" y1="4" x2="10" y2="20" />\n </symbol>\n\n </defs>\n </svg>')};class Je{constructor(t){this.builder=t;const e=this.builder.util;this.util=e}getSnippetsHtml(){const t=this.util,e=this.builder.opts.snippetUrl,i=this.builder.opts.snippetPath;let n="[";for(let e=0;e<this.builder.opts.snippetCategories.length;e++)n+=`[${this.builder.opts.snippetCategories[e][0]},'${t.out(this.builder.opts.snippetCategories[e][1])}'],`;n+="]";const o=this.builder.opts.defaultSnippetCategory;return`\n <!DOCTYPE HTML>\n <html>\n \n <head>\n <meta charset="utf-8">\n <title></title>\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <meta name="description" content="">\n <script src="${e}" type="text/javascript"><\/script>\n <style>\n body {\n // background: #fff;\n background: ${this.builder.styleSnippetBackground};\n margin: 0;\n }\n /*\n body.dark {\n background: #111;\n }\n .dark .is-categories {\n background: #333;\n }\n .dark .is-category-list a {\n background: #333;\n color: #fff;\n }\n .dark .is-category-list a.active {\n background: #525252;\n color: #fff;\n }\n .dark .is-category-list a:hover {\n color: #fff;\n }\n .dark .is-design-list>div img {\n opacity: 0.93;\n }\n .dark .is-more-categories {\n background: #333;\n }\n .dark .is-more-categories a {\n background: #333;\n color: #fff;\n }\n .dark .is-more-categories a:hover {\n background: #4c4c4c;\n }\n .dark .is-more-categories a.active {\n background: #4c4c4c;\n }\n */\n\n \n .dark .is-design-list>div {\n outline: transparent 1px solid;\n }\n\n \n \n /* Scrollbar for modal */\n\n /* Darker color, because background for snippet thumbnails is always light. */\n .dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(78 78 78 / 62%) auto;\n }\n .dark *::-webkit-scrollbar {\n width: 12px;\n }\n .dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .dark *::-webkit-scrollbar-thumb {\n background-color:rgb(78 78 78 / 62%);\n } \n\n .colored-dark * {\n scrollbar-width: thin;\n scrollbar-color: rgb(100, 100, 100) auto;\n }\n .colored-dark *::-webkit-scrollbar {\n width: 12px;\n }\n .colored-dark *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored-dark *::-webkit-scrollbar-thumb {\n background-color:rgb(100, 100, 100);\n } \n\n .colored * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .colored *::-webkit-scrollbar {\n width: 12px;\n }\n .colored *::-webkit-scrollbar-track {\n background: transparent;\n }\n .colored *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n\n .light * {\n scrollbar-width: thin;\n scrollbar-color: rgba(0, 0, 0, 0.4) auto;\n }\n .light *::-webkit-scrollbar {\n width: 12px;\n }\n .light *::-webkit-scrollbar-track {\n background: transparent;\n }\n .light *::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.4);\n } \n \n svg {\n fill: ${this.builder.styleSnippetColor};\n }\n\n .is-design-list {\n position: fixed;\n top: 0px;\n left: 0px;\n border-top: transparent 68px solid;\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 0px 0px 30px 30px;\n box-sizing: border-box;\n overflow: auto;\n }\n \n .is-design-list>div {\n width: 250px;\n min-height:120px;\n position:relative;\n background: #fff;\n // background: ${this.builder.styleToolBackground};\n overflow: hidden;\n margin: 32px 40px 0 0;\n cursor: pointer;\n display: inline-block;\n outline: #ececec 1px solid;\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\n }\n \n .is-design-list>div img {\n box-shadow: none;\n opacity: 1;\n display: block;\n box-sizing: border-box;\n transition: all 0.2s ease-in-out;\n max-width: 400px;\n width: 100%\n }\n \n // .is-design-list>div:hover img {\n // opacity: 0.95;\n // }\n \n // .is-design-list>div:hover {\n // background: #999;\n // }\n .is-overlay {\n position:absolute;left:0px;top:0px;width:100%;height:100%;\n }\n .is-design-list>div .is-overlay:after {\n background: rgba(0, 0, 0, 0.02);\n position: absolute;\n content: "";\n display: block;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n transition: all 0.3s ease-in-out;\n opacity: 0;\n }\n .is-design-list>div:hover .is-overlay:after {\n opacity: 0.9;\n }\n .dark .is-design-list>div .is-overlay:after {\n background: rgb(78 78 78 / 13%);\n }\n \n .is-category-list {\n position: relative;\n top: 0px;\n left: 0px;\n width: 100%;\n height: 80px;\n box-sizing: border-box;\n z-index: 1;\n }\n \n .is-category-list>div {\n white-space: nowrap;\n padding: 0 30px;\n box-sizing: border-box;\n font-family: sans-serif;\n font-size: 10px;\n text-transform: uppercase;\n letter-spacing: 2px;\n // background: #f5f5f5;\n background: ${this.builder.styleSnippetTabsBackground};\n // box-shadow: 0 5px 8px rgb(0 0 0 / 4%);\n }\n \n .is-category-list a {\n display: inline-block;\n padding: 10px 20px;\n // background: #fefefe;\n // color: #000;\n background: ${this.builder.styleSnippetTabItemBackground};\n color: ${this.builder.styleSnippetTabItemColor};\n border-radius: 50px;\n \n margin: 0 12px 0 0;\n text-decoration: none;\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.03);\n transition: box-shadow ease 0.3s;\n }\n \n .is-category-list a:hover {\n /*background: #fafafa;*/\n background: ${this.builder.styleSnippetTabItemBackgroundHover};\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.06);\n // color: #000;\n color: ${this.builder.styleSnippetTabItemColor};\n }\n \n .is-category-list a.active {\n // background: #f5f5f5;\n background: ${this.builder.styleSnippetTabItemBackgroundActive};\n // color: #000;\n color: ${this.builder.styleSnippetTabItemColor};\n box-shadow: none;\n cursor: default;\n }\n \n .is-more-categories {\n display: none;\n position: absolute;\n width: 400px;\n box-sizing: border-box;\n padding: 0;\n z-index: 1;\n font-family: sans-serif;\n font-size: 10px;\n text-transform: uppercase;\n letter-spacing: 2px;\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\n // background: #fff;\n background: ${this.builder.styleSnippetMoreItemBackground};\n }\n \n .is-more-categories a {\n width: 200px;\n float: left;\n display: block;\n box-sizing: border-box;\n padding: 12px 20px;\n // background: #fff;\n background: ${this.builder.styleSnippetMoreItemBackground};\n text-decoration: none;\n // color: #000;\n color: ${this.builder.styleSnippetMoreItemColor};\n line-height: 1.6;\n }\n \n .is-more-categories a:hover {\n // background: #eee;\n background: ${this.builder.styleSnippetMoreItemBackgroundHover};\n }\n \n .is-more-categories a.active {\n // background: #eee;\n background: ${this.builder.styleSnippetMoreItemBackgroundActive};\n }\n \n .is-more-categories.active {\n display: block;\n }\n \n /* First Loading */\n /* .is-category-list {\n display: none;\n }\n \n .is-design-list {\n display: none;\n }\n \n .pace {\n -webkit-pointer-events: none;\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n \n .pace-inactive {\n display: none;\n }\n \n .pace .pace-progress {\n background: #000000;\n position: fixed;\n z-index: 2000;\n top: 0;\n right: 100%;\n width: 100%;\n height: 2px;\n } */\n \n .is-more-categories>a:nth-child(0) {\n display: none\n }\n \n .is-more-categories>a:nth-child(1) {\n display: none\n }\n \n .is-more-categories>a:nth-child(2) {\n display: none\n }\n \n .is-more-categories>a:nth-child(3) {\n display: none\n }\n \n .is-more-categories>a:nth-child(4) {\n display: none\n }\n \n .is-more-categories>a:nth-child(5) {\n display: none\n }\n \n .is-more-categories>a:nth-child(6) {\n display: none\n }\n \n .is-more-categories>a:nth-child(7) {\n display: none\n }\n \n @media all and (max-width: 1212px) {\n .is-categories>a:nth-child(7):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(7) {\n display: block\n }\n }\n \n @media all and (max-width: 1070px) {\n .is-categories>a:nth-child(6):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(6) {\n display: block\n }\n }\n \n @media all and (max-width: 940px) {\n .is-categories>a:nth-child(5):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(5) {\n display: block\n }\n }\n \n @media all and (max-width: 700px) {\n .is-categories>a:nth-child(4):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(4) {\n display: block\n }\n }\n \n @media all and (max-width: 555px) {\n .is-categories>a:nth-child(3):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(3) {\n display: block\n }\n }\n \n @media all and (max-width: 415px) {\n .is-categories>a:nth-child(2):not(.more-snippets) {\n display: none\n }\n \n .is-more-categories>a:nth-child(2) {\n display: block\n }\n }\n \n @media all and (max-width: 640px) {\n .is-more-categories a {\n width: 150px;\n padding: 10px 5px 10px 15px;\n font-size: 10px;\n }\n \n .is-more-categories {\n left: 0 !important;\n width: 100% !important;\n }\n }\n </style>\n </head>\n \n <body${this.builder.styleDark?' class="dark"':""}${this.builder.styleColored?' class="colored"':""}${this.builder.styleColoredDark?' class="colored-dark"':""}${this.builder.styleLight?' class="light"':""}>\n\n <svg style="display:none">\n <defs>\n <symbol viewBox="0 0 512 512" id="ion-ios-close-empty">\n <path d="M340.2 160l-84.4 84.3-84-83.9-11.8 11.8 84 83.8-84 83.9 11.8 11.7 84-83.8 84.4 84.2 11.8-11.7-84.4-84.3 84.4-84.2z"></path>\n </symbol>\n </defs>\n </svg>\n \n <div class="is-pop-close"\n style="z-index:10;width:30px;height:30px;position:absolute;top:0px;right:0px;box-sizing:border-box;padding:0;line-height:40px;font-size: 12px;text-align:center;cursor:pointer;">\n <svg class="is-icon-flex" style="width:30px;height:30px;">\n <use xlink:href="#ion-ios-close-empty"></use>\n </svg>\n </div>\n \n <div class="is-category-list">\n <div class="is-categories" style="position:fixed;top:0;left:0;right:0;height:68px;padding-top:17px;box-sizing:border-box;">\n </div>\n </div>\n\n <div class="is-more-categories">\n </div>\n \n <div class="is-design-list">\n </div>\n \n <script>\n \n var snippetPath = '${i}';\n var snippetCategories = ${n};\n var defaultSnippetCategory = ${o};\n\n ${void 0!==this.builder.slider&&null!==this.builder.slider?`\n var slider='${this.builder.slider}';`:"var slider=null;"};\n \n var numOfCat = snippetCategories.length;\n if (numOfCat <= 7) {\n document.querySelector('.is-more-categories').style.width = '200px';\n }\n \n var categorytabs = document.querySelector('.is-categories');\n categorytabs.innerHTML = '';\n let html_catselect = '';\n for (var i = 0; i < numOfCat; i++) {\n if (i < 7) {\n html_catselect += '<a href="" data-cat="' + snippetCategories[i][0] + '">' + parent._cb.out(snippetCategories[i][1]) + '</a>';\n }\n }\n html_catselect += '<a href="" class="more-snippets">' + parent._cb.out('More') + '</a>';\n categorytabs.innerHTML = html_catselect;\n \n var categorymore = document.querySelector('.is-more-categories');\n html_catselect = '';\n for (var i = 0; i < numOfCat; i++) {\n html_catselect += '<a href="" data-cat="' + snippetCategories[i][0] + '">' + parent._cb.out(snippetCategories[i][1]) + '</a>';\n }\n categorymore.innerHTML = html_catselect;\n \n // Show/hide "More" button\n if (numOfCat <= 7) {\n var bHasMore = false;\n \n const childNodes = categorymore.childNodes;\n let i = childNodes.length;\n while (i--) {\n if(childNodes[i].style.display === 'block') {\n bHasMore = true;\n }\n }\n var more = document.querySelector('.more-snippets');\n if (!bHasMore) more.style.display = 'none';\n else more.style.display = '';\n }\n \n var elms = categorytabs.querySelectorAll('a[data-cat="' + defaultSnippetCategory + '"]'); //.classList.add('active');\n Array.prototype.forEach.call(elms, function(elm){\n elm.classList.add('active');\n });\n elms = categorymore.querySelectorAll('a[data-cat="' + defaultSnippetCategory + '"]'); //.classList.add('active');\n Array.prototype.forEach.call(elms, function(elm){\n elm.classList.add('active');\n });\n \n var snippets = data_basic.snippets; //DATA\n\n if (slider !== null){\n if(slider==='slick') {\n //remove glide\n const predicate = (item) => (item.type!=='glide');\n snippets = snippets.filter(predicate);\n } else if(slider==='glide') {\n //remove slick\n const predicate = (item) => (item.type!=='slick');\n snippets = snippets.filter(predicate);\n } else if(slider==='all') {\n // Do Nothing\n } else {\n // remove all slider (if incorrect settings)\n const predicate = (item) => (item.type!=='glide' && item.type!=='slick');\n snippets = snippets.filter(predicate);\n }\n\n } else {\n //backward compatible\n\n // Hide slider snippet if slick is not included\n var bHideSliderSnippet = true;\n if(parent.jQuery) {\n if(parent.jQuery.fn.slick) {\n bHideSliderSnippet = false;\n }\n }\n \n if(bHideSliderSnippet){\n for (let i = 0; i < snippets.length; i++) {\n if (snippets[i].thumbnail.indexOf('element-slider.png') != -1||\n snippets[i].type === 'slick'||\n snippets[i].type === 'glide') {\n snippets.splice(i, 1);\n break;\n }\n }\n } \n }\n \n var designlist = document.querySelector('.is-design-list');\n for (let i = 0; i <snippets.length; i++) {\n \n snippets[i].id = i+1;\n var thumb = snippets[i].thumbnail;\n \n thumb = snippetPath + thumb;\n \n if (snippets[i].category === defaultSnippetCategory + '') {\n designlist.insertAdjacentHTML('beforeend', '<div data-id="' + snippets[i].id + '" data-cat="' + snippets[i].category + '"><img src="' + thumb + '"><span class="is-overlay"></span></div>');\n \n var newitem = designlist.querySelector('[data-id="' + snippets[i].id + '"]');\n newitem.addEventListener('click', function(e){\n \n var snippetid = e.target.parentNode.getAttribute('data-id');\n addSnippet(snippetid);\n \n });\n \n }\n \n }\n \n var categorylist = document.querySelector('.is-category-list');\n elms = categorylist.querySelectorAll('a');\n Array.prototype.forEach.call(elms, function(elm){\n \n elm.addEventListener('click', function(e){\n \n if(elm.classList.contains('active')) {\n e.preventDefault();\n return false;\n }\n \n var cat = elm.getAttribute('data-cat');\n if(designlist.querySelectorAll('[data-cat="' + cat + '"]').length === 0) {\n \n for (let i = 0; i <snippets.length; i++) {\n \n var thumb = snippets[i].thumbnail;\n \n thumb = snippetPath + thumb; \n \n if (snippets[i].category === cat) {\n designlist.insertAdjacentHTML('beforeend', '<div data-id="' + snippets[i].id + '" data-cat="' + snippets[i].category + '"><img src="' + thumb + '"><span class="is-overlay"></span></div>');\n \n var newitem = designlist.querySelector('[data-id="' + snippets[i].id + '"]');\n newitem.addEventListener('click', function(e){\n \n var snippetid = e.target.parentNode.getAttribute('data-id');\n addSnippet(snippetid);\n \n });\n }\n \n } \n }\n \n if (cat) {\n // Hide all, show items from selected category\n var categorylist_items = categorylist.querySelectorAll('a'); \n Array.prototype.forEach.call(categorylist_items, function(elm){\n elm.className = elm.className.replace('active', '');\n });\n categorymore.className = categorymore.className.replace('active', ''); \n var categorymore_items = categorymore.querySelectorAll('a');\n Array.prototype.forEach.call(categorymore_items, function(elm){\n elm.className = elm.className.replace('active', '');\n });\n \n var items = designlist.querySelectorAll('div');\n Array.prototype.forEach.call(items, function(elm){\n elm.style.display = 'none';\n });\n Array.prototype.forEach.call(items, function(elm){\n var catSplit = elm.getAttribute('data-cat').split(',');\n for (var j = 0; j < catSplit.length; j++) {\n if (catSplit[j] == cat) {\n elm.style.display = ''; // TODO: hide & show snippets => animated\n }\n }\n });\n \n } else {\n // more snipptes\n var more = document.querySelector('.more-snippets');\n var moreCategories = document.querySelector('.is-more-categories');\n if(more.classList.contains('active')) {\n more.className = more.className.replace('active', '');\n moreCategories.className = moreCategories.className.replace('active', '');\n } else {\n var _width = moreCategories.offsetWidth;\n more.classList.add('active');\n moreCategories.classList.add('active');\n var top = more.getBoundingClientRect().top;\n var left = more.getBoundingClientRect().left;\n top = top + 50;\n moreCategories.style.top = top + 'px';\n moreCategories.style.left = left + 'px';\n }\n }\n elm.classList.add('active');\n \n e.preventDefault();\n });\n \n });\n \n elms = categorymore.querySelectorAll('a');\n Array.prototype.forEach.call(elms, function(elm){\n \n elm.addEventListener('click', function(e){\n \n var cat = elm.getAttribute('data-cat');\n if(designlist.querySelectorAll('[data-cat="' + cat + '"]').length === 0) {\n \n for (let i = 0; i <snippets.length; i++) {\n \n var thumb = snippets[i].thumbnail;\n \n thumb = snippetPath + thumb;\n \n if (snippets[i].category === cat) {\n \n designlist.insertAdjacentHTML('beforeend', '<div data-id="' + snippets[i].id + '" data-cat="' + snippets[i].category + '"><img src="' + thumb + '"><span class="is-overlay"></span></div>');\n \n var newitem = designlist.querySelector('[data-id="' + snippets[i].id + '"]');\n newitem.addEventListener('click', function(e){\n \n var snippetid = e.target.parentNode.getAttribute('data-id');\n addSnippet(snippetid);\n \n });\n }\n \n } \n }\n \n // Hide all, show items from selected category\n Array.prototype.forEach.call(elms, function(elm){\n elm.className = elm.className.replace('active', '');\n });\n categorymore.className = categorymore.className.replace('active', ''); // hide popup\n //var categorymore_items = categorymore.querySelectorAll('a');\n \n var categorylist = document.querySelector('.is-category-list');\n var categorylist_items = categorylist.querySelectorAll('a'); \n Array.prototype.forEach.call(categorylist_items, function(elm){\n elm.className = elm.className.replace('active', '');\n });\n \n var more = document.querySelector('.more-snippets');\n more.className = more.className.replace('active', '');\n \n var items = designlist.querySelectorAll('div');\n Array.prototype.forEach.call(items, function(elm){\n elm.style.display = 'none';\n });\n Array.prototype.forEach.call(items, function(elm){\n var catSplit = elm.getAttribute('data-cat').split(',');\n for (var j = 0; j < catSplit.length; j++) {\n if (catSplit[j] == cat) {\n elm.style.display = '';\n }\n }\n });\n \n elm.classList.add('active');\n \n e.preventDefault();\n });\n \n });\n \n var close = document.querySelector('.is-pop-close');\n close.addEventListener('click', function(e){\n var modal = parent.document.querySelector('.is-modal.snippets');\n removeClass(modal, 'active');\n });\n \n // Add document Click event\n document.addEventListener('click', function(e){\n e = e || window.event;\n var target = e.target || e.srcElement; \n \n if(parentsHasClass(target, 'more-snippets')) return;\n if(hasClass(target, 'more-snippets')) return;\n \n var more = document.querySelector('.more-snippets');\n var moreCategories = document.querySelector('.is-more-categories');\n \n more.className = more.className.replace('active', '');\n moreCategories.className = moreCategories.className.replace('active', '');\n });\n \n parent.document.addEventListener('click', function(e){\n var more = document.querySelector('.more-snippets');\n var moreCategories = document.querySelector('.is-more-categories');\n \n more.className = more.className.replace('active', '');\n moreCategories.className = moreCategories.className.replace('active', '');\n });\n \n function addSnippet(snippetid) {\n \n // TODO: var framework = parent._cb.opts.framework;\n var snippetPathReplace = parent._cb.opts.snippetPathReplace;\n var emailMode = parent._cb.opts.emailMode;\n \n // \n for (let i = 0; i <snippets.length; i++) {\n if(snippets[i].id + ''=== snippetid) {\n \n var html = snippets[i].html;\n var noedit = snippets[i].noedit;\n break;\n }\n }\n \n var bSnippet;\n if (html.indexOf('row clearfix') === -1) {\n bSnippet = true; // Just snippet (without row/column grid)\n } else {\n bSnippet = false; // Snippet is wrapped in row/colum\n }\n if (emailMode) bSnippet = false;\n\n if(bSnippet) {\n var quickadd = parent._cb.builderStuff.querySelector('.quickadd');\n var mode = quickadd.getAttribute('data-mode');\n if(!mode) {\n // in case of using viewSnippets() to open the dialog (mode=null) => change to non snippet.\n html = '<div class="row clearfix">' +\n '<div class="column full">' +\n html +\n '</div>' +\n '</div>';\n bSnippet=false;\n }\n }\n \n // Convert snippet into your defined 12 columns grid \n var rowClass = parent._cb.opts.row; //row\n var colClass = parent._cb.opts.cols; //['col s1', 'col s2', 'col s3', 'col s4', 'col s5', 'col s6', 'col s7', 'col s8', 'col s9', 'col s10', 'col s11', 'col s12']\n if(rowClass!=='' && colClass.length===12){\n html = html.replace(new RegExp('row clearfix', 'g'), rowClass);\n html = html.replace(new RegExp('column full', 'g'), colClass[11]);\n html = html.replace(new RegExp('column half', 'g'), colClass[5]);\n html = html.replace(new RegExp('column third', 'g'), colClass[3]);\n html = html.replace(new RegExp('column fourth', 'g'), colClass[2]);\n html = html.replace(new RegExp('column fifth', 'g'), colClass[1]);\n html = html.replace(new RegExp('column sixth', 'g'), colClass[1]);\n html = html.replace(new RegExp('column two-third', 'g'), colClass[7]);\n html = html.replace(new RegExp('column two-fourth', 'g'), colClass[8]);\n html = html.replace(new RegExp('column two-fifth', 'g'), colClass[9]);\n html = html.replace(new RegExp('column two-sixth', 'g'), colClass[9]);\n }\n \n html = html.replace(/{id}/g, makeid()); // Replace {id} with auto generated id (for custom code snippet)\n \n if(parent._cb.opts.onAdd){\n html = parent._cb.opts.onAdd(html);\n }\n\n if(snippetPathReplace.length>0) {\n if (snippetPathReplace[0] != '') {\n var regex = new RegExp(snippetPathReplace[0], 'g');\n html = html.replace(regex, snippetPathReplace[1]);\n\n /* for encoded replace, change / to %2F */\n var slash = new RegExp('/', 'g');\n var snippetPathReplace_0 = snippetPathReplace[0].replace(slash, '%2F');\n var snippetPathReplace_1 = snippetPathReplace[1].replace(slash, '%2F');\n regex = new RegExp(snippetPathReplace_0, 'g');\n html = html.replace(regex, snippetPathReplace_1);\n }\n }\n \n parent._cb.addSnippet(html, bSnippet, noedit);\n \n var modal = parent.document.querySelector('.is-modal.snippets');\n removeClass(modal, 'active');\n \n }\n \n function hasClass(element, classname) {\n if(!element) return false;\n return element.classList ? element.classList.contains(classname) : new RegExp('\\b'+ classname+'\\b').test(element.className);\n }\n \n function removeClass(element, classname) {\n if(!element) return;\n if(element.classList.length>0) {\n element.className = element.className.replace(classname, '');\n }\n }\n \n function parentsHasClass(element, classname) {\n while (element) {\n if(element.tagName === 'BODY' || element.tagName === 'HTML') return false;\n if(!element.classList) return false;\n if (element.classList.contains(classname)) {\n return true;\n }\n element = element.parentNode;\n }\n }\n \n function makeid() {//http://stackoverflow.com/questions/1349404/generate-a-string-of-5-random-characters-in-javascript\n var text = "";\n var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";\n for (var i = 0; i < 2; i++)\n text += possible.charAt(Math.floor(Math.random() * possible.length));\n \n var text2 = "";\n var possible2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";\n for (var i = 0; i < 5; i++)\n text2 += possible2.charAt(Math.floor(Math.random() * possible2.length));\n \n return text + text2;\n }\n \n <\/script>\n \n </textarea>\n </body>\n \n </html>\n `}}const Qe=new e,ti=t=>{const e=t.util,i=t.builderStuff;let n=i.querySelector(".quickadd");if(!n){const o=`<div class="is-pop quickadd arrow-right" style="z-index:10003;">\n <div class="is-pop-close" style="display:none;z-index:1;width:40px;height:40px;position:absolute;top:0px;right:0px;box-sizing:border-box;padding:0;line-height:40px;font-size: 12px;color:#777;text-align:center;cursor:pointer;"><svg class="is-icon-flex" style="width:40px;height:40px;"><use xlink:href="#ion-ios-close-empty"></use></svg></div>\n <div class="is-pop-tabs">\n <div class="is-pop-tab-item" data-value="left">${e.out("Add to Left")}</div>\n <div class="is-pop-tab-item active" data-value="right">${e.out("Add to Right")}</div>\n </div>\n <div style="padding:12px;display:flex;flex-direction:row;flex-flow: wrap;justify-content: center;align-items: center;">\n <button title="${e.out("Paragraph")}" class="add-paragraph"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:12px;height:12px;"><use xlink:href="#icon-align-full"></use></svg></span>${e.out("Paragraph")}</button>\n <button title="${e.out("Headline")}" class="add-headline"><span style="font-family:serif;display:block;margin:0 0 8px;font-size:11px;">H</span>${e.out("Headline")}</button>\n <button title="${e.out("Image")}" class="add-image"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex ion-image" style="width:14px;height:14px;"><use xlink:href="#ion-image"></use></svg></span>${e.out("Image")}</button>\n <button title="${e.out("List")}" class="add-list"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#icon-list-bullet"></use></svg></span>${e.out("List")}</button>\n <button title="${e.out("Heading 1")}" class="add-heading1"><span style="font-family:serif;display:block;margin:0 0 8px;">H1</span>${e.out("Heading 1")}</button>\n <button title="${e.out("Heading 2")}" class="add-heading2"><span style="font-family:serif;display:block;margin:0 0 8px;">H2</span>${e.out("Heading 2")}</button>\n <button title="${e.out("Heading 3")}" class="add-heading3"><span style="font-family:serif;display:block;margin:0 0 8px;">H3</span>${e.out("Heading 3")}</button>\n <button title="${e.out("Heading 4")}" class="add-heading4"><span style="font-family:serif;display:block;margin:0 0 8px;">H4</span>${e.out("Heading 4")}</button>\n <button title="${e.out("Quote")}" class="add-quote"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-quote"></use></svg></span>${e.out("Quote")}</button>\n <button title="${e.out("Preformatted")}" class="add-preformatted"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-code"></use></svg></span>${e.out("Preformatted")}</button>\n ${t.opts.emailMode?"":`<button title="${e.out("Button")}" class="add-button"><span style="display:block;margin:0 0 8px;"><span style="display:inline-block;border:#a1a1a1 1px solid;background:#f3f3f3;width:10px;height:4px;"></span></span>${e.out("Button")}</button>`}\n ${t.opts.emailMode?"":`<button title="${e.out("Two Button")}" class="add-twobutton"><span style="display:block;margin:0 0 8px;"><span style="display:inline-block;border:#a1a1a1 1px solid;background:#f3f3f3;width:10px;height:4px;"></span></span>${e.out("Two Button")}</button>`}\n <button title="${e.out("Youtube")}" class="add-youtube"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-social-youtube-outline"></use></svg></use></svg></svg></span>${e.out("Youtube")}</button>\n <button title="${e.out("Video")}" class="add-video"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-ios-play"></use></svg></use></svg></svg></span>${e.out("Video")}</button>\n <button title="${e.out("Map")}" class="add-map"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-location"></use></svg></use></svg></svg></span>${e.out("Map")}</button>\n <button title="${e.out("Table")}" class="add-table"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:15px;height:15px;"><use xlink:href="#icon-table"></use></svg></use></svg></svg></span>${e.out("Table")}</button>\n <button title="${e.out("Icon")}" class="add-icon"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-android-happy"></use></svg></use></svg></svg></span>${e.out("Icon")}</button>\n <button title="${e.out("Social Links")}" class="add-social"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#ion-social-twitter"></use></svg></use></svg></svg></span>${e.out("Social Links")}</button>\n <button title="${e.out("HTML/JS")}" class="add-code"><span style="display:block;margin:0 0 8px;"><svg class="is-icon-flex" style="width:13px;height:13px;"><use xlink:href="#icon-code"></use></svg></use></svg></svg></span>${e.out("HTML/JS")}</button>\n <button title="${e.out("Spacer")}" class="add-spacer"><span style="display:block;margin:0 0 8px;"><span style="display:inline-block;background:#eee;width:30px;height:5px;"></span></span>${e.out("Spacer")}</button>\n <div class="pop-separator"></div>\n <button title="${e.out("More...")}" class="add-more" style="flex-direction:initial;">${e.out("More...")}</button>\n </div>\n </div>\n \n <div class="is-modal snippets">\n <div class="is-modal-content" style="max-width:1250px;height:90%;padding:0;">\n <iframe style="width:100%;height:100%;border: none;display: block;" src="about:blank"></iframe>\n </div>\n </div>\n `;Qe.appendHtml(i,o),n=i.querySelector(".quickadd"),document.addEventListener("click",(t=>{var e=(t=t||window.event).target||t.srcElement;if("flex"===n.style.display){let t=Qe.parentsHasClass(e,"quickadd"),i=Qe.parentsHasClass(e,"row-add"),o=Qe.parentsHasClass(e,"is-rowadd-tool"),s=Qe.parentsHasClass(e,"cell-add"),r=Qe.parentsHasClass(e,"elm-add"),l=Qe.parentsHasClass(e,"row-add-initial");if(t||i||o||s||r||l)return;n.style.display=""}}));let s=n.querySelectorAll(".is-pop-tab-item");Array.prototype.forEach.call(s,(t=>{Qe.addEventListener(t,"click",(t=>{let e=n.querySelectorAll(".is-pop-tab-item");Array.prototype.forEach.call(e,(t=>{Qe.removeClass(t,"active")})),Qe.addClass(t.target,"active"),"left"===n.querySelector(".active").getAttribute("data-value")?n.setAttribute("data-mode","cell-left"):n.setAttribute("data-mode","cell-right")}))}));let r=n.querySelector(".add-paragraph");Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. \n Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, \n when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>",t)})),r=n.querySelector(".add-headline"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="display">\n <h1>Headline Goes Here</h1>\n <p>Lorem Ipsum is simply dummy text</p>\n </div>',t)})),r=n.querySelector(".add-image"),Qe.addEventListener(r,"click",(()=>{const i=n.getAttribute("data-mode");let o=`<img onload="imageLoaded(this)" src="${t.opts.snippetPath}example.png" alt="" />`;t.opts.snippetSampleImage&&(o=`<img onload="imageLoaded(this)" src="${t.opts.snippetSampleImage}" alt="" />`),e.addContent(o,i)})),r=n.querySelector(".add-heading1"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<h1>Heading 1 here</h1>",t)})),r=n.querySelector(".add-heading2"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<h2>Heading 2 here</h2>",t)})),r=n.querySelector(".add-heading3"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<h3>Heading 3 here</h3>",t)})),r=n.querySelector(".add-heading4"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<h4>Heading 4 here</h4>",t)})),r=n.querySelector(".add-preformatted"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<pre>Lorem Ipsum is simply dummy text of the printing and typesetting industry. \n Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, \n when an unknown printer took a galley of type and scrambled it to make a type specimen book.</pre>",t)})),r=n.querySelector(".add-list"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<ul style="list-style: initial;padding-left: 20px;">\n <li>Lorem Ipsum is simply dummy text</li>\n <li>Lorem Ipsum is simply dummy text</li>\n </ul>',t)})),r=n.querySelector(".add-quote"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent("<blockquote>Lorem Ipsum is simply dummy text</blockquote>",t)})),r=n.querySelector(".add-button"),r&&Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div><a href="#" style="margin-top: ;margin-right: ;margin-bottom: ;margin-left: ;display: inline-block; text-decoration: none; transition: all 0.16s ease 0s; border-style: solid; cursor: pointer; background-color: rgb(220, 220, 220); color: rgb(0, 0, 0); border-color: rgb(220, 220, 220); border-width: 2px; border-radius: 0px; padding: 13px 28px; line-height: 21px; text-transform: uppercase; font-weight: 400; font-size: 14px; letter-spacing: 3px;">Read More</a></div>',t)})),r=n.querySelector(".add-twobutton"),r&&Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div>\n <a href="#" style="margin-top: ;margin-right: ;margin-bottom: ;margin-left: ;display: inline-block; text-decoration: none; transition: all 0.16s ease 0s; border-style: solid; cursor: pointer; background-color: rgb(220, 220, 220); color: rgb(0, 0, 0); border-color: rgb(220, 220, 220); border-width: 2px; border-radius: 0px; padding: 13px 28px; line-height: 21px; text-transform: uppercase; font-weight: 400; font-size: 14px; letter-spacing: 3px;">Read More</a> &nbsp;\n <a href="#" style="display: inline-block; text-decoration: none; transition: all 0.16s ease 0s; border-style: solid; cursor: pointer; background-color: rgba(0, 0, 0, 0); border-color: rgb(53, 53, 53); border-width: 2px; border-radius: 0px; padding: 13px 28px; line-height: 21px; text-transform: uppercase; font-weight: 600; font-size: 14px; letter-spacing: 3px; color: rgb(53, 53, 53);">Get Started</a>\n </div>',t)})),r=n.querySelector(".add-spacer"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="spacer height-80"></div>',t)})),r=n.querySelector(".add-code"),Qe.addEventListener(r,"click",(()=>{let i='<div class="row clearfix"><div class="column full" data-noedit data-html="'+encodeURIComponent("<h1 id=\"{id}\">Lorem ipsum</h1><p>This is a code block. You can edit this block using the source dialog.</p><script>var docReady = function (fn) {var stateCheck = setInterval(function () {if (document.readyState !== \"complete\") return;clearInterval(stateCheck);try{fn()}catch(e){}}, 1);};docReady(function() {document.querySelector('#{id}').innerHTML ='<b>Hello World..!</b>';});<\/script>")+'"></div></div>',n=t.opts.snippetPathReplace,o=t.opts.row,s=t.opts.cols;if(""!==o&&12===s.length&&(i=i.replace(new RegExp("row clearfix","g"),o),i=i.replace(new RegExp("column full","g"),s[11]),i=i.replace(new RegExp("column half","g"),s[5]),i=i.replace(new RegExp("column third","g"),s[3]),i=i.replace(new RegExp("column fourth","g"),s[2]),i=i.replace(new RegExp("column fifth","g"),s[1]),i=i.replace(new RegExp("column sixth","g"),s[1]),i=i.replace(new RegExp("column two-third","g"),s[7]),i=i.replace(new RegExp("column two-fourth","g"),s[8]),i=i.replace(new RegExp("column two-fifth","g"),s[9]),i=i.replace(new RegExp("column two-sixth","g"),s[9])),i=i.replace(/{id}/g,e.makeId()),t.opts.onAdd&&(i=t.opts.onAdd(i)),n.length>0&&""!==n[0]){let t=new RegExp(n[0],"g");i=i.replace(t,n[1])}t.addSnippet(i,!1,!0)})),r=n.querySelector(".add-table"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<table class="default" style="border-collapse:collapse;width:100%;">\n <thead>\n <tr>\n <td><br></td>\n <td><br></td>\n </tr>\n </thead>\n <tr>\n <td><br></td>\n <td><br></td>\n </tr>\n </table>',t)})),r=n.querySelector(".add-icon"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div style="text-align: center;">\n <i class="icon ion-android-alarm-clock size-80"></i>\n </div>',t)})),r=n.querySelector(".add-social"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="is-social" style="text-align: center;">\n <a href="https://twitter.com/"><i class="icon ion-social-twitter" style="margin-right: 1em"></i></a>\n <a href="https://www.facebook.com/"><i class="icon ion-social-facebook" style="margin-right: 1em"></i></a>\n <a href="mailto:you@example.com"><i class="icon ion-android-drafts"></i></a>\n </div>',t)})),r=n.querySelector(".add-map"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="embed-responsive embed-responsive-16by9">\n <iframe width="100%" height="400" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" class="mg1" src="https://maps.google.com/maps?q=Melbourne,+Victoria,+Australia&amp;hl=en&amp;sll=-7.981898,112.626504&amp;sspn=0.009084,0.016512&amp;oq=melbourne&amp;hnear=Melbourne+Victoria,+Australia&amp;t=m&amp;z=10&amp;output=embed"></iframe>\n </div>',t)})),r=n.querySelector(".add-youtube"),Qe.addEventListener(r,"click",(()=>{const t=n.getAttribute("data-mode");e.addContent('<div class="embed-responsive embed-responsive-16by9">\n <iframe width="560" height="315" src="https://www.youtube.com/embed/P5yHEKqx86U?rel=0" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe>\n </div>',t)})),r=n.querySelector(".add-video"),Qe.addEventListener(r,"click",(()=>{const i=n.getAttribute("data-mode");let o=`<video style="width: 100%;" loop="" autoplay="">\n <source src="${t.opts.snippetPath}example.mp4" type="video/mp4"></video>`;t.opts.snippetSampleVideo&&(o=`<video style="width: 100%;" loop="" autoplay="">\n <source src="${t.opts.snippetSampleVideo}" type="video/mp4"></video>`),e.addContent(o,i)}));const l=new Je(t);r=n.querySelector(".add-more"),Qe.addEventListener(r,"click",(()=>{let t=i.querySelector(".snippets");e.showModal(t,!1,null,!1);var o=t.querySelector("iframe").contentWindow.document;""===o.body.innerHTML&&(o.open(),o.write(l.getSnippetsHtml()),o.close()),n.style.display=""}))}return n},ei=new e;class ii{constructor(e){this.builder=e,this.columnTool=new oi(e),this.rowTool=new ni(e),this.util=new t(this.builder)}moveColumnPrevious(){let t=this.columnTool;const e=this.util.cellSelected();e&&e.previousElementSibling&&(this.builder.uo.saveForUndo(),e.parentElement.insertBefore(e,e.previousElementSibling),t.position(e),this.builder.opts.onChange())}moveColumnNext(){let t=this.columnTool,e=this.util;const i=e.cellSelected();if(!i)return;const n=e.cellNext(i);n&&(this.builder.uo.saveForUndo(),i.parentElement.insertBefore(n,i),t.position(i),this.builder.opts.onChange())}moveColumnUp(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o=n.parentNode,s=2;if(o.querySelector(".is-row-overlay")&&(s=3),o.childElementCount-s==1){if(!o.previousElementSibling)return;{let i=4;if(this.builder.maxColumns&&(i=this.builder.maxColumns),o.previousElementSibling.childElementCount>=i+s||o.previousElementSibling.hasAttribute("data-protected"))return this.builder.uo.saveForUndo(),o.parentNode.insertBefore(o,o.previousElementSibling),e.position(n),void this.builder.opts.onChange();{this.builder.uo.saveForUndo();let i=o.previousElementSibling.querySelector(".is-row-tool");o.previousElementSibling.removeChild(i),i=o.previousElementSibling.querySelector(".is-rowadd-tool"),o.previousElementSibling.removeChild(i),o.previousElementSibling.appendChild(n),o.parentNode.removeChild(o);let s=document.querySelector(".builder-active");t.applyBehaviorOn(s),e.position(n),n.click(),this.builder.opts.onChange()}}}else{this.builder.uo.saveForUndo();var r=o.cloneNode(!0);r.innerHTML="",r.appendChild(n),o.parentNode.insertBefore(r,o);let i=document.querySelector(".builder-active");t.applyBehaviorOn(i),e.position(n),n.click(),this.builder.opts.onChange()}o=n.parentNode,i.fixLayout(o,t),o.nextElementSibling&&i.fixLayout(o.nextElementSibling,t)}moveColumnDown(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o=n.parentNode,s=2;if(o.querySelector(".is-row-overlay")&&(s=3),o.childElementCount-s==1){if(!o.nextElementSibling)return;{let i=4;if(this.builder.maxColumns&&(i=this.builder.maxColumns),o.nextElementSibling.childElementCount>=i+s||o.nextElementSibling.hasAttribute("data-protected"))return this.builder.uo.saveForUndo(),o.parentNode.insertBefore(o.nextElementSibling,o),e.position(n),void this.builder.opts.onChange();{this.builder.uo.saveForUndo();let i=o.nextElementSibling.querySelector(".is-row-tool");o.nextElementSibling.removeChild(i),i=o.nextElementSibling.querySelector(".is-rowadd-tool"),o.nextElementSibling.removeChild(i),o.nextElementSibling.appendChild(n),o.parentNode.removeChild(o);let s=document.querySelector(".builder-active");t.applyBehaviorOn(s),e.position(n),n.click(),this.builder.opts.onChange()}}}else{this.builder.uo.saveForUndo();var r=o.cloneNode(!0);r.innerHTML="",r.appendChild(n),ei.moveAfter(r,o);let i=document.querySelector(".builder-active");t.applyBehaviorOn(i),e.position(n),n.click(),this.builder.opts.onChange()}o=n.parentNode,i.fixLayout(o,t),o.previousElementSibling&&i.fixLayout(o.previousElementSibling,t)}duplicateColumn(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;this.builder.uo.saveForUndo();var o=n.cloneNode(!0);ei.removeClass(o,"cell-active"),o.removeAttribute("data-click");let s=n.parentNode,r=2;s.querySelector(".is-row-overlay")&&(r=3);let l=4;if(this.builder.maxColumns&&(l=this.builder.maxColumns),s.childElementCount>=l+r)return alert(i.out("You have reached the maximum number of columns")),!1;s.insertBefore(o,n),i.fixLayout(s,t);let a=document.querySelector(".builder-active");t.applyBehaviorOn(a),e.position(n),n.click(),this.builder.opts.onChange()}removeColumn(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o=n.parentNode,s=2;o.querySelector(".is-row-overlay")&&(s=3),e.hide(),i.confirm(i.out("Are you sure you want to delete this block?"),(r=>{r?(this.builder.uo.saveForUndo(),o.childElementCount-s==1?(o.parentNode.removeChild(o),i.checkEmpty()):(o.removeChild(n),i.fixLayout(o,t)),i.clearActiveCell(),this.builder.opts.onChange()):setTimeout((()=>{e.position(n),e.show()}),200)}))}increaseColumn(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o,s=i.cellNext(n);if(s)o=i.cellNext(s),o||(o=n.previousElementSibling);else{if(s=n.previousElementSibling,!s)return;o=s.previousElementSibling}const r=t.opts.row,l=t.opts.cols,a=t.opts.colsizes;if(""!==r&&l.length>0&&a.length>0){if(o)for(let t=0;t<a.length;t++){let i=a[t];for(let t=0;t<i.length;t++)if(3===i[t].length&&ei.hasClass(n,i[t][0])&&ei.hasClass(s,i[t][1])&&ei.hasClass(o,i[t][2])&&t+1!==i.length)return this.builder.uo.saveForUndo(),ei.removeClass(n,i[t][0]),ei.removeClass(s,i[t][1]),ei.removeClass(o,i[t][2]),ei.addClass(n,i[t+1][0]),ei.addClass(s,i[t+1][1]),ei.addClass(o,i[t+1][2]),e.position(n),void this.builder.opts.onChange()}for(let t=0;t<a.length;t++){let i=a[t];for(let t=0;t<i.length;t++)if(2===i[t].length&&ei.hasClass(n,i[t][0])&&ei.hasClass(s,i[t][1])&&t+1!==i.length)return this.builder.uo.saveForUndo(),ei.removeClass(n,i[t][0]),ei.removeClass(s,i[t][1]),ei.addClass(n,i[t+1][0]),ei.addClass(s,i[t+1][1]),e.position(n),void this.builder.opts.onChange()}e.position(n)}else if(""!==r&&l.length>0&&!ei.hasClass(n,l[11])){if(ei.hasClass(n,l[11]))return;if(ei.hasClass(s,l[0]))return;this.builder.uo.saveForUndo(),ei.hasClass(n,l[10])?(ei.removeClass(n,l[10]),ei.addClass(n,l[11])):ei.hasClass(n,l[9])?(ei.removeClass(n,l[9]),ei.addClass(n,l[10])):ei.hasClass(n,l[8])?(ei.removeClass(n,l[8]),ei.addClass(n,l[9])):ei.hasClass(n,l[7])?(ei.removeClass(n,l[7]),ei.addClass(n,l[8])):ei.hasClass(n,l[6])?(ei.removeClass(n,l[6]),ei.addClass(n,l[7])):ei.hasClass(n,l[5])?(ei.removeClass(n,l[5]),ei.addClass(n,l[6])):ei.hasClass(n,l[4])?(ei.removeClass(n,l[4]),ei.addClass(n,l[5])):ei.hasClass(n,l[3])?(ei.removeClass(n,l[3]),ei.addClass(n,l[4])):ei.hasClass(n,l[2])?(ei.removeClass(n,l[2]),ei.addClass(n,l[3])):ei.hasClass(n,l[1])?(ei.removeClass(n,l[1]),ei.addClass(n,l[2])):ei.hasClass(n,l[0])&&(ei.removeClass(n,l[0]),ei.addClass(n,l[1])),ei.hasClass(s,l[1])?(ei.removeClass(s,l[1]),ei.addClass(s,l[0])):ei.hasClass(s,l[2])?(ei.removeClass(s,l[2]),ei.addClass(s,l[1])):ei.hasClass(s,l[3])?(ei.removeClass(s,l[3]),ei.addClass(s,l[2])):ei.hasClass(s,l[4])?(ei.removeClass(s,l[4]),ei.addClass(s,l[3])):ei.hasClass(s,l[5])?(ei.removeClass(s,l[5]),ei.addClass(s,l[4])):ei.hasClass(s,l[6])?(ei.removeClass(s,l[6]),ei.addClass(s,l[5])):ei.hasClass(s,l[7])?(ei.removeClass(s,l[7]),ei.addClass(s,l[6])):ei.hasClass(s,l[8])?(ei.removeClass(s,l[8]),ei.addClass(s,l[7])):ei.hasClass(s,l[9])?(ei.removeClass(s,l[9]),ei.addClass(s,l[8])):ei.hasClass(s,l[10])?(ei.removeClass(s,l[10]),ei.addClass(s,l[9])):ei.hasClass(s,l[11])&&(ei.removeClass(s,l[11]),ei.addClass(s,l[10])),e.position(n),this.builder.opts.onChange()}}decreaseColumn(){let t=this.builder,e=this.columnTool,i=this.util;const n=i.cellSelected();if(!n)return;let o,s=i.cellNext(n);if(s)o=i.cellNext(s),o||(o=n.previousElementSibling);else{if(s=n.previousElementSibling,!s)return;o=s.previousElementSibling}const r=t.opts.row,l=t.opts.cols,a=t.opts.colsizes;if(""!==r&&l.length>0&&a.length>0){if(o)for(let t=0;t<a.length;t++){let i=a[t];for(let t=0;t<i.length;t++)if(3===i[t].length&&ei.hasClass(n,i[t][0])&&ei.hasClass(s,i[t][1])&&ei.hasClass(o,i[t][2])&&0!==t)return this.builder.uo.saveForUndo(),ei.removeClass(n,i[t][0]),ei.removeClass(s,i[t][1]),ei.removeClass(o,i[t][2]),ei.addClass(n,i[t-1][0]),ei.addClass(s,i[t-1][1]),ei.addClass(o,i[t-1][2]),e.position(n),void this.builder.opts.onChange()}for(let t=0;t<a.length;t++){let i=a[t];for(let t=0;t<i.length;t++)if(2===i[t].length&&ei.hasClass(n,i[t][0])&&ei.hasClass(s,i[t][1])&&0!==t)return this.builder.uo.saveForUndo(),ei.removeClass(n,i[t][0]),ei.removeClass(s,i[t][1]),ei.addClass(n,i[t-1][0]),ei.addClass(s,i[t-1][1]),e.position(n),void this.builder.opts.onChange()}e.position(n)}else if(""!==r&&l.length>0&&!ei.hasClass(n,l[11])){if(ei.hasClass(n,l[0]))return;if(ei.hasClass(s,l[11]))return;this.builder.uo.saveForUndo(),ei.hasClass(n,l[11])?(ei.removeClass(n,l[11]),ei.addClass(n,l[10])):ei.hasClass(n,l[10])?(ei.removeClass(n,l[10]),ei.addClass(n,l[9])):ei.hasClass(n,l[9])?(ei.removeClass(n,l[9]),ei.addClass(n,l[8])):ei.hasClass(n,l[8])?(ei.removeClass(n,l[8]),ei.addClass(n,l[7])):ei.hasClass(n,l[7])?(ei.removeClass(n,l[7]),ei.addClass(n,l[6])):ei.hasClass(n,l[6])?(ei.removeClass(n,l[6]),ei.addClass(n,l[5])):ei.hasClass(n,l[5])?(ei.removeClass(n,l[5]),ei.addClass(n,l[4])):ei.hasClass(n,l[4])?(ei.removeClass(n,l[4]),ei.addClass(n,l[3])):ei.hasClass(n,l[3])?(ei.removeClass(n,l[3]),ei.addClass(n,l[2])):ei.hasClass(n,l[2])?(ei.removeClass(n,l[2]),ei.addClass(n,l[1])):ei.hasClass(n,l[1])&&(ei.removeClass(n,l[1]),ei.addClass(n,l[0])),ei.hasClass(s,l[0])?(ei.removeClass(s,l[0]),ei.addClass(s,l[1])):ei.hasClass(s,l[1])?(ei.removeClass(s,l[1]),ei.addClass(s,l[2])):ei.hasClass(s,l[2])?(ei.removeClass(s,l[2]),ei.addClass(s,l[3])):ei.hasClass(s,l[3])?(ei.removeClass(s,l[3]),ei.addClass(s,l[4])):ei.hasClass(s,l[4])?(ei.removeClass(s,l[4]),ei.addClass(s,l[5])):ei.hasClass(s,l[5])?(ei.removeClass(s,l[5]),ei.addClass(s,l[6])):ei.hasClass(s,l[6])?(ei.removeClass(s,l[6]),ei.addClass(s,l[7])):ei.hasClass(s,l[7])?(ei.removeClass(s,l[7]),ei.addClass(s,l[8])):ei.hasClass(s,l[8])?(ei.removeClass(s,l[8]),ei.addClass(s,l[9])):ei.hasClass(s,l[9])?(ei.removeClass(s,l[9]),ei.addClass(s,l[10])):ei.hasClass(s,l[10])&&(ei.removeClass(s,l[10]),ei.addClass(s,l[11])),e.position(n),this.builder.opts.onChange()}}removeRow(){let t=this.util;const e=t.cellSelected();if(!e)return;const i=e.parentNode;ei.removeClass(i,"row-outline"),this.columnTool.hide(),t.confirm(t.out("Are you sure you want to delete this block?"),(e=>{const i=t.cellSelected();if(!i)return;const n=i.parentNode;e&&(this.builder.uo.saveForUndo(),n.parentNode.removeChild(n),t.checkEmpty(),this.builder.opts.onChange())}))}moveRowUp(){let t=this.columnTool,e=this.util;const i=e.cellSelected();if(!i)return;let n=i.parentNode;if(ei.removeClass(n,"row-outline"),t.hide(),n.previousElementSibling)this.builder.uo.saveForUndo(),n.parentNode.insertBefore(n,n.previousElementSibling),this.rowTool.position(n),this.builder.opts.onChange();else{let t=n.parentNode,i=null;const o=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(o,(o=>{if(o.innerHTML===t.innerHTML&&i)return ei.moveAfter(n,i.lastChild),this.rowTool.position(n),e.checkEmpty(),this.builder.opts.onChange(),!1;i=o}))}}moveRowDown(){let t=this.columnTool,e=this.util;const i=e.cellSelected();if(!i)return;let n=i.parentNode;if(ei.removeClass(n,"row-outline"),t.hide(),n.nextElementSibling)this.builder.uo.saveForUndo(),n.parentNode.insertBefore(n.nextElementSibling,n),this.rowTool.position(n),this.builder.opts.onChange();else{let t=n.parentNode,i=!1;const o=document.querySelectorAll(this.builder.opts.container);Array.prototype.forEach.call(o,(o=>{if(i)return o.insertBefore(n,o.firstChild),this.rowTool.position(n),e.checkEmpty(),this.builder.opts.onChange(),!1;o.innerHTML===t.innerHTML&&(i=!0)}))}}duplicateRow(){let t=this.builder,e=this.columnTool;const i=this.util.cellSelected();if(!i)return;let n=i.parentNode;ei.removeClass(n,"row-outline"),e.hide(),this.builder.uo.saveForUndo();const o=n.cloneNode(!0);o.removeChild(o.querySelector(".is-row-tool"));let s=ei.elementChildren(o);s.forEach((e=>{e.removeAttribute("data-click"),e.classList.contains("cell-active")&&(t.activeCol=e)})),ei.moveAfter(o,n),ei.removeClass(n,"row-active"),ei.removeClass(n,"row-outline"),s=ei.elementChildren(n),s.forEach((t=>{ei.removeClass(t,"cell-active")}));let r=document.querySelector(".builder-active");t.applyBehaviorOn(r),this.rowTool.position(o),this.builder.opts.onChange()}refreshColumnTool(t){this.columnTool.position(t)}showColumnTool(){this.columnTool.show()}hideColumnTool(){this.columnTool.hide()}}class ni{constructor(t){this.builder=t}position(t){const e=this.builder.builderStuff;let i=t.querySelector(".is-row-tool"),n=e.querySelector(".rowmore");ei.addClass(n,"transition1");const o=i.querySelector(".row-more"),s=o.getBoundingClientRect().top+window.pageYOffset,r=o.getBoundingClientRect().left+window.pageXOffset;n.style.top=s-8+"px",ei.removeClass(n,"arrow-bottom"),ei.removeClass(n,"arrow-left"),ei.removeClass(n,"arrow-right"),ei.removeClass(n,"center"),ei.removeClass(n,"right"),ei.removeClass(n,"left"),"right"===this.builder.opts.rowTool?(n.style.left=r-n.offsetWidth-10+"px",ei.addClass(n,"arrow-right"),ei.addClass(n,"left")):(n.style.left=r+35+"px",ei.addClass(n,"arrow-left"),ei.addClass(n,"left")),setTimeout((()=>{ei.removeClass(n,"transition1")}),300)}}class oi{constructor(t){this.builder=t}position(t){const e=this.builder.builderStuff;this.columnTool=e.querySelector(".is-column-tool"),this.columnMore=e.querySelector(".columnmore"),ei.addClass(this.columnMore,"transition1"),setTimeout((()=>{this.columnTool.style.top=t.getBoundingClientRect().top-29+window.pageYOffset+"px",this.columnTool.style.left=t.getBoundingClientRect().left-1+"px";let e=parseInt(this.columnTool.style.top),i=parseInt(this.columnTool.style.left);this.columnMore.style.top=e+35+"px",this.columnMore.style.left=i+19+"px",setTimeout((()=>{ei.removeClass(this.columnMore,"transition1")}),300)}),300)}hide(){const t=this.builder.builderStuff;this.columnTool=t.querySelector(".is-column-tool"),ei.removeClass(this.columnTool,"active")}show(){const t=this.builder.builderStuff;this.columnTool=t.querySelector(".is-column-tool"),ei.addClass(this.columnTool,"active")}}let si,ri,li,ai,di,ci,ui,pi;class hi{constructor(t={}){this.opts=t;const e=document.querySelectorAll(this.opts.selector);Array.prototype.forEach.call(e,(t=>{t.setAttribute("draggable",""),t.addEventListener("touchstart",this.dragStart,!1),t.addEventListener("touchend",this.dragEnd,!1),t.addEventListener("mousedown",this.dragStart,!1),t.addEventListener("mouseup",this.dragEnd,!1)})),document.addEventListener("touchmove",this.drag,!1),document.addEventListener("mousemove",this.drag,!1)}dragStart(t){var e,i;t.target.hasAttribute("draggable")&&(ui=!0,pi=t.target.parentElement,pi.getAttribute("data-xOffset")?e=pi.getAttribute("data-xOffset"):(pi.setAttribute("data-xOffset",0),e=0),pi.getAttribute("data-yOffset")?i=pi.getAttribute("data-yOffset"):(pi.setAttribute("data-yOffset",0),i=0),"touchstart"===t.type?(si=t.touches[0].clientX-e,ri=t.touches[0].clientY-i):(si=t.clientX-e,ri=t.clientY-i),pi.setAttribute("data-initialX",si),pi.setAttribute("data-initialY",ri))}dragEnd(t){t.target.hasAttribute("draggable")&&(li=pi.getAttribute("data-currentX"),ai=pi.getAttribute("data-currentY"),si=li,ri=ai,pi.setAttribute("data-initialX",si),pi.setAttribute("data-initialY",ri),ui=!1)}drag(t){if(ui){t.preventDefault();var e=pi.getAttribute("data-initialX"),i=pi.getAttribute("data-initialY");"touchmove"===t.type?(li=t.touches[0].clientX-e,ai=t.touches[0].clientY-i):(li=t.clientX-e,ai=t.clientY-i),pi.style.transform="translate3d("+li+"px, "+ai+"px, 0)",pi.setAttribute("data-currentX",li),pi.setAttribute("data-currentY",ai),di=li,ci=ai,pi.setAttribute("data-xOffset",di),pi.setAttribute("data-yOffset",ci)}}isTouchSupport(){return"ontouchstart"in window||navigator.MaxTouchPoints>0||navigator.msMaxTouchPoints>0}}const vi=new e,fi=new e;class gi{constructor(t,e={}){this.opts=Object.assign(this,{onChange:function(){}},e);const i=t;let n=i.getAttribute("data-group"),o=document.querySelector('.is-selectbox-options[data-group="'+n+'"]');this.opts.dropdown&&(o=this.opts.dropdown),fi.addEventListener(i,"click",(()=>{if("none"===o.style.display){let t=document.querySelectorAll(".is-selectbox-options");Array.prototype.forEach.call(t,(t=>{t.style.display="none"})),o.style.display="block",fi.elementChildren(o).forEach((t=>{fi.removeClass(t,"selected")}));let e=i.getAttribute("data-value"),n=o.querySelector('[data-value="'+e+'"]');n&&fi.addClass(n,"selected")}else o.style.display="none"}));fi.elementChildren(o).forEach((t=>{fi.addEventListener(t,"click",(()=>{o.style.display="none";let e=t.getAttribute("data-value");i.querySelector("span").innerHTML=t.innerHTML,i.setAttribute("data-value",e),this.opts.onChange(e)}))}))}}
2
2
  /**!
3
3
  * Sortable 1.14.0
4
4
  * @author RubaXa <trash@rubaxa.org>
@@ -97,7 +97,7 @@ var ContentBuilder=function(){"use strict";class t{constructor(t){this.builder=t
97
97
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
98
98
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
99
99
  PERFORMANCE OF THIS SOFTWARE.
100
- ***************************************************************************** */var ld=function(t,e){return(ld=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(t,e)};function ad(t,e){function i(){this.constructor=t}ld(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}var dd=function(){return(dd=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var o in e=arguments[i])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};function cd(){for(var t=0,e=0,i=arguments.length;e<i;e++)t+=arguments[e].length;var n=Array(t),o=0;for(e=0;e<i;e++)for(var s=arguments[e],r=0,l=s.length;r<l;r++,o++)n[o]=s[r];return n}function ud(t,e){var i;return dd({events:{},props:(i={},i[t]=Boolean,i),name:t},e)}function pd(t,e){return'data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="'+32*t+'px" height="'+32*t+'px" viewBox="0 0 32 32" ><path d="M 16,5 L 12,10 L 14.5,10 L 14.5,22 L 12,22 L 16,27 L 20,22 L 17.5,22 L 17.5,10 L 20, 10 L 16,5 Z" stroke-linejoin="round" stroke-width="1.2" fill="black" stroke="white" style="transform:rotate('+e+'deg);transform-origin: 16px 16px"></path></svg>'}var hd,vd=function(t){return void 0===t&&function(){if("undefined"==typeof navigator||!navigator||!navigator.userAgentData)return!1;var t=navigator.userAgentData,e=t.brands||t.uaList;return!(!e||!e.length)}()?function(t){var e=navigator.userAgentData,i=(e.uaList||e.brands).slice(),n=e.mobile||!1,o=i[0],s={name:o.brand,version:o.version,majorVersion:-1,webkit:!1,webkitVersion:"-1",chromium:!1,chromiumVersion:"-1",webview:!!Ul(Vl,i).brand},r={name:"unknown",version:"-1",majorVersion:-1};s.webkit=!s.chromium&&Hl(Yl,(function(t){return Wl(i,t)}));var l=Ul(Gl,i);if(s.chromium=!!l.brand,s.chromiumVersion=l.version,!s.chromium){var a=Ul(Yl,i);s.webkit=!!a.brand,s.webkitVersion=a.version}if(t){var d=t.platform.toLowerCase(),c=Dl(Xl,(function(t){return new RegExp(""+t.test,"g").exec(d)}));r.name=c?c.id:d,r.version=t.platformVersion}var u=Ul(jl,i);return u.brand&&(s.name=u.brand,s.version=t?t.uaFullVersion:u.version),"Linux armv8l"===navigator.platform?r.name="android":s.webkit&&(r.name=n?"ios":"mac"),"ios"===r.name&&s.webview&&(s.version="-1"),r.version=Pl(r.version),s.version=Pl(s.version),r.majorVersion=parseInt(r.version,10),s.majorVersion=parseInt(s.version,10),{browser:s,os:r,isMobile:n,isHints:!0}}():Zl(t)}().browser.webkit,fd=vd&&(!!(hd=/applewebkit\/([^\s]+)/g.exec(navigator.userAgent.toLowerCase()))&&parseFloat(hd[1])<605),gd="moveable-",md="\n{\n\tposition: absolute;\n\twidth: 1px;\n\theight: 1px;\n\tleft: 0;\n\ttop: 0;\n z-index: 3000;\n --moveable-color: #4af;\n --zoom: 1;\n --zoompx: 1px;\n will-change: transform;\n}\n.control-box {\n z-index: 0;\n}\n.line, .control {\n position: absolute;\n\tleft: 0;\n top: 0;\n will-change: transform;\n}\n.control {\n\twidth: 14px;\n\theight: 14px;\n\tborder-radius: 50%;\n\tborder: 2px solid #fff;\n\tbox-sizing: border-box;\n background: #4af;\n background: var(--moveable-color);\n\tmargin-top: -7px;\n margin-left: -7px;\n border: 2px solid #fff;\n z-index: 10;\n}\n.padding {\n position: absolute;\n top: 0px;\n left: 0px;\n width: 100px;\n height: 100px;\n transform-origin: 0 0;\n}\n.line {\n\twidth: 1px;\n height: 1px;\n background: #4af;\n background: var(--moveable-color);\n\ttransform-origin: 0px 50%;\n}\n.line.dashed {\n box-sizing: border-box;\n background: transparent;\n}\n.line.dashed.horizontal {\n border-top: 1px dashed #4af;\n border-top-color: #4af;\n border-top-color: var(--moveable-color);\n}\n.line.dashed.vertical {\n border-left: 1px dashed #4af;\n border-left-color: #4af;\n border-left-color: var(--moveable-color);\n}\n.line.vertical {\n transform: translateX(-50%);\n}\n.line.horizontal {\n transform: translateY(-50%);\n}\n.line.vertical.bold {\n width: 2px;\n}\n.line.horizontal.bold {\n height: 2px;\n}\n\n.control.origin {\n\tborder-color: #f55;\n\tbackground: #fff;\n\twidth: 12px;\n\theight: 12px;\n\tmargin-top: -6px;\n margin-left: -6px;\n\tpointer-events: none;\n}\n"+[0,15,30,45,60,75,90,105,120,135,150,165].map((function(t){return'\n.direction[data-rotation="'+t+'"] {\n\t'+function(t){var e=pd(1,t),i=pd(2,t),n=45*Math.round(t/45)%180,o="ns-resize";return 135===n?o="nwse-resize":45===n?o="nesw-resize":90===n&&(o="ew-resize"),"cursor:"+o+";cursor: url('"+e+"') 16 16, "+o+";cursor: -webkit-image-set(url('"+e+"') 1x, url('"+i+"') 2x) 16 16, "+o+";"}(t)+"\n}\n"})).join("\n")+"\n.group {\n z-index: -1;\n}\n.area {\n position: absolute;\n}\n.area-pieces {\n position: absolute;\n top: 0;\n left: 0;\n display: none;\n}\n.area.avoid, .area.pass {\n pointer-events: none;\n}\n.area.avoid+.area-pieces {\n display: block;\n}\n.area-piece {\n position: absolute;\n}\n\n"+(fd?':global svg *:before {\n\tcontent:"";\n\ttransform-origin: inherit;\n}':"")+"\n",bd=[[0,1,2],[1,0,3],[2,0,3],[3,1,2]],yd=1e-4,xd=1e-7,_d=1e-9,wd=Math.pow(10,10),Sd=-wd,Cd=["n","w","s","e","nw","ne","sw","se"],kd={n:[0,1],s:[2,3],w:[2,0],e:[1,3],nw:[0],ne:[1],sw:[2],se:[3]},Ed={n:0,s:180,w:270,e:90,nw:315,ne:45,sw:225,se:135},Ad=["isMoveableElement","updateRect","updateTarget","destroy","dragStart","isInside","hitTest","setState","getRect","request","isDragging","getManager"];function Ld(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return yr.apply(void 0,cd([gd],t))}function qd(t,e,i){return oa(e,xa(i,e),t,xa(i.map((function(t){return-t})),e))}function Td(t){return Md(lc(t,":before")).map((function(e,i){var n=jr(e),o=n.value,s=n.unit;return o*function(t,e,i){return"%"===e?Dd(t.ownerSVGElement)[i?"width":"height"]/100:1}(t,s,0===i)}))}function Md(t){var e=t.transformOrigin;return e?e.split(" "):["0","0"]}function Od(t,e,i){for(var n=document.body,o=!t||i?t:t.parentElement,s=t===e||o===e,r="relative";o&&o!==n;){e===o&&(s=!0);var l=lc(o),a=l.transform;if(r=l.position,"svg"===o.tagName.toLowerCase()||"static"!==r||a&&"none"!==a)break;o=o.parentElement,r="relative"}return{isStatic:"static"===r,isEnd:s||!o||o===n,offsetParent:o||n}}function Rd(t,e,i,n){var o,s=t.tagName.toLowerCase(),r=t.offsetLeft,l=t.offsetTop;if(n){var a=(e||document.documentElement).getBoundingClientRect();r-=a.left,l-=a.top}var d,c,u=Nr(r),p=!u;return p||"svg"===s?c=(d=Md(i).map((function(t){return parseFloat(t)}))).slice():(c=(d=fd?Td(t):Md(i).map((function(t){return parseFloat(t)}))).slice(),p=!0,r=(o=function(t,e){if(!t.getBBox)return[0,0];var i=t.getBBox(),n=Dd(t.ownerSVGElement),o=i.x-n.x,s=i.y-n.y;return[o,s,e[0]-o,e[1]-s]}(t,d))[0],l=o[1],d[0]=o[2],d[1]=o[3]),{tagName:s,isSVG:u,hasOffset:p,offset:[r||0,l||0],origin:d,targetOrigin:c}}function Nd(t,e,i){void 0===i&&(i=lc(t));var n=lc(document.body),o=n.position;if(!(e||o&&"static"!==o))return[0,0];var s=parseInt(n.marginLeft,10),r=parseInt(n.marginTop,10);return"absolute"===i.position&&("auto"===i.top&&"auto"===i.bottom||(r=0),"auto"===i.left&&"auto"===i.right||(s=0)),[s,r]}function Bd(t){t.forEach((function(t){var e=t.matrix;e&&(t.matrix=na(e,3,4))}))}function $d(t,e){for(var i,n,o,s,r,l,a=t,d=[],c=t===e,u=!1,p=3,h=Od(e,e,!0).offsetParent;a&&!c;){var v=lc(a),f=v.position,g="fixed"===f,m=(l=v.transform,s=l&&"none"!==l?Br(l)?l:Wr(l).value.split(/s*,\s*/g).map((function(t){return parseFloat(t)})):[1,0,0,1,0,0],void 0===(r=void 0)&&(r=6===s.length),r?[s[0],s[1],0,s[2],s[3],0,s[4],s[5],1]:s),b=m.length;u||16!==b||(u=!0,p=4,Bd(d)),u&&9===b&&(m=na(m,3,4));var y=Rd(a,e,v,g),x=y.tagName,_=y.hasOffset,w=y.isSVG,S=y.origin,C=y.targetOrigin,k=y.offset,E=k[0],A=k[1];"svg"===x&&o?(d.push({type:"target",target:a,matrix:zd(a,p)}),d.push({type:"offset",target:a,matrix:ba(p)})):"g"===x&&t!==a&&(E=0,A=0);var L=Od(a,e),q=L.offsetParent,T=L.isEnd,M=L.isStatic;vd&&_&&!w&&M&&("relative"===f||"static"===f)&&(E-=q.offsetLeft,A-=q.offsetTop,c=c||T);var O=0,R=0;if(_&&h!==q&&(O=q.clientLeft,R=q.clientTop),_&&q===document.body){var N=Nd(a,!1,v);E+=N[0],A+=N[1]}if(d.push({type:"target",target:a,matrix:qd(m,p,S)}),_?d.push({type:"offset",target:a,matrix:xa([E-a.scrollLeft+O,A-a.scrollTop+R],p)}):d.push({type:"offset",target:a,origin:S}),o||(o=m),i||(i=S),n||(n=C),c||g)break;a=q,c=T}return o||(o=ba(p)),i||(i=[0,0]),n||(n=[0,0]),{offsetContainer:h,matrixes:d,targetMatrix:o,transformOrigin:i,targetOrigin:n,is3d:u}}function Id(t,e,i,n){var o;void 0===i&&(i=e);var s=0,r=0,l=0,a={};if(t){var d=lc(t);s=t.offsetWidth,r=t.offsetHeight,Nr(s)&&(s=(o=Zd(t,d,!0))[0],r=o[1])}if(t){var c=function(t,e,i,n){void 0===i&&(i=e);var o=$d(t,e),s=o.matrixes,r=o.is3d,l=o.targetMatrix,a=o.transformOrigin,d=o.targetOrigin,c=$d(o.offsetContainer,i),u=c.matrixes,p=c.is3d,h=n||p||r,v=h?4:3,f="svg"!==t.tagName.toLowerCase()&&"ownerSVGElement"in t,g=l,m=ba(v),b=ba(v),y=ba(v),x=ba(v),_=s.length,w=i||document.body,S=Od(w,w,!0).offsetParent;u.reverse(),s.reverse(),!r&&h&&(g=na(g,3,4),Bd(s));!p&&h&&Bd(u);u.forEach((function(t){b=sa(b,t.matrix,v)})),s.forEach((function(t,e){if(_-2===e&&(y=m.slice()),_-1===e&&(x=m.slice()),!t.matrix){var i=function(t,e,i,n,o){var s,r=t.target,l=t.origin,a=e.matrix,d=Zd(r,void 0,!0),c=d[0],u=d[1],p=i.getBoundingClientRect(),h=[0,0];i===document.body&&(h=Nd(r,!0));var v=r.getBoundingClientRect(),f=v.left-p.left+i.scrollLeft-(i.clientLeft||0)+h[0],g=v.top-p.top+i.scrollTop-(i.clientTop||0)+h[1],m=v.width,b=v.height,y=oa(n,o,a),x=Wd(y,c,u,n),_=x.left,w=x.top,S=x.width,C=x.height,k=Pd(y,l,n),E=la(k,[_,w]),A=[f+E[0]*m/S,g+E[1]*b/C],L=[0,0],q=0;for(;++q<10;){var T=ea(o,n);s=la(Pd(T,A,n),Pd(T,k,n)),L[0]=s[0],L[1]=s[1];var M=Wd(oa(n,o,xa(L,n),a),c,u,n),O=M.left-f,R=M.top-g;if(Math.abs(O)<2&&Math.abs(R)<2)break;A[0]-=O,A[1]-=R}return L.map((function(t){return Math.round(t)}))}(t,s[e+1],S,v,sa(b,m,v));t.matrix=xa(i,v)}m=sa(m,t.matrix,v)}));var C=!f&&r;g||(g=ba(C?4:3));var k=Hd(f&&16===g.length?na(g,4,3):g,C);return{rootMatrix:b=ta(b,v,v),beforeMatrix:y,offsetMatrix:x,allMatrix:m,targetMatrix:g,targetTransform:k,transformOrigin:a,targetOrigin:d,is3d:h}}(t,e,i,n),u=jd(c.allMatrix,c.transformOrigin,s,r);a=dd(dd({},c),u);var p=jd(c.allMatrix,[50,50],100,100);l=Kd([p.pos1,p.pos2],p.direction)}var h=n?4:3;return dd({width:s,height:r,rotation:l,rootMatrix:ba(h),beforeMatrix:ba(h),offsetMatrix:ba(h),allMatrix:ba(h),targetMatrix:ba(h),targetTransform:"",transformOrigin:[0,0],targetOrigin:[0,0],is3d:!!n,left:0,top:0,right:0,bottom:0,origin:[0,0],pos1:[0,0],pos2:[0,0],pos3:[0,0],pos4:[0,0],direction:1},a)}function Hd(t,e){return void 0===e&&(e=t.length>9),(e?"matrix3d":"matrix")+"("+aa(t,!e).join(",")+")"}function Dd(t){var e=t.clientWidth,i=t.clientHeight;if(!t)return{x:0,y:0,width:0,height:0,clientWidth:e,clientHeight:i};var n=t.viewBox,o=n&&n.baseVal||{x:0,y:0,width:0,height:0};return{x:o.x,y:o.y,width:o.width||e,height:o.height||i,clientWidth:e,clientHeight:i}}function zd(t,e){var i=Dd(t),n=i.width,o=i.height,s=i.clientWidth,r=i.clientHeight,l=s/n,a=r/o,d=t.preserveAspectRatio.baseVal,c=d.align,u=d.meetOrSlice,p=[0,0],h=[l,a],v=[0,0];if(1!==c){var f=(c-2)%3,g=Math.floor((c-2)/3);p[0]=n*f/2,p[1]=o*g/2;var m=2===u?Math.max(a,l):Math.min(l,a);h[0]=m,h[1]=m,v[0]=(s-n)/2*f,v[1]=(r-o)/2*g}var b=ya(h,e);return b[e*(e-1)]=v[0],b[e*(e-1)+1]=v[1],qd(b,e,p)}function Pd(t,e,i){return da(t,ia(e,i),i)}function Fd(t,e,i,n){return[[0,0],[e,0],[0,i],[e,i]].map((function(e){return Pd(t,e,n)}))}function Ud(t){var e=t.map((function(t){return t[0]})),i=t.map((function(t){return t[1]})),n=Math.min.apply(Math,e),o=Math.min.apply(Math,i),s=Math.max.apply(Math,e),r=Math.max.apply(Math,i);return{left:n,top:o,right:s,bottom:r,width:s-n,height:r-o}}function Wd(t,e,i,n){return Ud(Fd(t,e,i,n))}function jd(t,e,i,n){var o=16===t.length?4:3,s=Fd(t,i,n,o),r=s[0],l=r[0],a=r[1],d=s[1],c=d[0],u=d[1],p=s[2],h=p[0],v=p[1],f=s[3],g=f[0],m=f[1],b=Pd(t,e,o),y=b[0],x=b[1],_=Math.min(l,c,h,g),w=Math.min(a,u,v,m),S=Math.max(l,c,h,g);return l=l-_||0,{left:_,top:w,right:S,bottom:Math.max(a,u,v,m),origin:[y=y-_||0,x=x-w||0],pos1:[l,a=a-w||0],pos2:[c=c-_||0,u=u-w||0],pos3:[h=h-_||0,v=v-w||0],pos4:[g=g-_||0,m=m-w||0],direction:il(s)}}function Gd(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Yd(t,e){return Gd([e[0]-t[0],e[1]-t[1]])}function Vd(t,e,i,n){void 0===i&&(i=1),void 0===n&&(n=el(t,e));var o=Yd(t,e);return{transform:"translateY(-50%) translate("+t[0]+"px, "+t[1]+"px) rotate("+n+"rad) scaleY("+i+")",width:o+"px"}}function Xd(t,e){for(var i=[],n=2;n<arguments.length;n++)i[n-2]=arguments[n];var o=i.length,s=i.reduce((function(t,e){return t+e[0]}),0)/o,r=i.reduce((function(t,e){return t+e[1]}),0)/o;return{transform:"translateZ(0px) translate("+s+"px, "+r+"px) rotate("+t+"rad) scale("+e+")"}}function Zd(t,e,i,n){void 0===e&&(e=lc(t)),void 0===n&&(n=i||"border-box"===e.boxSizing);var o=t.offsetWidth,s=t.offsetHeight,r=!Nr(o);if((i||n)&&r)return[o,s];if(!r&&"svg"!==t.tagName.toLowerCase()){var l=t.getBBox();return[l.width,l.height]}return o=t.clientWidth,s=t.clientHeight,i||n?[o+(parseFloat(e.borderLeftWidth)||0)+(parseFloat(e.borderRightWidth)||0),s+(parseFloat(e.borderTopWidth)||0)+(parseFloat(e.borderBottomWidth)||0)]:[o-(parseFloat(e.paddingLeft)||0)-(parseFloat(e.paddingRight)||0),s-(parseFloat(e.paddingTop)||0)-(parseFloat(e.paddingBottom)||0)]}function Kd(t,e){return el(e>0?t[0]:t[1],e>0?t[1]:t[0])}function Jd(t,e,i,n,o){var s=1,r=[0,0],l={left:0,right:0,top:0,bottom:0,width:0,height:0,clientLeft:0,clientTop:0,clientWidth:0,clientHeight:0,scrollWidth:0,scrollHeight:0},a={left:0,right:0,top:0,bottom:0,width:0,height:0,clientLeft:0,clientTop:0,clientWidth:0,clientHeight:0,scrollWidth:0,scrollHeight:0},d={left:0,right:0,top:0,bottom:0,width:0,height:0,clientLeft:0,clientTop:0,clientWidth:0,clientHeight:0,scrollWidth:0,scrollHeight:0},c=Id(e,i,o,!1);if(e){var u=c.is3d?4:3,p=jd(c.offsetMatrix,ra(c.transformOrigin,function(t,e){void 0===e&&(e=Math.sqrt(t.length));for(var i=[],n=t[e*e-1],o=0;o<e-1;++o)i[o]=t[e*(e-1)+o]/n;return i[e-1]=0,i}(c.targetMatrix,u)),c.width,c.height);s=p.direction,r=ra(p.origin,[p.left-c.left,p.top-c.top]),l=Qd(e),a=Qd(Od(n,n,!0).offsetParent||document.body,!0),t&&(d=Qd(t))}return dd({targetClientRect:l,containerClientRect:a,moveableClientRect:d,beforeDirection:s,beforeOrigin:r,originalBeforeOrigin:r,target:e},c)}function Qd(t,e){var i=0,n=0,o=0,s=0;if(t===document.body||t===document.documentElement)o=window.innerWidth,s=window.innerHeight,i=-(document.documentElement.scrollLeft||document.body.scrollLeft),n=-(document.documentElement.scrollTop||document.body.scrollTop);else{var r=t.getBoundingClientRect();i=r.left,n=r.top,o=r.width,s=r.height}var l={left:i,right:i+o,top:n,bottom:n+s,width:o,height:s};return e&&(l.clientLeft=t.clientLeft,l.clientTop=t.clientTop,l.clientWidth=t.clientWidth,l.clientHeight=t.clientHeight,l.scrollWidth=t.scrollWidth,l.scrollHeight=t.scrollHeight,l.overflow="visible"!==lc(t).overflow),l}function tc(t){if(t){var e=t.getAttribute("data-direction");if(e){var i=[0,0];return e.indexOf("w")>-1&&(i[0]=-1),e.indexOf("e")>-1&&(i[0]=1),e.indexOf("n")>-1&&(i[1]=-1),e.indexOf("s")>-1&&(i[1]=1),i}}}function ec(t,e){return[ra(e,t[0]),ra(e,t[1]),ra(e,t[2]),ra(e,t[3])]}function ic(t){var e=t.left,i=t.top;return ec([t.pos1,t.pos2,t.pos3,t.pos4],[e,i])}function nc(t,e){t[e]&&(t[e].unset(),t[e]=null)}function oc(t,e,i){var n=e.datas;n.datas||(n.datas={});var o=dd(dd({},i),{target:t.state.target,clientX:e.clientX,clientY:e.clientY,inputEvent:e.inputEvent,currentTarget:t,moveable:t,datas:n.datas});return n.isStartEvent?n.lastEvent=o:n.isStartEvent=!0,o}function sc(t,e,i){var n=e.datas,o="isDrag"in i?i.isDrag:e.isDrag;return n.datas||(n.datas={}),dd(dd({isDrag:o},i),{moveable:t,target:t.state.target,clientX:e.clientX,clientY:e.clientY,inputEvent:e.inputEvent,currentTarget:t,lastEvent:n.lastEvent,isDouble:e.isDouble,datas:n.datas})}function rc(t,e,i,n){return t.triggerEvent(e,i,n)}function lc(t,e){return window.getComputedStyle(t,e)}function ac(t,e,i){var n={},o={};return t.filter((function(t){var s=t.name;if(n[s]||!e.some((function(e){return t[e]})))return!1;if(!i&&t.ableGroup){if(o[t.ableGroup])return!1;o[t.ableGroup]=!0}return n[s]=!0,!0}))}function dc(t,e){return t===e||null==t&&null==e}function cc(t,e){var i=[],n=[];return t.forEach((function(o,s){var r=e(o,s,t),l=n.indexOf(r),a=i[l]||[];-1===l&&(n.push(r),i.push(a)),a.push(o)})),i}function uc(t){return t.reduce((function(t,e){return t.concat(e)}),[])}function pc(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return t.sort((function(t,e){return Math.abs(e)-Math.abs(t)})),t[0]}function hc(t,e,i){return da(ea(t,i),ia(e,i),i)}function vc(t,e){var i,n=t.is3d?4:3;return i=hc(t.rootMatrix,[e.distX,e.distY],n),e.distX=i[0],e.distY=i[1],e}function fc(t,e,i,n,o){return la(Pd(t,ra(i,e),o),n)}function gc(t,e,i){return i?t/e*100+"%":t+"px"}function mc(t){return Math.abs(t)<=xd?0:t}function bc(t,e){return e.isRequest?("resizable"===e.requestAble||"scalable"===e.requestAble)&&e.parentDirection:rl(e.inputEvent.target,Ld("direction"))}function yc(t){var e={};for(var i in t)e[t[i]]=i;return e}function xc(t,e){return t?Ir(t)?e?document.querySelector(t):t:Hr(t)?t():"current"in t?t.current:t:null}function _c(t,e){return t?((i=t)&&Br(i)&&($r(i)||"length"in i)?[].slice.call(t):[t]).reduce((function(t,i){return Ir(i)&&e?cd(t,[].slice.call(document.querySelectorAll(i))):(t.push(xc(i,e)),t)}),[]):[];var i}function wc(t,e){var i=t.rootMatrix,n=t.is3d,o=ea(i,n?4:3);return n||(o=na(o,3,4)),o[12]=0,o[13]=0,o[14]=0,function(t,e){var i=da(t,[e[0],e[1]||0,e[2]||0,1],4),n=i[3]||1;return[i[0]/n,i[1]/n,i[2]/n]}(o,e)}var Sc=ud("pinchable",{events:{onPinchStart:"pinchStart",onPinch:"pinch",onPinchEnd:"pinchEnd",onPinchGroupStart:"pinchGroupStart",onPinchGroup:"pinchGroup",onPinchGroupEnd:"pinchGroupEnd"},dragStart:function(){return!0},pinchStart:function(t,e){var i=e.datas,n=e.targets,o=e.angle,s=e.originalDatas,r=t.props,l=r.pinchable,a=r.ables;if(!l)return!1;var d="onPinch"+(n?"Group":"")+"Start",c="drag"+(n?"Group":"")+"ControlStart",u=(!0===l?t.controlAbles:a.filter((function(t){return l.indexOf(t.name)>-1}))).filter((function(t){return t.canPinch&&t[c]})),p=oc(t,e,{});n&&(p.targets=n);var h=rc(t,d,p);i.isPinch=!1!==h,i.ables=u;var v=i.isPinch;return!!v&&(u.forEach((function(i){if(s[i.name]=s[i.name]||{},i[c]){var n=dd(dd({},e),{datas:s[i.name],parentRotate:o,isPinch:!0});i[c](t,n)}})),t.state.snapRenderInfo={request:e.isRequest,direction:[0,0]},v)},pinch:function(t,e){var i=e.datas,n=e.scale,o=e.distance,s=e.originalDatas,r=e.inputEvent,l=e.targets,a=e.angle;if(i.isPinch){var d=o*(1-1/n),c=oc(t,e,{});l&&(c.targets=l),rc(t,"onPinch"+(l?"Group":""),c);var u=i.ables,p="drag"+(l?"Group":"")+"Control";return u.forEach((function(i){i[p]&&i[p](t,dd(dd({},e),{datas:s[i.name],inputEvent:r,parentDistance:d,parentRotate:a,isPinch:!0}))})),c}},pinchEnd:function(t,e){var i=e.datas,n=e.isPinch,o=e.inputEvent,s=e.targets,r=e.originalDatas;if(i.isPinch){var l="onPinch"+(s?"Group":"")+"End",a=sc(t,e,{isDrag:n});s&&(a.targets=s),rc(t,l,a);var d=i.ables,c="drag"+(s?"Group":"")+"ControlEnd";return d.forEach((function(i){i[c]&&i[c](t,dd(dd({},e),{isDrag:n,datas:r[i.name],inputEvent:o,isPinch:!0}))})),n}},pinchGroupStart:function(t,e){return this.pinchStart(t,dd(dd({},e),{targets:t.props.targets}))},pinchGroup:function(t,e){return this.pinch(t,dd(dd({},e),{targets:t.props.targets}))},pinchGroupEnd:function(t,e){return this.pinchEnd(t,dd(dd({},e),{targets:t.props.targets}))}});function Cc(t,e,i,n,o){var s=e.gesto.move(i,t.inputEvent),r=s.originalDatas||s.datas,l=r.draggable||(r.draggable={});return dd(dd({},o?vc(e,s):s),{isDrag:!0,isPinch:!!n,parentEvent:!0,datas:l,originalDatas:t.originalDatas})}var kc=function(){function t(){this.prevX=0,this.prevY=0,this.startX=0,this.startY=0,this.isDrag=!1,this.isFlag=!1,this.datas={draggable:{}}}var e=t.prototype;return e.dragStart=function(t,e){this.isDrag=!1,this.isFlag=!1;var i=e.originalDatas;return this.datas=i,i.draggable||(i.draggable={}),dd(dd({},this.move(t,e.inputEvent)),{type:"dragstart"})},e.drag=function(t,e){return this.move([t[0]-this.prevX,t[1]-this.prevY],e)},e.move=function(t,e){var i,n;return this.isFlag?(i=this.prevX+t[0],n=this.prevY+t[1],this.isDrag=!0):(this.prevX=t[0],this.prevY=t[1],this.startX=t[0],this.startY=t[1],i=t[0],n=t[1],this.isFlag=!0),this.prevX=i,this.prevY=n,{type:"drag",clientX:i,clientY:n,inputEvent:e,isDrag:this.isDrag,distX:i-this.startX,distY:n-this.startY,deltaX:t[0],deltaY:t[1],datas:this.datas.draggable,originalDatas:this.datas,parentEvent:!0,parentGesto:this}},t}();function Ec(t,e,i){var n=i.originalDatas;n.groupable=n.groupable||{};var o=n.groupable;o.childDatas=o.childDatas||[];var s=o.childDatas;return t.moveables.map((function(t,n){return s[n]=s[n]||{},s[n][e]=s[n][e]||{},dd(dd({},i),{datas:s[n][e],originalDatas:s[n]})}))}function Ac(t,e,i,n,o,s){var r=!!i.match(/Start$/g),l=!!i.match(/End$/g),a=o.isPinch,d=o.datas,c=Ec(t,e.name,o),u=t.moveables,p=c.map((function(t,o){var c=u[o],p=t;r?p=(new kc).dragStart(n,t):(c.state.gesto||(c.state.gesto=d.childGestos[o]),p=Cc(t,c.state,n,a,s));var h=e[i](c,dd(dd({},p),{parentFlag:!0}));return l&&(c.state.gesto=null),h}));return r&&(d.childGestos=u.map((function(t){return t.state.gesto}))),p}function Lc(t,e,i,n,o,s){void 0===o&&(o=function(t,e){return e});var r=!!i.match(/End$/g),l=Ec(t,e.name,n),a=t.moveables;return l.map((function(t,n){var l,d=a[n];l=o(d,t);var c=e[i](d,dd(dd({},l),{parentFlag:!0}));return c&&s&&s(d,t,c,n),r&&(d.state.gesto=null),c}))}function qc(t,e){var i=e.clientX,n=e.clientY,o=e.datas,s=t.state,r=s.moveableClientRect,l=s.rootMatrix,a=s.is3d,d=s.pos1,c=la(hc(l,[i-r.left,n-r.top],a?4:3),d),u=$c({datas:o,distX:c[0],distY:c[1]});return[u[0],u[1]]}function Tc(t,e){var i=e.datas,n=t.state,o=n.allMatrix,s=n.beforeMatrix,r=n.is3d,l=n.left,a=n.top,d=n.origin,c=n.offsetMatrix,u=n.targetMatrix,p=n.transformOrigin,h=r?4:3;i.is3d=r,i.matrix=o,i.targetMatrix=u,i.beforeMatrix=s,i.offsetMatrix=c,i.transformOrigin=p,i.inverseMatrix=ea(o,h),i.inverseBeforeMatrix=ea(s,h),i.absoluteOrigin=ia(ra([l,a],d),h),i.startDragBeforeDist=da(i.inverseBeforeMatrix,i.absoluteOrigin,h),i.startDragDist=da(i.inverseMatrix,i.absoluteOrigin,h)}function Mc(t,e){var i=t.datas,n=t.originalDatas.beforeRenderable,o=i.transformIndex,s=n.nextTransforms,r=n.nextTransformAppendedIndexes,l=-1===o?s.length:o+r.filter((function(t){return t<o})).length,a=function(t,e){var i=t.slice(0,e<0?void 0:e),n=t.slice(0,e<0?void 0:e+1),o=t[e]||"",s=e<0?[]:t.slice(e),r=e<0?[]:t.slice(e+1),l=Sa(i),a=Sa(n),d=Sa([o]),c=Sa(s),u=Sa(r),p=wa(l),h=wa(a),v=wa(c),f=wa(u),g=sa(p,v,4);return{transforms:t,beforeFunctionMatrix:p,beforeFunctionMatrix2:h,targetFunctionMatrix:wa(d),afterFunctionMatrix:v,afterFunctionMatrix2:f,allFunctionMatrix:g,beforeFunctions:l,beforeFunctions2:a,targetFunction:d[0],afterFunctions:c,afterFunctions2:u,beforeFunctionTexts:i,beforeFunctionTexts2:n,targetFunctionText:o,afterFunctionTexts:s,afterFunctionTexts2:r}}(s,l),d=a.targetFunction,c="rotate"===e?"rotateZ":e;i.beforeFunctionTexts=a.beforeFunctionTexts,i.afterFunctionTexts=a.afterFunctionTexts,i.beforeTransform=a.beforeFunctionMatrix,i.beforeTransform2=a.beforeFunctionMatrix2,i.targetTansform=a.targetFunctionMatrix,i.afterTransform=a.afterFunctionMatrix,i.afterTransform2=a.afterFunctionMatrix2,i.targetAllTransform=a.allFunctionMatrix,d.functionName===c?(i.afterFunctionTexts.splice(0,1),i.isAppendTransform=!1):(i.isAppendTransform=!0,n.nextTransformAppendedIndexes=cd(r,[l]))}function Oc(t,e,i){return t.beforeFunctionTexts.join(" ")+" "+(t.isAppendTransform?i:e)+" "+t.afterFunctionTexts.join(" ")}function Rc(t){var e=t.datas,i=Bc({datas:e,distX:t.distX,distY:t.distY});return da(Nc(e,function(t,e){for(var i=ba(e),n=0;n<e-1;++n)i[e*(e-1)+n]=t[n]||0;return i}([i[0],i[1]],4)),ia([0,0,0],4),4)}function Nc(t,e,i){var n=t.beforeTransform,o=t.afterTransform,s=t.beforeTransform2,r=t.afterTransform2,l=t.targetAllTransform,a=i?sa(l,e,4):sa(e,l,4),d=sa(ea(i?s:n,4),a,4);return sa(d,ea(i?r:o,4),4)}function Bc(t){var e=t.datas,i=t.distX,n=t.distY,o=e.inverseBeforeMatrix,s=e.is3d,r=e.startDragBeforeDist,l=s?4:3;return la(da(o,ra(e.absoluteOrigin,[i,n]),l),r)}function $c(t,e){var i=t.datas,n=t.distX,o=t.distY,s=i.inverseBeforeMatrix,r=i.inverseMatrix,l=i.is3d,a=i.startDragBeforeDist,d=i.startDragDist,c=l?4:3;return la(da(e?s:r,ra(i.absoluteOrigin,[n,o]),c),e?a:d)}function Ic(t){var e=[];return t[1]>=0&&(t[0]>=0&&e.push(3),t[0]<=0&&e.push(2)),t[1]<=0&&(t[0]>=0&&e.push(1),t[0]<=0&&e.push(0)),e}function Hc(t,e){return Ic(e).map((function(e){return t[e]}))}function Dc(t,e){var i=Hc(t,e);return[tl(i.map((function(t){return t[0]}))),tl(i.map((function(t){return t[1]})))]}function zc(t,e,i,n){return sa(t,qd(e,n,i),n)}function Pc(t,e,i){var n=t.transformOrigin,o=t.offsetMatrix,s=t.is3d,r=e.beforeTransform,l=e.afterTransform,a=s?4:3;return zc(o,na(sa(sa(r,function(t){return wa(Sa(t))}([i]),4),l,4),4,a),n,a)}function Fc(t){var e=t.originalDatas.beforeRenderable;return{setTransform:function(i,n){void 0===n&&(n=-1),e.startTransforms=$r(i)?i:Fr(i),Wc(t,n)},setTransformIndex:function(e){Wc(t,e)}}}function Uc(t,e){Wc(t,Vr(t.originalDatas.beforeRenderable.startTransforms,(function(t){return 0===t.indexOf(e+"(")})))}function Wc(t,e){var i=t.originalDatas.beforeRenderable,n=t.datas;if(n.transformIndex=e,-1!==e){var o=i.startTransforms[e];if(o){var s=Sa([o]);n.startValue=s[0].functionValue}}}function jc(t,e){t.originalDatas.beforeRenderable.nextTransforms=Fr(e)}function Gc(t,e,i,n,o){return jc(o,e),{transform:e,drag:Qu.drag(t,Cc(o,t.state,i,n,!1))}}function Yc(t,e,i,n,o){var s=t.state,r=s.left,l=s.top,a=t.props.groupable,d=a?r:0,c=a?l:0,u=la(n,Xc(t,i,Pc(t.state,o,e)));return la(u,[d,c])}function Vc(t){var e=t.state,i=e.width,n=e.height,o=e.transformOrigin;return[o[0]/(i/2)-1,o[1]/(n/2)-1]}function Xc(t,e,i){void 0===i&&(i=t.state.allMatrix);var n=t.state,o=n.width,s=n.height,r=n.is3d?4:3;return Pd(i,[o/2*(1+e[0]),s/2*(1+e[1])],r)}function Zc(t,e,i,n,o,s){var r=t.props.groupable,l=t.state,a=l.transformOrigin,d=l.targetMatrix,c=l.offsetMatrix,u=l.is3d,p=l.width,h=l.height,v=l.left,f=l.top,g=u?4:3,m=r?v:0,b=r?f:0;return la(function(t,e,i,n,o,s){var r=Dc(Fd(e,i,n,o),s);return[t[0]-r[0],t[1]-r[1]]}(o,zc(c,d,function(t,e,i,n,o,s){return void 0===n&&(n=e),void 0===o&&(o=i),void 0===s&&(s=[0,0]),t?t.map((function(t,r){var l=jr(t),a=l.value,d=l.unit,c=r?o:n,u=r?i:e;return"%"===t||isNaN(a)?u*(c?s[r]/c:0):"%"!==d?a:u*a/100})):s}(s,e,i,p,h,a),g),e,i,g,n),[m,b])}function Kc(t,e){return Dc(ic(t.state),e)}function Jc(t,e,i){var n=Pd(t,[e.clientLeft,e.clientTop],i);return[e.left+n[0],e.top+n[1]]}function Qc(t,e,i,n,o,s){var r=o[0],l=o[1],a=s[0],d=s[1],c=[],u=n?0:1,p="vertical"===e?"horizontal":"vertical",h=cc(t.filter((function(t){return t.type===e})),(function(t){return t.element})).map((function(t){return t[0]})).filter((function(t){var e=t.pos,i=t.sizes;return e[u]<=d&&a<=e[u]+i[u]}));return h.forEach((function(t){var e=t.pos[n],o=e+t.sizes[n];h.forEach((function(t){var s=t.pos,a=t.sizes,d=t.element,u=t.className,v=s[n],f=v+a[n],g=0,m=0,b=!0;if(o<=v)r<(g=f-(m=o-v))-i&&(b=!1);else{if(!(f<=e))return;l>(g=v-(m=e-f))+i&&(b=!1)}if(b&&c.push({pos:"vertical"===p?[g,s[1]]:[s[0],g],element:d,sizes:a,size:0,type:p,gap:m,className:u,gapGuidelines:h}),o<=r&&l<=v){var y=(v+o-(l-r))/2;ol(r-(y-i),.1)>=0&&c.push({pos:"vertical"===p?[y,s[1]]:[s[0],y],className:u,element:d,sizes:a,size:0,type:p,gap:o-r,gapGuidelines:h})}}))})),c}function tu(t,e,i,n,o,s,r){void 0===o&&(o=0),void 0===s&&(s=0),void 0===r&&(r={left:0,top:0,right:0,bottom:0});var l=[],a=r.left,d=r.top,c=r.bottom,u=i+r.right-a,p=n+c-d;return t&&t.forEach((function(t){l.push({type:"horizontal",pos:[a,ol(t-s+d,.1)],size:u})})),e&&e.forEach((function(t){l.push({type:"vertical",pos:[ol(t-o+a,.1),d],size:p})})),l}function eu(t,e){var i=[];if(!e.length)return i;var n=t.state,o=t.props.snapCenter,s=n.containerClientRect,r=n.targetClientRect,l=r.top,a=r.left,d=n.rootMatrix,c=n.is3d?4:3,u=Jc(d,s,c),p=u[0],h=u[1],v=Ea(ic(n)),f=la([v.minX,v.minY],hc(d,[a-p,l-h],c)).map((function(t){return e=t,Math.round(e%1==-.5?e-1:e);var e})),g=f[0],m=f[1];return e.forEach((function(t){var e=t.element,n=t.top,s=t.left,r=t.right,l=t.bottom,a=t.className,u=e.getBoundingClientRect(),v=u.left-p,f=u.top-h,b=f+u.height,y=v+u.width,x=hc(d,[v,f],c),_=x[0],w=x[1],S=hc(d,[y,b],c),C=S[0],k=S[1],E=C-_,A=k-w,L=[E,A];!1!==n&&i.push({type:"vertical",element:e,pos:[ol(_+g,.1),w],size:A,sizes:L,className:a}),!1!==l&&i.push({type:"vertical",element:e,pos:[ol(C+g,.1),w],size:A,sizes:L,className:a}),!1!==s&&i.push({type:"horizontal",element:e,pos:[_,ol(w+m,.1)],size:E,sizes:L,className:a}),!1!==r&&i.push({type:"horizontal",element:e,pos:[_,ol(k+m,.1)],size:E,sizes:L,className:a}),o&&(i.push({type:"vertical",element:e,pos:[ol((_+C)/2+g,.1),w],size:A,sizes:L,center:!0,className:a}),i.push({type:"horizontal",element:e,pos:[_,ol((w+k)/2+m,.1)],size:E,sizes:L,center:!0,className:a}))})),i}function iu(t,e,i){void 0===i&&(i=[]);var n=[],o=t.state;if(e&&o.guidelines&&o.guidelines.length)return n;var s=t.props.elementGuidelines,r=void 0===s?[]:s;if(!r.length)return n;var l=o.elementGuidelineValues||[],a=r.map((function(t){return Br(t)&&"element"in t?t:{element:xc(t,!0)}})).filter((function(t){return t.element}));o.elementGuidelineValues=a;var d,c,u=(d=l.map((function(t){return t.element})),c=a.map((function(t){return t.element})),qr(d,c,Ba)),p=u.added,h=u.removed.map((function(t){return l[t].element})),v=eu(t,p.map((function(t){return a[t]})).filter((function(t){return t.refresh&&e||!t.refresh&&!e})));return cd(i.filter((function(t){return-1===h.indexOf(t.element)})),v)}function nu(t){var e=t.state,i=e.snapOffset,n=e.staticGuidelines,o=e.containerClientRect,s=o.overflow,r=o.scrollHeight,l=o.scrollWidth,a=o.clientHeight,d=o.clientWidth,c=o.clientLeft,u=o.clientTop,p=t.props,h=p.snapHorizontal,v=void 0===h||h,f=p.snapVertical,g=void 0===f||f,m=p.snapGap,b=void 0===m||m,y=p.verticalGuidelines,x=p.horizontalGuidelines,_=p.snapThreshold,w=void 0===_?5:_,S=p.snapGridWidth,C=void 0===S?0:S,k=p.snapGridHeight,E=void 0===k?0:k,A=cd(n,iu(t,!0));if(b){var L=Ud(ic(t.state)),q=L.top,T=L.left,M=L.bottom,O=L.right,R=n.filter((function(t){return t.element}));A.push.apply(A,cd(Qc(R,"horizontal",w,0,[T,O],[q,M]),Qc(R,"vertical",w,1,[q,M],[T,O])))}return A.push.apply(A,function(t,e,i,n,o,s){void 0===o&&(o=0);void 0===s&&(s=0);var r=[];if(e)for(var l=0;l<=n;l+=e)r.push({type:"horizontal",pos:[0,ol(l-s,.1)],size:i,hide:!0});if(t)for(l=0;l<=i;l+=t)r.push({type:"vertical",pos:[ol(l-o,.1),0],size:n,hide:!0});return r}(C,E,s?l:d,s?r:a,c,u)),A.push.apply(A,tu(v&&x||!1,g&&y||!1,s?l:d,s?r:a,c,u,i)),A}function ou(t,e,i,n,o){var s=t.props,r=s.snapElement,l=void 0===r||r,a=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var i=t.length-1,n=0;n<i;++n){var o=t[n];if(!Nr(o))return o}return t[i]}(o,s.snapThreshold,5);return su(t.state.guidelines,e,i,{snapThreshold:a,snapCenter:n,snapElement:l})}function su(t,e,i,n){return{vertical:au(t,"vertical",e,n),horizontal:au(t,"horizontal",i,n)}}function ru(t,e,i,n){var o=t.props.snapCenter&&i,s=["left","right"],r=["top","bottom"];return o&&(s.push("center"),r.push("middle")),s=s.filter((function(t){return t in e})),r=r.filter((function(t){return t in e})),ou(t,s.map((function(t){return e[t]})),r.map((function(t){return e[t]})),o,n)}function lu(t){var e=t.isSnap;if(!e)return{isSnap:!1,offset:0,dist:-1,pos:0,guideline:null};var i=t.posInfos[0],n=i.guidelineInfos[0],o=n.offset,s=n.dist,r=n.guideline;return{isSnap:e,offset:o,dist:s,pos:i.pos,guideline:r}}function au(t,e,i,n){var o=void 0===n?{}:n,s=o.snapThreshold,r=void 0===s?5:s,l=o.snapElement,a=o.snapCenter;if(!t||!t.length)return{isSnap:!1,index:-1,posInfos:[]};var d="vertical"===e?0:1,c=i.map((function(i,n){var o=t.map((function(t){var e=t.pos,n=i-e[d];return{offset:n,dist:Math.abs(n),guideline:t}})).filter((function(t){var i=t.guideline,n=t.dist,o=i.type,s=i.center,d=i.element;return!(!l&&d||!a&&s||o!==e||n>r)})).sort((function(t,e){return t.dist-e.dist}));return{pos:i,index:n,guidelineInfos:o}})).filter((function(t){return t.guidelineInfos.length>0})).sort((function(t,e){return t.guidelineInfos[0].dist-e.guidelineInfos[0].dist})),u=c.length>0;return{isSnap:u,index:u?c[0].index:-1,posInfos:c}}function du(t,e){var i=Math.abs(t.offset),n=Math.abs(e.offset);return t.isBound&&e.isBound?n-i:t.isBound?-1:e.isBound?1:t.isSnap&&e.isSnap?n-i:t.isSnap?-1:e.isSnap||i<xd?1:n<xd?-1:i-n}function cu(t,e){return t.slice().sort((function(t,i){var n=t.sign[e],o=i.sign[e],s=t.offset[e],r=i.offset[e];return n?o?du({isBound:t.isBound,isSnap:t.isSnap,offset:s},{isBound:i.isBound,isSnap:i.isSnap,offset:r}):-1:1}))[0]}function uu(t,e){var i=tl([e[0][0],e[1][0]]),n=tl([e[0][1],e[1][1]]);return{vertical:i<=t[0],horizontal:n<=t[1]}}function pu(t,e){var i,n,o=e[0],s=e[1],r=s[0]-o[0],l=s[1]-o[1];if(Math.abs(r)<xd&&(r=0),Math.abs(l)<xd&&(l=0),r)if(l){i=l/r*(t[0]-o[0])+o[1],n=t[1]}else i=o[1],n=t[1];else i=o[0],n=t[0];return i-n}function hu(t,e,i){void 0===i&&(i=xd);var n=pu(t[0],e)<=0;return t.slice(1).every((function(t){var o=pu(t,e);return o<=0===n||Math.abs(o)<=i}))}function vu(t,e,i,n,o){return void 0===o&&(o=0),n&&e-o<=t||!n&&t<=i+o?{isBound:!0,offset:n?e-t:i-t}:{isBound:!1,offset:0}}function fu(t,e,i,n,o){var s=t[0],r=t[1],l=e[0],a=e[1],d=mc(r[1]-s[1]),c=mc(r[0]-s[0]),u=mc(a[1]-l[1]);if(!mc(a[0]-l[0])){if(o&&!d)return{isBound:!1,offset:0};if(c)return vu(d/c*(l[0]-s[0])+s[1],l[1],a[1],i,n);var p=l[0]-s[0];return{isBound:h=Math.abs(p)<=(n||0),offset:h?p:0}}if(!u){if(o&&!c)return{isBound:!1,offset:0};if(d)return vu((l[1]-s[1])/(d/c)+s[0],l[0],a[0],i,n);var h;p=l[1]-s[1];return{isBound:h=Math.abs(p)<=(n||0),offset:h?p:0}}return{isBound:!1,offset:0}}function gu(t,e,i,n){return e.map((function(e){var o=e[0],s=e[1],r=e[2],l=function(t,e,i){var n=t.props.innerBounds;if(!n)return{isAllBound:!1,isBound:!1,isVerticalBound:!1,isHorizontalBound:!1,offset:[0,0]};var o=n.left,s=n.top,r=n.width,l=n.height,a=[[o,s],[o,s+l]],d=[[o,s],[o+r,s]],c=[[o+r,s],[o+r,s+l]],u=[[o,s+l],[o+r,s+l]],p=uu(i,e),h=p.horizontal,v=p.vertical;if(hu([i,[o,s],[o+r,s],[o,s+l],[o+r,s+l]],e))return{isAllBound:!1,isBound:!1,isVerticalBound:!1,isHorizontalBound:!1,offset:[0,0]};var f=fu(e,d,v),g=fu(e,u,v),m=fu(e,a,h),b=fu(e,c,h),y=f.isBound&&g.isBound,x=f.isBound||g.isBound,_=m.isBound&&b.isBound,w=m.isBound||b.isBound,S=pc(f.offset,g.offset),C=pc(m.offset,b.offset),k=[0,0],E=!1,A=!1;return Math.abs(C)<Math.abs(S)?(k=[S,0],E=x,A=y):(k=[0,C],E=w,A=_),{isAllBound:A,isVerticalBound:x,isHorizontalBound:w,isBound:E,offset:k}}(t,[s,r],i),a=l.isBound,d=l.offset,c=l.isVerticalBound,u=l.isHorizontalBound,p=$c({datas:n,distX:d[0],distY:d[1]}).map((function(t,e){return t*(o[e]?2/o[e]:0)}));return{sign:o,isBound:a,isVerticalBound:c,isHorizontalBound:u,isSnap:!1,offset:p}}))}function mu(t,e,i){var n,o=gu(t,bu(e,[0,0],!1).map((function(t){var e=t[0],i=t[1],n=t[2];return[e.map((function(t){return 2*Math.abs(t)})),i,n]})),Dc(e,[0,0]),i),s=cu(o,0),r=cu(o,1),l=0,a=0,d=s.isVerticalBound||r.isVerticalBound,c=s.isHorizontalBound||r.isHorizontalBound;return(d||c)&&(l=(n=function(t,e){var i=t.datas,n=t.distX,o=t.distY,s=i.beforeMatrix,r=i.matrix,l=i.is3d,a=i.startDragBeforeDist,d=i.startDragDist,c=i.absoluteOrigin,u=l?4:3;return la(da(e?s:r,ra(e?a:d,[n,o]),u),c)}({datas:i,distX:-s.offset[0],distY:-r.offset[1]}))[0],a=n[1]),{vertical:{isBound:d,offset:l},horizontal:{isBound:c,offset:a}}}function bu(t,e,i){return function(t,e){var i=[],n=t[0],o=t[1];return n&&o?i.push([[0,2*o],t,[-n,o]],[[2*n,0],t,[n,-o]]):n?(i.push([[2*n,0],[n,1],[n,-1]]),e&&i.push([[0,-1],[n,-1],[-n,-1]],[[0,1],[n,1],[-n,1]])):o?(i.push([[0,2*o],[1,o],[-1,o]]),e&&i.push([[-1,0],[-1,o],[-1,-o]],[[1,0],[1,o],[1,-o]])):i.push([[-1,0],[-1,-1],[-1,1]],[[1,0],[1,-1],[1,1]],[[0,-1],[-1,-1],[1,-1]],[[0,1],[-1,1],[1,1]]),i}(e,i).map((function(e){var i=e[0],n=e[1],o=e[2];return[i,Dc(t,n),Dc(t,o)]}))}function yu(t,e,i,n){var o=n?t.map((function(t){return va(t,n)})):t,s=cd([i],e);return[[o[0],o[1]],[o[1],o[3]],[o[3],o[2]],[o[2],o[0]]].some((function(t){return!hu(s,t)}))}function xu(t,e,i,n,o){var s=t.props.innerBounds,r=o*Math.PI/180;if(!s)return[];var l=s.left,a=s.top,d=s.width,c=s.height,u=l-n[0],p=l+d-n[0],h=a-n[1],v=a+c-n[1],f=[[u,h],[p,h],[u,v],[p,v]],g=Dc(i,[0,0]);if(!yu(i,f,g,0))return[];var m=[],b=f.map((function(t){return[Gd(t),el([0,0],t)]}));return[[i[0],i[1]],[i[1],i[3]],[i[3],i[2]],[i[2],i[0]]].forEach((function(t){var i=el([0,0],function(t){var e=t[0],i=t[1],n=i[0]-e[0],o=i[1]-e[1];if(!n)return[e[0],0];if(!o)return[0,e[1]];var s=o/n,r=-s*e[0]+e[1];return[-r/(s+1/s),r/(s*s+1)]}(t)),n=function(t){var e=t[0],i=t[1],n=i[0]-e[0],o=i[1]-e[1];if(!n)return Math.abs(e[0]);if(!o)return Math.abs(e[1]);var s=o/n;return Math.abs((-s*e[0]+e[1])/Math.sqrt(Math.pow(s,2)+1))}(t);m.push.apply(m,b.filter((function(t){var e=t[0];return e&&n<=e})).map((function(t){var e=t[0],o=t[1],s=Math.acos(e?n/e:0);return[r+(o+s)-i,r+(o-s)-i]})).reduce((function(t,e){return t.push.apply(t,e),t}),[]).filter((function(t){return!yu(e,f,g,t)})).map((function(t){return ol(180*t/Math.PI,xd)})))})),m}function _u(t,e,i){var n=t||{},o=n.position,s=void 0===o?"client":o,r=n.left,l=void 0===r?-1/0:r,a=n.top,d=void 0===a?-1/0:a,c=n.right,u=void 0===c?1/0:c,p=n.bottom,h={position:s,left:l,top:d,right:u,bottom:void 0===p?1/0:p};return{vertical:Su(h,e,!0),horizontal:Su(h,i,!1)}}function wu(t,e){var i=t.state,n=i.containerClientRect,o=n.clientHeight,s=n.clientWidth,r=n.clientLeft,l=n.clientTop,a=i.snapOffset,d=a.left,c=a.top,u=a.right,p=a.bottom,h=e||t.props.bounds||{},v="css"===(h.position||"client"),f=h.left,g=void 0===f?-1/0:f,m=h.top,b=void 0===m?-1/0:m,y=h.right,x=void 0===y?v?-1/0:1/0:y,_=h.bottom,w=void 0===_?v?-1/0:1/0:_;return v&&(x=s+u-d-x,w=o+p-c-w),{left:g+d-r,right:x+d-r,top:b+c-l,bottom:w+c-l}}function Su(t,e,i){var n=t[i?"left":"top"],o=t[i?"right":"bottom"],s=Math.min.apply(Math,e),r=Math.max.apply(Math,e),l=[];return n+1>s&&l.push({isBound:!0,offset:s-n,pos:n}),o-1<r&&l.push({isBound:!0,offset:r-o,pos:o}),l.length||l.push({isBound:!1,offset:0,pos:0}),l.sort((function(t,e){return Math.abs(e.offset)-Math.abs(t.offset)}))}function Cu(t,e,i){return(i?t.map((function(t){return va(t,i)})):t).some((function(t){return t[0]<e.left&&Math.abs(t[0]-e.left)>.1||t[0]>e.right&&Math.abs(t[0]-e.right)>.1||t[1]<e.top&&Math.abs(t[1]-e.top)>.1||t[1]>e.bottom&&Math.abs(t[1]-e.bottom)>.1}))}function ku(t,e,i,n,o){if(!t.props.bounds)return[];var s=o*Math.PI/180,r=wu(t),l=r.left,a=r.top,d=r.right,c=r.bottom,u=l-n[0],p=d-n[0],h=a-n[1],v=c-n[1],f={left:u,top:h,right:p,bottom:v};if(!Cu(i,f,0))return[];var g=[];return[[u,0],[p,0],[h,1],[v,1]].forEach((function(t){var n=t[0],o=t[1];i.forEach((function(t){var i=el([0,0],t);g.push.apply(g,function(t,e,i){var n=Gd(t),o=Math.sqrt(n*n-e*e)||0;return[o,-o].sort((function(e,n){return Math.abs(e-t[i?0:1])-Math.abs(n-t[i?0:1])})).map((function(t){return el([0,0],i?[t,e]:[e,t])}))}(t,n,o).map((function(t){return s+t-i})).filter((function(t){return!Cu(e,f,t)})).map((function(t){return ol(180*t/Math.PI,xd)})))}))})),g}var Eu={horizontal:["left","top","width","Y","X"],vertical:["top","left","height","X","Y"]};function Au(t,e,i,n){var o=t-i,s=o<0?o+e:n;return{size:(o<0?0:o)-s,pos:s}}function Lu(t,e){return function(t,e){var i,n=t.direction,o=t.classNames,s=t.size,r=t.pos,l=t.zoom,a=t.key,d="horizontal"===n,c=d?"Y":"X";return e.createElement("div",{key:a,className:o.join(" "),style:(i={},i[d?"width":"height"]=""+s,i.transform="translate("+r[0]+", "+r[1]+") translate"+c+"(-50%) scale"+c+"("+l+")",i)})}(dd(dd({},t),{classNames:cd([Ld("line","guideline",t.direction)],t.classNames).filter((function(t){return t})),size:t.size||t.sizeValue+"px",pos:t.pos||t.posValue.map((function(t){return ol(t,.1)+"px"}))}),e)}function qu(t,e,i,n,o,s,r,l,a,d,c,u){var p=t.props,h=p.zoom,v=p.isDisplaySnapDigit,f=void 0===v||v,g=Eu[e],m=g[0],b=g[1],y=g[2],x=g[4];return uc(i.map((function(t,i){var p=!0;return t.map((function(t,v){var g,_=t.pos,w=t.size,S=Au(_[d],w,o,s),C=S.pos,k=S.size;if(k<l)return null;var E=p;p=!1;var A=f&&E?parseFloat(k.toFixed(a)):0;return u.createElement("div",{key:e+"LinkGuideline"+i+"-"+v,className:Ld("guideline-group",e),style:(g={},g[m]=n+C+"px",g[b]=-r+_[d?0:1]+"px",g[y]=k+"px",g)},Lu({direction:e,classNames:[Ld("dashed")],size:"100%",posValue:[0,0],sizeValue:k,zoom:h},u),u.createElement("div",{className:Ld("size-value"),style:{transform:"translate"+x+"(-50%) scale("+h+")"}},A>0?c(A):""))}))})))}function Tu(t,e,i,n,o,s,r,l){var a=t.props.zoom;return i.map((function(t,i){var d=t.type,c=t.pos,u=[0,0];return u[r]=n,u[r?0:1]=-o+c,Lu({key:e+"TargetGuideline"+i,classNames:[Ld("target","bold",d)],posValue:u,sizeValue:s,zoom:a,direction:e},l)}))}function Mu(t,e,i,n,o,s){var r=t.props.isDisplayInnerSnapDigit,l=i?0:1,a=n[i],d=s[i],c=[],u=e.filter((function(t){var e=t.element,o=t.pos,s=t.size;if(r&&e&&o[i]<a&&a+d<o[i]+s){var u=o[i]-a,p=o[l]-n[l];return c.push(dd(dd({},t),{inner:!0,gap:u,renderPos:i?[p,u]:[u,p]})),c.push(dd(dd({},t),{inner:!0,gap:o[i]+s-a-d,renderPos:i?[p,d]:[d,p]})),!1}return!0})),p=function(t,e,i,n){var o=[],s=cc(t.filter((function(t){var e=t.element,i=t.gap;return e&&!i})),(function(t){var i=t.element,s=t.pos,r=s[n],l=(Math.min(0,r-e)<0?-1:1)+"_"+s[n?0:1],a=Xr(o,(function(t){var e=t[0],n=t[1];return i===e&&r===n}));return a?a[2]:(o.push([i,r,l]),l)}));return s.forEach((function(t){t.sort((function(t,o){return Au(t.pos[n],t.size,e,i).size-Au(o.pos[n],t.size,e,i).size||t.pos[n?0:1]-o.pos[n?0:1]}))})),s}(u=u.filter((function(t){var e=t.element,n=t.pos,o=t.size,s=n[i];return!e||u.every((function(e){var n=e.element,r=e.pos,l=e.size,a=r[i];return!n||t===e||(s+o<=a||a+l<=s||s<a&&a+l<s+o)}))})),o[i],d,i);return c=c.filter((function(t){var e=t.gap,n=t.pos[l];return p.every((function(t){return t.every((function(t){var o=t.pos,r=-a+o[i];return o[l]!==n||!(e<0&&r<0)&&!(e>0&&r>s[i])}))}))})),{guidelines:u,groups:p,gapGuidelines:c}}function Ou(t,e,i,n,o){var s=t.props.zoom;return i.filter((function(t){return!t.hide})).map((function(t,i){var r=t.pos,l=t.size,a=t.element,d=[-n[0]+r[0],-n[1]+r[1]];return Lu({key:e+"Guideline"+i,classNames:a?[Ld("bold")]:[],direction:e,posValue:d,sizeValue:l,zoom:s},o)}))}function Ru(t,e,i,n,o){var s=t.props,r=s.snapDigit,l=void 0===r?0:r,a=s.isDisplaySnapDigit,d=void 0===a||a,c=s.zoom,u="horizontal"===e?"X":"Y",p="horizontal"===e?"width":"height";return i.map((function(t,i){var s,r=t.renderPos,a=t.gap,h=t.className,v=t.inner,f=Math.abs(a),g=d?parseFloat(f.toFixed(l)):0;return o.createElement("div",{key:e+"GapGuideline"+i,className:Ld("guideline-group",e),style:(s={left:r[0]+"px",top:r[1]+"px"},s[p]=f+"px",s)},Lu({direction:e,classNames:[Ld(v?"dashed":"gap"),h],size:"100%",posValue:[0,0],sizeValue:f,zoom:c},o),o.createElement("div",{className:Ld("size-value","gap"),style:{transform:"translate"+u+"(-50%) scale("+c+")"}},g>0?n(g):""))}))}function Nu(t){var e=t.state;if(!e.guidelines||!e.guidelines.length){var i=t.state.container,n=t.props.snapContainer||i,o=e.containerClientRect,s={left:0,top:0,bottom:0,right:0};if(i!==n){var r=xc(n,!0);if(r){var l=Qd(r),a=wc(e,[l.left-o.left,l.top-o.top]),d=wc(e,[l.right-o.right,l.bottom-o.bottom]);s.left=ol(a[0],.1),s.top=ol(a[1],.1),s.right=ol(d[0],.1),s.bottom=ol(d[1],.1)}}e.snapOffset=s,e.elementGuidelineValues=[],e.staticGuidelines=iu(t,!1),e.guidelines=nu(t),e.enableSnap=!0}}function Bu(t,e){var i=t.props,n=i.snappable,o=i.bounds,s=i.innerBounds,r=i.verticalGuidelines,l=i.horizontalGuidelines,a=i.snapGridWidth,d=i.snapGridHeight,c=t.state,u=c.guidelines,p=c.enableSnap;return!(!n||!p||e&&!0!==n&&n.indexOf(e)<0)&&!!(a||d||o||s||u&&u.length||r&&r.length||l&&l.length)}function $u(t,e,i,n,o){var s=function(t,e,i,n){var o=e[0]-t[0],s=e[1]-t[1];Math.abs(o)<xd&&(o=0);Math.abs(s)<xd&&(s=0);if(!o)return n?[0,0]:[0,i];if(!s)return n?[i,0]:[0,0];var r=s/o,l=t[1]-r*t[0];return n?[i,r*(e[0]+i)+l-e[1]]:[(e[1]+i-l)/r-e[0],i]}(t,e,i,n);if(!s)return{isOutside:!1,offset:[0,0]};var r=nl(t,e),l=nl(s,t),a=nl(s,e),d=l>r||a>r,c=$c({datas:o,distX:s[0],distY:s[1]});return{offset:[c[0],c[1]],isOutside:d}}function Iu(t,e,i,n,o,s){var r=Fd(t,e,i,s?4:3);return ec(r,la(n,function(t,e){return Dc(t,e.map((function(t){return-t})))}(r,o)))}function Hu(t,e){return t.isBound?t.offset:e.isSnap?e.offset:0}function Du(t,e){return t.isBound?t.offset:e.isSnap?lu(e).offset:0}function zu(t,e,i,n){var o=function(t,e,i){var n=wu(t),o=n.left,s=n.top,r=n.right,l=n.bottom,a=i[0],d=i[1],c=la(i,e),u=c[0],p=c[1];Math.abs(u)<xd&&(u=0),Math.abs(p)<xd&&(p=0);var h=p>0,v=u>0,f={isBound:!1,offset:0,pos:0},g={isBound:!1,offset:0,pos:0};if(0===u&&0===p)return{vertical:f,horizontal:g};if(0===u)h?l<d&&(g.pos=l,g.offset=d-l):s>d&&(g.pos=s,g.offset=d-s);else if(0===p)v?r<a&&(f.pos=r,f.offset=a-r):o>a&&(f.pos=o,f.offset=a-o);else{var m=p/u,b=i[1]-m*a,y=0,x=0,_=!1;v&&r<=a?(y=m*r+b,x=r,_=!0):!v&&a<=o&&(y=m*o+b,x=o,_=!0),_&&(y<s||y>l)&&(_=!1),_||(h&&l<=d?(x=((y=l)-b)/m,_=!0):!h&&d<=s&&(x=((y=s)-b)/m,_=!0)),_&&(f.isBound=!0,f.pos=x,f.offset=a-x,g.isBound=!0,g.pos=y,g.offset=d-y)}return{vertical:f,horizontal:g}}(t,e,i),s=o.horizontal,r=o.vertical,l=n?{horizontal:{isSnap:!1},vertical:{isSnap:!1}}:function(t,e,i){var n=i[0],o=i[1],s=e[0],r=e[1],l=la(i,e),a=l[0],d=l[1],c=d>0,u=a>0;a=mc(a),d=mc(d);var p={isSnap:!1,offset:0,pos:0},h={isSnap:!1,offset:0,pos:0};if(0===a&&0===d)return{vertical:p,horizontal:h};var v=ou(t,a?[n]:[],d?[o]:[]),f=v.vertical,g=v.horizontal;f.posInfos.filter((function(t){var e=t.pos;return u?e>=s:e<=s})),g.posInfos.filter((function(t){var e=t.pos;return c?e>=r:e<=r})),f.isSnap=f.posInfos.length>0,g.isSnap=g.posInfos.length>0;var m=lu(f),b=m.isSnap,y=m.guideline,x=lu(g),_=x.isSnap,w=x.guideline,S=_?w.pos[1]:0,C=b?y.pos[0]:0;if(0===a)_&&(h.isSnap=!0,h.pos=w.pos[1],h.offset=o-h.pos);else if(0===d)b&&(p.isSnap=!0,p.pos=C,p.offset=n-C);else{var k=d/a,E=i[1]-k*n,A=0,L=0,q=!1;b?(A=k*(L=C)+E,q=!0):_&&(L=((A=S)-E)/k,q=!0),q&&(p.isSnap=!0,p.pos=L,p.offset=n-L,h.isSnap=!0,h.pos=A,h.offset=o-A)}return{vertical:p,horizontal:h}}(t,e,i),a=l.horizontal,d=l.vertical,c=Hu(s,a),u=Hu(r,d),p=Math.abs(c),h=Math.abs(u);return{horizontal:{isBound:s.isBound,isSnap:a.isSnap,offset:c,dist:p},vertical:{isBound:r.isBound,isSnap:d.isSnap,offset:u,dist:h}}}function Pu(t,e,i,n){void 0===n&&(n=i);var o=_u(wu(t),n.map((function(t){return t[0]})),n.map((function(t){return t[1]}))),s=o.horizontal,r=o.vertical,l=e?{horizontal:{isSnap:!1,index:-1},vertical:{isSnap:!1,index:-1}}:ou(t,i.map((function(t){return t[0]})),i.map((function(t){return t[1]})),t.props.snapCenter),a=l.horizontal,d=l.vertical,c=Du(s[0],a),u=Du(r[0],d),p=Math.abs(c),h=Math.abs(u);return{horizontal:{isBound:s[0].isBound,isSnap:a.isSnap,snapIndex:a.index,offset:c,dist:p,bounds:s,snap:a},vertical:{isBound:r[0].isBound,isSnap:d.isSnap,snapIndex:d.index,offset:u,dist:h,bounds:r,snap:d}}}function Fu(t,e,i,n,o){void 0===o&&(o={});var s=_u(e,i,n),r=s.horizontal,l=s.vertical,a=o.isRequest?{horizontal:{isSnap:!1,index:-1},vertical:{isSnap:!1,index:-1}}:su(t,i,n,o),d=a.horizontal,c=a.vertical,u=Du(r[0],d),p=Du(l[0],c),h=Math.abs(u),v=Math.abs(p);return{horizontal:{isBound:r[0].isBound,isSnap:d.isSnap,snapIndex:d.index,offset:u,dist:h,bounds:r,snap:d},vertical:{isBound:l[0].isBound,isSnap:c.isSnap,snapIndex:c.index,offset:p,dist:v,bounds:l,snap:c}}}function Uu(t,e,i,n,o,s){return i.map((function(i){var r=i[0],l=i[1],a=Dc(e,r),d=Dc(e,l),c=n?zu(t,a,d,o):Pu(t,o,[d]),u=c.horizontal,p=u.offset,h=u.isBound,v=u.isSnap,f=c.vertical,g=f.offset,m=f.isBound,b=f.isSnap,y=la(l,r);if(!g&&!p)return{isBound:m||h,isSnap:b||v,sign:y,offset:[0,0]};var x=function(t,e,i,n){var o=el(t,e)/Math.PI*180,s=i.vertical,r=s.isBound,l=s.isSnap,a=s.dist,d=i.horizontal,c=d.isBound,u=d.isSnap,p=o%180,h=p<3||p>177,v=p>87&&p<93;return d.dist<a&&(r||l&&!v&&(!n||!h))?"vertical":!c&&(!u||h||n&&v)?"":"horizontal"}(a,d,c,n);if(!x)return{sign:y,isBound:!1,isSnap:!1,offset:[0,0]};var _="vertical"===x,w=$u(a,d,-(_?g:p),_,s).offset.map((function(t,e){return t*(y[e]?2/y[e]:0)}));return{sign:y,isBound:_?m:h,isSnap:_?b:v,offset:w}}))}function Wu(t,e,i,n,o,s){var r=function(t,e){var i=[],n=[-t[0],-t[1]];return t[0]&&t[1]?(i.push([n,[t[0],-t[1]]],[n,[-t[0],t[1]]]),e&&i.push([n,t])):t[0]?e?i.push([n,[n[0],-1]],[n,[n[0],1]],[n,[t[0],-1]],[n,t],[n,[t[0],1]]):i.push([[n[0],-1],[t[0],-1]],[[n[0],0],[t[0],0]],[[n[0],1],[t[0],1]]):t[1]?e?i.push([n,[-1,n[1]]],[n,[1,n[1]]],[n,[-1,t[1]]],[n,[1,t[1]]],[n,t]):i.push([[-1,n[1]],[-1,t[1]]],[[0,n[1]],[0,t[1]]],[[1,n[1]],[1,t[1]]]):i.push([n,[1,0]],[n,[-1,0]],[n,[0,-1]],[n,[0,1]],[[1,0],[1,-1]],[[1,0],[1,1]],[[0,1],[1,1]],[[0,1],[-1,1]],[[-1,0],[-1,-1]],[[-1,0],[-1,1]],[[0,-1],[1,-1]],[[0,-1],[-1,-1]]),i}(i,n),l=bu(e,i,n),a=cd(Uu(t,e,r,n,o,s),gu(t,l,Dc(e,[0,0]),s)),d=cu(a,0),c=cu(a,1);return{width:{isBound:d.isBound,offset:d.offset[0]},height:{isBound:c.isBound,offset:c.offset[1]}}}function ju(t,e,i,n,o,s,r,l){for(var a=ic(t.state),d=t.props.keepRatio,c=0,u=0,p=0;p<2;++p){var h=Wu(t,e(c,u),o,d,r,l),v=h.width,f=h.height,g=v.isBound,m=f.isBound,b=v.offset,y=f.offset;if(1===p&&(g||(b=0),m||(y=0)),0===p&&r&&!g&&!m)return[0,0];if(d){var x=Math.abs(b)*(i?1/i:1),_=Math.abs(y)*(n?1/n:1);(g&&m?x<_:m||!g&&x<_)?b=i*y/n:y=n*b/i}c+=b,u+=y}if(o[0]&&o[1]){var w=function(t,e,i,n,o){var s=[-i[0],-i[1]],r=t.state,l=r.width,a=r.height,d=t.props.bounds,c=1/0,u=1/0;if(d){var p=[[i[0],-i[1]],[-i[0],i[1]]],h=d.left,v=void 0===h?-1/0:h,f=d.top,g=void 0===f?-1/0:f,m=d.right,b=void 0===m?1/0:m,y=d.bottom,x=void 0===y?1/0:y;p.forEach((function(t){var i=t[0]!==s[0],r=t[1]!==s[1],d=Dc(e,t),p=360*el(n,d)/Math.PI;if(r){var h=d.slice();(Math.abs(p-360)<2||Math.abs(p-180)<2)&&(h[1]=n[1]);var f=$u(n,h,(n[1]<d[1]?x:g)-d[1],!1,o),m=f.offset[1],y=f.isOutside;isNaN(m)||(u=a+(y?1:-1)*Math.abs(m))}if(i){h=d.slice(),(Math.abs(p-90)<2||Math.abs(p-270)<2)&&(h[0]=n[0]);var _=$u(n,h,(n[0]<d[0]?b:v)-d[0],!0,o),w=_.offset[0],S=_.isOutside;isNaN(w)||(c=l+(S?1:-1)*Math.abs(w))}}))}return{maxWidth:c,maxHeight:u}}(t,a,o,s,l),S=w.maxWidth,C=w.maxHeight,k=function(t,e,i,n,o,s,r,l,a){var d=Pu(t,l,[Dc(e,r)]),c=d.horizontal.offset,u=d.vertical.offset;if(u||c){var p=$c({datas:a,distX:-u,distY:-c}),h=p[0],v=p[1];return[Math.min(o||1/0,i+r[0]*h)-i,Math.min(s||1/0,n+r[1]*v)-n]}return[0,0]}(t,e(c,u).map((function(t){return t.map((function(t){return ol(t,yd)}))})),i+c,n+u,S,C,o,r,l);c+=b=k[0],u+=y=k[1]}return[c,u]}function Gu(t,e,i,n){if(!Bu(t,"rotatable"))return n;var o=e.pos1,s=e.pos2,r=e.pos3,l=e.pos4,a=n*Math.PI/180,d=[o,s,r,l].map((function(t){return la(t,i)})),c=d.map((function(t){return va(t,a)})),u=cd(ku(t,d,c,i,n),xu(t,d,c,i,n));return u.sort((function(t,e){return Math.abs(t-n)-Math.abs(e-n)})),u.length?u[0]:n}function Yu(t,e,i,n,o){var s=o.width,r=o.height,l=o.fixedPosition;if(!Bu(t,"scalable"))return[0,0];var a=o.is3d,d=ju(t,(function(t,n){return Iu(function(t,e){var i=t.transformOrigin,n=t.offsetMatrix,o=t.is3d?4:3;return zc(n,sa(t.targetMatrix,ya(e,o),o),i,o)}(o,ra(e,[t/s,n/r])),s,r,l,i,a)}),s,r,i,l,n,o);return[d[0]/s,d[1]/r]}function Vu(t,e,i,n,o,s){if(!Bu(t,"draggable"))return[{isSnap:!1,isBound:!1,offset:0},{isSnap:!1,isBound:!1,offset:0}];var r=ec(s.absolutePoses,[e,i]),l=Ud(r),a=l.left,d=l.right,c=l.top,u=l.bottom,p=[[a,c],[d,c],[a,u],[d,u]];t.props.snapCenter&&p.push([(a+d)/2,(c+u)/2]);var h=Pu(t,o,p,r),v=h.vertical,f=h.horizontal,g=mu(t,r,s),m=g.vertical,b=g.horizontal,y=v.isSnap,x=f.isSnap,_=v.isBound||m.isBound,w=f.isBound||b.isBound,S=function(t,e,i,n,o){var s=e[0],r=e[1],l=i[0],a=i[1],d=n[0],c=n[1],u=o[0],p=o[1],h=-u,v=-p;if(t&&s&&r){h=0,v=0;var f=[];if(l&&a?f.push([0,p],[u,0]):l?f.push([u,0]):a?f.push([0,p]):d&&c?f.push([0,p],[u,0]):d?f.push([u,0]):c&&f.push([0,p]),f.length){f.sort((function(t,e){return Gd(la([s,r],t))-Gd(la([s,r],e))}));var g=f[0];if(g[0]&&Math.abs(s)>xd)h=-g[0],v=r*Math.abs(s+h)/Math.abs(s)-r;else if(g[1]&&Math.abs(r)>xd){var m=r;v=-g[1],h=s*Math.abs(r+v)/Math.abs(m)-s}if(t&&a&&l)if(Math.abs(h)>xd&&Math.abs(h)<Math.abs(u))h*=b=Math.abs(u)/Math.abs(h),v*=b;else if(Math.abs(v)>xd&&Math.abs(v)<Math.abs(p)){var b;h*=b=Math.abs(p)/Math.abs(v),v*=b}else h=pc(-u,h),v=pc(-p,v)}}else h=s||l?-u:0,v=r||a?-p:0;return[h,v]}(n,[e,i],[_,w],[y,x],[pc(v.offset,m.offset),pc(f.offset,b.offset)]);return[{isBound:_,isSnap:y,offset:S[0]},{isBound:w,isSnap:x,offset:S[1]}]}function Xu(t){var e=[];return t.forEach((function(t){t.guidelineInfos.forEach((function(t){var i=t.guideline;e.indexOf(i)>-1||e.push(i)}))})),e}function Zu(t,e,i,n){var o=t.filter((function(t){var i=t.element,n=t.gap,o=t.type;return i&&n&&o===e})),s="vertical"===e?[0,1]:[1,0],r=s[0],l=s[1];return uc(o.map((function(t){var e=t.pos,o=t.gap,s=t.gapGuidelines,a=t.sizes,d=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return t.sort((function(t,e){return Math.abs(t)-Math.abs(e)})),t[0]}(e[l]+a[l]-i[l],e[l]-i[l]-n[l]),c=Math.min(a[l],n[l]);if(d>0&&d>c?d=2*(d-c/2):d<0&&d<-c&&(d=2*(d+c/2)),0===d)return[];var u=(d>0?0:n[l])+d/2;return cd(function(t,e,i,n,o,s,r){var l=Math.abs(s),a=o[e]+(s>0?n[0]:0);return t.filter((function(t){return t.pos[e]<=i[e]})).sort((function(t,i){var n=t.pos;return i.pos[e]-n[e]})).filter((function(t){var i=t.pos,n=t.sizes,o=i[e];return ol(o+n[e],yd)===ol(a-l,yd)&&(a=o,!0)})).map((function(t){var n=-i[e]+t.pos[e]+t.sizes[e];return dd(dd({},t),{gap:s,renderPos:e?[r,n]:[n,r]})}))}(s,r,i,n,e,o,u),function(t,e,i,n,o,s,r){var l=Math.abs(s),a=o[e]+(s<0?n[e]:0);return t.filter((function(t){return t.pos[e]>i[e]})).sort((function(t,i){var n=t.pos,o=i.pos;return n[e]-o[e]})).filter((function(t){var i=t.pos,n=t.sizes,o=i[e];return ol(o,yd)===ol(a+l,yd)&&(a=o+n[e],!0)})).map((function(t){var n=-i[e]+t.pos[e]-l;return dd(dd({},t),{gap:s,renderPos:e?[r,n]:[n,r]})}))}(s,r,i,n,e,o,u))})))}function Ku(t,e,i,n,o,s){var r=_u(wu(t,s),e,i),l=r.vertical,a=r.horizontal;l.forEach((function(t){t.isBound&&n.push({type:"bounds",pos:t.pos})})),a.forEach((function(t){t.isBound&&o.push({type:"bounds",pos:t.pos})}));var d=function(t){var e=t.props.innerBounds;if(!e)return{vertical:[],horizontal:[]};var i=t.getRect(),n=i.pos1,o=i.pos2,s=i.pos3,r=i.pos4,l=Dc([n,o,s,r],[0,0]),a=e.left,d=e.top,c=e.width,u=e.height,p=[[a,d],[a,d+u]],h=[[a,d],[a+c,d]],v=[[a+c,d],[a+c,d+u]],f=[[a,d+u],[a+c,d+u]],g=[],m=[],b={top:!1,bottom:!1,left:!1,right:!1};return[[n,o],[o,r],[r,s],[s,n]].forEach((function(t){var e=uu(l,t),i=e.horizontal,n=e.vertical,o=fu(t,h,n,1,!0),s=fu(t,f,n,1,!0),r=fu(t,p,i,1,!0),y=fu(t,v,i,1,!0);o.isBound&&!b.top&&(g.push(d),b.top=!0),s.isBound&&!b.bottom&&(g.push(d+u),b.bottom=!0),r.isBound&&!b.left&&(m.push(a),b.left=!0),y.isBound&&!b.right&&(m.push(a+c),b.right=!0)})),{horizontal:g,vertical:m}}(t),c=d.vertical,u=d.horizontal;c.forEach((function(t){Vr(n,(function(e){var i=e.type,n=e.pos;return"bounds"===i&&n===t}))>=0||n.push({type:"bounds",pos:t})})),u.forEach((function(t){Vr(o,(function(e){var i=e.type,n=e.pos;return"bounds"===i&&n===t}))>=0||o.push({type:"bounds",pos:t})}))}var Ju={name:"snappable",props:{snappable:[Boolean,Array],snapContainer:Object,snapCenter:Boolean,snapHorizontal:Boolean,snapVertical:Boolean,snapElement:Boolean,snapGap:Boolean,snapGridWidth:Number,snapGridHeight:Number,isDisplaySnapDigit:Boolean,isDisplayInnerSnapDigit:Boolean,snapDigit:Number,snapThreshold:Number,horizontalGuidelines:Array,verticalGuidelines:Array,elementGuidelines:Array,bounds:Object,innerBounds:Object,snapDistFormat:Function},events:{onSnap:"snap"},css:[":host {\n --bounds-color: #d66;\n}\n.guideline {\n pointer-events: none;\n z-index: 2;\n}\n.guideline.bounds {\n background: #d66;\n background: var(--bounds-color);\n}\n.guideline-group {\n position: absolute;\n top: 0;\n left: 0;\n}\n.guideline-group .size-value {\n position: absolute;\n color: #f55;\n font-size: 12px;\n font-weight: bold;\n}\n.guideline-group.horizontal .size-value {\n transform-origin: 50% 100%;\n transform: translateX(-50%);\n left: 50%;\n bottom: 5px;\n}\n.guideline-group.vertical .size-value {\n transform-origin: 0% 50%;\n top: 50%;\n transform: translateY(-50%);\n left: 5px;\n}\n.guideline.gap {\n background: #f55;\n}\n.size-value.gap {\n color: #f55;\n}\n"],render:function(t,e){var i=t.state,n=i.top,o=i.left,s=i.pos1,r=i.pos2,l=i.pos3,a=i.pos4,d=i.snapRenderInfo,c=i.targetClientRect,u=i.containerClientRect,p=i.is3d,h=i.rootMatrix;if(!d||!Bu(t,""))return[];i.staticGuidelines=iu(t,!1,i.staticGuidelines),i.guidelines=nu(t);var v=p?4:3,f=Math.min(s[0],r[0],l[0],a[0]),g=Math.min(s[1],r[1],l[1],a[1]),m=Jc(h,u,v),b=hc(h,[c.left-m[0],c.top-m[1]],v),y=b[0],x=b[1],_=t.props,w=_.snapThreshold,S=void 0===w?5:w,C=_.snapDigit,k=void 0===C?0:C,E=_.snapDistFormat,A=void 0===E?function(t){return t}:E,L=d.externalPoses||[],q=ic(t.state),T=[],M=[],O=[],R=[],N=[],B=Ud(q),$=B.width,I=B.height,H=B.top,D=B.left,z=B.bottom,P=B.right,F=L.length>0,U=F?Ud(L):{};if(!d.request){if(d.direction&&N.push(function(t,e,i){var n=[];if(i[0]&&i[1])n=[i,[-i[0],i[1]],[i[0],-i[1]]].map((function(t){return Dc(e,t)}));else if(i[0]||i[1])t.props.keepRatio?n=[[-1,-1],[-1,1],[1,-1],[1,1],i].map((function(t){return Dc(e,t)})):(n=Hc(e,i)).length>1&&n.push([(n[0][0]+n[1][0])/2,(n[0][1]+n[1][1])/2]);else for(var o=[e[0],e[1],e[3],e[2],e[0]],s=0;s<4;++s)n.push(o[s]),n.push([(o[s][0]+o[s+1][0])/2,(o[s][1]+o[s+1][1])/2]);return ou(t,n.map((function(t){return t[0]})),n.map((function(t){return t[1]})),!0,1)}(t,q,d.direction)),d.snap){var W=Ud(q);d.center&&(W.middle=(W.top+W.bottom)/2,W.center=(W.left+W.right)/2),N.push(ru(t,W,!0,1))}F&&(d.center&&(U.middle=(U.top+U.bottom)/2,U.center=(U.left+U.right)/2),N.push(ru(t,U,!0,1))),N.forEach((function(t){var e=t.vertical.posInfos,i=t.horizontal.posInfos;T.push.apply(T,e.filter((function(t){return t.guidelineInfos.some((function(t){return!t.guideline.hide}))})).map((function(t){return{type:"snap",pos:t.pos}}))),M.push.apply(M,i.filter((function(t){return t.guidelineInfos.some((function(t){return!t.guideline.hide}))})).map((function(t){return{type:"snap",pos:t.pos}}))),O.push.apply(O,Xu(e)),R.push.apply(R,Xu(i))}))}Ku(t,[D,P],[H,z],T,M),F&&Ku(t,[U.left,U.right],[U.top,U.bottom],T,M,d.externalBounds);var j=Zu(O,"vertical",[o,n],[$,I]),G=Zu(R,"horizontal",[o,n],[$,I]),Y=cd(O,R);rc(t,"onSnap",{guidelines:Y.filter((function(t){return!t.element})),elements:cc(Y.filter((function(t){return t.element})),(function(t){return t.element})),gaps:cd(G,j)},!0);var V=Mu(t,R,0,[o,n],[y,x],[$,I]),X=V.guidelines,Z=V.groups,K=V.gapGuidelines,J=Mu(t,O,1,[o,n],[y,x],[$,I]),Q=J.guidelines,tt=J.groups;return cd(Ru(t,"vertical",cd(G,J.gapGuidelines),A,e),Ru(t,"horizontal",cd(j,K),A,e),qu(t,"horizontal",Z,f,y,$,n,S,k,0,A,e),qu(t,"vertical",tt,g,x,I,o,S,k,1,A,e),Ou(t,"horizontal",X,[o,n],e),Ou(t,"vertical",Q,[o,n],e),Tu(t,"horizontal",M,f,n,$,0,e),Tu(t,"vertical",T,g,o,I,1,e))},dragStart:function(t,e){t.state.snapRenderInfo={request:e.isRequest,snap:!0,center:!0},Nu(t)},drag:function(t){var e=t.state;e.staticGuidelines=iu(t,!1,e.staticGuidelines),e.guidelines=nu(t)},pinchStart:function(t){this.unset(t)},dragEnd:function(t){this.unset(t)},dragControlCondition:function(t,e){return!(!bc(0,e)&&!ap(t,e))||(!e.isRequest&&e.inputEvent?rl(e.inputEvent.target,Ld("snap-control")):void 0)},dragControlStart:function(t){t.state.snapRenderInfo=null,Nu(t)},dragControl:function(t){this.drag(t)},dragControlEnd:function(t){this.unset(t)},dragGroupStart:function(t,e){this.dragStart(t,e)},dragGroup:function(t){this.drag(t)},dragGroupEnd:function(t){this.unset(t)},dragGroupControlStart:function(t){t.state.snapRenderInfo=null,Nu(t)},dragGroupControl:function(t){this.drag(t)},dragGroupControlEnd:function(t){this.unset(t)},unset:function(t){var e=t.state;e.enableSnap=!1,e.staticGuidelines=[],e.guidelines=[],e.snapRenderInfo=null}},Qu={name:"draggable",props:{draggable:Boolean,throttleDrag:Number,throttleDragRotate:Number,startDragRotate:Number,edgeDraggable:Boolean},events:{onDragStart:"dragStart",onDrag:"drag",onDragEnd:"dragEnd",onDragGroupStart:"dragGroupStart",onDragGroup:"dragGroup",onDragGroupEnd:"dragGroupEnd"},render:function(t,e){var i=t.props,n=i.throttleDragRotate,o=i.zoom,s=t.state,r=s.dragInfo,l=s.beforeOrigin;if(!n||!r)return[];var a=r.dist;if(!a[0]&&!a[1])return[];var d=Gd(a),c=el(a,[0,0]);return[e.createElement("div",{className:Ld("line","horizontal","dragline","dashed"),key:"dragRotateGuideline",style:{width:d+"px",transform:"translate("+l[0]+"px, "+l[1]+"px) rotate("+c+"rad) scaleY("+o+")"}})]},dragStart:function(t,e){var i=e.datas,n=e.parentEvent,o=e.parentGesto,s=t.state,r=s.target;if(s.gesto)return!1;s.gesto=o||t.targetGesto;var l=lc(r);i.datas={},i.left=parseFloat(l.left||"")||0,i.top=parseFloat(l.top||"")||0,i.bottom=parseFloat(l.bottom||"")||0,i.right=parseFloat(l.right||"")||0,i.startValue=[0,0],Tc(t,e),Uc(e,"translate"),function(t,e){e.absolutePoses=ic(t.state)}(t,i),i.prevDist=[0,0],i.prevBeforeDist=[0,0],i.isDrag=!1;var a=oc(t,e,dd({set:function(t){i.startValue=t}},Fc(e)));return!1!==(n||rc(t,"onDragStart",a))?(i.isDrag=!0,t.state.dragInfo={startRect:t.getRect(),dist:[0,0]}):(s.gesto=null,i.isPinch=!1),!!i.isDrag&&a},drag:function(t,e){Mc(e,"translate");var i=e.datas,n=e.parentEvent,o=e.parentFlag,s=e.isPinch,r=e.isRequest,l=e.distX,a=e.distY,d=i.isDrag,c=i.prevDist,u=i.prevBeforeDist,p=i.startValue;if(d){var h=t.props,v=h.parentMoveable,f=n?0:h.throttleDrag||0,g=n?0:h.throttleDragRotate||0,m=!1,b=0;if(!n&&g>0&&(l||a)){var y=h.startDragRotate||0,x=ol(y+180*el([0,0],[l,a])/Math.PI,g)-y,_=a*Math.abs(Math.cos((x-90)/180*Math.PI)),w=Gd([l*Math.abs(Math.cos(x/180*Math.PI)),_]);b=x*Math.PI/180,l=w*Math.cos(b),a=w*Math.sin(b)}if(!s&&!n&&!o&&(!g||l||a)){var S=Vu(t,l,a,g,r,i),C=S[0],k=S[1],E=C.isSnap,A=C.isBound,L=C.offset,q=k.isSnap,T=k.isBound;m=E||q||A||T,l+=L,a+=k.offset}i.passDeltaX=l-(i.passDistX||0),i.passDeltaY=a-(i.passDistY||0),i.passDistX=l,i.passDistY=a;var M=ra(Bc({datas:i,distX:l,distY:a}),p),O=ra(Rc({datas:i,distX:l,distY:a}),p);g||m||(sl(O,f),sl(M,f));var R=la(M,p),N=la(O,p),B=la(N,c),$=la(R,u);i.prevDist=N,i.prevBeforeDist=R;var I=i.left+R[0],H=i.top+R[1],D=i.right-R[0],z=i.bottom-R[1],P=Oc(i,"translate("+O[0]+"px, "+O[1]+"px)","translate("+N[0]+"px, "+N[1]+"px)");if(t.state.dragInfo.dist=n?[0,0]:N,n||v||!B.every((function(t){return!t}))||!$.some((function(t){return!t}))){var F=t.state,U=oc(t,e,{transform:P,dist:N,delta:B,translate:O,beforeDist:R,beforeDelta:$,beforeTranslate:M,left:I,top:H,right:D,bottom:z,width:F.width,height:F.height,isPinch:s});return!n&&rc(t,"onDrag",U),U}}},dragEnd:function(t,e){var i=e.parentEvent,n=e.datas,o=e.isDrag;if(t.state.gesto=null,t.state.dragInfo=null,n.isDrag)return n.isDrag=!1,!i&&rc(t,"onDragEnd",sc(t,e,{})),o},dragGroupStart:function(t,e){var i=e.datas,n=e.clientX,o=e.clientY,s=this.dragStart(t,e);if(!s)return!1;var r=Ac(t,this,"dragStart",[n||0,o||0],e,!1),l=rc(t,"onDragGroupStart",dd(dd({},s),{targets:t.props.targets,events:r}));return i.isDrag=!1!==l,!!i.isDrag&&s},dragGroup:function(t,e){if(e.datas.isDrag){var i=this.drag(t,e),n=e.datas,o=Ac(t,this,"drag",[n.passDeltaX,n.passDeltaY],e,!1);if(i){var s=dd({targets:t.props.targets,events:o},i);return rc(t,"onDragGroup",s),s}}},dragGroupEnd:function(t,e){var i=e.isDrag;if(e.datas.isDrag)return this.dragEnd(t,e),Ac(t,this,"dragEnd",[0,0],e,!1),rc(t,"onDragGroupEnd",sc(t,e,{targets:t.props.targets})),i},request:function(t){var e={},i=t.getRect(),n=0,o=0;return{isControl:!1,requestStart:function(){return{datas:e}},request:function(t){return"x"in t?n=t.x-i.left:"deltaX"in t&&(n+=t.deltaX),"y"in t?o=t.y-i.top:"deltaY"in t&&(o+=t.deltaY),{datas:e,distX:n,distY:o}},requestEnd:function(){return{datas:e,isDrag:!0}}}},unset:function(t){t.state.dragInfo=null}};function tp(t,e,i,n){void 0===n&&(n="");var o=t.state,s=o.renderPoses,r=o.rotation,l=o.direction,a=t.props,d=a.renderDirections,c=void 0===d?e:d,u=a.zoom,p={};if(!c)return[];var h=l>0?1:-1,v=!0===c?Cd:c,f=r/Math.PI*180;return v.forEach((function(t){p[t]=!0})),v.map((function(t){var e=kd[t];if(!e||!p[t])return null;var o=(ol(f,15)+h*Ed[t]+720)%180;return i.createElement("div",{className:Ld("control","direction",t,n),"data-rotation":o,"data-direction":t,key:"direction-"+t,style:Xd.apply(void 0,cd([r,u],e.map((function(t){return s[t]}))))})}))}function ep(t,e,i,n,o,s){for(var r=[],l=6;l<arguments.length;l++)r[l-6]=arguments[l];var a=el(i,n),d=e?ol(a/Math.PI*180,15)%180:-1;return t.createElement("div",{key:"line"+s,className:Ld.apply(void 0,cd(["line","direction",e],r)),"data-rotation":d,"data-line-index":s,"data-direction":e,style:Vd(i,n,o,a)})}function ip(t,e){return tp(t,Cd,e)}function np(t,e){return tp(t,["nw","ne","sw","se"],e)}function op(t,e,i,n,o,s){var r=t.state.is3d?4:3,l=Pd(t.state.rootMatrix,o,r),a=ra([s.left,s.top],l);e.startAbsoluteOrigin=a,e.prevDeg=el(a,[i,n])/Math.PI*180,e.prevSnapDeg=e.prevDeg,e.startDeg=e.prevDeg,e.loop=0}function sp(t,e,i,n,o,s){var r=i.prevDeg,l=Gu(t,e,i.origin,n);return i.prevDeg=l,[l-r,l,s+l]}function rp(t,e,i,n,o,s,r,l){var a=i.prevDeg,d=i.prevSnapDeg,c=i.startDeg,u=i.loop;a>n&&a>270&&n<90?++i.loop:a<n&&a<90&&n>270&&--i.loop;var p=i.loop,h=360*u+d-c+s,v=360*p+n-c+s;i.prevDeg=v-360*p+c-s;var f=o*((v=ol(v,r))-s);return l&&(v=(f=Gu(t,e,i.origin,f))/o+s),i.prevSnapDeg=v-360*p+c-s,[o*(v-h),f,s+f]}function lp(t,e,i,n,o,s,r,l){return rp(t,e,i,el(i.startAbsoluteOrigin,[o,s])/Math.PI*180,n,r,l,!0)}function ap(t,e){if(e.isRequest)return"rotatable"===e.requestAble;var i=e.inputEvent.target;if(rl(i,Ld("rotation-control")))return!0;var n=t.props.rotationTarget;return!!n&&_c(n,!0).some((function(t){return!!t&&(i===t||i.contains(t))}))}var dp={name:"rotatable",canPinch:!0,props:{rotatable:Boolean,rotationPosition:String,throttleRotate:Number,renderDirections:Object,rotationTarget:Object},events:{onRotateStart:"rotateStart",onRotate:"rotate",onRotateEnd:"rotateEnd",onRotateGroupStart:"rotateGroupStart",onRotateGroup:"rotateGroup",onRotateGroupEnd:"rotateGroupEnd"},css:[".rotation {\n position: absolute;\n height: 40px;\n width: 1px;\n transform-origin: 50% 100%;\n height: calc(40px * var(--zoom));\n top: auto;\n left: 0;\n bottom: 100%;\n will-change: transform;\n }\n .rotation .rotation-line {\n display: block;\n width: 100%;\n height: 100%;\n transform-origin: 50% 50%;\n }\n .rotation .rotation-control {\n border-color: #4af;\n border-color: var(--moveable-color);\n background:#fff;\n cursor: alias;\n }"],render:function(t,e){var i=t.props,n=i.rotatable,o=i.rotationPosition,s=i.zoom,r=i.renderDirections,l=t.state,a=l.renderPoses,d=l.direction;if(!n)return null;var c=function(t,e,i){var n=e[0],o=e[1],s=e[2],r=e[3];if("none"!==t){var l=(t||"top").split("-"),a=l[0],d=l[1],c=[n,o];"left"===a?c=[s,n]:"right"===a?c=[o,r]:"bottom"===a&&(c=[r,s]);var u=[(c[0][0]+c[1][0])/2,(c[0][1]+c[1][1])/2],p=Kd(c,i);if(d){var h="top"===d||"left"===d,v="bottom"===a||"left"===a;u=c[h&&!v||!h&&v?0:1]}return[u,p]}}(o,a,d),u=[];if(c){var p=c[0],h=c[1];u.push(e.createElement("div",{key:"rotation",className:Ld("rotation"),style:{transform:"translate(-50%) translate("+p[0]+"px, "+p[1]+"px) rotate("+h+"rad)"}},e.createElement("div",{className:Ld("line rotation-line"),style:{transform:"scaleX("+s+")"}}),e.createElement("div",{className:Ld("control rotation-control"),style:{transform:"translate(0.5px) scale("+s+")"}})))}return r&&u.push.apply(u,tp(t,[],e)),u},dragControlCondition:ap,dragControlStart:function(t,e){var i=e.datas,n=e.clientX,o=e.clientY,s=e.parentRotate,r=e.parentFlag,l=e.isPinch,a=e.isRequest,d=t.state,c=d.target,u=d.left,p=d.top,h=d.origin,v=d.beforeOrigin,f=d.direction,g=d.beforeDirection,m=d.targetTransform,b=d.moveableClientRect;if(!a&&!c)return!1;var y=t.getRect();if(i.rect=y,i.transform=m,i.left=u,i.top=p,i.fixedPosition=Xc(t,Vc(t)),i.absoluteInfo={origin:y.origin,startValue:y.rotation},op(t,i.absoluteInfo,n,o,h,b),a||l||r){var x=s||0;i.beforeInfo={origin:y.beforeOrigin,prevDeg:x,startDeg:x,prevSnapDeg:x,loop:0},i.afterInfo={origin:y.origin,prevDeg:x,startDeg:x,prevSnapDeg:x,loop:0}}else i.beforeInfo={origin:y.beforeOrigin},i.afterInfo={origin:y.origin},op(t,i.beforeInfo,n,o,v,b),op(t,i.afterInfo,n,o,h,b);i.direction=f,i.beforeDirection=g,i.startValue=0,i.datas={},Uc(e,"rotate");var _=oc(t,e,dd(dd({set:function(t){i.startValue=t*Math.PI/180}},Fc(e)),{dragStart:Qu.dragStart(t,(new kc).dragStart([0,0],e))})),w=rc(t,"onRotateStart",_);return i.isRotate=!1!==w,t.state.snapRenderInfo={request:e.isRequest},!!i.isRotate&&_},dragControl:function(t,e){var i,n,o,s,r,l,a,d,c,u=e.datas,p=e.clientX,h=e.clientY,v=e.parentRotate,f=e.parentFlag,g=e.isPinch,m=e.groupDelta,b=u.beforeDirection,y=u.beforeInfo,x=u.afterInfo,_=u.absoluteInfo,w=u.isRotate,S=u.startValue,C=u.rect;if(w){Mc(e,"rotate");var k,E,A,L,q,T,M,O,R,N=b*function(t){return jd(t.datas.beforeTransform,[50,50],100,100).direction}(e),B=t.props,$=B.throttleRotate,I=void 0===$?0:$,H=B.parentMoveable,D=180/Math.PI*S,z=_.startValue;if(!f&&"parentDist"in e){var P=e.parentDist;k=(i=sp(t,C,x,P,0,D))[0],E=i[1],A=i[2],L=(n=sp(t,C,y,P,0,D))[0],q=n[1],T=n[2],M=(o=sp(t,C,_,P,0,z))[0],O=o[1],R=o[2]}else g||f?(k=(s=rp(t,C,x,v,N,D,I))[0],E=s[1],A=s[2],L=(r=rp(t,C,y,v,b,D,I))[0],q=r[1],T=r[2],M=(l=rp(t,C,_,v,N,z,I))[0],O=l[1],R=l[2]):(k=(a=lp(t,C,x,N,p,h,D,I))[0],E=a[1],A=a[2],L=(d=lp(t,C,y,b,p,h,D,I))[0],q=d[1],T=d[2],M=(c=lp(t,C,_,N,p,h,z,I))[0],O=c[1],R=c[2]);if(M||k||L||H){var F=Oc(u,"rotate("+A+"deg)","rotate("+E+"deg)"),U=function(t,e,i,n){return Yc(t,"rotate("+e+"deg)",Vc(t),i,n)}(t,E,u.fixedPosition,u),W=la(ra(m||[0,0],U),u.prevInverseDist||[0,0]);u.prevInverseDist=U;var j=oc(t,e,dd({delta:k,dist:E,rotate:A,beforeDist:q,beforeDelta:L,beforeRotate:T,absoluteDist:O,absoluteDelta:M,absoluteRotate:R,isPinch:!!g},Gc(t,F,W,g,e)));return rc(t,"onRotate",j),j}}},dragControlEnd:function(t,e){var i=e.datas,n=e.isDrag;return!!i.isRotate&&(i.isRotate=!1,rc(t,"onRotateEnd",sc(t,e,{})),n)},dragGroupControlCondition:ap,dragGroupControlStart:function(t,e){var i=e.datas,n=t.state,o=n.left,s=n.top,r=n.beforeOrigin,l=this.dragControlStart(t,e);if(!l)return!1;l.set(i.beforeDirection*t.rotation);var a=Lc(t,this,"dragControlStart",e,(function(t,e){var i=t.state,n=i.left,l=i.top,a=i.beforeOrigin,d=ra(la([n,l],[o,s]),la(a,r));return e.datas.groupClient=d,dd(dd({},e),{parentRotate:0})})),d=rc(t,"onRotateGroupStart",dd(dd({},l),{targets:t.props.targets,events:a}));return i.isRotate=!1!==d,!!i.isRotate&&l},dragGroupControl:function(t,e){var i=e.datas;if(i.isRotate){var n=this.dragControl(t,e);if(n){var o=i.beforeDirection,s=n.beforeDist,r=n.beforeDelta/180*Math.PI,l=Lc(t,this,"dragControl",e,(function(t,e){var i=e.datas.groupClient,n=i[0],l=i[1],a=va([n,l],r*o),d=a[0],c=a[1],u=[d-n,c-l];return e.datas.groupClient=[d,c],dd(dd({},e),{parentRotate:s,groupDelta:u})}));t.rotation=o*n.beforeRotate;var a=dd({targets:t.props.targets,events:l,set:function(e){t.rotation=e}},n);return rc(t,"onRotateGroup",a),a}}},dragGroupControlEnd:function(t,e){var i=e.isDrag;if(e.datas.isRotate)return this.dragControlEnd(t,e),Lc(t,this,"dragControlEnd",e),rc(t,"onRotateGroupEnd",sc(t,e,{targets:t.props.targets})),i},request:function(t){var e={},i=0,n=t.getRotation();return{isControl:!0,requestStart:function(){return{datas:e}},request:function(t){return"deltaRotate"in t?i+=t.deltaRotate:"rotate"in t&&(i=t.rotate-n),{datas:e,parentDist:i}},requestEnd:function(){return{datas:e,isDrag:!0}}}}},cp={name:"resizable",ableGroup:"size",canPinch:!0,props:{resizable:Boolean,throttleResize:Number,renderDirections:Array,keepRatio:Boolean},events:{onResizeStart:"resizeStart",onResize:"resize",onResizeEnd:"resizeEnd",onResizeGroupStart:"resizeGroupStart",onResizeGroup:"resizeGroup",onResizeGroupEnd:"resizeGroupEnd"},render:function(t,e){var i=t.props,n=i.resizable,o=i.edge;if(n)return o?np(t,e):ip(t,e)},dragControlCondition:bc,dragControlStart:function(t,e){var i,n=e.inputEvent,o=e.isPinch,s=e.parentDirection,r=e.datas,l=e.parentFlag,a=s||(o?[0,0]:tc(n.target)),d=t.state,c=d.target,u=d.width,p=d.height;if(!a||!c)return!1;!o&&Tc(t,e),r.datas={},r.direction=a,r.startOffsetWidth=u,r.startOffsetHeight=p,r.prevWidth=0,r.prevHeight=0,i=function(t){var e=lc(t);return[parseFloat(e.width),parseFloat(e.height)]}(c),r.startWidth=i[0],r.startHeight=i[1];var h=[Math.max(0,u-r.startWidth),Math.max(0,p-r.startHeight)];if(r.minSize=h,r.maxSize=[1/0,1/0],!l){var v=lc(c),f=v.position,g=v.minWidth,m=v.minHeight,b=v.maxWidth,y=v.maxHeight,x="static"===f||"relative"===f,_=x?c.parentElement:c.offsetParent,w=u,S=p;if(_&&(w=_.clientWidth,S=_.clientHeight,x)){var C=lc(_);w-=parseFloat(C.paddingLeft)||0,S-=parseFloat(C.paddingTop)||0}r.minSize=ra([Kr(g,w)||0,Kr(m,S)||0],h),r.maxSize=ra([Kr(b,w)||1/0,Kr(y,S)||1/0],h)}var k=t.props.transformOrigin||"% %";function E(t){r.ratio=t&&isFinite(t)?t:0}function A(e){r.fixedDirection=e,r.fixedPosition=Kc(t,e)}r.transformOrigin=k&&Ir(k)?k.split(" "):k,r.isWidth=!a[0]&&!a[1]||a[0]||!a[1],E(u/p),A([-a[0],-a[1]]);var L=oc(t,e,{direction:a,set:function(t){var e=t[0],i=t[1];r.startWidth=e,r.startHeight=i},setMin:function(t){r.minSize=t},setMax:function(t){r.maxSize=[t[0]||1/0,t[1]||1/0]},setRatio:E,setFixedDirection:A,setOrigin:function(t){r.transformOrigin=t},dragStart:Qu.dragStart(t,(new kc).dragStart([0,0],e))});return!1!==rc(t,"onResizeStart",L)&&(r.isResize=!0,t.state.snapRenderInfo={request:e.isRequest,direction:a}),!!r.isResize&&L},dragControl:function(t,e){var i,n=e.datas,o=e.distX,s=e.distY,r=e.parentFlag,l=e.isPinch,a=e.parentDistance,d=e.parentScale,c=e.parentKeepRatio,u=e.dragClient,p=e.parentDist,h=e.isRequest,v=n.isResize,f=n.transformOrigin,g=n.fixedDirection,m=n.startWidth,b=n.startHeight,y=n.prevWidth,x=n.prevHeight,_=n.minSize,w=n.maxSize,S=n.ratio,C=n.isWidth,k=n.startOffsetWidth,E=n.startOffsetHeight;if(v){var A=t.props,L=A.throttleResize,q=void 0===L?0:L,T=A.parentMoveable,M=A.snapThreshold,O=void 0===M?5:M,R=n.direction,N=R,B=0,$=0;R[0]||R[1]||(N=[1,1]);var I=S&&(t.props.keepRatio||c),H=u;if(u||(H=!r&&l?Kc(t,[0,0]):n.fixedPosition),p)B=p[0],$=p[1],I&&(B?$||($=B/S):B=$*S);else if(d)B=(d[0]-1)*k,$=(d[1]-1)*E;else if(l)a&&(B=a,$=a*E/k);else{var D=$c({datas:n,distX:o,distY:s});if(B=N[0]*D[0],$=N[1]*D[1],I&&k&&E){var z=el([0,0],D),P=el([0,0],N),F=Gd([B,$]),U=Math.cos(z-P)*F;if(N[0])if(N[1]){var W=2*N[0]*k,j=2*N[1]*E,G=Gd([W+D[0],j+D[1]])-Gd([W,j]),Y=el([0,0],[S,1]);B=Math.cos(Y)*G,$=Math.sin(Y)*G}else $=(B=U)*S;else B=($=U)/S}else if(!I){var V=cd(R);k||(D[0]<0?V[0]=-1:D[0]>0&&(V[0]=1)),E||(D[1]<0?V[1]=-1:D[1]>0&&(V[1]=1)),R=V,B=(N=V)[0]*D[0],$=N[1]*D[1]}}var X=N[0]||I?Math.max(k+B,xd):k,Z=N[1]||I?Math.max(E+$,xd):E;I&&k&&E&&(C?Z=X/S:X=Z*S);var K=[0,0];if(l||(K=function(t,e,i,n,o,s,r){if(!Bu(t,"resizable"))return[0,0];var l=t.state,a=l.allMatrix,d=l.is3d;return ju(t,(function(t,s){return Iu(a,e+t,i+s,o,n,d)}),e,i,n,o,s,r)}(t,X,Z,R,H,h,n)),p&&(!p[0]&&(K[0]=0),!p[1]&&(K[1]=0)),I){N[0]&&N[1]&&K[0]&&K[1]&&(Math.abs(K[0])>Math.abs(K[1])?K[1]=0:K[0]=0);var J=!K[0]&&!K[1];J&&(C?X=ol(X,q):Z=ol(Z,q)),N[0]&&!N[1]||K[0]&&!K[1]||J&&C?Z=(X+=K[0])/S:(!N[0]&&N[1]||!K[0]&&K[1]||J&&!C)&&(X=(Z+=K[1])*S)}else k+B<-O&&(K[0]=0),k+$<-O&&(K[1]=0),X+=K[0],Z+=K[1],K[0]||(X=ol(X,q)),K[1]||(Z=ol(Z,q));X=(i=Qr([X,Z],_,w,I))[0],Z=i[1];var Q=[(B=(X=Math.round(X))-k)-y,($=(Z=Math.round(Z))-E)-x];n.prevWidth=B,n.prevHeight=$;var tt=Zc(t,X,Z,g,H,f);if(T||!Q.every((function(t){return!t}))||!tt.every((function(t){return!t}))){var et=oc(t,e,{width:m+B,height:b+$,offsetWidth:X,offsetHeight:Z,direction:R,dist:[B,$],delta:Q,isPinch:!!l,drag:Qu.drag(t,Cc(e,t.state,tt,!!l,!1))});return rc(t,"onResize",et),et}}},dragControlAfter:function(t,e){var i=e.datas,n=i.isResize,o=i.startOffsetWidth,s=i.startOffsetHeight,r=i.prevWidth,l=i.prevHeight;if(n){var a=t.state,d=a.width-(o+r),c=a.height-(s+l),u=Math.abs(d)>3,p=Math.abs(c)>3;return u&&(i.startWidth+=d,i.startOffsetWidth+=d,i.prevWidth+=d),p&&(i.startHeight+=c,i.startOffsetHeight+=c,i.prevHeight+=c),u||p?(this.dragControl(t,e),!0):void 0}},dragControlEnd:function(t,e){var i=e.datas,n=e.isDrag;return!!i.isResize&&(i.isResize=!1,rc(t,"onResizeEnd",sc(t,e,{})),n)},dragGroupControlCondition:bc,dragGroupControlStart:function(t,e){var i=e.datas,n=this.dragControlStart(t,e);if(!n)return!1;var o=Ec(t,"resizable",e);function s(e,n){var o=i.fixedDirection,s=i.fixedPosition,r=Kc(e,o),l=da(ma(-t.rotation/180*Math.PI,3),[r[0]-s[0],r[1]-s[1],1],3),a=l[0],d=l[1];return n.datas.originalX=a,n.datas.originalY=d,n}var r=Lc(t,this,"dragControlStart",e,(function(t,e){return s(t,e)})),l=dd(dd({},n),{targets:t.props.targets,events:r,setFixedDirection:function(e){n.setFixedDirection(e),r.forEach((function(i,n){i.setFixedDirection(e),s(t.moveables[n],o[n])}))}}),a=rc(t,"onResizeGroupStart",l);return i.isResize=!1!==a,!!i.isResize&&n},dragGroupControl:function(t,e){var i=e.datas;if(i.isResize){var n=this.dragControl(t,e);if(n){var o=n.offsetWidth,s=n.offsetHeight,r=n.dist,l=t.props.keepRatio,a=[o/(o-r[0]),s/(s-r[1])],d=i.fixedPosition,c=Lc(t,this,"dragControl",e,(function(e,i){var n=da(ma(t.rotation/180*Math.PI,3),[i.datas.originalX*a[0],i.datas.originalY*a[1],1],3),o=n[0],s=n[1];return dd(dd({},i),{parentDist:null,parentScale:a,dragClient:ra(d,[o,s]),parentKeepRatio:l})})),u=dd({targets:t.props.targets,events:c},n);return rc(t,"onResizeGroup",u),u}}},dragGroupControlEnd:function(t,e){var i=e.isDrag;if(e.datas.isResize)return this.dragControlEnd(t,e),Lc(t,this,"dragControlEnd",e),rc(t,"onResizeGroupEnd",sc(t,e,{targets:t.props.targets})),i},request:function(t){var e={},i=0,n=0,o=t.getRect();return{isControl:!0,requestStart:function(t){return{datas:e,parentDirection:t.direction||[1,1]}},request:function(t){return"offsetWidth"in t?i=t.offsetWidth-o.offsetWidth:"deltaWidth"in t&&(i+=t.deltaWidth),"offsetHeight"in t?n=t.offsetHeight-o.offsetHeight:"deltaHeight"in t&&(n+=t.deltaHeight),{datas:e,parentDist:[i,n]}},requestEnd:function(){return{datas:e,isDrag:!0}}}}},up={name:"scalable",ableGroup:"size",canPinch:!0,props:{scalable:Boolean,throttleScale:Number,renderDirections:String,keepRatio:Boolean},events:{onScaleStart:"scaleStart",onScale:"scale",onScaleEnd:"scaleEnd",onScaleGroupStart:"scaleGroupStart",onScaleGroup:"scaleGroup",onScaleGroupEnd:"scaleGroupEnd"},render:function(t,e){var i=t.props,n=i.resizable,o=i.scalable,s=i.edge;if(!n&&o)return s?np(t,e):ip(t,e)},dragControlCondition:bc,dragControlStart:function(t,e){var i=e.datas,n=e.isPinch,o=e.inputEvent,s=e.parentDirection||(n?[0,0]:tc(o.target)),r=t.state,l=r.width,a=r.height,d=r.targetTransform,c=r.target,u=r.pos1,p=r.pos2,h=r.pos4;if(!s||!c)return!1;n||Tc(t,e),i.datas={},i.transform=d,i.prevDist=[1,1],i.direction=s,i.width=l,i.height=a,i.startValue=[1,1];var v=nl(u,p),f=nl(p,h),g=!s[0]&&!s[1]||s[0]||!s[1];function m(t){i.ratio=t&&isFinite(t)?t:0}function b(e){i.fixedDirection=e,i.fixedPosition=Kc(t,e)}i.scaleWidth=v,i.scaleHeight=f,i.scaleXRatio=v/l,i.scaleYRatio=f/a,Uc(e,"scale"),i.isWidth=g,m(nl(u,p)/nl(p,h)),b([-s[0],-s[1]]);var y=oc(t,e,dd(dd({direction:s,set:function(t){i.startValue=t},setRatio:m,setFixedDirection:b},Fc(e)),{dragStart:Qu.dragStart(t,(new kc).dragStart([0,0],e))}));return!1!==rc(t,"onScaleStart",y)&&(i.isScale=!0,t.state.snapRenderInfo={request:e.isRequest,direction:s}),!!i.isScale&&y},dragControl:function(t,e){Mc(e,"scale");var i=e.datas,n=e.distX,o=e.distY,s=e.parentScale,r=e.parentDistance,l=e.parentKeepRatio,a=e.parentFlag,d=e.isPinch,c=e.dragClient,u=e.parentDist,p=e.isRequest,h=i.prevDist,v=i.direction,f=i.width,g=i.height,m=i.isScale,b=i.startValue,y=i.isWidth,x=i.ratio,_=i.fixedDirection,w=i.scaleXRatio,S=i.scaleYRatio;if(!m)return!1;var C=t.props,k=C.throttleScale,E=C.parentMoveable,A=v;v[0]||v[1]||(A=[1,1]);var L=x&&(t.props.keepRatio||l),q=t.state,T=1,M=1,O=c;if(c||(O=!a&&d?Kc(t,[0,0]):i.fixedPosition),u)T=(f+u[0])/f,M=(g+u[1])/g;else if(s)T=s[0],M=s[1];else if(d)r&&(T=(f+r)/f,M=(g+r*g/f)/g);else{var R=$c({datas:i,distX:n,distY:o}),N=A[0]*R[0]*w,B=A[1]*R[1]*S;if(L&&f&&g)if(A[0])if(A[1]){var $=Gd([N,B]),I=el([0,0],R),H=el([0,0],A),D=Math.cos(I-H)*$,z=el([0,0],[x,1]);N=Math.cos(z)*D,B=Math.sin(z)*D}else B=N/x;else N=B*x;T=(f+N/w)/f,M=(g+B/S)/g}T=A[0]||L?T*b[0]:b[0],M=A[1]||L?M*b[1]:b[1],0===T&&(T=(h[0]>0?1:-1)*_d),0===M&&(M=(h[1]>0?1:-1)*_d);var P=[T/b[0],M/b[1]],F=[T,M];if(!d&&t.props.groupable){var U=(q.snapRenderInfo||{}).direction;$r(U)&&(U[0]||U[1])&&(q.snapRenderInfo={direction:v,request:e.isRequest})}var W=[0,0];if(d||(W=Yu(t,P,v,p,i)),L){A[0]&&A[1]&&W[0]&&W[1]&&(Math.abs(W[0]*f)>Math.abs(W[1]*g)?W[1]=0:W[0]=0);var j=!W[0]&&!W[1];if(j&&(y?P[0]=ol(P[0]*b[0],k)/b[0]:P[1]=ol(P[1]*b[1],k)/b[1]),A[0]&&!A[1]||W[0]&&!W[1]||j&&y){P[0]+=W[0];var G=f*P[0]*b[0]/x;P[1]=G/g/b[1]}else if(!A[0]&&A[1]||!W[0]&&W[1]||j&&!y){P[1]+=W[1];var Y=g*P[1]*b[1]*x;P[0]=Y/f/b[0]}}else P[0]+=W[0],P[1]+=W[1],W[0]||(P[0]=ol(P[0]*b[0],k)/b[0]),W[1]||(P[1]=ol(P[1]*b[1],k)/b[1]);0===P[0]&&(P[0]=(h[0]>0?1:-1)*_d),0===P[1]&&(P[1]=(h[1]>0?1:-1)*_d);var V,X,Z=[P[0]/h[0],P[1]/h[1]];X=b,F=[(V=P)[0]*X[0],V[1]*X[1]];var K=function(t,e,i,n,o){return Yc(t,"scale("+e.join(", ")+")",i,n,o)}(t,P,_,O,i),J=la(K,i.prevInverseDist||[0,0]);if(i.prevDist=P,i.prevInverseDist=K,T===h[0]&&M===h[1]&&J.every((function(t){return!t}))&&!E)return!1;var Q=Oc(i,"scale("+F.join(", ")+")","scale("+P.join(", ")+")"),tt=oc(t,e,dd({offsetWidth:f,offsetHeight:g,direction:v,scale:F,dist:P,delta:Z,isPinch:!!d},Gc(t,Q,J,d,e)));return rc(t,"onScale",tt),tt},dragControlEnd:function(t,e){var i=e.datas,n=e.isDrag;return!!i.isScale&&(i.isScale=!1,rc(t,"onScaleEnd",sc(t,e,{})),n)},dragGroupControlCondition:bc,dragGroupControlStart:function(t,e){var i=e.datas,n=this.dragControlStart(t,e);if(!n)return!1;var o=Ec(t,"resizable",e);function s(e,n){var o=i.fixedDirection,s=i.fixedPosition,r=Kc(e,o),l=da(ma(-t.rotation/180*Math.PI,3),[r[0]-s[0],r[1]-s[1],1],3),a=l[0],d=l[1];return n.datas.originalX=a,n.datas.originalY=d,n}i.moveableScale=t.scale;var r=Lc(t,this,"dragControlStart",e,(function(t,e){return s(t,e)})),l=dd(dd({},n),{targets:t.props.targets,events:r,setFixedDirection:function(e){n.setFixedDirection(e),r.forEach((function(i,n){i.setFixedDirection(e),s(t.moveables[n],o[n])}))}}),a=rc(t,"onScaleGroupStart",l);return i.isScale=!1!==a,!!i.isScale&&l},dragGroupControl:function(t,e){var i=e.datas;if(i.isScale){var n=this.dragControl(t,e);if(n){var o=i.moveableScale;t.scale=[n.scale[0]*o[0],n.scale[1]*o[1]];var s=t.props.keepRatio,r=n.dist,l=n.scale,a=i.fixedPosition,d=Lc(t,this,"dragControl",e,(function(e,i){var n=da(ma(t.rotation/180*Math.PI,3),[i.datas.originalX*r[0],i.datas.originalY*r[1],1],3),o=n[0],d=n[1];return dd(dd({},i),{parentDist:null,parentScale:l,parentKeepRatio:s,dragClient:ra(a,[o,d])})})),c=dd({targets:t.props.targets,events:d},n);return rc(t,"onScaleGroup",c),c}}},dragGroupControlEnd:function(t,e){var i=e.isDrag;if(e.datas.isScale)return this.dragControlEnd(t,e),Lc(t,this,"dragControlEnd",e),rc(t,"onScaleGroupEnd",sc(t,e,{targets:t.props.targets})),i},request:function(){var t={},e=0,i=0;return{isControl:!0,requestStart:function(e){return{datas:t,parentDirection:e.direction||[1,1]}},request:function(n){return e+=n.deltaWidth,i+=n.deltaHeight,{datas:t,parentDist:[e,i]}},requestEnd:function(){return{datas:t,isDrag:!0}}}}};function pp(t,e){return t.map((function(t,i){return n=t,o=e[i],(n*(r=2)+o*(s=1))/(s+r);var n,o,s,r}))}function hp(t,e,i){var n=el(t,e),o=el(t,i)-n;return o>=0?o:o+2*Math.PI}var vp={name:"warpable",ableGroup:"size",props:{warpable:Boolean,renderDirections:Array},events:{onWarpStart:"warpStart",onWarp:"warp",onWarpEnd:"warpEnd"},render:function(t,e){var i=t.props,n=i.resizable,o=i.scalable,s=i.warpable,r=i.zoom;if(n||o||!s)return[];var l=t.state,a=l.pos1,d=l.pos2,c=l.pos3,u=l.pos4,p=pp(a,d),h=pp(d,a),v=pp(a,c),f=pp(c,a),g=pp(c,u),m=pp(u,c),b=pp(d,u),y=pp(u,d);return cd([e.createElement("div",{className:Ld("line"),key:"middeLine1",style:Vd(p,g,r)}),e.createElement("div",{className:Ld("line"),key:"middeLine2",style:Vd(h,m,r)}),e.createElement("div",{className:Ld("line"),key:"middeLine3",style:Vd(v,b,r)}),e.createElement("div",{className:Ld("line"),key:"middeLine4",style:Vd(f,y,r)})],ip(t,e))},dragControlCondition:function(t,e){return!e.isRequest&&rl(e.inputEvent.target,Ld("direction"))},dragControlStart:function(t,e){var i=e.datas,n=e.inputEvent,o=t.props.target,s=tc(n.target);if(!s||!o)return!1;var r=t.state,l=r.transformOrigin,a=r.is3d,d=r.targetTransform,c=r.targetMatrix,u=r.width,p=r.height,h=r.left,v=r.top;return i.datas={},i.targetTransform=d,i.warpTargetMatrix=a?c:na(c,3,4),i.targetInverseMatrix=ta(ea(i.warpTargetMatrix,4),3,4),i.direction=s,i.left=h,i.top=v,i.poses=[[0,0],[u,0],[0,p],[u,p]].map((function(t){return la(t,l)})),i.nextPoses=i.poses.map((function(t){var e=t[0],n=t[1];return da(i.warpTargetMatrix,[e,n,0,1],4)})),i.startValue=ba(4),i.prevMatrix=ba(4),i.absolutePoses=ic(r),i.posIndexes=Ic(s),Tc(t,e),Uc(e,"matrix3d"),r.snapRenderInfo={request:e.isRequest,direction:s},!1!==rc(t,"onWarpStart",oc(t,e,dd({set:function(t){i.startValue=t}},Fc(e))))&&(i.isWarp=!0),i.isWarp},dragControl:function(t,e){var i=e.datas,n=e.isRequest,o=e.distX,s=e.distY,r=i.targetInverseMatrix,l=i.prevMatrix,a=i.isWarp,d=i.startValue,c=i.poses,u=i.posIndexes,p=i.absolutePoses;if(!a)return!1;if(Mc(e,"matrix3d"),Bu(t,"warpable")){var h=u.map((function(t){return p[t]}));h.length>1&&h.push([(h[0][0]+h[1][0])/2,(h[0][1]+h[1][1])/2]);var v=Pu(t,n,h.map((function(t){return[t[0]+o,t[1]+s]}))),f=v.horizontal,g=v.vertical;s-=f.offset,o-=g.offset}var m=$c({datas:i,distX:o,distY:s},!0),b=i.nextPoses.slice();if(u.forEach((function(t){b[t]=ra(b[t],m)})),!bd.every((function(t){return e=t.map((function(t){return c[t]})),i=t.map((function(t){return b[t]})),n=hp(e[0],e[1],e[2]),o=hp(i[0],i[1],i[2]),s=Math.PI,!(n>=s&&o<=s||n<=s&&o>=s);var e,i,n,o,s})))return!1;var y=_a(c[0],c[2],c[1],c[3],b[0],b[2],b[1],b[3]);if(!y.length)return!1;var x=Nc(i,sa(r,y,4),!0),_=sa(ea(l,4),x,4);i.prevMatrix=x;var w=sa(d,x,4),S=Oc(i,"matrix3d("+w.join(", ")+")","matrix3d("+x.join(", ")+")");return jc(e,S),rc(t,"onWarp",oc(t,e,{delta:_,matrix:w,dist:x,multiply:sa,transform:S})),!0},dragControlEnd:function(t,e){var i=e.datas,n=e.isDrag;return!!i.isWarp&&(i.isWarp=!1,rc(t,"onWarpEnd",sc(t,e,{})),n)}},fp=Ld("area-pieces"),gp=Ld("area-piece"),mp=Ld("avoid");function bp(t){var e=t.areaElement,i=t.state,n=i.width,o=i.height;!function(t,e){if(t.classList)t.classList.remove(e);else{var i=new RegExp("(\\s|^)"+e+"(\\s|$)");t.className=t.className.replace(i," ")}}(e,mp),e.style.cssText+="left: 0px; top: 0px; width: "+n+"px; height: "+o+"px"}function yp(t){return t.createElement("div",{key:"area_pieces",className:fp},t.createElement("div",{className:gp}),t.createElement("div",{className:gp}),t.createElement("div",{className:gp}),t.createElement("div",{className:gp}))}var xp={name:"dragArea",props:{dragArea:Boolean,passDragArea:Boolean},events:{onClick:"click",onClickGroup:"clickGroup"},render:function(t,e){var i=t.props,n=i.target,o=i.dragArea,s=i.groupable,r=i.passDragArea,l=t.state,a=l.width,d=l.height,c=l.renderPoses,u=r?Ld("area","pass"):Ld("area");if(s)return[e.createElement("div",{key:"area",ref:xr(t,"areaElement"),className:u}),yp(e)];if(!n||!o)return[];var p=_a([0,0],[a,0],[0,d],[a,d],c[0],c[1],c[2],c[3]),h=p.length?Hd(p,!0):"none";return[e.createElement("div",{key:"area",ref:xr(t,"areaElement"),className:u,style:{top:"0px",left:"0px",width:a+"px",height:d+"px",transformOrigin:"0 0",transform:h}}),yp(e)]},dragStart:function(t,e){var i=e.datas,n=e.clientX,o=e.clientY;if(!e.inputEvent)return!1;i.isDragArea=!1;var s,r,l=t.areaElement,a=t.state,d=a.moveableClientRect,c=a.renderPoses,u=a.rootMatrix,p=a.is3d,h=d.left,v=d.top,f=Ud(c),g=f.left,m=f.top,b=f.width,y=f.height,x=hc(u,[n-h,o-v],p?4:3),_=x[0],w=x[1],S=[{left:g,top:m,width:b,height:(w-=m)-10},{left:g,top:m,width:(_-=g)-10,height:y},{left:g,top:m+w+10,width:b,height:y-w-10},{left:g+_+10,top:m,width:b-_-10,height:y}],C=[].slice.call(l.nextElementSibling.children);S.forEach((function(t,e){C[e].style.cssText="left: "+t.left+"px;top: "+t.top+"px; width: "+t.width+"px; height: "+t.height+"px;"})),r=mp,(s=l).classList?s.classList.add(r):s.className+=" "+r,a.disableNativeEvent=!0},drag:function(t,e){var i=e.datas,n=e.inputEvent;if(this.enableNativeEvent(t),!n)return!1;i.isDragArea||(i.isDragArea=!0,bp(t))},dragEnd:function(t,e){this.enableNativeEvent(t);var i=e.inputEvent,n=e.datas;if(!i)return!1;n.isDragArea||bp(t)},dragGroupStart:function(t,e){return this.dragStart(t,e)},dragGroup:function(t,e){return this.drag(t,e)},dragGroupEnd:function(t,e){return this.dragEnd(t,e)},unset:function(t){bp(t),t.state.disableNativeEvent=!1},enableNativeEvent:function(t){var e=t.state;e.disableNativeEvent&&requestAnimationFrame((function(){e.disableNativeEvent=!1}))}},_p=ud("origin",{render:function(t,e){var i=t.props.zoom,n=t.state,o=n.beforeOrigin,s=n.rotation;return[e.createElement("div",{className:Ld("control","origin"),style:Xd(s,i,o),key:"beforeOrigin"})]}});function wp(t){var e=t.scrollContainer;return[e.scrollLeft,e.scrollTop]}var Sp={name:"scrollable",canPinch:!0,props:{scrollable:Boolean,scrollContainer:Object,scrollThreshold:Number,getScrollPosition:Function},events:{onScroll:"scroll",onScrollGroup:"scrollGroup"},dragStart:function(t,e){var i=t.props.scrollContainer,n=void 0===i?t.getContainer():i,o=new Pa,s=xc(n,!0);e.datas.dragScroll=o;var r=e.isControl?"controlGesto":"targetGesto",l=e.targets;o.on("scroll",(function(i){var n=i.container,o=i.direction,s=oc(t,e,{scrollContainer:n,direction:o}),r=l?"onScrollGroup":"onScroll";l&&(s.targets=l),rc(t,r,s)})).on("move",(function(i){var n=i.offsetX,o=i.offsetY;t[r].scrollBy(n,o,e.inputEvent,!1)})),o.dragStart(e,{container:s})},checkScroll:function(t,e){var i=e.datas.dragScroll;if(i){var n=t.props,o=n.scrollContainer,s=void 0===o?t.getContainer():o,r=n.scrollThreshold,l=void 0===r?0:r,a=n.getScrollPosition,d=void 0===a?wp:a;return i.drag(e,{container:s,threshold:l,getScrollPosition:function(t){return d({scrollContainer:t.container,direction:t.direction})}}),!0}},drag:function(t,e){return this.checkScroll(t,e)},dragEnd:function(t,e){e.datas.dragScroll.dragEnd(),e.datas.dragScroll=null},dragControlStart:function(t,e){return this.dragStart(t,dd(dd({},e),{isControl:!0}))},dragControl:function(t,e){return this.drag(t,e)},dragControlEnd:function(t,e){return this.dragEnd(t,e)},dragGroupStart:function(t,e){return this.dragStart(t,dd(dd({},e),{targets:t.props.targets}))},dragGroup:function(t,e){return this.drag(t,dd(dd({},e),{targets:t.props.targets}))},dragGroupEnd:function(t,e){return this.dragEnd(t,dd(dd({},e),{targets:t.props.targets}))},dragGroupControlStart:function(t,e){return this.dragStart(t,dd(dd({},e),{targets:t.props.targets,isControl:!0}))},dragGroupContro:function(t,e){return this.drag(t,dd(dd({},e),{targets:t.props.targets}))},dragGroupControEnd:function(t,e){return this.dragEnd(t,dd(dd({},e),{targets:t.props.targets}))}},Cp={name:"",props:{target:Object,dragTarget:Object,container:Object,portalContainer:Object,rootContainer:Object,zoom:Number,transformOrigin:Array,edge:Boolean,ables:Array,className:String,pinchThreshold:Number,pinchOutside:Boolean,triggerAblesSimultaneously:Boolean,checkInput:Boolean,cspNonce:String,translateZ:Number,props:Object},events:{}},kp=ud("padding",{render:function(t,e){var i=t.props;if(i.dragArea)return[];var n=i.padding||{},o=n.left,s=void 0===o?0:o,r=n.top,l=void 0===r?0:r,a=n.right,d=void 0===a?0:a,c=n.bottom,u=void 0===c?0:c,p=t.state,h=p.renderPoses,v=[p.pos1,p.pos2,p.pos3,p.pos4],f=[];return s>0&&f.push([0,2]),l>0&&f.push([0,1]),d>0&&f.push([1,3]),u>0&&f.push([2,3]),f.map((function(t,i){var n=t[0],o=t[1],s=_a([0,0],[100,0],[0,100],[100,100],v[n],v[o],h[n],h[o]);if(s.length)return e.createElement("div",{key:"padding"+i,className:Ld("padding"),style:{transform:Hd(s,!0)}})}))}}),Ep=["nw","ne","se","sw"];function Ap(t,e){var i=t[0]+t[1],n=i>e?e/i:1;return t[0]*=n,t[1]=e-t[1]*n,t}var Lp=[1,2,5,6],qp=[0,3,4,7],Tp=[1,-1,-1,1],Mp=[1,1,-1,-1];function Op(t,e,i,n,o,s,r,l,a){void 0===s&&(s=0),void 0===r&&(r=0),void 0===l&&(l=n),void 0===a&&(a=o);var d=[],c=!1,u=t.map((function(t,u){var p=e[u],h=p.horizontal,v=p.vertical;if(v&&!c&&(c=!0,d.push("/")),c){var f=Math.max(0,1===v?t[1]-r:a-t[1]);return d.push(gc(f,o,i)),f}f=Math.max(0,1===h?t[0]-s:l-t[0]);return d.push(gc(f,n,i)),f}));return{styles:d,raws:u}}function Rp(t){for(var e=[0,0],i=[0,0],n=t.length,o=0;o<n;++o){var s=t[o];s.sub&&(s.horizontal&&(0===e[1]&&(e[0]=o),e[1]=o-e[0]+1,i[0]=o+1),s.vertical&&(0===i[1]&&(i[0]=o),i[1]=o-i[0]+1))}return{horizontalRange:e,verticalRange:i}}function Np(t,e,i,n,o,s){var r,l,a,d;void 0===s&&(s=[0,0]);var c=t.indexOf("/"),u=(c>-1?t.slice(0,c):t).length,p=t.slice(0,u),h=t.slice(u+1),v=p[0],f=void 0===v?"0px":v,g=p[1],m=void 0===g?f:g,b=p[2],y=void 0===b?f:b,x=p[3],_=void 0===x?m:x,w=h[0],S=void 0===w?f:w,C=h[1],k=void 0===C?S:C,E=h[2],A=void 0===E?S:E,L=h[3],q=void 0===L?k:L,T=[f,m,y,_].map((function(t){return Kr(t,e)})),M=[S,k,A,q].map((function(t){return Kr(t,i)})),O=T.slice(),R=M.slice();r=Ap([O[0],O[1]],e),O[0]=r[0],O[1]=r[1],l=Ap([O[3],O[2]],e),O[3]=l[0],O[2]=l[1],a=Ap([R[0],R[3]],i),R[0]=a[0],R[3]=a[1],d=Ap([R[1],R[2]],i),R[1]=d[0],R[2]=d[1];var N=O.slice(0,Math.max(s[0],p.length)),B=R.slice(0,Math.max(s[1],h.length));return cd(N.map((function(t,e){var s=Ep[e];return{horizontal:Tp[e],vertical:0,pos:[n+t,o+(-1===Mp[e]?i:0)],sub:!0,raw:T[e],direction:s}})),B.map((function(t,i){var s=Ep[i];return{horizontal:0,vertical:Mp[i],pos:[n+(-1===Tp[i]?e:0),o+t],sub:!0,raw:M[i],direction:s}})))}function Bp(t,e,i,n,o){void 0===o&&(o=e.length);var s=Rp(t.slice(n)),r=s.horizontalRange,l=s.verticalRange,a=i-n,d=0;if(0===a)d=o;else if(a>0&&a<r[1])d=r[1]-a;else{if(!(a>=l[0]))return;d=l[0]+l[1]-a}t.splice(i,d),e.splice(i,d)}function $p(t,e,i,n,o,s,r,l,a,d,c){void 0===d&&(d=0),void 0===c&&(c=0);var u=Rp(t.slice(i)),p=u.horizontalRange,h=u.verticalRange;if(n>-1)for(var v=1===Tp[n]?s-d:l-s,f=p[1];f<=n;++f){var g=1===Mp[f]?c:a,m=0;if(n===f?m=s:0===f?m=d+v:-1===Tp[f]&&(m=l-(e[i][0]-d)),t.splice(i+f,0,{horizontal:Tp[f],vertical:0,pos:[m,g]}),e.splice(i+f,0,[m,g]),0===f)break}else if(o>-1){var b=1===Mp[o]?r-c:a-r;if(0===p[1]&&0===h[1]){var y=[d+b,c];t.push({horizontal:Tp[0],vertical:0,pos:y}),e.push(y)}var x=h[0];for(f=h[1];f<=o;++f){m=1===Tp[f]?d:l,g=0;if(o===f?g=r:0===f?g=c+b:1===Mp[f]?g=e[i+x][1]:-1===Mp[f]&&(g=a-(e[i+x][1]-c)),t.push({horizontal:0,vertical:Mp[f],pos:[m,g]}),e.push([m,g]),0===f)break}}}function Ip(t,e){return void 0===e&&(e=t.map((function(t){return t.raw}))),{horizontals:t.map((function(t,i){return t.horizontal?e[i]:null})).filter((function(t){return null!=t})),verticals:t.map((function(t,i){return t.vertical?e[i]:null})).filter((function(t){return null!=t}))}}var Hp=[[0,-1,"n"],[1,0,"e"]],Dp=[[-1,-1,"nw"],[0,-1,"n"],[1,-1,"ne"],[1,0,"e"],[1,1,"se"],[0,1,"s"],[-1,1,"sw"],[-1,0,"w"]];function zp(t,e,i){var n=t.props.clipRelative,o=t.state,s=o.width,r=o.height,l=e,a=l.type,d=l.poses,c="rect"===a,u="circle"===a;if("polygon"===a)return i.map((function(t){return gc(t[0],s,n)+" "+gc(t[1],r,n)}));if(c||"inset"===a){var p=i[1][1],h=i[3][0],v=i[7][0],f=i[5][1];if(c)return[p,h,f,v].map((function(t){return t+"px"}));var g=[p,s-h,r-f,v].map((function(t,e){return gc(t,e%2?s:r,n)}));if(i.length>8){var m=la(i[4],i[0]),b=m[0],y=m[1];g.push.apply(g,cd(["round"],Op(i.slice(8),d.slice(8),n,b,y,v,p,h,f).styles))}return g}if(u||"ellipse"===a){var x=i[0],_=gc(Math.abs(i[1][1]-x[1]),u?Math.sqrt((s*s+r*r)/2):r,n);return(g=u?[_]:[gc(Math.abs(i[2][0]-x[0]),s,n),_]).push("at",gc(x[0],s,n),gc(x[1],r,n)),g}}function Pp(t,e,i,n){var o=[n,(n+e)/2,e],s=[t,(t+i)/2,i];return Dp.map((function(t){var e=t[0],i=t[1],n=t[2],r=o[e+1],l=s[i+1];return{vertical:Math.abs(i),horizontal:Math.abs(e),direction:n,pos:[r,l]}}))}function Fp(t,e,i,n,o){var s,r,l,a,d,c,u,p=o;if(!p){var h=lc(t),v=h.clipPath;p="none"!==v?v:h.clip}if(p&&"none"!==p&&"auto"!==p||(p=n)){var f=Wr(p),g=f.prefix,m=void 0===g?p:g,b=f.value,y=void 0===b?"":b,x="circle"===m,_=" ";if("polygon"===m)return _=",",{type:m,clipText:p,poses:M=(E=Ur(y||"0% 0%, 100% 0%, 100% 100%, 0% 100%")).map((function(t){var n=t.split(" "),o=n[0],s=n[1];return{vertical:1,horizontal:1,pos:[Kr(o,e),Kr(s,i)]}})),splitter:_};if(x||"ellipse"===m){var w="",S="",C=0,k=0,E=Fr(y);if(x){var A;A=void 0===(s=E[0])?"50%":s,w=void 0===(r=E[2])?"50%":r,S=void 0===(l=E[3])?"50%":l,C=Kr(A,Math.sqrt((e*e+i*i)/2)),k=C}else{var L,q;L=void 0===(a=E[0])?"50%":a,q=void 0===(d=E[1])?"50%":d,w=void 0===(c=E[3])?"50%":c,S=void 0===(u=E[4])?"50%":u,C=Kr(L,e),k=Kr(q,i)}var T=[Kr(w,e),Kr(S,i)],M=cd([{vertical:1,horizontal:1,pos:T,direction:"nesw"}],Hp.slice(0,x?1:2).map((function(t){return{vertical:Math.abs(t[1]),horizontal:t[0],direction:t[2],sub:!0,pos:[T[0]+t[0]*C,T[1]+t[1]*k]}})));return{type:m,clipText:p,radiusX:C,radiusY:k,left:T[0]-C,top:T[1]-k,poses:M,splitter:_}}if("inset"===m){var O=(E=Fr(y||"0 0 0 0")).indexOf("round"),R=(O>-1?E.slice(0,O):E).length,N=E.slice(R+1),B=E.slice(0,R),$=B[0],I=B[1],H=void 0===I?$:I,D=B[2],z=void 0===D?$:D,P=B[3],F=void 0===P?H:P,U=[$,z].map((function(t){return Kr(t,i)})),W=U[0],j=U[1],G=[F,H].map((function(t){return Kr(t,e)})),Y=G[0],V=G[1],X=e-V,Z=i-j,K=Np(N,X-Y,Z-W,Y,W);return{type:"inset",clipText:p,poses:M=cd(Pp(W,X,Z,Y),K),top:W,left:Y,right:X,bottom:Z,radius:N,splitter:_}}if("rect"===m){_=",";var J=(E=Ur(y||"0px, "+e+"px, "+i+"px, 0px")).map((function(t){return jr(t).value}));return{type:"rect",clipText:p,poses:M=Pp(W=J[0],V=J[1],j=J[2],Y=J[3]),top:W,right:V,bottom:j,left:Y,values:E,splitter:_}}}}var Up={name:"clippable",props:{clippable:Boolean,defaultClipPath:String,customClipPath:String,clipRelative:Boolean,clipArea:Boolean,dragWithClip:Boolean,clipTargetBounds:Boolean,clipVerticalGuidelines:Array,clipHorizontalGuidelines:Array,clipSnapThreshold:Boolean},events:{onClipStart:"clipStart",onClip:"clip",onClipEnd:"clipEnd"},css:[".control.clip-control {\n background: #6d6;\n cursor: pointer;\n}\n.control.clip-control.clip-radius {\n background: #d66;\n}\n.line.clip-line {\n background: #6e6;\n cursor: move;\n z-index: 1;\n}\n.clip-area {\n position: absolute;\n top: 0;\n left: 0;\n}\n.clip-ellipse {\n position: absolute;\n cursor: move;\n border: 1px solid #6d6;\n border: var(--zoompx) solid #6d6;\n border-radius: 50%;\n transform-origin: 0px 0px;\n}",":host {\n --bounds-color: #d66;\n}",".guideline {\n pointer-events: none;\n z-index: 2;\n}",".line.guideline.bounds {\n background: #d66;\n background: var(--bounds-color);\n}"],render:function(t,e){var i=t.props,n=i.customClipPath,o=i.defaultClipPath,s=i.clipArea,r=i.zoom,l=t.state,a=l.target,d=l.width,c=l.height,u=l.allMatrix,p=l.is3d,h=l.left,v=l.top,f=l.pos1,g=l.pos2,m=l.pos3,b=l.pos4,y=l.clipPathState,x=l.snapBoundInfos;if(!a)return[];var _=Fp(a,d,c,o||"inset",y||n);if(!_)return[];var w=p?4:3,S=_.type,C=_.poses.map((function(t){var e=Pd(u,t.pos,w);return[e[0]-h,e[1]-v]})),k=[],E=[],A="rect"===S,L="inset"===S,q="polygon"===S;if(A||L||q){var T=L?C.slice(0,8):C;E=T.map((function(t,i){var n=0===i?T[T.length-1]:T[i-1],o=el(n,t),s=Yd(n,t);return e.createElement("div",{key:"clipLine"+i,className:Ld("line","clip-line","snap-control"),"data-clip-index":i,style:{width:s+"px",transform:"translate("+n[0]+"px, "+n[1]+"px) rotate("+o+"rad) scaleY("+r+")"}})}))}if(k=C.map((function(t,i){return e.createElement("div",{key:"clipControl"+i,className:Ld("control","clip-control","snap-control"),"data-clip-index":i,style:{transform:"translate("+t[0]+"px, "+t[1]+"px) scale("+r+")"}})})),L&&k.push.apply(k,C.slice(8).map((function(t,i){return e.createElement("div",{key:"clipRadiusControl"+i,className:Ld("control","clip-control","clip-radius","snap-control"),"data-clip-index":8+i,style:{transform:"translate("+t[0]+"px, "+t[1]+"px) scale("+r+")"}})}))),"circle"===S||"ellipse"===S){var M=_.left,O=_.top,R=_.radiusX,N=_.radiusY,B=la(Pd(u,[M,O],w),Pd(u,[0,0],w)),$=B[0],I=B[1],H="none";if(!s){for(var D=Math.max(10,R/5,N/5),z=[],P=0;P<=D;++P){var F=2*Math.PI/D*P;z.push([R+(R-r)*Math.cos(F),N+(N-r)*Math.sin(F)])}z.push([R,-2]),z.push([-2,-2]),z.push([-2,2*N+2]),z.push([2*R+2,2*N+2]),z.push([2*R+2,-2]),z.push([R,-2]),H="polygon("+z.map((function(t){return t[0]+"px "+t[1]+"px"})).join(", ")+")"}k.push(e.createElement("div",{key:"clipEllipse",className:Ld("clip-ellipse","snap-control"),style:{width:2*R+"px",height:2*N+"px",clipPath:H,transform:"translate("+(-h+$)+"px, "+(-v+I)+"px) "+Hd(u)}}))}if(s){var U=Ud(cd([f,g,m,b],C)),W=U.width,j=U.height,G=U.left,Y=U.top;if(q||A||L){z=L?C.slice(0,8):C;k.push(e.createElement("div",{key:"clipArea",className:Ld("clip-area","snap-control"),style:{width:W+"px",height:j+"px",transform:"translate("+G+"px, "+Y+"px)",clipPath:"polygon("+z.map((function(t){return t[0]-G+"px "+(t[1]-Y)+"px"})).join(", ")+")"}}))}}return x&&["vertical","horizontal"].forEach((function(t){var i=x[t],n="horizontal"===t;i.isSnap&&E.push.apply(E,i.snap.posInfos.map((function(i,o){var s=i.pos,l=la(Pd(u,n?[0,s]:[s,0],w),[h,v]),a=la(Pd(u,n?[d,s]:[s,c],w),[h,v]);return ep(e,"",l,a,r,"clip"+t+"snap"+o,"guideline")}))),i.isBound&&E.push.apply(E,i.bounds.map((function(i,o){var s=i.pos,l=la(Pd(u,n?[0,s]:[s,0],w),[h,v]),a=la(Pd(u,n?[d,s]:[s,c],w),[h,v]);return ep(e,"",l,a,r,"clip"+t+"bounds"+o,"guideline","bounds","bold")})))})),cd(k,E)},dragControlCondition:function(t,e){return e.inputEvent&&(e.inputEvent.target.getAttribute("class")||"").indexOf("clip")>-1},dragStart:function(t,e){var i=t.props.dragWithClip;return!(void 0===i||i)&&this.dragControlStart(t,e)},drag:function(t,e){return this.dragControl(t,e)},dragEnd:function(t,e){return this.dragControlEnd(t,e)},dragControlStart:function(t,e){var i=t.state,n=t.props,o=n.defaultClipPath,s=n.customClipPath,r=i.target,l=i.width,a=i.height,d=e.inputEvent?e.inputEvent.target:null,c=d?d.getAttribute("class"):"",u=e.datas,p=Fp(r,l,a,o||"inset",s);if(!p)return!1;var h=p.clipText;return!1===rc(t,"onClipStart",oc(t,e,{clipType:p.type,clipStyle:h,poses:p.poses.map((function(t){return t.pos}))}))?(u.isClipStart=!1,!1):(u.isControl=c.indexOf("clip-control")>-1,u.isLine=c.indexOf("clip-line")>-1,u.isArea=c.indexOf("clip-area")>-1||c.indexOf("clip-ellipse")>-1,u.index=d?parseInt(d.getAttribute("data-clip-index"),10):-1,u.clipPath=p,u.isClipStart=!0,i.clipPathState=h,Tc(t,e),!0)},dragControl:function(t,e){var i=e.datas,n=e.originalDatas;if(!i.isClipStart)return!1;var o=n&&n.draggable||{},s=i,r=s.isControl,l=s.isLine,a=s.isArea,d=s.index,c=s.clipPath;if(!c)return!1;var u=o.isDrag?o.prevDist:$c(e),p=u[0],h=u[1],v=t.props,f=t.state,g=f.width,m=f.height,b=!a&&!r&&!l,y=c.type,x=c.poses,_=c.splitter,w=x.map((function(t){return t.pos}));b&&(p=-p,h=-h);var S=!r||"nesw"===x[d].direction,C="inset"===y||"rect"===y,k=x.map((function(){return[0,0]}));if(r&&!S){var E=x[d],A=E.horizontal,L=E.vertical,q=[p*Math.abs(A),h*Math.abs(L)];k=function(t,e,i,n){var o=t[e],s=o.direction,r=o.sub,l=t.map((function(){return[0,0]})),a=s?s.split(""):[];if(n&&e<8){var d=a.filter((function(t){return"w"===t||"e"===t}))[0],c=a.filter((function(t){return"n"===t||"s"===t}))[0];l[e]=i,t.forEach((function(t,e){var n=t.direction;n&&(n.indexOf(d)>-1&&(l[e][0]=i[0]),n.indexOf(c)>-1&&(l[e][1]=i[1]))})),d&&(l[1][0]=i[0]/2,l[5][0]=i[0]/2),c&&(l[3][1]=i[1]/2,l[7][1]=i[1]/2)}else s&&!r?a.forEach((function(e){var n="n"===e||"s"===e;t.forEach((function(t,o){var s=t.direction,r=t.horizontal,a=t.vertical;s&&-1!==s.indexOf(e)&&(l[o]=[n||!r?0:i[0],n&&a?i[1]:0])}))})):l[e]=i;return l}(x,d,q,C)}else S&&(k=w.map((function(){return[p,h]})));var T=w.map((function(t,e){return ra(t,k[e])})),M=cd(T);f.snapBoundInfos=null;var O="circle"===c.type,R="ellipse"===c.type;if(O||R){var N=Ud(T),B=Math.abs(N.bottom-N.top),$=Math.abs(R?N.right-N.left:B),I=T[0][1]+B,H=T[0][0]-$,D=T[0][0]+$;O&&(M.push([D,N.bottom]),k.push([1,0])),M.push([N.left,I]),k.push([0,1]),M.push([H,N.bottom]),k.push([1,0])}var z=tu((v.clipHorizontalGuidelines||[]).map((function(t){return Kr(""+t,m)})),(v.clipVerticalGuidelines||[]).map((function(t){return Kr(""+t,g)})),g,m),P=[],F=[];if(O||R)P=[M[4][0],M[2][0]],F=[M[1][1],M[3][1]];else if(C){var U=[M[0],M[2],M[4],M[6]],W=[k[0],k[2],k[4],k[6]];P=U.filter((function(t,e){return W[e][0]})).map((function(t){return t[0]})),F=U.filter((function(t,e){return W[e][1]})).map((function(t){return t[1]}))}else P=M.filter((function(t,e){return k[e][0]})).map((function(t){return t[0]})),F=M.filter((function(t,e){return k[e][1]})).map((function(t){return t[1]}));for(var j=function(t){var e=Fu(z,v.clipTargetBounds&&{left:0,top:0,right:g,bottom:m},P,F,{snapThreshold:5}),i=e.horizontal,n=e.vertical,o=i.offset,s=n.offset;if(!R&&!O||0!==k[0][0]||0!==k[0][1])return M.forEach((function(t,e){var i=k[e];i[0]&&(t[0]-=s),i[1]&&(t[1]-=o)})),"break";var r=Ud(T),l=r.bottom-r.top,a=R?r.right-r.left:l;a-=n.isBound?Math.abs(s):0===n.snapIndex?-s:s,l-=i.isBound?Math.abs(o):0===i.snapIndex?-o:o,O&&(a=l=du(n,i)>0?l:a);var d=M[0];M[1][1]=d[1]-l,M[2][0]=d[0]+a,M[3][1]=d[1]+l,M[4][0]=d[0]-a},G=0;G<2;++G){if("break"===j())break}var Y=zp(t,c,T),V=y+"("+Y.join(_)+")";if(f.clipPathState=V,O||R)P=[M[4][0],M[2][0]],F=[M[1][1],M[3][1]];else if(C){U=[M[0],M[2],M[4],M[6]];P=U.map((function(t){return t[0]})),F=U.map((function(t){return t[1]}))}else P=M.map((function(t){return t[0]})),F=M.map((function(t){return t[1]}));return f.snapBoundInfos=Fu(z,v.clipTargetBounds&&{left:0,top:0,right:g,bottom:m},P,F,{snapThreshold:1}),rc(t,"onClip",oc(t,e,{clipEventType:"changed",clipType:y,poses:T,clipStyle:V,clipStyles:Y,distX:p,distY:h})),!0},dragControlEnd:function(t,e){this.unset(t);var i=e.isDrag,n=e.datas,o=e.isDouble,s=n.isLine,r=n.isClipStart,l=n.isControl;return!!r&&(rc(t,"onClipEnd",sc(t,e,{})),o&&(l?function(t,e){var i=e.datas,n=i.clipPath,o=i.index,s=n,r=s.type,l=s.poses,a=s.splitter,d=l.map((function(t){return t.pos})),c=d.length;if("polygon"===r)l.splice(o,1),d.splice(o,1);else{if("inset"!==r)return;if(o<8)return;if(Bp(l,d,o,8,c),c===l.length)return}var u=zp(t,n,d);rc(t,"onClip",oc(t,e,{clipEventType:"removed",clipType:r,poses:d,clipStyles:u,clipStyle:r+"("+u.join(a)+")",distX:0,distY:0}))}(t,e):s&&function(t,e){var i=qc(t,e),n=i[0],o=i[1],s=e.datas,r=s.clipPath,l=s.index,a=r,d=a.type,c=a.poses,u=a.splitter,p=c.map((function(t){return t.pos}));if("polygon"===d)p.splice(l,0,[n,o]);else{if("inset"!==d)return;var h=Lp.indexOf(l),v=qp.indexOf(l),f=c.length;if($p(c,p,8,h,v,n,o,p[4][0],p[4][1],p[0][0],p[0][1]),f===c.length)return}var g=zp(t,r,p);rc(t,"onClip",oc(t,e,{clipEventType:"added",clipType:d,poses:p,clipStyles:g,clipStyle:d+"("+g.join(u)+")",distX:0,distY:0}))}(t,e)),o||i)},unset:function(t){t.state.clipPathState="",t.state.snapBoundInfos=null}},Wp={name:"originDraggable",props:{originDraggable:Boolean,originRelative:Boolean},events:{onDragOriginStart:"dragOriginStart",onDragOrigin:"dragOrigin",onDragOriginEnd:"dragOriginEnd"},css:[":host[data-able-origindraggable] .control.origin {\n pointer-events: auto;\n}"],dragControlCondition:function(t,e){return e.isRequest?"originDraggable"===e.requestAble:rl(e.inputEvent.target,Ld("origin"))},dragControlStart:function(t,e){var i=e.datas;Tc(t,e);var n=oc(t,e,{dragStart:Qu.dragStart(t,(new kc).dragStart([0,0],e))}),o=rc(t,"onDragOriginStart",n);return i.startOrigin=t.state.transformOrigin,i.startTargetOrigin=t.state.targetOrigin,i.prevOrigin=[0,0],i.isDragOrigin=!0,!1===o?(i.isDragOrigin=!1,!1):n},dragControl:function(t,e){var i=e.datas,n=e.isPinch,o=e.isRequest;if(!i.isDragOrigin)return!1;var s=$c(e),r=s[0],l=s[1],a=t.state,d=a.width,c=a.height,u=a.offsetMatrix,p=a.targetMatrix,h=a.is3d,v=t.props.originRelative,f=void 0===v||v,g=h?4:3,m=[r,l];if(o){var b=e.distOrigin;(b[0]||b[1])&&(m=b)}var y=ra(i.startOrigin,m),x=ra(i.startTargetOrigin,m),_=la(m,i.prevOrigin),w=zc(u,p,y,g),S=t.getRect(),C=Ud(Fd(w,d,c,g)),k=[S.left-C.left,S.top-C.top];i.prevOrigin=m;var E=oc(t,e,{width:d,height:c,origin:y,dist:m,delta:_,transformOrigin:[gc(x[0],d,f),gc(x[1],c,f)].join(" "),drag:Qu.drag(t,Cc(e,t.state,k,!!n,!1))});return rc(t,"onDragOrigin",E),E},dragControlEnd:function(t,e){return!!e.datas.isDragOrigin&&(rc(t,"onDragOriginEnd",sc(t,e,{})),!0)},dragGroupControlCondition:function(t,e){return this.dragControlCondition(t,e)},dragGroupControlStart:function(t,e){return!!this.dragControlStart(t,e)},dragGroupControl:function(t,e){var i=this.dragControl(t,e);return!!i&&(t.transformOrigin=i.transformOrigin,!0)},request:function(t){var e={},i=t.getRect(),n=0,o=0,s=i.transformOrigin,r=[0,0];return{isControl:!0,requestStart:function(){return{datas:e}},request:function(t){return"deltaOrigin"in t?(r[0]+=t.deltaOrigin[0],r[1]+=t.deltaOrigin[1]):"origin"in t?(r[0]=t.origin[0]-s[0],r[1]=t.origin[1]-s[1]):("x"in t?n=t.x-i.left:"deltaX"in t&&(n+=t.deltaX),"y"in t?o=t.y-i.top:"deltaY"in t&&(o+=t.deltaY)),{datas:e,distX:n,distY:o,distOrigin:r}},requestEnd:function(){return{datas:e,isDrag:!0}}}}};function jp(t,e,i,n,o){var s;void 0===n&&(n=[0,0]);if(o)s=o;else{var r=lc(t);s=r&&r.borderRadius||""}return Np(!s||!o&&"0px"===s?[]:Fr(s),e,i,0,0,n)}function Gp(t,e,i,n,o,s){var r=t.state,l=r.width,a=r.height,d=Op(s,o,t.props.roundRelative,l,a),c=d.raws,u=d.styles,p=Ip(o,c),h=p.horizontals,v=p.verticals,f=u.join(" ");r.borderRadiusState=f,rc(t,"onRound",oc(t,e,{horizontals:h,verticals:v,borderRadius:f,width:l,height:a,delta:n,dist:i}))}var Yp={name:"roundable",props:{roundable:Boolean,roundRelative:Boolean,minRoundControls:Array,maxRoundControls:Array,roundClickable:Boolean},events:{onRoundStart:"roundStart",onRound:"round",onRoundEnd:"roundEnd"},css:[".control.border-radius {\n background: #d66;\n cursor: pointer;\n}",":host[data-able-roundable] .line.direction {\n cursor: pointer;\n}"],render:function(t,e){var i=t.state,n=i.target,o=i.width,s=i.height,r=i.allMatrix,l=i.is3d,a=i.left,d=i.top,c=i.borderRadiusState,u=t.props,p=u.minRoundControls,h=void 0===p?[0,0]:p,v=u.maxRoundControls,f=void 0===v?[4,4]:v,g=u.zoom;if(!n)return null;var m=l?4:3,b=jp(n,o,s,h,c);if(!b)return null;var y=0,x=0;return b.map((function(t,i){x+=Math.abs(t.horizontal),y+=Math.abs(t.vertical);var n=la(Pd(r,t.pos,m),[a,d]),o=t.vertical?y<=f[1]:x<=f[0];return e.createElement("div",{key:"borderRadiusControl"+i,className:Ld("control","border-radius"),"data-radius-index":i,style:{display:o?"block":"none",transform:"translate("+n[0]+"px, "+n[1]+"px) scale("+g+")"}})}))},dragControlCondition:function(t,e){if(!e.inputEvent||e.isRequest)return!1;var i=e.inputEvent.target.getAttribute("class")||"";return i.indexOf("border-radius")>-1||i.indexOf("moveable-line")>-1&&i.indexOf("moveable-direction")>-1},dragControlStart:function(t,e){var i=e.inputEvent,n=e.datas,o=i.target,s=o.getAttribute("class")||"",r=s.indexOf("border-radius")>-1,l=s.indexOf("moveable-line")>-1&&s.indexOf("moveable-direction")>-1,a=r?parseInt(o.getAttribute("data-radius-index"),10):-1,d=l?parseInt(o.getAttribute("data-line-index"),10):-1;if(!r&&!l)return!1;if(!1===rc(t,"onRoundStart",oc(t,e,{})))return!1;n.lineIndex=d,n.controlIndex=a,n.isControl=r,n.isLine=l,Tc(t,e);var c=t.props,u=c.roundRelative,p=c.minRoundControls,h=void 0===p?[0,0]:p,v=t.state,f=v.target,g=v.width,m=v.height;n.isRound=!0,n.prevDist=[0,0];var b=jp(f,g,m,h)||[];return n.controlPoses=b,v.borderRadiusState=Op(b.map((function(t){return t.pos})),b,u,g,m).styles.join(" "),!0},dragControl:function(t,e){var i=e.datas;if(!i.isRound||!i.isControl||!i.controlPoses.length)return!1;var n=i.controlIndex,o=i.controlPoses,s=$c(e),r=s[0],l=s[1],a=[r,l],d=la(a,i.prevDist),c=t.props.maxRoundControls,u=void 0===c?[4,4]:c,p=t.state,h=p.width,v=p.height,f=o[n],g=f.vertical,m=f.horizontal,b=o.map((function(t){var e=t.horizontal,i=t.vertical,n=[e*m*a[0],i*g*a[1]];if(e){if(1===u[0])return n;if(u[0]<4&&e!==m)return n}else{if(0===u[1])return n[1]=i*m*a[0]/h*v,n;if(g){if(1===u[1])return n;if(u[1]<4&&i!==g)return n}}return[0,0]}));b[n]=a;var y=o.map((function(t,e){return ra(t.pos,b[e])}));return i.prevDist=[r,l],Gp(t,e,a,d,o,y),!0},dragControlEnd:function(t,e){var i=t.state;i.borderRadiusState="";var n=e.datas,o=e.isDouble;if(!n.isRound)return!1;var s=i.width,r=i.height,l=n.isControl,a=n.controlIndex,d=n.isLine,c=n.lineIndex,u=n.controlPoses,p=u.map((function(t){return t.pos})),h=p.length,v=t.props.roundClickable;if(o&&(void 0===v||v)){if(l)Bp(u,p,a,0);else if(d){var f=qc(t,e);!function(t,e,i,n,o,s,r){var l=Ip(t),a=l.horizontals,d=l.verticals,c=a.length,u=d.length,p=-1,h=-1;0===i?0===c?p=0:1===c&&(p=1):3===i&&(c<=2?p=2:c<=3&&(p=3)),2===i?0===u?h=0:u<4&&(h=3):1===i&&(u<=1?h=1:u<=2&&(h=2)),$p(t,e,0,p,h,n,o,s,r)}(u,p,c,f[0],f[1],s,r)}h!==u.length&&Gp(t,e,[0,0],[0,0],u,p)}return rc(t,"onRoundEnd",sc(t,e,{})),i.borderRadiusState="",!0},unset:function(t){t.state.borderRadiusState=""}},Vp={isPinch:!0,name:"beforeRenderable",props:{},events:{onBeforeRenderStart:"beforeRenderStart",onBeforeRender:"beforeRender",onBeforeRenderEnd:"beforeRenderEnd",onBeforeRenderGroupStart:"beforeRenderGroupStart",onBeforeRenderGroup:"beforeRenderGroup",onBeforeRenderGroupEnd:"beforeRenderGroupEnd"},setTransform:function(t,e){var i=t.state,n=i.is3d,o=i.target,s=i.targetMatrix,r=null==o?void 0:o.style.transform,l=n?"matrix3d("+s.join(",")+")":"matrix("+aa(s,!0)+")";e.datas.startTransforms=r&&"none"!==r?Fr(r):[l]},resetTransform:function(t,e){e.datas.nextTransforms=e.datas.startTransforms,e.datas.nextTransformAppendedIndexes=[]},fillDragStartParams:function(t,e){return oc(t,e,{setTransform:function(t){e.datas.startTransforms=$r(t)?t:Fr(t)},isPinch:!!e.isPinch})},fillDragParams:function(t,e){return oc(t,e,{isPinch:!!e.isPinch})},dragStart:function(t,e){this.setTransform(t,e),rc(t,"onBeforeRenderStart",this.fillDragStartParams(t,e))},drag:function(t,e){this.resetTransform(t,e),rc(t,"onBeforeRender",oc(t,e,{isPinch:!!e.isPinch}))},dragEnd:function(t,e){rc(t,"onBeforeRenderEnd",oc(t,e,{isPinch:!!e.isPinch,isDrag:e.isDrag}))},dragGroupStart:function(t,e){var i=this;this.dragStart(t,e);var n=Ec(t,"beforeRenderable",e),o=t.moveables,s=n.map((function(t,e){var n=o[e];return i.setTransform(n,t),i.fillDragStartParams(n,t)}));rc(t,"onBeforeRenderGroupStart",oc(t,e,{isPinch:!!e.isPinch,targets:t.props.targets,setTransform:function(){},events:s}))},dragGroup:function(t,e){var i=this;this.drag(t,e);var n=Ec(t,"beforeRenderable",e),o=t.moveables,s=n.map((function(t,e){var n=o[e];return i.resetTransform(n,t),i.fillDragParams(n,t)}));rc(t,"onBeforeRenderGroup",oc(t,e,{isPinch:!!e.isPinch,targets:t.props.targets,events:s}))},dragGroupEnd:function(t,e){this.dragEnd(t,e),rc(t,"onBeforeRenderGroupEnd",oc(t,e,{isPinch:!!e.isPinch,isDrag:e.isDrag,targets:t.props.targets}))},dragControlStart:function(t,e){return this.dragStart(t,e)},dragControl:function(t,e){return this.drag(t,e)},dragControlEnd:function(t,e){return this.dragEnd(t,e)},dragGroupControlStart:function(t,e){return this.dragGroupStart(t,e)},dragGroupControl:function(t,e){return this.dragGroup(t,e)},dragGroupControlEnd:function(t,e){return this.dragGroupEnd(t,e)}},Xp={name:"renderable",props:{},events:{onRenderStart:"renderStart",onRender:"render",onRenderEnd:"renderEnd",onRenderGroupStart:"renderGroupStart",onRenderGroup:"renderGroup",onRenderGroupEnd:"renderGroupEnd"},dragStart:function(t,e){rc(t,"onRenderStart",oc(t,e,{isPinch:!!e.isPinch}))},drag:function(t,e){rc(t,"onRender",oc(t,e,{isPinch:!!e.isPinch}))},dragEnd:function(t,e){rc(t,"onRenderEnd",oc(t,e,{isPinch:!!e.isPinch,isDrag:e.isDrag}))},dragGroupStart:function(t,e){rc(t,"onRenderGroupStart",oc(t,e,{isPinch:!!e.isPinch,targets:t.props.targets}))},dragGroup:function(t,e){rc(t,"onRenderGroup",oc(t,e,{isPinch:!!e.isPinch,targets:t.props.targets}))},dragGroupEnd:function(t,e){rc(t,"onRenderGroupEnd",oc(t,e,{isPinch:!!e.isPinch,isDrag:e.isDrag,targets:t.props.targets}))},dragControlStart:function(t,e){return this.dragStart(t,e)},dragControl:function(t,e){return this.drag(t,e)},dragControlEnd:function(t,e){return this.dragEnd(t,e)},dragGroupControlStart:function(t,e){return this.dragGroupStart(t,e)},dragGroupControl:function(t,e){return this.dragGroup(t,e)},dragGroupControlEnd:function(t,e){return this.dragGroupEnd(t,e)}};function Zp(t,e,i,n,o,s,r){var l="Start"===o,a=t.state.target,d=s.isRequest;if(!a||l&&n.indexOf("Control")>-1&&!d&&t.areaElement===s.inputEvent.target)return!1;var c=""+i+n+o,u=""+i+n+"Condition",p="End"===o,h=o.indexOf("After")>-1,v=l&&(!t.targetGesto||!t.controlGesto||!t.targetGesto.isFlag()||!t.controlGesto.isFlag());v&&t.updateRect(o,!0,!1),""!==o||h||d||vc(t.state,s);var f=cd([Vp],t[e].slice(),[Xp]);if(d){var g=s.requestAble;f.some((function(t){return t.name===g}))||f.push.apply(f,t.props.ables.filter((function(t){return t.name===g})))}if(!f.length)return!1;var m=f.filter((function(t){return t[c]})),b=s.datas;v&&m.forEach((function(e){e.unset&&e.unset(t)}));var y,x=s.inputEvent;p&&x&&(y=document.elementFromPoint(s.clientX,s.clientY)||x.target);var _=m.filter((function(e){var i=e.name,n=b[i]||(b[i]={});return l&&(n.isEventStart=!e[u]||e[u](t,s)),!!n.isEventStart&&e[c](t,dd(dd({},s),{datas:n,originalDatas:b,inputTarget:y}))})).length,w=l&&m.length&&!_;return(p||w)&&(t.state.gesto=null,t.moveables&&t.moveables.forEach((function(t){t.state.gesto=null}))),v&&w&&m.forEach((function(e){e.unset&&e.unset(t)})),!t.isUnmounted&&!w&&((!l&&_&&!r||p)&&(t.updateRect(o,!0,!1),t.forceUpdate()),l||p||h||!_||r||Zp(t,e,i,n,o+"After",s),!0)}function Kp(t,e,i){var n=t.controlBox.getElement(),o=[];o.push(n),t.props.dragArea&&!t.props.dragTarget||o.push(e);var s=function(e){var i=e.inputEvent.target;return i===t.areaElement||!t.isMoveableElement(i)||rl(i,"moveable-area")||rl(i,"moveable-padding")};return Jp(t,o,"targetAbles",i,{dragStart:s,pinchStart:s})}function Jp(t,e,i,n,o){void 0===o&&(o={});var s=t.props,r=s.pinchOutside,l=s.pinchThreshold,a={container:window,pinchThreshold:l,pinchOutside:r},d=new Ja(e,a);return["drag","pinch"].forEach((function(e){["Start","","End"].forEach((function(s){d.on(""+e+s,(function(r){var l=r.eventType;!o[l]||o[l](r)?Zp(t,i,e,n,s,r)||r.stop():r.stop()}))}))})),d}var Qp=function(){function t(t,e,i){var n=this;this.target=t,this.moveable=e,this.eventName=i,this.ables=[],this.onEvent=function(t){var e=n.eventName,i=n.moveable;i.state.disableNativeEvent||n.ables.forEach((function(n){n[e](i,{inputEvent:t})}))},this.target.addEventListener(this.eventName.toLowerCase(),this.onEvent)}var e=t.prototype;return e.setAbles=function(t){this.ables=t},e.destroy=function(){this.target.removeEventListener(this.eventName.toLowerCase(),this.onEvent),this.target=null,this.moveable=null},t}(),th=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.state=dd({container:null,target:null,gesto:null,renderPoses:[[0,0],[0,0],[0,0],[0,0]],disableNativeEvent:!1},Jd(null)),e.enabledAbles=[],e.targetAbles=[],e.controlAbles=[],e.rotation=0,e.scale=[1,1],e.isUnmounted=!1,e.events={mouseEnter:null,mouseLeave:null},e.onPreventClick=function(t){t.stopPropagation(),al(window,"click",e.onPreventClick,!0)},e}ad(e,t);var i=e.prototype;return i.render=function(){var t=this.props,e=this.state,i=t.edge,n=t.parentPosition,o=t.className,s=t.target,r=t.zoom,l=t.cspNonce,a=t.translateZ,d=t.cssStyled,c=t.portalContainer;this.checkUpdate(),this.updateRenderPoses();var u=n||{left:0,top:0},p=u.left,h=u.top,v=e.left,f=e.top,g=e.target,m=e.direction,b=e.renderPoses,y=t.targets,x=(y&&y.length||s)&&g,_=this.isDragging(),w={},S={createElement:_l};return this.getEnabledAbles().forEach((function(t){w["data-able-"+t.name.toLowerCase()]=!0})),_l(d,dd({cspNonce:l,ref:xr(this,"controlBox"),className:Ld("control-box",-1===m?"reverse":"",_?"dragging":"")+" "+o},w,{onClick:this.onPreventClick,portalContainer:c,style:{position:"absolute",display:x?"block":"none",transform:"translate3d("+(v-p)+"px, "+(f-h)+"px, "+a+")","--zoom":r,"--zoompx":r+"px"}}),this.renderAbles(),ep(S,i?"n":"",b[0],b[1],r,0),ep(S,i?"e":"",b[1],b[3],r,1),ep(S,i?"w":"",b[0],b[2],r,2),ep(S,i?"s":"",b[2],b[3],r,3))},i.componentDidMount=function(){this.controlBox.getElement();var t=this.props,e=t.parentMoveable,i=t.container,n=t.wrapperMoveable;this.updateEvent(t),this.updateNativeEvents(t),i||e||n||this.updateRect("",!1,!0),this.updateCheckInput()},i.componentDidUpdate=function(t){this.updateNativeEvents(t),this.updateEvent(t),this.updateCheckInput()},i.componentWillUnmount=function(){this.isUnmounted=!0,nc(this,"targetGesto"),nc(this,"controlGesto");var t=this.events;for(var e in t){var i=t[e];i&&i.destroy()}},i.getContainer=function(){var t=this.props,e=t.parentMoveable,i=t.wrapperMoveable;return t.container||i&&i.getContainer()||e&&e.getContainer()||this.controlBox.getElement().parentElement},i.isMoveableElement=function(t){return t&&(t.getAttribute("class")||"").indexOf(gd)>-1},i.dragStart=function(t){return this.targetGesto&&this.targetGesto.triggerDragStart(t),this},i.hitTest=function(t){var e,i=this.state,n=i.target,o=i.pos1,s=i.pos2,r=i.pos3,l=i.pos4,a=i.targetClientRect;if(!n)return 0;if(t instanceof Element){var d=t.getBoundingClientRect();e={left:d.left,top:d.top,width:d.width,height:d.height}}else e=dd({width:0,height:0},t);var c=e.left,u=e.top,p=e.width,h=e.height,v=ka([o,s,l,r],a),f=Oa(v,[[c,u],[c+p,u],[c+p,u+h],[c,u+h]]),g=Ca(v);return f&&g?Math.min(100,f/g*100):0},i.isInside=function(t,e){var i=this.state,n=i.target,o=i.pos1,s=i.pos2,r=i.pos3,l=i.pos4,a=i.targetClientRect;return!!n&&Aa([t,e],ka([o,s,l,r],a))},i.updateRect=function(t,e,i){void 0===i&&(i=!0);var n=this.props,o=n.parentMoveable,s=this.state.target||this.props.target,r=this.getContainer(),l=o?o.props.rootContainer:n.rootContainer;this.updateState(Jd(this.controlBox&&this.controlBox.getElement(),s,r,r,l||r),!o&&i)},i.isTargetChanged=function(t,e){var i=this.props,n=i.dragTarget||i.target,o=t.dragTarget||t.target,s=i.dragArea,r=t.dragArea;return!s&&o!==n||(e||s)&&r!==s},i.updateNativeEvents=function(t){var e=this,i=this.props.dragArea?this.areaElement:this.state.target,n=this.events,o=Zr(n);if(this.isTargetChanged(t))for(var s in n){var r=n[s];r&&r.destroy(),n[s]=null}if(i){var l=this.enabledAbles;o.forEach((function(t){var o=ac(l,[t]),s=o.length>0,r=n[t];s?(r||(r=new Qp(i,e,t),n[t]=r),r.setAbles(o)):r&&(r.destroy(),n[t]=null)}))}},i.updateEvent=function(t){var e=this.controlBox.getElement(),i=this.targetAbles.length,n=this.controlAbles.length,o=this.props,s=o.dragTarget||o.target,r=this.isTargetChanged(t,!0),l=!i&&this.targetGesto||r;l&&(nc(this,"targetGesto"),this.updateState({gesto:null})),n||nc(this,"controlGesto"),s&&i&&!this.targetGesto&&(this.targetGesto=Kp(this,s,"")),!this.controlGesto&&n&&(this.controlGesto=Jp(this,e,"controlAbles","Control")),l&&this.unsetAbles()},i.isDragging=function(){return!!this.targetGesto&&this.targetGesto.isFlag()||!!this.controlGesto&&this.controlGesto.isFlag()},i.updateTarget=function(t){this.updateRect(t,!0)},i.getRect=function(){var t=this.state,e=ic(this.state),i=e[0],n=e[1],o=e[2],s=e[3],r=Ud(e),l=t.width,a=t.height,d=r.width,c=r.height,u=r.left,p=r.top,h=[t.left,t.top],v=ra(h,t.origin);return{width:d,height:c,left:u,top:p,pos1:i,pos2:n,pos3:o,pos4:s,offsetWidth:l,offsetHeight:a,beforeOrigin:ra(h,t.beforeOrigin),origin:v,transformOrigin:t.transformOrigin,rotation:this.getRotation()}},i.getManager=function(){return this},i.getRotation=function(){var t=this.state;return function(t,e,i){var n=el(t,e)/Math.PI*180;return(n=i>=0?n:180-n)>=0?n:360+n}(t.pos1,t.pos2,t.direction)},i.request=function(t,e,i){void 0===e&&(e={});var n=this.props,o=n.ables,s=n.groupable,r=o.filter((function(e){return e.name===t}))[0];if(this.isDragging()||!r||!r.request)return{request:function(){return this},requestEnd:function(){return this}};var l=this,a=r.request(this),d=i||e.isInstant,c=a.isControl?"controlAbles":"targetAbles",u=(s?"Group":"")+(a.isControl?"Control":""),p={request:function(e){return Zp(l,c,"drag",u,"",dd(dd({},a.request(e)),{requestAble:t,isRequest:!0}),d),this},requestEnd:function(){return Zp(l,c,"drag",u,"End",dd(dd({},a.requestEnd()),{requestAble:t,isRequest:!0}),d),this}};return Zp(l,c,"drag",u,"Start",dd(dd({},a.requestStart(e)),{requestAble:t,isRequest:!0}),d),d?p.request(e).requestEnd():p},i.destroy=function(){this.componentWillUnmount()},i.updateRenderPoses=function(){var t=this.state,e=this.props,i=t.originalBeforeOrigin,n=t.transformOrigin,o=t.allMatrix,s=t.is3d,r=t.pos1,l=t.pos2,a=t.pos3,d=t.pos4,c=t.left,u=t.top,p=e.padding||{},h=p.left,v=void 0===h?0:h,f=p.top,g=void 0===f?0:f,m=p.bottom,b=void 0===m?0:m,y=p.right,x=void 0===y?0:y,_=s?4:3,w=e.groupable?i:ra(i,[c,u]);t.renderPoses=[ra(r,fc(o,[-v,-g],n,w,_)),ra(l,fc(o,[x,-g],n,w,_)),ra(a,fc(o,[-v,b],n,w,_)),ra(d,fc(o,[x,b],n,w,_))]},i.checkUpdate=function(){var t=this.props,e=t.target,i=t.container,n=t.parentMoveable,o=this.state,s=o.target,r=o.container;(s||e)&&(this.updateAbles(),(!dc(s,e)||!dc(r,i))&&(this.updateState({target:e,container:i}),n||!i&&!this.controlBox||this.updateRect("End",!1,!1)))},i.triggerEvent=function(t,e){var i=this.props[t];return i&&i(e)},i.useCSS=function(t,e){var i=this.props.customStyledMap,n=t+e;return i[n]||(i[n]=rd(t,e)),i[n]},i.unsetAbles=function(){var t=this;this.targetAbles.filter((function(e){return!!e.unset&&(e.unset(t),!0)})).length&&this.forceUpdate()},i.updateAbles=function(t,e){void 0===t&&(t=this.props.ables),void 0===e&&(e="");var i=this.props,n=i.triggerAblesSimultaneously,o=t.filter((function(t){return t&&(t.always||i[t.name])})),s="drag"+e+"ControlStart",r=ac(o,["drag"+e+"Start","pinch"+e+"Start"],n),l=ac(o,[s],n);this.enabledAbles=o,this.targetAbles=r,this.controlAbles=l},i.updateState=function(t,e){if(e)this.setState(t);else{var i=this.state;for(var n in t)i[n]=t[n]}},i.getEnabledAbles=function(){var t=this.props;return t.ables.filter((function(e){return e&&t[e.name]}))},i.renderAbles=function(){var t,e,i,n,o=this,s=this.props.triggerAblesSimultaneously,r={createElement:_l};return(t=uc(ac(this.getEnabledAbles(),["render"],s).map((function(t){return(0,t.render)(o,r)||[]}))).filter((function(t){return t})),e=function(t){return t.key},i=[],n={},t.forEach((function(o,s){var r=e(o,s,t),l=n[r];l||(l=[],n[r]=l,i.push(l)),l.push(o)})),i).map((function(t){return t[0]}))},i.updateCheckInput=function(){this.targetGesto&&(this.targetGesto.options.checkInput=this.props.checkInput)},e.defaultProps={target:null,dragTarget:null,container:null,rootContainer:null,origin:!0,edge:!1,parentMoveable:null,wrapperMoveable:null,parentPosition:null,portalContainer:null,ables:[],pinchThreshold:20,dragArea:!1,passDragArea:!1,transformOrigin:"",className:"",zoom:1,triggerAblesSimultaneously:!1,padding:{},pinchOutside:!0,checkInput:!1,groupable:!1,cspNonce:"",translateZ:0,cssStyled:null,customStyledMap:{},props:{}},e}(Ol),eh={name:"groupable",props:{defaultGroupRotate:Number,defaultGroupOrigin:String,groupable:Boolean},events:{},render:function(t,e){var i=t.props.targets||[];t.moveables=[];var n=t.state,o={left:n.left,top:n.top};return i.map((function(i,n){return e.createElement(th,{key:"moveable"+n,ref:_r(t,"moveables",n),target:i,origin:!1,cssStyled:t.props.cssStyled,customStyledMap:t.props.customStyledMap,parentMoveable:t,parentPosition:o})}))}},ih=ud("clickable",{props:{},events:{onClick:"click",onClickGroup:"clickGroup"},always:!0,dragStart:function(t,e){e.isRequest||ll(window,"click",t.onPreventClick,!0)},dragControlStart:function(t,e){this.dragStart(t,e)},dragGroupStart:function(t,e){this.dragStart(t,e),e.datas.inputTarget=e.inputEvent&&e.inputEvent.target},dragEnd:function(t,e){this.endEvent(t);var i=t.state.target,n=e.inputEvent,o=e.inputTarget;if(n&&o&&!e.isDrag&&!t.isMoveableElement(o)){var s=i.contains(o);rc(t,"onClick",oc(t,e,{isDouble:e.isDouble,inputTarget:o,isTarget:i===o,containsTarget:s}))}},dragGroupEnd:function(t,e){this.endEvent(t);var i=e.inputEvent,n=e.inputTarget;if(i&&n&&!e.isDrag&&!t.isMoveableElement(n)&&e.datas.inputTarget!==n){var o=t.props.targets,s=o.indexOf(n),r=s>-1,l=!1;-1===s&&(l=(s=Vr(o,(function(t){return t.contains(n)})))>-1),rc(t,"onClickGroup",oc(t,e,{isDouble:e.isDouble,targets:o,inputTarget:n,targetIndex:s,isTarget:r,containsTarget:l}))}},dragControlEnd:function(t){this.endEvent(t)},dragGroupControlEnd:function(t){this.endEvent(t)},endEvent:function(t){var e=this;requestAnimationFrame((function(){e.unset(t)}))},unset:function(t){al(window,"click",t.onPreventClick,!0)}});function nh(t){var e=t.originalDatas.draggable;return e||(t.originalDatas.draggable={},e=t.originalDatas.draggable),dd(dd({},t),{datas:e})}var oh=ud("edgeDraggable",{dragControlCondition:function(t,e){if(!t.props.edgeDraggable||!e.inputEvent)return!1;var i=e.inputEvent.target;return rl(i,Ld("direction"))&&rl(i,Ld("line"))},dragControlStart:function(t,e){return Qu.dragStart(t,nh(e))},dragControl:function(t,e){return Qu.drag(t,nh(e))},dragControlEnd:function(t,e){return Qu.dragEnd(t,nh(e))},dragGroupControlCondition:function(t,e){if(!t.props.edgeDraggable||!e.inputEvent)return!1;var i=e.inputEvent.target;return rl(i,Ld("direction"))&&rl(i,Ld("line"))},dragGroupControlStart:function(t,e){return Qu.dragGroupStart(t,nh(e))},dragGroupControl:function(t,e){return Qu.dragGroup(t,nh(e))},dragGroupControlEnd:function(t,e){return Qu.dragGroupEnd(t,nh(e))},unset:function(t){t.state.dragInfo=null}}),sh={name:"individualGroupable",props:{individualGroupable:Boolean},events:{}},rh=[Vp,Cp,Ju,Sc,Qu,oh,dp,cp,up,vp,Sp,kp,_p,Wp,Up,Yp,eh,sh,ih,xp,Xp],lh=rh.reduce((function(t,e){return dd(dd({},t),"events"in e?e.events:{})}),{}),ah=rh.reduce((function(t,e){return dd(dd({},t),e.props)}),{}),dh=yc(lh),ch=Object.keys(dh),uh=Object.keys(ah);function ph(t,e){return Math.max.apply(Math,t.map((function(t){var i=t[0],n=t[1],o=t[2],s=t[3];return Math.max(i[e],n[e],o[e],s[e])})))}function hh(t,e){return Math.min.apply(Math,t.map((function(t){var i=t[0],n=t[1],o=t[2],s=t[3];return Math.min(i[e],n[e],o[e],s[e])})))}var vh=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.differ=new $a,e.moveables=[],e.transformOrigin="50% 50%",e}ad(e,t);var i=e.prototype;return i.updateEvent=function(t){var e=this.state,i=this.props,n=t.dragTarget||e.target,o=i.dragTarget||this.areaElement;n!==o&&(nc(this,"targetGesto"),nc(this,"controlGesto"),e.target=null),e.target||(e.target=this.areaElement,this.controlBox.getElement().style.display="block",this.targetGesto=Kp(this,o,"Group"),this.controlGesto=Jp(this,this.controlBox.getElement(),"controlAbles","GroupControl"));var s=!dc(t.container,i.container);s&&(e.container=i.container);var r=this.differ.update(i.targets),l=r.added,a=r.changed,d=r.removed;(s||l.length||a.length||d.length)&&this.updateRect()},i.checkUpdate=function(){this.updateAbles()},i.updateRect=function(t,e,i){if(void 0===i&&(i=!0),this.controlBox){this.moveables.forEach((function(e){e.updateRect(t,!1,!1)}));var n=this.state,o=this.props,s=n.target||o.target;(!e||""!==t&&o.updateGroup)&&(this.rotation=o.defaultGroupRotate,this.transformOrigin=o.defaultGroupOrigin||"50% 50%",this.scale=[1,1]);var r=this.rotation,l=this.scale,a=function(t,e){if(!t.length)return[0,0,0,0];var i=t.map((function(t){return ic(t.state)})),n=wd,o=wd,s=0,r=0,l=ol(e,xd);if(l%90){var a=l/180*Math.PI,d=Math.tan(a),c=-1/d,u=[Sd,wd],p=[Sd,wd];i.forEach((function(t){t.forEach((function(t){var e=t[1]-d*t[0],i=t[1]-c*t[0];u[0]=Math.max(u[0],e),u[1]=Math.min(u[1],e),p[0]=Math.max(p[0],i),p[1]=Math.min(p[1],i)}))})),u.forEach((function(t){p.forEach((function(e){var i=(e-t)/(d-c),s=d*i+t;n=Math.min(n,i),o=Math.min(o,s)}))}));var h=i.map((function(t){var e=t[0],i=t[1],n=t[2],o=t[3];return[va(e,-a),va(i,-a),va(n,-a),va(o,-a)]}));s=ph(h,0)-hh(h,0),r=ph(h,1)-hh(h,1)}else if(n=hh(i,0),o=hh(i,1),s=ph(i,0)-n,r=ph(i,1)-o,l%180){var v=s;s=r,r=v}return[n,o,s,r]}(this.moveables,r),d=a[0],c=a[1],u=a[2],p=a[3],h="rotate("+r+"deg) scale("+(l[0]>=0?1:-1)+", "+(l[1]>=0?1:-1)+")";s.style.cssText+="left:0px;top:0px; transform-origin: "+this.transformOrigin+"; width:"+u+"px; height:"+p+"px;transform:"+h,n.width=u,n.height=p;var v=this.getContainer(),f=Jd(this.controlBox.getElement(),s,this.controlBox.getElement(),this.getContainer(),this.props.rootContainer||v),g=[f.left,f.top],m=ic(f),b=m[0],y=m[1],x=m[2],_=m[3],w=Ea([b,y,x,_]),S=[w.minX,w.minY];f.pos1=la(b,S),f.pos2=la(y,S),f.pos3=la(x,S),f.pos4=la(_,S),f.left=d-f.left+S[0],f.top=c-f.top+S[1],f.origin=la(ra(g,f.origin),S),f.beforeOrigin=la(ra(g,f.beforeOrigin),S),f.originalBeforeOrigin=ra(g,f.originalBeforeOrigin);var C=f.targetClientRect,k=l[0]*l[1]>0?1:-1;C.top+=f.top-n.top,C.left+=f.left-n.left,s.style.transform="translate("+-S[0]+"px, "+-S[1]+"px) "+h,this.updateState(dd(dd({},f),{direction:k,beforeDirection:k}),i)}},i.getRect=function(){return dd(dd({},t.prototype.getRect.call(this)),{children:this.moveables.map((function(t){return t.getRect()}))})},i.triggerEvent=function(e,i,n){if(n||e.indexOf("Group")>-1)return t.prototype.triggerEvent.call(this,e,i)},i.updateAbles=function(){t.prototype.updateAbles.call(this,cd(this.props.ables,[eh]),"Group")},e.defaultProps=dd(dd({},th.defaultProps),{transformOrigin:["50%","50%"],groupable:!0,dragArea:!0,keepRatio:!0,targets:[],defaultGroupRotate:0,defaultGroupOrigin:"50% 50%"}),e}(th),fh=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.moveables=[],e}ad(e,t);var i=e.prototype;return i.render=function(){var t=this,e=this.props,i=e.cspNonce,n=e.cssStyled,o=e.targets;return _l(n,{cspNonce:i,ref:xr(this,"controlBox"),className:Ld("control-box")},o.map((function(e,i){return _l(th,dd({key:"moveable"+i,ref:_r(t,"moveables",i)},t.props,{target:e,wrapperMoveable:t}))})))},i.componentDidUpdate=function(){},i.updateRect=function(t,e,i){void 0===i&&(i=!0),this.moveables.forEach((function(n){n.updateRect(t,e,i)}))},i.getRect=function(){return dd(dd({},t.prototype.getRect.call(this)),{children:this.moveables.map((function(t){return t.getRect()}))})},i.request=function(){return{request:function(){return this},requestEnd:function(){return this}}},i.dragStart=function(){return this},i.hitTest=function(){return 0},i.isInside=function(){return!1},i.isDragging=function(){return!1},i.updateRenderPoses=function(){},i.updateEvent=function(){},i.checkUpdate=function(){},i.triggerEvent=function(){},i.updateAbles=function(){},e}(th),gh=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return ad(e,t),e.defaultAbles=rh,e}(function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.refTargets=[],e.selectorMap={},e}ad(e,t);var i=e.prototype;return e.makeStyled=function(){var t={};this.getTotalAbles().forEach((function(e){var i=e.css;i&&i.forEach((function(e){t[e]=!0}))}));var e=Zr(t).join("\n");this.defaultStyled=rd("div",function(t,e){return e.replace(/([^}{]*){/gm,(function(e,i){return i.replace(/\.([^{,\s\d.]+)/g,"."+t+"$1")+"{"}))}(gd,md+e))},e.getTotalAbles=function(){return cd([Cp,eh,sh,xp],this.defaultAbles)},i.render=function(){var t=this.constructor;t.defaultStyled||t.makeStyled();var e=this.props,i=e.ables,n=e.props,o=function(t,e){var i={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(t);o<n.length;o++)e.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(t,n[o])&&(i[n[o]]=t[n[o]])}return i}(e,["ables","props"]),s=_c(o.target||o.targets),r=function(t,e){var i=[];return t.forEach((function(t){t&&(Ir(t)?e[t]&&i.push.apply(i,e[t]):i.push(t))})),i}(s,this.selectorMap);this.refTargets=s;var l=r.length>1,a=cd(t.getTotalAbles(),i||[]),d=dd(dd(dd({},o),n||{}),{ables:a,cssStyled:t.defaultStyled,customStyledMap:t.customStyledMap});return l?o.individualGroupable?_l(fh,dd({key:"individual-group",ref:xr(this,"moveable")},d,{target:null,targets:r})):_l(vh,dd({key:"group",ref:xr(this,"moveable")},d,{target:null,targets:r})):_l(th,dd({key:"single",ref:xr(this,"moveable")},d,{target:r[0]}))},i.componentDidMount=function(){this.updateRefs()},i.componentDidUpdate=function(){this.updateRefs()},i.updateRefs=function(t){var e=_c(this.props.target||this.props.targets),i=this.refTargets.some((function(t,i){var n=e[i];return!(!t&&!n)&&t!==n})),n=t?{}:this.selectorMap,o={};this.refTargets.forEach((function(t){Ir(t)&&(n[t]?o[t]=n[t]:(i=!0,o[t]=[].slice.call(document.querySelectorAll(t))))})),this.selectorMap=o,i&&this.forceUpdate()},i.getManager=function(){return this.moveable},e.defaultAbles=[],e.customStyledMap={},e.defaultStyled=null,function(t,e,i,n){var o,s=arguments.length,r=s<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(t,e,i,n);else for(var l=t.length-1;l>=0;l--)(o=t[l])&&(r=(s<3?o(r):s>3?o(e,i,r):o(e,i))||r);s>3&&r&&Object.defineProperty(e,i,r)}([Sr(Ad)],e.prototype,"moveable",void 0),e}(Ol)),mh=function(t,e){return(mh=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(t,e)};function bh(t,e){function i(){this.constructor=t}mh(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}var yh=function(){return(yh=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var o in e=arguments[i])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};var xh=function(t){function e(e){var i=t.call(this,e)||this;return i.state={},i.state=i.props,i}return bh(e,t),e.prototype.render=function(){return t=_l(gh,yh({ref:xr(this,"moveable")},this.state)),e=this.state.parentElement,_l(Rl,{element:t,container:e});var t,e},e}(Ml),_h=uh,wh=Ad,Sh=ch,Ch=function(){return(Ch=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var o in e=arguments[i])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};var kh=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return bh(e,t),e}(function(t){function e(e,i){void 0===i&&(i={});var n=t.call(this)||this;n.tempElement=document.createElement("div");var o=yh({container:e||document.body},i),s={};Sh.forEach((function(t){var e;s[(e="on "+t,e.replace(/[\s-_]([a-z])/g,(function(t,e){return e.toUpperCase()})))]=function(e){return n.trigger(t,e)}})),Il(_l(xh,yh({ref:xr(n,"innerMoveable"),parentElement:e},o,s)),n.tempElement);var r=o.target;return $r(r)&&r.length>1&&n.updateRect(),n}bh(e,t);var i=e.prototype;return i.setState=function(t,e){this.innerMoveable.setState(t,e)},i.destroy=function(){Il(null,this.tempElement),this.off(),this.tempElement=null,this.innerMoveable=null},i.getMoveable=function(){return this.innerMoveable.moveable},e=function(t,e,i,n){var o,s=arguments.length,r=s<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(t,e,i,n);else for(var l=t.length-1;l>=0;l--)(o=t[l])&&(r=(s<3?o(r):s>3?o(e,i,r):o(e,i))||r);return s>3&&r&&Object.defineProperty(e,i,r),r}([wr(wh,(function(t,e){t[e]||(t[e]=function(){for(var t=[],i=0;i<arguments.length;i++)t[i]=arguments[i];var n=this.getMoveable();if(n&&n[e])return n[e].apply(n,t)})})),wr(_h,(function(t,e){Object.defineProperty(t,e,{get:function(){return this.getMoveable().props[e]},set:function(t){var i;this.setState(((i={})[e]=t,i))},enumerable:!0,configurable:!0})}))],e)}(function(){function t(){this._events={}}var e=t.prototype;return e.on=function(t,e){if(Br(t))for(var i in t)this.on(i,t[i]);else this._addEvent(t,e,{});return this},e.off=function(t,e){if(t)if(Br(t))for(var i in t)this.off(i);else if(e){var n=this._events[t];if(n){var o=Vr(n,(function(t){return t.listener===e}));o>-1&&n.splice(o,1)}}else this._events[t]=[];else this._events={};return this},e.once=function(t,e){var i=this;return e&&this._addEvent(t,e,{once:!0}),new Promise((function(e){i._addEvent(t,e,{once:!0})}))},e.emit=function(t,e){var i=this;void 0===e&&(e={});var n=this._events[t];if(!t||!n)return!0;var o=!1;return e.eventType=t,e.stop=function(){o=!0},e.currentTarget=this,function(){for(var t=0,e=0,i=arguments.length;e<i;e++)t+=arguments[e].length;var n=Array(t),o=0;for(e=0;e<i;e++)for(var s=arguments[e],r=0,l=s.length;r<l;r++,o++)n[o]=s[r];return n}(n).forEach((function(n){n.listener(e),n.once&&i.off(t,n.listener)})),!o},e.trigger=function(t,e){return void 0===e&&(e={}),this.emit(t,e)},e._addEvent=function(t,e,i){var n=this._events;n[t]=n[t]||[],n[t].push(Ch({listener:e},i))},t}()));const Eh=new e;class Ah{constructor(t){this.builder=t;const e=this.builder.util,i=this.builder.builderStuff;this.util=e;let n,o=i.querySelector("#divImageTool");if(!o){let t=`\n <div id="divImageTool" class="is-tool">\n <div role="button" tabindex="0" class="image-embed" style="${this.builder.opts.imageEmbed?"":"display:none;"}width:40px;height:40px;overflow:hidden;">\n <div style="position:absolute;width:100%;height:100%;"><svg class="is-icon-flex" style="position: absolute;top: 13px;left: 15px;width: 14px;height: 14px;"><use xlink:href="#ion-image"></use></svg></div>\n <input title="${e.out("Change Image")}" data-title="${e.out("Change Image")}" id="fileEmbedImage" type="file" accept="image/*" style="position:absolute;top:-20px;left:0;width:40px;height:60px;opacity: 0;cursor: pointer;"/>\n </div>\n <button tabindex="0" title="${e.out("Link")}" data-title="${e.out("Link")}" class="image-link" style="width:40px;height:40px;"><svg class="is-icon-flex" style="width:17px;height:17px;"><use xlink:href="#ion-link"></use></svg></button> \n <button tabindex="0" title="${e.out("Edit")}" data-title="${e.out("Edit")}" class="image-edit" style="width:40px;height:40px;"><svg class="is-icon-flex" style="width:14px;height:14px;"><use xlink:href="#ion-android-create"></use></svg></button>\n </div>\n <div id="divImageProgress">\n <div>\n <div class="dot"></div>\n <div class="dot"></div>\n <div class="dot"></div>\n </div>\n </div>\n \n <div class="is-modal imageedit">\n <div class="is-modal-content">\n <div class="imageedit-crop" style="display:flex;height:80px;align-items:center;align-self:flex-start;">\n <button title="5x5" data-crop-size="1" style="width: 60px;height: 60px;">5x5</button>\n <button title="4x3" data-crop-size="1.33333" style="width: 60px;height: 45px;">4x3</button>\n <button title="3x4" data-crop-size="0.75" style="width: 45px;height: 60px;">3x4</button>\n <button title="6x4" data-crop-size="1.5" style="width: 60px;height: 40px;">6x4</button>\n <button title="4x6" data-crop-size="0.6666" style="width: 40px;height: 60px;">4x6</button>\n <button title="${e.out("Free")}" data-crop-size="" style="width: 60px;height: 45px;">${e.out("Free")}</button>\n </div>\n <div class="imageedit-preview" style="max-width:1000px;width: 100%;max-height: 550px;height: 100%;">\n </div>\n <div style="margin-top:7px;text-align:right;align-self:flex-end;">\n <button title="${e.out("Cancel")}" class="input-cancel classic-secondary">${e.out("Cancel")}</button>\n <button title="${e.out("Apply")}" class="input-ok classic-primary">${e.out("Apply")}</button>\n </div>\n </div>\n </div>\n \n <div class="is-modal imagelink">\n <div class="is-modal-content">\n\n <label for="inpImageLinkSource" style="display:block">${e.out("Source")}:</label>\n <div class="image-src">\n <input id="inpImageLinkSource" class="input-src" type="text"/>\n <button title="${e.out("Select")}" class="input-select" style="flex:none;width:50px;height:50px;"><svg class="is-icon-flex"><use xlink:href="#ion-more"></use></svg></button>\n <div class="image-larger1" style="position:relative;flex:none;width:50px;height:50px;box-shadow: 0px 3px 6px -6px rgba(0, 0, 0, 0.32);">\n <form class="form-upload-larger" target="frameTargetImageUpload" method="post" action="${this.builder.opts.largerImageHandler}" enctype="multipart/form-data" style="position:absolute;top:0;left:0;width:100%;height:100%;">\n\t\t\t\t <input id="hidRefId1" name="hidRefId" type="hidden" value="" />\n <svg class="is-icon-flex" style="position: absolute;top: 16px;left: 15px;width: 18px;height: 18px;"><use xlink:href="#ion-image"></use></svg>\n <input title="${e.out("Select")}" id="fileImage1" name="fileImage" type="file" accept="image/*" style="position:absolute;top:-30px;left:0;width:100%;height:80px;opacity: 0;cursor: pointer;">\n </form>\n\n <iframe id="frameTargetImageUpload" name="frameTargetImageUpload" src="about:blank" style="width:1px;height:1px;position:absolute;top:0;right:-100000px"></iframe>\n </div>\n </div>\n\n <label for="inpImageLinkTitle" style="margin-top:14px;display:block">${e.out("Title")}:</label>\n <input id="inpImageLinkTitle" class="input-title" type="text" style="width:100%;border-top: none;"/>\n\n <label for="inpImageLinkLink" style="margin-top:14px;display:block">${e.out("Link")}:</label>\n <div class="image-link">\n <input id="inpImageLinkLink" class="input-link" type="text" style="width:100%;border-top: none;"/>\n <button title="${e.out("Select")}" class="input-select2" style="flex:none;width:50px;height:50px;"><svg class="is-icon-flex"><use xlink:href="#ion-more"></use></svg></button>\n <div class="image-larger2" style="position:relative;flex:none;width:50px;height:50px;box-shadow: 0px 3px 6px -6px rgba(0, 0, 0, 0.32);">\n <form class="form-upload-larger" target="frameTargetImageUpload" method="post" action="${this.builder.opts.largerImageHandler}" enctype="multipart/form-data" style="position:absolute;top:0;left:0;width:100%;height:100%;">\n\t\t\t\t <input id="hidRefId2" name="hidRefId" type="hidden" value="" />\n <svg class="is-icon-flex" style="position: absolute;top: 16px;left: 15px;width: 18px;height: 18px;"><use xlink:href="#ion-image"></use></svg>\n <input title="${e.out("Select")}" id="fileImage2" name="fileImage" type="file" accept="image/*" style="position:absolute;top:-30px;left:0;width:100%;height:80px;opacity: 0;cursor: pointer;">\n </form>\n </div>\n </div>\n\n <label style="display:block;margin-top:14px;">\n <input class="input-newwindow" type="checkbox" /> ${e.out("Open new window")}&nbsp;\n </label>\n <label id="lblImageLinkOpenLightbox" style="${this.builder.useLightbox?"display:block":"display:none"};margin-top:5px;margin-bottom:14px;">\n <input class="input-openlightbox" type="checkbox" /> ${e.out("Open in a lightbox (for image, video or Youtube)")}&nbsp;\n </label>\n \n <div style="text-align:right;margin-top:14px;">\n <button title="${e.out("Cancel")}" class="input-cancel classic-secondary">${e.out("Cancel")}</button>\n <button title="${e.out("Ok")}" class="input-ok classic-primary">${e.out("Ok")}</button>\n </div>\n </div>\n </div>\n\n <div class="is-modal imageselect" style="z-index:10005">\n <div style="max-width:800px;height:80%;padding:0;">\n <iframe style="width:100%;height:100%;border: none;display: block;" src="about:blank"></iframe>\n </div>\n </div>\n\n <div id="divImageResizer" data-x=0 data-y=0 class="is-tool moveable resizable">\n </div>\n `;Eh.appendHtml(i,t),o=i.querySelector("#divImageTool"),this.imageTool=o,n=document.querySelector("#divImageResizer"),this.imageResizer=n,this.builder.moveable=new kh(document.body,{target:n,resizable:!0,throttleResize:0,keepRatio:!0}).on("resize",(({target:t,width:e,height:n})=>{if(0===e||0===n||isNaN(e)||isNaN(n))return;this.imageTool.style.display="",i.querySelector(".is-element-tool").style.display="";let o=this.builder.activeImage,s=!1;if(Eh.hasClass(o.parentNode,"img-circular")&&(o=o.parentNode,s=!0),s){let t=parseFloat(window.getComputedStyle(o.parentNode).getPropertyValue("padding-left")),i=parseFloat(window.getComputedStyle(o.parentNode).getPropertyValue("padding-right")),s=o.parentNode.offsetWidth*this.builder.opts.zoom-t-i;e>=s&&(e=s),n>=e?(o.style.width=e/this.builder.opts.zoom+"px",o.style.height=e/this.builder.opts.zoom+"px",o.querySelector("img").style.width=e/this.builder.opts.zoom+"px",o.querySelector("img").style.height=e/this.builder.opts.zoom+"px"):(o.style.width=e/this.builder.opts.zoom+"px",o.style.height=n/this.builder.opts.zoom+"px",o.querySelector("img").style.width=e/this.builder.opts.zoom+"px",o.querySelector("img").style.height=n/this.builder.opts.zoom+"px")}else o.style.width=e/this.builder.opts.zoom+"px",o.style.height="auto";t.style.top=o.getBoundingClientRect().top+window.pageYOffset+"px",t.style.left=o.getBoundingClientRect().left+window.pageXOffset+"px",t.style.width=o.offsetWidth+"px",t.style.height=o.offsetHeight+"px",this.repositionHandler(o.offsetWidth,o.offsetHeight),document.selection?document.selection.empty():window.getSelection().removeAllRanges();let r=i.querySelector(".is-column-tool");Eh.removeClass(r,"active")})).on("resizeEnd",(({target:t})=>{let e=this.builder.activeImage,n=!1;Eh.hasClass(e.parentNode,"img-circular")&&(e=e.parentNode,n=!0);var o=getComputedStyle(e.parentNode),s=parseFloat(o.paddingLeft)+parseFloat(o.paddingRight),r=parseFloat(o.borderLeftWidth)+parseFloat(o.borderRightWidth),l=e.parentNode.offsetWidth-s-r;if(!n){var a=l,d=e.offsetWidth,c=d/a*100;e.style.width=c+"%"}this.builder.opts.emailMode&&e.setAttribute("width",d),t.setAttribute("data-resized",1),setTimeout((()=>{t.setAttribute("data-resized",0)}),300),this.builder.opts.onChange();let u=i.querySelector(".is-column-tool");Eh.addClass(u,"active")})),document.querySelector(".moveable-control-box").style.display="none",n.addEventListener("click",(()=>{this.repositionImageTool(),this.builder.elmTool.repositionElementTool()}));let s=o.querySelector("#fileEmbedImage");Eh.addEventListener(s,"change",(t=>{this.builder.uo.saveForUndo();var e=t.target;let n=this.builder.activeImage,r=i.querySelector("#divImageProgress");r.style.display="table",r.style.width=n.offsetWidth*this.builder.opts.zoom+"px",r.style.height=n.offsetHeight*this.builder.opts.zoom+"px",r.style.top=n.getBoundingClientRect().top+window.pageYOffset+"px",r.style.left=n.getBoundingClientRect().left+window.pageXOffset+"px";try{n.setAttribute("data-filename",e.files[0].name),this.processImage(e.files[0],n,(()=>{r.style.display="none",s=o.querySelector("#fileEmbedImage"),s.value="",this.refreshIfIsModule(n),this.builder.opts.onChange(),this.builder.elmTool.refresh()}))}catch(t){r.style.display="none"}})),this.builder.opts.onImageBrowseClick&&(s=o.querySelector(".image-embed"),Eh.addEventListener(s,"click",(t=>(this.builder.opts.onImageBrowseClick(),t.preventDefault(),!1))));let r=i.querySelector(".imagelink");""!==this.builder.opts.largerImageHandler||this.builder.opts.onLargerImageUpload||(r.querySelector(".image-larger1").style.display="none",r.querySelector(".image-larger2").style.display="none"),this.builder.opts.onImageSelectClick||""!==this.builder.opts.imageselect||(r.querySelector(".input-select").style.display="none",r.querySelector(".input-select2").style.display="none"),s=o.querySelector(".image-link"),Eh.addEventListener(s,"click",(()=>{if(document.querySelector(".moveable-control-box").style.display="none",this.builder.opts.onImageSettingClick)return this.builder.opts.onImageSettingClick(),!1;let t,i=this.builder.activeImage;"a"===i.parentNode.tagName.toLowerCase()&&1===i.parentNode.childElementCount&&(t=i.parentNode);let n=i.getAttribute("src"),o=i.getAttribute("alt"),s=r.querySelector(".input-src");-1===n.indexOf("base64")?s.value=n:s.value="[Image Data]";let l=r.querySelector(".input-title");l.value=o;let a=r.querySelector(".input-link");a.value="";let d=r.querySelector(".input-newwindow");d.checked=!1;let c=r.querySelector(".input-openlightbox");if(c.checked=!1,t){if(a.value=t.getAttribute("href"),""===o){let e=t.getAttribute("title");e&&(l.value=e)}var u=t.getAttribute("target");d.checked="_blank"===u,Eh.hasClass(t,"is-lightbox")?c.checked=!0:c.checked=!1}e.showModal(r,!0,null,!0),s.focus()})),s=r.querySelector(".input-cancel"),Eh.addEventListener(s,"click",(()=>{e.hideModal(r),document.querySelector(".moveable-control-box").style.display="block"})),s=r.querySelector(".input-ok"),Eh.addEventListener(s,"click",(()=>{this.builder.uo.saveForUndo();let t,i=this.builder.activeImage;"a"===i.parentNode.tagName.toLowerCase()&&1===i.parentNode.childElementCount&&(t=i.parentNode);let n=r.querySelector(".input-src").value,o=r.querySelector(".input-title").value,s=r.querySelector(".input-link").value;-1===n.indexOf("[Image Data]")&&i.setAttribute("src",n),i.setAttribute("alt",o),""!==s?t?(t.setAttribute("href",s),t.setAttribute("title",o),r.querySelector(".input-newwindow").checked?t.setAttribute("target","_blank"):t.removeAttribute("target"),r.querySelector(".input-openlightbox").checked?Eh.addClass(t,"is-lightbox"):Eh.removeClass(t,"is-lightbox")):(t=Eh.createElement("a"),t.setAttribute("href",s),t.setAttribute("title",o),t.innerHTML=i.outerHTML,r.querySelector(".input-newwindow").checked?t.setAttribute("target","_blank"):t.removeAttribute("target"),r.querySelector(".input-openlightbox").checked?Eh.addClass(t,"is-lightbox"):Eh.removeClass(t,"is-lightbox"),i.outerHTML=t.outerHTML):t&&(t.outerHTML=t.innerHTML),this.refreshIfIsModule(i),this.builder.opts.onChange(),this.builder.opts.onRender(),e.hideModal(r),this.builder.elmTool.refresh()}));let l=r.querySelector(".image-src");this.builder.opts.onImageSelectClick||this.builder.opts.imageselect?(s=r.querySelector(".input-select"),s&&Eh.addEventListener(s,"click",(()=>{if(this.builder.opts.onImageSelectClick)this.builder.opts.onImageSelectClick({targetInput:r.querySelector(".input-src"),theTrigger:s});else{let t=i.querySelector(".is-modal.imageselect"),n=t.querySelector("iframe");this.builder.opts.assetRefresh&&(n.src=this.builder.opts.imageselect),"about:blank"===n.src&&(n.src=this.builder.opts.imageselect),e.showModal(t)}this.builder.targetInput=r.querySelector(".input-src"),this.builder.targetCallback=null,this.builder.targetAssetType="image"})),s=r.querySelector(".input-select2"),s&&Eh.addEventListener(s,"click",(()=>{if(this.builder.opts.onImageSelectClick)this.builder.opts.onImageSelectClick({targetInput:r.querySelector(".input-link"),theTrigger:s});else{let t=i.querySelector(".is-modal.imageselect"),n=t.querySelector("iframe");this.builder.opts.assetRefresh&&(n.src=this.builder.opts.imageselect),"about:blank"===n.src&&(n.src=this.builder.opts.imageselect),e.showModal(t)}this.builder.targetInput=r.querySelector(".input-link"),this.builder.targetCallback=null,this.builder.targetAssetType="media"}))):Eh.removeClass(l,"image-select");let a=r.querySelector("#fileImage1");Eh.addEventListener(a,"change",(t=>{let e=a;for(;"form"!==e.nodeName.toLowerCase();)e=e.parentNode;let i=e;Eh.addClass(i,"please-wait"),r.querySelector("#hidRefId1").value=this.builder.opts.customval,this.builder.opts.onLargerImageUpload?this.builder.opts.onLargerImageUpload(t):i.submit(),a.value=""}));let d=r.querySelector("#fileImage2");Eh.addEventListener(d,"change",(t=>{let e=d;for(;"form"!==e.nodeName.toLowerCase();)e=e.parentNode;let i=e;Eh.addClass(i,"please-wait"),r.querySelector("#hidRefId2").value=this.builder.opts.customval,this.builder.opts.onLargerImageUpload?this.builder.opts.onLargerImageUpload(t):i.submit(),d.value=""}));let c=i.querySelector(".imageedit");s=o.querySelector(".image-edit"),Eh.addEventListener(s,"click",(()=>{let t=this.builder.activeImage;e.showModal(c,!0);let i=c.querySelector(".imageedit-preview");if(t.offsetWidth<800&&t.offsetHeight<550)i.style.width=t.offsetWidth+"px";else{800*t.offsetHeight/t.offsetWidth<=550?i.style.width="800px":i.style.height="550px"}i.innerHTML='<img src="" style="max-width:100%;object-fit:contain;height:100%;"/>';let n=c.querySelector("img");n.src=t.src,this.cropper=new br(n,{zoomable:!1}),document.querySelector(".moveable-control-box").style.display="none"}));let u=c.querySelector(".imageedit-crop").querySelectorAll("button");Array.prototype.forEach.call(u,(t=>{Eh.addEventListener(t,"click",(()=>{let e=1*t.getAttribute("data-crop-size");this.cropper.setAspectRatio(e)}))}));let p=c.querySelector(".input-cancel");Eh.addEventListener(p,"click",(()=>{e.hideModal(c),document.querySelector(".moveable-control-box").style.display="block"})),s=c.querySelector(".input-ok"),Eh.addEventListener(s,"click",(()=>{this.builder.uo.saveForUndo();let t=this.builder.activeImage,i=t.getAttribute("data-filename"),n="jpg";if(i)n=i.substr(i.lastIndexOf(".")+1).toLowerCase();else{let e=t.src;e.indexOf("/")>-1?t.setAttribute("data-filename",e.substr(e.lastIndexOf("/")+1)):t.setAttribute("data-filename",e),n=e.substr(e.lastIndexOf(".")+1).toLowerCase()}if(this.builder.opts.imageRenameOnEdit){let e="";if(-1===t.src.indexOf("base64")){let i=t.src.substring(t.src.lastIndexOf("/")+1);e=Eh.baseName(i)}else e=Eh.baseName(t.getAttribute("data-filename"));let i="";-1!==e.indexOf("-edit")&&(e=e.substr(0,e.indexOf("-edit"))),i=e+"-edit"+this.util.makeId(),t.setAttribute("data-filename",i+"."+n)}t.src="jpg"===n?this.cropper.getCroppedCanvas({fillColor:"#fff"}).toDataURL("image/jpeg"):this.cropper.getCroppedCanvas({}).toDataURL(),this.refreshIfIsModule(t),this.builder.opts.onChange(),e.hideModal(c),this.builder.elmTool.refresh()}))}this.builder.imgs=[]}refreshIfIsModule(t){if(Eh.parentsHasAttribute(t,"data-html")){if(this.imageTool.style.display="",t.hasAttribute("data-sync")){let e=t.getAttribute("data-src"),i=t.getAttribute("data-filename");if(e){let n=t;for(;!n.getAttribute("data-html");)n=n.parentNode;let o=n.querySelectorAll("img");Array.prototype.forEach.call(o,(n=>{n.src===e&&(n.src=t.src,n.removeAttribute("data-src"),n.setAttribute("data-filename",i))})),t.removeAttribute("data-src")}}setTimeout((()=>{this.util.refreshModule(),this.imageTool.style.display=""}),1e3)}else this.refresh()}refresh(){if(this.builder.activeImage){let t=this.imageTool;t.style.display="",setTimeout((()=>{let e=this.builder.activeImage;Eh.hasClass(e.parentNode,"img-circular")&&(e=e.parentNode),t.style.display="flex";let i=t.offsetWidth,n=e.offsetWidth*this.builder.opts.zoom,o=e.getBoundingClientRect().top+window.pageYOffset,s=e.getBoundingClientRect().left+window.pageXOffset;s+=n/2-i/2;i+s>window.innerWidth&&(s=e.getBoundingClientRect().left),t.style.top=o+"px",t.style.left=s+"px";let r=this.imageResizer;r.style.top=e.getBoundingClientRect().top+window.pageYOffset+"px",r.style.left=e.getBoundingClientRect().left+window.pageXOffset+"px",r.style.width=e.offsetWidth*this.builder.opts.zoom+"px",r.style.height=e.offsetHeight*this.builder.opts.zoom+"px",r.style.display="block",this.repositionHandler(e.offsetWidth,e.offsetHeight),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="block",0===e.offsetWidth&&(t.style.display="",this.builder.activeImage=null,r.style.display="none",r.style.top="-10px",r.style.left="-10px",r.style.width="1px",r.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none")}),300)}}repositionImageTool(){if(this.builder.activeImage){let t=this.imageTool,e=this.builder.activeImage;Eh.hasClass(e.parentNode,"img-circular")&&(e=e.parentNode),t.style.display="flex";let i=t.offsetWidth,n=e.offsetWidth*this.builder.opts.zoom,o=e.getBoundingClientRect().top+window.pageYOffset,s=e.getBoundingClientRect().left+window.pageXOffset;s+=n/2-i/2;i+s>window.innerWidth&&(s=e.getBoundingClientRect().left),t.style.top=o+"px",t.style.left=s+"px";let r=this.imageResizer;r.style.top=e.getBoundingClientRect().top+window.pageYOffset+"px",r.style.left=e.getBoundingClientRect().left+window.pageXOffset+"px",r.style.width=e.offsetWidth*this.builder.opts.zoom+"px",r.style.height=e.offsetHeight*this.builder.opts.zoom+"px",r.style.display="block",this.repositionHandler(e.offsetWidth,e.offsetHeight),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="block"}}click(t){let e=t.target;if("img"===e.tagName.toLowerCase()){let i=!1;if(e.hasAttribute("data-fixed")&&(i=!0),i){this.imageTool.style.display="",this.builder.activeImage=null;let t=this.imageResizer;t.style.display="none",t.style.top="-10px",t.style.left="-10px",t.style.width="1px",t.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}else{this.builder.activeImage=e,Eh.hasClass(e.parentNode,"img-circular")&&(e=e.parentNode);let i=this.imageTool;i.style.display="flex";let n=i.offsetWidth,o=e.offsetWidth*this.builder.opts.zoom,s=e.getBoundingClientRect().top+window.pageYOffset,r=e.getBoundingClientRect().left+window.pageXOffset;r+=o/2-n/2;if(n+r>window.innerWidth&&(r=e.getBoundingClientRect().left),i.style.top=s+"px",i.style.left=r+"px",e.hasAttribute("data-noresize")){let t=this.imageResizer;t.style.display="none",t.style.top="-10px",t.style.left="-10px",t.style.width="1px",t.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}else{let t=this.imageResizer;t.style.top=e.getBoundingClientRect().top+window.pageYOffset+"px",t.style.left=e.getBoundingClientRect().left+window.pageXOffset+"px",t.style.width=e.offsetWidth*this.builder.opts.zoom+"px",t.style.height=e.offsetHeight*this.builder.opts.zoom+"px",t.style.display="block",this.repositionHandler(e.offsetWidth,e.offsetHeight);let i,n=e.style.width;-1!==n.indexOf("%")?(n=1*n.replace("%",""),i=100*e.offsetWidth/n):i=e.offsetWidth,t.setAttribute("data-width",Math.round(i)),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="block"}let l=!1;if(t.screenX&&0!==t.screenX&&t.screenY&&0!==t.screenY||(l=!0),l){i.style.display="";let t=this.imageResizer;t.style.display="none",t.style.top="-10px",t.style.left="-10px",t.style.width="1px",t.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}}}else{this.imageTool.style.display="",this.builder.activeImage=null;let t=this.imageResizer;t.style.display="none",t.style.top="-10px",t.style.left="-10px",t.style.width="1px",t.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}}clearImageResizer(){this.builder.imgs.forEach((t=>{try{t.destroy()}catch(t){}let e=this.builder.imgs.indexOf(t);e>-1&&this.builder.imgs.splice(e,1)})),document.querySelectorAll("[data-mov]").forEach((t=>{t.removeAttribute("data-mov")}))}repositionHandler(t,e){let i=document.querySelector("#divImageResizer");i.style.width=t*this.builder.opts.zoom+"px",i.style.height=e*this.builder.opts.zoom+"px"}processImage(t,e,i){if(!t)return i(),!1;if(!document.getElementById("myTmpCanvasNoCrop")){var n=document.createElement("canvas");n.id="myTmpCanvasNoCrop",n.style.display="none",document.querySelector("body").appendChild(n)}if(!this.builder.opts.autoResizeImageEmbed){let n=new FileReader;return n.addEventListener("load",(t=>{if(!document.getElementById("__preview")){var n=document.createElement("img");n.id="__preview",n.style.display="none";let t=this.util.builderStuff();Eh.appendChild(t,n)}var o=document.querySelector("#__preview");o.onload=()=>{var t=document.getElementById("myTmpCanvasNoCrop"),n=t.getContext("2d");t.height=o.height,t.width=o.width,n.drawImage(o,0,0);var l=t.toDataURL(s,r);e.src=l,o.onload=null,t.parentNode.removeChild(t),i()},o.src=t.target.result})),void n.readAsDataURL(t)}var o,s,r;"jpg"===(o=t.name?t.name.substr(t.name.lastIndexOf(".")+1).toLowerCase():t.substr(t.lastIndexOf(".")+1).toLowerCase())||"jpeg"===o?(s="image/jpeg",r=this.builder.opts.imageQuality):(s="image/png",r=1),Oh(t,((n,o)=>{var l,a,d;if(o.exif&&(l=o.exif.get("Orientation")),4<l&&l<9?(a=n.height,d=n.width):(a=n.width,d=n.height),a<=1600&&d<=1600){let n=new FileReader;return n.addEventListener("load",(t=>{if(!document.getElementById("__preview")){var n=document.createElement("img");n.id="__preview",n.style.display="none";let t=this.util.builderStuff();Eh.appendChild(t,n)}var o=document.querySelector("#__preview");o.onload=()=>{var t=document.getElementById("myTmpCanvasNoCrop"),n=t.getContext("2d");t.height=o.height,t.width=o.width,n.drawImage(o,0,0);var l=t.toDataURL(s,r);e.src=l,o.onload=null,t.parentNode.removeChild(t),i()},o.src=t.target.result})),void n.readAsDataURL(t)}var c=a;-1!==this.builder.opts.maxEmbedImageWidth&&(c=this.builder.opts.maxEmbedImageWidth);var u=c*d/a,p=!1;if(d<=u&&a>c?(d<=(u=d*c/a)&&(c=d*c/(u=d)),p=!0):a<=c&&d>u?(a<=(c=a*u/d)&&(u=a*u/(c=a)),p=!0):a<=c&&d<=u?(c=a,u=d):(u=d*c/a,p=!0),"image/png"===s&&(p=!1),-1===this.builder.opts.maxEmbedImageWidth&&(p=!1),!p){let t=document.getElementById("myTmpCanvasNoCrop"),o=t.getContext("2d");return t.height=d,t.width=a,o.drawImage(n,0,0),e.onload=()=>{e.onload=null,e.src=t.toDataURL(s,r),t.parentNode.removeChild(t),i()},void(e.src=t.toDataURL(s,r))}var h=new Mh(n),v=document.getElementById("myTmpCanvasNoCrop");h.render(v,{width:a,height:d,orientation:l},(()=>{if(p){var t=a,n=d;e.onload=()=>{this.count++,n/=2,((t/=2)<c||n<u)&&(t=c,n=u),new Mh(e).render(v,{width:t,height:n},(()=>{if(t<=c||n<=u){if(e.src=v.toDataURL(s,r),3===this.count){e.onload=null;try{v.parentNode.removeChild(v)}catch(t){}i()}try{v.parentNode.removeChild(v)}catch(t){}return i(),!1}if(e.src=v.toDataURL(s,r),3===this.count){e.onload=null;try{v.parentNode.removeChild(v)}catch(t){}i()}}))},e.src=v.toDataURL(s,r),this.count=0}else e.src=v.toDataURL(s,r),v.parentNode.removeChild(v),i()}))}),{canvas:!1,meta:!0})}}
100
+ ***************************************************************************** */var ld=function(t,e){return(ld=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(t,e)};function ad(t,e){function i(){this.constructor=t}ld(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}var dd=function(){return(dd=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var o in e=arguments[i])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};function cd(){for(var t=0,e=0,i=arguments.length;e<i;e++)t+=arguments[e].length;var n=Array(t),o=0;for(e=0;e<i;e++)for(var s=arguments[e],r=0,l=s.length;r<l;r++,o++)n[o]=s[r];return n}function ud(t,e){var i;return dd({events:{},props:(i={},i[t]=Boolean,i),name:t},e)}function pd(t,e){return'data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="'+32*t+'px" height="'+32*t+'px" viewBox="0 0 32 32" ><path d="M 16,5 L 12,10 L 14.5,10 L 14.5,22 L 12,22 L 16,27 L 20,22 L 17.5,22 L 17.5,10 L 20, 10 L 16,5 Z" stroke-linejoin="round" stroke-width="1.2" fill="black" stroke="white" style="transform:rotate('+e+'deg);transform-origin: 16px 16px"></path></svg>'}var hd,vd=function(t){return void 0===t&&function(){if("undefined"==typeof navigator||!navigator||!navigator.userAgentData)return!1;var t=navigator.userAgentData,e=t.brands||t.uaList;return!(!e||!e.length)}()?function(t){var e=navigator.userAgentData,i=(e.uaList||e.brands).slice(),n=e.mobile||!1,o=i[0],s={name:o.brand,version:o.version,majorVersion:-1,webkit:!1,webkitVersion:"-1",chromium:!1,chromiumVersion:"-1",webview:!!Ul(Vl,i).brand},r={name:"unknown",version:"-1",majorVersion:-1};s.webkit=!s.chromium&&Hl(Yl,(function(t){return Wl(i,t)}));var l=Ul(Gl,i);if(s.chromium=!!l.brand,s.chromiumVersion=l.version,!s.chromium){var a=Ul(Yl,i);s.webkit=!!a.brand,s.webkitVersion=a.version}if(t){var d=t.platform.toLowerCase(),c=Dl(Xl,(function(t){return new RegExp(""+t.test,"g").exec(d)}));r.name=c?c.id:d,r.version=t.platformVersion}var u=Ul(jl,i);return u.brand&&(s.name=u.brand,s.version=t?t.uaFullVersion:u.version),"Linux armv8l"===navigator.platform?r.name="android":s.webkit&&(r.name=n?"ios":"mac"),"ios"===r.name&&s.webview&&(s.version="-1"),r.version=Pl(r.version),s.version=Pl(s.version),r.majorVersion=parseInt(r.version,10),s.majorVersion=parseInt(s.version,10),{browser:s,os:r,isMobile:n,isHints:!0}}():Zl(t)}().browser.webkit,fd=vd&&(!!(hd=/applewebkit\/([^\s]+)/g.exec(navigator.userAgent.toLowerCase()))&&parseFloat(hd[1])<605),gd="moveable-",md="\n{\n\tposition: absolute;\n\twidth: 1px;\n\theight: 1px;\n\tleft: 0;\n\ttop: 0;\n z-index: 3000;\n --moveable-color: #4af;\n --zoom: 1;\n --zoompx: 1px;\n will-change: transform;\n}\n.control-box {\n z-index: 0;\n}\n.line, .control {\n position: absolute;\n\tleft: 0;\n top: 0;\n will-change: transform;\n}\n.control {\n\twidth: 14px;\n\theight: 14px;\n\tborder-radius: 50%;\n\tborder: 2px solid #fff;\n\tbox-sizing: border-box;\n background: #4af;\n background: var(--moveable-color);\n\tmargin-top: -7px;\n margin-left: -7px;\n border: 2px solid #fff;\n z-index: 10;\n}\n.padding {\n position: absolute;\n top: 0px;\n left: 0px;\n width: 100px;\n height: 100px;\n transform-origin: 0 0;\n}\n.line {\n\twidth: 1px;\n height: 1px;\n background: #4af;\n background: var(--moveable-color);\n\ttransform-origin: 0px 50%;\n}\n.line.dashed {\n box-sizing: border-box;\n background: transparent;\n}\n.line.dashed.horizontal {\n border-top: 1px dashed #4af;\n border-top-color: #4af;\n border-top-color: var(--moveable-color);\n}\n.line.dashed.vertical {\n border-left: 1px dashed #4af;\n border-left-color: #4af;\n border-left-color: var(--moveable-color);\n}\n.line.vertical {\n transform: translateX(-50%);\n}\n.line.horizontal {\n transform: translateY(-50%);\n}\n.line.vertical.bold {\n width: 2px;\n}\n.line.horizontal.bold {\n height: 2px;\n}\n\n.control.origin {\n\tborder-color: #f55;\n\tbackground: #fff;\n\twidth: 12px;\n\theight: 12px;\n\tmargin-top: -6px;\n margin-left: -6px;\n\tpointer-events: none;\n}\n"+[0,15,30,45,60,75,90,105,120,135,150,165].map((function(t){return'\n.direction[data-rotation="'+t+'"] {\n\t'+function(t){var e=pd(1,t),i=pd(2,t),n=45*Math.round(t/45)%180,o="ns-resize";return 135===n?o="nwse-resize":45===n?o="nesw-resize":90===n&&(o="ew-resize"),"cursor:"+o+";cursor: url('"+e+"') 16 16, "+o+";cursor: -webkit-image-set(url('"+e+"') 1x, url('"+i+"') 2x) 16 16, "+o+";"}(t)+"\n}\n"})).join("\n")+"\n.group {\n z-index: -1;\n}\n.area {\n position: absolute;\n}\n.area-pieces {\n position: absolute;\n top: 0;\n left: 0;\n display: none;\n}\n.area.avoid, .area.pass {\n pointer-events: none;\n}\n.area.avoid+.area-pieces {\n display: block;\n}\n.area-piece {\n position: absolute;\n}\n\n"+(fd?':global svg *:before {\n\tcontent:"";\n\ttransform-origin: inherit;\n}':"")+"\n",bd=[[0,1,2],[1,0,3],[2,0,3],[3,1,2]],yd=1e-4,xd=1e-7,_d=1e-9,wd=Math.pow(10,10),Sd=-wd,Cd=["n","w","s","e","nw","ne","sw","se"],kd={n:[0,1],s:[2,3],w:[2,0],e:[1,3],nw:[0],ne:[1],sw:[2],se:[3]},Ed={n:0,s:180,w:270,e:90,nw:315,ne:45,sw:225,se:135},Ad=["isMoveableElement","updateRect","updateTarget","destroy","dragStart","isInside","hitTest","setState","getRect","request","isDragging","getManager"];function Ld(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return yr.apply(void 0,cd([gd],t))}function qd(t,e,i){return oa(e,xa(i,e),t,xa(i.map((function(t){return-t})),e))}function Td(t){return Md(lc(t,":before")).map((function(e,i){var n=jr(e),o=n.value,s=n.unit;return o*function(t,e,i){return"%"===e?Dd(t.ownerSVGElement)[i?"width":"height"]/100:1}(t,s,0===i)}))}function Md(t){var e=t.transformOrigin;return e?e.split(" "):["0","0"]}function Od(t,e,i){for(var n=document.body,o=!t||i?t:t.parentElement,s=t===e||o===e,r="relative";o&&o!==n;){e===o&&(s=!0);var l=lc(o),a=l.transform;if(r=l.position,"svg"===o.tagName.toLowerCase()||"static"!==r||a&&"none"!==a)break;o=o.parentElement,r="relative"}return{isStatic:"static"===r,isEnd:s||!o||o===n,offsetParent:o||n}}function Rd(t,e,i,n){var o,s=t.tagName.toLowerCase(),r=t.offsetLeft,l=t.offsetTop;if(n){var a=(e||document.documentElement).getBoundingClientRect();r-=a.left,l-=a.top}var d,c,u=Nr(r),p=!u;return p||"svg"===s?c=(d=Md(i).map((function(t){return parseFloat(t)}))).slice():(c=(d=fd?Td(t):Md(i).map((function(t){return parseFloat(t)}))).slice(),p=!0,r=(o=function(t,e){if(!t.getBBox)return[0,0];var i=t.getBBox(),n=Dd(t.ownerSVGElement),o=i.x-n.x,s=i.y-n.y;return[o,s,e[0]-o,e[1]-s]}(t,d))[0],l=o[1],d[0]=o[2],d[1]=o[3]),{tagName:s,isSVG:u,hasOffset:p,offset:[r||0,l||0],origin:d,targetOrigin:c}}function Nd(t,e,i){void 0===i&&(i=lc(t));var n=lc(document.body),o=n.position;if(!(e||o&&"static"!==o))return[0,0];var s=parseInt(n.marginLeft,10),r=parseInt(n.marginTop,10);return"absolute"===i.position&&("auto"===i.top&&"auto"===i.bottom||(r=0),"auto"===i.left&&"auto"===i.right||(s=0)),[s,r]}function Bd(t){t.forEach((function(t){var e=t.matrix;e&&(t.matrix=na(e,3,4))}))}function $d(t,e){for(var i,n,o,s,r,l,a=t,d=[],c=t===e,u=!1,p=3,h=Od(e,e,!0).offsetParent;a&&!c;){var v=lc(a),f=v.position,g="fixed"===f,m=(l=v.transform,s=l&&"none"!==l?Br(l)?l:Wr(l).value.split(/s*,\s*/g).map((function(t){return parseFloat(t)})):[1,0,0,1,0,0],void 0===(r=void 0)&&(r=6===s.length),r?[s[0],s[1],0,s[2],s[3],0,s[4],s[5],1]:s),b=m.length;u||16!==b||(u=!0,p=4,Bd(d)),u&&9===b&&(m=na(m,3,4));var y=Rd(a,e,v,g),x=y.tagName,_=y.hasOffset,w=y.isSVG,S=y.origin,C=y.targetOrigin,k=y.offset,E=k[0],A=k[1];"svg"===x&&o?(d.push({type:"target",target:a,matrix:zd(a,p)}),d.push({type:"offset",target:a,matrix:ba(p)})):"g"===x&&t!==a&&(E=0,A=0);var L=Od(a,e),q=L.offsetParent,T=L.isEnd,M=L.isStatic;vd&&_&&!w&&M&&("relative"===f||"static"===f)&&(E-=q.offsetLeft,A-=q.offsetTop,c=c||T);var O=0,R=0;if(_&&h!==q&&(O=q.clientLeft,R=q.clientTop),_&&q===document.body){var N=Nd(a,!1,v);E+=N[0],A+=N[1]}if(d.push({type:"target",target:a,matrix:qd(m,p,S)}),_?d.push({type:"offset",target:a,matrix:xa([E-a.scrollLeft+O,A-a.scrollTop+R],p)}):d.push({type:"offset",target:a,origin:S}),o||(o=m),i||(i=S),n||(n=C),c||g)break;a=q,c=T}return o||(o=ba(p)),i||(i=[0,0]),n||(n=[0,0]),{offsetContainer:h,matrixes:d,targetMatrix:o,transformOrigin:i,targetOrigin:n,is3d:u}}function Id(t,e,i,n){var o;void 0===i&&(i=e);var s=0,r=0,l=0,a={};if(t){var d=lc(t);s=t.offsetWidth,r=t.offsetHeight,Nr(s)&&(s=(o=Zd(t,d,!0))[0],r=o[1])}if(t){var c=function(t,e,i,n){void 0===i&&(i=e);var o=$d(t,e),s=o.matrixes,r=o.is3d,l=o.targetMatrix,a=o.transformOrigin,d=o.targetOrigin,c=$d(o.offsetContainer,i),u=c.matrixes,p=c.is3d,h=n||p||r,v=h?4:3,f="svg"!==t.tagName.toLowerCase()&&"ownerSVGElement"in t,g=l,m=ba(v),b=ba(v),y=ba(v),x=ba(v),_=s.length,w=i||document.body,S=Od(w,w,!0).offsetParent;u.reverse(),s.reverse(),!r&&h&&(g=na(g,3,4),Bd(s));!p&&h&&Bd(u);u.forEach((function(t){b=sa(b,t.matrix,v)})),s.forEach((function(t,e){if(_-2===e&&(y=m.slice()),_-1===e&&(x=m.slice()),!t.matrix){var i=function(t,e,i,n,o){var s,r=t.target,l=t.origin,a=e.matrix,d=Zd(r,void 0,!0),c=d[0],u=d[1],p=i.getBoundingClientRect(),h=[0,0];i===document.body&&(h=Nd(r,!0));var v=r.getBoundingClientRect(),f=v.left-p.left+i.scrollLeft-(i.clientLeft||0)+h[0],g=v.top-p.top+i.scrollTop-(i.clientTop||0)+h[1],m=v.width,b=v.height,y=oa(n,o,a),x=Wd(y,c,u,n),_=x.left,w=x.top,S=x.width,C=x.height,k=Pd(y,l,n),E=la(k,[_,w]),A=[f+E[0]*m/S,g+E[1]*b/C],L=[0,0],q=0;for(;++q<10;){var T=ea(o,n);s=la(Pd(T,A,n),Pd(T,k,n)),L[0]=s[0],L[1]=s[1];var M=Wd(oa(n,o,xa(L,n),a),c,u,n),O=M.left-f,R=M.top-g;if(Math.abs(O)<2&&Math.abs(R)<2)break;A[0]-=O,A[1]-=R}return L.map((function(t){return Math.round(t)}))}(t,s[e+1],S,v,sa(b,m,v));t.matrix=xa(i,v)}m=sa(m,t.matrix,v)}));var C=!f&&r;g||(g=ba(C?4:3));var k=Hd(f&&16===g.length?na(g,4,3):g,C);return{rootMatrix:b=ta(b,v,v),beforeMatrix:y,offsetMatrix:x,allMatrix:m,targetMatrix:g,targetTransform:k,transformOrigin:a,targetOrigin:d,is3d:h}}(t,e,i,n),u=jd(c.allMatrix,c.transformOrigin,s,r);a=dd(dd({},c),u);var p=jd(c.allMatrix,[50,50],100,100);l=Kd([p.pos1,p.pos2],p.direction)}var h=n?4:3;return dd({width:s,height:r,rotation:l,rootMatrix:ba(h),beforeMatrix:ba(h),offsetMatrix:ba(h),allMatrix:ba(h),targetMatrix:ba(h),targetTransform:"",transformOrigin:[0,0],targetOrigin:[0,0],is3d:!!n,left:0,top:0,right:0,bottom:0,origin:[0,0],pos1:[0,0],pos2:[0,0],pos3:[0,0],pos4:[0,0],direction:1},a)}function Hd(t,e){return void 0===e&&(e=t.length>9),(e?"matrix3d":"matrix")+"("+aa(t,!e).join(",")+")"}function Dd(t){var e=t.clientWidth,i=t.clientHeight;if(!t)return{x:0,y:0,width:0,height:0,clientWidth:e,clientHeight:i};var n=t.viewBox,o=n&&n.baseVal||{x:0,y:0,width:0,height:0};return{x:o.x,y:o.y,width:o.width||e,height:o.height||i,clientWidth:e,clientHeight:i}}function zd(t,e){var i=Dd(t),n=i.width,o=i.height,s=i.clientWidth,r=i.clientHeight,l=s/n,a=r/o,d=t.preserveAspectRatio.baseVal,c=d.align,u=d.meetOrSlice,p=[0,0],h=[l,a],v=[0,0];if(1!==c){var f=(c-2)%3,g=Math.floor((c-2)/3);p[0]=n*f/2,p[1]=o*g/2;var m=2===u?Math.max(a,l):Math.min(l,a);h[0]=m,h[1]=m,v[0]=(s-n)/2*f,v[1]=(r-o)/2*g}var b=ya(h,e);return b[e*(e-1)]=v[0],b[e*(e-1)+1]=v[1],qd(b,e,p)}function Pd(t,e,i){return da(t,ia(e,i),i)}function Fd(t,e,i,n){return[[0,0],[e,0],[0,i],[e,i]].map((function(e){return Pd(t,e,n)}))}function Ud(t){var e=t.map((function(t){return t[0]})),i=t.map((function(t){return t[1]})),n=Math.min.apply(Math,e),o=Math.min.apply(Math,i),s=Math.max.apply(Math,e),r=Math.max.apply(Math,i);return{left:n,top:o,right:s,bottom:r,width:s-n,height:r-o}}function Wd(t,e,i,n){return Ud(Fd(t,e,i,n))}function jd(t,e,i,n){var o=16===t.length?4:3,s=Fd(t,i,n,o),r=s[0],l=r[0],a=r[1],d=s[1],c=d[0],u=d[1],p=s[2],h=p[0],v=p[1],f=s[3],g=f[0],m=f[1],b=Pd(t,e,o),y=b[0],x=b[1],_=Math.min(l,c,h,g),w=Math.min(a,u,v,m),S=Math.max(l,c,h,g);return l=l-_||0,{left:_,top:w,right:S,bottom:Math.max(a,u,v,m),origin:[y=y-_||0,x=x-w||0],pos1:[l,a=a-w||0],pos2:[c=c-_||0,u=u-w||0],pos3:[h=h-_||0,v=v-w||0],pos4:[g=g-_||0,m=m-w||0],direction:il(s)}}function Gd(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Yd(t,e){return Gd([e[0]-t[0],e[1]-t[1]])}function Vd(t,e,i,n){void 0===i&&(i=1),void 0===n&&(n=el(t,e));var o=Yd(t,e);return{transform:"translateY(-50%) translate("+t[0]+"px, "+t[1]+"px) rotate("+n+"rad) scaleY("+i+")",width:o+"px"}}function Xd(t,e){for(var i=[],n=2;n<arguments.length;n++)i[n-2]=arguments[n];var o=i.length,s=i.reduce((function(t,e){return t+e[0]}),0)/o,r=i.reduce((function(t,e){return t+e[1]}),0)/o;return{transform:"translateZ(0px) translate("+s+"px, "+r+"px) rotate("+t+"rad) scale("+e+")"}}function Zd(t,e,i,n){void 0===e&&(e=lc(t)),void 0===n&&(n=i||"border-box"===e.boxSizing);var o=t.offsetWidth,s=t.offsetHeight,r=!Nr(o);if((i||n)&&r)return[o,s];if(!r&&"svg"!==t.tagName.toLowerCase()){var l=t.getBBox();return[l.width,l.height]}return o=t.clientWidth,s=t.clientHeight,i||n?[o+(parseFloat(e.borderLeftWidth)||0)+(parseFloat(e.borderRightWidth)||0),s+(parseFloat(e.borderTopWidth)||0)+(parseFloat(e.borderBottomWidth)||0)]:[o-(parseFloat(e.paddingLeft)||0)-(parseFloat(e.paddingRight)||0),s-(parseFloat(e.paddingTop)||0)-(parseFloat(e.paddingBottom)||0)]}function Kd(t,e){return el(e>0?t[0]:t[1],e>0?t[1]:t[0])}function Jd(t,e,i,n,o){var s=1,r=[0,0],l={left:0,right:0,top:0,bottom:0,width:0,height:0,clientLeft:0,clientTop:0,clientWidth:0,clientHeight:0,scrollWidth:0,scrollHeight:0},a={left:0,right:0,top:0,bottom:0,width:0,height:0,clientLeft:0,clientTop:0,clientWidth:0,clientHeight:0,scrollWidth:0,scrollHeight:0},d={left:0,right:0,top:0,bottom:0,width:0,height:0,clientLeft:0,clientTop:0,clientWidth:0,clientHeight:0,scrollWidth:0,scrollHeight:0},c=Id(e,i,o,!1);if(e){var u=c.is3d?4:3,p=jd(c.offsetMatrix,ra(c.transformOrigin,function(t,e){void 0===e&&(e=Math.sqrt(t.length));for(var i=[],n=t[e*e-1],o=0;o<e-1;++o)i[o]=t[e*(e-1)+o]/n;return i[e-1]=0,i}(c.targetMatrix,u)),c.width,c.height);s=p.direction,r=ra(p.origin,[p.left-c.left,p.top-c.top]),l=Qd(e),a=Qd(Od(n,n,!0).offsetParent||document.body,!0),t&&(d=Qd(t))}return dd({targetClientRect:l,containerClientRect:a,moveableClientRect:d,beforeDirection:s,beforeOrigin:r,originalBeforeOrigin:r,target:e},c)}function Qd(t,e){var i=0,n=0,o=0,s=0;if(t===document.body||t===document.documentElement)o=window.innerWidth,s=window.innerHeight,i=-(document.documentElement.scrollLeft||document.body.scrollLeft),n=-(document.documentElement.scrollTop||document.body.scrollTop);else{var r=t.getBoundingClientRect();i=r.left,n=r.top,o=r.width,s=r.height}var l={left:i,right:i+o,top:n,bottom:n+s,width:o,height:s};return e&&(l.clientLeft=t.clientLeft,l.clientTop=t.clientTop,l.clientWidth=t.clientWidth,l.clientHeight=t.clientHeight,l.scrollWidth=t.scrollWidth,l.scrollHeight=t.scrollHeight,l.overflow="visible"!==lc(t).overflow),l}function tc(t){if(t){var e=t.getAttribute("data-direction");if(e){var i=[0,0];return e.indexOf("w")>-1&&(i[0]=-1),e.indexOf("e")>-1&&(i[0]=1),e.indexOf("n")>-1&&(i[1]=-1),e.indexOf("s")>-1&&(i[1]=1),i}}}function ec(t,e){return[ra(e,t[0]),ra(e,t[1]),ra(e,t[2]),ra(e,t[3])]}function ic(t){var e=t.left,i=t.top;return ec([t.pos1,t.pos2,t.pos3,t.pos4],[e,i])}function nc(t,e){t[e]&&(t[e].unset(),t[e]=null)}function oc(t,e,i){var n=e.datas;n.datas||(n.datas={});var o=dd(dd({},i),{target:t.state.target,clientX:e.clientX,clientY:e.clientY,inputEvent:e.inputEvent,currentTarget:t,moveable:t,datas:n.datas});return n.isStartEvent?n.lastEvent=o:n.isStartEvent=!0,o}function sc(t,e,i){var n=e.datas,o="isDrag"in i?i.isDrag:e.isDrag;return n.datas||(n.datas={}),dd(dd({isDrag:o},i),{moveable:t,target:t.state.target,clientX:e.clientX,clientY:e.clientY,inputEvent:e.inputEvent,currentTarget:t,lastEvent:n.lastEvent,isDouble:e.isDouble,datas:n.datas})}function rc(t,e,i,n){return t.triggerEvent(e,i,n)}function lc(t,e){return window.getComputedStyle(t,e)}function ac(t,e,i){var n={},o={};return t.filter((function(t){var s=t.name;if(n[s]||!e.some((function(e){return t[e]})))return!1;if(!i&&t.ableGroup){if(o[t.ableGroup])return!1;o[t.ableGroup]=!0}return n[s]=!0,!0}))}function dc(t,e){return t===e||null==t&&null==e}function cc(t,e){var i=[],n=[];return t.forEach((function(o,s){var r=e(o,s,t),l=n.indexOf(r),a=i[l]||[];-1===l&&(n.push(r),i.push(a)),a.push(o)})),i}function uc(t){return t.reduce((function(t,e){return t.concat(e)}),[])}function pc(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return t.sort((function(t,e){return Math.abs(e)-Math.abs(t)})),t[0]}function hc(t,e,i){return da(ea(t,i),ia(e,i),i)}function vc(t,e){var i,n=t.is3d?4:3;return i=hc(t.rootMatrix,[e.distX,e.distY],n),e.distX=i[0],e.distY=i[1],e}function fc(t,e,i,n,o){return la(Pd(t,ra(i,e),o),n)}function gc(t,e,i){return i?t/e*100+"%":t+"px"}function mc(t){return Math.abs(t)<=xd?0:t}function bc(t,e){return e.isRequest?("resizable"===e.requestAble||"scalable"===e.requestAble)&&e.parentDirection:rl(e.inputEvent.target,Ld("direction"))}function yc(t){var e={};for(var i in t)e[t[i]]=i;return e}function xc(t,e){return t?Ir(t)?e?document.querySelector(t):t:Hr(t)?t():"current"in t?t.current:t:null}function _c(t,e){return t?((i=t)&&Br(i)&&($r(i)||"length"in i)?[].slice.call(t):[t]).reduce((function(t,i){return Ir(i)&&e?cd(t,[].slice.call(document.querySelectorAll(i))):(t.push(xc(i,e)),t)}),[]):[];var i}function wc(t,e){var i=t.rootMatrix,n=t.is3d,o=ea(i,n?4:3);return n||(o=na(o,3,4)),o[12]=0,o[13]=0,o[14]=0,function(t,e){var i=da(t,[e[0],e[1]||0,e[2]||0,1],4),n=i[3]||1;return[i[0]/n,i[1]/n,i[2]/n]}(o,e)}var Sc=ud("pinchable",{events:{onPinchStart:"pinchStart",onPinch:"pinch",onPinchEnd:"pinchEnd",onPinchGroupStart:"pinchGroupStart",onPinchGroup:"pinchGroup",onPinchGroupEnd:"pinchGroupEnd"},dragStart:function(){return!0},pinchStart:function(t,e){var i=e.datas,n=e.targets,o=e.angle,s=e.originalDatas,r=t.props,l=r.pinchable,a=r.ables;if(!l)return!1;var d="onPinch"+(n?"Group":"")+"Start",c="drag"+(n?"Group":"")+"ControlStart",u=(!0===l?t.controlAbles:a.filter((function(t){return l.indexOf(t.name)>-1}))).filter((function(t){return t.canPinch&&t[c]})),p=oc(t,e,{});n&&(p.targets=n);var h=rc(t,d,p);i.isPinch=!1!==h,i.ables=u;var v=i.isPinch;return!!v&&(u.forEach((function(i){if(s[i.name]=s[i.name]||{},i[c]){var n=dd(dd({},e),{datas:s[i.name],parentRotate:o,isPinch:!0});i[c](t,n)}})),t.state.snapRenderInfo={request:e.isRequest,direction:[0,0]},v)},pinch:function(t,e){var i=e.datas,n=e.scale,o=e.distance,s=e.originalDatas,r=e.inputEvent,l=e.targets,a=e.angle;if(i.isPinch){var d=o*(1-1/n),c=oc(t,e,{});l&&(c.targets=l),rc(t,"onPinch"+(l?"Group":""),c);var u=i.ables,p="drag"+(l?"Group":"")+"Control";return u.forEach((function(i){i[p]&&i[p](t,dd(dd({},e),{datas:s[i.name],inputEvent:r,parentDistance:d,parentRotate:a,isPinch:!0}))})),c}},pinchEnd:function(t,e){var i=e.datas,n=e.isPinch,o=e.inputEvent,s=e.targets,r=e.originalDatas;if(i.isPinch){var l="onPinch"+(s?"Group":"")+"End",a=sc(t,e,{isDrag:n});s&&(a.targets=s),rc(t,l,a);var d=i.ables,c="drag"+(s?"Group":"")+"ControlEnd";return d.forEach((function(i){i[c]&&i[c](t,dd(dd({},e),{isDrag:n,datas:r[i.name],inputEvent:o,isPinch:!0}))})),n}},pinchGroupStart:function(t,e){return this.pinchStart(t,dd(dd({},e),{targets:t.props.targets}))},pinchGroup:function(t,e){return this.pinch(t,dd(dd({},e),{targets:t.props.targets}))},pinchGroupEnd:function(t,e){return this.pinchEnd(t,dd(dd({},e),{targets:t.props.targets}))}});function Cc(t,e,i,n,o){var s=e.gesto.move(i,t.inputEvent),r=s.originalDatas||s.datas,l=r.draggable||(r.draggable={});return dd(dd({},o?vc(e,s):s),{isDrag:!0,isPinch:!!n,parentEvent:!0,datas:l,originalDatas:t.originalDatas})}var kc=function(){function t(){this.prevX=0,this.prevY=0,this.startX=0,this.startY=0,this.isDrag=!1,this.isFlag=!1,this.datas={draggable:{}}}var e=t.prototype;return e.dragStart=function(t,e){this.isDrag=!1,this.isFlag=!1;var i=e.originalDatas;return this.datas=i,i.draggable||(i.draggable={}),dd(dd({},this.move(t,e.inputEvent)),{type:"dragstart"})},e.drag=function(t,e){return this.move([t[0]-this.prevX,t[1]-this.prevY],e)},e.move=function(t,e){var i,n;return this.isFlag?(i=this.prevX+t[0],n=this.prevY+t[1],this.isDrag=!0):(this.prevX=t[0],this.prevY=t[1],this.startX=t[0],this.startY=t[1],i=t[0],n=t[1],this.isFlag=!0),this.prevX=i,this.prevY=n,{type:"drag",clientX:i,clientY:n,inputEvent:e,isDrag:this.isDrag,distX:i-this.startX,distY:n-this.startY,deltaX:t[0],deltaY:t[1],datas:this.datas.draggable,originalDatas:this.datas,parentEvent:!0,parentGesto:this}},t}();function Ec(t,e,i){var n=i.originalDatas;n.groupable=n.groupable||{};var o=n.groupable;o.childDatas=o.childDatas||[];var s=o.childDatas;return t.moveables.map((function(t,n){return s[n]=s[n]||{},s[n][e]=s[n][e]||{},dd(dd({},i),{datas:s[n][e],originalDatas:s[n]})}))}function Ac(t,e,i,n,o,s){var r=!!i.match(/Start$/g),l=!!i.match(/End$/g),a=o.isPinch,d=o.datas,c=Ec(t,e.name,o),u=t.moveables,p=c.map((function(t,o){var c=u[o],p=t;r?p=(new kc).dragStart(n,t):(c.state.gesto||(c.state.gesto=d.childGestos[o]),p=Cc(t,c.state,n,a,s));var h=e[i](c,dd(dd({},p),{parentFlag:!0}));return l&&(c.state.gesto=null),h}));return r&&(d.childGestos=u.map((function(t){return t.state.gesto}))),p}function Lc(t,e,i,n,o,s){void 0===o&&(o=function(t,e){return e});var r=!!i.match(/End$/g),l=Ec(t,e.name,n),a=t.moveables;return l.map((function(t,n){var l,d=a[n];l=o(d,t);var c=e[i](d,dd(dd({},l),{parentFlag:!0}));return c&&s&&s(d,t,c,n),r&&(d.state.gesto=null),c}))}function qc(t,e){var i=e.clientX,n=e.clientY,o=e.datas,s=t.state,r=s.moveableClientRect,l=s.rootMatrix,a=s.is3d,d=s.pos1,c=la(hc(l,[i-r.left,n-r.top],a?4:3),d),u=$c({datas:o,distX:c[0],distY:c[1]});return[u[0],u[1]]}function Tc(t,e){var i=e.datas,n=t.state,o=n.allMatrix,s=n.beforeMatrix,r=n.is3d,l=n.left,a=n.top,d=n.origin,c=n.offsetMatrix,u=n.targetMatrix,p=n.transformOrigin,h=r?4:3;i.is3d=r,i.matrix=o,i.targetMatrix=u,i.beforeMatrix=s,i.offsetMatrix=c,i.transformOrigin=p,i.inverseMatrix=ea(o,h),i.inverseBeforeMatrix=ea(s,h),i.absoluteOrigin=ia(ra([l,a],d),h),i.startDragBeforeDist=da(i.inverseBeforeMatrix,i.absoluteOrigin,h),i.startDragDist=da(i.inverseMatrix,i.absoluteOrigin,h)}function Mc(t,e){var i=t.datas,n=t.originalDatas.beforeRenderable,o=i.transformIndex,s=n.nextTransforms,r=n.nextTransformAppendedIndexes,l=-1===o?s.length:o+r.filter((function(t){return t<o})).length,a=function(t,e){var i=t.slice(0,e<0?void 0:e),n=t.slice(0,e<0?void 0:e+1),o=t[e]||"",s=e<0?[]:t.slice(e),r=e<0?[]:t.slice(e+1),l=Sa(i),a=Sa(n),d=Sa([o]),c=Sa(s),u=Sa(r),p=wa(l),h=wa(a),v=wa(c),f=wa(u),g=sa(p,v,4);return{transforms:t,beforeFunctionMatrix:p,beforeFunctionMatrix2:h,targetFunctionMatrix:wa(d),afterFunctionMatrix:v,afterFunctionMatrix2:f,allFunctionMatrix:g,beforeFunctions:l,beforeFunctions2:a,targetFunction:d[0],afterFunctions:c,afterFunctions2:u,beforeFunctionTexts:i,beforeFunctionTexts2:n,targetFunctionText:o,afterFunctionTexts:s,afterFunctionTexts2:r}}(s,l),d=a.targetFunction,c="rotate"===e?"rotateZ":e;i.beforeFunctionTexts=a.beforeFunctionTexts,i.afterFunctionTexts=a.afterFunctionTexts,i.beforeTransform=a.beforeFunctionMatrix,i.beforeTransform2=a.beforeFunctionMatrix2,i.targetTansform=a.targetFunctionMatrix,i.afterTransform=a.afterFunctionMatrix,i.afterTransform2=a.afterFunctionMatrix2,i.targetAllTransform=a.allFunctionMatrix,d.functionName===c?(i.afterFunctionTexts.splice(0,1),i.isAppendTransform=!1):(i.isAppendTransform=!0,n.nextTransformAppendedIndexes=cd(r,[l]))}function Oc(t,e,i){return t.beforeFunctionTexts.join(" ")+" "+(t.isAppendTransform?i:e)+" "+t.afterFunctionTexts.join(" ")}function Rc(t){var e=t.datas,i=Bc({datas:e,distX:t.distX,distY:t.distY});return da(Nc(e,function(t,e){for(var i=ba(e),n=0;n<e-1;++n)i[e*(e-1)+n]=t[n]||0;return i}([i[0],i[1]],4)),ia([0,0,0],4),4)}function Nc(t,e,i){var n=t.beforeTransform,o=t.afterTransform,s=t.beforeTransform2,r=t.afterTransform2,l=t.targetAllTransform,a=i?sa(l,e,4):sa(e,l,4),d=sa(ea(i?s:n,4),a,4);return sa(d,ea(i?r:o,4),4)}function Bc(t){var e=t.datas,i=t.distX,n=t.distY,o=e.inverseBeforeMatrix,s=e.is3d,r=e.startDragBeforeDist,l=s?4:3;return la(da(o,ra(e.absoluteOrigin,[i,n]),l),r)}function $c(t,e){var i=t.datas,n=t.distX,o=t.distY,s=i.inverseBeforeMatrix,r=i.inverseMatrix,l=i.is3d,a=i.startDragBeforeDist,d=i.startDragDist,c=l?4:3;return la(da(e?s:r,ra(i.absoluteOrigin,[n,o]),c),e?a:d)}function Ic(t){var e=[];return t[1]>=0&&(t[0]>=0&&e.push(3),t[0]<=0&&e.push(2)),t[1]<=0&&(t[0]>=0&&e.push(1),t[0]<=0&&e.push(0)),e}function Hc(t,e){return Ic(e).map((function(e){return t[e]}))}function Dc(t,e){var i=Hc(t,e);return[tl(i.map((function(t){return t[0]}))),tl(i.map((function(t){return t[1]})))]}function zc(t,e,i,n){return sa(t,qd(e,n,i),n)}function Pc(t,e,i){var n=t.transformOrigin,o=t.offsetMatrix,s=t.is3d,r=e.beforeTransform,l=e.afterTransform,a=s?4:3;return zc(o,na(sa(sa(r,function(t){return wa(Sa(t))}([i]),4),l,4),4,a),n,a)}function Fc(t){var e=t.originalDatas.beforeRenderable;return{setTransform:function(i,n){void 0===n&&(n=-1),e.startTransforms=$r(i)?i:Fr(i),Wc(t,n)},setTransformIndex:function(e){Wc(t,e)}}}function Uc(t,e){Wc(t,Vr(t.originalDatas.beforeRenderable.startTransforms,(function(t){return 0===t.indexOf(e+"(")})))}function Wc(t,e){var i=t.originalDatas.beforeRenderable,n=t.datas;if(n.transformIndex=e,-1!==e){var o=i.startTransforms[e];if(o){var s=Sa([o]);n.startValue=s[0].functionValue}}}function jc(t,e){t.originalDatas.beforeRenderable.nextTransforms=Fr(e)}function Gc(t,e,i,n,o){return jc(o,e),{transform:e,drag:Qu.drag(t,Cc(o,t.state,i,n,!1))}}function Yc(t,e,i,n,o){var s=t.state,r=s.left,l=s.top,a=t.props.groupable,d=a?r:0,c=a?l:0,u=la(n,Xc(t,i,Pc(t.state,o,e)));return la(u,[d,c])}function Vc(t){var e=t.state,i=e.width,n=e.height,o=e.transformOrigin;return[o[0]/(i/2)-1,o[1]/(n/2)-1]}function Xc(t,e,i){void 0===i&&(i=t.state.allMatrix);var n=t.state,o=n.width,s=n.height,r=n.is3d?4:3;return Pd(i,[o/2*(1+e[0]),s/2*(1+e[1])],r)}function Zc(t,e,i,n,o,s){var r=t.props.groupable,l=t.state,a=l.transformOrigin,d=l.targetMatrix,c=l.offsetMatrix,u=l.is3d,p=l.width,h=l.height,v=l.left,f=l.top,g=u?4:3,m=r?v:0,b=r?f:0;return la(function(t,e,i,n,o,s){var r=Dc(Fd(e,i,n,o),s);return[t[0]-r[0],t[1]-r[1]]}(o,zc(c,d,function(t,e,i,n,o,s){return void 0===n&&(n=e),void 0===o&&(o=i),void 0===s&&(s=[0,0]),t?t.map((function(t,r){var l=jr(t),a=l.value,d=l.unit,c=r?o:n,u=r?i:e;return"%"===t||isNaN(a)?u*(c?s[r]/c:0):"%"!==d?a:u*a/100})):s}(s,e,i,p,h,a),g),e,i,g,n),[m,b])}function Kc(t,e){return Dc(ic(t.state),e)}function Jc(t,e,i){var n=Pd(t,[e.clientLeft,e.clientTop],i);return[e.left+n[0],e.top+n[1]]}function Qc(t,e,i,n,o,s){var r=o[0],l=o[1],a=s[0],d=s[1],c=[],u=n?0:1,p="vertical"===e?"horizontal":"vertical",h=cc(t.filter((function(t){return t.type===e})),(function(t){return t.element})).map((function(t){return t[0]})).filter((function(t){var e=t.pos,i=t.sizes;return e[u]<=d&&a<=e[u]+i[u]}));return h.forEach((function(t){var e=t.pos[n],o=e+t.sizes[n];h.forEach((function(t){var s=t.pos,a=t.sizes,d=t.element,u=t.className,v=s[n],f=v+a[n],g=0,m=0,b=!0;if(o<=v)r<(g=f-(m=o-v))-i&&(b=!1);else{if(!(f<=e))return;l>(g=v-(m=e-f))+i&&(b=!1)}if(b&&c.push({pos:"vertical"===p?[g,s[1]]:[s[0],g],element:d,sizes:a,size:0,type:p,gap:m,className:u,gapGuidelines:h}),o<=r&&l<=v){var y=(v+o-(l-r))/2;ol(r-(y-i),.1)>=0&&c.push({pos:"vertical"===p?[y,s[1]]:[s[0],y],className:u,element:d,sizes:a,size:0,type:p,gap:o-r,gapGuidelines:h})}}))})),c}function tu(t,e,i,n,o,s,r){void 0===o&&(o=0),void 0===s&&(s=0),void 0===r&&(r={left:0,top:0,right:0,bottom:0});var l=[],a=r.left,d=r.top,c=r.bottom,u=i+r.right-a,p=n+c-d;return t&&t.forEach((function(t){l.push({type:"horizontal",pos:[a,ol(t-s+d,.1)],size:u})})),e&&e.forEach((function(t){l.push({type:"vertical",pos:[ol(t-o+a,.1),d],size:p})})),l}function eu(t,e){var i=[];if(!e.length)return i;var n=t.state,o=t.props.snapCenter,s=n.containerClientRect,r=n.targetClientRect,l=r.top,a=r.left,d=n.rootMatrix,c=n.is3d?4:3,u=Jc(d,s,c),p=u[0],h=u[1],v=Ea(ic(n)),f=la([v.minX,v.minY],hc(d,[a-p,l-h],c)).map((function(t){return e=t,Math.round(e%1==-.5?e-1:e);var e})),g=f[0],m=f[1];return e.forEach((function(t){var e=t.element,n=t.top,s=t.left,r=t.right,l=t.bottom,a=t.className,u=e.getBoundingClientRect(),v=u.left-p,f=u.top-h,b=f+u.height,y=v+u.width,x=hc(d,[v,f],c),_=x[0],w=x[1],S=hc(d,[y,b],c),C=S[0],k=S[1],E=C-_,A=k-w,L=[E,A];!1!==n&&i.push({type:"vertical",element:e,pos:[ol(_+g,.1),w],size:A,sizes:L,className:a}),!1!==l&&i.push({type:"vertical",element:e,pos:[ol(C+g,.1),w],size:A,sizes:L,className:a}),!1!==s&&i.push({type:"horizontal",element:e,pos:[_,ol(w+m,.1)],size:E,sizes:L,className:a}),!1!==r&&i.push({type:"horizontal",element:e,pos:[_,ol(k+m,.1)],size:E,sizes:L,className:a}),o&&(i.push({type:"vertical",element:e,pos:[ol((_+C)/2+g,.1),w],size:A,sizes:L,center:!0,className:a}),i.push({type:"horizontal",element:e,pos:[_,ol((w+k)/2+m,.1)],size:E,sizes:L,center:!0,className:a}))})),i}function iu(t,e,i){void 0===i&&(i=[]);var n=[],o=t.state;if(e&&o.guidelines&&o.guidelines.length)return n;var s=t.props.elementGuidelines,r=void 0===s?[]:s;if(!r.length)return n;var l=o.elementGuidelineValues||[],a=r.map((function(t){return Br(t)&&"element"in t?t:{element:xc(t,!0)}})).filter((function(t){return t.element}));o.elementGuidelineValues=a;var d,c,u=(d=l.map((function(t){return t.element})),c=a.map((function(t){return t.element})),qr(d,c,Ba)),p=u.added,h=u.removed.map((function(t){return l[t].element})),v=eu(t,p.map((function(t){return a[t]})).filter((function(t){return t.refresh&&e||!t.refresh&&!e})));return cd(i.filter((function(t){return-1===h.indexOf(t.element)})),v)}function nu(t){var e=t.state,i=e.snapOffset,n=e.staticGuidelines,o=e.containerClientRect,s=o.overflow,r=o.scrollHeight,l=o.scrollWidth,a=o.clientHeight,d=o.clientWidth,c=o.clientLeft,u=o.clientTop,p=t.props,h=p.snapHorizontal,v=void 0===h||h,f=p.snapVertical,g=void 0===f||f,m=p.snapGap,b=void 0===m||m,y=p.verticalGuidelines,x=p.horizontalGuidelines,_=p.snapThreshold,w=void 0===_?5:_,S=p.snapGridWidth,C=void 0===S?0:S,k=p.snapGridHeight,E=void 0===k?0:k,A=cd(n,iu(t,!0));if(b){var L=Ud(ic(t.state)),q=L.top,T=L.left,M=L.bottom,O=L.right,R=n.filter((function(t){return t.element}));A.push.apply(A,cd(Qc(R,"horizontal",w,0,[T,O],[q,M]),Qc(R,"vertical",w,1,[q,M],[T,O])))}return A.push.apply(A,function(t,e,i,n,o,s){void 0===o&&(o=0);void 0===s&&(s=0);var r=[];if(e)for(var l=0;l<=n;l+=e)r.push({type:"horizontal",pos:[0,ol(l-s,.1)],size:i,hide:!0});if(t)for(l=0;l<=i;l+=t)r.push({type:"vertical",pos:[ol(l-o,.1),0],size:n,hide:!0});return r}(C,E,s?l:d,s?r:a,c,u)),A.push.apply(A,tu(v&&x||!1,g&&y||!1,s?l:d,s?r:a,c,u,i)),A}function ou(t,e,i,n,o){var s=t.props,r=s.snapElement,l=void 0===r||r,a=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var i=t.length-1,n=0;n<i;++n){var o=t[n];if(!Nr(o))return o}return t[i]}(o,s.snapThreshold,5);return su(t.state.guidelines,e,i,{snapThreshold:a,snapCenter:n,snapElement:l})}function su(t,e,i,n){return{vertical:au(t,"vertical",e,n),horizontal:au(t,"horizontal",i,n)}}function ru(t,e,i,n){var o=t.props.snapCenter&&i,s=["left","right"],r=["top","bottom"];return o&&(s.push("center"),r.push("middle")),s=s.filter((function(t){return t in e})),r=r.filter((function(t){return t in e})),ou(t,s.map((function(t){return e[t]})),r.map((function(t){return e[t]})),o,n)}function lu(t){var e=t.isSnap;if(!e)return{isSnap:!1,offset:0,dist:-1,pos:0,guideline:null};var i=t.posInfos[0],n=i.guidelineInfos[0],o=n.offset,s=n.dist,r=n.guideline;return{isSnap:e,offset:o,dist:s,pos:i.pos,guideline:r}}function au(t,e,i,n){var o=void 0===n?{}:n,s=o.snapThreshold,r=void 0===s?5:s,l=o.snapElement,a=o.snapCenter;if(!t||!t.length)return{isSnap:!1,index:-1,posInfos:[]};var d="vertical"===e?0:1,c=i.map((function(i,n){var o=t.map((function(t){var e=t.pos,n=i-e[d];return{offset:n,dist:Math.abs(n),guideline:t}})).filter((function(t){var i=t.guideline,n=t.dist,o=i.type,s=i.center,d=i.element;return!(!l&&d||!a&&s||o!==e||n>r)})).sort((function(t,e){return t.dist-e.dist}));return{pos:i,index:n,guidelineInfos:o}})).filter((function(t){return t.guidelineInfos.length>0})).sort((function(t,e){return t.guidelineInfos[0].dist-e.guidelineInfos[0].dist})),u=c.length>0;return{isSnap:u,index:u?c[0].index:-1,posInfos:c}}function du(t,e){var i=Math.abs(t.offset),n=Math.abs(e.offset);return t.isBound&&e.isBound?n-i:t.isBound?-1:e.isBound?1:t.isSnap&&e.isSnap?n-i:t.isSnap?-1:e.isSnap||i<xd?1:n<xd?-1:i-n}function cu(t,e){return t.slice().sort((function(t,i){var n=t.sign[e],o=i.sign[e],s=t.offset[e],r=i.offset[e];return n?o?du({isBound:t.isBound,isSnap:t.isSnap,offset:s},{isBound:i.isBound,isSnap:i.isSnap,offset:r}):-1:1}))[0]}function uu(t,e){var i=tl([e[0][0],e[1][0]]),n=tl([e[0][1],e[1][1]]);return{vertical:i<=t[0],horizontal:n<=t[1]}}function pu(t,e){var i,n,o=e[0],s=e[1],r=s[0]-o[0],l=s[1]-o[1];if(Math.abs(r)<xd&&(r=0),Math.abs(l)<xd&&(l=0),r)if(l){i=l/r*(t[0]-o[0])+o[1],n=t[1]}else i=o[1],n=t[1];else i=o[0],n=t[0];return i-n}function hu(t,e,i){void 0===i&&(i=xd);var n=pu(t[0],e)<=0;return t.slice(1).every((function(t){var o=pu(t,e);return o<=0===n||Math.abs(o)<=i}))}function vu(t,e,i,n,o){return void 0===o&&(o=0),n&&e-o<=t||!n&&t<=i+o?{isBound:!0,offset:n?e-t:i-t}:{isBound:!1,offset:0}}function fu(t,e,i,n,o){var s=t[0],r=t[1],l=e[0],a=e[1],d=mc(r[1]-s[1]),c=mc(r[0]-s[0]),u=mc(a[1]-l[1]);if(!mc(a[0]-l[0])){if(o&&!d)return{isBound:!1,offset:0};if(c)return vu(d/c*(l[0]-s[0])+s[1],l[1],a[1],i,n);var p=l[0]-s[0];return{isBound:h=Math.abs(p)<=(n||0),offset:h?p:0}}if(!u){if(o&&!c)return{isBound:!1,offset:0};if(d)return vu((l[1]-s[1])/(d/c)+s[0],l[0],a[0],i,n);var h;p=l[1]-s[1];return{isBound:h=Math.abs(p)<=(n||0),offset:h?p:0}}return{isBound:!1,offset:0}}function gu(t,e,i,n){return e.map((function(e){var o=e[0],s=e[1],r=e[2],l=function(t,e,i){var n=t.props.innerBounds;if(!n)return{isAllBound:!1,isBound:!1,isVerticalBound:!1,isHorizontalBound:!1,offset:[0,0]};var o=n.left,s=n.top,r=n.width,l=n.height,a=[[o,s],[o,s+l]],d=[[o,s],[o+r,s]],c=[[o+r,s],[o+r,s+l]],u=[[o,s+l],[o+r,s+l]],p=uu(i,e),h=p.horizontal,v=p.vertical;if(hu([i,[o,s],[o+r,s],[o,s+l],[o+r,s+l]],e))return{isAllBound:!1,isBound:!1,isVerticalBound:!1,isHorizontalBound:!1,offset:[0,0]};var f=fu(e,d,v),g=fu(e,u,v),m=fu(e,a,h),b=fu(e,c,h),y=f.isBound&&g.isBound,x=f.isBound||g.isBound,_=m.isBound&&b.isBound,w=m.isBound||b.isBound,S=pc(f.offset,g.offset),C=pc(m.offset,b.offset),k=[0,0],E=!1,A=!1;return Math.abs(C)<Math.abs(S)?(k=[S,0],E=x,A=y):(k=[0,C],E=w,A=_),{isAllBound:A,isVerticalBound:x,isHorizontalBound:w,isBound:E,offset:k}}(t,[s,r],i),a=l.isBound,d=l.offset,c=l.isVerticalBound,u=l.isHorizontalBound,p=$c({datas:n,distX:d[0],distY:d[1]}).map((function(t,e){return t*(o[e]?2/o[e]:0)}));return{sign:o,isBound:a,isVerticalBound:c,isHorizontalBound:u,isSnap:!1,offset:p}}))}function mu(t,e,i){var n,o=gu(t,bu(e,[0,0],!1).map((function(t){var e=t[0],i=t[1],n=t[2];return[e.map((function(t){return 2*Math.abs(t)})),i,n]})),Dc(e,[0,0]),i),s=cu(o,0),r=cu(o,1),l=0,a=0,d=s.isVerticalBound||r.isVerticalBound,c=s.isHorizontalBound||r.isHorizontalBound;return(d||c)&&(l=(n=function(t,e){var i=t.datas,n=t.distX,o=t.distY,s=i.beforeMatrix,r=i.matrix,l=i.is3d,a=i.startDragBeforeDist,d=i.startDragDist,c=i.absoluteOrigin,u=l?4:3;return la(da(e?s:r,ra(e?a:d,[n,o]),u),c)}({datas:i,distX:-s.offset[0],distY:-r.offset[1]}))[0],a=n[1]),{vertical:{isBound:d,offset:l},horizontal:{isBound:c,offset:a}}}function bu(t,e,i){return function(t,e){var i=[],n=t[0],o=t[1];return n&&o?i.push([[0,2*o],t,[-n,o]],[[2*n,0],t,[n,-o]]):n?(i.push([[2*n,0],[n,1],[n,-1]]),e&&i.push([[0,-1],[n,-1],[-n,-1]],[[0,1],[n,1],[-n,1]])):o?(i.push([[0,2*o],[1,o],[-1,o]]),e&&i.push([[-1,0],[-1,o],[-1,-o]],[[1,0],[1,o],[1,-o]])):i.push([[-1,0],[-1,-1],[-1,1]],[[1,0],[1,-1],[1,1]],[[0,-1],[-1,-1],[1,-1]],[[0,1],[-1,1],[1,1]]),i}(e,i).map((function(e){var i=e[0],n=e[1],o=e[2];return[i,Dc(t,n),Dc(t,o)]}))}function yu(t,e,i,n){var o=n?t.map((function(t){return va(t,n)})):t,s=cd([i],e);return[[o[0],o[1]],[o[1],o[3]],[o[3],o[2]],[o[2],o[0]]].some((function(t){return!hu(s,t)}))}function xu(t,e,i,n,o){var s=t.props.innerBounds,r=o*Math.PI/180;if(!s)return[];var l=s.left,a=s.top,d=s.width,c=s.height,u=l-n[0],p=l+d-n[0],h=a-n[1],v=a+c-n[1],f=[[u,h],[p,h],[u,v],[p,v]],g=Dc(i,[0,0]);if(!yu(i,f,g,0))return[];var m=[],b=f.map((function(t){return[Gd(t),el([0,0],t)]}));return[[i[0],i[1]],[i[1],i[3]],[i[3],i[2]],[i[2],i[0]]].forEach((function(t){var i=el([0,0],function(t){var e=t[0],i=t[1],n=i[0]-e[0],o=i[1]-e[1];if(!n)return[e[0],0];if(!o)return[0,e[1]];var s=o/n,r=-s*e[0]+e[1];return[-r/(s+1/s),r/(s*s+1)]}(t)),n=function(t){var e=t[0],i=t[1],n=i[0]-e[0],o=i[1]-e[1];if(!n)return Math.abs(e[0]);if(!o)return Math.abs(e[1]);var s=o/n;return Math.abs((-s*e[0]+e[1])/Math.sqrt(Math.pow(s,2)+1))}(t);m.push.apply(m,b.filter((function(t){var e=t[0];return e&&n<=e})).map((function(t){var e=t[0],o=t[1],s=Math.acos(e?n/e:0);return[r+(o+s)-i,r+(o-s)-i]})).reduce((function(t,e){return t.push.apply(t,e),t}),[]).filter((function(t){return!yu(e,f,g,t)})).map((function(t){return ol(180*t/Math.PI,xd)})))})),m}function _u(t,e,i){var n=t||{},o=n.position,s=void 0===o?"client":o,r=n.left,l=void 0===r?-1/0:r,a=n.top,d=void 0===a?-1/0:a,c=n.right,u=void 0===c?1/0:c,p=n.bottom,h={position:s,left:l,top:d,right:u,bottom:void 0===p?1/0:p};return{vertical:Su(h,e,!0),horizontal:Su(h,i,!1)}}function wu(t,e){var i=t.state,n=i.containerClientRect,o=n.clientHeight,s=n.clientWidth,r=n.clientLeft,l=n.clientTop,a=i.snapOffset,d=a.left,c=a.top,u=a.right,p=a.bottom,h=e||t.props.bounds||{},v="css"===(h.position||"client"),f=h.left,g=void 0===f?-1/0:f,m=h.top,b=void 0===m?-1/0:m,y=h.right,x=void 0===y?v?-1/0:1/0:y,_=h.bottom,w=void 0===_?v?-1/0:1/0:_;return v&&(x=s+u-d-x,w=o+p-c-w),{left:g+d-r,right:x+d-r,top:b+c-l,bottom:w+c-l}}function Su(t,e,i){var n=t[i?"left":"top"],o=t[i?"right":"bottom"],s=Math.min.apply(Math,e),r=Math.max.apply(Math,e),l=[];return n+1>s&&l.push({isBound:!0,offset:s-n,pos:n}),o-1<r&&l.push({isBound:!0,offset:r-o,pos:o}),l.length||l.push({isBound:!1,offset:0,pos:0}),l.sort((function(t,e){return Math.abs(e.offset)-Math.abs(t.offset)}))}function Cu(t,e,i){return(i?t.map((function(t){return va(t,i)})):t).some((function(t){return t[0]<e.left&&Math.abs(t[0]-e.left)>.1||t[0]>e.right&&Math.abs(t[0]-e.right)>.1||t[1]<e.top&&Math.abs(t[1]-e.top)>.1||t[1]>e.bottom&&Math.abs(t[1]-e.bottom)>.1}))}function ku(t,e,i,n,o){if(!t.props.bounds)return[];var s=o*Math.PI/180,r=wu(t),l=r.left,a=r.top,d=r.right,c=r.bottom,u=l-n[0],p=d-n[0],h=a-n[1],v=c-n[1],f={left:u,top:h,right:p,bottom:v};if(!Cu(i,f,0))return[];var g=[];return[[u,0],[p,0],[h,1],[v,1]].forEach((function(t){var n=t[0],o=t[1];i.forEach((function(t){var i=el([0,0],t);g.push.apply(g,function(t,e,i){var n=Gd(t),o=Math.sqrt(n*n-e*e)||0;return[o,-o].sort((function(e,n){return Math.abs(e-t[i?0:1])-Math.abs(n-t[i?0:1])})).map((function(t){return el([0,0],i?[t,e]:[e,t])}))}(t,n,o).map((function(t){return s+t-i})).filter((function(t){return!Cu(e,f,t)})).map((function(t){return ol(180*t/Math.PI,xd)})))}))})),g}var Eu={horizontal:["left","top","width","Y","X"],vertical:["top","left","height","X","Y"]};function Au(t,e,i,n){var o=t-i,s=o<0?o+e:n;return{size:(o<0?0:o)-s,pos:s}}function Lu(t,e){return function(t,e){var i,n=t.direction,o=t.classNames,s=t.size,r=t.pos,l=t.zoom,a=t.key,d="horizontal"===n,c=d?"Y":"X";return e.createElement("div",{key:a,className:o.join(" "),style:(i={},i[d?"width":"height"]=""+s,i.transform="translate("+r[0]+", "+r[1]+") translate"+c+"(-50%) scale"+c+"("+l+")",i)})}(dd(dd({},t),{classNames:cd([Ld("line","guideline",t.direction)],t.classNames).filter((function(t){return t})),size:t.size||t.sizeValue+"px",pos:t.pos||t.posValue.map((function(t){return ol(t,.1)+"px"}))}),e)}function qu(t,e,i,n,o,s,r,l,a,d,c,u){var p=t.props,h=p.zoom,v=p.isDisplaySnapDigit,f=void 0===v||v,g=Eu[e],m=g[0],b=g[1],y=g[2],x=g[4];return uc(i.map((function(t,i){var p=!0;return t.map((function(t,v){var g,_=t.pos,w=t.size,S=Au(_[d],w,o,s),C=S.pos,k=S.size;if(k<l)return null;var E=p;p=!1;var A=f&&E?parseFloat(k.toFixed(a)):0;return u.createElement("div",{key:e+"LinkGuideline"+i+"-"+v,className:Ld("guideline-group",e),style:(g={},g[m]=n+C+"px",g[b]=-r+_[d?0:1]+"px",g[y]=k+"px",g)},Lu({direction:e,classNames:[Ld("dashed")],size:"100%",posValue:[0,0],sizeValue:k,zoom:h},u),u.createElement("div",{className:Ld("size-value"),style:{transform:"translate"+x+"(-50%) scale("+h+")"}},A>0?c(A):""))}))})))}function Tu(t,e,i,n,o,s,r,l){var a=t.props.zoom;return i.map((function(t,i){var d=t.type,c=t.pos,u=[0,0];return u[r]=n,u[r?0:1]=-o+c,Lu({key:e+"TargetGuideline"+i,classNames:[Ld("target","bold",d)],posValue:u,sizeValue:s,zoom:a,direction:e},l)}))}function Mu(t,e,i,n,o,s){var r=t.props.isDisplayInnerSnapDigit,l=i?0:1,a=n[i],d=s[i],c=[],u=e.filter((function(t){var e=t.element,o=t.pos,s=t.size;if(r&&e&&o[i]<a&&a+d<o[i]+s){var u=o[i]-a,p=o[l]-n[l];return c.push(dd(dd({},t),{inner:!0,gap:u,renderPos:i?[p,u]:[u,p]})),c.push(dd(dd({},t),{inner:!0,gap:o[i]+s-a-d,renderPos:i?[p,d]:[d,p]})),!1}return!0})),p=function(t,e,i,n){var o=[],s=cc(t.filter((function(t){var e=t.element,i=t.gap;return e&&!i})),(function(t){var i=t.element,s=t.pos,r=s[n],l=(Math.min(0,r-e)<0?-1:1)+"_"+s[n?0:1],a=Xr(o,(function(t){var e=t[0],n=t[1];return i===e&&r===n}));return a?a[2]:(o.push([i,r,l]),l)}));return s.forEach((function(t){t.sort((function(t,o){return Au(t.pos[n],t.size,e,i).size-Au(o.pos[n],t.size,e,i).size||t.pos[n?0:1]-o.pos[n?0:1]}))})),s}(u=u.filter((function(t){var e=t.element,n=t.pos,o=t.size,s=n[i];return!e||u.every((function(e){var n=e.element,r=e.pos,l=e.size,a=r[i];return!n||t===e||(s+o<=a||a+l<=s||s<a&&a+l<s+o)}))})),o[i],d,i);return c=c.filter((function(t){var e=t.gap,n=t.pos[l];return p.every((function(t){return t.every((function(t){var o=t.pos,r=-a+o[i];return o[l]!==n||!(e<0&&r<0)&&!(e>0&&r>s[i])}))}))})),{guidelines:u,groups:p,gapGuidelines:c}}function Ou(t,e,i,n,o){var s=t.props.zoom;return i.filter((function(t){return!t.hide})).map((function(t,i){var r=t.pos,l=t.size,a=t.element,d=[-n[0]+r[0],-n[1]+r[1]];return Lu({key:e+"Guideline"+i,classNames:a?[Ld("bold")]:[],direction:e,posValue:d,sizeValue:l,zoom:s},o)}))}function Ru(t,e,i,n,o){var s=t.props,r=s.snapDigit,l=void 0===r?0:r,a=s.isDisplaySnapDigit,d=void 0===a||a,c=s.zoom,u="horizontal"===e?"X":"Y",p="horizontal"===e?"width":"height";return i.map((function(t,i){var s,r=t.renderPos,a=t.gap,h=t.className,v=t.inner,f=Math.abs(a),g=d?parseFloat(f.toFixed(l)):0;return o.createElement("div",{key:e+"GapGuideline"+i,className:Ld("guideline-group",e),style:(s={left:r[0]+"px",top:r[1]+"px"},s[p]=f+"px",s)},Lu({direction:e,classNames:[Ld(v?"dashed":"gap"),h],size:"100%",posValue:[0,0],sizeValue:f,zoom:c},o),o.createElement("div",{className:Ld("size-value","gap"),style:{transform:"translate"+u+"(-50%) scale("+c+")"}},g>0?n(g):""))}))}function Nu(t){var e=t.state;if(!e.guidelines||!e.guidelines.length){var i=t.state.container,n=t.props.snapContainer||i,o=e.containerClientRect,s={left:0,top:0,bottom:0,right:0};if(i!==n){var r=xc(n,!0);if(r){var l=Qd(r),a=wc(e,[l.left-o.left,l.top-o.top]),d=wc(e,[l.right-o.right,l.bottom-o.bottom]);s.left=ol(a[0],.1),s.top=ol(a[1],.1),s.right=ol(d[0],.1),s.bottom=ol(d[1],.1)}}e.snapOffset=s,e.elementGuidelineValues=[],e.staticGuidelines=iu(t,!1),e.guidelines=nu(t),e.enableSnap=!0}}function Bu(t,e){var i=t.props,n=i.snappable,o=i.bounds,s=i.innerBounds,r=i.verticalGuidelines,l=i.horizontalGuidelines,a=i.snapGridWidth,d=i.snapGridHeight,c=t.state,u=c.guidelines,p=c.enableSnap;return!(!n||!p||e&&!0!==n&&n.indexOf(e)<0)&&!!(a||d||o||s||u&&u.length||r&&r.length||l&&l.length)}function $u(t,e,i,n,o){var s=function(t,e,i,n){var o=e[0]-t[0],s=e[1]-t[1];Math.abs(o)<xd&&(o=0);Math.abs(s)<xd&&(s=0);if(!o)return n?[0,0]:[0,i];if(!s)return n?[i,0]:[0,0];var r=s/o,l=t[1]-r*t[0];return n?[i,r*(e[0]+i)+l-e[1]]:[(e[1]+i-l)/r-e[0],i]}(t,e,i,n);if(!s)return{isOutside:!1,offset:[0,0]};var r=nl(t,e),l=nl(s,t),a=nl(s,e),d=l>r||a>r,c=$c({datas:o,distX:s[0],distY:s[1]});return{offset:[c[0],c[1]],isOutside:d}}function Iu(t,e,i,n,o,s){var r=Fd(t,e,i,s?4:3);return ec(r,la(n,function(t,e){return Dc(t,e.map((function(t){return-t})))}(r,o)))}function Hu(t,e){return t.isBound?t.offset:e.isSnap?e.offset:0}function Du(t,e){return t.isBound?t.offset:e.isSnap?lu(e).offset:0}function zu(t,e,i,n){var o=function(t,e,i){var n=wu(t),o=n.left,s=n.top,r=n.right,l=n.bottom,a=i[0],d=i[1],c=la(i,e),u=c[0],p=c[1];Math.abs(u)<xd&&(u=0),Math.abs(p)<xd&&(p=0);var h=p>0,v=u>0,f={isBound:!1,offset:0,pos:0},g={isBound:!1,offset:0,pos:0};if(0===u&&0===p)return{vertical:f,horizontal:g};if(0===u)h?l<d&&(g.pos=l,g.offset=d-l):s>d&&(g.pos=s,g.offset=d-s);else if(0===p)v?r<a&&(f.pos=r,f.offset=a-r):o>a&&(f.pos=o,f.offset=a-o);else{var m=p/u,b=i[1]-m*a,y=0,x=0,_=!1;v&&r<=a?(y=m*r+b,x=r,_=!0):!v&&a<=o&&(y=m*o+b,x=o,_=!0),_&&(y<s||y>l)&&(_=!1),_||(h&&l<=d?(x=((y=l)-b)/m,_=!0):!h&&d<=s&&(x=((y=s)-b)/m,_=!0)),_&&(f.isBound=!0,f.pos=x,f.offset=a-x,g.isBound=!0,g.pos=y,g.offset=d-y)}return{vertical:f,horizontal:g}}(t,e,i),s=o.horizontal,r=o.vertical,l=n?{horizontal:{isSnap:!1},vertical:{isSnap:!1}}:function(t,e,i){var n=i[0],o=i[1],s=e[0],r=e[1],l=la(i,e),a=l[0],d=l[1],c=d>0,u=a>0;a=mc(a),d=mc(d);var p={isSnap:!1,offset:0,pos:0},h={isSnap:!1,offset:0,pos:0};if(0===a&&0===d)return{vertical:p,horizontal:h};var v=ou(t,a?[n]:[],d?[o]:[]),f=v.vertical,g=v.horizontal;f.posInfos.filter((function(t){var e=t.pos;return u?e>=s:e<=s})),g.posInfos.filter((function(t){var e=t.pos;return c?e>=r:e<=r})),f.isSnap=f.posInfos.length>0,g.isSnap=g.posInfos.length>0;var m=lu(f),b=m.isSnap,y=m.guideline,x=lu(g),_=x.isSnap,w=x.guideline,S=_?w.pos[1]:0,C=b?y.pos[0]:0;if(0===a)_&&(h.isSnap=!0,h.pos=w.pos[1],h.offset=o-h.pos);else if(0===d)b&&(p.isSnap=!0,p.pos=C,p.offset=n-C);else{var k=d/a,E=i[1]-k*n,A=0,L=0,q=!1;b?(A=k*(L=C)+E,q=!0):_&&(L=((A=S)-E)/k,q=!0),q&&(p.isSnap=!0,p.pos=L,p.offset=n-L,h.isSnap=!0,h.pos=A,h.offset=o-A)}return{vertical:p,horizontal:h}}(t,e,i),a=l.horizontal,d=l.vertical,c=Hu(s,a),u=Hu(r,d),p=Math.abs(c),h=Math.abs(u);return{horizontal:{isBound:s.isBound,isSnap:a.isSnap,offset:c,dist:p},vertical:{isBound:r.isBound,isSnap:d.isSnap,offset:u,dist:h}}}function Pu(t,e,i,n){void 0===n&&(n=i);var o=_u(wu(t),n.map((function(t){return t[0]})),n.map((function(t){return t[1]}))),s=o.horizontal,r=o.vertical,l=e?{horizontal:{isSnap:!1,index:-1},vertical:{isSnap:!1,index:-1}}:ou(t,i.map((function(t){return t[0]})),i.map((function(t){return t[1]})),t.props.snapCenter),a=l.horizontal,d=l.vertical,c=Du(s[0],a),u=Du(r[0],d),p=Math.abs(c),h=Math.abs(u);return{horizontal:{isBound:s[0].isBound,isSnap:a.isSnap,snapIndex:a.index,offset:c,dist:p,bounds:s,snap:a},vertical:{isBound:r[0].isBound,isSnap:d.isSnap,snapIndex:d.index,offset:u,dist:h,bounds:r,snap:d}}}function Fu(t,e,i,n,o){void 0===o&&(o={});var s=_u(e,i,n),r=s.horizontal,l=s.vertical,a=o.isRequest?{horizontal:{isSnap:!1,index:-1},vertical:{isSnap:!1,index:-1}}:su(t,i,n,o),d=a.horizontal,c=a.vertical,u=Du(r[0],d),p=Du(l[0],c),h=Math.abs(u),v=Math.abs(p);return{horizontal:{isBound:r[0].isBound,isSnap:d.isSnap,snapIndex:d.index,offset:u,dist:h,bounds:r,snap:d},vertical:{isBound:l[0].isBound,isSnap:c.isSnap,snapIndex:c.index,offset:p,dist:v,bounds:l,snap:c}}}function Uu(t,e,i,n,o,s){return i.map((function(i){var r=i[0],l=i[1],a=Dc(e,r),d=Dc(e,l),c=n?zu(t,a,d,o):Pu(t,o,[d]),u=c.horizontal,p=u.offset,h=u.isBound,v=u.isSnap,f=c.vertical,g=f.offset,m=f.isBound,b=f.isSnap,y=la(l,r);if(!g&&!p)return{isBound:m||h,isSnap:b||v,sign:y,offset:[0,0]};var x=function(t,e,i,n){var o=el(t,e)/Math.PI*180,s=i.vertical,r=s.isBound,l=s.isSnap,a=s.dist,d=i.horizontal,c=d.isBound,u=d.isSnap,p=o%180,h=p<3||p>177,v=p>87&&p<93;return d.dist<a&&(r||l&&!v&&(!n||!h))?"vertical":!c&&(!u||h||n&&v)?"":"horizontal"}(a,d,c,n);if(!x)return{sign:y,isBound:!1,isSnap:!1,offset:[0,0]};var _="vertical"===x,w=$u(a,d,-(_?g:p),_,s).offset.map((function(t,e){return t*(y[e]?2/y[e]:0)}));return{sign:y,isBound:_?m:h,isSnap:_?b:v,offset:w}}))}function Wu(t,e,i,n,o,s){var r=function(t,e){var i=[],n=[-t[0],-t[1]];return t[0]&&t[1]?(i.push([n,[t[0],-t[1]]],[n,[-t[0],t[1]]]),e&&i.push([n,t])):t[0]?e?i.push([n,[n[0],-1]],[n,[n[0],1]],[n,[t[0],-1]],[n,t],[n,[t[0],1]]):i.push([[n[0],-1],[t[0],-1]],[[n[0],0],[t[0],0]],[[n[0],1],[t[0],1]]):t[1]?e?i.push([n,[-1,n[1]]],[n,[1,n[1]]],[n,[-1,t[1]]],[n,[1,t[1]]],[n,t]):i.push([[-1,n[1]],[-1,t[1]]],[[0,n[1]],[0,t[1]]],[[1,n[1]],[1,t[1]]]):i.push([n,[1,0]],[n,[-1,0]],[n,[0,-1]],[n,[0,1]],[[1,0],[1,-1]],[[1,0],[1,1]],[[0,1],[1,1]],[[0,1],[-1,1]],[[-1,0],[-1,-1]],[[-1,0],[-1,1]],[[0,-1],[1,-1]],[[0,-1],[-1,-1]]),i}(i,n),l=bu(e,i,n),a=cd(Uu(t,e,r,n,o,s),gu(t,l,Dc(e,[0,0]),s)),d=cu(a,0),c=cu(a,1);return{width:{isBound:d.isBound,offset:d.offset[0]},height:{isBound:c.isBound,offset:c.offset[1]}}}function ju(t,e,i,n,o,s,r,l){for(var a=ic(t.state),d=t.props.keepRatio,c=0,u=0,p=0;p<2;++p){var h=Wu(t,e(c,u),o,d,r,l),v=h.width,f=h.height,g=v.isBound,m=f.isBound,b=v.offset,y=f.offset;if(1===p&&(g||(b=0),m||(y=0)),0===p&&r&&!g&&!m)return[0,0];if(d){var x=Math.abs(b)*(i?1/i:1),_=Math.abs(y)*(n?1/n:1);(g&&m?x<_:m||!g&&x<_)?b=i*y/n:y=n*b/i}c+=b,u+=y}if(o[0]&&o[1]){var w=function(t,e,i,n,o){var s=[-i[0],-i[1]],r=t.state,l=r.width,a=r.height,d=t.props.bounds,c=1/0,u=1/0;if(d){var p=[[i[0],-i[1]],[-i[0],i[1]]],h=d.left,v=void 0===h?-1/0:h,f=d.top,g=void 0===f?-1/0:f,m=d.right,b=void 0===m?1/0:m,y=d.bottom,x=void 0===y?1/0:y;p.forEach((function(t){var i=t[0]!==s[0],r=t[1]!==s[1],d=Dc(e,t),p=360*el(n,d)/Math.PI;if(r){var h=d.slice();(Math.abs(p-360)<2||Math.abs(p-180)<2)&&(h[1]=n[1]);var f=$u(n,h,(n[1]<d[1]?x:g)-d[1],!1,o),m=f.offset[1],y=f.isOutside;isNaN(m)||(u=a+(y?1:-1)*Math.abs(m))}if(i){h=d.slice(),(Math.abs(p-90)<2||Math.abs(p-270)<2)&&(h[0]=n[0]);var _=$u(n,h,(n[0]<d[0]?b:v)-d[0],!0,o),w=_.offset[0],S=_.isOutside;isNaN(w)||(c=l+(S?1:-1)*Math.abs(w))}}))}return{maxWidth:c,maxHeight:u}}(t,a,o,s,l),S=w.maxWidth,C=w.maxHeight,k=function(t,e,i,n,o,s,r,l,a){var d=Pu(t,l,[Dc(e,r)]),c=d.horizontal.offset,u=d.vertical.offset;if(u||c){var p=$c({datas:a,distX:-u,distY:-c}),h=p[0],v=p[1];return[Math.min(o||1/0,i+r[0]*h)-i,Math.min(s||1/0,n+r[1]*v)-n]}return[0,0]}(t,e(c,u).map((function(t){return t.map((function(t){return ol(t,yd)}))})),i+c,n+u,S,C,o,r,l);c+=b=k[0],u+=y=k[1]}return[c,u]}function Gu(t,e,i,n){if(!Bu(t,"rotatable"))return n;var o=e.pos1,s=e.pos2,r=e.pos3,l=e.pos4,a=n*Math.PI/180,d=[o,s,r,l].map((function(t){return la(t,i)})),c=d.map((function(t){return va(t,a)})),u=cd(ku(t,d,c,i,n),xu(t,d,c,i,n));return u.sort((function(t,e){return Math.abs(t-n)-Math.abs(e-n)})),u.length?u[0]:n}function Yu(t,e,i,n,o){var s=o.width,r=o.height,l=o.fixedPosition;if(!Bu(t,"scalable"))return[0,0];var a=o.is3d,d=ju(t,(function(t,n){return Iu(function(t,e){var i=t.transformOrigin,n=t.offsetMatrix,o=t.is3d?4:3;return zc(n,sa(t.targetMatrix,ya(e,o),o),i,o)}(o,ra(e,[t/s,n/r])),s,r,l,i,a)}),s,r,i,l,n,o);return[d[0]/s,d[1]/r]}function Vu(t,e,i,n,o,s){if(!Bu(t,"draggable"))return[{isSnap:!1,isBound:!1,offset:0},{isSnap:!1,isBound:!1,offset:0}];var r=ec(s.absolutePoses,[e,i]),l=Ud(r),a=l.left,d=l.right,c=l.top,u=l.bottom,p=[[a,c],[d,c],[a,u],[d,u]];t.props.snapCenter&&p.push([(a+d)/2,(c+u)/2]);var h=Pu(t,o,p,r),v=h.vertical,f=h.horizontal,g=mu(t,r,s),m=g.vertical,b=g.horizontal,y=v.isSnap,x=f.isSnap,_=v.isBound||m.isBound,w=f.isBound||b.isBound,S=function(t,e,i,n,o){var s=e[0],r=e[1],l=i[0],a=i[1],d=n[0],c=n[1],u=o[0],p=o[1],h=-u,v=-p;if(t&&s&&r){h=0,v=0;var f=[];if(l&&a?f.push([0,p],[u,0]):l?f.push([u,0]):a?f.push([0,p]):d&&c?f.push([0,p],[u,0]):d?f.push([u,0]):c&&f.push([0,p]),f.length){f.sort((function(t,e){return Gd(la([s,r],t))-Gd(la([s,r],e))}));var g=f[0];if(g[0]&&Math.abs(s)>xd)h=-g[0],v=r*Math.abs(s+h)/Math.abs(s)-r;else if(g[1]&&Math.abs(r)>xd){var m=r;v=-g[1],h=s*Math.abs(r+v)/Math.abs(m)-s}if(t&&a&&l)if(Math.abs(h)>xd&&Math.abs(h)<Math.abs(u))h*=b=Math.abs(u)/Math.abs(h),v*=b;else if(Math.abs(v)>xd&&Math.abs(v)<Math.abs(p)){var b;h*=b=Math.abs(p)/Math.abs(v),v*=b}else h=pc(-u,h),v=pc(-p,v)}}else h=s||l?-u:0,v=r||a?-p:0;return[h,v]}(n,[e,i],[_,w],[y,x],[pc(v.offset,m.offset),pc(f.offset,b.offset)]);return[{isBound:_,isSnap:y,offset:S[0]},{isBound:w,isSnap:x,offset:S[1]}]}function Xu(t){var e=[];return t.forEach((function(t){t.guidelineInfos.forEach((function(t){var i=t.guideline;e.indexOf(i)>-1||e.push(i)}))})),e}function Zu(t,e,i,n){var o=t.filter((function(t){var i=t.element,n=t.gap,o=t.type;return i&&n&&o===e})),s="vertical"===e?[0,1]:[1,0],r=s[0],l=s[1];return uc(o.map((function(t){var e=t.pos,o=t.gap,s=t.gapGuidelines,a=t.sizes,d=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return t.sort((function(t,e){return Math.abs(t)-Math.abs(e)})),t[0]}(e[l]+a[l]-i[l],e[l]-i[l]-n[l]),c=Math.min(a[l],n[l]);if(d>0&&d>c?d=2*(d-c/2):d<0&&d<-c&&(d=2*(d+c/2)),0===d)return[];var u=(d>0?0:n[l])+d/2;return cd(function(t,e,i,n,o,s,r){var l=Math.abs(s),a=o[e]+(s>0?n[0]:0);return t.filter((function(t){return t.pos[e]<=i[e]})).sort((function(t,i){var n=t.pos;return i.pos[e]-n[e]})).filter((function(t){var i=t.pos,n=t.sizes,o=i[e];return ol(o+n[e],yd)===ol(a-l,yd)&&(a=o,!0)})).map((function(t){var n=-i[e]+t.pos[e]+t.sizes[e];return dd(dd({},t),{gap:s,renderPos:e?[r,n]:[n,r]})}))}(s,r,i,n,e,o,u),function(t,e,i,n,o,s,r){var l=Math.abs(s),a=o[e]+(s<0?n[e]:0);return t.filter((function(t){return t.pos[e]>i[e]})).sort((function(t,i){var n=t.pos,o=i.pos;return n[e]-o[e]})).filter((function(t){var i=t.pos,n=t.sizes,o=i[e];return ol(o,yd)===ol(a+l,yd)&&(a=o+n[e],!0)})).map((function(t){var n=-i[e]+t.pos[e]-l;return dd(dd({},t),{gap:s,renderPos:e?[r,n]:[n,r]})}))}(s,r,i,n,e,o,u))})))}function Ku(t,e,i,n,o,s){var r=_u(wu(t,s),e,i),l=r.vertical,a=r.horizontal;l.forEach((function(t){t.isBound&&n.push({type:"bounds",pos:t.pos})})),a.forEach((function(t){t.isBound&&o.push({type:"bounds",pos:t.pos})}));var d=function(t){var e=t.props.innerBounds;if(!e)return{vertical:[],horizontal:[]};var i=t.getRect(),n=i.pos1,o=i.pos2,s=i.pos3,r=i.pos4,l=Dc([n,o,s,r],[0,0]),a=e.left,d=e.top,c=e.width,u=e.height,p=[[a,d],[a,d+u]],h=[[a,d],[a+c,d]],v=[[a+c,d],[a+c,d+u]],f=[[a,d+u],[a+c,d+u]],g=[],m=[],b={top:!1,bottom:!1,left:!1,right:!1};return[[n,o],[o,r],[r,s],[s,n]].forEach((function(t){var e=uu(l,t),i=e.horizontal,n=e.vertical,o=fu(t,h,n,1,!0),s=fu(t,f,n,1,!0),r=fu(t,p,i,1,!0),y=fu(t,v,i,1,!0);o.isBound&&!b.top&&(g.push(d),b.top=!0),s.isBound&&!b.bottom&&(g.push(d+u),b.bottom=!0),r.isBound&&!b.left&&(m.push(a),b.left=!0),y.isBound&&!b.right&&(m.push(a+c),b.right=!0)})),{horizontal:g,vertical:m}}(t),c=d.vertical,u=d.horizontal;c.forEach((function(t){Vr(n,(function(e){var i=e.type,n=e.pos;return"bounds"===i&&n===t}))>=0||n.push({type:"bounds",pos:t})})),u.forEach((function(t){Vr(o,(function(e){var i=e.type,n=e.pos;return"bounds"===i&&n===t}))>=0||o.push({type:"bounds",pos:t})}))}var Ju={name:"snappable",props:{snappable:[Boolean,Array],snapContainer:Object,snapCenter:Boolean,snapHorizontal:Boolean,snapVertical:Boolean,snapElement:Boolean,snapGap:Boolean,snapGridWidth:Number,snapGridHeight:Number,isDisplaySnapDigit:Boolean,isDisplayInnerSnapDigit:Boolean,snapDigit:Number,snapThreshold:Number,horizontalGuidelines:Array,verticalGuidelines:Array,elementGuidelines:Array,bounds:Object,innerBounds:Object,snapDistFormat:Function},events:{onSnap:"snap"},css:[":host {\n --bounds-color: #d66;\n}\n.guideline {\n pointer-events: none;\n z-index: 2;\n}\n.guideline.bounds {\n background: #d66;\n background: var(--bounds-color);\n}\n.guideline-group {\n position: absolute;\n top: 0;\n left: 0;\n}\n.guideline-group .size-value {\n position: absolute;\n color: #f55;\n font-size: 12px;\n font-weight: bold;\n}\n.guideline-group.horizontal .size-value {\n transform-origin: 50% 100%;\n transform: translateX(-50%);\n left: 50%;\n bottom: 5px;\n}\n.guideline-group.vertical .size-value {\n transform-origin: 0% 50%;\n top: 50%;\n transform: translateY(-50%);\n left: 5px;\n}\n.guideline.gap {\n background: #f55;\n}\n.size-value.gap {\n color: #f55;\n}\n"],render:function(t,e){var i=t.state,n=i.top,o=i.left,s=i.pos1,r=i.pos2,l=i.pos3,a=i.pos4,d=i.snapRenderInfo,c=i.targetClientRect,u=i.containerClientRect,p=i.is3d,h=i.rootMatrix;if(!d||!Bu(t,""))return[];i.staticGuidelines=iu(t,!1,i.staticGuidelines),i.guidelines=nu(t);var v=p?4:3,f=Math.min(s[0],r[0],l[0],a[0]),g=Math.min(s[1],r[1],l[1],a[1]),m=Jc(h,u,v),b=hc(h,[c.left-m[0],c.top-m[1]],v),y=b[0],x=b[1],_=t.props,w=_.snapThreshold,S=void 0===w?5:w,C=_.snapDigit,k=void 0===C?0:C,E=_.snapDistFormat,A=void 0===E?function(t){return t}:E,L=d.externalPoses||[],q=ic(t.state),T=[],M=[],O=[],R=[],N=[],B=Ud(q),$=B.width,I=B.height,H=B.top,D=B.left,z=B.bottom,P=B.right,F=L.length>0,U=F?Ud(L):{};if(!d.request){if(d.direction&&N.push(function(t,e,i){var n=[];if(i[0]&&i[1])n=[i,[-i[0],i[1]],[i[0],-i[1]]].map((function(t){return Dc(e,t)}));else if(i[0]||i[1])t.props.keepRatio?n=[[-1,-1],[-1,1],[1,-1],[1,1],i].map((function(t){return Dc(e,t)})):(n=Hc(e,i)).length>1&&n.push([(n[0][0]+n[1][0])/2,(n[0][1]+n[1][1])/2]);else for(var o=[e[0],e[1],e[3],e[2],e[0]],s=0;s<4;++s)n.push(o[s]),n.push([(o[s][0]+o[s+1][0])/2,(o[s][1]+o[s+1][1])/2]);return ou(t,n.map((function(t){return t[0]})),n.map((function(t){return t[1]})),!0,1)}(t,q,d.direction)),d.snap){var W=Ud(q);d.center&&(W.middle=(W.top+W.bottom)/2,W.center=(W.left+W.right)/2),N.push(ru(t,W,!0,1))}F&&(d.center&&(U.middle=(U.top+U.bottom)/2,U.center=(U.left+U.right)/2),N.push(ru(t,U,!0,1))),N.forEach((function(t){var e=t.vertical.posInfos,i=t.horizontal.posInfos;T.push.apply(T,e.filter((function(t){return t.guidelineInfos.some((function(t){return!t.guideline.hide}))})).map((function(t){return{type:"snap",pos:t.pos}}))),M.push.apply(M,i.filter((function(t){return t.guidelineInfos.some((function(t){return!t.guideline.hide}))})).map((function(t){return{type:"snap",pos:t.pos}}))),O.push.apply(O,Xu(e)),R.push.apply(R,Xu(i))}))}Ku(t,[D,P],[H,z],T,M),F&&Ku(t,[U.left,U.right],[U.top,U.bottom],T,M,d.externalBounds);var j=Zu(O,"vertical",[o,n],[$,I]),G=Zu(R,"horizontal",[o,n],[$,I]),Y=cd(O,R);rc(t,"onSnap",{guidelines:Y.filter((function(t){return!t.element})),elements:cc(Y.filter((function(t){return t.element})),(function(t){return t.element})),gaps:cd(G,j)},!0);var V=Mu(t,R,0,[o,n],[y,x],[$,I]),X=V.guidelines,Z=V.groups,K=V.gapGuidelines,J=Mu(t,O,1,[o,n],[y,x],[$,I]),Q=J.guidelines,tt=J.groups;return cd(Ru(t,"vertical",cd(G,J.gapGuidelines),A,e),Ru(t,"horizontal",cd(j,K),A,e),qu(t,"horizontal",Z,f,y,$,n,S,k,0,A,e),qu(t,"vertical",tt,g,x,I,o,S,k,1,A,e),Ou(t,"horizontal",X,[o,n],e),Ou(t,"vertical",Q,[o,n],e),Tu(t,"horizontal",M,f,n,$,0,e),Tu(t,"vertical",T,g,o,I,1,e))},dragStart:function(t,e){t.state.snapRenderInfo={request:e.isRequest,snap:!0,center:!0},Nu(t)},drag:function(t){var e=t.state;e.staticGuidelines=iu(t,!1,e.staticGuidelines),e.guidelines=nu(t)},pinchStart:function(t){this.unset(t)},dragEnd:function(t){this.unset(t)},dragControlCondition:function(t,e){return!(!bc(0,e)&&!ap(t,e))||(!e.isRequest&&e.inputEvent?rl(e.inputEvent.target,Ld("snap-control")):void 0)},dragControlStart:function(t){t.state.snapRenderInfo=null,Nu(t)},dragControl:function(t){this.drag(t)},dragControlEnd:function(t){this.unset(t)},dragGroupStart:function(t,e){this.dragStart(t,e)},dragGroup:function(t){this.drag(t)},dragGroupEnd:function(t){this.unset(t)},dragGroupControlStart:function(t){t.state.snapRenderInfo=null,Nu(t)},dragGroupControl:function(t){this.drag(t)},dragGroupControlEnd:function(t){this.unset(t)},unset:function(t){var e=t.state;e.enableSnap=!1,e.staticGuidelines=[],e.guidelines=[],e.snapRenderInfo=null}},Qu={name:"draggable",props:{draggable:Boolean,throttleDrag:Number,throttleDragRotate:Number,startDragRotate:Number,edgeDraggable:Boolean},events:{onDragStart:"dragStart",onDrag:"drag",onDragEnd:"dragEnd",onDragGroupStart:"dragGroupStart",onDragGroup:"dragGroup",onDragGroupEnd:"dragGroupEnd"},render:function(t,e){var i=t.props,n=i.throttleDragRotate,o=i.zoom,s=t.state,r=s.dragInfo,l=s.beforeOrigin;if(!n||!r)return[];var a=r.dist;if(!a[0]&&!a[1])return[];var d=Gd(a),c=el(a,[0,0]);return[e.createElement("div",{className:Ld("line","horizontal","dragline","dashed"),key:"dragRotateGuideline",style:{width:d+"px",transform:"translate("+l[0]+"px, "+l[1]+"px) rotate("+c+"rad) scaleY("+o+")"}})]},dragStart:function(t,e){var i=e.datas,n=e.parentEvent,o=e.parentGesto,s=t.state,r=s.target;if(s.gesto)return!1;s.gesto=o||t.targetGesto;var l=lc(r);i.datas={},i.left=parseFloat(l.left||"")||0,i.top=parseFloat(l.top||"")||0,i.bottom=parseFloat(l.bottom||"")||0,i.right=parseFloat(l.right||"")||0,i.startValue=[0,0],Tc(t,e),Uc(e,"translate"),function(t,e){e.absolutePoses=ic(t.state)}(t,i),i.prevDist=[0,0],i.prevBeforeDist=[0,0],i.isDrag=!1;var a=oc(t,e,dd({set:function(t){i.startValue=t}},Fc(e)));return!1!==(n||rc(t,"onDragStart",a))?(i.isDrag=!0,t.state.dragInfo={startRect:t.getRect(),dist:[0,0]}):(s.gesto=null,i.isPinch=!1),!!i.isDrag&&a},drag:function(t,e){Mc(e,"translate");var i=e.datas,n=e.parentEvent,o=e.parentFlag,s=e.isPinch,r=e.isRequest,l=e.distX,a=e.distY,d=i.isDrag,c=i.prevDist,u=i.prevBeforeDist,p=i.startValue;if(d){var h=t.props,v=h.parentMoveable,f=n?0:h.throttleDrag||0,g=n?0:h.throttleDragRotate||0,m=!1,b=0;if(!n&&g>0&&(l||a)){var y=h.startDragRotate||0,x=ol(y+180*el([0,0],[l,a])/Math.PI,g)-y,_=a*Math.abs(Math.cos((x-90)/180*Math.PI)),w=Gd([l*Math.abs(Math.cos(x/180*Math.PI)),_]);b=x*Math.PI/180,l=w*Math.cos(b),a=w*Math.sin(b)}if(!s&&!n&&!o&&(!g||l||a)){var S=Vu(t,l,a,g,r,i),C=S[0],k=S[1],E=C.isSnap,A=C.isBound,L=C.offset,q=k.isSnap,T=k.isBound;m=E||q||A||T,l+=L,a+=k.offset}i.passDeltaX=l-(i.passDistX||0),i.passDeltaY=a-(i.passDistY||0),i.passDistX=l,i.passDistY=a;var M=ra(Bc({datas:i,distX:l,distY:a}),p),O=ra(Rc({datas:i,distX:l,distY:a}),p);g||m||(sl(O,f),sl(M,f));var R=la(M,p),N=la(O,p),B=la(N,c),$=la(R,u);i.prevDist=N,i.prevBeforeDist=R;var I=i.left+R[0],H=i.top+R[1],D=i.right-R[0],z=i.bottom-R[1],P=Oc(i,"translate("+O[0]+"px, "+O[1]+"px)","translate("+N[0]+"px, "+N[1]+"px)");if(t.state.dragInfo.dist=n?[0,0]:N,n||v||!B.every((function(t){return!t}))||!$.some((function(t){return!t}))){var F=t.state,U=oc(t,e,{transform:P,dist:N,delta:B,translate:O,beforeDist:R,beforeDelta:$,beforeTranslate:M,left:I,top:H,right:D,bottom:z,width:F.width,height:F.height,isPinch:s});return!n&&rc(t,"onDrag",U),U}}},dragEnd:function(t,e){var i=e.parentEvent,n=e.datas,o=e.isDrag;if(t.state.gesto=null,t.state.dragInfo=null,n.isDrag)return n.isDrag=!1,!i&&rc(t,"onDragEnd",sc(t,e,{})),o},dragGroupStart:function(t,e){var i=e.datas,n=e.clientX,o=e.clientY,s=this.dragStart(t,e);if(!s)return!1;var r=Ac(t,this,"dragStart",[n||0,o||0],e,!1),l=rc(t,"onDragGroupStart",dd(dd({},s),{targets:t.props.targets,events:r}));return i.isDrag=!1!==l,!!i.isDrag&&s},dragGroup:function(t,e){if(e.datas.isDrag){var i=this.drag(t,e),n=e.datas,o=Ac(t,this,"drag",[n.passDeltaX,n.passDeltaY],e,!1);if(i){var s=dd({targets:t.props.targets,events:o},i);return rc(t,"onDragGroup",s),s}}},dragGroupEnd:function(t,e){var i=e.isDrag;if(e.datas.isDrag)return this.dragEnd(t,e),Ac(t,this,"dragEnd",[0,0],e,!1),rc(t,"onDragGroupEnd",sc(t,e,{targets:t.props.targets})),i},request:function(t){var e={},i=t.getRect(),n=0,o=0;return{isControl:!1,requestStart:function(){return{datas:e}},request:function(t){return"x"in t?n=t.x-i.left:"deltaX"in t&&(n+=t.deltaX),"y"in t?o=t.y-i.top:"deltaY"in t&&(o+=t.deltaY),{datas:e,distX:n,distY:o}},requestEnd:function(){return{datas:e,isDrag:!0}}}},unset:function(t){t.state.dragInfo=null}};function tp(t,e,i,n){void 0===n&&(n="");var o=t.state,s=o.renderPoses,r=o.rotation,l=o.direction,a=t.props,d=a.renderDirections,c=void 0===d?e:d,u=a.zoom,p={};if(!c)return[];var h=l>0?1:-1,v=!0===c?Cd:c,f=r/Math.PI*180;return v.forEach((function(t){p[t]=!0})),v.map((function(t){var e=kd[t];if(!e||!p[t])return null;var o=(ol(f,15)+h*Ed[t]+720)%180;return i.createElement("div",{className:Ld("control","direction",t,n),"data-rotation":o,"data-direction":t,key:"direction-"+t,style:Xd.apply(void 0,cd([r,u],e.map((function(t){return s[t]}))))})}))}function ep(t,e,i,n,o,s){for(var r=[],l=6;l<arguments.length;l++)r[l-6]=arguments[l];var a=el(i,n),d=e?ol(a/Math.PI*180,15)%180:-1;return t.createElement("div",{key:"line"+s,className:Ld.apply(void 0,cd(["line","direction",e],r)),"data-rotation":d,"data-line-index":s,"data-direction":e,style:Vd(i,n,o,a)})}function ip(t,e){return tp(t,Cd,e)}function np(t,e){return tp(t,["nw","ne","sw","se"],e)}function op(t,e,i,n,o,s){var r=t.state.is3d?4:3,l=Pd(t.state.rootMatrix,o,r),a=ra([s.left,s.top],l);e.startAbsoluteOrigin=a,e.prevDeg=el(a,[i,n])/Math.PI*180,e.prevSnapDeg=e.prevDeg,e.startDeg=e.prevDeg,e.loop=0}function sp(t,e,i,n,o,s){var r=i.prevDeg,l=Gu(t,e,i.origin,n);return i.prevDeg=l,[l-r,l,s+l]}function rp(t,e,i,n,o,s,r,l){var a=i.prevDeg,d=i.prevSnapDeg,c=i.startDeg,u=i.loop;a>n&&a>270&&n<90?++i.loop:a<n&&a<90&&n>270&&--i.loop;var p=i.loop,h=360*u+d-c+s,v=360*p+n-c+s;i.prevDeg=v-360*p+c-s;var f=o*((v=ol(v,r))-s);return l&&(v=(f=Gu(t,e,i.origin,f))/o+s),i.prevSnapDeg=v-360*p+c-s,[o*(v-h),f,s+f]}function lp(t,e,i,n,o,s,r,l){return rp(t,e,i,el(i.startAbsoluteOrigin,[o,s])/Math.PI*180,n,r,l,!0)}function ap(t,e){if(e.isRequest)return"rotatable"===e.requestAble;var i=e.inputEvent.target;if(rl(i,Ld("rotation-control")))return!0;var n=t.props.rotationTarget;return!!n&&_c(n,!0).some((function(t){return!!t&&(i===t||i.contains(t))}))}var dp={name:"rotatable",canPinch:!0,props:{rotatable:Boolean,rotationPosition:String,throttleRotate:Number,renderDirections:Object,rotationTarget:Object},events:{onRotateStart:"rotateStart",onRotate:"rotate",onRotateEnd:"rotateEnd",onRotateGroupStart:"rotateGroupStart",onRotateGroup:"rotateGroup",onRotateGroupEnd:"rotateGroupEnd"},css:[".rotation {\n position: absolute;\n height: 40px;\n width: 1px;\n transform-origin: 50% 100%;\n height: calc(40px * var(--zoom));\n top: auto;\n left: 0;\n bottom: 100%;\n will-change: transform;\n }\n .rotation .rotation-line {\n display: block;\n width: 100%;\n height: 100%;\n transform-origin: 50% 50%;\n }\n .rotation .rotation-control {\n border-color: #4af;\n border-color: var(--moveable-color);\n background:#fff;\n cursor: alias;\n }"],render:function(t,e){var i=t.props,n=i.rotatable,o=i.rotationPosition,s=i.zoom,r=i.renderDirections,l=t.state,a=l.renderPoses,d=l.direction;if(!n)return null;var c=function(t,e,i){var n=e[0],o=e[1],s=e[2],r=e[3];if("none"!==t){var l=(t||"top").split("-"),a=l[0],d=l[1],c=[n,o];"left"===a?c=[s,n]:"right"===a?c=[o,r]:"bottom"===a&&(c=[r,s]);var u=[(c[0][0]+c[1][0])/2,(c[0][1]+c[1][1])/2],p=Kd(c,i);if(d){var h="top"===d||"left"===d,v="bottom"===a||"left"===a;u=c[h&&!v||!h&&v?0:1]}return[u,p]}}(o,a,d),u=[];if(c){var p=c[0],h=c[1];u.push(e.createElement("div",{key:"rotation",className:Ld("rotation"),style:{transform:"translate(-50%) translate("+p[0]+"px, "+p[1]+"px) rotate("+h+"rad)"}},e.createElement("div",{className:Ld("line rotation-line"),style:{transform:"scaleX("+s+")"}}),e.createElement("div",{className:Ld("control rotation-control"),style:{transform:"translate(0.5px) scale("+s+")"}})))}return r&&u.push.apply(u,tp(t,[],e)),u},dragControlCondition:ap,dragControlStart:function(t,e){var i=e.datas,n=e.clientX,o=e.clientY,s=e.parentRotate,r=e.parentFlag,l=e.isPinch,a=e.isRequest,d=t.state,c=d.target,u=d.left,p=d.top,h=d.origin,v=d.beforeOrigin,f=d.direction,g=d.beforeDirection,m=d.targetTransform,b=d.moveableClientRect;if(!a&&!c)return!1;var y=t.getRect();if(i.rect=y,i.transform=m,i.left=u,i.top=p,i.fixedPosition=Xc(t,Vc(t)),i.absoluteInfo={origin:y.origin,startValue:y.rotation},op(t,i.absoluteInfo,n,o,h,b),a||l||r){var x=s||0;i.beforeInfo={origin:y.beforeOrigin,prevDeg:x,startDeg:x,prevSnapDeg:x,loop:0},i.afterInfo={origin:y.origin,prevDeg:x,startDeg:x,prevSnapDeg:x,loop:0}}else i.beforeInfo={origin:y.beforeOrigin},i.afterInfo={origin:y.origin},op(t,i.beforeInfo,n,o,v,b),op(t,i.afterInfo,n,o,h,b);i.direction=f,i.beforeDirection=g,i.startValue=0,i.datas={},Uc(e,"rotate");var _=oc(t,e,dd(dd({set:function(t){i.startValue=t*Math.PI/180}},Fc(e)),{dragStart:Qu.dragStart(t,(new kc).dragStart([0,0],e))})),w=rc(t,"onRotateStart",_);return i.isRotate=!1!==w,t.state.snapRenderInfo={request:e.isRequest},!!i.isRotate&&_},dragControl:function(t,e){var i,n,o,s,r,l,a,d,c,u=e.datas,p=e.clientX,h=e.clientY,v=e.parentRotate,f=e.parentFlag,g=e.isPinch,m=e.groupDelta,b=u.beforeDirection,y=u.beforeInfo,x=u.afterInfo,_=u.absoluteInfo,w=u.isRotate,S=u.startValue,C=u.rect;if(w){Mc(e,"rotate");var k,E,A,L,q,T,M,O,R,N=b*function(t){return jd(t.datas.beforeTransform,[50,50],100,100).direction}(e),B=t.props,$=B.throttleRotate,I=void 0===$?0:$,H=B.parentMoveable,D=180/Math.PI*S,z=_.startValue;if(!f&&"parentDist"in e){var P=e.parentDist;k=(i=sp(t,C,x,P,0,D))[0],E=i[1],A=i[2],L=(n=sp(t,C,y,P,0,D))[0],q=n[1],T=n[2],M=(o=sp(t,C,_,P,0,z))[0],O=o[1],R=o[2]}else g||f?(k=(s=rp(t,C,x,v,N,D,I))[0],E=s[1],A=s[2],L=(r=rp(t,C,y,v,b,D,I))[0],q=r[1],T=r[2],M=(l=rp(t,C,_,v,N,z,I))[0],O=l[1],R=l[2]):(k=(a=lp(t,C,x,N,p,h,D,I))[0],E=a[1],A=a[2],L=(d=lp(t,C,y,b,p,h,D,I))[0],q=d[1],T=d[2],M=(c=lp(t,C,_,N,p,h,z,I))[0],O=c[1],R=c[2]);if(M||k||L||H){var F=Oc(u,"rotate("+A+"deg)","rotate("+E+"deg)"),U=function(t,e,i,n){return Yc(t,"rotate("+e+"deg)",Vc(t),i,n)}(t,E,u.fixedPosition,u),W=la(ra(m||[0,0],U),u.prevInverseDist||[0,0]);u.prevInverseDist=U;var j=oc(t,e,dd({delta:k,dist:E,rotate:A,beforeDist:q,beforeDelta:L,beforeRotate:T,absoluteDist:O,absoluteDelta:M,absoluteRotate:R,isPinch:!!g},Gc(t,F,W,g,e)));return rc(t,"onRotate",j),j}}},dragControlEnd:function(t,e){var i=e.datas,n=e.isDrag;return!!i.isRotate&&(i.isRotate=!1,rc(t,"onRotateEnd",sc(t,e,{})),n)},dragGroupControlCondition:ap,dragGroupControlStart:function(t,e){var i=e.datas,n=t.state,o=n.left,s=n.top,r=n.beforeOrigin,l=this.dragControlStart(t,e);if(!l)return!1;l.set(i.beforeDirection*t.rotation);var a=Lc(t,this,"dragControlStart",e,(function(t,e){var i=t.state,n=i.left,l=i.top,a=i.beforeOrigin,d=ra(la([n,l],[o,s]),la(a,r));return e.datas.groupClient=d,dd(dd({},e),{parentRotate:0})})),d=rc(t,"onRotateGroupStart",dd(dd({},l),{targets:t.props.targets,events:a}));return i.isRotate=!1!==d,!!i.isRotate&&l},dragGroupControl:function(t,e){var i=e.datas;if(i.isRotate){var n=this.dragControl(t,e);if(n){var o=i.beforeDirection,s=n.beforeDist,r=n.beforeDelta/180*Math.PI,l=Lc(t,this,"dragControl",e,(function(t,e){var i=e.datas.groupClient,n=i[0],l=i[1],a=va([n,l],r*o),d=a[0],c=a[1],u=[d-n,c-l];return e.datas.groupClient=[d,c],dd(dd({},e),{parentRotate:s,groupDelta:u})}));t.rotation=o*n.beforeRotate;var a=dd({targets:t.props.targets,events:l,set:function(e){t.rotation=e}},n);return rc(t,"onRotateGroup",a),a}}},dragGroupControlEnd:function(t,e){var i=e.isDrag;if(e.datas.isRotate)return this.dragControlEnd(t,e),Lc(t,this,"dragControlEnd",e),rc(t,"onRotateGroupEnd",sc(t,e,{targets:t.props.targets})),i},request:function(t){var e={},i=0,n=t.getRotation();return{isControl:!0,requestStart:function(){return{datas:e}},request:function(t){return"deltaRotate"in t?i+=t.deltaRotate:"rotate"in t&&(i=t.rotate-n),{datas:e,parentDist:i}},requestEnd:function(){return{datas:e,isDrag:!0}}}}},cp={name:"resizable",ableGroup:"size",canPinch:!0,props:{resizable:Boolean,throttleResize:Number,renderDirections:Array,keepRatio:Boolean},events:{onResizeStart:"resizeStart",onResize:"resize",onResizeEnd:"resizeEnd",onResizeGroupStart:"resizeGroupStart",onResizeGroup:"resizeGroup",onResizeGroupEnd:"resizeGroupEnd"},render:function(t,e){var i=t.props,n=i.resizable,o=i.edge;if(n)return o?np(t,e):ip(t,e)},dragControlCondition:bc,dragControlStart:function(t,e){var i,n=e.inputEvent,o=e.isPinch,s=e.parentDirection,r=e.datas,l=e.parentFlag,a=s||(o?[0,0]:tc(n.target)),d=t.state,c=d.target,u=d.width,p=d.height;if(!a||!c)return!1;!o&&Tc(t,e),r.datas={},r.direction=a,r.startOffsetWidth=u,r.startOffsetHeight=p,r.prevWidth=0,r.prevHeight=0,i=function(t){var e=lc(t);return[parseFloat(e.width),parseFloat(e.height)]}(c),r.startWidth=i[0],r.startHeight=i[1];var h=[Math.max(0,u-r.startWidth),Math.max(0,p-r.startHeight)];if(r.minSize=h,r.maxSize=[1/0,1/0],!l){var v=lc(c),f=v.position,g=v.minWidth,m=v.minHeight,b=v.maxWidth,y=v.maxHeight,x="static"===f||"relative"===f,_=x?c.parentElement:c.offsetParent,w=u,S=p;if(_&&(w=_.clientWidth,S=_.clientHeight,x)){var C=lc(_);w-=parseFloat(C.paddingLeft)||0,S-=parseFloat(C.paddingTop)||0}r.minSize=ra([Kr(g,w)||0,Kr(m,S)||0],h),r.maxSize=ra([Kr(b,w)||1/0,Kr(y,S)||1/0],h)}var k=t.props.transformOrigin||"% %";function E(t){r.ratio=t&&isFinite(t)?t:0}function A(e){r.fixedDirection=e,r.fixedPosition=Kc(t,e)}r.transformOrigin=k&&Ir(k)?k.split(" "):k,r.isWidth=!a[0]&&!a[1]||a[0]||!a[1],E(u/p),A([-a[0],-a[1]]);var L=oc(t,e,{direction:a,set:function(t){var e=t[0],i=t[1];r.startWidth=e,r.startHeight=i},setMin:function(t){r.minSize=t},setMax:function(t){r.maxSize=[t[0]||1/0,t[1]||1/0]},setRatio:E,setFixedDirection:A,setOrigin:function(t){r.transformOrigin=t},dragStart:Qu.dragStart(t,(new kc).dragStart([0,0],e))});return!1!==rc(t,"onResizeStart",L)&&(r.isResize=!0,t.state.snapRenderInfo={request:e.isRequest,direction:a}),!!r.isResize&&L},dragControl:function(t,e){var i,n=e.datas,o=e.distX,s=e.distY,r=e.parentFlag,l=e.isPinch,a=e.parentDistance,d=e.parentScale,c=e.parentKeepRatio,u=e.dragClient,p=e.parentDist,h=e.isRequest,v=n.isResize,f=n.transformOrigin,g=n.fixedDirection,m=n.startWidth,b=n.startHeight,y=n.prevWidth,x=n.prevHeight,_=n.minSize,w=n.maxSize,S=n.ratio,C=n.isWidth,k=n.startOffsetWidth,E=n.startOffsetHeight;if(v){var A=t.props,L=A.throttleResize,q=void 0===L?0:L,T=A.parentMoveable,M=A.snapThreshold,O=void 0===M?5:M,R=n.direction,N=R,B=0,$=0;R[0]||R[1]||(N=[1,1]);var I=S&&(t.props.keepRatio||c),H=u;if(u||(H=!r&&l?Kc(t,[0,0]):n.fixedPosition),p)B=p[0],$=p[1],I&&(B?$||($=B/S):B=$*S);else if(d)B=(d[0]-1)*k,$=(d[1]-1)*E;else if(l)a&&(B=a,$=a*E/k);else{var D=$c({datas:n,distX:o,distY:s});if(B=N[0]*D[0],$=N[1]*D[1],I&&k&&E){var z=el([0,0],D),P=el([0,0],N),F=Gd([B,$]),U=Math.cos(z-P)*F;if(N[0])if(N[1]){var W=2*N[0]*k,j=2*N[1]*E,G=Gd([W+D[0],j+D[1]])-Gd([W,j]),Y=el([0,0],[S,1]);B=Math.cos(Y)*G,$=Math.sin(Y)*G}else $=(B=U)*S;else B=($=U)/S}else if(!I){var V=cd(R);k||(D[0]<0?V[0]=-1:D[0]>0&&(V[0]=1)),E||(D[1]<0?V[1]=-1:D[1]>0&&(V[1]=1)),R=V,B=(N=V)[0]*D[0],$=N[1]*D[1]}}var X=N[0]||I?Math.max(k+B,xd):k,Z=N[1]||I?Math.max(E+$,xd):E;I&&k&&E&&(C?Z=X/S:X=Z*S);var K=[0,0];if(l||(K=function(t,e,i,n,o,s,r){if(!Bu(t,"resizable"))return[0,0];var l=t.state,a=l.allMatrix,d=l.is3d;return ju(t,(function(t,s){return Iu(a,e+t,i+s,o,n,d)}),e,i,n,o,s,r)}(t,X,Z,R,H,h,n)),p&&(!p[0]&&(K[0]=0),!p[1]&&(K[1]=0)),I){N[0]&&N[1]&&K[0]&&K[1]&&(Math.abs(K[0])>Math.abs(K[1])?K[1]=0:K[0]=0);var J=!K[0]&&!K[1];J&&(C?X=ol(X,q):Z=ol(Z,q)),N[0]&&!N[1]||K[0]&&!K[1]||J&&C?Z=(X+=K[0])/S:(!N[0]&&N[1]||!K[0]&&K[1]||J&&!C)&&(X=(Z+=K[1])*S)}else k+B<-O&&(K[0]=0),k+$<-O&&(K[1]=0),X+=K[0],Z+=K[1],K[0]||(X=ol(X,q)),K[1]||(Z=ol(Z,q));X=(i=Qr([X,Z],_,w,I))[0],Z=i[1];var Q=[(B=(X=Math.round(X))-k)-y,($=(Z=Math.round(Z))-E)-x];n.prevWidth=B,n.prevHeight=$;var tt=Zc(t,X,Z,g,H,f);if(T||!Q.every((function(t){return!t}))||!tt.every((function(t){return!t}))){var et=oc(t,e,{width:m+B,height:b+$,offsetWidth:X,offsetHeight:Z,direction:R,dist:[B,$],delta:Q,isPinch:!!l,drag:Qu.drag(t,Cc(e,t.state,tt,!!l,!1))});return rc(t,"onResize",et),et}}},dragControlAfter:function(t,e){var i=e.datas,n=i.isResize,o=i.startOffsetWidth,s=i.startOffsetHeight,r=i.prevWidth,l=i.prevHeight;if(n){var a=t.state,d=a.width-(o+r),c=a.height-(s+l),u=Math.abs(d)>3,p=Math.abs(c)>3;return u&&(i.startWidth+=d,i.startOffsetWidth+=d,i.prevWidth+=d),p&&(i.startHeight+=c,i.startOffsetHeight+=c,i.prevHeight+=c),u||p?(this.dragControl(t,e),!0):void 0}},dragControlEnd:function(t,e){var i=e.datas,n=e.isDrag;return!!i.isResize&&(i.isResize=!1,rc(t,"onResizeEnd",sc(t,e,{})),n)},dragGroupControlCondition:bc,dragGroupControlStart:function(t,e){var i=e.datas,n=this.dragControlStart(t,e);if(!n)return!1;var o=Ec(t,"resizable",e);function s(e,n){var o=i.fixedDirection,s=i.fixedPosition,r=Kc(e,o),l=da(ma(-t.rotation/180*Math.PI,3),[r[0]-s[0],r[1]-s[1],1],3),a=l[0],d=l[1];return n.datas.originalX=a,n.datas.originalY=d,n}var r=Lc(t,this,"dragControlStart",e,(function(t,e){return s(t,e)})),l=dd(dd({},n),{targets:t.props.targets,events:r,setFixedDirection:function(e){n.setFixedDirection(e),r.forEach((function(i,n){i.setFixedDirection(e),s(t.moveables[n],o[n])}))}}),a=rc(t,"onResizeGroupStart",l);return i.isResize=!1!==a,!!i.isResize&&n},dragGroupControl:function(t,e){var i=e.datas;if(i.isResize){var n=this.dragControl(t,e);if(n){var o=n.offsetWidth,s=n.offsetHeight,r=n.dist,l=t.props.keepRatio,a=[o/(o-r[0]),s/(s-r[1])],d=i.fixedPosition,c=Lc(t,this,"dragControl",e,(function(e,i){var n=da(ma(t.rotation/180*Math.PI,3),[i.datas.originalX*a[0],i.datas.originalY*a[1],1],3),o=n[0],s=n[1];return dd(dd({},i),{parentDist:null,parentScale:a,dragClient:ra(d,[o,s]),parentKeepRatio:l})})),u=dd({targets:t.props.targets,events:c},n);return rc(t,"onResizeGroup",u),u}}},dragGroupControlEnd:function(t,e){var i=e.isDrag;if(e.datas.isResize)return this.dragControlEnd(t,e),Lc(t,this,"dragControlEnd",e),rc(t,"onResizeGroupEnd",sc(t,e,{targets:t.props.targets})),i},request:function(t){var e={},i=0,n=0,o=t.getRect();return{isControl:!0,requestStart:function(t){return{datas:e,parentDirection:t.direction||[1,1]}},request:function(t){return"offsetWidth"in t?i=t.offsetWidth-o.offsetWidth:"deltaWidth"in t&&(i+=t.deltaWidth),"offsetHeight"in t?n=t.offsetHeight-o.offsetHeight:"deltaHeight"in t&&(n+=t.deltaHeight),{datas:e,parentDist:[i,n]}},requestEnd:function(){return{datas:e,isDrag:!0}}}}},up={name:"scalable",ableGroup:"size",canPinch:!0,props:{scalable:Boolean,throttleScale:Number,renderDirections:String,keepRatio:Boolean},events:{onScaleStart:"scaleStart",onScale:"scale",onScaleEnd:"scaleEnd",onScaleGroupStart:"scaleGroupStart",onScaleGroup:"scaleGroup",onScaleGroupEnd:"scaleGroupEnd"},render:function(t,e){var i=t.props,n=i.resizable,o=i.scalable,s=i.edge;if(!n&&o)return s?np(t,e):ip(t,e)},dragControlCondition:bc,dragControlStart:function(t,e){var i=e.datas,n=e.isPinch,o=e.inputEvent,s=e.parentDirection||(n?[0,0]:tc(o.target)),r=t.state,l=r.width,a=r.height,d=r.targetTransform,c=r.target,u=r.pos1,p=r.pos2,h=r.pos4;if(!s||!c)return!1;n||Tc(t,e),i.datas={},i.transform=d,i.prevDist=[1,1],i.direction=s,i.width=l,i.height=a,i.startValue=[1,1];var v=nl(u,p),f=nl(p,h),g=!s[0]&&!s[1]||s[0]||!s[1];function m(t){i.ratio=t&&isFinite(t)?t:0}function b(e){i.fixedDirection=e,i.fixedPosition=Kc(t,e)}i.scaleWidth=v,i.scaleHeight=f,i.scaleXRatio=v/l,i.scaleYRatio=f/a,Uc(e,"scale"),i.isWidth=g,m(nl(u,p)/nl(p,h)),b([-s[0],-s[1]]);var y=oc(t,e,dd(dd({direction:s,set:function(t){i.startValue=t},setRatio:m,setFixedDirection:b},Fc(e)),{dragStart:Qu.dragStart(t,(new kc).dragStart([0,0],e))}));return!1!==rc(t,"onScaleStart",y)&&(i.isScale=!0,t.state.snapRenderInfo={request:e.isRequest,direction:s}),!!i.isScale&&y},dragControl:function(t,e){Mc(e,"scale");var i=e.datas,n=e.distX,o=e.distY,s=e.parentScale,r=e.parentDistance,l=e.parentKeepRatio,a=e.parentFlag,d=e.isPinch,c=e.dragClient,u=e.parentDist,p=e.isRequest,h=i.prevDist,v=i.direction,f=i.width,g=i.height,m=i.isScale,b=i.startValue,y=i.isWidth,x=i.ratio,_=i.fixedDirection,w=i.scaleXRatio,S=i.scaleYRatio;if(!m)return!1;var C=t.props,k=C.throttleScale,E=C.parentMoveable,A=v;v[0]||v[1]||(A=[1,1]);var L=x&&(t.props.keepRatio||l),q=t.state,T=1,M=1,O=c;if(c||(O=!a&&d?Kc(t,[0,0]):i.fixedPosition),u)T=(f+u[0])/f,M=(g+u[1])/g;else if(s)T=s[0],M=s[1];else if(d)r&&(T=(f+r)/f,M=(g+r*g/f)/g);else{var R=$c({datas:i,distX:n,distY:o}),N=A[0]*R[0]*w,B=A[1]*R[1]*S;if(L&&f&&g)if(A[0])if(A[1]){var $=Gd([N,B]),I=el([0,0],R),H=el([0,0],A),D=Math.cos(I-H)*$,z=el([0,0],[x,1]);N=Math.cos(z)*D,B=Math.sin(z)*D}else B=N/x;else N=B*x;T=(f+N/w)/f,M=(g+B/S)/g}T=A[0]||L?T*b[0]:b[0],M=A[1]||L?M*b[1]:b[1],0===T&&(T=(h[0]>0?1:-1)*_d),0===M&&(M=(h[1]>0?1:-1)*_d);var P=[T/b[0],M/b[1]],F=[T,M];if(!d&&t.props.groupable){var U=(q.snapRenderInfo||{}).direction;$r(U)&&(U[0]||U[1])&&(q.snapRenderInfo={direction:v,request:e.isRequest})}var W=[0,0];if(d||(W=Yu(t,P,v,p,i)),L){A[0]&&A[1]&&W[0]&&W[1]&&(Math.abs(W[0]*f)>Math.abs(W[1]*g)?W[1]=0:W[0]=0);var j=!W[0]&&!W[1];if(j&&(y?P[0]=ol(P[0]*b[0],k)/b[0]:P[1]=ol(P[1]*b[1],k)/b[1]),A[0]&&!A[1]||W[0]&&!W[1]||j&&y){P[0]+=W[0];var G=f*P[0]*b[0]/x;P[1]=G/g/b[1]}else if(!A[0]&&A[1]||!W[0]&&W[1]||j&&!y){P[1]+=W[1];var Y=g*P[1]*b[1]*x;P[0]=Y/f/b[0]}}else P[0]+=W[0],P[1]+=W[1],W[0]||(P[0]=ol(P[0]*b[0],k)/b[0]),W[1]||(P[1]=ol(P[1]*b[1],k)/b[1]);0===P[0]&&(P[0]=(h[0]>0?1:-1)*_d),0===P[1]&&(P[1]=(h[1]>0?1:-1)*_d);var V,X,Z=[P[0]/h[0],P[1]/h[1]];X=b,F=[(V=P)[0]*X[0],V[1]*X[1]];var K=function(t,e,i,n,o){return Yc(t,"scale("+e.join(", ")+")",i,n,o)}(t,P,_,O,i),J=la(K,i.prevInverseDist||[0,0]);if(i.prevDist=P,i.prevInverseDist=K,T===h[0]&&M===h[1]&&J.every((function(t){return!t}))&&!E)return!1;var Q=Oc(i,"scale("+F.join(", ")+")","scale("+P.join(", ")+")"),tt=oc(t,e,dd({offsetWidth:f,offsetHeight:g,direction:v,scale:F,dist:P,delta:Z,isPinch:!!d},Gc(t,Q,J,d,e)));return rc(t,"onScale",tt),tt},dragControlEnd:function(t,e){var i=e.datas,n=e.isDrag;return!!i.isScale&&(i.isScale=!1,rc(t,"onScaleEnd",sc(t,e,{})),n)},dragGroupControlCondition:bc,dragGroupControlStart:function(t,e){var i=e.datas,n=this.dragControlStart(t,e);if(!n)return!1;var o=Ec(t,"resizable",e);function s(e,n){var o=i.fixedDirection,s=i.fixedPosition,r=Kc(e,o),l=da(ma(-t.rotation/180*Math.PI,3),[r[0]-s[0],r[1]-s[1],1],3),a=l[0],d=l[1];return n.datas.originalX=a,n.datas.originalY=d,n}i.moveableScale=t.scale;var r=Lc(t,this,"dragControlStart",e,(function(t,e){return s(t,e)})),l=dd(dd({},n),{targets:t.props.targets,events:r,setFixedDirection:function(e){n.setFixedDirection(e),r.forEach((function(i,n){i.setFixedDirection(e),s(t.moveables[n],o[n])}))}}),a=rc(t,"onScaleGroupStart",l);return i.isScale=!1!==a,!!i.isScale&&l},dragGroupControl:function(t,e){var i=e.datas;if(i.isScale){var n=this.dragControl(t,e);if(n){var o=i.moveableScale;t.scale=[n.scale[0]*o[0],n.scale[1]*o[1]];var s=t.props.keepRatio,r=n.dist,l=n.scale,a=i.fixedPosition,d=Lc(t,this,"dragControl",e,(function(e,i){var n=da(ma(t.rotation/180*Math.PI,3),[i.datas.originalX*r[0],i.datas.originalY*r[1],1],3),o=n[0],d=n[1];return dd(dd({},i),{parentDist:null,parentScale:l,parentKeepRatio:s,dragClient:ra(a,[o,d])})})),c=dd({targets:t.props.targets,events:d},n);return rc(t,"onScaleGroup",c),c}}},dragGroupControlEnd:function(t,e){var i=e.isDrag;if(e.datas.isScale)return this.dragControlEnd(t,e),Lc(t,this,"dragControlEnd",e),rc(t,"onScaleGroupEnd",sc(t,e,{targets:t.props.targets})),i},request:function(){var t={},e=0,i=0;return{isControl:!0,requestStart:function(e){return{datas:t,parentDirection:e.direction||[1,1]}},request:function(n){return e+=n.deltaWidth,i+=n.deltaHeight,{datas:t,parentDist:[e,i]}},requestEnd:function(){return{datas:t,isDrag:!0}}}}};function pp(t,e){return t.map((function(t,i){return n=t,o=e[i],(n*(r=2)+o*(s=1))/(s+r);var n,o,s,r}))}function hp(t,e,i){var n=el(t,e),o=el(t,i)-n;return o>=0?o:o+2*Math.PI}var vp={name:"warpable",ableGroup:"size",props:{warpable:Boolean,renderDirections:Array},events:{onWarpStart:"warpStart",onWarp:"warp",onWarpEnd:"warpEnd"},render:function(t,e){var i=t.props,n=i.resizable,o=i.scalable,s=i.warpable,r=i.zoom;if(n||o||!s)return[];var l=t.state,a=l.pos1,d=l.pos2,c=l.pos3,u=l.pos4,p=pp(a,d),h=pp(d,a),v=pp(a,c),f=pp(c,a),g=pp(c,u),m=pp(u,c),b=pp(d,u),y=pp(u,d);return cd([e.createElement("div",{className:Ld("line"),key:"middeLine1",style:Vd(p,g,r)}),e.createElement("div",{className:Ld("line"),key:"middeLine2",style:Vd(h,m,r)}),e.createElement("div",{className:Ld("line"),key:"middeLine3",style:Vd(v,b,r)}),e.createElement("div",{className:Ld("line"),key:"middeLine4",style:Vd(f,y,r)})],ip(t,e))},dragControlCondition:function(t,e){return!e.isRequest&&rl(e.inputEvent.target,Ld("direction"))},dragControlStart:function(t,e){var i=e.datas,n=e.inputEvent,o=t.props.target,s=tc(n.target);if(!s||!o)return!1;var r=t.state,l=r.transformOrigin,a=r.is3d,d=r.targetTransform,c=r.targetMatrix,u=r.width,p=r.height,h=r.left,v=r.top;return i.datas={},i.targetTransform=d,i.warpTargetMatrix=a?c:na(c,3,4),i.targetInverseMatrix=ta(ea(i.warpTargetMatrix,4),3,4),i.direction=s,i.left=h,i.top=v,i.poses=[[0,0],[u,0],[0,p],[u,p]].map((function(t){return la(t,l)})),i.nextPoses=i.poses.map((function(t){var e=t[0],n=t[1];return da(i.warpTargetMatrix,[e,n,0,1],4)})),i.startValue=ba(4),i.prevMatrix=ba(4),i.absolutePoses=ic(r),i.posIndexes=Ic(s),Tc(t,e),Uc(e,"matrix3d"),r.snapRenderInfo={request:e.isRequest,direction:s},!1!==rc(t,"onWarpStart",oc(t,e,dd({set:function(t){i.startValue=t}},Fc(e))))&&(i.isWarp=!0),i.isWarp},dragControl:function(t,e){var i=e.datas,n=e.isRequest,o=e.distX,s=e.distY,r=i.targetInverseMatrix,l=i.prevMatrix,a=i.isWarp,d=i.startValue,c=i.poses,u=i.posIndexes,p=i.absolutePoses;if(!a)return!1;if(Mc(e,"matrix3d"),Bu(t,"warpable")){var h=u.map((function(t){return p[t]}));h.length>1&&h.push([(h[0][0]+h[1][0])/2,(h[0][1]+h[1][1])/2]);var v=Pu(t,n,h.map((function(t){return[t[0]+o,t[1]+s]}))),f=v.horizontal,g=v.vertical;s-=f.offset,o-=g.offset}var m=$c({datas:i,distX:o,distY:s},!0),b=i.nextPoses.slice();if(u.forEach((function(t){b[t]=ra(b[t],m)})),!bd.every((function(t){return e=t.map((function(t){return c[t]})),i=t.map((function(t){return b[t]})),n=hp(e[0],e[1],e[2]),o=hp(i[0],i[1],i[2]),s=Math.PI,!(n>=s&&o<=s||n<=s&&o>=s);var e,i,n,o,s})))return!1;var y=_a(c[0],c[2],c[1],c[3],b[0],b[2],b[1],b[3]);if(!y.length)return!1;var x=Nc(i,sa(r,y,4),!0),_=sa(ea(l,4),x,4);i.prevMatrix=x;var w=sa(d,x,4),S=Oc(i,"matrix3d("+w.join(", ")+")","matrix3d("+x.join(", ")+")");return jc(e,S),rc(t,"onWarp",oc(t,e,{delta:_,matrix:w,dist:x,multiply:sa,transform:S})),!0},dragControlEnd:function(t,e){var i=e.datas,n=e.isDrag;return!!i.isWarp&&(i.isWarp=!1,rc(t,"onWarpEnd",sc(t,e,{})),n)}},fp=Ld("area-pieces"),gp=Ld("area-piece"),mp=Ld("avoid");function bp(t){var e=t.areaElement,i=t.state,n=i.width,o=i.height;!function(t,e){if(t.classList)t.classList.remove(e);else{var i=new RegExp("(\\s|^)"+e+"(\\s|$)");t.className=t.className.replace(i," ")}}(e,mp),e.style.cssText+="left: 0px; top: 0px; width: "+n+"px; height: "+o+"px"}function yp(t){return t.createElement("div",{key:"area_pieces",className:fp},t.createElement("div",{className:gp}),t.createElement("div",{className:gp}),t.createElement("div",{className:gp}),t.createElement("div",{className:gp}))}var xp={name:"dragArea",props:{dragArea:Boolean,passDragArea:Boolean},events:{onClick:"click",onClickGroup:"clickGroup"},render:function(t,e){var i=t.props,n=i.target,o=i.dragArea,s=i.groupable,r=i.passDragArea,l=t.state,a=l.width,d=l.height,c=l.renderPoses,u=r?Ld("area","pass"):Ld("area");if(s)return[e.createElement("div",{key:"area",ref:xr(t,"areaElement"),className:u}),yp(e)];if(!n||!o)return[];var p=_a([0,0],[a,0],[0,d],[a,d],c[0],c[1],c[2],c[3]),h=p.length?Hd(p,!0):"none";return[e.createElement("div",{key:"area",ref:xr(t,"areaElement"),className:u,style:{top:"0px",left:"0px",width:a+"px",height:d+"px",transformOrigin:"0 0",transform:h}}),yp(e)]},dragStart:function(t,e){var i=e.datas,n=e.clientX,o=e.clientY;if(!e.inputEvent)return!1;i.isDragArea=!1;var s,r,l=t.areaElement,a=t.state,d=a.moveableClientRect,c=a.renderPoses,u=a.rootMatrix,p=a.is3d,h=d.left,v=d.top,f=Ud(c),g=f.left,m=f.top,b=f.width,y=f.height,x=hc(u,[n-h,o-v],p?4:3),_=x[0],w=x[1],S=[{left:g,top:m,width:b,height:(w-=m)-10},{left:g,top:m,width:(_-=g)-10,height:y},{left:g,top:m+w+10,width:b,height:y-w-10},{left:g+_+10,top:m,width:b-_-10,height:y}],C=[].slice.call(l.nextElementSibling.children);S.forEach((function(t,e){C[e].style.cssText="left: "+t.left+"px;top: "+t.top+"px; width: "+t.width+"px; height: "+t.height+"px;"})),r=mp,(s=l).classList?s.classList.add(r):s.className+=" "+r,a.disableNativeEvent=!0},drag:function(t,e){var i=e.datas,n=e.inputEvent;if(this.enableNativeEvent(t),!n)return!1;i.isDragArea||(i.isDragArea=!0,bp(t))},dragEnd:function(t,e){this.enableNativeEvent(t);var i=e.inputEvent,n=e.datas;if(!i)return!1;n.isDragArea||bp(t)},dragGroupStart:function(t,e){return this.dragStart(t,e)},dragGroup:function(t,e){return this.drag(t,e)},dragGroupEnd:function(t,e){return this.dragEnd(t,e)},unset:function(t){bp(t),t.state.disableNativeEvent=!1},enableNativeEvent:function(t){var e=t.state;e.disableNativeEvent&&requestAnimationFrame((function(){e.disableNativeEvent=!1}))}},_p=ud("origin",{render:function(t,e){var i=t.props.zoom,n=t.state,o=n.beforeOrigin,s=n.rotation;return[e.createElement("div",{className:Ld("control","origin"),style:Xd(s,i,o),key:"beforeOrigin"})]}});function wp(t){var e=t.scrollContainer;return[e.scrollLeft,e.scrollTop]}var Sp={name:"scrollable",canPinch:!0,props:{scrollable:Boolean,scrollContainer:Object,scrollThreshold:Number,getScrollPosition:Function},events:{onScroll:"scroll",onScrollGroup:"scrollGroup"},dragStart:function(t,e){var i=t.props.scrollContainer,n=void 0===i?t.getContainer():i,o=new Pa,s=xc(n,!0);e.datas.dragScroll=o;var r=e.isControl?"controlGesto":"targetGesto",l=e.targets;o.on("scroll",(function(i){var n=i.container,o=i.direction,s=oc(t,e,{scrollContainer:n,direction:o}),r=l?"onScrollGroup":"onScroll";l&&(s.targets=l),rc(t,r,s)})).on("move",(function(i){var n=i.offsetX,o=i.offsetY;t[r].scrollBy(n,o,e.inputEvent,!1)})),o.dragStart(e,{container:s})},checkScroll:function(t,e){var i=e.datas.dragScroll;if(i){var n=t.props,o=n.scrollContainer,s=void 0===o?t.getContainer():o,r=n.scrollThreshold,l=void 0===r?0:r,a=n.getScrollPosition,d=void 0===a?wp:a;return i.drag(e,{container:s,threshold:l,getScrollPosition:function(t){return d({scrollContainer:t.container,direction:t.direction})}}),!0}},drag:function(t,e){return this.checkScroll(t,e)},dragEnd:function(t,e){e.datas.dragScroll.dragEnd(),e.datas.dragScroll=null},dragControlStart:function(t,e){return this.dragStart(t,dd(dd({},e),{isControl:!0}))},dragControl:function(t,e){return this.drag(t,e)},dragControlEnd:function(t,e){return this.dragEnd(t,e)},dragGroupStart:function(t,e){return this.dragStart(t,dd(dd({},e),{targets:t.props.targets}))},dragGroup:function(t,e){return this.drag(t,dd(dd({},e),{targets:t.props.targets}))},dragGroupEnd:function(t,e){return this.dragEnd(t,dd(dd({},e),{targets:t.props.targets}))},dragGroupControlStart:function(t,e){return this.dragStart(t,dd(dd({},e),{targets:t.props.targets,isControl:!0}))},dragGroupContro:function(t,e){return this.drag(t,dd(dd({},e),{targets:t.props.targets}))},dragGroupControEnd:function(t,e){return this.dragEnd(t,dd(dd({},e),{targets:t.props.targets}))}},Cp={name:"",props:{target:Object,dragTarget:Object,container:Object,portalContainer:Object,rootContainer:Object,zoom:Number,transformOrigin:Array,edge:Boolean,ables:Array,className:String,pinchThreshold:Number,pinchOutside:Boolean,triggerAblesSimultaneously:Boolean,checkInput:Boolean,cspNonce:String,translateZ:Number,props:Object},events:{}},kp=ud("padding",{render:function(t,e){var i=t.props;if(i.dragArea)return[];var n=i.padding||{},o=n.left,s=void 0===o?0:o,r=n.top,l=void 0===r?0:r,a=n.right,d=void 0===a?0:a,c=n.bottom,u=void 0===c?0:c,p=t.state,h=p.renderPoses,v=[p.pos1,p.pos2,p.pos3,p.pos4],f=[];return s>0&&f.push([0,2]),l>0&&f.push([0,1]),d>0&&f.push([1,3]),u>0&&f.push([2,3]),f.map((function(t,i){var n=t[0],o=t[1],s=_a([0,0],[100,0],[0,100],[100,100],v[n],v[o],h[n],h[o]);if(s.length)return e.createElement("div",{key:"padding"+i,className:Ld("padding"),style:{transform:Hd(s,!0)}})}))}}),Ep=["nw","ne","se","sw"];function Ap(t,e){var i=t[0]+t[1],n=i>e?e/i:1;return t[0]*=n,t[1]=e-t[1]*n,t}var Lp=[1,2,5,6],qp=[0,3,4,7],Tp=[1,-1,-1,1],Mp=[1,1,-1,-1];function Op(t,e,i,n,o,s,r,l,a){void 0===s&&(s=0),void 0===r&&(r=0),void 0===l&&(l=n),void 0===a&&(a=o);var d=[],c=!1,u=t.map((function(t,u){var p=e[u],h=p.horizontal,v=p.vertical;if(v&&!c&&(c=!0,d.push("/")),c){var f=Math.max(0,1===v?t[1]-r:a-t[1]);return d.push(gc(f,o,i)),f}f=Math.max(0,1===h?t[0]-s:l-t[0]);return d.push(gc(f,n,i)),f}));return{styles:d,raws:u}}function Rp(t){for(var e=[0,0],i=[0,0],n=t.length,o=0;o<n;++o){var s=t[o];s.sub&&(s.horizontal&&(0===e[1]&&(e[0]=o),e[1]=o-e[0]+1,i[0]=o+1),s.vertical&&(0===i[1]&&(i[0]=o),i[1]=o-i[0]+1))}return{horizontalRange:e,verticalRange:i}}function Np(t,e,i,n,o,s){var r,l,a,d;void 0===s&&(s=[0,0]);var c=t.indexOf("/"),u=(c>-1?t.slice(0,c):t).length,p=t.slice(0,u),h=t.slice(u+1),v=p[0],f=void 0===v?"0px":v,g=p[1],m=void 0===g?f:g,b=p[2],y=void 0===b?f:b,x=p[3],_=void 0===x?m:x,w=h[0],S=void 0===w?f:w,C=h[1],k=void 0===C?S:C,E=h[2],A=void 0===E?S:E,L=h[3],q=void 0===L?k:L,T=[f,m,y,_].map((function(t){return Kr(t,e)})),M=[S,k,A,q].map((function(t){return Kr(t,i)})),O=T.slice(),R=M.slice();r=Ap([O[0],O[1]],e),O[0]=r[0],O[1]=r[1],l=Ap([O[3],O[2]],e),O[3]=l[0],O[2]=l[1],a=Ap([R[0],R[3]],i),R[0]=a[0],R[3]=a[1],d=Ap([R[1],R[2]],i),R[1]=d[0],R[2]=d[1];var N=O.slice(0,Math.max(s[0],p.length)),B=R.slice(0,Math.max(s[1],h.length));return cd(N.map((function(t,e){var s=Ep[e];return{horizontal:Tp[e],vertical:0,pos:[n+t,o+(-1===Mp[e]?i:0)],sub:!0,raw:T[e],direction:s}})),B.map((function(t,i){var s=Ep[i];return{horizontal:0,vertical:Mp[i],pos:[n+(-1===Tp[i]?e:0),o+t],sub:!0,raw:M[i],direction:s}})))}function Bp(t,e,i,n,o){void 0===o&&(o=e.length);var s=Rp(t.slice(n)),r=s.horizontalRange,l=s.verticalRange,a=i-n,d=0;if(0===a)d=o;else if(a>0&&a<r[1])d=r[1]-a;else{if(!(a>=l[0]))return;d=l[0]+l[1]-a}t.splice(i,d),e.splice(i,d)}function $p(t,e,i,n,o,s,r,l,a,d,c){void 0===d&&(d=0),void 0===c&&(c=0);var u=Rp(t.slice(i)),p=u.horizontalRange,h=u.verticalRange;if(n>-1)for(var v=1===Tp[n]?s-d:l-s,f=p[1];f<=n;++f){var g=1===Mp[f]?c:a,m=0;if(n===f?m=s:0===f?m=d+v:-1===Tp[f]&&(m=l-(e[i][0]-d)),t.splice(i+f,0,{horizontal:Tp[f],vertical:0,pos:[m,g]}),e.splice(i+f,0,[m,g]),0===f)break}else if(o>-1){var b=1===Mp[o]?r-c:a-r;if(0===p[1]&&0===h[1]){var y=[d+b,c];t.push({horizontal:Tp[0],vertical:0,pos:y}),e.push(y)}var x=h[0];for(f=h[1];f<=o;++f){m=1===Tp[f]?d:l,g=0;if(o===f?g=r:0===f?g=c+b:1===Mp[f]?g=e[i+x][1]:-1===Mp[f]&&(g=a-(e[i+x][1]-c)),t.push({horizontal:0,vertical:Mp[f],pos:[m,g]}),e.push([m,g]),0===f)break}}}function Ip(t,e){return void 0===e&&(e=t.map((function(t){return t.raw}))),{horizontals:t.map((function(t,i){return t.horizontal?e[i]:null})).filter((function(t){return null!=t})),verticals:t.map((function(t,i){return t.vertical?e[i]:null})).filter((function(t){return null!=t}))}}var Hp=[[0,-1,"n"],[1,0,"e"]],Dp=[[-1,-1,"nw"],[0,-1,"n"],[1,-1,"ne"],[1,0,"e"],[1,1,"se"],[0,1,"s"],[-1,1,"sw"],[-1,0,"w"]];function zp(t,e,i){var n=t.props.clipRelative,o=t.state,s=o.width,r=o.height,l=e,a=l.type,d=l.poses,c="rect"===a,u="circle"===a;if("polygon"===a)return i.map((function(t){return gc(t[0],s,n)+" "+gc(t[1],r,n)}));if(c||"inset"===a){var p=i[1][1],h=i[3][0],v=i[7][0],f=i[5][1];if(c)return[p,h,f,v].map((function(t){return t+"px"}));var g=[p,s-h,r-f,v].map((function(t,e){return gc(t,e%2?s:r,n)}));if(i.length>8){var m=la(i[4],i[0]),b=m[0],y=m[1];g.push.apply(g,cd(["round"],Op(i.slice(8),d.slice(8),n,b,y,v,p,h,f).styles))}return g}if(u||"ellipse"===a){var x=i[0],_=gc(Math.abs(i[1][1]-x[1]),u?Math.sqrt((s*s+r*r)/2):r,n);return(g=u?[_]:[gc(Math.abs(i[2][0]-x[0]),s,n),_]).push("at",gc(x[0],s,n),gc(x[1],r,n)),g}}function Pp(t,e,i,n){var o=[n,(n+e)/2,e],s=[t,(t+i)/2,i];return Dp.map((function(t){var e=t[0],i=t[1],n=t[2],r=o[e+1],l=s[i+1];return{vertical:Math.abs(i),horizontal:Math.abs(e),direction:n,pos:[r,l]}}))}function Fp(t,e,i,n,o){var s,r,l,a,d,c,u,p=o;if(!p){var h=lc(t),v=h.clipPath;p="none"!==v?v:h.clip}if(p&&"none"!==p&&"auto"!==p||(p=n)){var f=Wr(p),g=f.prefix,m=void 0===g?p:g,b=f.value,y=void 0===b?"":b,x="circle"===m,_=" ";if("polygon"===m)return _=",",{type:m,clipText:p,poses:M=(E=Ur(y||"0% 0%, 100% 0%, 100% 100%, 0% 100%")).map((function(t){var n=t.split(" "),o=n[0],s=n[1];return{vertical:1,horizontal:1,pos:[Kr(o,e),Kr(s,i)]}})),splitter:_};if(x||"ellipse"===m){var w="",S="",C=0,k=0,E=Fr(y);if(x){var A;A=void 0===(s=E[0])?"50%":s,w=void 0===(r=E[2])?"50%":r,S=void 0===(l=E[3])?"50%":l,C=Kr(A,Math.sqrt((e*e+i*i)/2)),k=C}else{var L,q;L=void 0===(a=E[0])?"50%":a,q=void 0===(d=E[1])?"50%":d,w=void 0===(c=E[3])?"50%":c,S=void 0===(u=E[4])?"50%":u,C=Kr(L,e),k=Kr(q,i)}var T=[Kr(w,e),Kr(S,i)],M=cd([{vertical:1,horizontal:1,pos:T,direction:"nesw"}],Hp.slice(0,x?1:2).map((function(t){return{vertical:Math.abs(t[1]),horizontal:t[0],direction:t[2],sub:!0,pos:[T[0]+t[0]*C,T[1]+t[1]*k]}})));return{type:m,clipText:p,radiusX:C,radiusY:k,left:T[0]-C,top:T[1]-k,poses:M,splitter:_}}if("inset"===m){var O=(E=Fr(y||"0 0 0 0")).indexOf("round"),R=(O>-1?E.slice(0,O):E).length,N=E.slice(R+1),B=E.slice(0,R),$=B[0],I=B[1],H=void 0===I?$:I,D=B[2],z=void 0===D?$:D,P=B[3],F=void 0===P?H:P,U=[$,z].map((function(t){return Kr(t,i)})),W=U[0],j=U[1],G=[F,H].map((function(t){return Kr(t,e)})),Y=G[0],V=G[1],X=e-V,Z=i-j,K=Np(N,X-Y,Z-W,Y,W);return{type:"inset",clipText:p,poses:M=cd(Pp(W,X,Z,Y),K),top:W,left:Y,right:X,bottom:Z,radius:N,splitter:_}}if("rect"===m){_=",";var J=(E=Ur(y||"0px, "+e+"px, "+i+"px, 0px")).map((function(t){return jr(t).value}));return{type:"rect",clipText:p,poses:M=Pp(W=J[0],V=J[1],j=J[2],Y=J[3]),top:W,right:V,bottom:j,left:Y,values:E,splitter:_}}}}var Up={name:"clippable",props:{clippable:Boolean,defaultClipPath:String,customClipPath:String,clipRelative:Boolean,clipArea:Boolean,dragWithClip:Boolean,clipTargetBounds:Boolean,clipVerticalGuidelines:Array,clipHorizontalGuidelines:Array,clipSnapThreshold:Boolean},events:{onClipStart:"clipStart",onClip:"clip",onClipEnd:"clipEnd"},css:[".control.clip-control {\n background: #6d6;\n cursor: pointer;\n}\n.control.clip-control.clip-radius {\n background: #d66;\n}\n.line.clip-line {\n background: #6e6;\n cursor: move;\n z-index: 1;\n}\n.clip-area {\n position: absolute;\n top: 0;\n left: 0;\n}\n.clip-ellipse {\n position: absolute;\n cursor: move;\n border: 1px solid #6d6;\n border: var(--zoompx) solid #6d6;\n border-radius: 50%;\n transform-origin: 0px 0px;\n}",":host {\n --bounds-color: #d66;\n}",".guideline {\n pointer-events: none;\n z-index: 2;\n}",".line.guideline.bounds {\n background: #d66;\n background: var(--bounds-color);\n}"],render:function(t,e){var i=t.props,n=i.customClipPath,o=i.defaultClipPath,s=i.clipArea,r=i.zoom,l=t.state,a=l.target,d=l.width,c=l.height,u=l.allMatrix,p=l.is3d,h=l.left,v=l.top,f=l.pos1,g=l.pos2,m=l.pos3,b=l.pos4,y=l.clipPathState,x=l.snapBoundInfos;if(!a)return[];var _=Fp(a,d,c,o||"inset",y||n);if(!_)return[];var w=p?4:3,S=_.type,C=_.poses.map((function(t){var e=Pd(u,t.pos,w);return[e[0]-h,e[1]-v]})),k=[],E=[],A="rect"===S,L="inset"===S,q="polygon"===S;if(A||L||q){var T=L?C.slice(0,8):C;E=T.map((function(t,i){var n=0===i?T[T.length-1]:T[i-1],o=el(n,t),s=Yd(n,t);return e.createElement("div",{key:"clipLine"+i,className:Ld("line","clip-line","snap-control"),"data-clip-index":i,style:{width:s+"px",transform:"translate("+n[0]+"px, "+n[1]+"px) rotate("+o+"rad) scaleY("+r+")"}})}))}if(k=C.map((function(t,i){return e.createElement("div",{key:"clipControl"+i,className:Ld("control","clip-control","snap-control"),"data-clip-index":i,style:{transform:"translate("+t[0]+"px, "+t[1]+"px) scale("+r+")"}})})),L&&k.push.apply(k,C.slice(8).map((function(t,i){return e.createElement("div",{key:"clipRadiusControl"+i,className:Ld("control","clip-control","clip-radius","snap-control"),"data-clip-index":8+i,style:{transform:"translate("+t[0]+"px, "+t[1]+"px) scale("+r+")"}})}))),"circle"===S||"ellipse"===S){var M=_.left,O=_.top,R=_.radiusX,N=_.radiusY,B=la(Pd(u,[M,O],w),Pd(u,[0,0],w)),$=B[0],I=B[1],H="none";if(!s){for(var D=Math.max(10,R/5,N/5),z=[],P=0;P<=D;++P){var F=2*Math.PI/D*P;z.push([R+(R-r)*Math.cos(F),N+(N-r)*Math.sin(F)])}z.push([R,-2]),z.push([-2,-2]),z.push([-2,2*N+2]),z.push([2*R+2,2*N+2]),z.push([2*R+2,-2]),z.push([R,-2]),H="polygon("+z.map((function(t){return t[0]+"px "+t[1]+"px"})).join(", ")+")"}k.push(e.createElement("div",{key:"clipEllipse",className:Ld("clip-ellipse","snap-control"),style:{width:2*R+"px",height:2*N+"px",clipPath:H,transform:"translate("+(-h+$)+"px, "+(-v+I)+"px) "+Hd(u)}}))}if(s){var U=Ud(cd([f,g,m,b],C)),W=U.width,j=U.height,G=U.left,Y=U.top;if(q||A||L){z=L?C.slice(0,8):C;k.push(e.createElement("div",{key:"clipArea",className:Ld("clip-area","snap-control"),style:{width:W+"px",height:j+"px",transform:"translate("+G+"px, "+Y+"px)",clipPath:"polygon("+z.map((function(t){return t[0]-G+"px "+(t[1]-Y)+"px"})).join(", ")+")"}}))}}return x&&["vertical","horizontal"].forEach((function(t){var i=x[t],n="horizontal"===t;i.isSnap&&E.push.apply(E,i.snap.posInfos.map((function(i,o){var s=i.pos,l=la(Pd(u,n?[0,s]:[s,0],w),[h,v]),a=la(Pd(u,n?[d,s]:[s,c],w),[h,v]);return ep(e,"",l,a,r,"clip"+t+"snap"+o,"guideline")}))),i.isBound&&E.push.apply(E,i.bounds.map((function(i,o){var s=i.pos,l=la(Pd(u,n?[0,s]:[s,0],w),[h,v]),a=la(Pd(u,n?[d,s]:[s,c],w),[h,v]);return ep(e,"",l,a,r,"clip"+t+"bounds"+o,"guideline","bounds","bold")})))})),cd(k,E)},dragControlCondition:function(t,e){return e.inputEvent&&(e.inputEvent.target.getAttribute("class")||"").indexOf("clip")>-1},dragStart:function(t,e){var i=t.props.dragWithClip;return!(void 0===i||i)&&this.dragControlStart(t,e)},drag:function(t,e){return this.dragControl(t,e)},dragEnd:function(t,e){return this.dragControlEnd(t,e)},dragControlStart:function(t,e){var i=t.state,n=t.props,o=n.defaultClipPath,s=n.customClipPath,r=i.target,l=i.width,a=i.height,d=e.inputEvent?e.inputEvent.target:null,c=d?d.getAttribute("class"):"",u=e.datas,p=Fp(r,l,a,o||"inset",s);if(!p)return!1;var h=p.clipText;return!1===rc(t,"onClipStart",oc(t,e,{clipType:p.type,clipStyle:h,poses:p.poses.map((function(t){return t.pos}))}))?(u.isClipStart=!1,!1):(u.isControl=c.indexOf("clip-control")>-1,u.isLine=c.indexOf("clip-line")>-1,u.isArea=c.indexOf("clip-area")>-1||c.indexOf("clip-ellipse")>-1,u.index=d?parseInt(d.getAttribute("data-clip-index"),10):-1,u.clipPath=p,u.isClipStart=!0,i.clipPathState=h,Tc(t,e),!0)},dragControl:function(t,e){var i=e.datas,n=e.originalDatas;if(!i.isClipStart)return!1;var o=n&&n.draggable||{},s=i,r=s.isControl,l=s.isLine,a=s.isArea,d=s.index,c=s.clipPath;if(!c)return!1;var u=o.isDrag?o.prevDist:$c(e),p=u[0],h=u[1],v=t.props,f=t.state,g=f.width,m=f.height,b=!a&&!r&&!l,y=c.type,x=c.poses,_=c.splitter,w=x.map((function(t){return t.pos}));b&&(p=-p,h=-h);var S=!r||"nesw"===x[d].direction,C="inset"===y||"rect"===y,k=x.map((function(){return[0,0]}));if(r&&!S){var E=x[d],A=E.horizontal,L=E.vertical,q=[p*Math.abs(A),h*Math.abs(L)];k=function(t,e,i,n){var o=t[e],s=o.direction,r=o.sub,l=t.map((function(){return[0,0]})),a=s?s.split(""):[];if(n&&e<8){var d=a.filter((function(t){return"w"===t||"e"===t}))[0],c=a.filter((function(t){return"n"===t||"s"===t}))[0];l[e]=i,t.forEach((function(t,e){var n=t.direction;n&&(n.indexOf(d)>-1&&(l[e][0]=i[0]),n.indexOf(c)>-1&&(l[e][1]=i[1]))})),d&&(l[1][0]=i[0]/2,l[5][0]=i[0]/2),c&&(l[3][1]=i[1]/2,l[7][1]=i[1]/2)}else s&&!r?a.forEach((function(e){var n="n"===e||"s"===e;t.forEach((function(t,o){var s=t.direction,r=t.horizontal,a=t.vertical;s&&-1!==s.indexOf(e)&&(l[o]=[n||!r?0:i[0],n&&a?i[1]:0])}))})):l[e]=i;return l}(x,d,q,C)}else S&&(k=w.map((function(){return[p,h]})));var T=w.map((function(t,e){return ra(t,k[e])})),M=cd(T);f.snapBoundInfos=null;var O="circle"===c.type,R="ellipse"===c.type;if(O||R){var N=Ud(T),B=Math.abs(N.bottom-N.top),$=Math.abs(R?N.right-N.left:B),I=T[0][1]+B,H=T[0][0]-$,D=T[0][0]+$;O&&(M.push([D,N.bottom]),k.push([1,0])),M.push([N.left,I]),k.push([0,1]),M.push([H,N.bottom]),k.push([1,0])}var z=tu((v.clipHorizontalGuidelines||[]).map((function(t){return Kr(""+t,m)})),(v.clipVerticalGuidelines||[]).map((function(t){return Kr(""+t,g)})),g,m),P=[],F=[];if(O||R)P=[M[4][0],M[2][0]],F=[M[1][1],M[3][1]];else if(C){var U=[M[0],M[2],M[4],M[6]],W=[k[0],k[2],k[4],k[6]];P=U.filter((function(t,e){return W[e][0]})).map((function(t){return t[0]})),F=U.filter((function(t,e){return W[e][1]})).map((function(t){return t[1]}))}else P=M.filter((function(t,e){return k[e][0]})).map((function(t){return t[0]})),F=M.filter((function(t,e){return k[e][1]})).map((function(t){return t[1]}));for(var j=function(t){var e=Fu(z,v.clipTargetBounds&&{left:0,top:0,right:g,bottom:m},P,F,{snapThreshold:5}),i=e.horizontal,n=e.vertical,o=i.offset,s=n.offset;if(!R&&!O||0!==k[0][0]||0!==k[0][1])return M.forEach((function(t,e){var i=k[e];i[0]&&(t[0]-=s),i[1]&&(t[1]-=o)})),"break";var r=Ud(T),l=r.bottom-r.top,a=R?r.right-r.left:l;a-=n.isBound?Math.abs(s):0===n.snapIndex?-s:s,l-=i.isBound?Math.abs(o):0===i.snapIndex?-o:o,O&&(a=l=du(n,i)>0?l:a);var d=M[0];M[1][1]=d[1]-l,M[2][0]=d[0]+a,M[3][1]=d[1]+l,M[4][0]=d[0]-a},G=0;G<2;++G){if("break"===j())break}var Y=zp(t,c,T),V=y+"("+Y.join(_)+")";if(f.clipPathState=V,O||R)P=[M[4][0],M[2][0]],F=[M[1][1],M[3][1]];else if(C){U=[M[0],M[2],M[4],M[6]];P=U.map((function(t){return t[0]})),F=U.map((function(t){return t[1]}))}else P=M.map((function(t){return t[0]})),F=M.map((function(t){return t[1]}));return f.snapBoundInfos=Fu(z,v.clipTargetBounds&&{left:0,top:0,right:g,bottom:m},P,F,{snapThreshold:1}),rc(t,"onClip",oc(t,e,{clipEventType:"changed",clipType:y,poses:T,clipStyle:V,clipStyles:Y,distX:p,distY:h})),!0},dragControlEnd:function(t,e){this.unset(t);var i=e.isDrag,n=e.datas,o=e.isDouble,s=n.isLine,r=n.isClipStart,l=n.isControl;return!!r&&(rc(t,"onClipEnd",sc(t,e,{})),o&&(l?function(t,e){var i=e.datas,n=i.clipPath,o=i.index,s=n,r=s.type,l=s.poses,a=s.splitter,d=l.map((function(t){return t.pos})),c=d.length;if("polygon"===r)l.splice(o,1),d.splice(o,1);else{if("inset"!==r)return;if(o<8)return;if(Bp(l,d,o,8,c),c===l.length)return}var u=zp(t,n,d);rc(t,"onClip",oc(t,e,{clipEventType:"removed",clipType:r,poses:d,clipStyles:u,clipStyle:r+"("+u.join(a)+")",distX:0,distY:0}))}(t,e):s&&function(t,e){var i=qc(t,e),n=i[0],o=i[1],s=e.datas,r=s.clipPath,l=s.index,a=r,d=a.type,c=a.poses,u=a.splitter,p=c.map((function(t){return t.pos}));if("polygon"===d)p.splice(l,0,[n,o]);else{if("inset"!==d)return;var h=Lp.indexOf(l),v=qp.indexOf(l),f=c.length;if($p(c,p,8,h,v,n,o,p[4][0],p[4][1],p[0][0],p[0][1]),f===c.length)return}var g=zp(t,r,p);rc(t,"onClip",oc(t,e,{clipEventType:"added",clipType:d,poses:p,clipStyles:g,clipStyle:d+"("+g.join(u)+")",distX:0,distY:0}))}(t,e)),o||i)},unset:function(t){t.state.clipPathState="",t.state.snapBoundInfos=null}},Wp={name:"originDraggable",props:{originDraggable:Boolean,originRelative:Boolean},events:{onDragOriginStart:"dragOriginStart",onDragOrigin:"dragOrigin",onDragOriginEnd:"dragOriginEnd"},css:[":host[data-able-origindraggable] .control.origin {\n pointer-events: auto;\n}"],dragControlCondition:function(t,e){return e.isRequest?"originDraggable"===e.requestAble:rl(e.inputEvent.target,Ld("origin"))},dragControlStart:function(t,e){var i=e.datas;Tc(t,e);var n=oc(t,e,{dragStart:Qu.dragStart(t,(new kc).dragStart([0,0],e))}),o=rc(t,"onDragOriginStart",n);return i.startOrigin=t.state.transformOrigin,i.startTargetOrigin=t.state.targetOrigin,i.prevOrigin=[0,0],i.isDragOrigin=!0,!1===o?(i.isDragOrigin=!1,!1):n},dragControl:function(t,e){var i=e.datas,n=e.isPinch,o=e.isRequest;if(!i.isDragOrigin)return!1;var s=$c(e),r=s[0],l=s[1],a=t.state,d=a.width,c=a.height,u=a.offsetMatrix,p=a.targetMatrix,h=a.is3d,v=t.props.originRelative,f=void 0===v||v,g=h?4:3,m=[r,l];if(o){var b=e.distOrigin;(b[0]||b[1])&&(m=b)}var y=ra(i.startOrigin,m),x=ra(i.startTargetOrigin,m),_=la(m,i.prevOrigin),w=zc(u,p,y,g),S=t.getRect(),C=Ud(Fd(w,d,c,g)),k=[S.left-C.left,S.top-C.top];i.prevOrigin=m;var E=oc(t,e,{width:d,height:c,origin:y,dist:m,delta:_,transformOrigin:[gc(x[0],d,f),gc(x[1],c,f)].join(" "),drag:Qu.drag(t,Cc(e,t.state,k,!!n,!1))});return rc(t,"onDragOrigin",E),E},dragControlEnd:function(t,e){return!!e.datas.isDragOrigin&&(rc(t,"onDragOriginEnd",sc(t,e,{})),!0)},dragGroupControlCondition:function(t,e){return this.dragControlCondition(t,e)},dragGroupControlStart:function(t,e){return!!this.dragControlStart(t,e)},dragGroupControl:function(t,e){var i=this.dragControl(t,e);return!!i&&(t.transformOrigin=i.transformOrigin,!0)},request:function(t){var e={},i=t.getRect(),n=0,o=0,s=i.transformOrigin,r=[0,0];return{isControl:!0,requestStart:function(){return{datas:e}},request:function(t){return"deltaOrigin"in t?(r[0]+=t.deltaOrigin[0],r[1]+=t.deltaOrigin[1]):"origin"in t?(r[0]=t.origin[0]-s[0],r[1]=t.origin[1]-s[1]):("x"in t?n=t.x-i.left:"deltaX"in t&&(n+=t.deltaX),"y"in t?o=t.y-i.top:"deltaY"in t&&(o+=t.deltaY)),{datas:e,distX:n,distY:o,distOrigin:r}},requestEnd:function(){return{datas:e,isDrag:!0}}}}};function jp(t,e,i,n,o){var s;void 0===n&&(n=[0,0]);if(o)s=o;else{var r=lc(t);s=r&&r.borderRadius||""}return Np(!s||!o&&"0px"===s?[]:Fr(s),e,i,0,0,n)}function Gp(t,e,i,n,o,s){var r=t.state,l=r.width,a=r.height,d=Op(s,o,t.props.roundRelative,l,a),c=d.raws,u=d.styles,p=Ip(o,c),h=p.horizontals,v=p.verticals,f=u.join(" ");r.borderRadiusState=f,rc(t,"onRound",oc(t,e,{horizontals:h,verticals:v,borderRadius:f,width:l,height:a,delta:n,dist:i}))}var Yp={name:"roundable",props:{roundable:Boolean,roundRelative:Boolean,minRoundControls:Array,maxRoundControls:Array,roundClickable:Boolean},events:{onRoundStart:"roundStart",onRound:"round",onRoundEnd:"roundEnd"},css:[".control.border-radius {\n background: #d66;\n cursor: pointer;\n}",":host[data-able-roundable] .line.direction {\n cursor: pointer;\n}"],render:function(t,e){var i=t.state,n=i.target,o=i.width,s=i.height,r=i.allMatrix,l=i.is3d,a=i.left,d=i.top,c=i.borderRadiusState,u=t.props,p=u.minRoundControls,h=void 0===p?[0,0]:p,v=u.maxRoundControls,f=void 0===v?[4,4]:v,g=u.zoom;if(!n)return null;var m=l?4:3,b=jp(n,o,s,h,c);if(!b)return null;var y=0,x=0;return b.map((function(t,i){x+=Math.abs(t.horizontal),y+=Math.abs(t.vertical);var n=la(Pd(r,t.pos,m),[a,d]),o=t.vertical?y<=f[1]:x<=f[0];return e.createElement("div",{key:"borderRadiusControl"+i,className:Ld("control","border-radius"),"data-radius-index":i,style:{display:o?"block":"none",transform:"translate("+n[0]+"px, "+n[1]+"px) scale("+g+")"}})}))},dragControlCondition:function(t,e){if(!e.inputEvent||e.isRequest)return!1;var i=e.inputEvent.target.getAttribute("class")||"";return i.indexOf("border-radius")>-1||i.indexOf("moveable-line")>-1&&i.indexOf("moveable-direction")>-1},dragControlStart:function(t,e){var i=e.inputEvent,n=e.datas,o=i.target,s=o.getAttribute("class")||"",r=s.indexOf("border-radius")>-1,l=s.indexOf("moveable-line")>-1&&s.indexOf("moveable-direction")>-1,a=r?parseInt(o.getAttribute("data-radius-index"),10):-1,d=l?parseInt(o.getAttribute("data-line-index"),10):-1;if(!r&&!l)return!1;if(!1===rc(t,"onRoundStart",oc(t,e,{})))return!1;n.lineIndex=d,n.controlIndex=a,n.isControl=r,n.isLine=l,Tc(t,e);var c=t.props,u=c.roundRelative,p=c.minRoundControls,h=void 0===p?[0,0]:p,v=t.state,f=v.target,g=v.width,m=v.height;n.isRound=!0,n.prevDist=[0,0];var b=jp(f,g,m,h)||[];return n.controlPoses=b,v.borderRadiusState=Op(b.map((function(t){return t.pos})),b,u,g,m).styles.join(" "),!0},dragControl:function(t,e){var i=e.datas;if(!i.isRound||!i.isControl||!i.controlPoses.length)return!1;var n=i.controlIndex,o=i.controlPoses,s=$c(e),r=s[0],l=s[1],a=[r,l],d=la(a,i.prevDist),c=t.props.maxRoundControls,u=void 0===c?[4,4]:c,p=t.state,h=p.width,v=p.height,f=o[n],g=f.vertical,m=f.horizontal,b=o.map((function(t){var e=t.horizontal,i=t.vertical,n=[e*m*a[0],i*g*a[1]];if(e){if(1===u[0])return n;if(u[0]<4&&e!==m)return n}else{if(0===u[1])return n[1]=i*m*a[0]/h*v,n;if(g){if(1===u[1])return n;if(u[1]<4&&i!==g)return n}}return[0,0]}));b[n]=a;var y=o.map((function(t,e){return ra(t.pos,b[e])}));return i.prevDist=[r,l],Gp(t,e,a,d,o,y),!0},dragControlEnd:function(t,e){var i=t.state;i.borderRadiusState="";var n=e.datas,o=e.isDouble;if(!n.isRound)return!1;var s=i.width,r=i.height,l=n.isControl,a=n.controlIndex,d=n.isLine,c=n.lineIndex,u=n.controlPoses,p=u.map((function(t){return t.pos})),h=p.length,v=t.props.roundClickable;if(o&&(void 0===v||v)){if(l)Bp(u,p,a,0);else if(d){var f=qc(t,e);!function(t,e,i,n,o,s,r){var l=Ip(t),a=l.horizontals,d=l.verticals,c=a.length,u=d.length,p=-1,h=-1;0===i?0===c?p=0:1===c&&(p=1):3===i&&(c<=2?p=2:c<=3&&(p=3)),2===i?0===u?h=0:u<4&&(h=3):1===i&&(u<=1?h=1:u<=2&&(h=2)),$p(t,e,0,p,h,n,o,s,r)}(u,p,c,f[0],f[1],s,r)}h!==u.length&&Gp(t,e,[0,0],[0,0],u,p)}return rc(t,"onRoundEnd",sc(t,e,{})),i.borderRadiusState="",!0},unset:function(t){t.state.borderRadiusState=""}},Vp={isPinch:!0,name:"beforeRenderable",props:{},events:{onBeforeRenderStart:"beforeRenderStart",onBeforeRender:"beforeRender",onBeforeRenderEnd:"beforeRenderEnd",onBeforeRenderGroupStart:"beforeRenderGroupStart",onBeforeRenderGroup:"beforeRenderGroup",onBeforeRenderGroupEnd:"beforeRenderGroupEnd"},setTransform:function(t,e){var i=t.state,n=i.is3d,o=i.target,s=i.targetMatrix,r=null==o?void 0:o.style.transform,l=n?"matrix3d("+s.join(",")+")":"matrix("+aa(s,!0)+")";e.datas.startTransforms=r&&"none"!==r?Fr(r):[l]},resetTransform:function(t,e){e.datas.nextTransforms=e.datas.startTransforms,e.datas.nextTransformAppendedIndexes=[]},fillDragStartParams:function(t,e){return oc(t,e,{setTransform:function(t){e.datas.startTransforms=$r(t)?t:Fr(t)},isPinch:!!e.isPinch})},fillDragParams:function(t,e){return oc(t,e,{isPinch:!!e.isPinch})},dragStart:function(t,e){this.setTransform(t,e),rc(t,"onBeforeRenderStart",this.fillDragStartParams(t,e))},drag:function(t,e){this.resetTransform(t,e),rc(t,"onBeforeRender",oc(t,e,{isPinch:!!e.isPinch}))},dragEnd:function(t,e){rc(t,"onBeforeRenderEnd",oc(t,e,{isPinch:!!e.isPinch,isDrag:e.isDrag}))},dragGroupStart:function(t,e){var i=this;this.dragStart(t,e);var n=Ec(t,"beforeRenderable",e),o=t.moveables,s=n.map((function(t,e){var n=o[e];return i.setTransform(n,t),i.fillDragStartParams(n,t)}));rc(t,"onBeforeRenderGroupStart",oc(t,e,{isPinch:!!e.isPinch,targets:t.props.targets,setTransform:function(){},events:s}))},dragGroup:function(t,e){var i=this;this.drag(t,e);var n=Ec(t,"beforeRenderable",e),o=t.moveables,s=n.map((function(t,e){var n=o[e];return i.resetTransform(n,t),i.fillDragParams(n,t)}));rc(t,"onBeforeRenderGroup",oc(t,e,{isPinch:!!e.isPinch,targets:t.props.targets,events:s}))},dragGroupEnd:function(t,e){this.dragEnd(t,e),rc(t,"onBeforeRenderGroupEnd",oc(t,e,{isPinch:!!e.isPinch,isDrag:e.isDrag,targets:t.props.targets}))},dragControlStart:function(t,e){return this.dragStart(t,e)},dragControl:function(t,e){return this.drag(t,e)},dragControlEnd:function(t,e){return this.dragEnd(t,e)},dragGroupControlStart:function(t,e){return this.dragGroupStart(t,e)},dragGroupControl:function(t,e){return this.dragGroup(t,e)},dragGroupControlEnd:function(t,e){return this.dragGroupEnd(t,e)}},Xp={name:"renderable",props:{},events:{onRenderStart:"renderStart",onRender:"render",onRenderEnd:"renderEnd",onRenderGroupStart:"renderGroupStart",onRenderGroup:"renderGroup",onRenderGroupEnd:"renderGroupEnd"},dragStart:function(t,e){rc(t,"onRenderStart",oc(t,e,{isPinch:!!e.isPinch}))},drag:function(t,e){rc(t,"onRender",oc(t,e,{isPinch:!!e.isPinch}))},dragEnd:function(t,e){rc(t,"onRenderEnd",oc(t,e,{isPinch:!!e.isPinch,isDrag:e.isDrag}))},dragGroupStart:function(t,e){rc(t,"onRenderGroupStart",oc(t,e,{isPinch:!!e.isPinch,targets:t.props.targets}))},dragGroup:function(t,e){rc(t,"onRenderGroup",oc(t,e,{isPinch:!!e.isPinch,targets:t.props.targets}))},dragGroupEnd:function(t,e){rc(t,"onRenderGroupEnd",oc(t,e,{isPinch:!!e.isPinch,isDrag:e.isDrag,targets:t.props.targets}))},dragControlStart:function(t,e){return this.dragStart(t,e)},dragControl:function(t,e){return this.drag(t,e)},dragControlEnd:function(t,e){return this.dragEnd(t,e)},dragGroupControlStart:function(t,e){return this.dragGroupStart(t,e)},dragGroupControl:function(t,e){return this.dragGroup(t,e)},dragGroupControlEnd:function(t,e){return this.dragGroupEnd(t,e)}};function Zp(t,e,i,n,o,s,r){var l="Start"===o,a=t.state.target,d=s.isRequest;if(!a||l&&n.indexOf("Control")>-1&&!d&&t.areaElement===s.inputEvent.target)return!1;var c=""+i+n+o,u=""+i+n+"Condition",p="End"===o,h=o.indexOf("After")>-1,v=l&&(!t.targetGesto||!t.controlGesto||!t.targetGesto.isFlag()||!t.controlGesto.isFlag());v&&t.updateRect(o,!0,!1),""!==o||h||d||vc(t.state,s);var f=cd([Vp],t[e].slice(),[Xp]);if(d){var g=s.requestAble;f.some((function(t){return t.name===g}))||f.push.apply(f,t.props.ables.filter((function(t){return t.name===g})))}if(!f.length)return!1;var m=f.filter((function(t){return t[c]})),b=s.datas;v&&m.forEach((function(e){e.unset&&e.unset(t)}));var y,x=s.inputEvent;p&&x&&(y=document.elementFromPoint(s.clientX,s.clientY)||x.target);var _=m.filter((function(e){var i=e.name,n=b[i]||(b[i]={});return l&&(n.isEventStart=!e[u]||e[u](t,s)),!!n.isEventStart&&e[c](t,dd(dd({},s),{datas:n,originalDatas:b,inputTarget:y}))})).length,w=l&&m.length&&!_;return(p||w)&&(t.state.gesto=null,t.moveables&&t.moveables.forEach((function(t){t.state.gesto=null}))),v&&w&&m.forEach((function(e){e.unset&&e.unset(t)})),!t.isUnmounted&&!w&&((!l&&_&&!r||p)&&(t.updateRect(o,!0,!1),t.forceUpdate()),l||p||h||!_||r||Zp(t,e,i,n,o+"After",s),!0)}function Kp(t,e,i){var n=t.controlBox.getElement(),o=[];o.push(n),t.props.dragArea&&!t.props.dragTarget||o.push(e);var s=function(e){var i=e.inputEvent.target;return i===t.areaElement||!t.isMoveableElement(i)||rl(i,"moveable-area")||rl(i,"moveable-padding")};return Jp(t,o,"targetAbles",i,{dragStart:s,pinchStart:s})}function Jp(t,e,i,n,o){void 0===o&&(o={});var s=t.props,r=s.pinchOutside,l=s.pinchThreshold,a={container:window,pinchThreshold:l,pinchOutside:r},d=new Ja(e,a);return["drag","pinch"].forEach((function(e){["Start","","End"].forEach((function(s){d.on(""+e+s,(function(r){var l=r.eventType;!o[l]||o[l](r)?Zp(t,i,e,n,s,r)||r.stop():r.stop()}))}))})),d}var Qp=function(){function t(t,e,i){var n=this;this.target=t,this.moveable=e,this.eventName=i,this.ables=[],this.onEvent=function(t){var e=n.eventName,i=n.moveable;i.state.disableNativeEvent||n.ables.forEach((function(n){n[e](i,{inputEvent:t})}))},this.target.addEventListener(this.eventName.toLowerCase(),this.onEvent)}var e=t.prototype;return e.setAbles=function(t){this.ables=t},e.destroy=function(){this.target.removeEventListener(this.eventName.toLowerCase(),this.onEvent),this.target=null,this.moveable=null},t}(),th=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.state=dd({container:null,target:null,gesto:null,renderPoses:[[0,0],[0,0],[0,0],[0,0]],disableNativeEvent:!1},Jd(null)),e.enabledAbles=[],e.targetAbles=[],e.controlAbles=[],e.rotation=0,e.scale=[1,1],e.isUnmounted=!1,e.events={mouseEnter:null,mouseLeave:null},e.onPreventClick=function(t){t.stopPropagation(),al(window,"click",e.onPreventClick,!0)},e}ad(e,t);var i=e.prototype;return i.render=function(){var t=this.props,e=this.state,i=t.edge,n=t.parentPosition,o=t.className,s=t.target,r=t.zoom,l=t.cspNonce,a=t.translateZ,d=t.cssStyled,c=t.portalContainer;this.checkUpdate(),this.updateRenderPoses();var u=n||{left:0,top:0},p=u.left,h=u.top,v=e.left,f=e.top,g=e.target,m=e.direction,b=e.renderPoses,y=t.targets,x=(y&&y.length||s)&&g,_=this.isDragging(),w={},S={createElement:_l};return this.getEnabledAbles().forEach((function(t){w["data-able-"+t.name.toLowerCase()]=!0})),_l(d,dd({cspNonce:l,ref:xr(this,"controlBox"),className:Ld("control-box",-1===m?"reverse":"",_?"dragging":"")+" "+o},w,{onClick:this.onPreventClick,portalContainer:c,style:{position:"absolute",display:x?"block":"none",transform:"translate3d("+(v-p)+"px, "+(f-h)+"px, "+a+")","--zoom":r,"--zoompx":r+"px"}}),this.renderAbles(),ep(S,i?"n":"",b[0],b[1],r,0),ep(S,i?"e":"",b[1],b[3],r,1),ep(S,i?"w":"",b[0],b[2],r,2),ep(S,i?"s":"",b[2],b[3],r,3))},i.componentDidMount=function(){this.controlBox.getElement();var t=this.props,e=t.parentMoveable,i=t.container,n=t.wrapperMoveable;this.updateEvent(t),this.updateNativeEvents(t),i||e||n||this.updateRect("",!1,!0),this.updateCheckInput()},i.componentDidUpdate=function(t){this.updateNativeEvents(t),this.updateEvent(t),this.updateCheckInput()},i.componentWillUnmount=function(){this.isUnmounted=!0,nc(this,"targetGesto"),nc(this,"controlGesto");var t=this.events;for(var e in t){var i=t[e];i&&i.destroy()}},i.getContainer=function(){var t=this.props,e=t.parentMoveable,i=t.wrapperMoveable;return t.container||i&&i.getContainer()||e&&e.getContainer()||this.controlBox.getElement().parentElement},i.isMoveableElement=function(t){return t&&(t.getAttribute("class")||"").indexOf(gd)>-1},i.dragStart=function(t){return this.targetGesto&&this.targetGesto.triggerDragStart(t),this},i.hitTest=function(t){var e,i=this.state,n=i.target,o=i.pos1,s=i.pos2,r=i.pos3,l=i.pos4,a=i.targetClientRect;if(!n)return 0;if(t instanceof Element){var d=t.getBoundingClientRect();e={left:d.left,top:d.top,width:d.width,height:d.height}}else e=dd({width:0,height:0},t);var c=e.left,u=e.top,p=e.width,h=e.height,v=ka([o,s,l,r],a),f=Oa(v,[[c,u],[c+p,u],[c+p,u+h],[c,u+h]]),g=Ca(v);return f&&g?Math.min(100,f/g*100):0},i.isInside=function(t,e){var i=this.state,n=i.target,o=i.pos1,s=i.pos2,r=i.pos3,l=i.pos4,a=i.targetClientRect;return!!n&&Aa([t,e],ka([o,s,l,r],a))},i.updateRect=function(t,e,i){void 0===i&&(i=!0);var n=this.props,o=n.parentMoveable,s=this.state.target||this.props.target,r=this.getContainer(),l=o?o.props.rootContainer:n.rootContainer;this.updateState(Jd(this.controlBox&&this.controlBox.getElement(),s,r,r,l||r),!o&&i)},i.isTargetChanged=function(t,e){var i=this.props,n=i.dragTarget||i.target,o=t.dragTarget||t.target,s=i.dragArea,r=t.dragArea;return!s&&o!==n||(e||s)&&r!==s},i.updateNativeEvents=function(t){var e=this,i=this.props.dragArea?this.areaElement:this.state.target,n=this.events,o=Zr(n);if(this.isTargetChanged(t))for(var s in n){var r=n[s];r&&r.destroy(),n[s]=null}if(i){var l=this.enabledAbles;o.forEach((function(t){var o=ac(l,[t]),s=o.length>0,r=n[t];s?(r||(r=new Qp(i,e,t),n[t]=r),r.setAbles(o)):r&&(r.destroy(),n[t]=null)}))}},i.updateEvent=function(t){var e=this.controlBox.getElement(),i=this.targetAbles.length,n=this.controlAbles.length,o=this.props,s=o.dragTarget||o.target,r=this.isTargetChanged(t,!0),l=!i&&this.targetGesto||r;l&&(nc(this,"targetGesto"),this.updateState({gesto:null})),n||nc(this,"controlGesto"),s&&i&&!this.targetGesto&&(this.targetGesto=Kp(this,s,"")),!this.controlGesto&&n&&(this.controlGesto=Jp(this,e,"controlAbles","Control")),l&&this.unsetAbles()},i.isDragging=function(){return!!this.targetGesto&&this.targetGesto.isFlag()||!!this.controlGesto&&this.controlGesto.isFlag()},i.updateTarget=function(t){this.updateRect(t,!0)},i.getRect=function(){var t=this.state,e=ic(this.state),i=e[0],n=e[1],o=e[2],s=e[3],r=Ud(e),l=t.width,a=t.height,d=r.width,c=r.height,u=r.left,p=r.top,h=[t.left,t.top],v=ra(h,t.origin);return{width:d,height:c,left:u,top:p,pos1:i,pos2:n,pos3:o,pos4:s,offsetWidth:l,offsetHeight:a,beforeOrigin:ra(h,t.beforeOrigin),origin:v,transformOrigin:t.transformOrigin,rotation:this.getRotation()}},i.getManager=function(){return this},i.getRotation=function(){var t=this.state;return function(t,e,i){var n=el(t,e)/Math.PI*180;return(n=i>=0?n:180-n)>=0?n:360+n}(t.pos1,t.pos2,t.direction)},i.request=function(t,e,i){void 0===e&&(e={});var n=this.props,o=n.ables,s=n.groupable,r=o.filter((function(e){return e.name===t}))[0];if(this.isDragging()||!r||!r.request)return{request:function(){return this},requestEnd:function(){return this}};var l=this,a=r.request(this),d=i||e.isInstant,c=a.isControl?"controlAbles":"targetAbles",u=(s?"Group":"")+(a.isControl?"Control":""),p={request:function(e){return Zp(l,c,"drag",u,"",dd(dd({},a.request(e)),{requestAble:t,isRequest:!0}),d),this},requestEnd:function(){return Zp(l,c,"drag",u,"End",dd(dd({},a.requestEnd()),{requestAble:t,isRequest:!0}),d),this}};return Zp(l,c,"drag",u,"Start",dd(dd({},a.requestStart(e)),{requestAble:t,isRequest:!0}),d),d?p.request(e).requestEnd():p},i.destroy=function(){this.componentWillUnmount()},i.updateRenderPoses=function(){var t=this.state,e=this.props,i=t.originalBeforeOrigin,n=t.transformOrigin,o=t.allMatrix,s=t.is3d,r=t.pos1,l=t.pos2,a=t.pos3,d=t.pos4,c=t.left,u=t.top,p=e.padding||{},h=p.left,v=void 0===h?0:h,f=p.top,g=void 0===f?0:f,m=p.bottom,b=void 0===m?0:m,y=p.right,x=void 0===y?0:y,_=s?4:3,w=e.groupable?i:ra(i,[c,u]);t.renderPoses=[ra(r,fc(o,[-v,-g],n,w,_)),ra(l,fc(o,[x,-g],n,w,_)),ra(a,fc(o,[-v,b],n,w,_)),ra(d,fc(o,[x,b],n,w,_))]},i.checkUpdate=function(){var t=this.props,e=t.target,i=t.container,n=t.parentMoveable,o=this.state,s=o.target,r=o.container;(s||e)&&(this.updateAbles(),(!dc(s,e)||!dc(r,i))&&(this.updateState({target:e,container:i}),n||!i&&!this.controlBox||this.updateRect("End",!1,!1)))},i.triggerEvent=function(t,e){var i=this.props[t];return i&&i(e)},i.useCSS=function(t,e){var i=this.props.customStyledMap,n=t+e;return i[n]||(i[n]=rd(t,e)),i[n]},i.unsetAbles=function(){var t=this;this.targetAbles.filter((function(e){return!!e.unset&&(e.unset(t),!0)})).length&&this.forceUpdate()},i.updateAbles=function(t,e){void 0===t&&(t=this.props.ables),void 0===e&&(e="");var i=this.props,n=i.triggerAblesSimultaneously,o=t.filter((function(t){return t&&(t.always||i[t.name])})),s="drag"+e+"ControlStart",r=ac(o,["drag"+e+"Start","pinch"+e+"Start"],n),l=ac(o,[s],n);this.enabledAbles=o,this.targetAbles=r,this.controlAbles=l},i.updateState=function(t,e){if(e)this.setState(t);else{var i=this.state;for(var n in t)i[n]=t[n]}},i.getEnabledAbles=function(){var t=this.props;return t.ables.filter((function(e){return e&&t[e.name]}))},i.renderAbles=function(){var t,e,i,n,o=this,s=this.props.triggerAblesSimultaneously,r={createElement:_l};return(t=uc(ac(this.getEnabledAbles(),["render"],s).map((function(t){return(0,t.render)(o,r)||[]}))).filter((function(t){return t})),e=function(t){return t.key},i=[],n={},t.forEach((function(o,s){var r=e(o,s,t),l=n[r];l||(l=[],n[r]=l,i.push(l)),l.push(o)})),i).map((function(t){return t[0]}))},i.updateCheckInput=function(){this.targetGesto&&(this.targetGesto.options.checkInput=this.props.checkInput)},e.defaultProps={target:null,dragTarget:null,container:null,rootContainer:null,origin:!0,edge:!1,parentMoveable:null,wrapperMoveable:null,parentPosition:null,portalContainer:null,ables:[],pinchThreshold:20,dragArea:!1,passDragArea:!1,transformOrigin:"",className:"",zoom:1,triggerAblesSimultaneously:!1,padding:{},pinchOutside:!0,checkInput:!1,groupable:!1,cspNonce:"",translateZ:0,cssStyled:null,customStyledMap:{},props:{}},e}(Ol),eh={name:"groupable",props:{defaultGroupRotate:Number,defaultGroupOrigin:String,groupable:Boolean},events:{},render:function(t,e){var i=t.props.targets||[];t.moveables=[];var n=t.state,o={left:n.left,top:n.top};return i.map((function(i,n){return e.createElement(th,{key:"moveable"+n,ref:_r(t,"moveables",n),target:i,origin:!1,cssStyled:t.props.cssStyled,customStyledMap:t.props.customStyledMap,parentMoveable:t,parentPosition:o})}))}},ih=ud("clickable",{props:{},events:{onClick:"click",onClickGroup:"clickGroup"},always:!0,dragStart:function(t,e){e.isRequest||ll(window,"click",t.onPreventClick,!0)},dragControlStart:function(t,e){this.dragStart(t,e)},dragGroupStart:function(t,e){this.dragStart(t,e),e.datas.inputTarget=e.inputEvent&&e.inputEvent.target},dragEnd:function(t,e){this.endEvent(t);var i=t.state.target,n=e.inputEvent,o=e.inputTarget;if(n&&o&&!e.isDrag&&!t.isMoveableElement(o)){var s=i.contains(o);rc(t,"onClick",oc(t,e,{isDouble:e.isDouble,inputTarget:o,isTarget:i===o,containsTarget:s}))}},dragGroupEnd:function(t,e){this.endEvent(t);var i=e.inputEvent,n=e.inputTarget;if(i&&n&&!e.isDrag&&!t.isMoveableElement(n)&&e.datas.inputTarget!==n){var o=t.props.targets,s=o.indexOf(n),r=s>-1,l=!1;-1===s&&(l=(s=Vr(o,(function(t){return t.contains(n)})))>-1),rc(t,"onClickGroup",oc(t,e,{isDouble:e.isDouble,targets:o,inputTarget:n,targetIndex:s,isTarget:r,containsTarget:l}))}},dragControlEnd:function(t){this.endEvent(t)},dragGroupControlEnd:function(t){this.endEvent(t)},endEvent:function(t){var e=this;requestAnimationFrame((function(){e.unset(t)}))},unset:function(t){al(window,"click",t.onPreventClick,!0)}});function nh(t){var e=t.originalDatas.draggable;return e||(t.originalDatas.draggable={},e=t.originalDatas.draggable),dd(dd({},t),{datas:e})}var oh=ud("edgeDraggable",{dragControlCondition:function(t,e){if(!t.props.edgeDraggable||!e.inputEvent)return!1;var i=e.inputEvent.target;return rl(i,Ld("direction"))&&rl(i,Ld("line"))},dragControlStart:function(t,e){return Qu.dragStart(t,nh(e))},dragControl:function(t,e){return Qu.drag(t,nh(e))},dragControlEnd:function(t,e){return Qu.dragEnd(t,nh(e))},dragGroupControlCondition:function(t,e){if(!t.props.edgeDraggable||!e.inputEvent)return!1;var i=e.inputEvent.target;return rl(i,Ld("direction"))&&rl(i,Ld("line"))},dragGroupControlStart:function(t,e){return Qu.dragGroupStart(t,nh(e))},dragGroupControl:function(t,e){return Qu.dragGroup(t,nh(e))},dragGroupControlEnd:function(t,e){return Qu.dragGroupEnd(t,nh(e))},unset:function(t){t.state.dragInfo=null}}),sh={name:"individualGroupable",props:{individualGroupable:Boolean},events:{}},rh=[Vp,Cp,Ju,Sc,Qu,oh,dp,cp,up,vp,Sp,kp,_p,Wp,Up,Yp,eh,sh,ih,xp,Xp],lh=rh.reduce((function(t,e){return dd(dd({},t),"events"in e?e.events:{})}),{}),ah=rh.reduce((function(t,e){return dd(dd({},t),e.props)}),{}),dh=yc(lh),ch=Object.keys(dh),uh=Object.keys(ah);function ph(t,e){return Math.max.apply(Math,t.map((function(t){var i=t[0],n=t[1],o=t[2],s=t[3];return Math.max(i[e],n[e],o[e],s[e])})))}function hh(t,e){return Math.min.apply(Math,t.map((function(t){var i=t[0],n=t[1],o=t[2],s=t[3];return Math.min(i[e],n[e],o[e],s[e])})))}var vh=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.differ=new $a,e.moveables=[],e.transformOrigin="50% 50%",e}ad(e,t);var i=e.prototype;return i.updateEvent=function(t){var e=this.state,i=this.props,n=t.dragTarget||e.target,o=i.dragTarget||this.areaElement;n!==o&&(nc(this,"targetGesto"),nc(this,"controlGesto"),e.target=null),e.target||(e.target=this.areaElement,this.controlBox.getElement().style.display="block",this.targetGesto=Kp(this,o,"Group"),this.controlGesto=Jp(this,this.controlBox.getElement(),"controlAbles","GroupControl"));var s=!dc(t.container,i.container);s&&(e.container=i.container);var r=this.differ.update(i.targets),l=r.added,a=r.changed,d=r.removed;(s||l.length||a.length||d.length)&&this.updateRect()},i.checkUpdate=function(){this.updateAbles()},i.updateRect=function(t,e,i){if(void 0===i&&(i=!0),this.controlBox){this.moveables.forEach((function(e){e.updateRect(t,!1,!1)}));var n=this.state,o=this.props,s=n.target||o.target;(!e||""!==t&&o.updateGroup)&&(this.rotation=o.defaultGroupRotate,this.transformOrigin=o.defaultGroupOrigin||"50% 50%",this.scale=[1,1]);var r=this.rotation,l=this.scale,a=function(t,e){if(!t.length)return[0,0,0,0];var i=t.map((function(t){return ic(t.state)})),n=wd,o=wd,s=0,r=0,l=ol(e,xd);if(l%90){var a=l/180*Math.PI,d=Math.tan(a),c=-1/d,u=[Sd,wd],p=[Sd,wd];i.forEach((function(t){t.forEach((function(t){var e=t[1]-d*t[0],i=t[1]-c*t[0];u[0]=Math.max(u[0],e),u[1]=Math.min(u[1],e),p[0]=Math.max(p[0],i),p[1]=Math.min(p[1],i)}))})),u.forEach((function(t){p.forEach((function(e){var i=(e-t)/(d-c),s=d*i+t;n=Math.min(n,i),o=Math.min(o,s)}))}));var h=i.map((function(t){var e=t[0],i=t[1],n=t[2],o=t[3];return[va(e,-a),va(i,-a),va(n,-a),va(o,-a)]}));s=ph(h,0)-hh(h,0),r=ph(h,1)-hh(h,1)}else if(n=hh(i,0),o=hh(i,1),s=ph(i,0)-n,r=ph(i,1)-o,l%180){var v=s;s=r,r=v}return[n,o,s,r]}(this.moveables,r),d=a[0],c=a[1],u=a[2],p=a[3],h="rotate("+r+"deg) scale("+(l[0]>=0?1:-1)+", "+(l[1]>=0?1:-1)+")";s.style.cssText+="left:0px;top:0px; transform-origin: "+this.transformOrigin+"; width:"+u+"px; height:"+p+"px;transform:"+h,n.width=u,n.height=p;var v=this.getContainer(),f=Jd(this.controlBox.getElement(),s,this.controlBox.getElement(),this.getContainer(),this.props.rootContainer||v),g=[f.left,f.top],m=ic(f),b=m[0],y=m[1],x=m[2],_=m[3],w=Ea([b,y,x,_]),S=[w.minX,w.minY];f.pos1=la(b,S),f.pos2=la(y,S),f.pos3=la(x,S),f.pos4=la(_,S),f.left=d-f.left+S[0],f.top=c-f.top+S[1],f.origin=la(ra(g,f.origin),S),f.beforeOrigin=la(ra(g,f.beforeOrigin),S),f.originalBeforeOrigin=ra(g,f.originalBeforeOrigin);var C=f.targetClientRect,k=l[0]*l[1]>0?1:-1;C.top+=f.top-n.top,C.left+=f.left-n.left,s.style.transform="translate("+-S[0]+"px, "+-S[1]+"px) "+h,this.updateState(dd(dd({},f),{direction:k,beforeDirection:k}),i)}},i.getRect=function(){return dd(dd({},t.prototype.getRect.call(this)),{children:this.moveables.map((function(t){return t.getRect()}))})},i.triggerEvent=function(e,i,n){if(n||e.indexOf("Group")>-1)return t.prototype.triggerEvent.call(this,e,i)},i.updateAbles=function(){t.prototype.updateAbles.call(this,cd(this.props.ables,[eh]),"Group")},e.defaultProps=dd(dd({},th.defaultProps),{transformOrigin:["50%","50%"],groupable:!0,dragArea:!0,keepRatio:!0,targets:[],defaultGroupRotate:0,defaultGroupOrigin:"50% 50%"}),e}(th),fh=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.moveables=[],e}ad(e,t);var i=e.prototype;return i.render=function(){var t=this,e=this.props,i=e.cspNonce,n=e.cssStyled,o=e.targets;return _l(n,{cspNonce:i,ref:xr(this,"controlBox"),className:Ld("control-box")},o.map((function(e,i){return _l(th,dd({key:"moveable"+i,ref:_r(t,"moveables",i)},t.props,{target:e,wrapperMoveable:t}))})))},i.componentDidUpdate=function(){},i.updateRect=function(t,e,i){void 0===i&&(i=!0),this.moveables.forEach((function(n){n.updateRect(t,e,i)}))},i.getRect=function(){return dd(dd({},t.prototype.getRect.call(this)),{children:this.moveables.map((function(t){return t.getRect()}))})},i.request=function(){return{request:function(){return this},requestEnd:function(){return this}}},i.dragStart=function(){return this},i.hitTest=function(){return 0},i.isInside=function(){return!1},i.isDragging=function(){return!1},i.updateRenderPoses=function(){},i.updateEvent=function(){},i.checkUpdate=function(){},i.triggerEvent=function(){},i.updateAbles=function(){},e}(th),gh=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return ad(e,t),e.defaultAbles=rh,e}(function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.refTargets=[],e.selectorMap={},e}ad(e,t);var i=e.prototype;return e.makeStyled=function(){var t={};this.getTotalAbles().forEach((function(e){var i=e.css;i&&i.forEach((function(e){t[e]=!0}))}));var e=Zr(t).join("\n");this.defaultStyled=rd("div",function(t,e){return e.replace(/([^}{]*){/gm,(function(e,i){return i.replace(/\.([^{,\s\d.]+)/g,"."+t+"$1")+"{"}))}(gd,md+e))},e.getTotalAbles=function(){return cd([Cp,eh,sh,xp],this.defaultAbles)},i.render=function(){var t=this.constructor;t.defaultStyled||t.makeStyled();var e=this.props,i=e.ables,n=e.props,o=function(t,e){var i={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(t);o<n.length;o++)e.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(t,n[o])&&(i[n[o]]=t[n[o]])}return i}(e,["ables","props"]),s=_c(o.target||o.targets),r=function(t,e){var i=[];return t.forEach((function(t){t&&(Ir(t)?e[t]&&i.push.apply(i,e[t]):i.push(t))})),i}(s,this.selectorMap);this.refTargets=s;var l=r.length>1,a=cd(t.getTotalAbles(),i||[]),d=dd(dd(dd({},o),n||{}),{ables:a,cssStyled:t.defaultStyled,customStyledMap:t.customStyledMap});return l?o.individualGroupable?_l(fh,dd({key:"individual-group",ref:xr(this,"moveable")},d,{target:null,targets:r})):_l(vh,dd({key:"group",ref:xr(this,"moveable")},d,{target:null,targets:r})):_l(th,dd({key:"single",ref:xr(this,"moveable")},d,{target:r[0]}))},i.componentDidMount=function(){this.updateRefs()},i.componentDidUpdate=function(){this.updateRefs()},i.updateRefs=function(t){var e=_c(this.props.target||this.props.targets),i=this.refTargets.some((function(t,i){var n=e[i];return!(!t&&!n)&&t!==n})),n=t?{}:this.selectorMap,o={};this.refTargets.forEach((function(t){Ir(t)&&(n[t]?o[t]=n[t]:(i=!0,o[t]=[].slice.call(document.querySelectorAll(t))))})),this.selectorMap=o,i&&this.forceUpdate()},i.getManager=function(){return this.moveable},e.defaultAbles=[],e.customStyledMap={},e.defaultStyled=null,function(t,e,i,n){var o,s=arguments.length,r=s<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(t,e,i,n);else for(var l=t.length-1;l>=0;l--)(o=t[l])&&(r=(s<3?o(r):s>3?o(e,i,r):o(e,i))||r);s>3&&r&&Object.defineProperty(e,i,r)}([Sr(Ad)],e.prototype,"moveable",void 0),e}(Ol)),mh=function(t,e){return(mh=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(t,e)};function bh(t,e){function i(){this.constructor=t}mh(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}var yh=function(){return(yh=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var o in e=arguments[i])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};var xh=function(t){function e(e){var i=t.call(this,e)||this;return i.state={},i.state=i.props,i}return bh(e,t),e.prototype.render=function(){return t=_l(gh,yh({ref:xr(this,"moveable")},this.state)),e=this.state.parentElement,_l(Rl,{element:t,container:e});var t,e},e}(Ml),_h=uh,wh=Ad,Sh=ch,Ch=function(){return(Ch=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var o in e=arguments[i])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};var kh=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return bh(e,t),e}(function(t){function e(e,i){void 0===i&&(i={});var n=t.call(this)||this;n.tempElement=document.createElement("div");var o=yh({container:e||document.body},i),s={};Sh.forEach((function(t){var e;s[(e="on "+t,e.replace(/[\s-_]([a-z])/g,(function(t,e){return e.toUpperCase()})))]=function(e){return n.trigger(t,e)}})),Il(_l(xh,yh({ref:xr(n,"innerMoveable"),parentElement:e},o,s)),n.tempElement);var r=o.target;return $r(r)&&r.length>1&&n.updateRect(),n}bh(e,t);var i=e.prototype;return i.setState=function(t,e){this.innerMoveable.setState(t,e)},i.destroy=function(){Il(null,this.tempElement),this.off(),this.tempElement=null,this.innerMoveable=null},i.getMoveable=function(){return this.innerMoveable.moveable},e=function(t,e,i,n){var o,s=arguments.length,r=s<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(t,e,i,n);else for(var l=t.length-1;l>=0;l--)(o=t[l])&&(r=(s<3?o(r):s>3?o(e,i,r):o(e,i))||r);return s>3&&r&&Object.defineProperty(e,i,r),r}([wr(wh,(function(t,e){t[e]||(t[e]=function(){for(var t=[],i=0;i<arguments.length;i++)t[i]=arguments[i];var n=this.getMoveable();if(n&&n[e])return n[e].apply(n,t)})})),wr(_h,(function(t,e){Object.defineProperty(t,e,{get:function(){return this.getMoveable().props[e]},set:function(t){var i;this.setState(((i={})[e]=t,i))},enumerable:!0,configurable:!0})}))],e)}(function(){function t(){this._events={}}var e=t.prototype;return e.on=function(t,e){if(Br(t))for(var i in t)this.on(i,t[i]);else this._addEvent(t,e,{});return this},e.off=function(t,e){if(t)if(Br(t))for(var i in t)this.off(i);else if(e){var n=this._events[t];if(n){var o=Vr(n,(function(t){return t.listener===e}));o>-1&&n.splice(o,1)}}else this._events[t]=[];else this._events={};return this},e.once=function(t,e){var i=this;return e&&this._addEvent(t,e,{once:!0}),new Promise((function(e){i._addEvent(t,e,{once:!0})}))},e.emit=function(t,e){var i=this;void 0===e&&(e={});var n=this._events[t];if(!t||!n)return!0;var o=!1;return e.eventType=t,e.stop=function(){o=!0},e.currentTarget=this,function(){for(var t=0,e=0,i=arguments.length;e<i;e++)t+=arguments[e].length;var n=Array(t),o=0;for(e=0;e<i;e++)for(var s=arguments[e],r=0,l=s.length;r<l;r++,o++)n[o]=s[r];return n}(n).forEach((function(n){n.listener(e),n.once&&i.off(t,n.listener)})),!o},e.trigger=function(t,e){return void 0===e&&(e={}),this.emit(t,e)},e._addEvent=function(t,e,i){var n=this._events;n[t]=n[t]||[],n[t].push(Ch({listener:e},i))},t}()));const Eh=new e;class Ah{constructor(t){this.builder=t;const e=this.builder.util,i=this.builder.builderStuff;this.util=e;let n,o=i.querySelector("#divImageTool");if(!o){let t=`\n <div id="divImageTool" class="is-tool">\n <div role="button" tabindex="0" class="image-embed" style="${this.builder.opts.imageEmbed?"":"display:none;"}width:40px;height:40px;overflow:hidden;">\n <div style="position:absolute;width:100%;height:100%;"><svg class="is-icon-flex" style="position: absolute;top: 13px;left: 15px;width: 14px;height: 14px;"><use xlink:href="#ion-image"></use></svg></div>\n <input title="${e.out("Change Image")}" data-title="${e.out("Change Image")}" id="fileEmbedImage" type="file" accept="image/*" style="position:absolute;top:-20px;left:0;width:40px;height:60px;opacity: 0;cursor: pointer;"/>\n </div>\n <button tabindex="0" title="${e.out("Link")}" data-title="${e.out("Link")}" class="image-link" style="width:40px;height:40px;"><svg class="is-icon-flex" style="width:17px;height:17px;"><use xlink:href="#ion-link"></use></svg></button> \n <button tabindex="0" title="${e.out("Edit")}" data-title="${e.out("Edit")}" class="image-edit" style="width:40px;height:40px;"><svg class="is-icon-flex" style="width:14px;height:14px;"><use xlink:href="#ion-android-create"></use></svg></button>\n </div>\n <div id="divImageProgress">\n <div>\n <div class="dot"></div>\n <div class="dot"></div>\n <div class="dot"></div>\n </div>\n </div>\n \n <div class="is-modal imageedit">\n <div class="is-modal-content">\n <div class="imageedit-crop" style="display:flex;height:80px;align-items:center;align-self:flex-start;">\n <button title="5x5" data-crop-size="1" style="width: 60px;height: 60px;">5x5</button>\n <button title="4x3" data-crop-size="1.33333" style="width: 60px;height: 45px;">4x3</button>\n <button title="3x4" data-crop-size="0.75" style="width: 45px;height: 60px;">3x4</button>\n <button title="6x4" data-crop-size="1.5" style="width: 60px;height: 40px;">6x4</button>\n <button title="4x6" data-crop-size="0.6666" style="width: 40px;height: 60px;">4x6</button>\n <button title="${e.out("Free")}" data-crop-size="" style="width: 60px;height: 45px;">${e.out("Free")}</button>\n </div>\n <div class="imageedit-preview" style="max-width:1000px;width:100%;max-height:550px;">\n </div>\n <div style="margin-top:15px;text-align:right;align-self:flex-end;">\n <button title="${e.out("Cancel")}" class="input-cancel classic-secondary">${e.out("Cancel")}</button>\n <button title="${e.out("Apply")}" class="input-ok classic-primary">${e.out("Apply")}</button>\n </div>\n </div>\n </div>\n \n <div class="is-modal imagelink">\n <div class="is-modal-content">\n\n <label for="inpImageLinkSource" style="display:block">${e.out("Source")}:</label>\n <div class="image-src">\n <input id="inpImageLinkSource" class="input-src" type="text"/>\n <button title="${e.out("Select")}" class="input-select" style="flex:none;width:50px;height:50px;"><svg class="is-icon-flex"><use xlink:href="#ion-more"></use></svg></button>\n <div class="image-larger1" style="position:relative;flex:none;width:50px;height:50px;box-shadow: 0px 3px 6px -6px rgba(0, 0, 0, 0.32);">\n <form class="form-upload-larger" target="frameTargetImageUpload" method="post" action="${this.builder.opts.largerImageHandler}" enctype="multipart/form-data" style="position:absolute;top:0;left:0;width:100%;height:100%;">\n\t\t\t\t <input id="hidRefId1" name="hidRefId" type="hidden" value="" />\n <svg class="is-icon-flex" style="position: absolute;top: 16px;left: 15px;width: 18px;height: 18px;"><use xlink:href="#ion-image"></use></svg>\n <input title="${e.out("Select")}" id="fileImage1" name="fileImage" type="file" accept="image/*" style="position:absolute;top:-30px;left:0;width:100%;height:80px;opacity: 0;cursor: pointer;">\n </form>\n\n <iframe id="frameTargetImageUpload" name="frameTargetImageUpload" src="about:blank" style="width:1px;height:1px;position:absolute;top:0;right:-100000px"></iframe>\n </div>\n </div>\n\n <label for="inpImageLinkTitle" style="margin-top:14px;display:block">${e.out("Title")}:</label>\n <input id="inpImageLinkTitle" class="input-title" type="text" style="width:100%;border-top: none;"/>\n\n <label for="inpImageLinkLink" style="margin-top:14px;display:block">${e.out("Link")}:</label>\n <div class="image-link">\n <input id="inpImageLinkLink" class="input-link" type="text" style="width:100%;border-top: none;"/>\n <button title="${e.out("Select")}" class="input-select2" style="flex:none;width:50px;height:50px;"><svg class="is-icon-flex"><use xlink:href="#ion-more"></use></svg></button>\n <div class="image-larger2" style="position:relative;flex:none;width:50px;height:50px;box-shadow: 0px 3px 6px -6px rgba(0, 0, 0, 0.32);">\n <form class="form-upload-larger" target="frameTargetImageUpload" method="post" action="${this.builder.opts.largerImageHandler}" enctype="multipart/form-data" style="position:absolute;top:0;left:0;width:100%;height:100%;">\n\t\t\t\t <input id="hidRefId2" name="hidRefId" type="hidden" value="" />\n <svg class="is-icon-flex" style="position: absolute;top: 16px;left: 15px;width: 18px;height: 18px;"><use xlink:href="#ion-image"></use></svg>\n <input title="${e.out("Select")}" id="fileImage2" name="fileImage" type="file" accept="image/*" style="position:absolute;top:-30px;left:0;width:100%;height:80px;opacity: 0;cursor: pointer;">\n </form>\n </div>\n </div>\n\n <label style="display:block;margin-top:14px;">\n <input class="input-newwindow" type="checkbox" /> ${e.out("Open new window")}&nbsp;\n </label>\n <label id="lblImageLinkOpenLightbox" style="${this.builder.useLightbox?"display:block":"display:none"};margin-top:5px;margin-bottom:14px;">\n <input class="input-openlightbox" type="checkbox" /> ${e.out("Open in a lightbox (for image, video or Youtube)")}&nbsp;\n </label>\n \n <div style="text-align:right;margin-top:14px;">\n <button title="${e.out("Cancel")}" class="input-cancel classic-secondary">${e.out("Cancel")}</button>\n <button title="${e.out("Ok")}" class="input-ok classic-primary">${e.out("Ok")}</button>\n </div>\n </div>\n </div>\n\n <div class="is-modal imageselect" style="z-index:10005">\n <div style="max-width:800px;height:80%;padding:0;">\n <iframe style="width:100%;height:100%;border: none;display: block;" src="about:blank"></iframe>\n </div>\n </div>\n\n <div id="divImageResizer" data-x=0 data-y=0 class="is-tool moveable resizable">\n </div>\n `;Eh.appendHtml(i,t),o=i.querySelector("#divImageTool"),this.imageTool=o,n=document.querySelector("#divImageResizer"),this.imageResizer=n,this.builder.moveable=new kh(document.body,{target:n,resizable:!0,throttleResize:0,keepRatio:!0}).on("resize",(({target:t,width:e,height:n})=>{if(0===e||0===n||isNaN(e)||isNaN(n))return;this.imageTool.style.display="",i.querySelector(".is-element-tool").style.display="";let o=this.builder.activeImage,s=!1;if(Eh.hasClass(o.parentNode,"img-circular")&&(o=o.parentNode,s=!0),s){let t=parseFloat(window.getComputedStyle(o.parentNode).getPropertyValue("padding-left")),i=parseFloat(window.getComputedStyle(o.parentNode).getPropertyValue("padding-right")),s=o.parentNode.offsetWidth*this.builder.opts.zoom-t-i;e>=s&&(e=s),n>=e?(o.style.width=e/this.builder.opts.zoom+"px",o.style.height=e/this.builder.opts.zoom+"px",o.querySelector("img").style.width=e/this.builder.opts.zoom+"px",o.querySelector("img").style.height=e/this.builder.opts.zoom+"px"):(o.style.width=e/this.builder.opts.zoom+"px",o.style.height=n/this.builder.opts.zoom+"px",o.querySelector("img").style.width=e/this.builder.opts.zoom+"px",o.querySelector("img").style.height=n/this.builder.opts.zoom+"px")}else o.style.width=e/this.builder.opts.zoom+"px",o.style.height="auto";t.style.top=o.getBoundingClientRect().top+window.pageYOffset+"px",t.style.left=o.getBoundingClientRect().left+window.pageXOffset+"px",t.style.width=o.offsetWidth+"px",t.style.height=o.offsetHeight+"px",this.repositionHandler(o.offsetWidth,o.offsetHeight),document.selection?document.selection.empty():window.getSelection().removeAllRanges();let r=i.querySelector(".is-column-tool");Eh.removeClass(r,"active")})).on("resizeEnd",(({target:t})=>{let e=this.builder.activeImage,n=!1;Eh.hasClass(e.parentNode,"img-circular")&&(e=e.parentNode,n=!0);var o=getComputedStyle(e.parentNode),s=parseFloat(o.paddingLeft)+parseFloat(o.paddingRight),r=parseFloat(o.borderLeftWidth)+parseFloat(o.borderRightWidth),l=e.parentNode.offsetWidth-s-r;if(!n){var a=l,d=e.offsetWidth,c=d/a*100;e.style.width=c+"%"}this.builder.opts.emailMode&&e.setAttribute("width",d),t.setAttribute("data-resized",1),setTimeout((()=>{t.setAttribute("data-resized",0)}),300),this.builder.opts.onChange();let u=i.querySelector(".is-column-tool");Eh.addClass(u,"active")})),document.querySelector(".moveable-control-box").style.display="none",n.addEventListener("click",(()=>{this.repositionImageTool(),this.builder.elmTool.repositionElementTool()}));let s=o.querySelector("#fileEmbedImage");Eh.addEventListener(s,"change",(t=>{this.builder.uo.saveForUndo();var e=t.target;let n=this.builder.activeImage,r=i.querySelector("#divImageProgress");r.style.display="table",r.style.width=n.offsetWidth*this.builder.opts.zoom+"px",r.style.height=n.offsetHeight*this.builder.opts.zoom+"px",r.style.top=n.getBoundingClientRect().top+window.pageYOffset+"px",r.style.left=n.getBoundingClientRect().left+window.pageXOffset+"px";try{n.setAttribute("data-filename",e.files[0].name),this.processImage(e.files[0],n,(()=>{r.style.display="none",s=o.querySelector("#fileEmbedImage"),s.value="",this.refreshIfIsModule(n),this.builder.opts.onChange(),this.builder.elmTool.refresh()}))}catch(t){r.style.display="none"}})),this.builder.opts.onImageBrowseClick&&(s=o.querySelector(".image-embed"),Eh.addEventListener(s,"click",(t=>(this.builder.opts.onImageBrowseClick(),t.preventDefault(),!1))));let r=i.querySelector(".imagelink");""!==this.builder.opts.largerImageHandler||this.builder.opts.onLargerImageUpload||(r.querySelector(".image-larger1").style.display="none",r.querySelector(".image-larger2").style.display="none"),this.builder.opts.onImageSelectClick||""!==this.builder.opts.imageselect||(r.querySelector(".input-select").style.display="none",r.querySelector(".input-select2").style.display="none"),s=o.querySelector(".image-link"),Eh.addEventListener(s,"click",(()=>{if(document.querySelector(".moveable-control-box").style.display="none",this.builder.opts.onImageSettingClick)return this.builder.opts.onImageSettingClick(),!1;let t,i=this.builder.activeImage;"a"===i.parentNode.tagName.toLowerCase()&&1===i.parentNode.childElementCount&&(t=i.parentNode);let n=i.getAttribute("src"),o=i.getAttribute("alt"),s=r.querySelector(".input-src");-1===n.indexOf("base64")?s.value=n:s.value="[Image Data]";let l=r.querySelector(".input-title");l.value=o;let a=r.querySelector(".input-link");a.value="";let d=r.querySelector(".input-newwindow");d.checked=!1;let c=r.querySelector(".input-openlightbox");if(c.checked=!1,t){if(a.value=t.getAttribute("href"),""===o){let e=t.getAttribute("title");e&&(l.value=e)}var u=t.getAttribute("target");d.checked="_blank"===u,Eh.hasClass(t,"is-lightbox")?c.checked=!0:c.checked=!1}e.showModal(r,!0,null,!0),s.focus()})),s=r.querySelector(".input-cancel"),Eh.addEventListener(s,"click",(()=>{e.hideModal(r),document.querySelector(".moveable-control-box").style.display="block"})),s=r.querySelector(".input-ok"),Eh.addEventListener(s,"click",(()=>{this.builder.uo.saveForUndo();let t,i=this.builder.activeImage;"a"===i.parentNode.tagName.toLowerCase()&&1===i.parentNode.childElementCount&&(t=i.parentNode);let n=r.querySelector(".input-src").value,o=r.querySelector(".input-title").value,s=r.querySelector(".input-link").value;-1===n.indexOf("[Image Data]")&&i.setAttribute("src",n),i.setAttribute("alt",o),""!==s?t?(t.setAttribute("href",s),t.setAttribute("title",o),r.querySelector(".input-newwindow").checked?t.setAttribute("target","_blank"):t.removeAttribute("target"),r.querySelector(".input-openlightbox").checked?Eh.addClass(t,"is-lightbox"):Eh.removeClass(t,"is-lightbox")):(t=Eh.createElement("a"),t.setAttribute("href",s),t.setAttribute("title",o),t.innerHTML=i.outerHTML,r.querySelector(".input-newwindow").checked?t.setAttribute("target","_blank"):t.removeAttribute("target"),r.querySelector(".input-openlightbox").checked?Eh.addClass(t,"is-lightbox"):Eh.removeClass(t,"is-lightbox"),i.outerHTML=t.outerHTML):t&&(t.outerHTML=t.innerHTML),this.refreshIfIsModule(i),this.builder.opts.onChange(),this.builder.opts.onRender(),e.hideModal(r),this.builder.elmTool.refresh()}));let l=r.querySelector(".image-src");this.builder.opts.onImageSelectClick||this.builder.opts.imageselect?(s=r.querySelector(".input-select"),s&&Eh.addEventListener(s,"click",(()=>{if(this.builder.opts.onImageSelectClick)this.builder.opts.onImageSelectClick({targetInput:r.querySelector(".input-src"),theTrigger:s});else{let t=i.querySelector(".is-modal.imageselect"),n=t.querySelector("iframe");this.builder.opts.assetRefresh&&(n.src=this.builder.opts.imageselect),"about:blank"===n.src&&(n.src=this.builder.opts.imageselect),e.showModal(t)}this.builder.targetInput=r.querySelector(".input-src"),this.builder.targetCallback=null,this.builder.targetAssetType="image"})),s=r.querySelector(".input-select2"),s&&Eh.addEventListener(s,"click",(()=>{if(this.builder.opts.onImageSelectClick)this.builder.opts.onImageSelectClick({targetInput:r.querySelector(".input-link"),theTrigger:s});else{let t=i.querySelector(".is-modal.imageselect"),n=t.querySelector("iframe");this.builder.opts.assetRefresh&&(n.src=this.builder.opts.imageselect),"about:blank"===n.src&&(n.src=this.builder.opts.imageselect),e.showModal(t)}this.builder.targetInput=r.querySelector(".input-link"),this.builder.targetCallback=null,this.builder.targetAssetType="media"}))):Eh.removeClass(l,"image-select");let a=r.querySelector("#fileImage1");Eh.addEventListener(a,"change",(t=>{let e=a;for(;"form"!==e.nodeName.toLowerCase();)e=e.parentNode;let i=e;Eh.addClass(i,"please-wait"),r.querySelector("#hidRefId1").value=this.builder.opts.customval,this.builder.opts.onLargerImageUpload?this.builder.opts.onLargerImageUpload(t):i.submit(),a.value=""}));let d=r.querySelector("#fileImage2");Eh.addEventListener(d,"change",(t=>{let e=d;for(;"form"!==e.nodeName.toLowerCase();)e=e.parentNode;let i=e;Eh.addClass(i,"please-wait"),r.querySelector("#hidRefId2").value=this.builder.opts.customval,this.builder.opts.onLargerImageUpload?this.builder.opts.onLargerImageUpload(t):i.submit(),d.value=""}));let c=i.querySelector(".imageedit");s=o.querySelector(".image-edit"),Eh.addEventListener(s,"click",(()=>{let t=this.builder.activeImage;e.showModal(c,!0);let i=c.querySelector(".imageedit-preview");if(i.style.height="",t.offsetWidth<800&&t.offsetHeight<550)i.style.width=t.offsetWidth+"px";else{800*t.offsetHeight/t.offsetWidth<=550?i.style.width="800px":i.style.height="550px"}i.innerHTML='<img src="" style="max-width:100%;object-fit:contain;height:100%;"/>';let n=c.querySelector("img");n.src=t.src,this.cropper=new br(n,{zoomable:!1}),document.querySelector(".moveable-control-box").style.display="none"}));let u=c.querySelector(".imageedit-crop").querySelectorAll("button");Array.prototype.forEach.call(u,(t=>{Eh.addEventListener(t,"click",(()=>{let e=1*t.getAttribute("data-crop-size");this.cropper.setAspectRatio(e)}))}));let p=c.querySelector(".input-cancel");Eh.addEventListener(p,"click",(()=>{e.hideModal(c),document.querySelector(".moveable-control-box").style.display="block"})),s=c.querySelector(".input-ok"),Eh.addEventListener(s,"click",(()=>{this.builder.uo.saveForUndo();let t=this.builder.activeImage,i=t.getAttribute("data-filename"),n="jpg";if(i)n=i.substr(i.lastIndexOf(".")+1).toLowerCase();else{let e=t.src;e.indexOf("/")>-1?t.setAttribute("data-filename",e.substr(e.lastIndexOf("/")+1)):t.setAttribute("data-filename",e),n=e.substr(e.lastIndexOf(".")+1).toLowerCase()}if(this.builder.opts.imageRenameOnEdit){let e="";if(-1===t.src.indexOf("base64")){let i=t.src.substring(t.src.lastIndexOf("/")+1);e=Eh.baseName(i)}else e=Eh.baseName(t.getAttribute("data-filename"));let i="";-1!==e.indexOf("-edit")&&(e=e.substr(0,e.indexOf("-edit"))),i=e+"-edit"+this.util.makeId(),t.setAttribute("data-filename",i+"."+n)}t.src="jpg"===n?this.cropper.getCroppedCanvas({fillColor:"#fff"}).toDataURL("image/jpeg"):this.cropper.getCroppedCanvas({}).toDataURL(),this.refreshIfIsModule(t),this.builder.opts.onChange(),e.hideModal(c),this.builder.elmTool.refresh()}))}this.builder.imgs=[]}refreshIfIsModule(t){if(Eh.parentsHasAttribute(t,"data-html")){if(this.imageTool.style.display="",t.hasAttribute("data-sync")){let e=t.getAttribute("data-src"),i=t.getAttribute("data-filename");if(e){let n=t;for(;!n.getAttribute("data-html");)n=n.parentNode;let o=n.querySelectorAll("img");Array.prototype.forEach.call(o,(n=>{n.src===e&&(n.src=t.src,n.removeAttribute("data-src"),n.setAttribute("data-filename",i))})),t.removeAttribute("data-src")}}setTimeout((()=>{this.util.refreshModule(),this.imageTool.style.display=""}),1e3)}else this.refresh()}refresh(){if(this.builder.activeImage){let t=this.imageTool;t.style.display="",setTimeout((()=>{let e=this.builder.activeImage;Eh.hasClass(e.parentNode,"img-circular")&&(e=e.parentNode),t.style.display="flex";let i=t.offsetWidth,n=e.offsetWidth*this.builder.opts.zoom,o=e.getBoundingClientRect().top+window.pageYOffset,s=e.getBoundingClientRect().left+window.pageXOffset;s+=n/2-i/2;i+s>window.innerWidth&&(s=e.getBoundingClientRect().left),t.style.top=o+"px",t.style.left=s+"px";let r=this.imageResizer;r.style.top=e.getBoundingClientRect().top+window.pageYOffset+"px",r.style.left=e.getBoundingClientRect().left+window.pageXOffset+"px",r.style.width=e.offsetWidth*this.builder.opts.zoom+"px",r.style.height=e.offsetHeight*this.builder.opts.zoom+"px",r.style.display="block",this.repositionHandler(e.offsetWidth,e.offsetHeight),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="block",0===e.offsetWidth&&(t.style.display="",this.builder.activeImage=null,r.style.display="none",r.style.top="-10px",r.style.left="-10px",r.style.width="1px",r.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none")}),300)}}repositionImageTool(){if(this.builder.activeImage){let t=this.imageTool,e=this.builder.activeImage;Eh.hasClass(e.parentNode,"img-circular")&&(e=e.parentNode),t.style.display="flex";let i=t.offsetWidth,n=e.offsetWidth*this.builder.opts.zoom,o=e.getBoundingClientRect().top+window.pageYOffset,s=e.getBoundingClientRect().left+window.pageXOffset;s+=n/2-i/2;i+s>window.innerWidth&&(s=e.getBoundingClientRect().left),t.style.top=o+"px",t.style.left=s+"px";let r=this.imageResizer;r.style.top=e.getBoundingClientRect().top+window.pageYOffset+"px",r.style.left=e.getBoundingClientRect().left+window.pageXOffset+"px",r.style.width=e.offsetWidth*this.builder.opts.zoom+"px",r.style.height=e.offsetHeight*this.builder.opts.zoom+"px",r.style.display="block",this.repositionHandler(e.offsetWidth,e.offsetHeight),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="block"}}click(t){let e=t.target;if("img"===e.tagName.toLowerCase()){let i=!1;if(e.hasAttribute("data-fixed")&&(i=!0),i){this.imageTool.style.display="",this.builder.activeImage=null;let t=this.imageResizer;t.style.display="none",t.style.top="-10px",t.style.left="-10px",t.style.width="1px",t.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}else{this.builder.activeImage=e,Eh.hasClass(e.parentNode,"img-circular")&&(e=e.parentNode);let i=this.imageTool;i.style.display="flex";let n=i.offsetWidth,o=e.offsetWidth*this.builder.opts.zoom,s=e.getBoundingClientRect().top+window.pageYOffset,r=e.getBoundingClientRect().left+window.pageXOffset;r+=o/2-n/2;if(n+r>window.innerWidth&&(r=e.getBoundingClientRect().left),i.style.top=s+"px",i.style.left=r+"px",e.hasAttribute("data-noresize")){let t=this.imageResizer;t.style.display="none",t.style.top="-10px",t.style.left="-10px",t.style.width="1px",t.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}else{let t=this.imageResizer;t.style.top=e.getBoundingClientRect().top+window.pageYOffset+"px",t.style.left=e.getBoundingClientRect().left+window.pageXOffset+"px",t.style.width=e.offsetWidth*this.builder.opts.zoom+"px",t.style.height=e.offsetHeight*this.builder.opts.zoom+"px",t.style.display="block",this.repositionHandler(e.offsetWidth,e.offsetHeight);let i,n=e.style.width;-1!==n.indexOf("%")?(n=1*n.replace("%",""),i=100*e.offsetWidth/n):i=e.offsetWidth,t.setAttribute("data-width",Math.round(i)),this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="block"}let l=!1;if(t.screenX&&0!==t.screenX&&t.screenY&&0!==t.screenY||(l=!0),l){i.style.display="";let t=this.imageResizer;t.style.display="none",t.style.top="-10px",t.style.left="-10px",t.style.width="1px",t.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}}}else{this.imageTool.style.display="",this.builder.activeImage=null;let t=this.imageResizer;t.style.display="none",t.style.top="-10px",t.style.left="-10px",t.style.width="1px",t.style.height="1px",this.builder.moveable.updateRect(),document.querySelector(".moveable-control-box").style.display="none"}}clearImageResizer(){this.builder.imgs.forEach((t=>{try{t.destroy()}catch(t){}let e=this.builder.imgs.indexOf(t);e>-1&&this.builder.imgs.splice(e,1)})),document.querySelectorAll("[data-mov]").forEach((t=>{t.removeAttribute("data-mov")}))}repositionHandler(t,e){let i=document.querySelector("#divImageResizer");i.style.width=t*this.builder.opts.zoom+"px",i.style.height=e*this.builder.opts.zoom+"px"}processImage(t,e,i){if(!t)return i(),!1;if(!document.getElementById("myTmpCanvasNoCrop")){var n=document.createElement("canvas");n.id="myTmpCanvasNoCrop",n.style.display="none",document.querySelector("body").appendChild(n)}if(!this.builder.opts.autoResizeImageEmbed){let n=new FileReader;return n.addEventListener("load",(t=>{if(!document.getElementById("__preview")){var n=document.createElement("img");n.id="__preview",n.style.display="none";let t=this.util.builderStuff();Eh.appendChild(t,n)}var o=document.querySelector("#__preview");o.onload=()=>{var t=document.getElementById("myTmpCanvasNoCrop"),n=t.getContext("2d");t.height=o.height,t.width=o.width,n.drawImage(o,0,0);var l=t.toDataURL(s,r);e.src=l,o.onload=null,t.parentNode.removeChild(t),i()},o.src=t.target.result})),void n.readAsDataURL(t)}var o,s,r;"jpg"===(o=t.name?t.name.substr(t.name.lastIndexOf(".")+1).toLowerCase():t.substr(t.lastIndexOf(".")+1).toLowerCase())||"jpeg"===o?(s="image/jpeg",r=this.builder.opts.imageQuality):(s="image/png",r=1),Oh(t,((n,o)=>{var l,a,d;if(o.exif&&(l=o.exif.get("Orientation")),4<l&&l<9?(a=n.height,d=n.width):(a=n.width,d=n.height),a<=1600&&d<=1600){let n=new FileReader;return n.addEventListener("load",(t=>{if(!document.getElementById("__preview")){var n=document.createElement("img");n.id="__preview",n.style.display="none";let t=this.util.builderStuff();Eh.appendChild(t,n)}var o=document.querySelector("#__preview");o.onload=()=>{var t=document.getElementById("myTmpCanvasNoCrop"),n=t.getContext("2d");t.height=o.height,t.width=o.width,n.drawImage(o,0,0);var l=t.toDataURL(s,r);e.src=l,o.onload=null,t.parentNode.removeChild(t),i()},o.src=t.target.result})),void n.readAsDataURL(t)}var c=a;-1!==this.builder.opts.maxEmbedImageWidth&&(c=this.builder.opts.maxEmbedImageWidth);var u=c*d/a,p=!1;if(d<=u&&a>c?(d<=(u=d*c/a)&&(c=d*c/(u=d)),p=!0):a<=c&&d>u?(a<=(c=a*u/d)&&(u=a*u/(c=a)),p=!0):a<=c&&d<=u?(c=a,u=d):(u=d*c/a,p=!0),"image/png"===s&&(p=!1),-1===this.builder.opts.maxEmbedImageWidth&&(p=!1),!p){let t=document.getElementById("myTmpCanvasNoCrop"),o=t.getContext("2d");return t.height=d,t.width=a,o.drawImage(n,0,0),e.onload=()=>{e.onload=null,e.src=t.toDataURL(s,r),t.parentNode.removeChild(t),i()},void(e.src=t.toDataURL(s,r))}var h=new Mh(n),v=document.getElementById("myTmpCanvasNoCrop");h.render(v,{width:a,height:d,orientation:l},(()=>{if(p){var t=a,n=d;e.onload=()=>{this.count++,n/=2,((t/=2)<c||n<u)&&(t=c,n=u),new Mh(e).render(v,{width:t,height:n},(()=>{if(t<=c||n<=u){if(e.src=v.toDataURL(s,r),3===this.count){e.onload=null;try{v.parentNode.removeChild(v)}catch(t){}i()}try{v.parentNode.removeChild(v)}catch(t){}return i(),!1}if(e.src=v.toDataURL(s,r),3===this.count){e.onload=null;try{v.parentNode.removeChild(v)}catch(t){}i()}}))},e.src=v.toDataURL(s,r),this.count=0}else e.src=v.toDataURL(s,r),v.parentNode.removeChild(v),i()}))}),{canvas:!1,meta:!0})}}
101
101
  /*!
102
102
  Mega pixel image rendering library for iOS6 Safari
103
103
  Copyright (c) 2012 Shinichi Tomita <shinichi.tomita@gmail.com>