Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/text-editor/dist/ |
Upload File : |
this.BX=this.BX||{};this.BX.UI=this.BX.UI||{};(function(e,t,s,i,r,a,o,l,n,d,c,h,b,u,p,g,v,f,P,m,L,y,F){"use strict";const H=L.createCommand("HIDE_DIALOG_COMMAND");const B=L.createCommand("DIALOG_VISIBILITY_COMMAND");const C=L.createCommand("DRAG_START_COMMAND");const O=L.createCommand("DRAG_END_COMMAND");var T=Object.freeze({HIDE_DIALOG_COMMAND:H,DIALOG_VISIBILITY_COMMAND:B,DRAG_START_COMMAND:C,DRAG_END_COMMAND:O});const E=1;const N={LINE_BREAK:"line-break",PARAGRAPH:"paragraph",MIXED:"mixed"};var _=Object.freeze({UNFORMATTED:E,NewLineMode:N});const M=Object.freeze({"\t":"\\t","\n":"\\n"});const D=new RegExp(Object.keys(M).join("|"),"g");const S=Object.freeze({ancestorHasNextSibling:"|",ancestorIsLastChild:" ",hasNextSibling:"\u251c",isLastChild:"\u2514",selectedChar:"^",selectedLine:">"});const R=[e=>e.hasFormat("bold")&&"Bold",e=>e.hasFormat("code")&&"Code",e=>e.hasFormat("italic")&&"Italic",e=>e.hasFormat("strikethrough")&&"Strikethrough",e=>e.hasFormat("subscript")&&"Subscript",e=>e.hasFormat("superscript")&&"Superscript",e=>e.hasFormat("underline")&&"Underline"];const I=[e=>e.isDirectionless()&&"Directionless",e=>e.isUnmergeable()&&"Unmergeable"];const x=[e=>e.isToken()&&"Token",e=>e.isSegmented()&&"Segmented"];function w(e){const t=e.anchor;const s=e.focus;const i=e.anchor.getNode();const r=e.focus.getNode();if(i===r){return i}const a=e.isBackward();if(a){return d.$isAtNodeEnd(s)?i:r}return d.$isAtNodeEnd(t)?i:r}const A={b:"bold",strong:"bold",i:"italic",em:"italic",s:"strikethrough",del:"strikethrough",u:"underline",sub:"subscript",sup:"superscript"};function $(e){const t=A[e.getName()];if(t===undefined){return{node:null}}return{forChild:e=>{if(L.$isTextNode(e)&&!e.hasFormat(t)){e.toggleFormat(t)}return e},node:null}}function K(e,t,i=true){const r=t.getBBCodeScheme();const a=new s.BBCodeParser({scheme:r});const o=a.parse(e);const l=o.getChildren();let n=[];for(const e of l){const s=j(e,t);if(s!==null){n=[...n,...s]}}return i?U(n):n}function j(e,t,s=new Map,i=null){if(e instanceof n.BBCodeNewLineNode){return[L.$createLineBreakNode()]}if(e instanceof n.BBCodeTabNode){return[L.$createTabNode()]}let r=[];let a=null;const o=Y(e,t);const l=o?o(e):null;let d=null;if(l!==null){d=l.after;const t=l.node;a=Array.isArray(t)?t[t.length-1]:t;if(a!==null){for(const[,e]of s){a=e(a,i);if(!a){break}}if(a){r.push(...Array.isArray(t)?t:[a])}}if(F.Type.isFunction(l.forChild)){s.set(e.getName(),l.forChild)}}const c=e.getChildren();let h=[];for(const e of c){h.push(...j(e,t,new Map(s),a))}if(F.Type.isFunction(d)){h=d(h)}if(l===null){if(e.getType()===n.BBCodeNode.ELEMENT_NODE){const t=e;if(t.isVoid()){h=[L.$createTextNode(t.getOpeningTag()),...h]}else{h=[L.$createTextNode(t.getOpeningTag()),...h,L.$createTextNode(t.getClosingTag())]}}else{h=[L.$createTextNode(e.toString()),...h]}}if(a===null){r=[...r,...h]}else if(L.$isElementNode(a)){a.append(...h)}return r}function k(e){if(L.$isElementNode(e)&&e.isInline()===false){return false}return!(L.$isDecoratorNode(e)&&e.isInline()===false)}function U(e){const t=[];let s=null;let i=0;for(const r of e){if(L.$isLineBreakNode(r)){i++;continue}if(k(r)){if(s===null||i>=2){t.push(...W(i-2));s=L.$createParagraphNode();t.push(s)}else if(i===1){s.append(L.$createLineBreakNode())}s.append(r)}else{if(i>2){t.push(...W(i-2))}t.push(r);s=null}i=0}if(t.length===0){return[L.$createParagraphNode()]}return t}function W(e=1){const t=[];for(let s=0;s<e;s++){t.push(L.$createParagraphNode())}return t}function Y(e,t){const s=e.getName();let i=null;const r=t.getBBCodeImportMap();const a=r.get(s.toLowerCase());if(a!==undefined){for(const t of a){const s=t(e);if(s!==null&&(i===null||i.priority<s.priority)){i=s}}}if(i===null){if(s==="#text"){return z}return null}return i.conversion}function z(e){let t=e.getContent();t=t.replaceAll(/\r?\n|\t/gm," ").replace("\r","");if(t===""){return{node:null}}return{node:L.$createTextNode(t)}}function X(e){if(!L.$isParagraphNode(e)){return false}if(e.isEmpty()){return true}return e.getChildren().every((e=>L.$isLineBreakNode(e)||L.$isTextNode(e)&&/^\s*$/.test(e.getTextContent())))}function G(e){const t=[...e];while(t.length>0&&X(t[0])){t.splice(0,1)}while(t.length>0&&X(t[t.length-1])){t.splice(-1,1)}return t}function V(e,t){const s=t.getBBCodeScheme();const i=s.createRoot();const r=G(e.getChildren());for(const e of r){J(e,i,t)}return i}function J(e,t,s){const{node:i,after:r}=Q(e,s);if(!i){return}const a=s.getBBCodeScheme();const o=a.createFragment();const l=L.$isElementNode(e)?e.getChildren():[];for(const e of l){J(e,o,s)}i.appendChild(o);t.appendChild(i);if(F.Type.isFunction(r)){const t=r.call(e,i);if(t){i.getParent().replaceChild(i,t)}}}const q=["bold","italic","strikethrough","underline"];function Q(e,t){const s=e.getType();const i=t.getBBCodeExportMap();const r=i.get(s);if(F.Type.isFunction(r)){return r(e)}const a=t.getBBCodeScheme();if(L.$isTextNode(e)&&e.getType()==="text"){const t=a.createText({encode:false,content:e.getTextContent()});if(e.getFormat()===0){return{node:t}}let s=t;q.forEach((t=>{const r=i.get(`text:${t}`);if(F.Type.isFunction(r)){s=r(e,s)||s}}));return{node:s}}if(L.$isLineBreakNode(e)){return{node:a.createNewLine()}}if(L.$isTabNode(e)){return{node:a.createTab()}}if(L.$isTextNode(e)||L.$isElementNode(e)){const t=a.createText({encode:false,content:e.getTextContent()});return{node:t}}return{node:null}}function Z(e,t,s){const i=s.getBBCodeScheme();const r=i.createElement({name:t});r.appendChild(e);return r}var ee=babelHelpers.classPrivateFieldLooseKey("textEditor");var te=babelHelpers.classPrivateFieldLooseKey("destroyed");var se=babelHelpers.classPrivateFieldLooseKey("removeListeners");class ie{constructor(e){Object.defineProperty(this,ee,{writable:true,value:null});Object.defineProperty(this,te,{writable:true,value:false});Object.defineProperty(this,se,{writable:true,value:()=>{}});babelHelpers.classPrivateFieldLooseBase(this,ee)[ee]=e}static getName(){throw new Error("getName must be implemented in a child class")}static getNodes(e){return[]}importBBCode(){return null}exportBBCode(){return null}validateScheme(){return null}afterInit(){}getName(){return this.constructor.getName()}getEditor(){return babelHelpers.classPrivateFieldLooseBase(this,ee)[ee]}getLexicalEditor(){return babelHelpers.classPrivateFieldLooseBase(this,ee)[ee].getLexicalEditor()}cleanUpRegister(...e){babelHelpers.classPrivateFieldLooseBase(this,se)[se]=y.mergeRegister(babelHelpers.classPrivateFieldLooseBase(this,se)[se],...e)}isDestroyed(){return babelHelpers.classPrivateFieldLooseBase(this,te)[te]}destroy(){babelHelpers.classPrivateFieldLooseBase(this,te)[te]=true;babelHelpers.classPrivateFieldLooseBase(this,se)[se]();babelHelpers.classPrivateFieldLooseBase(this,se)[se]=null}}class re extends b.EventEmitter{constructor(){super();this.setEventNamespace("BX.UI.TextEditor.ToolbarItem")}getContainer(){throw new Error("You must implement getContainer() method.")}render(){throw new Error("You must implement render() method.")}}let ae=e=>e,oe;var le=babelHelpers.classPrivateFieldLooseKey("format");var ne=babelHelpers.classPrivateFieldLooseKey("blockType");var de=babelHelpers.classPrivateFieldLooseKey("active");var ce=babelHelpers.classPrivateFieldLooseKey("disabled");var he=babelHelpers.classPrivateFieldLooseKey("disableInsideUnformatted");var be=babelHelpers.classPrivateFieldLooseKey("disableCallback");var ue=babelHelpers.classPrivateFieldLooseKey("container");var pe=babelHelpers.classPrivateFieldLooseKey("handleClick");class ge extends re{constructor(...e){super(...e);Object.defineProperty(this,pe,{value:ve});Object.defineProperty(this,le,{writable:true,value:null});Object.defineProperty(this,ne,{writable:true,value:null});Object.defineProperty(this,de,{writable:true,value:false});Object.defineProperty(this,ce,{writable:true,value:false});Object.defineProperty(this,he,{writable:true,value:false});Object.defineProperty(this,be,{writable:true,value:null});Object.defineProperty(this,ue,{writable:true,value:null})}setContent(e){if(F.Type.isString(e)){this.getContainer().innerHTML=e}else if(F.Type.isElementNode(e)){this.getContainer().append(e)}}setFormat(e){babelHelpers.classPrivateFieldLooseBase(this,le)[le]=e}getFormat(){return babelHelpers.classPrivateFieldLooseBase(this,le)[le]}hasFormat(){return babelHelpers.classPrivateFieldLooseBase(this,le)[le]}setBlockType(e){babelHelpers.classPrivateFieldLooseBase(this,ne)[ne]=e}getBlockType(){return babelHelpers.classPrivateFieldLooseBase(this,ne)[ne]}setTooltip(e){if(F.Type.isStringFilled(e)){F.Dom.attr(this.getContainer(),"title",F.Text.encode(e))}else if(e===null){F.Dom.attr(this.getContainer(),"title",null)}}disableInsideUnformatted(){babelHelpers.classPrivateFieldLooseBase(this,he)[he]=true}enableInsideUnformatted(){babelHelpers.classPrivateFieldLooseBase(this,he)[he]=false}shouldDisableInsideUnformatted(){return babelHelpers.classPrivateFieldLooseBase(this,he)[he]}setActive(e=true){if(e===babelHelpers.classPrivateFieldLooseBase(this,de)[de]){return}babelHelpers.classPrivateFieldLooseBase(this,de)[de]=e;if(e){F.Dom.addClass(this.getContainer(),"--active")}else{F.Dom.removeClass(this.getContainer(),"--active")}}isActive(){return babelHelpers.classPrivateFieldLooseBase(this,de)[de]}setDisabled(e=true){if(e===babelHelpers.classPrivateFieldLooseBase(this,ce)[ce]){return}babelHelpers.classPrivateFieldLooseBase(this,ce)[ce]=e;if(e){F.Dom.attr(this.getContainer(),{disabled:true})}else{F.Dom.attr(this.getContainer(),{disabled:null})}}disable(){this.setDisabled(true)}enable(){this.setDisabled(false)}isDisabled(){return babelHelpers.classPrivateFieldLooseBase(this,ce)[ce]}hasOwnDisableCallback(){return babelHelpers.classPrivateFieldLooseBase(this,be)[be]!==null}setDisableCallback(e){if(F.Type.isFunction(e)){babelHelpers.classPrivateFieldLooseBase(this,be)[be]=e}}invokeDisableCallback(){return babelHelpers.classPrivateFieldLooseBase(this,be)[be]()}getContainer(){if(babelHelpers.classPrivateFieldLooseBase(this,ue)[ue]===null){babelHelpers.classPrivateFieldLooseBase(this,ue)[ue]=F.Tag.render(oe||(oe=ae` <button type="button" class="ui-text-editor-toolbar-button" onclick="${0}" > </button> `),babelHelpers.classPrivateFieldLooseBase(this,pe)[pe].bind(this))}return babelHelpers.classPrivateFieldLooseBase(this,ue)[ue]}render(){return this.getContainer()}}function ve(){this.emit("onClick")}function fe(e){let t="";const s=e.split(/((?:\r?\n){2})/);for(const e of s){if(e==="\n\n"||e==="\r\n\r\n"){continue}t+=`<p>${e.replaceAll(/(\r?\n)/g,"<br>")}</p>`}return t}class Pe extends L.ElementNode{static getType(){return"quote"}static clone(e){return new Pe(e.__key)}createDOM(e,t){var s;const i=document.createElement("blockquote");i.setAttribute("spellcheck","false");if(F.Type.isStringFilled(e==null?void 0:(s=e.theme)==null?void 0:s.quote)){F.Dom.addClass(i,e.theme.quote)}return i}updateDOM(e,t,s){return false}static importDOM(){return{blockquote:e=>({conversion:e=>({node:me()}),priority:0})}}static importJSON(e){const t=me();t.setFormat(e.format);t.setIndent(e.indent);t.setDirection(e.direction);return t}exportJSON(){return{...super.exportJSON(),type:"quote"}}canIndent(){return false}isInline(){return false}canReplaceWith(e){return false}collapseAtStart(e){ye(this);return true}canBeEmpty(){return false}isShadowRoot(){return true}}function me(){return L.$applyNodeReplacement(new Pe)}function Le(e){return e instanceof Pe}function ye(e){if(!Le(e)){return false}let t=e;for(const s of e.getChildren()){if(L.$isElementNode(s)||L.$isDecoratorNode(s)){t=t.insertAfter(s)}else{t=t.insertAfter(L.$createParagraphNode().append(s))}}e.remove();return true}function Fe(e,t){let s=e;while(s!==null&&s.getParent()!==null&&!t(s)){s=s.getParentOrThrow()}return t(s)?s:null}function He(e){return(L.$isElementNode(e)||L.$isDecoratorNode(e))&&!e.isInline()&&!e.isParentRequired()}function Be(e,t){if(e===null){return null}const s=e.anchor;const i=s.getNode();const r=t();if(L.$isRootOrShadowRoot(i)){const e=i.getFirstChild();if(e){e.replace(r,true)}else{i.append(r)}return r}const a=new Set;const o=e.getNodes();const l=Fe(e.anchor.getNode(),He);if(l&&!o.includes(l)){o.unshift(l)}a.add(r.getKey());let n=true;for(const e of o){if(!He(e)||a.has(e.getKey())){continue}const t=Fe(e.getParent(),(e=>a.has(e.getKey())));if(t){continue}if(n){n=false;e.replace(r);r.append(e)}else{r.append(e)}a.add(e.getKey())}return r}const Ce=L.createCommand("INSERT_QUOTE_COMMAND");const Oe=L.createCommand("FORMAT_QUOTE_COMMAND");const Te=L.createCommand("REMOVE_QUOTE_COMMAND");var Ee=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Ne=babelHelpers.classPrivateFieldLooseKey("registerComponents");class _e extends ie{constructor(e){super(e);Object.defineProperty(this,Ne,{value:De});Object.defineProperty(this,Ee,{value:Me});babelHelpers.classPrivateFieldLooseBase(this,Ee)[Ee]();babelHelpers.classPrivateFieldLooseBase(this,Ne)[Ne]()}static getName(){return"Quote"}static getNodes(e){return[Pe]}importBBCode(){return{quote:()=>({conversion:e=>({node:me(),after:e=>U(e)}),priority:0})}}exportBBCode(){return{quote:e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createElement({name:"quote"})}}}}validateScheme(){return{nodes:[{nodeClass:Pe,validate:e=>{let t=null;e.getChildren().forEach((e=>{if(k(e)){if(t===null){const s=L.$createParagraphNode();e.replace(s);s.append(e);t=s}else{t.append(e)}}else{t=null}}));return false}}],bbcodeMap:{quote:"quote"}}}}function Me(){this.cleanUpRegister(this.getEditor().registerCommand(Ce,(e=>{const t=me();if(F.Type.isPlainObject(e)&&F.Type.isStringFilled(e.content)){const s=K(e.content,this.getEditor(),false);t.append(...U(s));y.$insertNodeToNearestRoot(t)}else{t.append(L.$createParagraphNode());y.$insertNodeToNearestRoot(t)}t.selectStart();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(Oe,(()=>{const e=L.$getSelection();if(L.$isRangeSelection(e)){const t=me();Be(e,(()=>t));if(t.isEmpty()){t.append(L.$createParagraphNode())}t.selectStart()}return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(Te,(()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return false}let t=y.$findMatchingParent(e.anchor.getNode(),Le);if(!t){t=y.$findMatchingParent(e.focus.getNode(),Le)}ye(t);return true}),L.COMMAND_PRIORITY_LOW))}function De(){this.getEditor().getComponentRegistry().register("quote",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --quote"></span>');e.setBlockType("quote");e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_QUOTE"));e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{if(e.isActive()){this.getEditor().dispatchCommand(Te)}else if(this.getEditor().getNewLineMode()===N.LINE_BREAK){this.getEditor().dispatchCommand(Ce)}else{this.getEditor().dispatchCommand(Oe)}}))}));return e}))}var Se=Object.freeze({QuoteNode:Pe,$createQuoteNode:me,$isQuoteNode:Le,$removeQuote:ye,INSERT_QUOTE_COMMAND:Ce,FORMAT_QUOTE_COMMAND:Oe,REMOVE_QUOTE_COMMAND:Te,QuotePlugin:_e});function Re(e){const t=xe();return{node:t}}class Ie extends L.ElementNode{static getType(){return"spoiler-content"}static clone(e){return new Ie(e.__key)}createDOM(e,t){var s,i;const r=document.createElement("div");if(F.Type.isStringFilled(e==null?void 0:(s=e.theme)==null?void 0:(i=s.spoiler)==null?void 0:i.content)){F.Dom.addClass(r,e.theme.spoiler.content)}return r}updateDOM(e,t,s){return false}static importDOM(){return{div:e=>{if(!e.hasAttribute("data-spoiler-content")){return null}return{conversion:Re,priority:2}}}}static importJSON(e){return xe()}exportDOM(){const e=document.createElement("div");e.setAttribute("data-spoiler-content","true");return{element:e}}exportJSON(){return{...super.exportJSON(),type:"spoiler-content",version:1}}isShadowRoot(){return true}isParentRequired(){return true}createParentElementNode(){return ht()}canIndent(){return false}canInsertAfter(e){return false}canReplaceWith(e){return false}insertBefore(e){const t=this.getFirstChild();const s=L.$isElementNode(e)||L.$isDecoratorNode(e)?e:L.$createParagraphNode().append(e);if(t===null){this.append(s)}else{t.insertBefore(s)}return s}insertAfter(e){const t=L.$isElementNode(e)||L.$isDecoratorNode(e)?e:L.$createParagraphNode().append(e);this.append(t);return t}}function xe(){return new Ie}function we(e){return e instanceof Ie}class Ae extends L.TextNode{static getType(){return"spoiler-title-text"}static clone(e){return new Ae(e.__text,e.__key)}createDOM(e){return super.createDOM(e)}static importJSON(e){return $e(e.text)}exportJSON(){return{...super.exportJSON(),type:"spoiler-title-text"}}}function $e(e=""){return L.$applyNodeReplacement(new Ae(e))}function Ke(e){return e instanceof Ae}const je=L.createCommand("INSERT_SPOILER_COMMAND");const ke=L.createCommand("REMOVE_SPOILER_COMMAND");var Ue=babelHelpers.classPrivateFieldLooseKey("registerComponents");var We=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Ye=babelHelpers.classPrivateFieldLooseKey("registerNodeTransforms");var ze=babelHelpers.classPrivateFieldLooseKey("handleDeleteCharacter");var Xe=babelHelpers.classPrivateFieldLooseKey("handleEnter");var Ge=babelHelpers.classPrivateFieldLooseKey("handlePaste");class Ve extends ie{constructor(e){super(e);Object.defineProperty(this,Ge,{value:tt});Object.defineProperty(this,Xe,{value:et});Object.defineProperty(this,ze,{value:Ze});Object.defineProperty(this,Ye,{value:Qe});Object.defineProperty(this,We,{value:qe});Object.defineProperty(this,Ue,{value:Je});babelHelpers.classPrivateFieldLooseBase(this,Ye)[Ye]();babelHelpers.classPrivateFieldLooseBase(this,We)[We]();babelHelpers.classPrivateFieldLooseBase(this,Ue)[Ue]()}static getName(){return"Spoiler"}static getNodes(e){return[dt,at,Ie,Ae]}importBBCode(){return{spoiler:()=>({conversion:e=>{const t=F.Type.isStringFilled(e.getValue())?it(e.getValue()):F.Loc.getMessage("TEXT_EDITOR_SPOILER_TITLE");return{node:ht(false),after:e=>[ot().append($e(t)),xe().append(...U(e))]}},priority:0})}}exportBBCode(){return{spoiler:e=>{const t=this.getEditor().getBBCodeScheme();const s=e.getChildren()[0];const i=it(s.getTextContent());const r=i===F.Loc.getMessage("TEXT_EDITOR_SPOILER_TITLE")?"":i;return{node:t.createElement({name:"spoiler",value:r})}},"spoiler-title":e=>({node:null}),"spoiler-content":e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createFragment()}}}}validateScheme(){return{nodes:[{nodeClass:dt},{nodeClass:Ie,validate:e=>{e.getChildren().forEach((e=>{if(k(e)){const t=L.$createParagraphNode();e.replace(t);t.append(e)}}));return false}}],bbcodeMap:{spoiler:"spoiler","spoiler-content":"spoiler"}}}}function Je(){this.getEditor().getComponentRegistry().register("spoiler",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --insert-spoiler"></span>');e.setBlockType("spoiler");e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_SPOILER"));e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{if(e.isActive()){this.getEditor().dispatchCommand(ke)}else{this.getEditor().dispatchCommand(je)}}))}));return e}))}function qe(){this.cleanUpRegister(this.getEditor().registerCommand(L.DELETE_CHARACTER_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,ze)[ze].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ENTER_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Xe)[Xe].bind(this),L.COMMAND_PRIORITY_NORMAL),this.getEditor().registerCommand(L.INSERT_PARAGRAPH_COMMAND,(e=>{const t=L.$getSelection();if(L.$isRangeSelection(t)){const e=y.$findMatchingParent(t.anchor.getNode(),(e=>lt(e)));if(e){const s=e.insertNewAfter(t);if(s){s.selectStart()}return true}}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.PASTE_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ge)[Ge].bind(this),L.COMMAND_PRIORITY_NORMAL),this.getEditor().registerCommand(je,(e=>{this.getEditor().update((()=>{const t=F.Type.isPlainObject(e)&&F.Type.isStringFilled(e.title)?e.title:undefined;const s=L.$getSelection();const i=st(s,t);i.getTitleNode().select()}));return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(ke,(()=>{this.getEditor().update((()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return}let t=y.$findMatchingParent(e.anchor.getNode(),bt);if(!t){t=y.$findMatchingParent(e.focus.getNode(),bt)}nt(t)}));return true}),L.COMMAND_PRIORITY_LOW))}function Qe(){this.cleanUpRegister(this.getEditor().registerNodeTransform(dt,(e=>{const t=e.getChildren();if(t.length!==2||!lt(t[0])||!we(t[1])){for(const s of t){if(L.$isElementNode(s)||L.$isDecoratorNode(s)){e.insertBefore(s)}else{e.insertBefore(L.$createParagraphNode().append(s))}}e.remove()}})),this.getEditor().registerNodeTransform(at,(e=>{const t=e.getParent();if(!bt(t)){e.replace(L.$createParagraphNode().append(...e.getChildren()))}else if(e.getChildrenSize()===1&&!Ke(e.getFirstChild())||e.getChildrenSize()>1){L.$setSelection(null);const t=it(e.getTextContent());e.clear();e.append($e(t));e.select()}})),this.getEditor().registerNodeTransform(Ae,(e=>{const t=e.getParent();if(!lt(t)){e.replace(L.$createParagraphNode().append(L.$createTextNode(e.getTextContent())))}})),this.getEditor().registerNodeTransform(Ie,(e=>{const t=e.getParent();if(!bt(t)){const t=e.getChildren();for(const s of t){if(L.$isElementNode(s)||L.$isDecoratorNode(s)){e.insertBefore(s)}else{e.insertBefore(L.$createParagraphNode().append(s))}}e.remove()}})))}function Ze(){const e=L.$getSelection();if(!L.$isRangeSelection(e)||!e.isCollapsed()||e.anchor.offset!==0){return false}const t=e.anchor.getNode();const s=t.getTopLevelElement();if(s===null){return false}const i=s.getPreviousSibling();if(!bt(i)||i.getOpen()){return false}i.setOpen(true);return true}function et(e){if(e&&(e.ctrlKey||e.metaKey)){const e=L.$getPreviousSelection();if(L.$isRangeSelection(e)&&e.isCollapsed()){const t=y.$findMatchingParent(e.anchor.getNode(),(e=>L.$isElementNode(e)&&!e.isInline()));if(lt(t)){const s=t.getParent();if(bt(s)){s.toggleOpen();L.$setSelection(e.clone());return true}}}}return false}function tt(e){const t=L.$getSelection();if(!L.$isRangeSelection(t)||!(e instanceof ClipboardEvent)||e.clipboardData===null){return false}const s=y.$findMatchingParent(t.anchor.getNode(),(e=>lt(e)));if(s){r.$insertDataTransferForPlainText(e.clipboardData,t);return true}return false}function st(e,t){if(!L.$isRangeSelection(e)){return null}const s=e.anchor;const i=s.getNode();const r=ct(true,t);if(L.$isRootOrShadowRoot(i)){const e=i.getFirstChild();if(e){e.replace(r,true)}else{i.append(r)}return r}const a=new Set;const o=e.getNodes();const l=Fe(e.anchor.getNode(),He);if(l&&!o.includes(l)){o.unshift(l)}a.add(r.getKey());a.add(r.getTitleNode().getKey());a.add(r.getContentNode().getKey());let n=true;for(const e of o){if(!He(e)||a.has(e.getKey())){continue}const t=Fe(e.getParent(),(e=>a.has(e.getKey())));if(t){continue}if(n){n=false;e.replace(r);r.getContentNode().append(e)}else{r.getContentNode().append(e)}a.add(e.getKey())}return r}function it(e){return e.trim().replaceAll(/\r?\n|\t/gm,"").replace("\r","").replaceAll(/\s+/g," ")}function rt(e){const t=ot();return{node:t}}class at extends L.ElementNode{constructor(...e){super(...e);this.__language="hack";this.__flags=E}static getType(){return"spoiler-title"}static clone(e){return new at(e.__key)}createDOM(e,t){var s,i;const r=document.createElement("summary");if(F.Type.isStringFilled(e==null?void 0:(s=e.theme)==null?void 0:(i=s.spoiler)==null?void 0:i.title)){F.Dom.addClass(r,e.theme.spoiler.title)}F.Dom.addClass(r,"ui-icon-set__scope");return r}updateDOM(e,t,s){return false}static importDOM(){return{summary:e=>({conversion:rt,priority:1})}}static importJSON(e){return ot()}exportDOM(){const e=document.createElement("summary");return{element:e}}exportJSON(){return{...super.exportJSON(),type:"spoiler-title",version:1}}collapseAtStart(e){const t=this.getParent();if(!bt(t)){return false}return nt(t)}insertNewAfter(e,t=true){const s=this.getParentOrThrow();if(!bt(s)){throw new Error("SpoilerTitleNode expects to be child of SpoilerNode")}if(s.getOpen()){const e=this.getNextSibling();if(!we(e)){throw new Error("SpoilerTitleNode expects to have SpoilerContentNode sibling")}const t=e.getFirstChild();if(L.$isElementNode(t)||L.$isDecoratorNode(t)){return t}const s=L.$createParagraphNode();e.append(s);return s}const i=L.$createParagraphNode();s.insertAfter(i,t);return i}isParentRequired(){return true}createParentElementNode(){return ht()}canIndent(){return false}insertAfter(e){const t=e.getTextContent();this.clear();this.append($e(it(t)));return this}}function ot(){return new at}function lt(e){return e instanceof at}function nt(e){if(!bt(e)){return false}const t=e.getContentNode();let s=e;if(t!==null){for(const e of t.getChildren()){if(L.$isElementNode(e)||L.$isDecoratorNode(e)){s=s.insertAfter(e)}else{s=s.insertAfter(L.$createParagraphNode().append(e))}}}e.remove();return true}class dt extends L.ElementNode{constructor(e,t){super(t);this.__open=e}static getType(){return"spoiler"}static clone(e){return new dt(e.__open,e.__key)}createDOM(e,t){var s,i;const r=document.createElement("details");if(F.Type.isStringFilled(e==null?void 0:(s=e.theme)==null?void 0:(i=s.spoiler)==null?void 0:i.container)){F.Dom.addClass(r,e.theme.spoiler.container)}r.open=this.__open;F.Event.bind(r,"toggle",(()=>{const e=t.getEditorState().read((()=>this.getOpen()));if(e!==r.open){t.update((()=>this.toggleOpen()))}}));return r}updateDOM(e,t,s){if(e.__open!==this.__open){t.open=this.__open}return false}static importDOM(){return{details:e=>({conversion:e=>{const t=F.Type.isBoolean(e.open)?e.open:true;return{node:ct(t)}},priority:1})}}static importJSON(e){return ht(e.open)}exportDOM(e){const t=document.createElement("details");if(this.__open){t.setAttribute("open",true)}return{element:t}}exportJSON(){return{...super.exportJSON(),open:this.__open,type:"spoiler",version:1}}isShadowRoot(){return true}canBeEmpty(){return false}append(...e){for(const t of e){if(lt(t)){const e=t;if(this.getTitleNode()===null){super.append(e)}else{this.getTitleNode().clear();this.getTitleNode().append($e(t.getTextContent()))}}else if(we(t)){const e=t;if(this.getContentNode()===null){super.append(e)}else{this.getContentNode().append(...e.getChildren())}}else if(L.$isElementNode(t)||L.$isDecoratorNode(t)){this.getContentNode().append(t)}else{this.getContentNode().append(L.$createParagraphNode().append(t))}}return this}getTitleNode(){return this.getChildren()[0]||null}getContentNode(){return this.getChildren()[1]||null}setOpen(e){const t=this.getWritable();t.__open=e}getOpen(){return this.getLatest().__open}toggleOpen(){this.setOpen(!this.getOpen())}}function ct(e,t=F.Loc.getMessage("TEXT_EDITOR_SPOILER_TITLE")){return ht(e).append(ot().append($e(t)),xe())}function ht(e){return new dt(e)}function bt(e){return e instanceof dt}var ut=Object.freeze({SpoilerNode:dt,$createSpoiler:ct,$createSpoilerNode:ht,$isSpoilerNode:bt,convertSummaryElement:rt,SpoilerTitleNode:at,$createSpoilerTitleNode:ot,$isSpoilerTitleNode:lt,$removeSpoiler:nt,convertSpoilerContentElement:Re,SpoilerContentNode:Ie,$createSpoilerContentNode:xe,$isSpoilerContentNode:we,INSERT_SPOILER_COMMAND:je,REMOVE_SPOILER_COMMAND:ke,SpoilerPlugin:Ve,insertSpoiler:st,trimSpoilerTitle:it});class pt extends L.ParagraphNode{constructor(e,t){super(t);this.__mode=N.MIXED;this.__mode=e}static getType(){return"custom-paragraph"}static clone(e){return new pt(e.__mode,e.__key)}insertNewAfter(e,t){if(this.__mode===N.PARAGRAPH){return super.insertNewAfter(e,t)}if(this.__mode===N.MIXED){const s=this.getChildren();const i=s.length;if(i>=1&&s[i-1].getTextContent()==="\n"&&e.isCollapsed()&&e.anchor.key===this.__key&&e.anchor.offset===i){s[i-1].remove();const e=L.$createParagraphNode();this.insertAfter(e,t);return e}if(L.$hasUpdateTag("paste")){return super.insertNewAfter(e,t)}}e.insertLineBreak();return null}exportJSON(){return{...super.exportJSON(),mode:this.__mode,type:"custom-paragraph",version:1}}static importDOM(){return{p:e=>({conversion:e=>({node:L.$createParagraphNode()}),priority:1}),h1:e=>({conversion:gt,priority:1}),h2:e=>({conversion:gt,priority:1}),h3:e=>({conversion:gt,priority:1}),h4:e=>({conversion:gt,priority:1}),h5:e=>({conversion:gt,priority:1}),h6:e=>({conversion:gt,priority:1})}}collapseAtStart(){const e=this.getChildren();if(e.length===0||L.$isTextNode(e[0])&&e[0].getTextContent().trim()===""){const e=this.getNextSibling();if(e!==null){this.selectNext();this.remove();return true}const t=this.getPreviousSibling();if(t!==null){this.selectPrevious();this.remove();return true}const s=this.getParent();if(s!==null&&!L.$isRootNode(s)&&Object.getPrototypeOf(s).hasOwnProperty("collapseAtStart")){return s.collapseAtStart()}}return false}static importJSON(e){return super.importJSON(e)}}function gt(e){return{node:L.$createParagraphNode(),forChild:e=>{if(L.$isTextNode(e)){e.toggleFormat("bold")}return e}}}const vt=L.createCommand("FORMAT_PARAGRAPH_COMMAND");var ft=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Pt=babelHelpers.classPrivateFieldLooseKey("registerListeners");var mt=babelHelpers.classPrivateFieldLooseKey("isBlockNode");var Lt=babelHelpers.classPrivateFieldLooseKey("handlePaste");var yt=babelHelpers.classPrivateFieldLooseKey("handleEscapeUp");var Ft=babelHelpers.classPrivateFieldLooseKey("handleEscapeDown");class Ht extends ie{constructor(e){super(e);Object.defineProperty(this,Ft,{value:Nt});Object.defineProperty(this,yt,{value:Et});Object.defineProperty(this,Lt,{value:Tt});Object.defineProperty(this,mt,{value:Ot});Object.defineProperty(this,Pt,{value:Ct});Object.defineProperty(this,ft,{value:Bt});babelHelpers.classPrivateFieldLooseBase(this,ft)[ft]();babelHelpers.classPrivateFieldLooseBase(this,Pt)[Pt]()}static getName(){return"Paragraph"}static getNodes(e){return[pt,{replace:L.ParagraphNode,with:t=>new pt(e.getNewLineMode()),withClass:pt}]}importBBCode(){return{p:()=>({conversion:e=>_t(e),priority:0}),left:()=>({conversion:e=>_t(e),priority:0}),right:()=>({conversion:e=>_t(e),priority:0}),center:()=>({conversion:e=>_t(e),priority:0}),justify:()=>({conversion:e=>_t(e),priority:0})}}exportBBCode(){return{paragraph:e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createElement({name:"p"})}},"custom-paragraph":e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createElement({name:"p"})}}}}validateScheme(){return{nodes:[{nodeClass:pt}],bbcodeMap:{root:"#root",tab:"#tab",text:"#text",paragraph:"p","custom-paragraph":"p",linebreak:"#linebreak"}}}}function Bt(){this.cleanUpRegister(this.getEditor().registerCommand(vt,(()=>{const e=L.$getSelection();if(L.$isRangeSelection(e)){d.$setBlocksType(e,(()=>L.$createParagraphNode()))}return true}),L.COMMAND_PRIORITY_EDITOR))}function Ct(){this.cleanUpRegister(this.getEditor().registerNodeTransform(L.RootNode,(e=>{const t=e.getLastChild();if(!L.$isParagraphNode(t)){e.append(L.$createParagraphNode())}})),this.getEditor().registerCommand(L.KEY_ARROW_UP_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,yt)[yt].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ARROW_LEFT_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,yt)[yt].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ARROW_DOWN_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ft)[Ft].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ARROW_RIGHT_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ft)[Ft].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.PASTE_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Lt)[Lt].bind(this),L.COMMAND_PRIORITY_LOW))}function Ot(e){return Le(e)||At(e)||bt(e)}function Tt(e){if(this.getEditor().getNewLineMode()===N.PARAGRAPH){return false}if(this.getEditor().getNewLineMode()===N.LINE_BREAK){e.preventDefault();this.getEditor().update((()=>{const t=L.$getSelection();const{clipboardData:s}=e;if(s!==null&&L.$isRangeSelection(t)){r.$insertDataTransferForPlainText(s,t)}}),{tag:"paste"});return true}const t=e.clipboardData;if(!t||t.items.length!==1||t.items[0].type!=="text/plain"&&t.items[0].type!=="text/uri-list"){return false}const s=t.getData("text/plain")||t.getData("text/uri-list");const i=/\n/.test(s);if(!i){return false}e.preventDefault();e.stopPropagation();const a=fe(s);const o=new DataTransfer;o.setData("text/plain",t.getData("text/plain"));o.setData("text/html",a);const l=new ClipboardEvent("paste",{clipboardData:o,bubbles:true,cancelable:true});if(l.clipboardData.items.length===0){l.clipboardData.setData("text/plain",t.getData("text/plain"));l.clipboardData.setData("text/html",a)}this.getEditor().getEditableContainer().dispatchEvent(l);return true}function Et(){const e=L.$getSelection();if(L.$isRangeSelection(e)&&e.isCollapsed()&&e.anchor.offset===0){const s=y.$findMatchingParent(e.anchor.getNode(),babelHelpers.classPrivateFieldLooseBase(this,mt)[mt]);if(babelHelpers.classPrivateFieldLooseBase(this,mt)[mt](s)){var t;const i=s.getParent();if(i!==null&&i.getFirstChild()===s&&(e.anchor.key===((t=s.getFirstDescendant())==null?void 0:t.getKey())||e.anchor.key===s.getKey())){s.insertBefore(L.$createParagraphNode())}}}return false}function Nt(){const e=L.$getSelection();if(L.$isRangeSelection(e)&&e.isCollapsed()){const t=y.$findMatchingParent(e.anchor.getNode(),babelHelpers.classPrivateFieldLooseBase(this,mt)[mt]);if(babelHelpers.classPrivateFieldLooseBase(this,mt)[mt](t)){const s=t.getParent();if(s!==null&&s.getLastChild()===t){const s=t.getFirstDescendant();const i=t.getLastDescendant();if(i!==null&&e.anchor.key===i.getKey()&&e.anchor.offset===i.getTextContentSize()||s!==null&&e.anchor.key===s.getKey()&&e.anchor.offset===s.getTextContentSize()||e.anchor.key===t.getKey()&&e.anchor.offset===t.getTextContentSize()){t.insertAfter(L.$createParagraphNode())}}}}return false}function _t(e){return{node:L.$createParagraphNode()}}var Mt=Object.freeze({FORMAT_PARAGRAPH_COMMAND:vt,ParagraphPlugin:Ht});class Dt extends L.TextNode{constructor(e,t,s){super(e,s);this.__flags=E;this.__highlightType=t}static getType(){return"code-token"}static clone(e){return new Dt(e.__text,e.__highlightType||undefined,e.__key)}getHighlightType(){const e=this.getLatest();return e.__highlightType}createDOM(e){const t=super.createDOM(e);const s=St(e.theme,this.__highlightType);y.addClassNamesToElement(t,s);return t}updateDOM(e,t,s){const i=super.updateDOM(e,t,s);const r=St(s.theme,e.__highlightType);const a=St(s.theme,this.__highlightType);if(r!==a){if(r){y.removeClassNamesFromElement(t,r)}if(a){y.addClassNamesToElement(t,a)}}return i}static importJSON(e){const t=Rt(e.text,e.highlightType);t.setFormat(e.format);t.setDetail(e.detail);t.setMode(e.mode);t.setStyle(e.style);return t}exportJSON(){return{...super.exportJSON(),highlightType:this.getHighlightType(),type:"code-token",version:1}}setFormat(e){return this}isParentRequired(){return true}createParentElementNode(){return wt()}}function St(e,t){return t&&e&&e.codeHighlight&&e.codeHighlight[t]}function Rt(e,t){return L.$applyNodeReplacement(new Dt(e,t))}function It(e){return e instanceof Dt}class xt extends L.ElementNode{constructor(...e){super(...e);this.__language="lexical-hack";this.__flags=E}static getType(){return"code"}static clone(e){return new xt(e.__key)}createDOM(e,t){var s;const i=document.createElement("code");i.setAttribute("spellcheck","false");if(F.Type.isStringFilled(e==null?void 0:(s=e.theme)==null?void 0:s.code)){F.Dom.addClass(i,e.theme.code)}return i}updateDOM(e,t,s){return false}exportDOM(e){var t,s;const i=document.createElement("pre");i.setAttribute("spellcheck","false");if(F.Type.isStringFilled((t=e._config)==null?void 0:(s=t.theme)==null?void 0:s.code)){F.Dom.addClass(i,e._config.theme.code)}return{element:i}}static importDOM(){return{code:e=>{const t=e.textContent!==null&&(/\r?\n/.test(e.textContent)||Gt(e,"BR"));return t?{conversion:$t,priority:1}:null},div:e=>({conversion:Kt,priority:1}),pre:e=>({conversion:$t,priority:0}),table:e=>{const t=e;if(Xt(t)){return{conversion:jt,priority:3}}return null},td:e=>{const t=e;const s=t.closest("table");if(zt(t)){return{conversion:Ut,priority:3}}if(s&&Xt(s)){return{conversion:kt,priority:3}}return null},tr:e=>{const t=e;const s=t.closest("table");if(s&&Xt(s)){return{conversion:kt,priority:3}}return null}}}static importJSON(e){const t=wt();t.setFormat(e.format);t.setIndent(e.indent);t.setDirection(e.direction);return t}exportJSON(){return{...super.exportJSON(),type:"code"}}canIndent(){return false}canReplaceWith(e){return false}isInline(){return false}collapseAtStart(e){const t=L.$createParagraphNode();const s=this.getChildren();s.forEach((e=>t.append(e)));this.replace(t);return true}insertNewAfter(e,t=true){const s=this.getChildren();const i=s.length;if(i>=2&&s[i-1].getTextContent()==="\n"&&s[i-2].getTextContent()==="\n"&&e.isCollapsed()&&e.anchor.key===this.__key&&e.anchor.offset===i){s[i-1].remove();s[i-2].remove();const e=L.$createParagraphNode();this.insertAfter(e,t);return e}const{anchor:r,focus:a}=e;const o=r.isBefore(a)?r:a;const l=o.getNode();if(L.$isTextNode(l)){let e=vs(l);const t=[];while(true){if(L.$isTabNode(e)){t.push(L.$createTabNode());e=e.getNextSibling()}else if(It(e)){let s=0;const i=e.getTextContent();const r=e.getTextContentSize();while(s<r&&i[s]===" "){s++}if(s!==0){t.push(Rt(" ".repeat(s)))}if(s!==r){break}e=e.getNextSibling()}else{break}}const s=l.splitText(r.offset)[0];const i=r.offset===0?0:1;const a=s.getIndexWithinParent()+i;const o=l.getParentOrThrow();const d=[L.$createLineBreakNode(),...t];o.splice(a,0,d);const c=t[t.length-1];if(c){c.select()}else if(r.offset===0){s.selectPrevious()}else{var n;(n=s.getNextSibling())==null?void 0:n.selectNext(0,0)}}if(At(l)){const{offset:t}=e.anchor;l.splice(t,0,[L.$createLineBreakNode()]);l.select(t+1,t+1)}return null}}function wt(){return L.$applyNodeReplacement(new xt)}function At(e){return e instanceof xt}function $t(e){return{node:wt()}}function Kt(e){const t=e;const s=Wt(t);if(!s&&!Yt(t)){return{node:null}}return{after:t=>{const s=e.parentNode;if(s!==null&&e!==s.lastChild){t.push(L.$createLineBreakNode())}return t},node:s?wt():null}}function jt(){return{node:wt()}}function kt(){return{node:null}}function Ut(e){const t=e;return{after:e=>{if(t.parentNode&&t.parentNode.nextSibling){e.push(L.$createLineBreakNode())}return e},node:null}}function Wt(e){return e.style.fontFamily.match("monospace")!==null}function Yt(e){let t=e.parentElement;while(t!==null){if(Wt(t)){return true}t=t.parentElement}return false}function zt(e){return e.classList.contains("js-file-line")}function Xt(e){return e.classList.contains("js-file-line-container")}function Gt(e,t){let s=false;for(const i of e.childNodes){if(F.Type.isElementNode(i)&&i.tagName===t){return true}s=Gt(i,t)}return s}const Vt=L.createCommand("FORMAT_CODE_COMMAND");const Jt=L.createCommand("INSERT_CODE_COMMAND");var qt=babelHelpers.classPrivateFieldLooseKey("nodesCurrentlyHighlighting");var Qt=babelHelpers.classPrivateFieldLooseKey("codeParser");var Zt=babelHelpers.classPrivateFieldLooseKey("registerComponents");var es=babelHelpers.classPrivateFieldLooseKey("registerListeners");var ts=babelHelpers.classPrivateFieldLooseKey("registerCommands");var ss=babelHelpers.classPrivateFieldLooseKey("handleCodeNodeTransform");var is=babelHelpers.classPrivateFieldLooseKey("handleTextNodeTransform");var rs=babelHelpers.classPrivateFieldLooseKey("handleTab");var as=babelHelpers.classPrivateFieldLooseKey("handleMultilineIndent");class os extends ie{constructor(e){super(e);Object.defineProperty(this,as,{value:us});Object.defineProperty(this,rs,{value:bs});Object.defineProperty(this,is,{value:hs});Object.defineProperty(this,ss,{value:cs});Object.defineProperty(this,ts,{value:ds});Object.defineProperty(this,es,{value:ns});Object.defineProperty(this,Zt,{value:ls});Object.defineProperty(this,qt,{writable:true,value:new Set});Object.defineProperty(this,Qt,{writable:true,value:new t.CodeParser});babelHelpers.classPrivateFieldLooseBase(this,ts)[ts]();babelHelpers.classPrivateFieldLooseBase(this,Zt)[Zt]();babelHelpers.classPrivateFieldLooseBase(this,es)[es]()}static getName(){return"Code"}static getNodes(e){return[xt,Dt]}importBBCode(){return{code:()=>({conversion:e=>({node:wt(),after:e=>{const t=e.map((e=>e.getTextContent())).join("");return[L.$createTextNode(t)]}}),priority:0})}}exportBBCode(){return{code:e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createElement({name:"code"})}},"code-token":e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createText({content:e.getTextContent(),encode:false})}}}}validateScheme(){return{nodes:[{nodeClass:xt}],bbcodeMap:{code:"code"}}}}function ls(){this.getEditor().getComponentRegistry().register("code",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --enclose-text-in-code-tag"></span>');e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_CODE"));e.setBlockType("code");e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{if(e.isActive()){this.getEditor().dispatchCommand(vt)}else{this.getEditor().dispatchCommand(Vt)}}))}));return e}))}function ns(){const e=babelHelpers.classPrivateFieldLooseBase(this,is)[is].bind(this);this.cleanUpRegister(this.getEditor().registerNodeTransform(xt,babelHelpers.classPrivateFieldLooseBase(this,ss)[ss].bind(this)),this.getEditor().registerNodeTransform(L.TextNode,e),this.getEditor().registerNodeTransform(Dt,e),this.getEditor().registerCommand(L.FORMAT_TEXT_COMMAND,(()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return false}const t=w(e);return It(t)||At(t)}),L.COMMAND_PRIORITY_HIGH),this.getEditor().registerCommand(L.KEY_TAB_COMMAND,(e=>{const t=babelHelpers.classPrivateFieldLooseBase(this,rs)[rs](e.shiftKey);if(t===null){return false}e.preventDefault();this.getEditor().dispatchCommand(t);return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.INSERT_TAB_COMMAND,(()=>{const e=L.$getSelection();if(!ps(e)){return false}L.$insertNodes([L.$createTabNode()]);return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.INDENT_CONTENT_COMMAND,(e=>babelHelpers.classPrivateFieldLooseBase(this,as)[as](L.INDENT_CONTENT_COMMAND)),L.COMMAND_PRIORITY_NORMAL),this.getEditor().registerCommand(L.OUTDENT_CONTENT_COMMAND,(e=>babelHelpers.classPrivateFieldLooseBase(this,as)[as](L.OUTDENT_CONTENT_COMMAND)),L.COMMAND_PRIORITY_NORMAL),this.getEditor().registerCommand(L.PASTE_COMMAND,(e=>{const t=L.$getSelection();if(!L.$isRangeSelection(t)||!(e instanceof ClipboardEvent)||e.clipboardData===null){return false}const s=y.$findMatchingParent(t.anchor.getNode(),(e=>At(e)));if(s){r.$insertDataTransferForPlainText(e.clipboardData,t);return true}return false}),L.COMMAND_PRIORITY_NORMAL))}function ds(){this.cleanUpRegister(this.getEditor().registerCommand(Jt,(e=>{const t=wt();if(F.Type.isPlainObject(e)&&F.Type.isStringFilled(e.content)){const s=Ls(babelHelpers.classPrivateFieldLooseBase(this,Qt)[Qt].parse(e.content));t.append(...s);y.$insertNodeToNearestRoot(t)}else{y.$insertNodeToNearestRoot(t);t.selectEnd()}return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(Vt,(()=>{const e=L.$getSelection();if(L.$isRangeSelection(e)){if(e.isCollapsed()){d.$setBlocksType(e,(()=>wt()))}else{const t=e.getTextContent();const s=wt();e.insertNodes([s]);const i=L.$getSelection();if(L.$isRangeSelection(i)){i.insertRawText(t)}}}return true}),L.COMMAND_PRIORITY_EDITOR))}function cs(e){const t=e.getKey();if(babelHelpers.classPrivateFieldLooseBase(this,qt)[qt].has(t)){return}babelHelpers.classPrivateFieldLooseBase(this,qt)[qt].add(t);this.getEditor().update((()=>{ys(t,(()=>{const s=L.$getNodeByKey(t);if(!At(s)||!s.isAttached()){return false}const i=s.getTextContent();const r=Ls(babelHelpers.classPrivateFieldLooseBase(this,Qt)[Qt].parse(i));const a=Ps(s.getChildren(),r);const{from:o,to:l,nodesForReplacement:n}=a;if(o!==l||n.length>0){e.splice(o,l-o,n);return true}return false}))}),{onUpdate:()=>{babelHelpers.classPrivateFieldLooseBase(this,qt)[qt].delete(t)},skipTransforms:true})}function hs(e){const t=e.getParent();if(At(t)){babelHelpers.classPrivateFieldLooseBase(this,ss)[ss](t)}else if(It(e)){e.replace(L.$createTextNode(e.__text))}}function bs(e){const t=L.$getSelection();if(!L.$isRangeSelection(t)||!ps(t)){return null}const s=e?L.OUTDENT_CONTENT_COMMAND:L.INDENT_CONTENT_COMMAND;const i=e?L.OUTDENT_CONTENT_COMMAND:L.INSERT_TAB_COMMAND;const r=gs(t);if(r.length>1){return s}const a=t.getNodes();const o=a[0];if(At(o)){return s}const l=vs(o);const n=fs(o);const d=t.anchor;const c=t.focus;let h=null;let b=null;if(c.isBefore(d)){h=c;b=d}else{h=d;b=c}if(l!==null&&n!==null&&h.key===l.getKey()&&h.offset===0&&b.key===n.getKey()&&b.offset===n.getTextContentSize()){return s}return i}function us(e){const t=L.$getSelection();if(!L.$isRangeSelection(t)||!ps(t)){return false}const s=gs(t);const i=s.length;if(s.length>1){for(let t=0;t<i;t++){const i=s[t];if(i.length>0){let s=i[0];if(t===0){s=vs(s)}if(s!==null){if(e===L.INDENT_CONTENT_COMMAND){s.insertBefore(L.$createTabNode())}else if(L.$isTabNode(s)){s.remove()}}}}return true}const r=t.getNodes();const a=r[0];if(At(a)){if(e===L.INDENT_CONTENT_COMMAND){t.insertNodes([L.$createTabNode()])}return true}const o=vs(a);if(e===L.INDENT_CONTENT_COMMAND){if(L.$isLineBreakNode(o)){o.insertAfter(L.$createTabNode())}else{o.insertBefore(L.$createTabNode())}}else if(L.$isTabNode(o)){o.remove()}return true}function ps(e){if(!L.$isRangeSelection(e)){return false}const t=e.anchor.getNode();const s=e.focus.getNode();if(t.is(s)&&At(t)){return true}const i=t.getParent();return At(i)&&i.is(s.getParent())}function gs(e){const t=e.getNodes();const s=[[]];if(t.length===1&&At(t[0])){return s}let i=s[0];for(const[e,r]of t.entries()){if(L.$isLineBreakNode(r)){if(e!==0&&i.length>0){i=[];s.push(i)}}else{i.push(r)}}return s}function vs(e){let t=e;let s=e;while(It(s)||L.$isTabNode(s)){t=s;s=s.getPreviousSibling()}return t}function fs(e){let t=e;let s=e;while(It(s)||L.$isTabNode(s)){t=s;s=s.getNextSibling()}return t}function Ps(e,t){let s=0;while(s<e.length){if(!ms(e[s],t[s])){break}s++}const i=e.length;const r=t.length;const a=Math.min(i,r)-s;let o=0;while(o<a){o++;if(!ms(e[i-o],t[r-o])){o--;break}}const l=s;const n=i-o;const d=t.slice(s,r-o);return{from:l,nodesForReplacement:d,to:n}}function ms(e,t){return It(e)&&It(t)&&e.__text===t.__text&&e.__highlightType===t.__highlightType||L.$isTabNode(e)&&L.$isTabNode(t)||L.$isLineBreakNode(e)&&L.$isLineBreakNode(t)}function Ls(e){const t=[];e.forEach((e=>{const s=e.content.split(/([\t\n])/);const i=s.length;for(let r=0;r<i;r++){const i=s[r];if(i==="\n"||i==="\r\n"){t.push(L.$createLineBreakNode())}else if(i==="\t"){t.push(L.$createTabNode())}else if(i.length>0){t.push(Rt(i,e.type))}}}));return t}function ys(e,t){const s=L.$getNodeByKey(e);if(!At(s)||!s.isAttached()){return}const i=L.$getSelection();if(!L.$isRangeSelection(i)){t();return}const r=i.anchor;const a=r.offset;const o=r.type==="element"&&L.$isLineBreakNode(s.getChildAtIndex(r.offset-1));let l=0;if(!o){const e=r.getNode();l=a+e.getPreviousSiblings().reduce(((e,t)=>e+t.getTextContentSize()),0)}const n=t();if(!n){return}if(o){r.getNode().select(a,a);return}s.getChildren().some((e=>{const t=L.$isTextNode(e);if(t||L.$isLineBreakNode(e)){const s=e.getTextContentSize();if(t&&s>=l){e.select(l,l);return true}l-=s}return false}))}var Fs=Object.freeze({FORMAT_CODE_COMMAND:Vt,INSERT_CODE_COMMAND:Jt,CodePlugin:os,getFirstCodeNodeOfLine:vs,getLastCodeNodeOfLine:fs,CodeNode:xt,$createCodeNode:wt,$isCodeNode:At,CodeTokenNode:Dt,$createCodeTokenNode:Rt,$isCodeTokenNode:It});function Hs(e,t){return e.getEditorState().read((()=>{const e=L.$getNodeByKey(t);if(e===null){return false}return e.isSelected()}))}function Bs(e,t){let s=false;const i=new Set;const r=e=>{i.add(e)};const a=e.registerUpdateListener((()=>{s=Hs(e,t);for(const e of i){e(s)}}));const o=s=>{e.update((()=>{let e=L.$getSelection();if(!L.$isNodeSelection(e)){e=L.$createNodeSelection();L.$setSelection(e)}if(s){e.add(t)}else{e.delete(t)}}))};const l=()=>{e.update((()=>{const e=L.$getSelection();if(L.$isNodeSelection(e)){e.clear()}}))};return{isSelected:()=>s,dispose:()=>{a()},onSelect:r,setSelected:o,clearSelection:l}}var Cs=babelHelpers.classPrivateFieldLooseKey("textEditor");var Os=babelHelpers.classPrivateFieldLooseKey("target");var Ts=babelHelpers.classPrivateFieldLooseKey("nodeKey");var Es=babelHelpers.classPrivateFieldLooseKey("options");var Ns=babelHelpers.classPrivateFieldLooseKey("nodeSelection");var _s=babelHelpers.classPrivateFieldLooseKey("unregisterCommands");var Ms=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Ds=babelHelpers.classPrivateFieldLooseKey("handleDelete");class Ss{constructor(e){Object.defineProperty(this,Ds,{value:Is});Object.defineProperty(this,Ms,{value:Rs});Object.defineProperty(this,Cs,{writable:true,value:null});Object.defineProperty(this,Os,{writable:true,value:null});Object.defineProperty(this,Ts,{writable:true,value:null});Object.defineProperty(this,Es,{writable:true,value:{}});Object.defineProperty(this,Ns,{writable:true,value:null});Object.defineProperty(this,_s,{writable:true,value:null});const{textEditor:t,target:s,nodeKey:i,options:r}=e;babelHelpers.classPrivateFieldLooseBase(this,Cs)[Cs]=t;babelHelpers.classPrivateFieldLooseBase(this,Os)[Os]=s;babelHelpers.classPrivateFieldLooseBase(this,Ts)[Ts]=i;babelHelpers.classPrivateFieldLooseBase(this,Es)[Es]=r;babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns]=Bs(this.getEditor(),this.getNodeKey());babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].onSelect((e=>{if(e){F.Dom.addClass(this.getTarget(),"--selected")}else{F.Dom.removeClass(this.getTarget(),"--selected")}}));babelHelpers.classPrivateFieldLooseBase(this,_s)[_s]=babelHelpers.classPrivateFieldLooseBase(this,Ms)[Ms]()}update(e){}destroy(){babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].dispose();babelHelpers.classPrivateFieldLooseBase(this,_s)[_s]()}getEditor(){return babelHelpers.classPrivateFieldLooseBase(this,Cs)[Cs]}getNodeKey(){return babelHelpers.classPrivateFieldLooseBase(this,Ts)[Ts]}getTarget(){return babelHelpers.classPrivateFieldLooseBase(this,Os)[Os]}getNodeSelection(){return babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns]}isSelected(){return babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].isSelected()}setSelected(e){babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].setSelected(e)}getOptions(){return babelHelpers.classPrivateFieldLooseBase(this,Es)[Es]}getOption(e,t){if(!F.Type.isUndefined(babelHelpers.classPrivateFieldLooseBase(this,Es)[Es][e])){return babelHelpers.classPrivateFieldLooseBase(this,Es)[Es][e]}if(!F.Type.isUndefined(t)){return t}return null}}function Rs(){return y.mergeRegister(this.getEditor().registerCommand(L.CLICK_COMMAND,(e=>{if(this.getTarget().contains(e.target)){if(e.shiftKey){babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].setSelected(!babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].isSelected())}else{babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].clearSelection();babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].setSelected(true)}return true}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_DELETE_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ds)[Ds].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_BACKSPACE_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ds)[Ds].bind(this),L.COMMAND_PRIORITY_LOW))}function Is(e){if(babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].isSelected()&&L.$isNodeSelection(L.$getSelection())){e.preventDefault();const t=L.$getNodeByKey(this.getNodeKey());babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns].setSelected(false);if(t){t.remove();return true}}return false}let xs=e=>e,ws,As;function $s(e,t,s){return Math.min(Math.max(e,t),s)}const Ks={EAST:1,SOUTH:2,WEST:4,NORTH:8};var js=babelHelpers.classPrivateFieldLooseKey("positioning");var ks=babelHelpers.classPrivateFieldLooseKey("freeTransform");var Us=babelHelpers.classPrivateFieldLooseKey("onPointerDownHandler");var Ws=babelHelpers.classPrivateFieldLooseKey("onPointerMoveHandler");var Ys=babelHelpers.classPrivateFieldLooseKey("onPointerUpHandler");var zs=babelHelpers.classPrivateFieldLooseKey("container");var Xs=babelHelpers.classPrivateFieldLooseKey("target");var Gs=babelHelpers.classPrivateFieldLooseKey("editor");var Vs=babelHelpers.classPrivateFieldLooseKey("maxWidth");var Js=babelHelpers.classPrivateFieldLooseKey("maxHeight");var qs=babelHelpers.classPrivateFieldLooseKey("minWidth");var Qs=babelHelpers.classPrivateFieldLooseKey("minHeight");var Zs=babelHelpers.classPrivateFieldLooseKey("handlePointerDown");var ei=babelHelpers.classPrivateFieldLooseKey("handlePointerMove");var ti=babelHelpers.classPrivateFieldLooseKey("handlePointerUp");var si=babelHelpers.classPrivateFieldLooseKey("getMaxContainerWidth");var ii=babelHelpers.classPrivateFieldLooseKey("getMaxContainerHeight");class ri extends b.EventEmitter{constructor({target:e,editor:t,originalWidth:s,originalHeight:i,minWidth:r,minHeight:a,maxWidth:o,maxHeight:l,events:n,freeTransform:d}){super();Object.defineProperty(this,ii,{value:di});Object.defineProperty(this,si,{value:ni});Object.defineProperty(this,ti,{value:li});Object.defineProperty(this,ei,{value:oi});Object.defineProperty(this,Zs,{value:ai});Object.defineProperty(this,js,{writable:true,value:{currentHeight:0,currentWidth:0,direction:0,isResizing:false,ratio:0,startHeight:0,startWidth:0,startX:0,startY:0}});Object.defineProperty(this,ks,{writable:true,value:false});Object.defineProperty(this,Us,{writable:true,value:null});Object.defineProperty(this,Ws,{writable:true,value:null});Object.defineProperty(this,Ys,{writable:true,value:null});Object.defineProperty(this,zs,{writable:true,value:null});Object.defineProperty(this,Xs,{writable:true,value:null});Object.defineProperty(this,Gs,{writable:true,value:null});Object.defineProperty(this,Vs,{writable:true,value:"none"});Object.defineProperty(this,Js,{writable:true,value:"none"});Object.defineProperty(this,qs,{writable:true,value:16});Object.defineProperty(this,Qs,{writable:true,value:16});this.setEventNamespace("BX.UI.TextEditor.FigureResizer");babelHelpers.classPrivateFieldLooseBase(this,Xs)[Xs]=e;babelHelpers.classPrivateFieldLooseBase(this,Gs)[Gs]=t;babelHelpers.classPrivateFieldLooseBase(this,qs)[qs]=Math.min(Math.max(babelHelpers.classPrivateFieldLooseBase(this,qs)[qs],F.Type.isNumber(r)?r:babelHelpers.classPrivateFieldLooseBase(this,qs)[qs]),F.Type.isNumber(s)?s:Infinity);babelHelpers.classPrivateFieldLooseBase(this,Qs)[Qs]=Math.min(Math.max(babelHelpers.classPrivateFieldLooseBase(this,Qs)[Qs],F.Type.isNumber(a)?a:babelHelpers.classPrivateFieldLooseBase(this,Qs)[Qs]),F.Type.isNumber(i)?i:Infinity);babelHelpers.classPrivateFieldLooseBase(this,Vs)[Vs]=F.Type.isNumber(o)?o:"none";babelHelpers.classPrivateFieldLooseBase(this,Js)[Js]=F.Type.isNumber(l)?l:"none";babelHelpers.classPrivateFieldLooseBase(this,ks)[ks]=d===true;babelHelpers.classPrivateFieldLooseBase(this,Us)[Us]=babelHelpers.classPrivateFieldLooseBase(this,Zs)[Zs].bind(this);babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws]=babelHelpers.classPrivateFieldLooseBase(this,ei)[ei].bind(this);babelHelpers.classPrivateFieldLooseBase(this,Ys)[Ys]=babelHelpers.classPrivateFieldLooseBase(this,ti)[ti].bind(this);this.subscribeFromOptions(n)}show(){F.Dom.addClass(this.getContainer(),"--shown")}hide(){F.Dom.removeClass(this.getContainer(),"--shown")}getContainer(){if(babelHelpers.classPrivateFieldLooseBase(this,zs)[zs]===null){const e=F.Tag.render(ws||(ws=xs` <div class="ui-text-editor-figure-resizer-handle --north" data-direction="${0}" onpointerdown="${0}" ></div> <div class="ui-text-editor-figure-resizer-handle --east" data-direction="${0}" onpointerdown="${0}" ></div> <div class="ui-text-editor-figure-resizer-handle --south" data-direction="${0}" onpointerdown="${0}" ></div> <div class="ui-text-editor-figure-resizer-handle --west" data-direction="${0}" onpointerdown="${0}" ></div> `),Ks.NORTH,babelHelpers.classPrivateFieldLooseBase(this,Us)[Us],Ks.EAST,babelHelpers.classPrivateFieldLooseBase(this,Us)[Us],Ks.SOUTH,babelHelpers.classPrivateFieldLooseBase(this,Us)[Us],Ks.WEST,babelHelpers.classPrivateFieldLooseBase(this,Us)[Us]);babelHelpers.classPrivateFieldLooseBase(this,zs)[zs]=F.Tag.render(As||(As=xs` <div class="ui-text-editor-figure-resizer"> <div class="ui-text-editor-figure-resizer-handle --north-east" data-direction="${0}" onpointerdown="${0}" ></div> <div class="ui-text-editor-figure-resizer-handle --south-east" data-direction="${0}" onpointerdown="${0}" ></div> <div class="ui-text-editor-figure-resizer-handle --south-west" data-direction="${0}" onpointerdown="${0}" ></div> <div class="ui-text-editor-figure-resizer-handle --north-west" data-direction="${0}" onpointerdown="${0}" ></div> ${0} </div> `),Ks.NORTH|Ks.EAST,babelHelpers.classPrivateFieldLooseBase(this,Us)[Us],Ks.SOUTH|Ks.EAST,babelHelpers.classPrivateFieldLooseBase(this,Us)[Us],Ks.SOUTH|Ks.WEST,babelHelpers.classPrivateFieldLooseBase(this,Us)[Us],Ks.NORTH|Ks.WEST,babelHelpers.classPrivateFieldLooseBase(this,Us)[Us],babelHelpers.classPrivateFieldLooseBase(this,ks)[ks]?e:null)}return babelHelpers.classPrivateFieldLooseBase(this,zs)[zs]}getTarget(){return babelHelpers.classPrivateFieldLooseBase(this,Xs)[Xs]}setTarget(e){babelHelpers.classPrivateFieldLooseBase(this,Xs)[Xs]=e}getEditor(){return babelHelpers.classPrivateFieldLooseBase(this,Gs)[Gs]}isResizing(){return babelHelpers.classPrivateFieldLooseBase(this,js)[js].isResizing}}function ai(e){if(!this.getEditor().isEditable()){return}e.preventDefault();const t=Number(e.target.dataset.direction);const s=this.getTarget();const{width:i,height:r}=s.getBoundingClientRect();babelHelpers.classPrivateFieldLooseBase(this,js)[js].startWidth=i;babelHelpers.classPrivateFieldLooseBase(this,js)[js].startHeight=r;babelHelpers.classPrivateFieldLooseBase(this,js)[js].ratio=i/r;babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentWidth=i;babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentHeight=r;babelHelpers.classPrivateFieldLooseBase(this,js)[js].startX=e.clientX;babelHelpers.classPrivateFieldLooseBase(this,js)[js].startY=e.clientY;babelHelpers.classPrivateFieldLooseBase(this,js)[js].isResizing=true;babelHelpers.classPrivateFieldLooseBase(this,js)[js].direction=t;this.emit("onResizeStart");F.Dom.addClass(this.getContainer(),"--resizing");F.Dom.style(s,{width:`${i}px`,height:`${r}px`});F.Event.bind(document,"pointermove",babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws]);F.Event.bind(document,"pointerup",babelHelpers.classPrivateFieldLooseBase(this,Ys)[Ys])}function oi(e){const t=this.getTarget();const s=babelHelpers.classPrivateFieldLooseBase(this,js)[js].direction&(Ks.EAST|Ks.WEST);const i=babelHelpers.classPrivateFieldLooseBase(this,js)[js].direction&(Ks.SOUTH|Ks.NORTH);if(babelHelpers.classPrivateFieldLooseBase(this,js)[js].isResizing){if(s&&i){let s=Math.floor(babelHelpers.classPrivateFieldLooseBase(this,js)[js].startX-e.clientX);s=babelHelpers.classPrivateFieldLooseBase(this,js)[js].direction&Ks.EAST?-s:s;const i=Math.round($s(babelHelpers.classPrivateFieldLooseBase(this,js)[js].startWidth+s,babelHelpers.classPrivateFieldLooseBase(this,qs)[qs],babelHelpers.classPrivateFieldLooseBase(this,si)[si]()));const r=Math.ceil(i/babelHelpers.classPrivateFieldLooseBase(this,js)[js].ratio);F.Dom.style(t,{width:`${i}px`,height:`${r}px`});this.emit("onResize",{width:i,height:r});babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentHeight=r;babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentWidth=i}else if(i){let s=Math.floor(babelHelpers.classPrivateFieldLooseBase(this,js)[js].startY-e.clientY);s=babelHelpers.classPrivateFieldLooseBase(this,js)[js].direction&Ks.SOUTH?-s:s;const i=Math.round(Math.max(babelHelpers.classPrivateFieldLooseBase(this,js)[js].startHeight+s,babelHelpers.classPrivateFieldLooseBase(this,Qs)[Qs]));F.Dom.style(t,"height",`${i}px`);this.emit("onResize",{width:babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentWidth,height:i});babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentHeight=i}else{let s=Math.floor(babelHelpers.classPrivateFieldLooseBase(this,js)[js].startX-e.clientX);s=babelHelpers.classPrivateFieldLooseBase(this,js)[js].direction&Ks.EAST?-s:s;const i=Math.round($s(babelHelpers.classPrivateFieldLooseBase(this,js)[js].startWidth+s,babelHelpers.classPrivateFieldLooseBase(this,qs)[qs],babelHelpers.classPrivateFieldLooseBase(this,si)[si]()));F.Dom.style(t,"width",`${i}px`);this.emit("onResize",{width:i,height:babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentHeight});babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentWidth=i}}}function li(){if(babelHelpers.classPrivateFieldLooseBase(this,js)[js].isResizing){setTimeout((()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentWidth;const t=babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentHeight;babelHelpers.classPrivateFieldLooseBase(this,js)[js].startWidth=0;babelHelpers.classPrivateFieldLooseBase(this,js)[js].startHeight=0;babelHelpers.classPrivateFieldLooseBase(this,js)[js].ratio=0;babelHelpers.classPrivateFieldLooseBase(this,js)[js].startX=0;babelHelpers.classPrivateFieldLooseBase(this,js)[js].startY=0;babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentWidth=0;babelHelpers.classPrivateFieldLooseBase(this,js)[js].currentHeight=0;babelHelpers.classPrivateFieldLooseBase(this,js)[js].isResizing=false;F.Dom.removeClass(this.getContainer(),"--resizing");this.emit("onResizeEnd",{width:e,height:t});F.Event.unbind(document,"pointermove",babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws]);F.Event.unbind(document,"pointerup",babelHelpers.classPrivateFieldLooseBase(this,Ys)[Ys])}),200)}}function ni(){const e=F.Type.isNumber(babelHelpers.classPrivateFieldLooseBase(this,Vs)[Vs])?babelHelpers.classPrivateFieldLooseBase(this,Vs)[Vs]:Infinity;const t=this.getEditor().getRootElement();if(t!==null){return Math.min(t.getBoundingClientRect().width-20,e)}return 100}function di(){if(F.Type.isNumber(babelHelpers.classPrivateFieldLooseBase(this,Js)[Js])){return babelHelpers.classPrivateFieldLooseBase(this,Js)[Js]}const e=this.getEditor().getRootElement();if(e!==null){return e.getBoundingClientRect().height-20}return 100}let ci=e=>e,hi,bi;var ui=babelHelpers.classPrivateFieldLooseKey("refs");var pi=babelHelpers.classPrivateFieldLooseKey("figureResizer");var gi=babelHelpers.classPrivateFieldLooseKey("render");var vi=babelHelpers.classPrivateFieldLooseKey("getContainer");var fi=babelHelpers.classPrivateFieldLooseKey("getImageContainer");var Pi=babelHelpers.classPrivateFieldLooseKey("setDraggable");var mi=babelHelpers.classPrivateFieldLooseKey("handleResizeStart");var Li=babelHelpers.classPrivateFieldLooseKey("handleResizeEnd");class yi extends Ss{constructor(e){super(e);Object.defineProperty(this,Li,{value:Ti});Object.defineProperty(this,mi,{value:Oi});Object.defineProperty(this,Pi,{value:Ci});Object.defineProperty(this,fi,{value:Bi});Object.defineProperty(this,vi,{value:Hi});Object.defineProperty(this,gi,{value:Fi});Object.defineProperty(this,ui,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,pi,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,pi)[pi]=new ri({target:this.getImage(),editor:this.getEditor(),originalWidth:this.getOption("width"),originalHeight:this.getOption("height"),events:{onResizeStart:babelHelpers.classPrivateFieldLooseBase(this,mi)[mi].bind(this),onResizeEnd:babelHelpers.classPrivateFieldLooseBase(this,Li)[Li].bind(this)}});this.getNodeSelection().onSelect((e=>{if(e||babelHelpers.classPrivateFieldLooseBase(this,pi)[pi].isResizing()){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,vi)[vi](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,pi)[pi].show()}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,vi)[vi](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,pi)[pi].hide()}const t=e&&!babelHelpers.classPrivateFieldLooseBase(this,pi)[pi].isResizing();babelHelpers.classPrivateFieldLooseBase(this,Pi)[Pi](t)}));this.update(this.getOptions());babelHelpers.classPrivateFieldLooseBase(this,gi)[gi]()}getImage(){return babelHelpers.classPrivateFieldLooseBase(this,ui)[ui].remember("image",(()=>{var e,t;const s=document.createElement("img");s.draggable=false;s.src=this.getOption("src");const i=this.getOption("config",{});if(i!=null&&(e=i.theme)!=null&&(t=e.image)!=null&&t.img){s.className=i.theme.image.img}return s}))}update(e){const t=e.width>0?`${e.width}px`:"inherit";const s=e.width>0&&e.height>0?`${e.width} / ${e.height}`:"auto";F.Dom.style(this.getImage(),{width:t,height:"auto",aspectRatio:s})}}function Fi(){F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,vi)[vi](),this.getTarget())}function Hi(){return babelHelpers.classPrivateFieldLooseBase(this,ui)[ui].remember("container",(()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,pi)[pi].getContainer();return F.Tag.render(hi||(hi=ci` <div class="ui-text-editor-file-image-component"> ${0} ${0} </div> `),babelHelpers.classPrivateFieldLooseBase(this,fi)[fi](),e)}))}function Bi(){return babelHelpers.classPrivateFieldLooseBase(this,ui)[ui].remember("image-container",(()=>F.Tag.render(bi||(bi=ci` <div class="ui-text-editor-file-image-container"> ${0} </div> `),this.getImage())))}function Ci(e){F.Dom.attr(babelHelpers.classPrivateFieldLooseBase(this,fi)[fi](),{draggable:e});if(e){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,vi)[vi](),"--draggable")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,vi)[vi](),"--draggable")}}function Oi(e){babelHelpers.classPrivateFieldLooseBase(this,Pi)[Pi](false);this.setSelected(true)}function Ti(e){this.setSelected(true);this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(_i(t)){const{width:s,height:i}=e.getData();t.setWidthAndHeight(s,i)}}))}class Ei extends L.DecoratorNode{constructor(e,t,s,i,r){super(r);this.__serverFileId=e;this.__info=F.Type.isPlainObject(t)?t:{};this.__width=F.Type.isNumber(s)&&s>0?Math.round(s):this.__info.previewWidth;this.__height=F.Type.isNumber(i)&&i>0?Math.round(i):this.__info.previewHeight}static getType(){return"file-image"}static clone(e){return new Ei(e.__serverFileId,e.__info,e.__width,e.__height,e.__key)}getId(){return this.__serverFileId}getServerFileId(){return this.__serverFileId}getInfo(){return this.__info}setWidthAndHeight(e,t){const s=this.getWritable();if(F.Type.isNumber(e)){s.__width=Math.round(e)}if(F.Type.isNumber(t)){s.__height=Math.round(t)}}getWidth(){const e=this.getLatest();return e.__width}getHeight(){const e=this.getLatest();return e.__height}isResized(){return this.__info.previewWidth!==this.getWidth()||this.__info.previewHeight!==this.getHeight()}static importJSON(e){return Ni(e.serverFileId,e.info,e.width,e.height)}static importDOM(){return{img:e=>{if(!e.hasAttribute("data-file-image-id")){return null}return{conversion:e=>{const{fileImageId:t,fileImageInfo:s}=e.dataset;let i=null;try{i=JSON.parse(s)}catch{return null}const r=Ni(t,i);return{node:r}},priority:1}}}}exportDOM(){return{element:null}}exportJSON(){return{info:this.__info,serverFileId:this.__serverFileId,width:this.getWidth(),height:this.getHeight(),type:"file-image",version:1}}createDOM(e,t){var s,i;const r=document.createElement("span");if(F.Type.isStringFilled(e==null?void 0:(s=e.theme)==null?void 0:(i=s.image)==null?void 0:i.container)){F.Dom.addClass(r,e.theme.image.container)}return r}updateDOM(e,t,s){return false}decorate(e,t){return{componentClass:yi,options:{src:this.__info.previewUrl,width:this.getWidth(),height:this.getHeight(),maxWidth:this.getWidth(),maxHeight:this.getHeight(),config:t}}}isInline(){return true}}Ei.useDecoratorComponent=true;function Ni(e,t={},s=null,i=null){return new Ei(e,t,s,i)}function _i(e){return e instanceof Ei}class Mi extends L.TextNode{constructor(e,t,s){const i=F.Type.isPlainObject(t)?t:{};super(i.name||"",s);this.__serverFileId=e;this.__info=i}static getType(){return"file"}static clone(e){return new Mi(e.__serverFileId,e.__info,e.__key)}getId(){return this.__serverFileId}getServerFileId(){return this.__serverFileId}getInfo(){return this.__info}getName(){return this.__info.name||"unknown"}static importJSON(e){return Di(e.serverFileId,e.info)}static importDOM(){return{span:e=>{if(!e.hasAttribute("data-file-id")){return null}return{conversion:t=>{const{fileId:s,fileInfo:i}=e.dataset;let r=null;try{r=JSON.parse(i)}catch{return null}const a=Di(s,r);return{node:a}},priority:1}}}}exportDOM(){const e=document.createElement("span");e.textContent=this.getName();e.setAttribute("data-file-id",this.__serverFileId);e.setAttribute("data-file-info",JSON.stringify(this.__info));return{element:e}}exportJSON(){return{...super.exportJSON(),info:this.__info,serverFileId:this.__serverFileId,type:"file",version:1}}createDOM(e,t){var s;const i=document.createElement("span");if(F.Type.isStringFilled(e==null?void 0:(s=e.theme)==null?void 0:s.file)){F.Dom.addClass(i,e.theme.file)}i.textContent=this.getName();return i}updateDOM(e,t,s){return false}}function Di(e,t={}){return new Mi(e,t).setMode("token")}function Si(e){return e instanceof Mi}function Ri(e,t,s,i){const r=s/e;const a=i/t;const o=Math.min(r,a);const l=o>1;const n=l?e:e*o;const d=l?t:t*o;return[n,d]}let Ii=e=>e,xi;var wi=babelHelpers.classPrivateFieldLooseKey("refs");var Ai=babelHelpers.classPrivateFieldLooseKey("figureResizer");var $i=babelHelpers.classPrivateFieldLooseKey("render");var Ki=babelHelpers.classPrivateFieldLooseKey("getContainer");var ji=babelHelpers.classPrivateFieldLooseKey("getVideo");var ki=babelHelpers.classPrivateFieldLooseKey("handleResize");var Ui=babelHelpers.classPrivateFieldLooseKey("handleResizeEnd");var Wi=babelHelpers.classPrivateFieldLooseKey("setDraggable");class Yi extends Ss{constructor(e){super(e);Object.defineProperty(this,Wi,{value:qi});Object.defineProperty(this,Ui,{value:Ji});Object.defineProperty(this,ki,{value:Vi});Object.defineProperty(this,ji,{value:Gi});Object.defineProperty(this,Ki,{value:Xi});Object.defineProperty(this,$i,{value:zi});Object.defineProperty(this,wi,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,Ai,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,Ai)[Ai]=new ri({target:babelHelpers.classPrivateFieldLooseBase(this,ji)[ji](),editor:this.getEditor(),minWidth:120,minHeight:120,events:{onResize:babelHelpers.classPrivateFieldLooseBase(this,ki)[ki].bind(this),onResizeEnd:babelHelpers.classPrivateFieldLooseBase(this,Ui)[Ui].bind(this)}});this.getNodeSelection().onSelect((e=>{if(e||babelHelpers.classPrivateFieldLooseBase(this,Ai)[Ai].isResizing()){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Ki)[Ki](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,Ai)[Ai].show()}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Ki)[Ki](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,Ai)[Ai].hide()}babelHelpers.classPrivateFieldLooseBase(this,Wi)[Wi](e)}));this.update(this.getOptions());babelHelpers.classPrivateFieldLooseBase(this,$i)[$i]()}update(e){const t=F.Type.isNumber(e.width)&&e.width>0?e.width:null;const s=F.Type.isNumber(e.height)&&e.height>0?e.height:null;const i=t>0&&s>0?`${t} / ${s}`:"auto";F.Dom.adjust(babelHelpers.classPrivateFieldLooseBase(this,ji)[ji](),{attrs:{width:t,height:null},style:{width:t,height:"auto",aspectRatio:i}})}}function zi(){F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,Ki)[Ki](),this.getTarget())}function Xi(){return babelHelpers.classPrivateFieldLooseBase(this,wi)[wi].remember("container",(()=>F.Tag.render(xi||(xi=Ii` <div class="ui-text-editor-video-component"> <div class="ui-text-editor-video-object-container">${0}</div> ${0} </div> `),babelHelpers.classPrivateFieldLooseBase(this,ji)[ji](),babelHelpers.classPrivateFieldLooseBase(this,Ai)[Ai].getContainer())))}function Gi(){return babelHelpers.classPrivateFieldLooseBase(this,wi)[wi].remember("video",(()=>{var e,t;const s=F.Dom.create({tag:"video",attrs:{controls:true,preload:"metadata",playsinline:true,src:this.getOption("src")},events:{loadedmetadata:e=>{this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(er(t)&&t.getWidth()===0){const[s,i]=Ri(e.target.videoWidth,e.target.videoHeight,600,600);t.setWidthAndHeight(s,i)}}))}}});const i=this.getOption("config",{});if(i!=null&&(e=i.theme)!=null&&(t=e.video)!=null&&t.object){s.className=i.theme.video.object}return s}))}function Vi(e){this.update(e.getData())}function Ji(e){this.setSelected(true);this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(er(t)){const{width:s,height:i}=e.getData();t.setWidthAndHeight(s,i)}}))}function qi(e){F.Dom.attr(babelHelpers.classPrivateFieldLooseBase(this,Ki)[Ki](),{draggable:e});if(e){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Ki)[Ki](),"--draggable")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Ki)[Ki](),"--draggable")}}class Qi extends L.DecoratorNode{constructor(e,t,s,i,r){super(r);this.__width=0;this.__height=0;this.__serverFileId=e;this.__info=F.Type.isPlainObject(t)?t:{};this.__width=F.Type.isNumber(s)&&s>0?Math.round(s):this.__info.previewWidth>0?this.__info.previewWidth:this.__width;this.__height=F.Type.isNumber(i)&&i>0?Math.round(i):this.__info.previewHeight>0?this.__info.previewHeight:this.__height}static getType(){return"file-video"}static clone(e){return new Qi(e.__serverFileId,e.__info,e.__width,e.__height,e.__key)}getId(){return this.__serverFileId}getServerFileId(){return this.__serverFileId}getInfo(){return this.__info}setWidthAndHeight(e,t){const s=this.getWritable();if(F.Type.isNumber(e)){s.__width=Math.round(e)}if(F.Type.isNumber(t)){s.__height=Math.round(t)}}getWidth(){const e=this.getLatest();return e.__width}getHeight(){const e=this.getLatest();return e.__height}static importJSON(e){return Zi(e.serverFileId,e.info,e.width,e.height)}static importDOM(){return null}exportDOM(){return{element:null}}exportJSON(){return{info:this.__info,serverFileId:this.__serverFileId,width:this.getWidth(),height:this.getHeight(),type:"file-video",version:1}}createDOM(e,t){var s,i;const r=document.createElement("span");if(F.Type.isStringFilled(e==null?void 0:(s=e.theme)==null?void 0:(i=s.video)==null?void 0:i.container)){F.Dom.addClass(r,e.theme.video.container)}return r}updateDOM(e,t,s){return false}decorate(e,t){return{componentClass:Yi,options:{src:this.__info.downloadUrl,width:this.getWidth(),height:this.getHeight(),maxWidth:this.getWidth(),maxHeight:this.getHeight(),config:t}}}isInline(){return true}}Qi.useDecoratorComponent=true;function Zi(e,t={},s=null,i=null){const r=new Qi(e,t,s,i);return L.$applyNodeReplacement(r)}function er(e){return e instanceof Qi}function tr(e){const t=e.target;let s=null;if(t!==null){s=t.nodeType===9?t.defaultView:t.ownerDocument.defaultView}let i=null;const r=(s||window).getSelection();if(document.caretRangeFromPoint){i=document.caretRangeFromPoint(e.clientX,e.clientY)}else if(e.rangeParent&&r!==null){r.collapse(e.rangeParent,e.rangeOffset||0);i=r.getRangeAt(0)}else{throw new Error("Cannot get the selection when dragging")}return i}function sr(e){const t=L.$getSelection();if(!L.$isNodeSelection(t)){return null}const s=t.getNodes();const i=s[0];return e(i)?i:null}let ir=e=>e,rr;const ar="application/x-lexical-drag-image";const or=F.Tag.render(rr||(rr=ir`<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7">`));function lr(e,t,s){const i=e=>e instanceof t;const r=()=>sr((e=>i(e)));return y.mergeRegister(e.registerCommand(L.DRAGSTART_COMMAND,(t=>{const s=r();if(!s){return false}const i=nr(t,s);if(i){e.dispatchCommand(C)}return i}),L.COMMAND_PRIORITY_HIGH),e.registerCommand(L.DRAGOVER_COMMAND,(t=>{const s=r();if(!s){return false}return dr(t,e)}),L.COMMAND_PRIORITY_LOW),e.registerCommand(L.DROP_COMMAND,(t=>{const i=r();if(!i){return false}e.dispatchCommand(O);return cr(t,e,i,s)}),L.COMMAND_PRIORITY_HIGH))}function nr(e,t){const s=e.dataTransfer;if(!s){return false}s.setData("text/plain","_");s.setDragImage(or,0,0);s.setData(ar,JSON.stringify({data:t.exportJSON(),type:t.getType()}));return true}function dr(e,t){if(!hr(e,t)){e.preventDefault()}return true}function cr(e,t,s,i){var r;const a=(r=e.dataTransfer)==null?void 0:r.getData(ar);if(!a){return false}const{type:o,data:l}=JSON.parse(a);if(o!==s.getType()||!F.Type.isPlainObject(l)){return false}e.preventDefault();if(hr(e,t)&&F.Type.isFunction(i)){const t=tr(e);s.remove();const r=L.$createRangeSelection();if(t!==null&&t!==undefined){r.applyDOMRange(t)}L.$setSelection(r);i(l)}return true}function hr(e,t){const s=e.target;const i=["code",".ui-text-editor__file-image"];const r=t.getThemeClass("image");if(F.Type.isStringFilled(r)){i.push(`.${r}`)}return s instanceof HTMLElement&&s.closest(i.join(","))===null&&t.getEditableContainer().contains(s.parentElement)}const br={FILE:"file",IMAGE:"image",VIDEO:"video"};const ur=L.createCommand("ADD_FILE_COMMAND");const pr=L.createCommand("ADD_FILES_COMMAND");const gr=L.createCommand("INSERT_FILE_COMMAND");const vr=L.createCommand("REMOVE_FILE_COMMAND");const fr=L.createCommand("GET_INSERTED_FILES_COMMAND");var Pr=babelHelpers.classPrivateFieldLooseKey("enabled");var mr=babelHelpers.classPrivateFieldLooseKey("mode");var Lr=babelHelpers.classPrivateFieldLooseKey("files");var yr=babelHelpers.classPrivateFieldLooseKey("registerListeners");class Fr extends ie{constructor(e){super(e);Object.defineProperty(this,yr,{value:Hr});Object.defineProperty(this,Pr,{writable:true,value:false});Object.defineProperty(this,mr,{writable:true,value:"file"});Object.defineProperty(this,Lr,{writable:true,value:new Map});const t=e.getOption("file.mode");babelHelpers.classPrivateFieldLooseBase(this,Pr)[Pr]=["file","disk"].includes(t);if(!babelHelpers.classPrivateFieldLooseBase(this,Pr)[Pr]){return}babelHelpers.classPrivateFieldLooseBase(this,mr)[mr]=t;const s=e.getOption("file.files",[]);this.addFiles(s);babelHelpers.classPrivateFieldLooseBase(this,yr)[yr]();this.cleanUpRegister(lr(this.getEditor(),Ei,(e=>{this.getEditor().dispatchCommand(gr,e)})),lr(this.getEditor(),Qi,(e=>{this.getEditor().dispatchCommand(gr,e)})))}static getName(){return"File"}static getNodes(e){return[Mi,Ei,Qi]}importBBCode(){if(!this.isEnabled()){return null}return{[this.getMode()]:()=>({conversion:e=>{const t=e.getAttribute("id");const s=()=>({node:L.$createTextNode(e.toString())});if(!F.Type.isStringFilled(t)||this.getMode()==="disk"&&!/^n?\d+$/i.test(t)||this.getMode()==="file"&&!/^(\d+|[\da-f-]{36}\.[\da-f]{32,})$/i.test(t)){return s()}const i=this.getFile(t);if(i===null){return s()}const r=this.getFileType(i);if(r===br.IMAGE){const s=F.Text.toInteger(e.getAttribute("width"));const r=F.Text.toInteger(e.getAttribute("height"));return{node:Ni(t,i,s,r)}}if(r===br.VIDEO){const s=F.Text.toInteger(e.getAttribute("width"));const r=F.Text.toInteger(e.getAttribute("height"));return{node:Zi(t,i,s,r)}}return{node:Di(t,i)}},priority:0})}}exportBBCode(){if(!this.isEnabled()){return null}return{file:e=>{const t=this.getEditor().getBBCodeScheme();const s=this.getMode()==="disk"?{file:""}:{};s.id=e.getServerFileId();return{node:t.createElement({name:this.getMode(),attributes:s,inline:true})}},"file-video":e=>{const t=this.getEditor().getBBCodeScheme();const s=this.getMode()==="disk"?{file:""}:{};s.id=e.getServerFileId();const i=t.createElement({name:this.getMode(),attributes:s,inline:false});i.setAttribute("width",e.getWidth());i.setAttribute("height",e.getHeight());return{node:i}},"file-image":e=>{const t=this.getEditor().getBBCodeScheme();const s=this.getMode()==="disk"?{file:""}:{};s.id=e.getServerFileId();const i=t.createElement({name:this.getMode(),attributes:s,inline:true});if(e.isResized()){i.setAttribute("width",e.getWidth());i.setAttribute("height",e.getHeight())}return{node:i}}}}validateScheme(){if(!this.isEnabled()){return null}return{bbcodeMap:{file:this.getMode(),"file-image":this.getMode(),"file-video":this.getMode()}}}isEnabled(){return babelHelpers.classPrivateFieldLooseBase(this,Pr)[Pr]}getMode(){return babelHelpers.classPrivateFieldLooseBase(this,mr)[mr]}addFile(e){if(F.Type.isPlainObject(e)&&(F.Type.isStringFilled(e.serverFileId)||F.Type.isNumber(e.serverFileId))){const t=e.serverFileId.toString();if(!babelHelpers.classPrivateFieldLooseBase(this,Lr)[Lr].has(t)){babelHelpers.classPrivateFieldLooseBase(this,Lr)[Lr].set(e.serverFileId.toString(),e)}}}addFiles(e){if(F.Type.isArrayFilled(e)){e.forEach((e=>{this.addFile(e)}))}}getFile(e){if(F.Type.isStringFilled(e)||F.Type.isNumber(e)){return babelHelpers.classPrivateFieldLooseBase(this,Lr)[Lr].get(e.toString())||null}return null}getFileType(e){if(e!=null&&e.isImage){return br.IMAGE}if(e!=null&&e.isVideo){return br.VIDEO}return br.FILE}removeFile(e,t=true){if(F.Type.isStringFilled(e)||F.Type.isNumber(e)){babelHelpers.classPrivateFieldLooseBase(this,Lr)[Lr].delete(e.toString());this.getEditor().update((()=>{const t=[...L.$nodesOfType(Mi),...L.$nodesOfType(Ei),...L.$nodesOfType(Qi)];t.forEach((t=>{if(t.getServerFileId().toString()===e.toString()){t.remove()}}))}),t?{tag:"history-merge"}:{})}}}function Hr(){this.cleanUpRegister(this.getEditor().registerCommand(gr,(e=>{if(!F.Type.isPlainObject(e)||!F.Type.isPlainObject(e.info)||!F.Type.isNumber(e.serverFileId)&&!F.Type.isStringFilled(e.serverFileId)){return false}this.addFile(e.info);const t=this.getFileType(e.info);let s=null;const i=e.info.previewWidth;const r=e.info.previewHeight;const a=e.width;const o=e.height;if(t===br.IMAGE){const[t,l]=Ri(i,r,a,o);s=Ni(e.serverFileId,e.info,t,l)}else if(t===br.VIDEO){let t=0;let l=0;if(i>0&&r>0){[t,l]=Ri(i,r,a,o)}s=Zi(e.serverFileId,e.info,t,l)}else{s=Di(e.serverFileId,e.info)}L.$insertNodes([s]);if(L.$isRootOrShadowRoot(s.getParentOrThrow())){y.$wrapNodeInElement(s,L.$createParagraphNode).selectEnd()}return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(vr,(e=>{if(!F.Type.isPlainObject(e)||!F.Type.isNumber(e.serverFileId)&&!F.Type.isStringFilled(e.serverFileId)){return false}this.removeFile(e.serverFileId,e.skipHistoryStack);return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(fr,(e=>{if(!F.Type.isFunction(e)){return false}const t=[...L.$nodesOfType(Mi),...L.$nodesOfType(Ei),...L.$nodesOfType(Qi)];e(t);return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(ur,(e=>{this.addFile(e);return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(pr,(e=>{this.addFiles(e);return true}),L.COMMAND_PRIORITY_EDITOR))}var Br=Object.freeze({FileImageNode:Ei,$createFileImageNode:Ni,$isFileImageNode:_i,FileImageComponent:yi,FileNode:Mi,$createFileNode:Di,$isFileNode:Si,FileVideoNode:Qi,$createFileVideoNode:Zi,$isFileVideoNode:er,FileType:br,ADD_FILE_COMMAND:ur,ADD_FILES_COMMAND:pr,INSERT_FILE_COMMAND:gr,REMOVE_FILE_COMMAND:vr,GET_INSERTED_FILES_COMMAND:fr,FilePlugin:Fr});function Cr(e){return/^(http:|https:|ftp:|blob:|\/)/i.test(e)}let Or=e=>e,Tr,Er;var Nr=babelHelpers.classPrivateFieldLooseKey("refs");var _r=babelHelpers.classPrivateFieldLooseKey("figureResizer");var Mr=babelHelpers.classPrivateFieldLooseKey("maxWidth");var Dr=babelHelpers.classPrivateFieldLooseKey("render");var Sr=babelHelpers.classPrivateFieldLooseKey("getContainer");var Rr=babelHelpers.classPrivateFieldLooseKey("getImageContainer");var Ir=babelHelpers.classPrivateFieldLooseKey("setDraggable");var xr=babelHelpers.classPrivateFieldLooseKey("handleResizeStart");var wr=babelHelpers.classPrivateFieldLooseKey("handleResizeEnd");class Ar extends Ss{constructor(e){super(e);Object.defineProperty(this,wr,{value:Wr});Object.defineProperty(this,xr,{value:Ur});Object.defineProperty(this,Ir,{value:kr});Object.defineProperty(this,Rr,{value:jr});Object.defineProperty(this,Sr,{value:Kr});Object.defineProperty(this,Dr,{value:$r});Object.defineProperty(this,Nr,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,_r,{writable:true,value:null});Object.defineProperty(this,Mr,{writable:true,value:"none"});babelHelpers.classPrivateFieldLooseBase(this,_r)[_r]=new ri({target:this.getImage(),editor:this.getEditor(),originalWidth:this.getOption("width"),originalHeight:this.getOption("height"),maxWidth:this.getMaxWidth(),events:{onResizeStart:babelHelpers.classPrivateFieldLooseBase(this,xr)[xr].bind(this),onResizeEnd:babelHelpers.classPrivateFieldLooseBase(this,wr)[wr].bind(this)}});this.getNodeSelection().onSelect((e=>{if(e||babelHelpers.classPrivateFieldLooseBase(this,_r)[_r].isResizing()){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Sr)[Sr](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,_r)[_r].show()}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Sr)[Sr](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,_r)[_r].hide()}const t=e&&!babelHelpers.classPrivateFieldLooseBase(this,_r)[_r].isResizing();babelHelpers.classPrivateFieldLooseBase(this,Ir)[Ir](t)}));this.update(this.getOptions());babelHelpers.classPrivateFieldLooseBase(this,Dr)[Dr]()}getImage(){return babelHelpers.classPrivateFieldLooseBase(this,Nr)[Nr].remember("image",(()=>{var e,t;const s=document.createElement("img");s.draggable=false;s.src=this.getOption("src");const i=this.getOption("config",{});if(i!=null&&(e=i.theme)!=null&&(t=e.image)!=null&&t.img){s.className=i.theme.image.img}s.onerror=e=>{s.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";F.Dom.addClass(this.getTarget(),"--error ui-icon-set__scope")};return s}))}getMaxWidth(){return babelHelpers.classPrivateFieldLooseBase(this,Mr)[Mr]}update(e){const t=e.width>0?`${e.width}px`:"inherit";const s=e.width>0&&e.height>0?`${e.width} / ${e.height}`:"auto";babelHelpers.classPrivateFieldLooseBase(this,Mr)[Mr]=e.maxWidth;F.Dom.style(this.getImage(),{width:t,height:"auto",aspectRatio:s})}}function $r(){F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,Sr)[Sr](),this.getTarget())}function Kr(){return babelHelpers.classPrivateFieldLooseBase(this,Nr)[Nr].remember("container",(()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,_r)[_r].getContainer();return F.Tag.render(Tr||(Tr=Or` <div class="ui-text-editor-image-component"> ${0} ${0} </div> `),babelHelpers.classPrivateFieldLooseBase(this,Rr)[Rr](),e)}))}function jr(){return babelHelpers.classPrivateFieldLooseBase(this,Nr)[Nr].remember("image-container",(()=>F.Tag.render(Er||(Er=Or` <div class="ui-text-editor-image-container"> ${0} </div> `),this.getImage())))}function kr(e){F.Dom.attr(babelHelpers.classPrivateFieldLooseBase(this,Rr)[Rr](),{draggable:e});if(e){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Sr)[Sr](),"--draggable")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Sr)[Sr](),"--draggable")}}function Ur(e){babelHelpers.classPrivateFieldLooseBase(this,Ir)[Ir](false);this.setSelected(true)}function Wr(e){this.setSelected(true);this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(Xr(t)){const{width:s,height:i}=e.getData();t.setWidthAndHeight(s,i)}}))}class Yr extends L.DecoratorNode{constructor(e,t,s,i,r){super(r);this.__width="inherit";this.__height="inherit";this.__maxWidth="none";if(Cr(e)){this.__src=e}else{this.__src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"}if(F.Type.isNumber(t)){this.__width=Math.round(t)}if(F.Type.isNumber(s)){this.__height=Math.round(s)}if(F.Type.isNumber(i)){this.__maxWidth=Math.round(i)}}static getType(){return"image"}static clone(e){return new Yr(e.__src,e.__width,e.__height,e.__maxWidth,e.__key)}static importJSON(e){const{width:t,height:s,src:i,maxWidth:r}=e;return zr({src:i,width:t,height:s,maxWidth:r})}exportDOM(){const e=document.createElement("img");e.setAttribute("src",this.__src);e.setAttribute("width",this.__width.toString());e.setAttribute("height",this.__height.toString());return{element:e}}static importDOM(){return{img:e=>({conversion:e=>{if(e instanceof HTMLImageElement&&Cr(e.src)){const{src:t,width:s,height:i}=e;const r=zr({src:t,width:s,height:i});return{node:r}}return null},priority:0})}}exportJSON(){return{src:this.getSrc(),width:this.getWidth(),height:this.getHeight(),maxWidth:this.getMaxWidth(),type:"image",version:1}}setWidthAndHeight(e,t){const s=this.getWritable();if(F.Type.isNumber(e)){s.__width=Math.round(e)}else if(e==="inherit"){s.__width=e}if(F.Type.isNumber(t)){s.__height=Math.round(t)}else if(t==="inherit"){s.__height=t}}setMaxWidth(e){if(F.Type.isNumber(e)||e==="none"){const t=this.getWritable();t.__maxWidth=F.Type.isNumber(e)?Math.round(e):e}}createDOM(e){var t;const s=document.createElement("span");const i=e.theme;const r=i==null?void 0:(t=i.image)==null?void 0:t.container;if(r!==undefined){s.className=r}return s}updateDOM(){return false}getSrc(){return this.__src}getWidth(){const e=this.getLatest();return e.__width}getHeight(){const e=this.getLatest();return e.__height}getMaxWidth(){const e=this.getLatest();return e.__maxWidth}decorate(e,t){return{componentClass:Ar,options:{src:this.getSrc(),width:this.getWidth(),height:this.getHeight(),maxWidth:this.getMaxWidth(),config:t}}}isInline(){return true}}Yr.useDecoratorComponent=true;function zr({src:e,width:t,height:s,maxWidth:i,key:r}){return L.$applyNodeReplacement(new Yr(e,t,s,i,r))}function Xr(e){return e instanceof Yr}function Gr(e,t,s){const i=Vr(t,e);if(i===null){return null}const r=i.getClientRects();const a=r.length>1;const o=t.isBackward();let l=o?r[0]:r[r.length-1];if(t.isCollapsed()&&(!l||l.left===0&&l.top===0)){let s=e.getElementByKey(t.anchor.key);let r=t.anchor.offset;if(s===null){s=i.startContainer;r=i.startOffset}const a=s.childNodes[r]||s;const o=a.getBoundingClientRect();l=new DOMRect(o.left,o.top,1,o.height)}if(!l){return null}const n=10;const d=s===document.body;const c=d?window.pageXOffset:s.scrollLeft;const h=d?window.pageYOffset:s.scrollTop;let b=(o?l.left:l.right)+c;let u=l.top+h;let p=l.bottom+h+n;if(!d){const e=s.getBoundingClientRect();u-=e.top;b-=e.left;p-=e.top}return{left:b,top:u,bottom:p,isBackward:o,isMultiline:a}}function Vr(e,t){if(!L.$isRangeSelection(e)){return null}const s=document.createRange();const i=e.anchor.getNode();const r=e.focus.getNode();const a=i.getKey();const o=r.getKey();let l=t.getElementByKey(a);let n=t.getElementByKey(o);let d=e.anchor.offset;let c=e.focus.offset;if(L.$isTextNode(i)){l=Jr(l)}if(L.$isTextNode(r)){n=Jr(n)}if(l===null||n===null){return null}if(l.nodeName==="BR"){[l,d]=qr(l)}if(n.nodeName==="BR"){[n,c]=qr(n)}const h=l.firstChild;if(l===n&&h!==null&&h.nodeName==="BR"&&d===0&&c===0){c=1}try{s.setStart(l,d);s.setEnd(n,c)}catch{return null}if(s.collapsed&&(d!==c||a!==o)){s.setStart(n,c);s.setEnd(l,d)}return s}function Jr(e){let t=e;while(t!==null){if(t.nodeType===Node.TEXT_NODE){return t}t=t.firstChild}return null}function qr(e){const t=e.parentNode;if(t===null){throw new Error("Should never happen")}return[t,[...t.childNodes].indexOf(e)]}const Qr=new WeakMap;const Zr=16;function ea(e,t,s){const i=L.$getSelection();if(!L.$isRangeSelection(i)){return false}const r=Gr(t,i,document.body);if(r===null){return false}const{top:a,left:o,bottom:l,isBackward:n}=r;const d=F.Dom.getPosition(t.getScrollerContainer());const c=F.Dom.getPosition(e.getPopupContainer());const h=c.width;let b=h/2;if(o-b<d.left){const e=d.left-(o-b);b-=e+Zr}else if(d.right<o+h-b){b+=o+h-b-d.right+Zr}e.setOffset({offsetLeft:-b});if(l<d.top||a>d.bottom){F.Dom.style(e.getPopupContainer(),{left:"-9999px",top:"-9999px"})}else{const t=F.Type.isFunction(s)?s(r):n?"top":"bottom";const i=Qr.get(e)||null;let h=i===null?t:i;if(a+c.height>d.bottom&&d.top<a-c.height){h="top"}else if(a-c.height<d.top){h="bottom"}Qr.set(e,h);e.setBindElement({left:o,top:a,bottom:l});e.adjustPosition({position:h,forceBindPosition:true})}return true}function ta(e){Qr.delete(e)}const sa=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g;const ia=/^(?:(?:https?|ftps?|mailto):|[^a-z]|[+.a-z-]+(?:[^+.:a-z-]|$))/i;function ra(e){if(!F.Type.isStringFilled(e)){return""}const t=e.replaceAll(sa,"");return ia.test(t)?t:""}let aa=e=>e,oa,la;var na=babelHelpers.classPrivateFieldLooseKey("popup");var da=babelHelpers.classPrivateFieldLooseKey("imageUrl");var ca=babelHelpers.classPrivateFieldLooseKey("targetContainer");var ha=babelHelpers.classPrivateFieldLooseKey("refs");var ba=babelHelpers.classPrivateFieldLooseKey("handleSaveBtnClick");var ua=babelHelpers.classPrivateFieldLooseKey("handleTextBoxKeyDown");var pa=babelHelpers.classPrivateFieldLooseKey("handleCancelBtnClick");class ga extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,pa,{value:Pa});Object.defineProperty(this,ua,{value:fa});Object.defineProperty(this,ba,{value:va});Object.defineProperty(this,na,{writable:true,value:null});Object.defineProperty(this,da,{writable:true,value:""});Object.defineProperty(this,ca,{writable:true,value:null});Object.defineProperty(this,ha,{writable:true,value:new g.MemoryCache});this.setEventNamespace("BX.UI.TextEditor.ImageDialog");const t=F.Type.isPlainObject(e)?e:{};this.setTargetContainer(t.targetContainer);this.subscribeFromOptions(t.events)}show(e={}){var t;const s=(t=e.target)!=null?t:undefined;const i=F.Type.isPlainObject(e.targetOptions)?e.targetOptions:{};if(!F.Type.isUndefined(s)){this.getPopup().setBindElement(s)}this.getPopup().adjustPosition({...i,forceBindPosition:true});this.getPopup().show()}hide(){this.getPopup().close()}isShown(){return babelHelpers.classPrivateFieldLooseBase(this,na)[na]!==null&&babelHelpers.classPrivateFieldLooseBase(this,na)[na].isShown()}destroy(){this.getPopup().destroy()}setImageUrl(e){if(F.Type.isString(e)){babelHelpers.classPrivateFieldLooseBase(this,da)[da]=ra(e)}}getImageUrl(){return babelHelpers.classPrivateFieldLooseBase(this,da)[da]}setTargetContainer(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,ca)[ca]=e}}getTargetContainer(){return babelHelpers.classPrivateFieldLooseBase(this,ca)[ca]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,na)[na]===null){babelHelpers.classPrivateFieldLooseBase(this,na)[na]=new p.Popup({autoHide:true,cacheable:false,padding:0,closeByEsc:true,targetContainer:this.getTargetContainer(),content:this.getContainer(),events:{onClose:()=>{this.emit("onClose")},onDestroy:()=>{this.emit("onDestroy")},onShow:()=>{this.emit("onShow")},onAfterShow:()=>{this.emit("onAfterShow")}}})}return babelHelpers.classPrivateFieldLooseBase(this,na)[na]}getContainer(){return babelHelpers.classPrivateFieldLooseBase(this,ha)[ha].remember("container",(()=>F.Tag.render(oa||(oa=aa` <div class="ui-text-editor-image-dialog"> <div class="ui-text-editor-image-dialog-form"> <div class="ui-ctl ui-ctl-textbox ui-ctl-s ui-ctl-inline ui-ctl-w100 ui-text-editor-image-dialog-textbox"> <div class="ui-ctl-tag">${0}</div> ${0} </div> <button type="button" class="ui-text-editor-image-dialog-button" onclick="${0}" data-testid="image-dialog-save-btn" > <span class="ui-icon-set --check"></span> </button> <button type="button" class="ui-text-editor-image-dialog-button" onclick="${0}" data-testid="image-dialog-cancel-btn" > <span class="ui-icon-set --cross-60"></span> </button> </div> </div> `),F.Loc.getMessage("TEXT_EDITOR_IMAGE_URL"),this.getUrlTextBox(),babelHelpers.classPrivateFieldLooseBase(this,ba)[ba].bind(this),babelHelpers.classPrivateFieldLooseBase(this,pa)[pa].bind(this))))}getUrlTextBox(){return babelHelpers.classPrivateFieldLooseBase(this,ha)[ha].remember("url-textbox",(()=>F.Tag.render(la||(la=aa` <input type="text" class="ui-ctl-element" placeholder="https://example.com/image.jpeg" value="${0}" onkeydown="${0}" data-testid="image-dialog-textbox" > `),this.getImageUrl(),babelHelpers.classPrivateFieldLooseBase(this,ua)[ua].bind(this))))}}function va(){const e=this.getUrlTextBox().value.trim();if(e.length>0){this.setImageUrl(e);this.emit("onSave")}else{this.getUrlTextBox().focus()}}function fa(e){if(e.key==="Enter"){e.preventDefault();babelHelpers.classPrivateFieldLooseBase(this,ba)[ba]()}}function Pa(){this.emit("onCancel")}const ma=L.createCommand("INSERT_IMAGE_COMMAND");const La=L.createCommand("INSERT_IMAGE_DIALOG_COMMAND");var ya=babelHelpers.classPrivateFieldLooseKey("imageDialog");var Fa=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var Ha=babelHelpers.classPrivateFieldLooseKey("lastSelection");var Ba=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Ca=babelHelpers.classPrivateFieldLooseKey("restoreSelection");var Oa=babelHelpers.classPrivateFieldLooseKey("handleDialogDestroy");var Ta=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var Ea=babelHelpers.classPrivateFieldLooseKey("registerComponents");class Na extends ie{constructor(e){super(e);Object.defineProperty(this,Ea,{value:Ra});Object.defineProperty(this,Ta,{value:Sa});Object.defineProperty(this,Oa,{value:Da});Object.defineProperty(this,Ca,{value:Ma});Object.defineProperty(this,Ba,{value:_a});Object.defineProperty(this,ya,{writable:true,value:null});Object.defineProperty(this,Fa,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,Ta)[Ta].bind(this)});Object.defineProperty(this,Ha,{writable:true,value:null});this.cleanUpRegister(babelHelpers.classPrivateFieldLooseBase(this,Ba)[Ba](),lr(this.getEditor(),Yr,(e=>{this.getEditor().dispatchCommand(ma,e)})));babelHelpers.classPrivateFieldLooseBase(this,Ea)[Ea]()}static getName(){return"Image"}static getNodes(e){return[Yr]}importBBCode(){return{img:()=>({conversion:e=>{const t=e.getContent().trim();const s=Number(e.getAttribute("width"));const i=Number(e.getAttribute("height"));if(Cr(t)){return{node:zr({src:t,width:s,height:i})}}return{node:L.$createTextNode(e.toString())}},priority:0})}}exportBBCode(){return{image:e=>{const t={};const s=e.getWidth();const i=e.getHeight();if(F.Type.isNumber(s)&&F.Type.isNumber(i)){t.width=s;t.height=i}const r=this.getEditor().getBBCodeScheme();return{node:r.createElement({name:"img",inline:true,attributes:t}),after:t=>{t.setChildren([r.createText(e.getSrc())])}}}}}validateScheme(){return{nodes:[{nodeClass:Yr}],bbcodeMap:{image:"img"}}}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,ya)[ya]!==null){babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].destroy()}}}function _a(){return y.mergeRegister(this.getEditor().registerCommand(ma,(e=>{if(!Cr(e==null?void 0:e.src)){return false}const t=zr(e);L.$insertNodes([t]);if(L.$isRootOrShadowRoot(t.getParentOrThrow())){y.$wrapNodeInElement(t,L.$createParagraphNode).selectEnd()}return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(La,(()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return false}babelHelpers.classPrivateFieldLooseBase(this,Ha)[Ha]=e.clone();if(babelHelpers.classPrivateFieldLooseBase(this,ya)[ya]!==null){babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].destroy()}this.getEditor().dispatchCommand(H);babelHelpers.classPrivateFieldLooseBase(this,ya)[ya]=new ga({targetContainer:document.body,events:{onSave:()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].getImageUrl();if(!F.Type.isStringFilled(e)){babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].hide();return}this.getEditor().dispatchCommand(ma,{src:e});babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].hide()},onCancel:()=>{babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].hide()},onClose:()=>{babelHelpers.classPrivateFieldLooseBase(this,Oa)[Oa]()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,Oa)[Oa]()},onShow:()=>{if(ea(babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].getPopup(),this.getEditor())){F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa]);this.getEditor().highlightSelection()}},onAfterShow:()=>{babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].getUrlTextBox().focus()}}});babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,ya)[ya]!==null){babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].destroy()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,ya)[ya]!==null&&babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].isShown()),L.COMMAND_PRIORITY_LOW))}function Ma(){const e=L.$getSelection();if(!L.$isRangeSelection(e)&&babelHelpers.classPrivateFieldLooseBase(this,Ha)[Ha]!==null){L.$setSelection(babelHelpers.classPrivateFieldLooseBase(this,Ha)[Ha]);babelHelpers.classPrivateFieldLooseBase(this,Ha)[Ha]=null;return true}return false}function Da(){babelHelpers.classPrivateFieldLooseBase(this,ya)[ya]=null;F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa]);this.getEditor().resetHighlightSelection();this.getEditor().update((()=>{if(!babelHelpers.classPrivateFieldLooseBase(this,Ca)[Ca]()){this.getEditor().focus()}}))}function Sa(){this.getEditor().update((()=>{ea(babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].getPopup(),this.getEditor())}))}function Ra(){this.getEditor().getComponentRegistry().register("image",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --incert-image"></span>');e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_IMAGE"));e.disableInsideUnformatted();e.subscribe("onClick",(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,ya)[ya]!==null&&babelHelpers.classPrivateFieldLooseBase(this,ya)[ya].isShown()){return}this.getEditor().focus((()=>{this.getEditor().dispatchCommand(La)}))}));return e}))}var Ia=Object.freeze({ImageNode:Yr,$createImageNode:zr,$isImageNode:Xr,INSERT_IMAGE_COMMAND:ma,INSERT_IMAGE_DIALOG_COMMAND:La,ImagePlugin:Na});class xa extends L.ElementNode{constructor(e,t,s){super(s);this.__entityId=e;this.__id=t}static getType(){return"mention"}static clone(e){return new xa(e.__entityId,e.__id,e.__key)}getId(){const e=this.getLatest();return e.__id}getEntityId(){const e=this.getLatest();return e.__entityId}static importJSON(e){const t=Aa(e.entityId,e.id);t.setFormat(e.format);t.setDirection(e.direction);return t}static importDOM(){return{span:e=>{if(!e.hasAttribute("data-mention-id")){return null}return{conversion:wa,priority:1}},a:e=>{if(!e.hasAttribute("data-mention-id")){return null}return{conversion:wa,priority:1}}}}exportDOM(){const e=document.createElement("span");e.setAttribute("data-mention-entity-id",this.__entityId);e.setAttribute("data-mention-id",this.__id.toString());return{element:e}}exportJSON(){return{...super.exportJSON(),entityId:this.__entityId,id:this.__id,type:"mention",version:1}}createDOM(e,t){var s;const i=document.createElement("span");if(F.Type.isStringFilled(e==null?void 0:(s=e.theme)==null?void 0:s.mention)){F.Dom.addClass(i,e.theme.mention)}return i}updateDOM(e,t,s){return false}canInsertTextBefore(){return false}canInsertTextAfter(){return false}canBeEmpty(){return false}isInline(){return true}insertNewAfter(e,t){const s=L.$createParagraphNode();const i=this.getDirection();s.setDirection(i);this.insertAfter(s,t);return s}extractWithChild(e,t,s){if(!L.$isRangeSelection(t)){return false}const i=t.anchor;const r=t.focus;const a=i.getNode();const o=r.getNode();const l=t.isBackward();const n=l?i.offset-r.offset:r.offset-i.offset;return this.isParentOf(a)&&this.isParentOf(o)&&this.getTextContent().length===n}}function wa(e){const t=e.textContent;if(t!==null){const{mentionEntityId:t,mentionId:s}=e.dataset;const i=Aa(t,s);return{node:i}}return null}function Aa(e,t){const s=new xa(e,t);return L.$applyNodeReplacement(s)}function $a(e){return e instanceof xa}const Ka="\\.,\\+\\*\\?\\$\\@\\|#{}\\(\\)\\^\\-\\[\\]\\\\/!%'\"~=<>_:;";const ja=["@","+"].join("");const ka=`[^${ja}${Ka}\\s]`;const Ua="(?:"+"\\.[ |$]|"+" |"+`[${Ka}]|`+")";const Wa=25;const Ya=new RegExp("(^|\\s|\\()("+`[${ja}]`+`((?:${ka}${Ua}){0,${Wa}})`+")$");const za=L.createCommand("INSERT_MENTION_COMMAND");const Xa=L.createCommand("INSERT_MENTION_DIALOG_COMMAND");var Ga=babelHelpers.classPrivateFieldLooseKey("dialog");var Va=babelHelpers.classPrivateFieldLooseKey("lastQueryMatch");var Ja=babelHelpers.classPrivateFieldLooseKey("mentionListening");var qa=babelHelpers.classPrivateFieldLooseKey("removeKeyboardCommandsLock");var Qa=babelHelpers.classPrivateFieldLooseKey("removeUpdateListener");var Za=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var eo=babelHelpers.classPrivateFieldLooseKey("lastPosition");var to=babelHelpers.classPrivateFieldLooseKey("timeoutId");var so=babelHelpers.classPrivateFieldLooseKey("triggerByAtSign");var io=babelHelpers.classPrivateFieldLooseKey("dialogOptions");var ro=babelHelpers.classPrivateFieldLooseKey("entities");var ao=babelHelpers.classPrivateFieldLooseKey("registerCommands");var oo=babelHelpers.classPrivateFieldLooseKey("registerComponents");var lo=babelHelpers.classPrivateFieldLooseKey("convertMentionElement");var no=babelHelpers.classPrivateFieldLooseKey("registerKeyDownListener");var co=babelHelpers.classPrivateFieldLooseKey("registerTextContentListener");var ho=babelHelpers.classPrivateFieldLooseKey("unregisterTextContentListener");var bo=babelHelpers.classPrivateFieldLooseKey("textContentListener");var uo=babelHelpers.classPrivateFieldLooseKey("startMentionListening");var po=babelHelpers.classPrivateFieldLooseKey("stopMentionListening");var go=babelHelpers.classPrivateFieldLooseKey("getQueryMatch");var vo=babelHelpers.classPrivateFieldLooseKey("getTextUpToAnchor");var fo=babelHelpers.classPrivateFieldLooseKey("isSelectionOnEntityBoundary");var Po=babelHelpers.classPrivateFieldLooseKey("matchMention");var mo=babelHelpers.classPrivateFieldLooseKey("splitNodeContainingQuery");var Lo=babelHelpers.classPrivateFieldLooseKey("getFullMatchOffset");var yo=babelHelpers.classPrivateFieldLooseKey("openDialog");var Fo=babelHelpers.classPrivateFieldLooseKey("adjustDialogPosition");var Ho=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var Bo=babelHelpers.classPrivateFieldLooseKey("handleHideOrDestroy");var Co=babelHelpers.classPrivateFieldLooseKey("hideDialog");var Oo=babelHelpers.classPrivateFieldLooseKey("lockKeyboardCommands");var To=babelHelpers.classPrivateFieldLooseKey("unlockKeyboardCommands");class Eo extends ie{constructor(e){super(e);Object.defineProperty(this,To,{value:Jo});Object.defineProperty(this,Oo,{value:Vo});Object.defineProperty(this,Co,{value:Go});Object.defineProperty(this,Bo,{value:Xo});Object.defineProperty(this,Ho,{value:zo});Object.defineProperty(this,Fo,{value:Yo});Object.defineProperty(this,yo,{value:Wo});Object.defineProperty(this,Lo,{value:Uo});Object.defineProperty(this,mo,{value:ko});Object.defineProperty(this,Po,{value:jo});Object.defineProperty(this,fo,{value:Ko});Object.defineProperty(this,vo,{value:$o});Object.defineProperty(this,go,{value:Ao});Object.defineProperty(this,po,{value:wo});Object.defineProperty(this,uo,{value:xo});Object.defineProperty(this,bo,{value:Io});Object.defineProperty(this,ho,{value:Ro});Object.defineProperty(this,co,{value:So});Object.defineProperty(this,no,{value:Do});Object.defineProperty(this,lo,{value:Mo});Object.defineProperty(this,oo,{value:_o});Object.defineProperty(this,ao,{value:No});Object.defineProperty(this,Ga,{writable:true,value:null});Object.defineProperty(this,Va,{writable:true,value:null});Object.defineProperty(this,Ja,{writable:true,value:false});Object.defineProperty(this,qa,{writable:true,value:null});Object.defineProperty(this,Qa,{writable:true,value:null});Object.defineProperty(this,Za,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,Ho)[Ho].bind(this)});Object.defineProperty(this,eo,{writable:true,value:null});Object.defineProperty(this,to,{writable:true,value:null});Object.defineProperty(this,so,{writable:true,value:false});Object.defineProperty(this,io,{writable:true,value:null});Object.defineProperty(this,ro,{writable:true,value:new Set});const t=e.getOption("mention.entities",[]);babelHelpers.classPrivateFieldLooseBase(this,ro)[ro]=F.Type.isArrayFilled(t)?new Set(t):new Set;const s=e.getOption("mention.dialogOptions");if(F.Type.isPlainObject(s)){babelHelpers.classPrivateFieldLooseBase(this,io)[io]=s;if(F.Type.isArrayFilled(babelHelpers.classPrivateFieldLooseBase(this,io)[io].entities)){for(const e of babelHelpers.classPrivateFieldLooseBase(this,io)[io].entities){if(F.Type.isPlainObject(e)&&F.Type.isStringFilled(e.id)){babelHelpers.classPrivateFieldLooseBase(this,ro)[ro].add(e.id)}}}babelHelpers.classPrivateFieldLooseBase(this,no)[no]()}if(babelHelpers.classPrivateFieldLooseBase(this,ro)[ro].size>0){babelHelpers.classPrivateFieldLooseBase(this,ao)[ao]();babelHelpers.classPrivateFieldLooseBase(this,oo)[oo]()}}static getName(){return"Mention"}static getNodes(e){return[xa]}importBBCode(){if(babelHelpers.classPrivateFieldLooseBase(this,ro)[ro].size>0){const e={};for(const t of babelHelpers.classPrivateFieldLooseBase(this,ro)[ro]){e[t]=()=>({conversion:babelHelpers.classPrivateFieldLooseBase(this,lo)[lo],priority:0})}return e}return null}exportBBCode(){return{mention:e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createElement({name:e.getEntityId(),value:e.getId(),inline:true})}}}}validateScheme(){return{nodes:[{nodeClass:xa}],bbcodeMap:{mention:"#mention"}}}shouldTriggerByAtSign(){return babelHelpers.classPrivateFieldLooseBase(this,so)[so]}isDialogVisible(){return babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].isRendered()&&babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].getPopup().isShown()}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,to)[to]!==null){clearTimeout(babelHelpers.classPrivateFieldLooseBase(this,to)[to]);babelHelpers.classPrivateFieldLooseBase(this,to)[to]=null}if(babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga]!==null){babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].destroy()}babelHelpers.classPrivateFieldLooseBase(this,ho)[ho]();babelHelpers.classPrivateFieldLooseBase(this,To)[To]()}}function No(){this.cleanUpRegister(this.getEditor().registerCommand(za,(e=>{if(!F.Type.isPlainObject(e)||!F.Type.isStringFilled(e.entityId)||!F.Type.isStringFilled(e.text)||!F.Type.isStringFilled(e.id)&&!F.Type.isNumber(e.id)){return false}if(!babelHelpers.classPrivateFieldLooseBase(this,ro)[ro].has(e.entityId)){console.error(`TextEditor: MentionPlugin: entity id "${e.entityId}" was not found.`);return false}const t=Aa(e.entityId,e.id);t.append(L.$createTextNode(e.text));const s=[];if(F.Type.isStringFilled(e.before)){s.push(L.$createTextNode(e.before))}s.push(t);if(F.Type.isStringFilled(e.after)){s.push(L.$createTextNode(e.after))}L.$insertNodes(s);if(L.$isRootOrShadowRoot(t.getParentOrThrow())){y.$wrapNodeInElement(t,L.$createParagraphNode).selectEnd()}return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(Xa,(e=>{const t=L.$getSelection();if(!L.$isRangeSelection(t)){return false}this.getEditor().update((()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,vo)[vo](t);let s=e!==null&&!/(\s|\()$/.test(e);if(s){const e=t.anchor;const i=e.getNode();if(i.getIndexWithinParent()===0&&e.offset===0){s=false}}t.insertText(s?" @":"@")}),{onUpdate:()=>{this.getEditor().update((()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,go)[go](L.$getSelection());if(e!==null&&!babelHelpers.classPrivateFieldLooseBase(this,fo)[fo](e.leadOffset)){babelHelpers.classPrivateFieldLooseBase(this,yo)[yo](e)}}))}});return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(e=>{if(!e||e.sender!=="mention"){babelHelpers.classPrivateFieldLooseBase(this,Co)[Co]()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>this.isDialogVisible()),L.COMMAND_PRIORITY_LOW))}function _o(){this.getEditor().getComponentRegistry().register("mention",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --mention"></span>');e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_MENTION"));e.disableInsideUnformatted();e.subscribe("onClick",(()=>{if(this.isDialogVisible()){return}this.getEditor().focus((()=>{this.getEditor().dispatchCommand(Xa)}))}));return e}))}function Mo(e){return{node:Aa(e.getName(),e.getValue())}}function Do(){babelHelpers.classPrivateFieldLooseBase(this,so)[so]=true;const e=e=>{if(babelHelpers.classPrivateFieldLooseBase(this,Ja)[Ja]){if(e.key==="Escape"||e.key==="Enter"){babelHelpers.classPrivateFieldLooseBase(this,po)[po]()}}else if(!babelHelpers.classPrivateFieldLooseBase(this,Ja)[Ja]&&(e.key==="+"||e.key==="@")){babelHelpers.classPrivateFieldLooseBase(this,to)[to]=setTimeout((()=>{this.getEditor().update((()=>{const e=L.$getSelection();const t=babelHelpers.classPrivateFieldLooseBase(this,go)[go](e);if(t!==null&&!babelHelpers.classPrivateFieldLooseBase(this,fo)[fo](t.leadOffset)){babelHelpers.classPrivateFieldLooseBase(this,yo)[yo](t)}}))}),300)}return false};this.cleanUpRegister(this.getEditor().registerCommand(L.KEY_DOWN_COMMAND,e,L.COMMAND_PRIORITY_LOW))}function So(){babelHelpers.classPrivateFieldLooseBase(this,ho)[ho]();babelHelpers.classPrivateFieldLooseBase(this,Qa)[Qa]=this.getEditor().registerTextContentListener(babelHelpers.classPrivateFieldLooseBase(this,bo)[bo].bind(this))}function Ro(){if(babelHelpers.classPrivateFieldLooseBase(this,Qa)[Qa]!==null){babelHelpers.classPrivateFieldLooseBase(this,Qa)[Qa]();babelHelpers.classPrivateFieldLooseBase(this,Qa)[Qa]=null}}function Io(){this.getEditor().getEditorState().read((()=>{const e=L.$getSelection();const t=babelHelpers.classPrivateFieldLooseBase(this,go)[go](e);if(t!==null&&!babelHelpers.classPrivateFieldLooseBase(this,fo)[fo](t.leadOffset)){babelHelpers.classPrivateFieldLooseBase(this,yo)[yo](t)}else{babelHelpers.classPrivateFieldLooseBase(this,Co)[Co]()}}))}function xo(){babelHelpers.classPrivateFieldLooseBase(this,Ja)[Ja]=true;babelHelpers.classPrivateFieldLooseBase(this,co)[co]()}function wo(){babelHelpers.classPrivateFieldLooseBase(this,Ja)[Ja]=false;babelHelpers.classPrivateFieldLooseBase(this,ho)[ho]()}function Ao(e,t=0){if(!L.$isRangeSelection(e)||!e.isCollapsed()){return null}const s=e.anchor;const i=s.getNode();if(!L.$isTextNode(i)||!i.isSimpleText()){return null}const r=babelHelpers.classPrivateFieldLooseBase(this,vo)[vo](e);if(!F.Type.isStringFilled(r)){return null}return babelHelpers.classPrivateFieldLooseBase(this,Po)[Po](r,t)}function $o(e){const t=e.anchor;if(t.type!=="text"){return null}const s=t.getNode();if(!s.isSimpleText()){return null}const i=t.offset;return s.getTextContent().slice(0,i)}function Ko(e){if(e!==0){return false}return this.getEditor().getEditorState().read((()=>{const e=L.$getSelection();if(L.$isRangeSelection(e)){const t=e.anchor;const s=t.getNode();const i=s.getPreviousSibling();return L.$isTextNode(i)&&i.isTextEntity()}return false}))}function jo(e,t){const s=Ya.exec(e);if(s!==null){const e=s[1];const i=s[3];if(i.length>=t){return{leadOffset:s.index+e.length,matchingString:i,replaceableString:s[2]}}}return null}function ko(e){const t=L.$getSelection();if(!L.$isRangeSelection(t)||!t.isCollapsed()){return null}const s=t.anchor;if(s.type!=="text"){return null}const i=s.getNode();if(!i.isSimpleText()){return null}const r=s.offset;const a=i.getTextContent().slice(0,r);const o=e.replaceableString.length;const l=babelHelpers.classPrivateFieldLooseBase(this,Lo)[Lo](a,e.matchingString,o);const n=r-l;if(n<0){return null}let d=null;if(n===0){[d]=i.splitText(r)}else{[,d]=i.splitText(n,r)}return d}function Uo(e,t,s){let i=s;for(let s=i;s<=t.length;s++){if(e.slice(-s)===t.slice(0,Math.max(0,s))){i=s}}return i}function Wo(e){if(this.isDestroyed()){return}babelHelpers.classPrivateFieldLooseBase(this,Va)[Va]=e;if(babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga]===null){const t=F.Type.isPlainObject(babelHelpers.classPrivateFieldLooseBase(this,io)[io])?{...babelHelpers.classPrivateFieldLooseBase(this,io)[io]}:{};const s=t.events;F.Runtime.loadExtension("ui.entity-selector").then((i=>{if(this.isDestroyed()){return}const{Dialog:r}=i;const a={multiple:false,enableSearch:false,clearSearchOnSelect:true,hideOnSelect:true,hideByEsc:true,autoHide:true,height:300,width:400,offsetAnimation:false,compactView:true,...t,events:{onShow:()=>{babelHelpers.classPrivateFieldLooseBase(this,Oo)[Oo]();babelHelpers.classPrivateFieldLooseBase(this,uo)[uo]();F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,Za)[Za])},onHide:()=>{babelHelpers.classPrivateFieldLooseBase(this,Bo)[Bo]()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,Bo)[Bo]()},"Item:onBeforeSelect":e=>{const t=e.getData().item;e.preventDefault();this.getEditor().update((()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,mo)[mo](babelHelpers.classPrivateFieldLooseBase(this,Va)[Va]);const s=Aa(t.getEntityId(),t.getId());s.append(L.$createTextNode(t.getTitle()));if(e){e.replace(s);s.select()}babelHelpers.classPrivateFieldLooseBase(this,Co)[Co]()}))}}};babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga]=new r(a);this.getEditor().dispatchCommand(H,{sender:"mention"});babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].subscribeFromOptions(s);babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].show();babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].search(e.matchingString);babelHelpers.classPrivateFieldLooseBase(this,Fo)[Fo]()})).catch((e=>{console.error('TextEditor: MentionPlugin: cannot load "ui.entity-selector"',e)}))}else{this.getEditor().dispatchCommand(H,{sender:"mention"});babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].show();babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].search(e.matchingString);babelHelpers.classPrivateFieldLooseBase(this,Fo)[Fo]()}}function Yo(){this.getEditor().update((()=>{const e=Gr(this.getEditor(),L.$getSelection(),document.body);if(e===null){return}const{top:t,left:s,bottom:i}=e;const r=F.Dom.getPosition(this.getEditor().getScrollerContainer());const a=400;let o=10;if(s-o<r.left){const e=r.left-(s-o);o-=e+16}else if(r.right<s+a-o){o+=s+a-o-r.right+16}if(i<r.top||t>r.bottom){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].getPopup().getPopupContainer(),"ui-text-editor-mention-popup__hidden")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].getPopup().getPopupContainer(),"ui-text-editor-mention-popup__hidden");babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].show();if(babelHelpers.classPrivateFieldLooseBase(this,eo)[eo]===null||babelHelpers.classPrivateFieldLooseBase(this,eo)[eo].top!==i){babelHelpers.classPrivateFieldLooseBase(this,eo)[eo]={left:s-o,top:i}}babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].getPopup().setBindElement(babelHelpers.classPrivateFieldLooseBase(this,eo)[eo]);babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].getPopup().adjustPosition({forceBindPosition:true,forceTop:true})}}))}function zo(){babelHelpers.classPrivateFieldLooseBase(this,Fo)[Fo]()}function Xo(){babelHelpers.classPrivateFieldLooseBase(this,eo)[eo]=null;babelHelpers.classPrivateFieldLooseBase(this,To)[To]();babelHelpers.classPrivateFieldLooseBase(this,po)[po]();F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,Za)[Za])}function Go(){if(babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga]!==null){babelHelpers.classPrivateFieldLooseBase(this,Ga)[Ga].hide()}}function Vo(){if(babelHelpers.classPrivateFieldLooseBase(this,qa)[qa]===null){babelHelpers.classPrivateFieldLooseBase(this,qa)[qa]=y.mergeRegister(this.getEditor().registerCommand(L.KEY_ARROW_DOWN_COMMAND,(()=>true),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ARROW_UP_COMMAND,(()=>true),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ESCAPE_COMMAND,(()=>true),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_TAB_COMMAND,(()=>true),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ENTER_COMMAND,(()=>true),L.COMMAND_PRIORITY_LOW))}}function Jo(){if(babelHelpers.classPrivateFieldLooseBase(this,qa)[qa]!==null){babelHelpers.classPrivateFieldLooseBase(this,qa)[qa]();babelHelpers.classPrivateFieldLooseBase(this,qa)[qa]=null}}var qo=Object.freeze({INSERT_MENTION_COMMAND:za,INSERT_MENTION_DIALOG_COMMAND:Xa,MentionPlugin:Eo,MentionNode:xa,$createMentionNode:Aa,$isMentionNode:$a});class Qo extends L.DecoratorNode{static getType(){return"smiley"}static clone(e){return new Qo(e.__src,e.__typing,e.__width,e.__height,e.__key)}constructor(e,t,s,i,r){super(r);this.__width=null;this.__height=null;this.__src=e;this.__typing=t;if(F.Type.isNumber(s)){this.__width=s}if(F.Type.isNumber(i)){this.__height=i}}getSrc(){return this.__src}getTyping(){return this.__typing}getWidth(){return this.__width}getHeight(){return this.__height}createDOM(e){var t;const s=document.createElement("img");s.src=encodeURI(this.__src);if(this.getWidth()>0&&this.getHeight()>0){F.Dom.style(s,{width:`${this.getWidth()}px`,height:`${this.getHeight()}px`})}if(F.Type.isStringFilled(e==null?void 0:(t=e.theme)==null?void 0:t.smiley)){F.Dom.addClass(s,e.theme.smiley)}F.Dom.attr(s,{draggable:false});return s}updateDOM(e,t,s){return false}static importJSON(e){const{src:t,typing:s,width:i,height:r}=e;return el(t,s,i,r)}exportDOM(){const e=document.createElement("span");e.textContent=this.getTyping();return{element:e}}exportJSON(){return{src:this.getSrc(),typing:this.getTyping(),width:this.getWidth(),height:this.getHeight(),type:"smiley",version:1}}decorate(e,t){return{}}getTextContent(){return this.getTyping()}isInline(){return true}isKeyboardSelectable(){return false}isIsolated(){return false}}function Zo(e){return e instanceof Qo}function el(e,t,s,i){const r=new Qo(e,t,s,i);return L.$applyNodeReplacement(r)}var tl=babelHelpers.classPrivateFieldLooseKey("popup");var sl=babelHelpers.classPrivateFieldLooseKey("targetNode");class il extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,tl,{writable:true,value:null});Object.defineProperty(this,sl,{writable:true,value:null});this.setEventNamespace("BX.UI.TextEditor.SmileyDialog");const t=F.Type.isPlainObject(e)?e:{};this.setTargetNode(t.targetNode);this.subscribeFromOptions(t.events)}show(){this.getPopup().adjustPosition({forceBindPosition:true});this.getPopup().show()}hide(){this.getPopup().close()}isShown(){return babelHelpers.classPrivateFieldLooseBase(this,tl)[tl]!==null&&babelHelpers.classPrivateFieldLooseBase(this,tl)[tl].isShown()}destroy(){this.getPopup().destroy()}setTargetNode(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,sl)[sl]=e}}getTargetNode(){return babelHelpers.classPrivateFieldLooseBase(this,sl)[sl]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,tl)[tl]===null){const e=360;const t=this.getTargetNode();const s=t.getBoundingClientRect();const i=s.width;babelHelpers.classPrivateFieldLooseBase(this,tl)[tl]=new p.Popup({autoHide:true,padding:0,closeByEsc:true,width:e,height:250,bindElement:this.getTargetNode(),events:{onClose:()=>{this.emit("onClose")},onDestroy:()=>{this.emit("onDestroy")},onFirstShow:()=>{const e=this;F.Runtime.loadExtension("ui.vue3","ui.vue3.components.smiles").then((t=>{const{BitrixVue:s,Smiles:i}=t;const r=s.createApp({methods:{handleSelect(t){e.emit("onSelect",{smiley:t.trim()})}},components:{Smiles:i},template:'<Smiles @selectSmile="handleSelect($event.text)"/>'});r.mount(babelHelpers.classPrivateFieldLooseBase(this,tl)[tl].getContentContainer())})).catch((()=>{babelHelpers.classPrivateFieldLooseBase(this,tl)[tl].close()}))},onShow:t=>{const s=t.getTarget();const r=i/2-e/2;const a=p.Popup.getOption("angleLeftOffset")-p.Popup.getOption("angleMinTop");s.setAngle({offset:e/2-a});s.setOffset({offsetLeft:r+p.Popup.getOption("angleLeftOffset")})}}})}return babelHelpers.classPrivateFieldLooseBase(this,tl)[tl]}}const rl=L.createCommand("INSERT_SMILEY_COMMAND");const al=L.createCommand("INSERT_SMILEY_DIALOG_COMMAND");var ol=babelHelpers.classPrivateFieldLooseKey("smileyParser");var ll=babelHelpers.classPrivateFieldLooseKey("smileyDialog");var nl=babelHelpers.classPrivateFieldLooseKey("registerListeners");var dl=babelHelpers.classPrivateFieldLooseKey("registerInsertSmileyCommand");var cl=babelHelpers.classPrivateFieldLooseKey("registerComponents");class hl extends ie{constructor(e){super(e);Object.defineProperty(this,cl,{value:pl});Object.defineProperty(this,dl,{value:ul});Object.defineProperty(this,nl,{value:bl});Object.defineProperty(this,ol,{writable:true,value:null});Object.defineProperty(this,ll,{writable:true,value:null});if(a.SmileyManager.getSize()>0){babelHelpers.classPrivateFieldLooseBase(this,ol)[ol]=new a.SmileyParser(a.SmileyManager.getAll());babelHelpers.classPrivateFieldLooseBase(this,nl)[nl]();babelHelpers.classPrivateFieldLooseBase(this,dl)[dl]();babelHelpers.classPrivateFieldLooseBase(this,cl)[cl]()}}static getName(){return"Smiley"}static getNodes(e){return[Qo]}importBBCode(){return null}exportBBCode(){return{smiley:e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createText(e.getTyping())}}}}validateScheme(){return{bbcodeMap:{smiley:"#text"}}}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,ll)[ll]!==null){babelHelpers.classPrivateFieldLooseBase(this,ll)[ll].destroy()}}}function bl(){const e=new Set;this.cleanUpRegister(this.getEditor().registerNodeTransform(L.TextNode,(t=>{if(!t.isSimpleText()||e.has(t.getKey())){return}const s=y.$findMatchingParent(t,(e=>(e.__flags&E)!==0));if(s){return}const i=babelHelpers.classPrivateFieldLooseBase(this,ol)[ol].parse(t.getTextContent());if(i.length>0){const s=i.reduce(((e,t)=>{e.push(t.start,t.end);return e}),[]);const r=t.splitText(...s);for(const t of r){const s=a.SmileyManager.get(t.getTextContent())||null;if(s){const e=el(s.getImage(),s.getTyping(),s.getWidth(),s.getHeight());t.replace(e)}else{e.add(t.getKey())}}}})),this.getEditor().registerUpdateListener((()=>{e.clear()})),this.getEditor().registerMutationListener(Qo,(e=>{for(const[t,s]of e){if(s==="created"){const e=this.getEditor().getElementByKey(t);e.contentEditable=true}}})),this.getEditor().registerCommand(H,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,ll)[ll]!==null){babelHelpers.classPrivateFieldLooseBase(this,ll)[ll].hide()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,ll)[ll]!==null&&babelHelpers.classPrivateFieldLooseBase(this,ll)[ll].isShown()),L.COMMAND_PRIORITY_LOW))}function ul(){this.cleanUpRegister(this.getEditor().registerCommand(rl,(e=>{const t=a.SmileyManager.get(e)||null;if(!t){return false}const s=el(t.getImage(),t.getTyping(),t.getWidth(),t.getHeight());L.$insertNodes([L.$createTextNode(" "),s,L.$createTextNode(" ")]);if(L.$isRootOrShadowRoot(s.getParentOrThrow())){y.$wrapNodeInElement(s,L.$createParagraphNode).selectEnd()}return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(al,(e=>{if(!F.Type.isPlainObject(e)||!F.Type.isElementNode(e.targetNode)){return false}if(babelHelpers.classPrivateFieldLooseBase(this,ll)[ll]!==null){if(babelHelpers.classPrivateFieldLooseBase(this,ll)[ll].getTargetNode()===e.targetNode){babelHelpers.classPrivateFieldLooseBase(this,ll)[ll].show();return true}babelHelpers.classPrivateFieldLooseBase(this,ll)[ll].destroy()}babelHelpers.classPrivateFieldLooseBase(this,ll)[ll]=new il({targetNode:e.targetNode,events:{onSelect:e=>{this.getEditor().dispatchCommand(rl,e.getData().smiley);babelHelpers.classPrivateFieldLooseBase(this,ll)[ll].hide()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,ll)[ll]=null}}});babelHelpers.classPrivateFieldLooseBase(this,ll)[ll].show();return true}),L.COMMAND_PRIORITY_LOW))}function pl(){this.getEditor().getComponentRegistry().register("smileys",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --insert-emoji"></span>');e.disableInsideUnformatted();e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_SMILEYS"));e.subscribe("onClick",(()=>{this.getEditor().update((()=>{this.getEditor().dispatchCommand(al,{targetNode:e.getContainer()})}))}));return e}))}var gl=Object.freeze({INSERT_SMILEY_COMMAND:rl,INSERT_SMILEY_DIALOG_COMMAND:al,SmileyPlugin:hl,SmileyNode:Qo,$isSmileyNode:Zo,$createSmileyNode:el,SmileyDialog:il});let vl=e=>e,fl,Pl;var ml=babelHelpers.classPrivateFieldLooseKey("refs");var Ll=babelHelpers.classPrivateFieldLooseKey("figureResizer");var yl=babelHelpers.classPrivateFieldLooseKey("trusted");var Fl=babelHelpers.classPrivateFieldLooseKey("render");var Hl=babelHelpers.classPrivateFieldLooseKey("getContainer");var Bl=babelHelpers.classPrivateFieldLooseKey("getVideo");var Cl=babelHelpers.classPrivateFieldLooseKey("handleResize");var Ol=babelHelpers.classPrivateFieldLooseKey("handleResizeEnd");class Tl extends Ss{constructor(e){super(e);Object.defineProperty(this,Ol,{value:Dl});Object.defineProperty(this,Cl,{value:Ml});Object.defineProperty(this,Bl,{value:_l});Object.defineProperty(this,Hl,{value:Nl});Object.defineProperty(this,Fl,{value:El});Object.defineProperty(this,ml,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,Ll,{writable:true,value:null});Object.defineProperty(this,yl,{writable:true,value:false});babelHelpers.classPrivateFieldLooseBase(this,yl)[yl]=F.Type.isStringFilled(this.getOption("provider"));babelHelpers.classPrivateFieldLooseBase(this,Ll)[Ll]=new ri({target:babelHelpers.classPrivateFieldLooseBase(this,Bl)[Bl](),editor:this.getEditor(),minWidth:120,minHeight:120,freeTransform:true,events:{onResize:babelHelpers.classPrivateFieldLooseBase(this,Cl)[Cl].bind(this),onResizeEnd:babelHelpers.classPrivateFieldLooseBase(this,Ol)[Ol].bind(this)}});this.getNodeSelection().onSelect((e=>{if(e||babelHelpers.classPrivateFieldLooseBase(this,Ll)[Ll].isResizing()){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Hl)[Hl](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,Ll)[Ll].show()}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Hl)[Hl](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,Ll)[Ll].hide()}}));this.update(this.getOptions());babelHelpers.classPrivateFieldLooseBase(this,Fl)[Fl]()}update(e){const t=F.Type.isNumber(e.width)&&e.width>0?e.width:null;const s=F.Type.isNumber(e.height)&&e.height>0?e.height:null;const i=t>0&&s>0?`${t} / ${s}`:"auto";F.Dom.adjust(babelHelpers.classPrivateFieldLooseBase(this,Bl)[Bl](),{attrs:{width:t},style:{width:t,height:"auto",aspectRatio:i}})}}function El(){F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,Hl)[Hl](),this.getTarget())}function Nl(){return babelHelpers.classPrivateFieldLooseBase(this,ml)[ml].remember("container",(()=>F.Tag.render(fl||(fl=vl` <div class="ui-text-editor-video-component"> <div class="ui-text-editor-video-object-container">${0}</div> ${0} </div> `),babelHelpers.classPrivateFieldLooseBase(this,Bl)[Bl](),babelHelpers.classPrivateFieldLooseBase(this,Ll)[Ll].getContainer())))}function _l(){return babelHelpers.classPrivateFieldLooseBase(this,ml)[ml].remember("video",(()=>{var e,t;let s=null;const i=this.getOption("src");if(babelHelpers.classPrivateFieldLooseBase(this,yl)[yl]){s=F.Tag.render(Pl||(Pl=vl`<iframe frameborder="0" src="about:blank" draggable="false"></iframe>`));s.src=i}else{s=F.Dom.create({tag:"video",attrs:{controls:true,preload:"metadata",playsinline:true,src:i},events:{loadedmetadata:e=>{this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(Il(t)&&t.getWidth()===0){const[s,i]=Ri(e.target.videoWidth,e.target.videoHeight,600,600);t.setWidthAndHeight(s,i)}}))}}})}const r=this.getOption("config",{});if(r!=null&&(e=r.theme)!=null&&(t=e.video)!=null&&t.object){s.className=r.theme.video.object}return s}))}function Ml(e){this.update(e.getData())}function Dl(e){this.setSelected(true);this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(Il(t)){const{width:s,height:i}=e.getData();t.setWidthAndHeight(s,i)}}))}class Sl extends L.DecoratorNode{constructor(e,t,s,i){super(i);this.__width=560;this.__height=315;this.__provider=null;this.__src=e;if(F.Type.isNumber(t)){this.__width=Math.round(t)}if(F.Type.isNumber(s)){this.__height=Math.round(s)}const r=/^https?:/.test(e)?e:`https://${e.replace(/^\/\//,"")}`;const a=new F.Uri(r);const l=o.VideoService.createByHost(a.getHost());if(l){this.__provider=l.getId()}}static getType(){return"video"}static clone(e){return new Sl(e.__src,e.__width,e.__height,e.__key)}static importJSON(e){const{width:t,height:s,src:i}=e;return Rl({src:i,width:t,height:s})}exportDOM(){return{element:null}}static importDOM(){return null}exportJSON(){return{src:this.getSrc(),width:this.getWidth(),height:this.getHeight(),type:"video",version:1}}setWidthAndHeight(e,t){const s=this.getWritable();if(F.Type.isNumber(e)){s.__width=Math.round(e)}if(F.Type.isNumber(t)){s.__height=Math.round(t)}}createDOM(e){var t;const s=document.createElement("span");const i=e.theme;const r=i==null?void 0:(t=i.video)==null?void 0:t.container;if(r!==undefined){s.className=r}return s}updateDOM(){return false}getSrc(){return this.__src}getWidth(){const e=this.getLatest();return e.__width}getHeight(){const e=this.getLatest();return e.__height}getProvider(){const e=this.getLatest();return e.__provider}decorate(e,t){return{componentClass:Tl,options:{src:this.getSrc(),width:this.getWidth(),height:this.getHeight(),provider:this.getProvider(),config:t}}}isInline(){return true}}Sl.useDecoratorComponent=true;function Rl({src:e,width:t,height:s,key:i}){return L.$applyNodeReplacement(new Sl(e,t,s,i))}function Il(e){return e instanceof Sl}let xl=e=>e,wl,Al,$l;var Kl=babelHelpers.classPrivateFieldLooseKey("popup");var jl=babelHelpers.classPrivateFieldLooseKey("videoUrl");var kl=babelHelpers.classPrivateFieldLooseKey("targetContainer");var Ul=babelHelpers.classPrivateFieldLooseKey("refs");var Wl=babelHelpers.classPrivateFieldLooseKey("handleSaveBtnClick");var Yl=babelHelpers.classPrivateFieldLooseKey("handleTextBoxKeyDown");var zl=babelHelpers.classPrivateFieldLooseKey("handleTextBoxInput");var Xl=babelHelpers.classPrivateFieldLooseKey("handleCancelBtnClick");class Gl extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,Xl,{value:Ql});Object.defineProperty(this,zl,{value:ql});Object.defineProperty(this,Yl,{value:Jl});Object.defineProperty(this,Wl,{value:Vl});Object.defineProperty(this,Kl,{writable:true,value:null});Object.defineProperty(this,jl,{writable:true,value:""});Object.defineProperty(this,kl,{writable:true,value:null});Object.defineProperty(this,Ul,{writable:true,value:new g.MemoryCache});this.setEventNamespace("BX.UI.TextEditor.VideoDialog");const t=F.Type.isPlainObject(e)?e:{};this.setTargetContainer(t.targetContainer);this.subscribeFromOptions(t.events)}show(e={}){var t;const s=(t=e.target)!=null?t:undefined;const i=F.Type.isPlainObject(e.targetOptions)?e.targetOptions:{};if(!F.Type.isUndefined(s)){this.getPopup().setBindElement(s)}this.getPopup().adjustPosition({...i,forceBindPosition:true});this.getPopup().show()}hide(){this.getPopup().close()}isShown(){return babelHelpers.classPrivateFieldLooseBase(this,Kl)[Kl]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Kl)[Kl].isShown()}destroy(){this.getPopup().destroy()}setVideoUrl(e){if(F.Type.isString(e)){babelHelpers.classPrivateFieldLooseBase(this,jl)[jl]=ra(e)}}getVideoUrl(){return babelHelpers.classPrivateFieldLooseBase(this,jl)[jl]}setTargetContainer(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,kl)[kl]=e}}getTargetContainer(){return babelHelpers.classPrivateFieldLooseBase(this,kl)[kl]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,Kl)[Kl]===null){babelHelpers.classPrivateFieldLooseBase(this,Kl)[Kl]=new p.Popup({autoHide:true,cacheable:false,padding:0,closeByEsc:true,targetContainer:this.getTargetContainer(),content:this.getContainer(),events:{onShow:()=>{this.emit("onShow")},onClose:()=>{this.emit("onClose")},onDestroy:()=>{this.emit("onDestroy")},onAfterShow:()=>{this.getUrlTextBox().focus()}}})}return babelHelpers.classPrivateFieldLooseBase(this,Kl)[Kl]}getContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ul)[Ul].remember("container",(()=>F.Tag.render(wl||(wl=xl` <div class="ui-text-editor-video-dialog"> <div class="ui-text-editor-video-dialog-form"> <div class="ui-ctl ui-ctl-textbox ui-ctl-s ui-ctl-inline ui-ctl-w100 ui-text-editor-video-dialog-textbox"> <div class="ui-ctl-tag">${0}</div> ${0} </div> <button type="button" class="ui-text-editor-video-dialog-button" onclick="${0}" data-testid="video-dialog-save-btn" > <span class="ui-icon-set --check"></span> </button> <button type="button" class="ui-text-editor-video-dialog-button" onclick="${0}" data-testid="video-dialog-cancel-btn" > <span class="ui-icon-set --cross-60"></span> </button> </div> ${0} </div> `),F.Loc.getMessage("TEXT_EDITOR_VIDEO_INSERT_TITLE"),this.getUrlTextBox(),babelHelpers.classPrivateFieldLooseBase(this,Wl)[Wl].bind(this),babelHelpers.classPrivateFieldLooseBase(this,Xl)[Xl].bind(this),this.getStatusContainer())))}getUrlTextBox(){return babelHelpers.classPrivateFieldLooseBase(this,Ul)[Ul].remember("url-textbox",(()=>F.Tag.render(Al||(Al=xl` <input type="text" class="ui-ctl-element" placeholder="https://" value="${0}" onkeydown="${0}" oninput="${0}" data-testid="video-dialog-textbox" > `),this.getVideoUrl(),babelHelpers.classPrivateFieldLooseBase(this,Yl)[Yl].bind(this),babelHelpers.classPrivateFieldLooseBase(this,zl)[zl].bind(this))))}getStatusContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ul)[Ul].remember("status",(()=>F.Tag.render($l||($l=xl` <div class="ui-text-editor-video-dialog-status">${0}</div> `),F.Loc.getMessage("TEXT_EDITOR_VIDEO_INSERT_HINT"))))}showError(e){F.Dom.addClass(this.getStatusContainer(),"--error");F.Dom.addClass(this.getUrlTextBox().parentNode,"ui-ctl-warning");if(F.Type.isStringFilled(e)){this.getStatusContainer().textContent=e}}clearError(){F.Dom.removeClass(this.getStatusContainer(),"--error");F.Dom.removeClass(this.getUrlTextBox().parentNode,"ui-ctl-warning");this.getStatusContainer().textContent=F.Loc.getMessage("TEXT_EDITOR_VIDEO_INSERT_HINT")}}function Vl(){const e=this.getUrlTextBox().value.trim();if(e.length>0){this.setVideoUrl(e);this.emit("onSave")}else{this.getUrlTextBox().focus()}}function Jl(e){if(e.key==="Enter"){e.preventDefault();babelHelpers.classPrivateFieldLooseBase(this,Wl)[Wl]()}}function ql(e){this.emit("onInput")}function Ql(){this.emit("onCancel")}function Zl(e){return/^(http:|https:|\/)/i.test(e)}const en=L.createCommand("INSERT_VIDEO_COMMAND");const tn=L.createCommand("INSERT_VIDEO_DIALOG_COMMAND");var sn=babelHelpers.classPrivateFieldLooseKey("videoDialog");var rn=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var an=babelHelpers.classPrivateFieldLooseKey("lastSelection");var on=babelHelpers.classPrivateFieldLooseKey("registerCommands");var ln=babelHelpers.classPrivateFieldLooseKey("restoreSelection");var nn=babelHelpers.classPrivateFieldLooseKey("handleDialogDestroy");var dn=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var cn=babelHelpers.classPrivateFieldLooseKey("registerComponents");class hn extends ie{constructor(e){super(e);Object.defineProperty(this,cn,{value:vn});Object.defineProperty(this,dn,{value:gn});Object.defineProperty(this,nn,{value:pn});Object.defineProperty(this,ln,{value:un});Object.defineProperty(this,on,{value:bn});Object.defineProperty(this,sn,{writable:true,value:null});Object.defineProperty(this,rn,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,dn)[dn].bind(this)});Object.defineProperty(this,an,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,on)[on]();babelHelpers.classPrivateFieldLooseBase(this,cn)[cn]()}static getName(){return"Video"}static getNodes(e){return[Sl]}importBBCode(){return{video:()=>({conversion:e=>{const t=e.getContent().trim();const s=Number(e.getAttribute("width"));const i=Number(e.getAttribute("height"));if(Zl(t)){return{node:Rl({src:ra(t),width:s,height:i})}}return{node:L.$createTextNode(e.toString())}},priority:0})}}exportBBCode(){return{video:e=>{const t={};const s=e.getWidth();const i=e.getHeight();if(F.Type.isNumber(s)&&F.Type.isNumber(i)){t.width=s;t.height=i}const r=e.getProvider();if(F.Type.isStringFilled(r)){t.type=r}const a=this.getEditor().getBBCodeScheme();return{node:a.createElement({name:"video",inline:false,attributes:t}),after:t=>{t.setChildren([a.createText(e.getSrc())])}}}}}validateScheme(){return{nodes:[{nodeClass:Sl}],bbcodeMap:{video:"video"}}}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,sn)[sn]!==null){babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].destroy()}}}function bn(){this.cleanUpRegister(this.getEditor().registerCommand(en,(e=>{if(F.Type.isPlainObject(e)&&Zl(e.src)){const t=Rl({src:o.VideoService.getEmbeddedUrl(e.src)||e.src,width:e.width,height:e.height});y.$insertNodeToNearestRoot(t);return true}return false}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(tn,(()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return false}babelHelpers.classPrivateFieldLooseBase(this,an)[an]=e.clone();if(babelHelpers.classPrivateFieldLooseBase(this,sn)[sn]!==null){babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].destroy()}this.getEditor().dispatchCommand(H);babelHelpers.classPrivateFieldLooseBase(this,sn)[sn]=new Gl({targetContainer:document.body,events:{onSave:()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].getVideoUrl();if(!F.Type.isStringFilled(e)){babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].hide();return}if(!Zl(e)){babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].showError(F.Loc.getMessage("TEXT_EDITOR_INVALID_URL"));return}this.getEditor().dispatchCommand(en,{src:e});babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].hide()},onInput:()=>{babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].clearError()},onCancel:()=>{babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].hide()},onShow:()=>{if(ea(babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].getPopup(),this.getEditor())){F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,rn)[rn]);this.getEditor().highlightSelection()}},onClose:()=>{babelHelpers.classPrivateFieldLooseBase(this,nn)[nn]()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,nn)[nn]()}}});babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,sn)[sn]!==null){babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].hide()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,sn)[sn]!==null&&babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].isShown()),L.COMMAND_PRIORITY_LOW))}function un(){const e=L.$getSelection();if(!L.$isRangeSelection(e)&&babelHelpers.classPrivateFieldLooseBase(this,an)[an]!==null){L.$setSelection(babelHelpers.classPrivateFieldLooseBase(this,an)[an]);babelHelpers.classPrivateFieldLooseBase(this,an)[an]=null;return true}return false}function pn(){babelHelpers.classPrivateFieldLooseBase(this,sn)[sn]=null;F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,rn)[rn]);this.getEditor().resetHighlightSelection();this.getEditor().update((()=>{if(!babelHelpers.classPrivateFieldLooseBase(this,ln)[ln]()){this.getEditor().focus()}}))}function gn(){this.getEditor().update((()=>{ea(babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].getPopup(),this.getEditor())}))}function vn(){this.getEditor().getComponentRegistry().register("video",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --insert-video"></span>');e.disableInsideUnformatted();e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_VIDEO"));e.subscribe("onClick",(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,sn)[sn]!==null&&babelHelpers.classPrivateFieldLooseBase(this,sn)[sn].isShown()){return}this.getEditor().focus((()=>{this.getEditor().dispatchCommand(tn)}))}));return e}))}var fn=Object.freeze({VideoNode:Sl,$createVideoNode:Rl,$isVideoNode:Il,INSERT_VIDEO_COMMAND:en,INSERT_VIDEO_DIALOG_COMMAND:tn,VideoPlugin:hn});function Pn(e){let t=R.map((t=>t(e))).filter(Boolean).join(", ").toLocaleLowerCase();if(t!==""){t=`format: ${t}`}return t}function mn(e){if(It(e)){const t=e;return`{ ${t.__highlightType}: "${Ln(t.getTextContent())}" }`}if(At(e)){const t=e;return`{ children: ${t.getChildrenSize()} }`}if(L.$isTextNode(e)){const t=e.getTextContent();const s=t.length===0?"(empty)":`"${Ln(t)}"`;const i=yn(e);return[s,i.length>0?`{ ${i} }`:null].filter(Boolean).join(" ").trim()}if(_i(e)){const t=e;return`{ id: ${t.getId()}, width: ${t.getWidth()}, height: ${t.getHeight()} }`}if(Si(e)){const t=e;return`{ id: ${t.getId()} }`}if(er(e)){const t=e;return`{ id: ${t.getId()} }`}if(Zo(e)){const t=e;return`{ typing: ${t.getTyping()}, width: ${t.getWidth()}, height: ${t.getHeight()} }`}if(Il(e)){const t=e;return`{ width: ${t.getWidth()}, height: ${t.getHeight()} }`}if($a(e)){const t=e;return`{ entityId: ${t.getEntityId()}, id: ${t.getId()} }`}if(Xr(e)){const t=e;return`{ width: ${t.getWidth()}, height: ${t.getHeight()} }`}if(P.$isLinkNode(e)){const t=e;const s=t.getURL();const i=s.length===0?"(empty)":`"${Ln(s)}"`;const r=Fn(t);return[i,r.length>0?`{ ${r} }`:null].filter(Boolean).join(" ").trim()}return""}function Ln(e){return Object.entries(M).reduce(((e,[t,s])=>e.replace(new RegExp(t,"g"),String(s))),e)}function yn(e){return[Pn(e),On(e),Tn(e)].filter(Boolean).join(", ")}function Fn(e){return[Hn(e),Bn(e),Cn(e)].filter(Boolean).join(", ")}function Hn(e){let t=e.getTarget();if(!F.Type.isNil(t)){t=`target: ${t}`}return t}function Bn(e){let t=e.getRel();if(!F.Type.isNil(t)){t=`rel: ${t}`}return t}function Cn(e){let t=e.getTitle();if(!F.Type.isNil(t)){t=`title: ${t}`}return t}function On(e){let t=I.map((t=>t(e))).filter(Boolean).join(", ").toLocaleLowerCase();if(t!==""){t=`detail: ${t}`}return t}function Tn(e){let t=x.map((t=>t(e))).filter(Boolean).join(", ").toLocaleLowerCase();if(t!==""){t=`mode: ${t}`}return t}function En(e){if(!L.$isNodeSelection(e)){return""}return`: node\n \u2514 [${[...e._nodes].join(", ")}]`}function Nn(e){let t="";const s=Pn(e);t+=`: range ${s!==""?`{ ${s} }`:""} ${e.style!==""?`{ style: ${e.style} } `:""}`;const i=e.anchor;const r=e.focus;const a=i.offset;const o=r.offset;t+=`\n \u251c anchor { key: ${i.key}, offset: ${a===null?"null":a}, type: ${i.type} }`;t+=`\n \u2514 focus { key: ${r.key}, offset: ${o===null?"null":o}, type: ${r.type} }`;return t}function _n(e){return`: table\n \u2514 { table: ${e.tableKey}, anchorCell: ${e.anchor.key}, focusCell: ${e.focus.key} }`}function Mn(e,t,s=[]){const i=e.getChildren();const r=i.length;i.forEach(((e,i)=>{t(e,s.concat(i===r-1?S.isLastChild:S.hasNextSibling));if(L.$isElementNode(e)){Mn(e,t,s.concat(i===r-1?S.ancestorIsLastChild:S.ancestorHasNextSibling))}}))}function Dn(e){const t=e.getEditorState();let s=" root\n";const i=t.read((()=>{const e=L.$getSelection();Mn(L.$getRoot(),((t,i)=>{const r=t.getKey();const a=`(${r})`;const o=t.getType()||"";const l=t.isSelected();s+=`${l?S.selectedLine:" "} ${i.join(" ")} ${a} ${o} ${mn(t)}\n`;s+=Sn({indent:i,isSelected:l,node:t,nodeKeyDisplay:a,selection:e,typeDisplay:o})}));if(e===null){return": null"}if(L.$isRangeSelection(e)){return Nn(e)}if(h.$isTableSelection(e)){return _n(e)}return En(e)}));s+=`\n selection${i}`;return s}function Sn({indent:e,isSelected:t,node:s,nodeKeyDisplay:i,selection:r,typeDisplay:a}){if(!L.$isTextNode(s)||!L.$isRangeSelection(r)||!t||L.$isElementNode(s)){return""}const o=r.anchor;const l=r.focus;if(s.getTextContent()===""||o.getNode()===r.focus.getNode()&&o.offset===l.offset){return""}const[n,d]=Rn(s,r);if(n===d){return""}const c=e[e.length-1]===S.hasNextSibling?S.ancestorHasNextSibling:S.ancestorIsLastChild;const h=[...e.slice(0,-1),c];const b=Array.from({length:n+1}).fill(" ");const u=Array.from({length:d-n}).fill(S.selectedChar);const p=a.length+3;const g=Array.from({length:i.length+p}).fill(" ");return`${[S.selectedLine,h.join(" "),[...g,...b,...u].join("")].join(" ")}\n`}function Rn(e,t){const s=t.getStartEndPoints();if(L.$isNodeSelection(t)||s===null){return[-1,-1]}const[i,r]=s;const a=e.getTextContent();const o=a.length;let l=-1;let n=-1;if(i.type==="text"&&r.type==="text"){const t=i.getNode();const s=r.getNode();if(t===s&&e===t&&i.offset!==r.offset){[l,n]=i.offset<r.offset?[i.offset,r.offset]:[r.offset,i.offset]}else if(e===t){[l,n]=t.isBefore(s)?[i.offset,o]:[0,i.offset]}else if(e===s){[l,n]=s.isBefore(t)?[r.offset,o]:[0,r.offset]}else{[l,n]=[0,o]}}const d=(a.slice(0,l).match(D)||[]).length;const c=(a.slice(l,n).match(D)||[]).length;return[l+d,n+d+c]}function In(e){return[...e].reduce(((e,t)=>Math.trunc(Math.imul(31,e)+t.codePointAt(0))),0)}function xn(e=true){const t=L.$getRoot();let s=t.getTextContent();if(e){s=s.trim()}if(s!==""){return false}const i=t.getChildren();const r=i.length;if(r>1){return false}for(let e=0;e<r;e++){const t=i[e];if(L.$isDecoratorNode(t)){return false}if(L.$isElementNode(t)){if(!L.$isParagraphNode(t)){return false}if(t.__indent!==0){return false}const s=t.getChildren();const i=s.length;for(let t=0;t<i;t++){const t=s[e];if(!L.$isTextNode(t)){return false}}}}return true}const wn={blockCursor:"ui-text-editor__block-cursor",indent:"ui-text-editor__indent",ltr:"ui-text-editor__ltr",rtl:"ui-text-editor__rtl",heading:{h1:"ui-typography-heading-h1",h2:"ui-typography-heading-h2",h3:"ui-typography-heading-h3",h4:"ui-typography-heading-h4",h5:"ui-typography-heading-h5",h6:"ui-typography-heading-h6"},hashtag:"ui-typography-hashtag",link:"ui-typography-link",list:{listitem:"ui-typography-li",nested:{listitem:"ui-text-editor__nestedListItem"},olDepth:["ui-typography-ol ui-text-editor__ol1","ui-typography-ol ui-text-editor__ol2","ui-typography-ol ui-text-editor__ol3","ui-typography-ol ui-text-editor__ol4","ui-typography-ol ui-text-editor__ol5"],ul:"ui-typography-ul"},paragraph:"ui-typography-paragraph ui-text-editor__paragraph",text:{bold:"ui-typography-text-bold",code:"ui-typography-text-code",italic:"ui-typography-text-italic",strikethrough:"ui-typography-text-strikethrough",subscript:"ui-typography-text-subscript",superscript:"ui-typography-text-superscript",underline:"ui-typography-text-underline",underlineStrikethrough:"ui-typography-text-underline-strikethrough"},mention:"ui-typography-mention",quote:"ui-typography-quote",spoiler:{container:"ui-typography-spoiler",title:"ui-typography-spoiler-title ui-icon-set__scope",content:"ui-typography-spoiler-content"},smiley:"ui-typography-smiley",code:"ui-typography-code",codeHighlight:{operator:"ui-typography-token-operator",punctuation:"ui-typography-token-punctuation",comment:"ui-typography-token-comment",word:"ui-typography-token-word",keyword:"ui-typography-token-keyword",boolean:"ui-typography-token-boolean",regex:"ui-typography-token-regex",string:"ui-typography-token-string",number:"ui-typography-token-number",semicolon:"ui-typography-token-semicolon",bracket:"ui-typography-token-bracket",brace:"ui-typography-token-brace",parentheses:"ui-typography-token-parentheses"},table:"ui-typography-table",tableRow:"ui-typography-table-row",tableCell:"ui-typography-table-cell",tableCellHeader:"ui-typography-table-cell-header",tableSelection:"ui-typography-table-selection",image:{container:"ui-typography-image-container ui-text-editor__image-container",img:"ui-typography-image"},video:{container:"ui-typography-video-container ui-text-editor__video-container",object:"ui-typography-video-object ui-text-editor__video-object"},file:"ui-text-editor__file"};let An;var $n=babelHelpers.classPrivateFieldLooseKey("pluginConstructors");var Kn=babelHelpers.classPrivateFieldLooseKey("plugins");var jn=babelHelpers.classPrivateFieldLooseKey("availablePlugins");An=Symbol.iterator;class kn{constructor(e=[],t=[],s=[]){Object.defineProperty(this,$n,{writable:true,value:new Map});Object.defineProperty(this,Kn,{writable:true,value:new Map});Object.defineProperty(this,jn,{writable:true,value:new Map});for(const t of e){if(t.getName()){babelHelpers.classPrivateFieldLooseBase(this,jn)[jn].set(t.getName(),t)}}for(const e of t){if(F.Type.isFunction(e)&&e.getName()&&!babelHelpers.classPrivateFieldLooseBase(this,jn)[jn].has(e.getName())){babelHelpers.classPrivateFieldLooseBase(this,jn)[jn].set(e.getName(),e)}}const i=t.filter((e=>{if(s.includes(e)){return false}if(F.Type.isFunction(e)&&s.includes(e.getName())){return false}return!s.includes(babelHelpers.classPrivateFieldLooseBase(this,jn)[jn].get(e))}));i.map((e=>F.Type.isFunction(e)?e:babelHelpers.classPrivateFieldLooseBase(this,jn)[jn].get(e))).forEach((e=>{if(F.Type.isFunction(e)){babelHelpers.classPrivateFieldLooseBase(this,$n)[$n].set(e.getName(),e)}}))}init(e){const t=[];for(const[,s]of babelHelpers.classPrivateFieldLooseBase(this,$n)[$n]){const i=new s(e);if(!(i instanceof ie)){throw new TypeError("TextEditor: a plugin must be an instance of TextEditor.BasePlugin.")}babelHelpers.classPrivateFieldLooseBase(this,Kn)[Kn].set(s.getName(),i);t.push(i)}t.forEach((e=>{e.afterInit()}))}getConstructors(){return[...babelHelpers.classPrivateFieldLooseBase(this,$n)[$n].values()]}getPlugins(){return babelHelpers.classPrivateFieldLooseBase(this,Kn)[Kn]}[An](){return babelHelpers.classPrivateFieldLooseBase(this,Kn)[Kn][Symbol.iterator]()}get(e){const t=F.Type.isFunction(e)?e.getName():e;return babelHelpers.classPrivateFieldLooseBase(this,Kn)[Kn].get(t)||null}has(e){const t=F.Type.isFunction(e)?e.getName():e;return babelHelpers.classPrivateFieldLooseBase(this,Kn)[Kn].has(t)}}var Un=babelHelpers.classPrivateFieldLooseKey("components");var Wn=babelHelpers.classPrivateFieldLooseKey("normalizeName");class Yn{constructor(){Object.defineProperty(this,Un,{writable:true,value:new Map})}register(e,t){babelHelpers.classPrivateFieldLooseBase(this,Un)[Un].set(babelHelpers.classPrivateFieldLooseBase(this.constructor,Wn)[Wn](e),{callback:t})}create(e){const t=babelHelpers.classPrivateFieldLooseBase(this,Un)[Un].get(babelHelpers.classPrivateFieldLooseBase(this.constructor,Wn)[Wn](e));return t?t.callback():null}}function zn(e){return String(e).toLowerCase()}Object.defineProperty(Yn,Wn,{value:zn});var Xn=babelHelpers.classPrivateFieldLooseKey("editor");var Gn=babelHelpers.classPrivateFieldLooseKey("nodeTypeToBBCodeType");var Vn=babelHelpers.classPrivateFieldLooseKey("nodeValidation");var Jn=babelHelpers.classPrivateFieldLooseKey("initNodeValidation");var qn=babelHelpers.classPrivateFieldLooseKey("handleNodeTransform");class Qn{constructor(e){Object.defineProperty(this,qn,{value:ed});Object.defineProperty(this,Jn,{value:Zn});Object.defineProperty(this,Xn,{writable:true,value:null});Object.defineProperty(this,Gn,{writable:true,value:new Map});Object.defineProperty(this,Vn,{writable:true,value:new Map});babelHelpers.classPrivateFieldLooseBase(this,Xn)[Xn]=e;babelHelpers.classPrivateFieldLooseBase(this,Jn)[Jn]()}isNodeAllowed(e,t){const s=F.Type.isString(e)?e:babelHelpers.classPrivateFieldLooseBase(this,Gn)[Gn].get(e.getType());const i=F.Type.isString(t)?t:babelHelpers.classPrivateFieldLooseBase(this,Gn)[Gn].get(t.getType());if(!s){console.warn(`TextEditor: parent node (${e.getType()}) doesn't have a bbcode tag.`)}if(!i){console.warn(`TextEditor: child node (${t.getType()}) doesn't have a bbcode tag.`)}return babelHelpers.classPrivateFieldLooseBase(this,Xn)[Xn].getBBCodeScheme().isChildAllowed(s,i)}findAllowedParent(e){let t=e.getParent();while(t!==null){if(this.isNodeAllowed(t,e)){return t}t=t.getParent()}return null}moveToNextParent(e,t=true){let s=e.getParent();let i=null;while(s.getParent()!==null){if(this.isNodeAllowed(s.getParent(),e)){i=s;break}s=s.getParent()}if(i===null){if(t){e.remove()}return false}if(L.$isRootNode(i.getParent())&&(L.$isTextNode(e)||L.$isElementNode(e)&&e.isInline())){i.insertBefore(L.$createParagraphNode().append(e));return true}i.insertBefore(e);return true}}function Zn(){const e=babelHelpers.classPrivateFieldLooseBase(this,qn)[qn].bind(this);for(const[,t]of babelHelpers.classPrivateFieldLooseBase(this,Xn)[Xn].getPlugins()){const s=t.validateScheme();if(!F.Type.isPlainObject(s)){continue}if(F.Type.isArrayFilled(s.nodes)){s.nodes.forEach((t=>{babelHelpers.classPrivateFieldLooseBase(this,Xn)[Xn].registerNodeTransform(t.nodeClass,e);if(F.Type.isFunction(t.validate)){babelHelpers.classPrivateFieldLooseBase(this,Vn)[Vn].set(t.nodeClass.getType(),{validate:t.validate})}}))}if(F.Type.isPlainObject(s.bbcodeMap)){for(const[e,t]of Object.entries(s.bbcodeMap)){babelHelpers.classPrivateFieldLooseBase(this,Gn)[Gn].set(e,t)}}}}function ed(e){const{validate:t=null}=babelHelpers.classPrivateFieldLooseBase(this,Vn)[Vn].get(e.getType())||{};if(t!==null&&t(e,this)===true){return}const s=e.getParent();if(this.isNodeAllowed(s,e)){return}console.warn(`TextEditor: ${e.getType()} is not allowed in ${s.getType()}`);this.moveToNextParent(e)}class td extends ie{constructor(e){super(e);this.cleanUpRegister(c.registerRichText(e.getLexicalEditor()))}static getName(){return"RichText"}}class sd extends L.ElementNode{static getType(){return"plain-table-node"}static clone(e){throw new Error("Not implemented")}static importJSON(e){throw new Error("Not implemented")}exportJSON(){throw new Error("Not implemented")}static importDOM(){return{table:()=>({conversion:id,priority:0}),tr:()=>({conversion:()=>({node:null}),priority:0}),td:()=>({conversion:()=>({node:null}),priority:0}),th:()=>({conversion:()=>({node:null}),priority:0})}}}function id(e){const t=[];const s=[...e.rows];for(const e of s){if(t.length>0){t.push(L.$createLineBreakNode())}const s=[];for(const t of e.cells){if(s.length>0){s.push(L.$createTextNode(" "))}s.push(L.$createTextNode(t.textContent.trim()))}t.push(...s)}return{node:t}}class rd extends ie{static getName(){return"Clipboard"}static getNodes(e){const t=[];const s=e.getPlugins().getConstructors().some((e=>e.getName()==="Table"));if(!s){t.push(sd)}return t}}var ad=babelHelpers.classPrivateFieldLooseKey("registerComponents");class od extends ie{constructor(e){super(e);Object.defineProperty(this,ad,{value:ld});babelHelpers.classPrivateFieldLooseBase(this,ad)[ad]()}static getName(){return"Bold"}importBBCode(){return{b:()=>({conversion:$,priority:0}),color:()=>({conversion:$,priority:0}),background:()=>({conversion:$,priority:0}),size:()=>({conversion:$,priority:0})}}exportBBCode(){return{"text:bold":(e,t)=>{if(e.hasFormat("bold")){return Z(t,"b",this.getEditor())}return null}}}}function ld(){this.getEditor().getComponentRegistry().register("bold",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --bold"></span>');e.setFormat("bold");e.disableInsideUnformatted();e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_BOLD",{"#keystroke#":F.Browser.isMac()?"\u2318B":"Ctrl+B"}));e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{this.getEditor().dispatchCommand(L.FORMAT_TEXT_COMMAND,"bold")}))}));return e}))}var nd=Object.freeze({BoldPlugin:od});var dd=babelHelpers.classPrivateFieldLooseKey("registerComponents");class cd extends ie{constructor(e){super(e);Object.defineProperty(this,dd,{value:hd});babelHelpers.classPrivateFieldLooseBase(this,dd)[dd]()}static getName(){return"Italic"}importBBCode(){return{i:()=>({conversion:$,priority:0})}}exportBBCode(){return{"text:italic":(e,t)=>{if(e.hasFormat("italic")){return Z(t,"i",this.getEditor())}return null}}}}function hd(){this.getEditor().getComponentRegistry().register("italic",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --italic"></span>');e.setFormat("italic");e.disableInsideUnformatted();e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_ITALIC",{"#keystroke#":F.Browser.isMac()?"\u2318I":"Ctrl+I"}));e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{this.getEditor().dispatchCommand(L.FORMAT_TEXT_COMMAND,"italic")}))}));return e}))}var bd=Object.freeze({ItalicPlugin:cd});var ud=babelHelpers.classPrivateFieldLooseKey("registerKeyModifierCommand");var pd=babelHelpers.classPrivateFieldLooseKey("registerComponents");class gd extends ie{constructor(e){super(e);Object.defineProperty(this,pd,{value:fd});Object.defineProperty(this,ud,{value:vd});babelHelpers.classPrivateFieldLooseBase(this,pd)[pd]();babelHelpers.classPrivateFieldLooseBase(this,ud)[ud]()}static getName(){return"Strikethrough"}importBBCode(){return{s:()=>({conversion:$,priority:0}),del:()=>({conversion:$,priority:0})}}exportBBCode(){return{"text:strikethrough":(e,t)=>{if(e.hasFormat("strikethrough")){return Z(t,"s",this.getEditor())}return null}}}}function vd(){this.cleanUpRegister(this.getEditor().registerCommand(L.KEY_MODIFIER_COMMAND,(e=>{const t=e;const{code:s,ctrlKey:i,metaKey:r,shiftKey:a}=t;if(s==="KeyX"&&(i||r)&&a){t.preventDefault();this.getEditor().dispatchCommand(L.FORMAT_TEXT_COMMAND,"strikethrough");return true}return false}),L.COMMAND_PRIORITY_NORMAL))}function fd(){this.getEditor().getComponentRegistry().register("strikethrough",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --strikethrough"></span>');e.setFormat("strikethrough");e.disableInsideUnformatted();e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_STRIKETHROUGH",{"#keystroke#":F.Browser.isMac()?"\u2318\u21e7X":"Ctrl+Shift+X"}));e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{this.getEditor().dispatchCommand(L.FORMAT_TEXT_COMMAND,"strikethrough")}))}));return e}))}var Pd=Object.freeze({StrikethroughPlugin:gd});var md=babelHelpers.classPrivateFieldLooseKey("registerComponents");class Ld extends ie{constructor(e){super(e);Object.defineProperty(this,md,{value:yd});babelHelpers.classPrivateFieldLooseBase(this,md)[md]()}static getName(){return"Underline"}importBBCode(){return{u:()=>({conversion:$,priority:0})}}exportBBCode(){return{"text:underline":(e,t)=>{if(e.hasFormat("underline")){return Z(t,"u",this.getEditor())}return null}}}}function yd(){this.getEditor().getComponentRegistry().register("underline",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --underline"></span>');e.setFormat("underline");e.disableInsideUnformatted();e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_UNDERLINE",{"#keystroke#":F.Browser.isMac()?"\u2318U":"Ctrl+U"}));e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{this.getEditor().dispatchCommand(L.FORMAT_TEXT_COMMAND,"underline")}))}));return e}))}var Fd=Object.freeze({UnderlinePlugin:Ld});const Hd=L.createCommand("CLEAR_FORMATTING_COMMAND");var Bd=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Cd=babelHelpers.classPrivateFieldLooseKey("registerComponents");class Od extends ie{constructor(e){super(e);Object.defineProperty(this,Cd,{value:Ed});Object.defineProperty(this,Bd,{value:Td});babelHelpers.classPrivateFieldLooseBase(this,Bd)[Bd]();babelHelpers.classPrivateFieldLooseBase(this,Cd)[Cd]()}static getName(){return"ClearFormat"}}function Td(){this.cleanUpRegister(this.getEditor().registerCommand(Hd,(()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)&&!h.$isTableSelection(e)){return false}const t=e.anchor;const s=e.focus;const i=e.getNodes();const r=e.extract();if(t.key===s.key&&t.offset===s.offset){return false}i.forEach(((e,a)=>{if(L.$isTextNode(e)){let o=e;if(a===0&&t.offset!==0){o=o.splitText(t.offset)[1]||o}if(a===i.length-1){o=o.splitText(s.offset)[0]||o}const l=r[0];if(i.length===1&&L.$isTextNode(l)){o=l}if(o.__style!==""){o.setStyle("")}if(o.__format!==0){o.setFormat(0);y.$getNearestBlockElementAncestorOrThrow(o).setFormat("")}}}));return true}),L.COMMAND_PRIORITY_EDITOR))}function Ed(){this.getEditor().getComponentRegistry().register("clear-format",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --remove-formatting"></span>');e.disableInsideUnformatted();e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_CLEAR_FORMATTING"));e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{this.getEditor().dispatchCommand(Hd)}))}));return e}))}let Nd=e=>e,_d,Md,Dd;var Sd=babelHelpers.classPrivateFieldLooseKey("popup");var Rd=babelHelpers.classPrivateFieldLooseKey("editMode");var Id=babelHelpers.classPrivateFieldLooseKey("autoLinkMode");var xd=babelHelpers.classPrivateFieldLooseKey("linkUrl");var wd=babelHelpers.classPrivateFieldLooseKey("targetContainer");var Ad=babelHelpers.classPrivateFieldLooseKey("refs");var $d=babelHelpers.classPrivateFieldLooseKey("handleSaveBtnClick");var Kd=babelHelpers.classPrivateFieldLooseKey("handleLinkTextBoxKeyDown");var jd=babelHelpers.classPrivateFieldLooseKey("handleCancelBtnClick");var kd=babelHelpers.classPrivateFieldLooseKey("handleEditBtnClick");var Ud=babelHelpers.classPrivateFieldLooseKey("handleUnlinkBtnClick");class Wd extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,Ud,{value:Vd});Object.defineProperty(this,kd,{value:Gd});Object.defineProperty(this,jd,{value:Xd});Object.defineProperty(this,Kd,{value:zd});Object.defineProperty(this,$d,{value:Yd});Object.defineProperty(this,Sd,{writable:true,value:null});Object.defineProperty(this,Rd,{writable:true,value:null});Object.defineProperty(this,Id,{writable:true,value:null});Object.defineProperty(this,xd,{writable:true,value:""});Object.defineProperty(this,wd,{writable:true,value:null});Object.defineProperty(this,Ad,{writable:true,value:new g.MemoryCache});this.setEventNamespace("BX.UI.TextEditor.LinkEditor");const t=F.Type.isPlainObject(e)?e:{};this.setTargetContainer(t.targetContainer);this.setLinkUrl(t.linkUrl);if(F.Type.isBoolean(t.editMode)){this.setEditMode(t.editMode)}else{this.setEditMode(babelHelpers.classPrivateFieldLooseBase(this,xd)[xd]==="")}this.setAutoLinkMode(e.autoLinkMode);this.subscribeFromOptions(t.events)}show(e={}){var t;const s=(t=e.target)!=null?t:undefined;const i=F.Type.isPlainObject(e.targetOptions)?e.targetOptions:{};if(!F.Type.isUndefined(s)){this.getPopup().setBindElement(s)}this.getPopup().adjustPosition({...i,forceBindPosition:true});this.getPopup().show()}isShown(){return babelHelpers.classPrivateFieldLooseBase(this,Sd)[Sd]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Sd)[Sd].isShown()}hide(){this.getPopup().close()}destroy(){this.getPopup().destroy()}setAutoLinkMode(e=true){if(e===babelHelpers.classPrivateFieldLooseBase(this,Id)[Id]){return}if(e){F.Dom.addClass(this.getContainer(),"--auto-link-mode")}else{F.Dom.removeClass(this.getContainer(),"--auto-link-mode")}if(babelHelpers.classPrivateFieldLooseBase(this,Sd)[Sd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Sd)[Sd].adjustPosition()}babelHelpers.classPrivateFieldLooseBase(this,Id)[Id]=e}setEditMode(e=true){if(e===babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd]){return}if(e){F.Dom.addClass(this.getContainer(),"--edit-mode")}else{F.Dom.removeClass(this.getContainer(),"--edit-mode")}if(babelHelpers.classPrivateFieldLooseBase(this,Sd)[Sd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Sd)[Sd].adjustPosition()}babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd]=e}setLinkUrl(e){if(F.Type.isString(e)){babelHelpers.classPrivateFieldLooseBase(this,xd)[xd]=ra(e);this.getLinkTextBox().value=babelHelpers.classPrivateFieldLooseBase(this,xd)[xd];this.getLinkLabel().textContent=babelHelpers.classPrivateFieldLooseBase(this,xd)[xd];this.getLinkLabel().href=babelHelpers.classPrivateFieldLooseBase(this,xd)[xd]}}getLinkUrl(){return babelHelpers.classPrivateFieldLooseBase(this,xd)[xd]}setTargetContainer(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,wd)[wd]=e}}getTargetContainer(){return babelHelpers.classPrivateFieldLooseBase(this,wd)[wd]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,Sd)[Sd]===null){babelHelpers.classPrivateFieldLooseBase(this,Sd)[Sd]=new p.Popup({autoHide:true,cacheable:false,padding:0,closeByEsc:true,targetContainer:this.getTargetContainer(),content:this.getContainer(),events:{onClose:()=>{this.emit("onClose")},onDestroy:()=>{this.emit("onDestroy")},onShow:()=>{this.emit("onShow")},onAfterShow:()=>{if(babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd]){this.getLinkTextBox().focus()}}}})}return babelHelpers.classPrivateFieldLooseBase(this,Sd)[Sd]}getContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ad)[Ad].remember("container",(()=>F.Tag.render(_d||(_d=Nd` <div class="ui-text-editor-link-editor"> <div class="ui-text-editor-link-form"> <div class="ui-ctl ui-ctl-textbox ui-ctl-s ui-ctl-inline ui-ctl-w100 ui-text-editor-link-textbox"> <div class="ui-ctl-tag">${0}</div> ${0} </div> <button type="button" class="ui-text-editor-link-form-button" onclick="${0}" data-testid="save-link-btn" > <span class="ui-icon-set --check"></span> </button> <button type="button" class="ui-text-editor-link-form-button" onclick="${0}" data-testid="cancel-link-btn" > <span class="ui-icon-set --cross-60"></span> </button> </div> <div class="ui-text-editor-link-preview"> ${0} <button type="button" class="ui-text-editor-link-form-button" onclick="${0}" data-testid="edit-link-btn" > <span class="ui-icon-set --pencil-60"></span> </button> <button type="button" class="ui-text-editor-link-form-button ui-text-editor-link-form-delete-btn" onclick="${0}" data-testid="unlink-btn" > <span class="ui-icon-set --delete-hyperlink"></span> </button> </div> </div> `),F.Loc.getMessage("TEXT_EDITOR_LINK_URL"),this.getLinkTextBox(),babelHelpers.classPrivateFieldLooseBase(this,$d)[$d].bind(this),babelHelpers.classPrivateFieldLooseBase(this,jd)[jd].bind(this),this.getLinkLabel(),babelHelpers.classPrivateFieldLooseBase(this,kd)[kd].bind(this),babelHelpers.classPrivateFieldLooseBase(this,Ud)[Ud].bind(this))))}getLinkTextBox(){return babelHelpers.classPrivateFieldLooseBase(this,Ad)[Ad].remember("link-textbox",(()=>F.Tag.render(Md||(Md=Nd` <input type="text" class="ui-ctl-element" placeholder="https://" value="${0}" onkeydown="${0}" data-testid="link-textbox-input" > `),this.getLinkUrl(),babelHelpers.classPrivateFieldLooseBase(this,Kd)[Kd].bind(this))))}getLinkLabel(){return babelHelpers.classPrivateFieldLooseBase(this,Ad)[Ad].remember("link-label",(()=>F.Tag.render(Dd||(Dd=Nd` <a href="" target="_blank" class="ui-text-editor-link-label"></a> `))))}}function Yd(){const e=this.getLinkTextBox().value.trim();if(e.length>0){this.setLinkUrl(e);this.emit("onSave")}else{this.getLinkTextBox().focus()}}function zd(e){if(e.key==="Enter"){e.preventDefault();babelHelpers.classPrivateFieldLooseBase(this,$d)[$d]()}}function Xd(){this.emit("onCancel")}function Gd(){this.setEditMode(true);this.getLinkTextBox().focus();this.getLinkTextBox().select()}function Vd(){this.emit("onUnlink")}function Jd(e){return/^(http:|https:|mailto:|tel:|sms:)/i.test(e)}const qd=L.createCommand("INSERT_LINK_DIALOG_COMMAND");var Qd=babelHelpers.classPrivateFieldLooseKey("linkEditor");var Zd=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var ec=babelHelpers.classPrivateFieldLooseKey("lastSelection");var tc=babelHelpers.classPrivateFieldLooseKey("registerListeners");var sc=babelHelpers.classPrivateFieldLooseKey("registerCommands");var ic=babelHelpers.classPrivateFieldLooseKey("registerToggleLinkCommand");var rc=babelHelpers.classPrivateFieldLooseKey("registerInsertLinkCommand");var ac=babelHelpers.classPrivateFieldLooseKey("restoreSelection");var oc=babelHelpers.classPrivateFieldLooseKey("handleDialogDestroy");var lc=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var nc=babelHelpers.classPrivateFieldLooseKey("registerKeyModifierCommand");var dc=babelHelpers.classPrivateFieldLooseKey("registerPasteCommand");var cc=babelHelpers.classPrivateFieldLooseKey("insertLink");var hc=babelHelpers.classPrivateFieldLooseKey("isLinkSelected");var bc=babelHelpers.classPrivateFieldLooseKey("convertAutoLinkToLink");var uc=babelHelpers.classPrivateFieldLooseKey("registerComponents");class pc extends ie{constructor(e){super(e);Object.defineProperty(this,uc,{value:Tc});Object.defineProperty(this,bc,{value:Oc});Object.defineProperty(this,hc,{value:Cc});Object.defineProperty(this,cc,{value:Bc});Object.defineProperty(this,dc,{value:Hc});Object.defineProperty(this,nc,{value:Fc});Object.defineProperty(this,lc,{value:yc});Object.defineProperty(this,oc,{value:Lc});Object.defineProperty(this,ac,{value:mc});Object.defineProperty(this,rc,{value:Pc});Object.defineProperty(this,ic,{value:fc});Object.defineProperty(this,sc,{value:vc});Object.defineProperty(this,tc,{value:gc});Object.defineProperty(this,Qd,{writable:true,value:null});Object.defineProperty(this,Zd,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,lc)[lc].bind(this)});Object.defineProperty(this,ec,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,sc)[sc]();babelHelpers.classPrivateFieldLooseBase(this,tc)[tc]();babelHelpers.classPrivateFieldLooseBase(this,uc)[uc]()}static getName(){return"Link"}static getNodes(e){return[P.LinkNode]}importBBCode(){return{url:()=>({conversion:e=>{let t=e.getValue();if(!Jd(t)){t=e.toPlainText();if(!Jd(t)){return{node:null}}}return{node:P.$createLinkNode(ra(t),{target:"_blank"})}},priority:0})}}exportBBCode(){return{link:e=>{const t=e.getURL();const s=e.getChildren();const i=s.length===1&&L.$isTextNode(s[0])&&s[0].getFormat()===0;const r=this.getEditor().getBBCodeScheme();if(i&&s[0].getTextContent()===t){return{node:r.createElement({name:"url"})}}return{node:r.createElement({name:"url",value:t})}}}}validateScheme(){return{nodes:[{nodeClass:P.LinkNode}],bbcodeMap:{link:"url"}}}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd].destroy()}}}function gc(){this.cleanUpRegister(this.getEditor().registerEventListener(P.LinkNode,"click",((e,t)=>{const s=L.$getNodeByKey(t);if(P.$isLinkNode(s)){this.getEditor().dispatchCommand(qd,s)}})))}function vc(){this.cleanUpRegister(babelHelpers.classPrivateFieldLooseBase(this,ic)[ic](),babelHelpers.classPrivateFieldLooseBase(this,rc)[rc](),babelHelpers.classPrivateFieldLooseBase(this,nc)[nc](),babelHelpers.classPrivateFieldLooseBase(this,dc)[dc]())}function fc(){return this.getEditor().registerCommand(P.TOGGLE_LINK_COMMAND,(e=>{if(e===null){P.$toggleLink(e);return true}const t=L.$getSelection();if(!L.$isRangeSelection(t)){return false}let s=null;let i=null;let r={};if(F.Type.isStringFilled(e)){s=e}else if(F.Type.isPlainObject(e)){const{target:t,rel:a,title:o}=e;r={rel:a,target:t,title:o};s=e.url;i=e.originalUrl||null}if(F.Type.isStringFilled(s)){if(!F.Type.isStringFilled(r.target)){r.target="_blank"}if(Jd(s)){if(t.isCollapsed()&&!babelHelpers.classPrivateFieldLooseBase(this,hc)[hc](t)){babelHelpers.classPrivateFieldLooseBase(this,cc)[cc](t,s,r,i)}else{P.$toggleLink(s,r)}return true}return false}return false}),L.COMMAND_PRIORITY_LOW)}function Pc(){return y.mergeRegister(this.getEditor().registerCommand(qd,(e=>{const t=L.$getSelection();if(!L.$isRangeSelection(t)||!this.getEditor().isEditable()){return false}babelHelpers.classPrivateFieldLooseBase(this,ec)[ec]=t.clone();if(babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd].destroy()}let s=null;let i=null;if(P.$isLinkNode(e)){s=e;i=s.getURL()}else{const e=y.$findMatchingParent(t.anchor.getNode(),(e=>(e.__flags&E)!==0));if(e){return false}const r=w(t);const a=y.$findMatchingParent(r,P.$isLinkNode);if(a){s=a;i=s.getURL();s.select()}else if(P.$isLinkNode(r)){s=r;i=s.getURL();s.select()}}this.getEditor().dispatchCommand(H);babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd]=new Wd({linkUrl:i,autoLinkMode:P.$isAutoLinkNode(s),targetContainer:document.body,events:{onSave:e=>{const t=e.getTarget();let i=t.getLinkUrl();if(!F.Type.isStringFilled(i)){t.hide();return}const r=F.Validation.isEmail(i)?"mailto:":"https://";const a=i;if(!Jd(i)){i=`${r}${i}`;t.setLinkUrl(i)}if(s===null){this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,ac)[ac]();this.getEditor().dispatchCommand(P.TOGGLE_LINK_COMMAND,{url:i,originalUrl:a,rel:null});t.setEditMode(false);const e=L.$getSelection();if(L.$isRangeSelection(e)){babelHelpers.classPrivateFieldLooseBase(this,ec)[ec]=e.clone()}if(!L.$isRangeSelection(e)||e.isCollapsed()){t.hide()}babelHelpers.classPrivateFieldLooseBase(this,bc)[bc](e)}))}else{this.getEditor().update((()=>{s.setURL(i);babelHelpers.classPrivateFieldLooseBase(this,bc)[bc](L.$getSelection());t.setAutoLinkMode(false)}));t.setEditMode(false)}this.getEditor().resetHighlightSelection()},onCancel:e=>{const t=e.getTarget();t.hide()},onUnlink:e=>{if(s===null){this.getEditor().dispatchCommand(P.TOGGLE_LINK_COMMAND,null)}else{this.getEditor().update((()=>{const e=s.getChildren();for(const t of e){s.insertBefore(t)}s.remove()}))}const t=e.getTarget();t.hide()},onShow:()=>{if(ea(babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd].getPopup(),this.getEditor())){F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd]);this.getEditor().highlightSelection()}},onClose:()=>{babelHelpers.classPrivateFieldLooseBase(this,oc)[oc]()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,oc)[oc]()}}});babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd].show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd].destroy()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd].isShown()),L.COMMAND_PRIORITY_LOW))}function mc(){const e=L.$getSelection();if(!L.$isRangeSelection(e)&&babelHelpers.classPrivateFieldLooseBase(this,ec)[ec]!==null){L.$setSelection(babelHelpers.classPrivateFieldLooseBase(this,ec)[ec]);babelHelpers.classPrivateFieldLooseBase(this,ec)[ec]=null;return true}return false}function Lc(){babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd]=null;F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd]);this.getEditor().resetHighlightSelection();this.getEditor().update((()=>{if(!babelHelpers.classPrivateFieldLooseBase(this,ac)[ac]()){this.getEditor().focus()}}))}function yc(){this.getEditor().update((()=>{ea(babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd].getPopup(),this.getEditor())}))}function Fc(){return this.getEditor().registerCommand(L.KEY_MODIFIER_COMMAND,(e=>{const t=e;const{code:s,ctrlKey:i,metaKey:r}=t;if(s==="KeyK"&&(i||r)){t.preventDefault();this.getEditor().dispatchCommand(qd);return true}return false}),L.COMMAND_PRIORITY_NORMAL)}function Hc(){return this.getEditor().registerCommand(L.PASTE_COMMAND,(e=>{const t=L.$getSelection();if(!L.$isRangeSelection(t)||t.isCollapsed()||!(e instanceof ClipboardEvent)||e.clipboardData===null){return false}const s=e.clipboardData.getData("text");if(!Jd(s)){return false}if(!t.getNodes().some((e=>L.$isElementNode(e)))){P.$toggleLink(s);e.preventDefault();return true}return false}),L.COMMAND_PRIORITY_NORMAL)}function Bc(e,t,s,i){const r=ra(t);const a=P.$createLinkNode(r,s);a.append(L.$createTextNode(F.Type.isStringFilled(i)?i:r));const o=e.anchor;if(o.type==="text"&&o.getNode().isSimpleText()){const e=o.getNode();const t=o.offset;const s=e.splitText(t);if(t===0){s[0].insertBefore(a);a.select()}else{s[0].insertAfter(a);a.select()}}else{L.$insertNodes([a]);if(L.$isRootOrShadowRoot(a.getParentOrThrow())){y.$wrapNodeInElement(a,L.$createParagraphNode).selectEnd()}}}function Cc(e){const t=w(e);const s=t.getParent();return P.$isLinkNode(s)||P.$isLinkNode(t)}function Oc(e){if(L.$isRangeSelection(e)){const t=w(e).getParent();if(P.$isAutoLinkNode(t)){const e=P.$createLinkNode(t.getURL(),{rel:t.getRel(),target:F.Type.isStringFilled(t.getTarget())?t.getTarget():"_blank",title:t.getTitle()});t.replace(e,true);return true}}return false}function Tc(){this.getEditor().getComponentRegistry().register("link",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --link-3"></span>');e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_LINK"));e.setBlockType("link");e.disableInsideUnformatted();e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_LINK",{"#keystroke#":F.Browser.isMac()?"\u2318K":"Ctrl+K"}));e.subscribe("onClick",(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Qd)[Qd].isShown()){return}this.getEditor().focus((()=>{this.getEditor().dispatchCommand(qd)}))}));return e}))}var Ec=Object.freeze({INSERT_LINK_DIALOG_COMMAND:qd,LinkPlugin:pc});const Nc=/((https?:\/\/(www\.)?)|(www\.))[\w#%+.:=@~-]{1,256}\.[\d()A-Za-z]{1,6}\b([\w#%&()+./:=?@[\]~-]*)(?<![%()+.:\]-])/;const _c=/(([^\s"(),.:;<>@[\\\]]+(\.[^\s"(),.:;<>@[\\\]]+)*)|(".+"))@((\[(?:\d{1,3}\.){3}\d{1,3}])|(([\dA-Za-z-]+\.)+[A-Za-z]{2,}))/;const Mc=[Ic(Nc,(e=>e.startsWith("http")?e:`https://${e}`)),Ic(_c,(e=>`mailto:${e}`))];var Dc=babelHelpers.classPrivateFieldLooseKey("registerListeners");class Sc extends ie{constructor(e){super(e);Object.defineProperty(this,Dc,{value:Rc});babelHelpers.classPrivateFieldLooseBase(this,Dc)[Dc]()}static getName(){return"AutoLink"}static getNodes(e){return[P.AutoLinkNode]}exportBBCode(){return{autolink:()=>{const e=this.getEditor().getBBCodeScheme();return{node:e.createElement({name:"url"})}}}}validateScheme(){return{nodes:[{nodeClass:P.AutoLinkNode}],bbcodeMap:{autolink:"url"}}}}function Rc(){const e=(e,t)=>{};this.cleanUpRegister(this.getEditor().registerNodeTransform(L.TextNode,(t=>{const s=t.getParentOrThrow();const i=t.getPreviousSibling();if(P.$isAutoLinkNode(s)){zc(s,Mc,e)}else if(!P.$isLinkNode(s)){if(t.isSimpleText()&&(Kc(t.getTextContent())||!P.$isAutoLinkNode(i))){Yc(t,Mc,e)}Xc(t,Mc,e)}})))}function Ic(e,t=e=>e){return s=>{const i=e.exec(s);if(i===null){return null}return{index:i.index,length:i[0].length,text:i[0],url:t(s)}}}function xc(e,t){for(const s of t){const t=s(e);if(t){return t}}return null}const wc=/[\s(),.;[\]]/;function Ac(e){return wc.test(e)}function $c(e){return Ac(e[e.length-1])}function Kc(e){return Ac(e[0])}function jc(e){return/^\.[\dA-Za-z]+/.test(e)}function kc(e){let t=e.getPreviousSibling();if(L.$isElementNode(t)){t=t.getLastDescendant()}return t===null||L.$isLineBreakNode(t)||L.$isTextNode(t)&&$c(t.getTextContent())}function Uc(e){let t=e.getNextSibling();if(L.$isElementNode(t)){t=t.getFirstDescendant()}return t===null||L.$isLineBreakNode(t)||L.$isTextNode(t)&&Kc(t.getTextContent())}function Wc(e,t,s,i){const r=e>0?Ac(s[e-1]):kc(i);if(!r){return false}return t<s.length?Ac(s[t]):Uc(i)}function Yc(e,t,s){const i=e.getTextContent();let r=i;let a=0;let o=e;let l=xc(r,t);while(l!==null){const n=l.index;const d=l.length;const c=n+d;const h=Wc(a+n,a+c,i,e);if(h){let e=null;if(a+n===0){[e,o]=o.splitText(a+d)}else{[,e,o]=o.splitText(a+n,a+n+d)}const t=F.Type.isPlainObject(l.attributes)?{...l.attributes}:{};if(!F.Type.isStringFilled(t.target)){t.target="_blank"}const i=P.$createAutoLinkNode(l.url,t);const r=L.$createTextNode(l.text);r.setFormat(e.getFormat());r.setDetail(e.getDetail());i.append(r);e.replace(i);s(l.url,null);a=0}else{a+=c}r=r.slice(Math.max(0,c));l=xc(r,t)}}function zc(e,t,s){const i=e.getChildren();const r=i.length;for(let t=0;t<r;t++){const r=i[t];if(!L.$isTextNode(r)||!r.isSimpleText()){Gc(e);s(null,e.getURL());return}}const a=e.getTextContent();const o=xc(a,t);if(o===null||o.text!==a){Gc(e);s(null,e.getURL());return}if(!kc(e)||!Uc(e)){Gc(e);s(null,e.getURL());return}const l=e.getURL();if(l!==o.url){e.setURL(o.url);s(o.url,l)}if(o.attributes){const t=e.getRel();if(t!==o.attributes.rel){e.setRel(o.attributes.rel||null);s(o.attributes.rel||null,t)}const i=e.getTarget();if(i!==o.attributes.target){e.setTarget(o.attributes.target||null);s(o.attributes.target||null,i)}}}function Xc(e,t,s){const i=e.getPreviousSibling();const r=e.getNextSibling();const a=e.getTextContent();if(P.$isAutoLinkNode(i)&&(!Kc(a)||jc(a))){i.append(e);zc(i,t,s);s(null,i.getURL())}if(P.$isAutoLinkNode(r)&&!$c(a)){Gc(r);zc(r,t,s);s(null,r.getURL())}}function Gc(e){const t=e.getChildren();const s=t.length;for(let i=s-1;i>=0;i--){e.insertAfter(t[i])}e.remove();return t.map((e=>e.getLatest()))}var Vc=Object.freeze({AutoLinkPlugin:Sc});var Jc=babelHelpers.classPrivateFieldLooseKey("registerListeners");class qc extends ie{constructor(e){super(e);Object.defineProperty(this,Jc,{value:Qc});babelHelpers.classPrivateFieldLooseBase(this,Jc)[Jc]()}static getName(){return"TabIndent"}}function Qc(){this.cleanUpRegister(this.getEditor().registerCommand(L.KEY_TAB_COMMAND,(e=>{const t=L.$getSelection();if(!L.$isRangeSelection(t)){return false}return this.getEditor().dispatchCommand(e.shiftKey?L.OUTDENT_CONTENT_COMMAND:L.INDENT_CONTENT_COMMAND,{event:e,triggerByTab:true})}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(L.INDENT_CONTENT_COMMAND,(()=>{const e=L.$getSelection();return!Zc(e)}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.OUTDENT_CONTENT_COMMAND,(()=>{const e=L.$getSelection();return!Zc(e)}),L.COMMAND_PRIORITY_LOW))}function Zc(e){if(!L.$isRangeSelection(e)){return false}const t=e.isBackward();const s=t?e.focus:e.anchor;const i=s.getNode();if(f.$isListItemNode(i)&&s.offset===0){return true}const r=y.$findMatchingParent(i,(e=>L.$isElementNode(e)&&!e.isInline()));return f.$isListItemNode(r)&&s.offset===0}var eh=Object.freeze({TabIndentPlugin:qc});var th=babelHelpers.classPrivateFieldLooseKey("registerListeners");var sh=babelHelpers.classPrivateFieldLooseKey("registerComponents");var ih=babelHelpers.classPrivateFieldLooseKey("isIndentPermitted");var rh=babelHelpers.classPrivateFieldLooseKey("getElementNodesInSelection");class ah extends ie{constructor(e){super(e);Object.defineProperty(this,rh,{value:dh});Object.defineProperty(this,ih,{value:nh});Object.defineProperty(this,sh,{value:lh});Object.defineProperty(this,th,{value:oh});babelHelpers.classPrivateFieldLooseBase(this,th)[th]();babelHelpers.classPrivateFieldLooseBase(this,sh)[sh]()}static getName(){return"List"}static getNodes(e){return[f.ListNode,f.ListItemNode]}importBBCode(){return{list:()=>({conversion:e=>({node:e.getValue()==="1"?f.$createListNode("number",1):f.$createListNode("bullet")}),priority:0}),"*":()=>({conversion:e=>({node:f.$createListItemNode()}),priority:0})}}exportBBCode(){return{list:e=>{const t=this.getEditor().getBBCodeScheme();const s=t.createElement({name:"list"});if(e.getListType()==="number"){s.setValue("1")}return{node:s}},listitem:e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createElement({name:"*"})}}}}validateScheme(){return{nodes:[{nodeClass:f.ListNode}],bbcodeMap:{list:"list",listitem:"*"}}}}function oh(){this.cleanUpRegister(this.getEditor().registerCommand(f.INSERT_ORDERED_LIST_COMMAND,(()=>{f.insertList(this.getLexicalEditor(),"number");return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(f.INSERT_UNORDERED_LIST_COMMAND,(()=>{f.insertList(this.getLexicalEditor(),"bullet");return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(f.REMOVE_LIST_COMMAND,(()=>{f.removeList(this.getLexicalEditor());return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.INSERT_PARAGRAPH_COMMAND,(()=>f.$handleListInsertParagraph()),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.INDENT_CONTENT_COMMAND,(()=>!babelHelpers.classPrivateFieldLooseBase(this,ih)[ih](1)),L.COMMAND_PRIORITY_CRITICAL))}function lh(){this.getEditor().getComponentRegistry().register("bulleted-list",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --bulleted-list"></span>');e.setBlockType("bullet");e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_BULLETED_LIST"));e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{if(e.isActive()){this.getEditor().dispatchCommand(f.REMOVE_LIST_COMMAND)}else{this.getEditor().dispatchCommand(f.INSERT_UNORDERED_LIST_COMMAND)}}))}));return e}));this.getEditor().getComponentRegistry().register("numbered-list",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --numbered-list"></span>');e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_NUMBERED_LIST"));e.setBlockType("number");e.subscribe("onClick",(()=>{this.getEditor().focus();this.getEditor().update((()=>{if(e.isActive()){this.getEditor().dispatchCommand(f.REMOVE_LIST_COMMAND)}else{this.getEditor().dispatchCommand(f.INSERT_ORDERED_LIST_COMMAND)}}))}));return e}))}function nh(e){const t=L.$getSelection();if(!L.$isRangeSelection(t)){return false}const s=babelHelpers.classPrivateFieldLooseBase(this,rh)[rh](t);let i=0;for(const e of s){if(f.$isListNode(e)){i=Math.max(f.$getListDepth(e)+1,i)}else if(f.$isListItemNode(e)){const t=e.getParent();if(!f.$isListNode(t)){throw new Error("TextEditor: A ListItemNode must have a ListNode for a parent.")}i=Math.max(f.$getListDepth(t)+1,i)}}return i<=e}function dh(e){const t=e.getNodes();const s=e=>L.$isElementNode(e)&&!e.isInline();if(t.length===0){return new Set([y.$findMatchingParent(e.anchor.getNode(),s),y.$findMatchingParent(e.focus.getNode(),s)])}return new Set(t.map((e=>L.$isElementNode(e)?e:y.$findMatchingParent(e,s))))}var ch=Object.freeze({ListPlugin:ah});let hh=e=>e,bh,uh,ph,gh;var vh=babelHelpers.classPrivateFieldLooseKey("popup");var fh=babelHelpers.classPrivateFieldLooseKey("targetNode");var Ph=babelHelpers.classPrivateFieldLooseKey("refs");var mh=babelHelpers.classPrivateFieldLooseKey("lastSelectedBox");var Lh=babelHelpers.classPrivateFieldLooseKey("handleMouseMove");var yh=babelHelpers.classPrivateFieldLooseKey("handleClick");var Fh=babelHelpers.classPrivateFieldLooseKey("highlightBoxes");class Hh extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,Fh,{value:Oh});Object.defineProperty(this,yh,{value:Ch});Object.defineProperty(this,Lh,{value:Bh});Object.defineProperty(this,vh,{writable:true,value:null});Object.defineProperty(this,fh,{writable:true,value:null});Object.defineProperty(this,Ph,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,mh,{writable:true,value:null});this.setEventNamespace("BX.UI.TextEditor.TableDialog");const t=F.Type.isPlainObject(e)?e:{};this.setTargetNode(t.targetNode);this.subscribeFromOptions(t.events)}show(){this.getPopup().adjustPosition({forceBindPosition:true});this.getPopup().show()}hide(){this.getPopup().close()}isShown(){return babelHelpers.classPrivateFieldLooseBase(this,vh)[vh]!==null&&babelHelpers.classPrivateFieldLooseBase(this,vh)[vh].isShown()}destroy(){this.getPopup().destroy()}setTargetNode(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,fh)[fh]=e}}getTargetNode(){return babelHelpers.classPrivateFieldLooseBase(this,fh)[fh]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,vh)[vh]===null){const e=this.getTargetNode();const t=e.getBoundingClientRect();const s=t.width;babelHelpers.classPrivateFieldLooseBase(this,vh)[vh]=new p.Popup({autoHide:true,closeByEsc:true,padding:0,content:F.Tag.render(bh||(bh=hh` <div class="ui-text-editor-table-dialog" onclick="${0}"> ${0} ${0} </div> `),babelHelpers.classPrivateFieldLooseBase(this,yh)[yh].bind(this),this.getGridContainer(),this.getCaptionContainer()),bindElement:this.getTargetNode(),events:{onClose:()=>{this.emit("onClose")},onDestroy:()=>{this.emit("onDestroy")},onShow:e=>{const t=e.getTarget();const i=t.getPopupContainer().offsetWidth;const r=s/2-i/2;const a=p.Popup.getOption("angleLeftOffset")-p.Popup.getOption("angleMinTop");t.setAngle({offset:i/2-a});t.setOffset({offsetLeft:r+p.Popup.getOption("angleLeftOffset")});babelHelpers.classPrivateFieldLooseBase(this,mh)[mh]=null;babelHelpers.classPrivateFieldLooseBase(this,Fh)[Fh](1,1)}}})}return babelHelpers.classPrivateFieldLooseBase(this,vh)[vh]}getGridContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ph)[Ph].remember("grid",(()=>{const e=[];for(let t=0;t<100;t++){const s=Math.floor(t/10);const i=t%10;e.push(F.Tag.render(uh||(uh=hh` <button class="ui-text-editor-table-dialog-box" data-column="${0}" data-row="${0}" ></button> `),i+1,s+1))}return F.Tag.render(ph||(ph=hh` <div class="ui-text-editor-table-dialog-grid" onmousemove="${0}" >${0}</div> `),babelHelpers.classPrivateFieldLooseBase(this,Lh)[Lh].bind(this),e)}))}getCaptionContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ph)[Ph].remember("caption",(()=>F.Tag.render(gh||(gh=hh`<div class="ui-text-editor-table-dialog-caption"></div>`))))}}function Bh(e){if(babelHelpers.classPrivateFieldLooseBase(this,mh)[mh]!==e.target&&F.Dom.hasClass(e.target,"ui-text-editor-table-dialog-box")){const{row:t,column:s}=e.target.dataset;babelHelpers.classPrivateFieldLooseBase(this,Fh)[Fh](t,s);babelHelpers.classPrivateFieldLooseBase(this,mh)[mh]=e.target}}function Ch(e){if(babelHelpers.classPrivateFieldLooseBase(this,mh)[mh]){const{row:e,column:t}=babelHelpers.classPrivateFieldLooseBase(this,mh)[mh].dataset;this.emit("onSelect",{rows:e,columns:t})}}function Oh(e,t){let s=0;for(const i of this.getGridContainer().children){const r=Math.floor(s/10);const a=s%10;const o=r<e&&a<t;if(o){F.Dom.addClass(i,"--selected")}else{F.Dom.removeClass(i,"--selected")}s++}this.getCaptionContainer().textContent=e&&t?`${e} x ${t}`:""}const Th=L.createCommand("INSERT_TABLE_DIALOG_COMMAND");var Eh=babelHelpers.classPrivateFieldLooseKey("tableDialog");var Nh=babelHelpers.classPrivateFieldLooseKey("registerComponents");var _h=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Mh=babelHelpers.classPrivateFieldLooseKey("registerListeners");class Dh extends ie{constructor(e){super(e);Object.defineProperty(this,Mh,{value:Ih});Object.defineProperty(this,_h,{value:Rh});Object.defineProperty(this,Nh,{value:Sh});Object.defineProperty(this,Eh,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,_h)[_h]();babelHelpers.classPrivateFieldLooseBase(this,Mh)[Mh]();babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh]()}static getName(){return"Table"}static getNodes(e){return[h.TableNode,h.TableCellNode,h.TableRowNode]}importBBCode(){return{table:()=>({conversion:e=>({node:h.$createTableNode()}),priority:0}),tr:()=>({conversion:e=>({node:h.$createTableRowNode()}),priority:0}),td:()=>({conversion:e=>({node:h.$createTableCellNode(),after:e=>U(e)}),priority:0}),th:()=>({conversion:e=>({node:h.$createTableCellNode(h.TableCellHeaderStates.ROW),after:e=>U(e)}),priority:0})}}exportBBCode(){return{table:()=>{const e=this.getEditor().getBBCodeScheme();return{node:e.createElement({name:"table"})}},tablerow:()=>{const e=this.getEditor().getBBCodeScheme();return{node:e.createElement({name:"tr"})}},tablecell:e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createElement({name:e.hasHeader()?"th":"td"})}}}}validateScheme(){return{nodes:[{nodeClass:h.TableNode,validate:e=>{if(e.getChildrenSize()===0){e.remove();return true}return false}},{nodeClass:h.TableCellNode,validate:e=>{e.getChildren().forEach((e=>{if(k(e)){const t=L.$createParagraphNode();e.replace(t);t.append(e)}}));return false}}],bbcodeMap:{table:"table",tablerow:"tr",tablecell:"td"}}}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh]!==null){babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh].destroy()}}}function Sh(){this.getEditor().getComponentRegistry().register("table",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --table-editor"></span>');e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_TABLE"));e.subscribe("onClick",(()=>{this.getEditor().dispatchCommand(Th,{targetNode:e.getContainer()})}));return e}))}function Rh(){this.cleanUpRegister(this.getEditor().registerCommand(h.INSERT_TABLE_COMMAND,(({columns:e,rows:t})=>{const s=Math.max(1,F.Text.toNumber(t));const i=Math.max(1,F.Text.toNumber(e));const r=h.$createTableNodeWithDimensions(s,i,false);y.$insertNodeToNearestRoot(r);const a=r.getFirstDescendant();if(L.$isTextNode(a)){a.select()}return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(Th,(e=>{if(!F.Type.isPlainObject(e)||!F.Type.isElementNode(e.targetNode)){return false}if(babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh]!==null){if(babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh].getTargetNode()===e.targetNode){babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh].show();return true}babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh].destroy()}babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh]=new Hh({targetNode:e.targetNode,events:{onSelect:e=>{this.getEditor().dispatchCommand(h.INSERT_TABLE_COMMAND,e.getData());babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh].hide()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh]=null}}});babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh].show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh]!==null){babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh].hide()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Eh)[Eh].isShown()),L.COMMAND_PRIORITY_LOW))}function Ih(){const e=new Map;const t=t=>{const s=t.getKey();const i=this.getEditor().getElementByKey(s);if(i&&!e.has(s)){const r=h.applyTableHandlers(t,i,this.getLexicalEditor(),true);e.set(s,r)}};this.cleanUpRegister(this.getEditor().registerMutationListener(h.TableNode,(s=>{for(const[i,r]of s){if(r==="created"){this.getEditor().getEditorState().read((()=>{const e=L.$getNodeByKey(i);if(h.$isTableNode(e)){t(e)}}))}else if(r==="destroyed"){const t=e.get(i);if(t!==undefined){t.removeListeners();e.delete(i)}}}})))}var xh=Object.freeze({INSERT_TABLE_DIALOG_COMMAND:Th,TablePlugin:Dh});class wh extends L.TextNode{static getType(){return"hashtag"}static clone(e){return new wh(e.__text,e.__key)}constructor(e,t){super(e,t)}createDOM(e){var t;const s=super.createDOM(e);if(F.Type.isStringFilled(e==null?void 0:(t=e.theme)==null?void 0:t.hashtag)){F.Dom.addClass(s,e.theme.hashtag)}return s}static importJSON(e){const t=Ah(e.text);t.setFormat(e.format);t.setDetail(e.detail);t.setMode(e.mode);t.setStyle(e.style);return t}exportJSON(){return{...super.exportJSON(),type:"hashtag"}}canInsertTextBefore(){return false}isTextEntity(){return true}}function Ah(e=""){return L.$applyNodeReplacement(new wh(e))}function $h(e){return e instanceof wh}var Kh=babelHelpers.classPrivateFieldLooseKey("registerListeners");class jh extends ie{constructor(e){super(e);Object.defineProperty(this,Kh,{value:kh});babelHelpers.classPrivateFieldLooseBase(this,Kh)[Kh]()}static getName(){return"Hashtag"}static getNodes(e){return[wh]}importBBCode(){return null}exportBBCode(){return{hashtag:(e,t)=>{const s=this.getEditor().getBBCodeScheme();return{node:s.createText(e.getTextContent())}}}}validateScheme(){return{bbcodeMap:{hashtag:"#text"}}}}function kh(){const e=e=>Ah(e.getTextContent());const t=e=>{const t=/(?<=\s+|^)#([^\s,.<>[\]]+)/is.exec(e);if(t===null){return null}const s=t[0].length;const i=t.index;const r=i+s;return{end:r,start:i}};this.cleanUpRegister(...m.registerLexicalTextEntity(this.getLexicalEditor(),t,wh,e))}var Uh=Object.freeze({HashtagNode:wh,$createHashtagNode:Ah,$isHashtagNode:$h,HashtagPlugin:jh});function Wh(e){if(!F.Type.isStringFilled(e)){return[]}const t=[];const s=e.split(/(\r?\n|\t)/);const i=s.length;for(let e=0;e<i;e++){const i=s[e];if(i==="\n"||i==="\r\n"){t.push(L.$createLineBreakNode())}else if(i==="\t"){t.push(L.$createTabNode())}else{t.push(L.$createTextNode(i))}}return t}let Yh=e=>e,zh;const Xh=L.createCommand("INSERT_COPILOT_DIALOG_COMMAND");const Gh={INIT:"init",LOADING:"loading",LOADED:"loaded"};var Vh=babelHelpers.classPrivateFieldLooseKey("copilot");var Jh=babelHelpers.classPrivateFieldLooseKey("copilotStatus");var qh=babelHelpers.classPrivateFieldLooseKey("copilotOptions");var Qh=babelHelpers.classPrivateFieldLooseKey("targetParagraph");var Zh=babelHelpers.classPrivateFieldLooseKey("lastSelection");var eb=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var tb=babelHelpers.classPrivateFieldLooseKey("triggerBySpace");var sb=babelHelpers.classPrivateFieldLooseKey("registerListeners");var ib=babelHelpers.classPrivateFieldLooseKey("registerParagraphNodeTransform");var rb=babelHelpers.classPrivateFieldLooseKey("registerComponents");var ab=babelHelpers.classPrivateFieldLooseKey("show");var ob=babelHelpers.classPrivateFieldLooseKey("hide");var lb=babelHelpers.classPrivateFieldLooseKey("createCopilot");var nb=babelHelpers.classPrivateFieldLooseKey("resetLoader");var db=babelHelpers.classPrivateFieldLooseKey("adjustDialogPosition");var cb=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var hb=babelHelpers.classPrivateFieldLooseKey("restoreSelection");var bb=babelHelpers.classPrivateFieldLooseKey("handleCopilotSave");var ub=babelHelpers.classPrivateFieldLooseKey("handleCopilotAddBelow");var pb=babelHelpers.classPrivateFieldLooseKey("handleCopilotHide");class gb extends ie{constructor(e){super(e);Object.defineProperty(this,pb,{value:Eb});Object.defineProperty(this,ub,{value:Tb});Object.defineProperty(this,bb,{value:Ob});Object.defineProperty(this,hb,{value:Cb});Object.defineProperty(this,cb,{value:Bb});Object.defineProperty(this,db,{value:Hb});Object.defineProperty(this,nb,{value:Fb});Object.defineProperty(this,lb,{value:yb});Object.defineProperty(this,ob,{value:Lb});Object.defineProperty(this,ab,{value:mb});Object.defineProperty(this,rb,{value:Pb});Object.defineProperty(this,ib,{value:fb});Object.defineProperty(this,sb,{value:vb});Object.defineProperty(this,Vh,{writable:true,value:null});Object.defineProperty(this,Jh,{writable:true,value:Gh.INIT});Object.defineProperty(this,qh,{writable:true,value:null});Object.defineProperty(this,Qh,{writable:true,value:null});Object.defineProperty(this,Zh,{writable:true,value:null});Object.defineProperty(this,eb,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,cb)[cb].bind(this)});Object.defineProperty(this,tb,{writable:true,value:false});babelHelpers.classPrivateFieldLooseBase(this,qh)[qh]=e.getOption("copilot.copilotOptions");if(F.Type.isPlainObject(babelHelpers.classPrivateFieldLooseBase(this,qh)[qh])){babelHelpers.classPrivateFieldLooseBase(this,sb)[sb]();babelHelpers.classPrivateFieldLooseBase(this,rb)[rb]()}}static getName(){return"Copilot"}shouldTriggerBySpace(){return babelHelpers.classPrivateFieldLooseBase(this,tb)[tb]}isCopilotLoaded(){return babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh]===Gh.LOADED}isCopilotLoading(){return babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh]===Gh.LOADING}isCopilotShown(){return babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].isShown()}show({onShow:e,onError:t}={}){if(this.isCopilotLoaded()){babelHelpers.classPrivateFieldLooseBase(this,ab)[ab]({onShow:e})}else if(!this.isCopilotLoading()){babelHelpers.classPrivateFieldLooseBase(this,lb)[lb]().then((()=>{babelHelpers.classPrivateFieldLooseBase(this,ab)[ab]({onShow:e})})).catch((()=>{if(F.Type.isFunction(t)){t()}}))}}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh]!==null){babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].hide();babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh]=null}}}function vb(){babelHelpers.classPrivateFieldLooseBase(this,tb)[tb]=this.getEditor().getOption("copilot.triggerBySpace",false);this.cleanUpRegister(this.getEditor().registerCommand(Xh,(e=>{const t=F.Type.isPlainObject(e)?e:{};this.show(t);return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(H,(()=>{babelHelpers.classPrivateFieldLooseBase(this,ob)[ob]();return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>this.isCopilotShown()),L.COMMAND_PRIORITY_LOW),babelHelpers.classPrivateFieldLooseBase(this,tb)[tb]?babelHelpers.classPrivateFieldLooseBase(this,ib)[ib]():()=>{})}function fb(){return this.getEditor().registerNodeTransform(pt,(e=>{if(e.getChildrenSize()!==1||!L.$isRootNode(e.getParent())){return}if(!L.$isTextNode(e.getFirstChild())||e.getFirstChild().getTextContent()!==" "){babelHelpers.classPrivateFieldLooseBase(this,nb)[nb]();return}const t=L.$getSelection();if(!L.$isRangeSelection(t)||!t.isCollapsed()){return}const s=t.anchor.getNode();if(s!==e.getFirstChild()){return}if(!this.isCopilotLoaded()&&!this.isCopilotLoading()){babelHelpers.classPrivateFieldLooseBase(this,nb)[nb]();babelHelpers.classPrivateFieldLooseBase(this,Qh)[Qh]=this.getEditor().getElementByKey(e.getKey());if(babelHelpers.classPrivateFieldLooseBase(this,Qh)[Qh]){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Qh)[Qh],"ui-text-editor-loading-ellipsis")}}e.getFirstChild().remove();e.select();this.show({onShow:()=>babelHelpers.classPrivateFieldLooseBase(this,nb)[nb](),onError:()=>babelHelpers.classPrivateFieldLooseBase(this,nb)[nb]()})}))}function Pb(){this.getEditor().getComponentRegistry().register("copilot",(()=>{const e=new ge;const t="--copilot-ai";const s="--refresh-5 ui-text-editor-copilot-loading";const i=F.Tag.render(zh||(zh=Yh` <span class="ui-icon-set ${0}" style="--ui-icon-set__icon-color: #8e52ec"></span> `),t);e.setContent(i);e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_COPILOT"));e.subscribe("onClick",(()=>{this.getEditor().focus();if(this.isCopilotLoading()){return}const e=()=>{if(!F.Dom.hasClass(i,t)){F.Dom.removeClass(i,s);F.Dom.addClass(i,t)}};this.getEditor().dispatchCommand(Xh,{onShow:e,onError:e});if(!this.isCopilotLoaded()){setTimeout((()=>{if(!this.isCopilotLoaded()){F.Dom.removeClass(i,t);F.Dom.addClass(i,s)}}),500)}}));return e}))}function mb({onShow:e}={}){this.getEditor().update((()=>{const t=L.$getSelection();if(!L.$isRangeSelection(t)||!this.getEditor().isEditable()){return}this.getEditor().dispatchCommand(H);const s=t.getTextContent();const i=F.Dom.getPosition(this.getEditor().getScrollerContainer());const r=Math.min(i.width,600);babelHelpers.classPrivateFieldLooseBase(this,Zh)[Zh]=t.clone();const a=s.trim();if(a.length>0){babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].setSelectedText(a)}else{const e=L.$getRoot().getTextContent().trim();if(e.length>0){babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].setContext(e)}}babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].show({width:r});babelHelpers.classPrivateFieldLooseBase(this,db)[db]();F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,eb)[eb]);if(!t.isCollapsed()){this.getEditor().highlightSelection()}if(F.Type.isFunction(e)){e()}}))}function Lb(){if(this.isCopilotLoaded()&&babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].isShown()){babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].hide()}}function yb(){if(this.isDestroyed()){return Promise.reject(new Error("Copilot plugin was destroyed."))}babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh]=Gh.LOADING;return new Promise(((e,t)=>{F.Runtime.loadExtension("ai.copilot").then((({Copilot:s,CopilotEvents:i})=>{if(this.isDestroyed()){t(new Error("Copilot plugin was destroyed."));return}babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh]=new s({showResultInCopilot:true,...babelHelpers.classPrivateFieldLooseBase(this,qh)[qh],autoHide:true});babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].subscribe(i.FINISH_INIT,(()=>{if(this.isDestroyed()){t(new Error("Copilot plugin was destroyed."));return}babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh]=Gh.LOADED;e()}));babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].subscribe(i.TEXT_SAVE,babelHelpers.classPrivateFieldLooseBase(this,bb)[bb].bind(this));babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].subscribe(i.TEXT_PLACE_BELOW,babelHelpers.classPrivateFieldLooseBase(this,ub)[ub].bind(this));babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].subscribe(i.HIDE,babelHelpers.classPrivateFieldLooseBase(this,pb)[pb].bind(this));babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].init()})).catch((()=>{t()}))}))}function Fb(){if(babelHelpers.classPrivateFieldLooseBase(this,Qh)[Qh]){F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Qh)[Qh],"ui-text-editor-loading-ellipsis")}}function Hb(){this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,hb)[hb]();const e=Gr(this.getEditor(),L.$getSelection(),document.body);if(e===null){return}const{top:t,left:s,bottom:i}=e;const r=F.Dom.getPosition(this.getEditor().getScrollerContainer());const a=Math.min(r.width,600);let o=a/2;if(s-o<r.left){const e=r.left-(s-o);o-=e+16}else if(r.right<s+a-o){o+=s+a-o-r.right+16}if(i<r.top||t>r.bottom){babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].adjust({hide:true})}else{babelHelpers.classPrivateFieldLooseBase(this,Vh)[Vh].adjust({hide:false,position:{left:s-o,top:i}})}}))}function Bb(){babelHelpers.classPrivateFieldLooseBase(this,db)[db]()}function Cb(){const e=L.$getSelection();if(!L.$isRangeSelection(e)&&babelHelpers.classPrivateFieldLooseBase(this,Zh)[Zh]!==null){L.$setSelection(babelHelpers.classPrivateFieldLooseBase(this,Zh)[Zh]);babelHelpers.classPrivateFieldLooseBase(this,Zh)[Zh]=null;return true}return false}function Ob(e){const{result:t}=e.getData();this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,hb)[hb]();const e=L.$getSelection();if(L.$isRangeSelection(e)){e.insertRawText(t)}babelHelpers.classPrivateFieldLooseBase(this,ob)[ob]()}))}function Tb(e){const{result:t}=e.getData();this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,hb)[hb]();const e=L.$getSelection();if(L.$isRangeSelection(e)){const s=e.focus;const i=s.getNode();if(!e.isCollapsed()){i.selectEnd()}const r=i.getParent();if(L.$isParagraphNode(r)){const e=L.$createParagraphNode();e.append(...Wh(t));r.insertAfter(e)}else{e.insertLineBreak();e.insertRawText(t)}}babelHelpers.classPrivateFieldLooseBase(this,ob)[ob]()}))}function Eb(){F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,eb)[eb]);this.getEditor().resetHighlightSelection();this.getEditor().update((()=>{if(!babelHelpers.classPrivateFieldLooseBase(this,hb)[hb]()){this.getEditor().focus()}}))}var Nb=babelHelpers.classPrivateFieldLooseKey("registerComponents");class _b extends ie{constructor(e){super(e);Object.defineProperty(this,Nb,{value:Mb});const t=u.createEmptyHistoryState();this.cleanUpRegister(u.registerHistory(e.getLexicalEditor(),t,1e3));babelHelpers.classPrivateFieldLooseBase(this,Nb)[Nb]()}static getName(){return"History"}}function Mb(){let e=false;this.getEditor().getComponentRegistry().register("undo",(()=>{const t=new ge;t.setContent('<span class="ui-icon-set --undo"></span>');t.setDisabled(!e);t.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_UNDO",{"#keystroke#":F.Browser.isMac()?"\u2318Z":"Ctrl+Z"}));t.subscribe("onClick",(()=>{this.getEditor().dispatchCommand(L.UNDO_COMMAND)}));t.setDisableCallback((()=>!e||!this.getEditor().isEditable()));this.getEditor().registerCommand(L.CAN_UNDO_COMMAND,(s=>{e=s;t.setDisabled(!e);return false}),L.COMMAND_PRIORITY_CRITICAL);return t}));let t=false;this.getEditor().getComponentRegistry().register("redo",(()=>{const e=new ge;e.setContent('<span class="ui-icon-set --redo"></span>');e.setDisabled(!t);e.setTooltip(F.Loc.getMessage("TEXT_EDITOR_BTN_REDO",{"#keystroke#":F.Browser.isMac()?"\u2318\u21e7Z":"Ctrl+Y"}));e.subscribe("onClick",(()=>{this.getEditor().dispatchCommand(L.REDO_COMMAND)}));e.setDisableCallback((()=>!t||!this.getEditor().isEditable()));this.getEditor().registerCommand(L.CAN_REDO_COMMAND,(s=>{t=s;e.setDisabled(!t);return false}),L.COMMAND_PRIORITY_CRITICAL);return e}))}var Db=Object.freeze({HistoryPlugin:_b});let Sb=e=>e,Rb,Ib;const xb={DOWNWARD:1,UPWARD:-1,INDETERMINATE:0};const wb="application/x-ui-text-editor-drag-block";var Ab=babelHelpers.classPrivateFieldLooseKey("draggableBlockElement");var $b=babelHelpers.classPrivateFieldLooseKey("lastBlockElementIndex");var Kb=babelHelpers.classPrivateFieldLooseKey("lastTargetElement");var jb=babelHelpers.classPrivateFieldLooseKey("container");var kb=babelHelpers.classPrivateFieldLooseKey("dropLine");var Ub=babelHelpers.classPrivateFieldLooseKey("isDragging");var Wb=babelHelpers.classPrivateFieldLooseKey("bodyDragDropHandler");var Yb=babelHelpers.classPrivateFieldLooseKey("bodyDragOverHandler");var zb=babelHelpers.classPrivateFieldLooseKey("registerEvents");var Xb=babelHelpers.classPrivateFieldLooseKey("registerListeners");var Gb=babelHelpers.classPrivateFieldLooseKey("handleMouseMove");var Vb=babelHelpers.classPrivateFieldLooseKey("handleMouseLeave");var Jb=babelHelpers.classPrivateFieldLooseKey("findBlockElement");var qb=babelHelpers.classPrivateFieldLooseKey("getCurrentIndex");var Qb=babelHelpers.classPrivateFieldLooseKey("updatePosition");var Zb=babelHelpers.classPrivateFieldLooseKey("setDraggableBlockElement");var eu=babelHelpers.classPrivateFieldLooseKey("handleDragStart");var tu=babelHelpers.classPrivateFieldLooseKey("handleDragEnd");var su=babelHelpers.classPrivateFieldLooseKey("handleDragOver");var iu=babelHelpers.classPrivateFieldLooseKey("handleDragDrop");var ru=babelHelpers.classPrivateFieldLooseKey("showDropLine");var au=babelHelpers.classPrivateFieldLooseKey("hideDropLine");class ou extends ie{constructor(e){super(e);Object.defineProperty(this,au,{value:Lu});Object.defineProperty(this,ru,{value:mu});Object.defineProperty(this,iu,{value:Pu});Object.defineProperty(this,su,{value:fu});Object.defineProperty(this,tu,{value:vu});Object.defineProperty(this,eu,{value:gu});Object.defineProperty(this,Zb,{value:pu});Object.defineProperty(this,Qb,{value:uu});Object.defineProperty(this,qb,{value:bu});Object.defineProperty(this,Jb,{value:hu});Object.defineProperty(this,Vb,{value:cu});Object.defineProperty(this,Gb,{value:du});Object.defineProperty(this,Xb,{value:nu});Object.defineProperty(this,zb,{value:lu});Object.defineProperty(this,Ab,{writable:true,value:null});Object.defineProperty(this,$b,{writable:true,value:Infinity});Object.defineProperty(this,Kb,{writable:true,value:null});Object.defineProperty(this,jb,{writable:true,value:null});Object.defineProperty(this,kb,{writable:true,value:null});Object.defineProperty(this,Ub,{writable:true,value:false});Object.defineProperty(this,Wb,{writable:true,value:null});Object.defineProperty(this,Yb,{writable:true,value:null});this.cleanUpRegister(babelHelpers.classPrivateFieldLooseBase(this,zb)[zb](),babelHelpers.classPrivateFieldLooseBase(this,Xb)[Xb]());babelHelpers.classPrivateFieldLooseBase(this,Wb)[Wb]=e=>{this.getEditor().dispatchCommand(L.DROP_COMMAND,e)};babelHelpers.classPrivateFieldLooseBase(this,Yb)[Yb]=e=>{e.preventDefault()};F.Dom.append(this.getContainer(),this.getEditor().getScrollerContainer());F.Dom.append(this.getDropLine(),this.getEditor().getScrollerContainer())}static getName(){return"BlockToolbar"}getContainer(){if(babelHelpers.classPrivateFieldLooseBase(this,jb)[jb]===null){babelHelpers.classPrivateFieldLooseBase(this,jb)[jb]=F.Tag.render(Rb||(Rb=Sb` <div class="ui-text-editor-block-toolbar"> <div class="ui-text-editor-block-drag-icon" draggable="true" ondragstart="${0}" ondragend="${0}" > <div class="ui-icon-set --more-points" style="--ui-icon-set__icon-size: 24px; margin-left: -4px" ></div> </div> </div> `),babelHelpers.classPrivateFieldLooseBase(this,eu)[eu].bind(this),babelHelpers.classPrivateFieldLooseBase(this,tu)[tu].bind(this))}return babelHelpers.classPrivateFieldLooseBase(this,jb)[jb]}getDropLine(){if(babelHelpers.classPrivateFieldLooseBase(this,kb)[kb]===null){babelHelpers.classPrivateFieldLooseBase(this,kb)[kb]=F.Tag.render(Ib||(Ib=Sb` <div class="ui-text-editor-block-drop-line"></div> `))}return babelHelpers.classPrivateFieldLooseBase(this,kb)[kb]}destroy(){super.destroy();F.Dom.remove(this.getContainer());F.Dom.remove(this.getDropLine())}}function lu(){const e=this.getEditor().getScrollerContainer();const t=babelHelpers.classPrivateFieldLooseBase(this,Gb)[Gb].bind(this);const s=babelHelpers.classPrivateFieldLooseBase(this,Vb)[Vb].bind(this);F.Event.bind(e,"mousemove",t);F.Event.bind(e,"mouseleave",s);return()=>{F.Event.unbind(e,"mousemove",t);F.Event.unbind(e,"mouseleave",s)}}function nu(){return y.mergeRegister(this.getEditor().registerCommand(L.DRAGOVER_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,su)[su].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.DROP_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,iu)[iu].bind(this),L.COMMAND_PRIORITY_HIGH),this.getEditor().registerTextContentListener((()=>{babelHelpers.classPrivateFieldLooseBase(this,Zb)[Zb](null);babelHelpers.classPrivateFieldLooseBase(this,Qb)[Qb]()})))}function du(e){if(!this.getEditor().isEditable()){return}const t=e.target;if(!(t instanceof HTMLElement)){babelHelpers.classPrivateFieldLooseBase(this,Zb)[Zb](null);return}if(t.closest(".ui-text-editor-block-toolbar")!==null){return}const s=babelHelpers.classPrivateFieldLooseBase(this,Jb)[Jb](e);babelHelpers.classPrivateFieldLooseBase(this,Zb)[Zb](s)}function cu(){babelHelpers.classPrivateFieldLooseBase(this,Zb)[Zb](null)}function hu(e){const t=this.getEditor().getScrollerContainer();const s=t.getBoundingClientRect();let i=null;this.getEditor().getEditorState().read((()=>{const t=L.$getRoot();const r=t.getChildrenKeys();let a=babelHelpers.classPrivateFieldLooseBase(this,qb)[qb](r.length);let o=xb.INDETERMINATE;while(a>=0&&a<r.length){const t=r[a];const l=this.getEditor().getElementByKey(t);if(l===null){break}const n=l.getBoundingClientRect();const{marginLeft:d,marginRight:c,marginTop:h,marginBottom:b}=window.getComputedStyle(l);const u=new DOMRect(s.left+parseFloat(d),n.y-parseFloat(h),n.width+parseFloat(c),n.height+parseFloat(b));const{x:p,y:g}=e;const v=g<u.top;const f=g>u.bottom;const P=p<u.left;const m=p>u.right;const L=!v&&!f&&!P&&!m;if(L){i=l;babelHelpers.classPrivateFieldLooseBase(this,$b)[$b]=a;break}if(o===xb.INDETERMINATE){if(v){o=xb.UPWARD}else if(f){o=xb.DOWNWARD}else{o=Infinity}}a+=o}}));return i}function bu(e){if(e===0){return Infinity}if(babelHelpers.classPrivateFieldLooseBase(this,$b)[$b]>=0&&babelHelpers.classPrivateFieldLooseBase(this,$b)[$b]<e){return babelHelpers.classPrivateFieldLooseBase(this,$b)[$b]}return Math.floor(e/2)}function uu(){if(babelHelpers.classPrivateFieldLooseBase(this,Ab)[Ab]===null){F.Dom.style(this.getContainer(),{opacity:0,transform:"translateY(-10000px)"})}else{const e=F.Text.toNumber(F.Dom.style(babelHelpers.classPrivateFieldLooseBase(this,Ab)[Ab],"margin-top"));const t=babelHelpers.classPrivateFieldLooseBase(this,Ab)[Ab].offsetTop+e;F.Dom.style(this.getContainer(),{opacity:1,transform:`translateY(${t}px)`})}}function pu(e){const t=babelHelpers.classPrivateFieldLooseBase(this,Ab)[Ab]!==e;babelHelpers.classPrivateFieldLooseBase(this,Ab)[Ab]=e;if(t){babelHelpers.classPrivateFieldLooseBase(this,Qb)[Qb]()}}function gu(e){const t=e.dataTransfer;if(!t||babelHelpers.classPrivateFieldLooseBase(this,Ab)[Ab]===null){return}this.getEditor().dispatchCommand(H);t.setDragImage(babelHelpers.classPrivateFieldLooseBase(this,Ab)[Ab],0,0);let s="";this.getEditor().update((()=>{const e=L.$getNearestNodeFromDOMNode(babelHelpers.classPrivateFieldLooseBase(this,Ab)[Ab]);if(e){s=e.getKey()}}));t.setData(wb,s);babelHelpers.classPrivateFieldLooseBase(this,Ub)[Ub]=true;F.Event.bind(document.body,"drop",babelHelpers.classPrivateFieldLooseBase(this,Wb)[Wb]);F.Event.bind(document.body,"dragover",babelHelpers.classPrivateFieldLooseBase(this,Yb)[Yb])}function vu(e){babelHelpers.classPrivateFieldLooseBase(this,Ub)[Ub]=false;babelHelpers.classPrivateFieldLooseBase(this,au)[au]();F.Event.unbind(document.body,"drop",babelHelpers.classPrivateFieldLooseBase(this,Wb)[Wb]);F.Event.unbind(document.body,"dragover",babelHelpers.classPrivateFieldLooseBase(this,Yb)[Yb])}function fu(e){if(babelHelpers.classPrivateFieldLooseBase(this,Ub)[Ub]===false){return false}const t=e.dataTransfer.types.includes("Files");if(t||!(e.target instanceof HTMLElement)){return false}const s=babelHelpers.classPrivateFieldLooseBase(this,Jb)[Jb](e);if(s===null){return false}babelHelpers.classPrivateFieldLooseBase(this,Kb)[Kb]=s;babelHelpers.classPrivateFieldLooseBase(this,ru)[ru](s,e);e.preventDefault();return true}function Pu(e){var t;if(babelHelpers.classPrivateFieldLooseBase(this,Ub)[Ub]===false){return false}const s=e.dataTransfer.types.includes("Files");const i=((t=e.dataTransfer)==null?void 0:t.getData(wb))||"";if(s||!(e.target instanceof HTMLElement)||!F.Type.isStringFilled(i)){return false}const r=L.$getNodeByKey(i);if(!r||!(e.target instanceof HTMLElement)){return false}const a=babelHelpers.classPrivateFieldLooseBase(this,Jb)[Jb](e)||babelHelpers.classPrivateFieldLooseBase(this,Kb)[Kb];if(!a){return false}const o=L.$getNearestNodeFromDOMNode(a);if(!o){return false}F.Event.unbind(document.body,"drop",babelHelpers.classPrivateFieldLooseBase(this,Wb)[Wb]);F.Event.unbind(document.body,"dragover",babelHelpers.classPrivateFieldLooseBase(this,Yb)[Yb]);if(o===r){return true}const{top:l,height:n}=a.getBoundingClientRect();const d=e.clientY-l>n/2;if(d){o.insertAfter(r)}else{o.insertBefore(r)}babelHelpers.classPrivateFieldLooseBase(this,Zb)[Zb](null);return true}function mu(e,t){const{top:s,height:i}=e.getBoundingClientRect();const r=window.getComputedStyle(e);const a=F.Dom.getRelativePosition(e,e.offsetParent);let o=a.top;const l=t.clientY-s>i/2;if(l){o+=i+parseFloat(r.marginBottom)*1.5}else{o+=parseFloat(r.marginTop)/2}const n=2;const d=16;const c=o-n;F.Dom.style(this.getDropLine(),{opacity:.4,left:`${d}px`,right:`${d}px`,transform:`translateY(${c}px)`})}function Lu(){F.Dom.style(this.getDropLine(),{opacity:0,transform:"translate(-10000px, -10000px)"})}var yu=Object.freeze({BlockToolbarPlugin:ou});let Fu=e=>e,Hu;var Bu=babelHelpers.classPrivateFieldLooseKey("container");class Cu extends re{constructor(...e){super(...e);Object.defineProperty(this,Bu,{writable:true,value:null})}getContainer(){if(babelHelpers.classPrivateFieldLooseBase(this,Bu)[Bu]===null){babelHelpers.classPrivateFieldLooseBase(this,Bu)[Bu]=F.Tag.render(Hu||(Hu=Fu`<span class="ui-text-editor-toolbar-separator"></span>`))}return babelHelpers.classPrivateFieldLooseBase(this,Bu)[Bu]}render(){return this.getContainer()}}let Ou=e=>e,Tu,Eu,Nu;var _u=babelHelpers.classPrivateFieldLooseKey("textEditor");var Mu=babelHelpers.classPrivateFieldLooseKey("items");var Du=babelHelpers.classPrivateFieldLooseKey("rendered");var Su=babelHelpers.classPrivateFieldLooseKey("moreBtn");var Ru=babelHelpers.classPrivateFieldLooseKey("refs");var Iu=babelHelpers.classPrivateFieldLooseKey("resizeObserver");var xu=babelHelpers.classPrivateFieldLooseKey("timeoutId");var wu=babelHelpers.classPrivateFieldLooseKey("removeListeners");var Au=babelHelpers.classPrivateFieldLooseKey("registerListeners");var $u=babelHelpers.classPrivateFieldLooseKey("fillFromOptions");var Ku=babelHelpers.classPrivateFieldLooseKey("handleResize");var ju=babelHelpers.classPrivateFieldLooseKey("getSelectionBlockTypes");var ku=babelHelpers.classPrivateFieldLooseKey("getBlockType");class Uu{constructor(e,t){Object.defineProperty(this,ku,{value:Gu});Object.defineProperty(this,ju,{value:Xu});Object.defineProperty(this,Ku,{value:zu});Object.defineProperty(this,$u,{value:Yu});Object.defineProperty(this,Au,{value:Wu});Object.defineProperty(this,_u,{writable:true,value:null});Object.defineProperty(this,Mu,{writable:true,value:[]});Object.defineProperty(this,Du,{writable:true,value:false});Object.defineProperty(this,Su,{writable:true,value:null});Object.defineProperty(this,Ru,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,Iu,{writable:true,value:null});Object.defineProperty(this,xu,{writable:true,value:null});Object.defineProperty(this,wu,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,_u)[_u]=e;const s=F.Type.isArray(t)?t:[];babelHelpers.classPrivateFieldLooseBase(this,$u)[$u](s);if(babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].length>0){babelHelpers.classPrivateFieldLooseBase(this,wu)[wu]=babelHelpers.classPrivateFieldLooseBase(this,Au)[Au]();babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu]=new ResizeObserver(babelHelpers.classPrivateFieldLooseBase(this,Ku)[Ku].bind(this))}}renderTo(e){if(this.isRendered()){return}if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].forEach((e=>{F.Dom.append(e.render(),this.getItemsContainer())}));F.Dom.append(this.getContainer(),e);if(babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu]!==null){babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu].observe(this.getContainer())}babelHelpers.classPrivateFieldLooseBase(this,Du)[Du]=true}}isEmpty(){return babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].length===0}getContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ru)[Ru].remember("container",(()=>F.Tag.render(Tu||(Tu=Ou` <div class="ui-text-editor-toolbar-container"> ${0} ${0} </div> `),this.getItemsContainer(),this.getMoreBtnContainer())))}getItemsContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ru)[Ru].remember("items-container",(()=>F.Tag.render(Eu||(Eu=Ou` <div class="ui-text-editor-toolbar-items"></div> `))))}getMoreBtnContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ru)[Ru].remember("more-btn-container",(()=>F.Tag.render(Nu||(Nu=Ou` <div class="ui-text-editor-toolbar-more-btn"> ${0} </div> `),this.getMoreBtn().render())))}getMoreBtn(){if(babelHelpers.classPrivateFieldLooseBase(this,Su)[Su]===null){const e=()=>{F.Event.unbind(this.getItemsContainer(),"transitionend",e);F.Dom.style(this.getItemsContainer(),{height:null});F.Dom.removeClass(this.getItemsContainer(),"--animating")};babelHelpers.classPrivateFieldLooseBase(this,Su)[Su]=new ge;babelHelpers.classPrivateFieldLooseBase(this,Su)[Su].setContent('<span class="ui-text-editor-toolbar-more-btn-icon"></span>');babelHelpers.classPrivateFieldLooseBase(this,Su)[Su].subscribe("onClick",(()=>{F.Event.unbind(this.getItemsContainer(),"transitionend",e);if(F.Dom.hasClass(this.getContainer(),"--expanded")){F.Dom.style(this.getItemsContainer(),{height:`${this.getItemsContainer().scrollHeight}px`});requestAnimationFrame((()=>{F.Dom.removeClass(this.getContainer(),"--expanded");F.Dom.addClass(this.getItemsContainer(),"--animating");F.Dom.style(this.getItemsContainer(),{height:null})}))}else{F.Dom.addClass(this.getItemsContainer(),"--animating");F.Dom.style(this.getItemsContainer(),{height:`${this.getItemsContainer().scrollHeight}px`});F.Dom.addClass(this.getContainer(),"--expanded")}F.Event.bind(this.getItemsContainer(),"transitionend",e)}))}return babelHelpers.classPrivateFieldLooseBase(this,Su)[Su]}getItems(){return babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu]}isRendered(){return babelHelpers.classPrivateFieldLooseBase(this,Du)[Du]}destroy(){if(babelHelpers.classPrivateFieldLooseBase(this,wu)[wu]!==null){babelHelpers.classPrivateFieldLooseBase(this,wu)[wu]()}if(babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu]!==null){babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu].disconnect();babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu]=null}if(this.isRendered()){F.Dom.remove(this.getContainer())}if(babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]){clearTimeout(babelHelpers.classPrivateFieldLooseBase(this,xu)[xu])}babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu]=null;babelHelpers.classPrivateFieldLooseBase(this,Ru)[Ru]=null}update(){babelHelpers.classPrivateFieldLooseBase(this,_u)[_u].getEditorState().read((()=>{let e=L.$getSelection();if(!L.$isRangeSelection(e)){e=null}let t=null;if(e!==null){t=y.$findMatchingParent(e.anchor.getNode(),(e=>(e.__flags&E)!==0))}const s=e===null?new Set:babelHelpers.classPrivateFieldLooseBase(this,ju)[ju](e);const i=!babelHelpers.classPrivateFieldLooseBase(this,_u)[_u].isEditable();babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].forEach((r=>{if(!(r instanceof ge)){return}if(r.hasOwnDisableCallback()){r.setDisabled(r.invokeDisableCallback())}else if(i){r.disable()}else if(t!==null&&r.shouldDisableInsideUnformatted()){r.disable()}else{r.enable()}if(r.isDisabled()){r.setActive(false)}else if(r.hasFormat()){const t=r.getFormat();r.setActive(e===null?false:e.hasFormat(t))}else if(r.getBlockType()!==null){r.setActive(s.has(r.getBlockType()))}}))}))}reset(){babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].forEach((e=>{if(e instanceof ge){e.setActive(false)}}))}}function Wu(){return y.mergeRegister(babelHelpers.classPrivateFieldLooseBase(this,_u)[_u].registerCommand(L.SELECTION_CHANGE_COMMAND,(()=>{this.update();return false}),L.COMMAND_PRIORITY_CRITICAL),babelHelpers.classPrivateFieldLooseBase(this,_u)[_u].registerCommand(L.FOCUS_COMMAND,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]){clearTimeout(babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]);babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]=null}return false}),L.COMMAND_PRIORITY_CRITICAL),babelHelpers.classPrivateFieldLooseBase(this,_u)[_u].registerCommand(L.BLUR_COMMAND,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]){clearTimeout(babelHelpers.classPrivateFieldLooseBase(this,xu)[xu])}babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]=setTimeout((()=>{const e=document.activeElement;const t=babelHelpers.classPrivateFieldLooseBase(this,_u)[_u].getScrollerContainer();if(e===null||!t.contains(e)){this.reset()}}),400);return false}),L.COMMAND_PRIORITY_CRITICAL),babelHelpers.classPrivateFieldLooseBase(this,_u)[_u].registerUpdateListener((()=>{this.update()})),babelHelpers.classPrivateFieldLooseBase(this,_u)[_u].registerEditableListener((()=>{this.update()})))}function Yu(e){e.forEach((e=>{if(e==="|"){babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].push(new Cu)}else{const t=babelHelpers.classPrivateFieldLooseBase(this,_u)[_u].getComponentRegistry().create(e);if(t===null){console.warn(`TextEditor Toolbar: "${e}" component doesn't exist.`)}else{babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].push(t)}}}))}function zu(e){if(this.getContainer().offsetWidth===0||F.Dom.hasClass(this.getItemsContainer(),"--animating")){return}const t=babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].at(-1);if(!t||t.getContainer().offsetTop>=t.getContainer().offsetHeight){F.Dom.addClass(this.getContainer(),"--overflowed")}else{F.Dom.removeClass(this.getContainer(),["--overflowed","--expanded"])}}function Xu(e){const t=e.anchor.getNode();const s=new Set;let i=t;while(i!==L.$getRoot()&&i!==null){const e=babelHelpers.classPrivateFieldLooseBase(this,ku)[ku](i);s.add(e);i=i.getParent()}return s}function Gu(e){if(f.$isListNode(e)){const t=e;const s=y.$getNearestNodeOfType(t,f.ListNode);return s?s.getListType():t.getListType()}if(P.$isLinkNode(e)||P.$isAutoLinkNode(e)){return"link"}if(It(e)){return"code"}return e.getType()}let Vu=e=>e,Ju;var qu=babelHelpers.classPrivateFieldLooseKey("popup");var Qu=babelHelpers.classPrivateFieldLooseKey("toolbar");var Zu=babelHelpers.classPrivateFieldLooseKey("showDebounced");var ep=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var tp=babelHelpers.classPrivateFieldLooseKey("registerListeners");var sp=babelHelpers.classPrivateFieldLooseKey("show");var ip=babelHelpers.classPrivateFieldLooseKey("adjustDialogPosition");var rp=babelHelpers.classPrivateFieldLooseKey("initDialogPosition");var ap=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var op=babelHelpers.classPrivateFieldLooseKey("shouldShowDialog");class lp extends ie{constructor(e){super(e);Object.defineProperty(this,op,{value:up});Object.defineProperty(this,ap,{value:bp});Object.defineProperty(this,rp,{value:hp});Object.defineProperty(this,ip,{value:cp});Object.defineProperty(this,sp,{value:dp});Object.defineProperty(this,tp,{value:np});Object.defineProperty(this,qu,{writable:true,value:null});Object.defineProperty(this,Qu,{writable:true,value:null});Object.defineProperty(this,Zu,{writable:true,value:null});Object.defineProperty(this,ep,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,ap)[ap].bind(this)});babelHelpers.classPrivateFieldLooseBase(this,Zu)[Zu]=F.Runtime.debounce((()=>{this.getEditor().update((()=>{if(babelHelpers.classPrivateFieldLooseBase(this,op)[op]()){babelHelpers.classPrivateFieldLooseBase(this,sp)[sp]()}}))}),700)}static getName(){return"FloatingToolbar"}afterInit(){const e=this.getEditor().getOption("floatingToolbar",[]);babelHelpers.classPrivateFieldLooseBase(this,Qu)[Qu]=new Uu(this.getEditor(),e);if(!babelHelpers.classPrivateFieldLooseBase(this,Qu)[Qu].isEmpty()){this.cleanUpRegister(babelHelpers.classPrivateFieldLooseBase(this,tp)[tp]())}}update(){if(babelHelpers.classPrivateFieldLooseBase(this,op)[op]()){if(this.getPopup().isShown()){babelHelpers.classPrivateFieldLooseBase(this,sp)[sp]()}else{babelHelpers.classPrivateFieldLooseBase(this,Zu)[Zu]()}}else{this.getPopup().close()}}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,qu)[qu]===null){const e=F.Tag.render(Ju||(Ju=Vu`<div class="ui-text-editor-floating-toolbar"></div>`));babelHelpers.classPrivateFieldLooseBase(this,qu)[qu]=new p.Popup({closeByEsc:true,targetContainer:document.body,autoHide:true,content:e,autoHideHandler:e=>{let t=true;const s=window.getSelection();if(s.isCollapsed){return true}this.getEditor().update((()=>{const e=L.$getSelection();t=e===null||e.isCollapsed()}));return t},events:{onShow:()=>{if(babelHelpers.classPrivateFieldLooseBase(this,ip)[ip]()){F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,ep)[ep])}},onClose:()=>{F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,ep)[ep]);ta(this.getPopup())}}});babelHelpers.classPrivateFieldLooseBase(this,Qu)[Qu].renderTo(e)}return babelHelpers.classPrivateFieldLooseBase(this,qu)[qu]}hide(){if(babelHelpers.classPrivateFieldLooseBase(this,qu)[qu]===null){return}this.getPopup().close()}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,qu)[qu]!==null){babelHelpers.classPrivateFieldLooseBase(this,qu)[qu].destroy();babelHelpers.classPrivateFieldLooseBase(this,qu)[qu]=null}babelHelpers.classPrivateFieldLooseBase(this,Qu)[Qu].destroy();babelHelpers.classPrivateFieldLooseBase(this,Qu)[Qu]=null}}function np(){return y.mergeRegister(this.getEditor().registerCommand(L.SELECTION_CHANGE_COMMAND,(()=>{this.update();return false}),L.COMMAND_PRIORITY_CRITICAL),this.getEditor().registerUpdateListener((({editorState:e})=>{e.read((()=>{this.update()}))})),this.getEditor().registerCommand(H,(()=>{this.hide();return false}),L.COMMAND_PRIORITY_LOW))}function dp(){this.getPopup().show();ta(this.getPopup());babelHelpers.classPrivateFieldLooseBase(this,ip)[ip]()}function cp(){return ea(this.getPopup(),this.getEditor(),babelHelpers.classPrivateFieldLooseBase(this,rp)[rp])}function hp(e){const{isBackward:t,isMultiline:s}=e;return t||!s?"top":"bottom"}function bp(){this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,ip)[ip]()}))}function up(){if(this.getEditor().isComposing()||!this.getEditor().isEditable()){return false}const e=L.$getSelection();if(!L.$isRangeSelection(e)||e.isCollapsed()){return false}const t=window.getSelection();if(t===null||t.isCollapsed){return false}const s=this.getEditor().getScrollerContainer();if(!s.contains(t.anchorNode)){return false}const i=y.$findMatchingParent(e.anchor.getNode(),(e=>(e.__flags&E)!==0));if(i||e.getTextContent()===""){return false}const r=e.getTextContent().replaceAll("\n","");if(!e.isCollapsed()&&r===""){return false}const a=w(e);const o=a.getParent();if(P.$isLinkNode(o)||P.$isLinkNode(a)){return false}const l=this.getEditor().dispatchCommand(B);if(l){return false}return L.$isTextNode(a)}var pp=Object.freeze({FloatingToolbarPlugin:lp});const gp=L.createCommand("TOGGLE_TOOLBAR_COMMAND");const vp=L.createCommand("SHOW_TOOLBAR_COMMAND");const fp=L.createCommand("HIDE_TOOLBAR_COMMAND");var Pp=babelHelpers.classPrivateFieldLooseKey("toolbar");var mp=babelHelpers.classPrivateFieldLooseKey("registerCommands");class Lp extends ie{constructor(...e){super(...e);Object.defineProperty(this,mp,{value:yp});Object.defineProperty(this,Pp,{writable:true,value:null})}static getName(){return"Toolbar"}getToolbar(){return babelHelpers.classPrivateFieldLooseBase(this,Pp)[Pp]}isRendered(){return babelHelpers.classPrivateFieldLooseBase(this,Pp)[Pp]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Pp)[Pp].isRendered()}show(){if(this.isRendered()){F.Dom.removeClass(this.getEditor().getToolbarContainer(),"--hidden")}}hide(){if(this.isRendered()){F.Dom.addClass(this.getEditor().getToolbarContainer(),"--hidden")}}isShown(){return this.isRendered()&&!F.Dom.hasClass(this.getEditor().getToolbarContainer(),"--hidden")}toggle(){if(this.isShown()){this.hide()}else{this.show()}}afterInit(){babelHelpers.classPrivateFieldLooseBase(this,Pp)[Pp]=new Uu(this.getEditor(),this.getEditor().getOption("toolbar"));if(!babelHelpers.classPrivateFieldLooseBase(this,Pp)[Pp].isEmpty()){babelHelpers.classPrivateFieldLooseBase(this,mp)[mp]();babelHelpers.classPrivateFieldLooseBase(this,Pp)[Pp].renderTo(this.getEditor().getToolbarContainer());const e=this.getEditor().getOption("hideToolbar",false);if(e){this.hide()}}}destroy(){super.destroy();babelHelpers.classPrivateFieldLooseBase(this,Pp)[Pp].destroy()}}function yp(){this.cleanUpRegister(this.getEditor().registerCommand(gp,(()=>{this.toggle();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(vp,(()=>{this.show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(fp,(()=>{this.hide();return true}),L.COMMAND_PRIORITY_LOW))}var Fp=Object.freeze({TOGGLE_TOOLBAR_COMMAND:gp,SHOW_TOOLBAR_COMMAND:vp,HIDE_TOOLBAR_COMMAND:fp,ToolbarPlugin:Lp});let Hp=e=>e,Bp;var Cp=babelHelpers.classPrivateFieldLooseKey("placeholder");var Op=babelHelpers.classPrivateFieldLooseKey("placeholderNode");var Tp=babelHelpers.classPrivateFieldLooseKey("paragraphPlaceholder");var Ep=babelHelpers.classPrivateFieldLooseKey("registerPlaceholderListeners");var Np=babelHelpers.classPrivateFieldLooseKey("togglePlaceholder");var _p=babelHelpers.classPrivateFieldLooseKey("hasFocus");var Mp=babelHelpers.classPrivateFieldLooseKey("hidePlaceholder");var Dp=babelHelpers.classPrivateFieldLooseKey("registerParagraphListeners");class Sp extends ie{constructor(...e){super(...e);Object.defineProperty(this,Dp,{value:Ap});Object.defineProperty(this,Mp,{value:wp});Object.defineProperty(this,_p,{value:xp});Object.defineProperty(this,Np,{value:Ip});Object.defineProperty(this,Ep,{value:Rp});Object.defineProperty(this,Cp,{writable:true,value:null});Object.defineProperty(this,Op,{writable:true,value:null});Object.defineProperty(this,Tp,{writable:true,value:null})}afterInit(){const e=this.getEditor().getOption("placeholder");if(F.Type.isStringFilled(e)){babelHelpers.classPrivateFieldLooseBase(this,Cp)[Cp]=e;babelHelpers.classPrivateFieldLooseBase(this,Op)[Op]=F.Tag.render(Bp||(Bp=Hp` <div class="ui-text-editor-placeholder">${0}</div> `),F.Text.encode(babelHelpers.classPrivateFieldLooseBase(this,Cp)[Cp]));F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,Op)[Op],this.getEditor().getScrollerContainer());babelHelpers.classPrivateFieldLooseBase(this,Ep)[Ep]()}let t=this.getEditor().getOption("paragraphPlaceholder");if(F.Type.isStringFilled(t)){if(t==="auto"){const e=this.getEditor().getPlugin("Copilot");const s=e!==null&&e.shouldTriggerBySpace();const i=this.getEditor().getPlugin("Mention");const r=i!==null&&i.shouldTriggerByAtSign();if(s&&r){t=F.Loc.getMessage("TEXT_EDITOR_PLACEHOLDER_MENTION_COPILOT")}else if(s){t=F.Loc.getMessage("TEXT_EDITOR_PLACEHOLDER_COPILOT")}else if(r){t=F.Loc.getMessage("TEXT_EDITOR_PLACEHOLDER_MENTION")}}if(t!=="auto"){babelHelpers.classPrivateFieldLooseBase(this,Tp)[Tp]=t;babelHelpers.classPrivateFieldLooseBase(this,Dp)[Dp]()}}}static getName(){return"Placeholder"}}function Rp(){this.cleanUpRegister(this.getEditor().registerUpdateListener((()=>{this.getEditor().getEditorState().read((()=>{babelHelpers.classPrivateFieldLooseBase(this,Np)[Np]()}))})))}function Ip(){if(babelHelpers.classPrivateFieldLooseBase(this,Cp)[Cp]===null){return}let e=m.$canShowPlaceholder(this.getLexicalEditor().isComposing());if(e&&babelHelpers.classPrivateFieldLooseBase(this,Tp)[Tp]!==null&&babelHelpers.classPrivateFieldLooseBase(this,_p)[_p]()){e=false}if(e){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Op)[Op],"--shown")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Op)[Op],"--shown")}}function xp(){const e=document.activeElement;const t=this.getEditor().getRootElement();return t!==null&&e!==null&&t.contains(e)}function wp(){if(babelHelpers.classPrivateFieldLooseBase(this,Op)[Op]!==null){F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Op)[Op],"--shown")}}function Ap(){let e=null;const t=()=>{if(e){const t=this.getEditor().getElementByKey(e.getKey());if(t){delete t.dataset.placeholder}}};this.cleanUpRegister(this.getEditor().registerCommand(L.SELECTION_CHANGE_COMMAND,(()=>{if(!this.getEditor().isEditable()){return false}const s=L.$getSelection();let i=null;if(L.$isRangeSelection(s)&&s.isCollapsed()){const e=s.anchor.getNode();if(L.$isParagraphNode(e)&&L.$isRootNode(e.getParent())&&e.isEmpty()){const t=this.getEditor().getElementByKey(e.getKey());if(t&&babelHelpers.classPrivateFieldLooseBase(this,_p)[_p]()){t.dataset.placeholder=babelHelpers.classPrivateFieldLooseBase(this,Tp)[Tp];i=e;babelHelpers.classPrivateFieldLooseBase(this,Mp)[Mp]()}}}if(e&&e!==i){t()}e=i;return false}),L.COMMAND_PRIORITY_CRITICAL),this.getEditor().registerCommand(L.PASTE_COMMAND,(()=>{t();return false}),L.COMMAND_PRIORITY_CRITICAL),this.getEditor().registerCommand(L.BLUR_COMMAND,(()=>{t();babelHelpers.classPrivateFieldLooseBase(this,Np)[Np]();return false}),L.COMMAND_PRIORITY_CRITICAL))}let $p=e=>e,Kp,jp,kp,Up,Wp,Yp,zp,Xp,Gp,Vp;const Jp={COLLAPSED:"collapsed",COLLAPSING:"collapsing",EXPANDED:"expanded",EXPANDING:"expanding"};var qp=babelHelpers.classPrivateFieldLooseKey("lexicalEditor");var Qp=babelHelpers.classPrivateFieldLooseKey("componentRegistry");var Zp=babelHelpers.classPrivateFieldLooseKey("refs");var eg=babelHelpers.classPrivateFieldLooseKey("options");var tg=babelHelpers.classPrivateFieldLooseKey("plugins");var sg=babelHelpers.classPrivateFieldLooseKey("newLineMode");var ig=babelHelpers.classPrivateFieldLooseKey("bbcodeScheme");var rg=babelHelpers.classPrivateFieldLooseKey("schemeValidation");var ag=babelHelpers.classPrivateFieldLooseKey("bbcodeImportMap");var og=babelHelpers.classPrivateFieldLooseKey("bbcodeExportMap");var lg=babelHelpers.classPrivateFieldLooseKey("themeClasses");var ng=babelHelpers.classPrivateFieldLooseKey("decoratorNodes");var dg=babelHelpers.classPrivateFieldLooseKey("decoratorComponents");var cg=babelHelpers.classPrivateFieldLooseKey("removeListeners");var hg=babelHelpers.classPrivateFieldLooseKey("highlightContainer");var bg=babelHelpers.classPrivateFieldLooseKey("autoFocus");var ug=babelHelpers.classPrivateFieldLooseKey("minHeight");var pg=babelHelpers.classPrivateFieldLooseKey("maxHeight");var gg=babelHelpers.classPrivateFieldLooseKey("collapsingMode");var vg=babelHelpers.classPrivateFieldLooseKey("collapsingState");var fg=babelHelpers.classPrivateFieldLooseKey("collapsingTransitionEnd");var Pg=babelHelpers.classPrivateFieldLooseKey("paragraphHeight");var mg=babelHelpers.classPrivateFieldLooseKey("resizeObserver");var Lg=babelHelpers.classPrivateFieldLooseKey("destroying");var yg=babelHelpers.classPrivateFieldLooseKey("rendered");var Fg=babelHelpers.classPrivateFieldLooseKey("prevEmptyStatus");var Hg=babelHelpers.classPrivateFieldLooseKey("initEditorState");var Bg=babelHelpers.classPrivateFieldLooseKey("initDecorateNodes");var Cg=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Og=babelHelpers.classPrivateFieldLooseKey("createNamespace");var Tg=babelHelpers.classPrivateFieldLooseKey("initBBCodeImportMap");var Eg=babelHelpers.classPrivateFieldLooseKey("initBBCodeExportMap");var Ng=babelHelpers.classPrivateFieldLooseKey("initBBCodeScheme");var _g=babelHelpers.classPrivateFieldLooseKey("initCollapsingMode");var Mg=babelHelpers.classPrivateFieldLooseKey("collapse");var Dg=babelHelpers.classPrivateFieldLooseKey("handleCollapsingTransition");class Sg extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,Dg,{value:Ug});Object.defineProperty(this,Mg,{value:kg});Object.defineProperty(this,_g,{value:jg});Object.defineProperty(this,Ng,{value:Kg});Object.defineProperty(this,Eg,{value:$g});Object.defineProperty(this,Tg,{value:Ag});Object.defineProperty(this,Og,{value:wg});Object.defineProperty(this,Cg,{value:xg});Object.defineProperty(this,Bg,{value:Ig});Object.defineProperty(this,Hg,{value:Rg});Object.defineProperty(this,qp,{writable:true,value:null});Object.defineProperty(this,Qp,{writable:true,value:new Yn});Object.defineProperty(this,Zp,{writable:true,value:new F.Cache.MemoryCache});Object.defineProperty(this,eg,{writable:true,value:null});Object.defineProperty(this,tg,{writable:true,value:null});Object.defineProperty(this,sg,{writable:true,value:N.MIXED});Object.defineProperty(this,ig,{writable:true,value:null});Object.defineProperty(this,rg,{writable:true,value:null});Object.defineProperty(this,ag,{writable:true,value:void 0});Object.defineProperty(this,og,{writable:true,value:void 0});Object.defineProperty(this,lg,{writable:true,value:{}});Object.defineProperty(this,ng,{writable:true,value:new Set});Object.defineProperty(this,dg,{writable:true,value:new Map});Object.defineProperty(this,cg,{writable:true,value:null});Object.defineProperty(this,hg,{writable:true,value:F.Tag.render(Kp||(Kp=$p`<div class="ui-text-editor-selection-highlighting"></div>`))});Object.defineProperty(this,bg,{writable:true,value:false});Object.defineProperty(this,ug,{writable:true,value:null});Object.defineProperty(this,pg,{writable:true,value:null});Object.defineProperty(this,gg,{writable:true,value:false});Object.defineProperty(this,vg,{writable:true,value:Jp.EXPANDED});Object.defineProperty(this,fg,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,Dg)[Dg].bind(this)});Object.defineProperty(this,Pg,{writable:true,value:null});Object.defineProperty(this,mg,{writable:true,value:null});Object.defineProperty(this,Lg,{writable:true,value:false});Object.defineProperty(this,yg,{writable:true,value:false});Object.defineProperty(this,Fg,{writable:true,value:true});this.setEventNamespace("BX.UI.TextEditor.Editor");const t=this.constructor.getDefaultOptions();const s=F.Type.isPlainObject(e)?e:{};babelHelpers.classPrivateFieldLooseBase(this,eg)[eg]=new l.SettingsCollection({...t,...s});const i=[...this.constructor.getBuiltinPlugins()];const r=babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get("plugins",i);const a=babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get("extraPlugins",[]);const o=babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get("removePlugins",[]);const n=babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get("newLineMode");if([N.LINE_BREAK,N.PARAGRAPH].includes(n)){babelHelpers.classPrivateFieldLooseBase(this,sg)[sg]=n}babelHelpers.classPrivateFieldLooseBase(this,lg)[lg]=wn;babelHelpers.classPrivateFieldLooseBase(this,tg)[tg]=new kn(i,[...r,...a],o);const d=babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].getConstructors();const c=d.map((e=>e.getNodes(this)));babelHelpers.classPrivateFieldLooseBase(this,qp)[qp]=L.createEditor({namespace:F.Type.isStringFilled(s.namespace)?s.namespace:babelHelpers.classPrivateFieldLooseBase(this,Og)[Og](d),nodes:c.flat(),onError:e=>{console.error(e)},theme:babelHelpers.classPrivateFieldLooseBase(this,lg)[lg],editable:babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get("editable")!==false});this.setMinHeight(s.minHeight);this.setMaxHeight(s.maxHeight);this.setAutoFocus(s.autoFocus);this.setVisualOptions(s.visualOptions);babelHelpers.classPrivateFieldLooseBase(this,cg)[cg]=y.mergeRegister(babelHelpers.classPrivateFieldLooseBase(this,Cg)[Cg](),babelHelpers.classPrivateFieldLooseBase(this,Bg)[Bg](c.flat()));babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].init(this);babelHelpers.classPrivateFieldLooseBase(this,ag)[ag]=babelHelpers.classPrivateFieldLooseBase(this,Tg)[Tg]();babelHelpers.classPrivateFieldLooseBase(this,og)[og]=babelHelpers.classPrivateFieldLooseBase(this,Eg)[Eg]();babelHelpers.classPrivateFieldLooseBase(this,ig)[ig]=babelHelpers.classPrivateFieldLooseBase(this,Ng)[Ng]();babelHelpers.classPrivateFieldLooseBase(this,rg)[rg]=new Qn(this);this.subscribeFromOptions(s.events)}static getBuiltinPlugins(){return[td,Ht,rd,od,Ld,cd,gd,Od,qc,os,_e,ah,Eo,pc,Sc,Na,hn,hl,Ve,Dh,jh,gb,_b,ou,lp,Lp,Sp,Fr]}static getDefaultOptions(){return{}}getComponentRegistry(){return babelHelpers.classPrivateFieldLooseBase(this,Qp)[Qp]}getOptions(){return babelHelpers.classPrivateFieldLooseBase(this,eg)[eg]}getOption(e,t=null){return babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get(e,t)}getThemeClasses(){return babelHelpers.classPrivateFieldLooseBase(this,lg)[lg]}getThemeClass(e){const t=babelHelpers.classPrivateFieldLooseBase(this,lg)[lg][e];if(t!==undefined){return t}return""}getNewLineMode(){return babelHelpers.classPrivateFieldLooseBase(this,sg)[sg]}getBBCodeScheme(){return babelHelpers.classPrivateFieldLooseBase(this,ig)[ig]}getSchemeValidation(){return babelHelpers.classPrivateFieldLooseBase(this,rg)[rg]}setText(e,t){if(F.Type.isString(e)){const s={discrete:F.Type.isPlainObject(t)&&t.discrete===true};babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].update((()=>{const t=K(e,this);const s=L.$getRoot();s.clear();s.append(...t);L.$setSelection(null)}),s)}}clear(e){const t={discrete:F.Type.isPlainObject(e)&&e.discrete===true};babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].update((()=>{const e=L.$getRoot();const t=L.$createParagraphNode();e.clear();e.append(t);L.$setSelection(null)}),t)}clearHistory(){this.dispatchCommand(L.CLEAR_HISTORY_COMMAND)}getText(){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].getEditorState().read((()=>{const e=V(L.$getRoot(),this);return e.toString()}))}isEmpty(e=true){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].getEditorState().read((()=>xn(e)))}setAutoFocus(e){if(F.Type.isBoolean(e)){babelHelpers.classPrivateFieldLooseBase(this,bg)[bg]=e}}hasAutoFocus(){return babelHelpers.classPrivateFieldLooseBase(this,bg)[bg]}setMinHeight(e){if(F.Type.isNumber(e)&&e>0||e===null){const t=babelHelpers.classPrivateFieldLooseBase(this,ug)[ug]!==e;babelHelpers.classPrivateFieldLooseBase(this,ug)[ug]=e;if(t){F.Dom.style(this.getScrollerContainer(),"--ui-text-editor-min-height",e>0?`${e}px`:null)}}}getMinHeight(){return babelHelpers.classPrivateFieldLooseBase(this,ug)[ug]}setMaxHeight(e){if(F.Type.isNumber(e)&&e>0||e===null){const t=babelHelpers.classPrivateFieldLooseBase(this,pg)[pg]!==e;babelHelpers.classPrivateFieldLooseBase(this,pg)[pg]=e;if(t){F.Dom.style(this.getScrollerContainer(),"--ui-text-editor-max-height",e>0?`${e}px`:null)}}}getMaxHeight(){return babelHelpers.classPrivateFieldLooseBase(this,pg)[pg]}setVisualOptions(e){if(!F.Type.isPlainObject(e)){return}for(const[t,s]of Object.entries(e)){const e=F.Text.toKebabCase(t);F.Dom.style(this.getRootContainer(),`--ui-text-editor-${e}`,s)}}isCollapsingModeEnabled(){return babelHelpers.classPrivateFieldLooseBase(this,gg)[gg]}isCollapsed(){return babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]===Jp.COLLAPSED}collapse(e=true){babelHelpers.classPrivateFieldLooseBase(this,Mg)[Mg]("hide",e)}expand(e=true){babelHelpers.classPrivateFieldLooseBase(this,Mg)[Mg]("show",e)}toggle(e=true){babelHelpers.classPrivateFieldLooseBase(this,Mg)[Mg]("toggle",e)}getParagraphHeight(){if(babelHelpers.classPrivateFieldLooseBase(this,Pg)[Pg]!==null){return babelHelpers.classPrivateFieldLooseBase(this,Pg)[Pg]}const e=this.getThemeClasses().paragraph||"";const t=F.Tag.render(jp||(jp=$p`<p class="${0}"><br /></p>`),e);F.Dom.style(t,{position:"absolute",transform:"translateY(-1000px)"});F.Dom.append(t,this.getScrollerContainer());babelHelpers.classPrivateFieldLooseBase(this,Pg)[Pg]=t.offsetHeight+F.Text.toNumber(F.Dom.style(t,"margin-top"))+F.Text.toNumber(F.Dom.style(t,"margin-bottom"));F.Dom.remove(t);return babelHelpers.classPrivateFieldLooseBase(this,Pg)[Pg]}getLexicalEditor(){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp]}setRootElement(e){if(F.Type.isElementNode(e)||e===null){babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].setRootElement(e)}}getBBCodeExportMap(){return babelHelpers.classPrivateFieldLooseBase(this,og)[og]}getBBCodeImportMap(){return babelHelpers.classPrivateFieldLooseBase(this,ag)[ag]}getEditorState(){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].getEditorState()}getPlugins(){return babelHelpers.classPrivateFieldLooseBase(this,tg)[tg]}getPlugin(e){return babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].get(e)}getElementByKey(e){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].getElementByKey(e)}setEditorState(e,t){babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].setEditorState(e,t)}setEditable(e){if(F.Type.isBoolean(e)){this.dispatchCommand(H);if(!e){this.blur()}babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].setEditable(e)}}isEditable(){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].isEditable()}registerUpdateListener(e){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].registerUpdateListener(e)}registerEditableListener(e){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].registerEditableListener(e)}registerCommand(e,t,s){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].registerCommand(e,t,s)}dispatchCommand(e,t){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].dispatchCommand(e,t)}registerMutationListener(e,t){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].registerMutationListener(e,t)}registerNodeTransform(e,t){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].registerNodeTransform(e,t)}registerTextContentListener(e){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].registerTextContentListener(e)}registerDecoratorListener(e){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].registerDecoratorListener(e)}registerRootListener(e){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].registerRootListener(e)}registerEventListener(e,t,s){const i=["mouseenter","mouseleave"].includes(t);const r=t=>{this.update((()=>{const r=L.$getNearestNodeFromDOMNode(t.target);if(r!==null){const a=i?r instanceof e?r:null:y.$findMatchingParent(r,(t=>t instanceof e));if(a!==null){s(t,a.getKey())}}}))};return this.registerRootListener(((e,s)=>{if(e){F.Event.bind(e,t,r,i)}if(s){F.Event.unbind(s,t,r,i)}}))}update(e,t){babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].update(e,t)}focus(e,t){if(!document.hasFocus()){window.focus()}babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].focus(F.Type.isFunction(e)?e:null,F.Type.isPlainObject(t)?t:{defaultSelection:"rootStart"})}hasFocus(){return this.getRootElement().contains(document.activeElement)}blur(){babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].blur()}isComposing(){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].isComposing()}getRootElement(){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].getRootElement()}hasNodes(e){return babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].hasNodes(e)}getRootContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Zp)[Zp].remember("root",(()=>{const e=[this.isEditable()?"--editable":"--read-only"];return F.Tag.render(kp||(kp=$p` <div class="ui-text-editor ${0}"> ${0} </div> `),e.join(" "),this.getInnerContainer())}))}getInnerContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Zp)[Zp].remember("inner",(()=>F.Tag.render(Up||(Up=$p` <div class="ui-text-editor-inner"> ${0} ${0} ${0} ${0} </div> `),this.getHeaderContainer(),this.getToolbarContainer(),this.getScrollerContainer(),this.getFooterContainer())))}getToolbarContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Zp)[Zp].remember("toolbar",(()=>F.Tag.render(Wp||(Wp=$p` <div class="ui-text-editor-toolbar" tabindex="-1"></div> `))))}getScrollerContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Zp)[Zp].remember("scroller",(()=>F.Tag.render(Yp||(Yp=$p` <div class="ui-text-editor-scroller"> ${0} </div> `),this.getEditableContainer())))}getEditableContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Zp)[Zp].remember("editable",(()=>F.Tag.render(zp||(zp=$p` <div class="ui-text-editor-editable" contenteditable="${0}" spellcheck="true" ></div> `),this.isEditable()?"true":"false")))}getFooterContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Zp)[Zp].remember("footer",(()=>F.Tag.render(Xp||(Xp=$p` <div class="ui-text-editor-slot ui-text-editor-footer" tabindex="-1"></div> `))))}getHeaderContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Zp)[Zp].remember("header",(()=>F.Tag.render(Gp||(Gp=$p` <div class="ui-text-editor-slot ui-text-editor-header" tabindex="-1"></div> `))))}renderTo(e,t=false){if(!F.Type.isElementNode(e)){return}if(!this.isRendered()){if(F.Type.isStringFilled(babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get("content"))){this.setText(babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get("content"))}else{babelHelpers.classPrivateFieldLooseBase(this,Hg)[Hg](babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get("editorState"))}}if(t){F.Dom.replace(e,this.getRootContainer())}else{F.Dom.append(this.getRootContainer(),e)}babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].setRootElement(this.getEditableContainer());if(this.hasAutoFocus()){this.focus(null,{defaultSelection:"rootStart"})}if(!babelHelpers.classPrivateFieldLooseBase(this,yg)[yg]){babelHelpers.classPrivateFieldLooseBase(this,mg)[mg]=new ResizeObserver((()=>{this.emit("onResize");this.dispatchCommand(H,{context:"resize"})}));babelHelpers.classPrivateFieldLooseBase(this,mg)[mg].observe(this.getScrollerContainer())}babelHelpers.classPrivateFieldLooseBase(this,yg)[yg]=true}isRendered(){return babelHelpers.classPrivateFieldLooseBase(this,yg)[yg]}highlightSelection(){this.getEditorState().read((()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)||e.isCollapsed()){return}const t=e.anchor;const s=e.focus;const i=d.createDOMRange(babelHelpers.classPrivateFieldLooseBase(this,qp)[qp],t.getNode(),t.offset,s.getNode(),s.offset);if(i!==null){const e=this.getScrollerContainer();const t=e.getBoundingClientRect();const s=d.createRectsFromDOMRange(babelHelpers.classPrivateFieldLooseBase(this,qp)[qp],i);const r=s.length;babelHelpers.classPrivateFieldLooseBase(this,hg)[hg].innerHTML="";for(let i=0;i<r;i++){const r=s[i];const a=F.Tag.render(Vp||(Vp=$p`<span class="ui-text-editor-selection-part"></span>`));const o=r.top-t.top+e.scrollTop;const l=r.left-t.left+e.scrollLeft;F.Dom.style(a,{top:`${o}px`,left:`${l}px`,height:`${r.height}px`,width:`${r.width}px`});F.Dom.append(a,babelHelpers.classPrivateFieldLooseBase(this,hg)[hg])}F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,hg)[hg],this.getScrollerContainer())}}))}resetHighlightSelection(){F.Dom.remove(babelHelpers.classPrivateFieldLooseBase(this,hg)[hg])}destroy(){if(babelHelpers.classPrivateFieldLooseBase(this,Lg)[Lg]){return}babelHelpers.classPrivateFieldLooseBase(this,Lg)[Lg]=true;this.emit("onDestroy");for(const[,e]of babelHelpers.classPrivateFieldLooseBase(this,tg)[tg]){e.destroy()}babelHelpers.classPrivateFieldLooseBase(this,cg)[cg]();if(this.isRendered()){babelHelpers.classPrivateFieldLooseBase(this,mg)[mg].disconnect();this.setRootElement(null);F.Dom.remove(this.getRootContainer())}babelHelpers.classPrivateFieldLooseBase(this,mg)[mg]=null;babelHelpers.classPrivateFieldLooseBase(this,tg)[tg]=null;babelHelpers.classPrivateFieldLooseBase(this,qp)[qp]=null;this.$refs=null;babelHelpers.classPrivateFieldLooseBase(this,rg)[rg]=null;babelHelpers.classPrivateFieldLooseBase(this,ag)[ag]=null;babelHelpers.classPrivateFieldLooseBase(this,og)[og]=null;babelHelpers.classPrivateFieldLooseBase(this,ng)[ng]=null;babelHelpers.classPrivateFieldLooseBase(this,dg)[dg]=null;Object.setPrototypeOf(this,null)}}function Rg(e,t){if(F.Type.isNil(e)){babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].update((()=>{const e=L.$getRoot();if(e.isEmpty()){const t=L.$createParagraphNode();e.append(t)}}),t)}else if(F.Type.isPlainObject(e)||F.Type.isStringFilled(e)){const t=babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].parseEditorState(e);babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].setEditorState(t)}else if(F.Type.isFunction(e)){babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].update((()=>{const t=L.$getRoot();if(t.isEmpty()){e(babelHelpers.classPrivateFieldLooseBase(this,qp)[qp])}}),t)}}function Ig(e){const t=[];e.forEach((e=>{if(e.useDecoratorComponent){const s=this.registerMutationListener(e,((e,t)=>{for(const[t,s]of e){if(s==="destroyed"){const e=babelHelpers.classPrivateFieldLooseBase(this,dg)[dg].get(t);if(e){e.destroy()}babelHelpers.classPrivateFieldLooseBase(this,dg)[dg].delete(t)}else{babelHelpers.classPrivateFieldLooseBase(this,ng)[ng].add(t)}}}));t.push(s)}}));const s=babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].registerDecoratorListener((e=>{babelHelpers.classPrivateFieldLooseBase(this,ng)[ng].forEach((t=>{const s=e[t];const{componentClass:i,options:r}=s;const a=babelHelpers.classPrivateFieldLooseBase(this,dg)[dg].get(t);const o=babelHelpers.classPrivateFieldLooseBase(this,qp)[qp].getElementByKey(t);if(o!=null&&o.innerHTML&&a){a.update(r)}else if(o){babelHelpers.classPrivateFieldLooseBase(this,dg)[dg].set(t,new i({textEditor:this,target:o,nodeKey:t,options:r}))}}));babelHelpers.classPrivateFieldLooseBase(this,ng)[ng].clear()}));t.push(s);return y.mergeRegister(...t)}function xg(){return y.mergeRegister(this.registerCommand(L.FOCUS_COMMAND,(()=>{if(this.isCollapsingModeEnabled()&&babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]===Jp.COLLAPSED&&this.isEmpty(false)){this.expand();return true}this.emit("onFocus");return false}),L.COMMAND_PRIORITY_CRITICAL),this.registerCommand(L.BLUR_COMMAND,(e=>{if(this.isCollapsingModeEnabled()&&(babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]===Jp.COLLAPSING||babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]===Jp.EXPANDING)){return true}this.emit("onBlur");return false}),L.COMMAND_PRIORITY_CRITICAL),this.registerUpdateListener((({dirtyElements:e,dirtyLeaves:t,prevEditorState:s,tags:i})=>{const r=this.isComposing();const a=t.size>0||e.size>0;if(r||!a){return}const o=s.isEmpty();if(babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].get("collapsingMode")===true){if(o){babelHelpers.classPrivateFieldLooseBase(this,_g)[_g]()}else if(this.isCollapsed()&&!this.isEmpty()){this.expand(false)}}if(!o&&i.has("history-merge")){return}this.emit("onChange",{isInitialChange:o,tags:i});const l=this.isEmpty();if(babelHelpers.classPrivateFieldLooseBase(this,Fg)[Fg]!==l){babelHelpers.classPrivateFieldLooseBase(this,Fg)[Fg]=l;this.emit("onEmptyContentToggle",{isEmpty:l,isInitialChange:o})}})),this.registerCommand(L.KEY_ENTER_COMMAND,(e=>{const{code:t,ctrlKey:s,metaKey:i}=e;if(F.Browser.isMac()&&i||s){this.emit("onMetaEnter");return true}if(t==="Escape"){this.emit("onEscape");return true}return false}),L.COMMAND_PRIORITY_LOW),this.registerEditableListener((e=>{this.getEditableContainer().contentEditable=e;if(e){F.Dom.removeClass(this.getRootContainer(),"--read-only");F.Dom.addClass(this.getRootContainer(),"--editable")}else{F.Dom.removeClass(this.getRootContainer(),"--editable");F.Dom.addClass(this.getRootContainer(),"--read-only")}this.emit("onEditable",{isEditable:e})})))}function wg(e){const t=In(e.map((e=>e.getName())).sort().join("-"));return String(t)}function Ag(){const e=new Map;for(const[,t]of babelHelpers.classPrivateFieldLooseBase(this,tg)[tg]){const s=t.importBBCode();if(s!==null){Object.keys(s).forEach((t=>{let i=e.get(t);if(i===undefined){i=[];e.set(t,i)}i.push(s[t])}))}}return e}function $g(){const e=new Map;for(const[,t]of babelHelpers.classPrivateFieldLooseBase(this,tg)[tg]){const s=t.exportBBCode();if(s!==null){Object.keys(s).forEach((t=>{if(F.Type.isFunction(s[t])){e.set(t,s[t])}}))}}return e}function Kg(){const e=this.getPlugin("File");const t=e!=null&&e.isEnabled()?e.getMode():"none";return new n.DefaultBBCodeScheme({fileTag:t})}function jg(){babelHelpers.classPrivateFieldLooseBase(this,gg)[gg]=true;if(this.isEmpty()){babelHelpers.classPrivateFieldLooseBase(this,Mg)[Mg]("hide",false,true)}else{this.expand(false)}}function kg(e="hide",t=true,s=false){if(!this.isCollapsingModeEnabled()){return}const i=babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]===Jp.COLLAPSED||babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]===Jp.COLLAPSING;const r=babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]===Jp.EXPANDED||babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]===Jp.EXPANDING;if(e==="hide"&&i||e==="show"&&r){return}if(t===false){if(i){babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]=Jp.EXPANDED;F.Dom.removeClass(this.getRootContainer(),"--collapsed");this.emit("onCollapsingToggle",{isOpen:true});this.focus()}else{babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]=Jp.COLLAPSED;F.Dom.addClass(this.getRootContainer(),"--collapsed");this.emit("onCollapsingToggle",{isOpen:false});this.clear();this.clearHistory();if(!s){this.blur()}}return}F.Event.unbind(this.getRootContainer(),"transitionend",babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]);if(i){babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]=Jp.EXPANDING;this.blur();const e=this.getRootContainer().offsetHeight;F.Dom.removeClass(this.getRootContainer(),["--collapsed","--collapsing"]);F.Dom.style(this.getRootContainer(),{height:`${e}px`,overflow:"hidden"});F.Dom.style(this.getInnerContainer(),{opacity:0});requestAnimationFrame((()=>{F.Dom.addClass(this.getRootContainer(),"--expanding");F.Dom.style(this.getRootContainer(),{height:`${this.getRootContainer().scrollHeight}px`});F.Dom.style(this.getInnerContainer(),{opacity:1});this.emit("onCollapsingToggle",{isOpen:true})}))}else{babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]=Jp.COLLAPSING;const e=this.getRootContainer().offsetHeight;F.Dom.removeClass(this.getRootContainer(),["--expanding"]);F.Dom.style(this.getRootContainer(),{height:`${e}px`,overflow:"hidden"});F.Dom.style(this.getInnerContainer(),{opacity:1});this.blur();const t=this.getParagraphHeight();requestAnimationFrame((()=>{F.Dom.addClass(this.getRootContainer(),"--collapsing");F.Dom.style(this.getRootContainer(),{height:`${t}px`});F.Dom.style(this.getInnerContainer(),{opacity:0});this.emit("onCollapsingToggle",{isOpen:false})}))}F.Event.bind(this.getRootContainer(),"transitionend",babelHelpers.classPrivateFieldLooseBase(this,fg)[fg])}function Ug(){F.Event.unbind(this.getRootContainer(),"transitionend",babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]);F.Dom.style(this.getRootContainer(),{height:null,overflow:null});F.Dom.style(this.getInnerContainer(),{opacity:null});F.Dom.removeClass(this.getRootContainer(),["--expanding","--collapsing"]);if(babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]===Jp.COLLAPSING){F.Dom.addClass(this.getRootContainer(),"--collapsed");babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]=Jp.COLLAPSED;this.clear();this.clearHistory();this.blur()}else{this.focus();babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]=Jp.EXPANDED}}const Wg={name:"TextEditorComponent",props:{editorOptions:{type:Object},editorInstance:{type:Sg,default:null},events:{type:Object,default:{}},editable:{type:Boolean,default:null}},setup(){return{editorClass:Sg}},provide(){return{editor:this.editor}},beforeCreate(){if(this.editorInstance===null){this.hasOwnEditor=true;const e=this.editorClass;this.editor=new e(this.editorOptions)}else{this.hasOwnEditor=false;this.editor=this.editorInstance}if(F.Type.isPlainObject(this.events)){for(const[e,t]of Object.entries(this.events)){this.editor.subscribe(e,t)}}},computed:{headerContainer(){return this.editor.getHeaderContainer()},footerContainer(){return this.editor.getFooterContainer()}},watch:{editable(e){this.editor.setEditable(e)}},mounted(){this.editor.renderTo(this.$refs.container,true)},unmounted(){if(this.hasOwnEditor){this.editor.destroy();this.editor=null}},template:`\n\t\t<div ref="container"></div>\n\t\t<Teleport :to="headerContainer">\n\t\t\t<slot name="header"></slot>\n\t\t</Teleport>\n\t\t<Teleport :to="footerContainer">\n\t\t\t<slot name="footer"></slot>\n\t\t</Teleport>\n\t`};class Yg extends Sg{static getDefaultOptions(){return{plugins:["RichText","Paragraph","Clipboard","Bold","Underline","Italic","Strikethrough","TabIndent","List","Mention","Link","AutoLink","Image","Copilot","History","BlockToolbar","FloatingToolbar","Toolbar","Placeholder","File"],toolbar:["bold","italic","underline","strikethrough","|","numbered-list","bulleted-list","|","link","copilot"],newLineMode:N.MIXED}}}const zg={name:"BasicEditorComponent",extends:Wg,setup(){return{editorClass:Yg}}};const Xg={Paragraph:Mt,AutoLink:Vc,BlockToolbar:yu,Bold:nd,Code:Fs,FloatingToolbar:pp,History:Db,Image:Ia,Italic:bd,Link:Ec,List:ch,Mention:qo,Quote:Se,Strikethrough:Pd,TabIndent:eh,Toolbar:Fp,Underline:Fd,Video:fn,Spoiler:ut,Smiley:gl,Table:xh,Hashtag:Uh,File:Br};const Gg={...T};const Vg={..._};const Jg={generateContent:Dn};e.TextEditor=Sg;e.BasicEditor=Yg;e.TextEditorComponent=Wg;e.BasicEditorComponent=zg;e.BasePlugin=ie;e.Button=ge;e.Plugins=Xg;e.Commands=Gg;e.Constants=Vg;e.Debug=Jg})(this.BX.UI.TextEditor=this.BX.UI.TextEditor||{},BX.UI.CodeParser,BX.UI.BBCode,BX.UI.TextEditor,BX.UI.Lexical.Clipboard,BX.UI.Smiley,BX.UI.VideoService,BX.Collections,BX.UI.BBCode,BX.UI.Lexical.Selection,BX.UI.Lexical.RichText,BX.UI.Lexical.Table,BX.Event,BX.UI.Lexical.History,BX.Main,BX.Cache,BX,BX.UI.Lexical.List,BX.UI.Lexical.Link,BX.UI.Lexical.Text,BX.UI.Lexical.Core,BX.UI.Lexical.Utils,BX); //# sourceMappingURL=text-editor.bundle.map.js