| Current Path : /var/www/homesaver/www/bitrix/modules/ui/install/js/ui/text-editor/dist/ |
| Current File : /var/www/homesaver/www/bitrix/modules/ui/install/js/ui/text-editor/dist/text-editor.bundle.min.js |
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"];const w={b:"bold",strong:"bold",i:"italic",em:"italic",s:"strikethrough",del:"strikethrough",u:"underline",sub:"subscript",sup:"superscript"};function A(e){const t=w[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 $(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=K(e,t);if(s!==null){n=[...n,...s]}}return i?k(n):n}function K(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=W(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(...K(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 j(e){if(L.$isElementNode(e)&&e.isInline()===false){return false}return!(L.$isDecoratorNode(e)&&e.isInline()===false)}function k(e){const t=[];let s=null;let i=0;for(const r of e){if(L.$isLineBreakNode(r)){i++;continue}if(j(r)){if(s===null||i>=2){t.push(...U(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(...U(i-2))}t.push(r);s=null}i=0}if(t.length===0){return[L.$createParagraphNode()]}return t}function U(e=1){const t=[];for(let s=0;s<e;s++){t.push(L.$createParagraphNode())}return t}function W(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 Y}return null}return i.conversion}function Y(e){let t=e.getContent();t=t.replaceAll(/\r?\n|\t/gm," ").replace("\r","");if(e.getParent().getName()!=="code"){t=t.replaceAll(/\s+/g," ")}if(t===""){return{node:null}}return{node:L.$createTextNode(t)}}function z(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 X(e){const t=[...e];while(t.length>0&&z(t[0])){t.splice(0,1)}while(t.length>0&&z(t[t.length-1])){t.splice(-1,1)}return t}function G(e,t){const s=t.getBBCodeScheme();const i=s.createRoot();const r=X(e.getChildren());for(const e of r){V(e,i,t)}return i}function V(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){V(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 J=["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;J.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 Q(e,t,s){const i=s.getBBCodeScheme();const r=i.createElement({name:t});r.appendChild(e);return r}function Z(e){const t=[...e];const s=t[0];const i=t[t.length-1];if(L.$isLineBreakNode(s)||L.$isParagraphNode(s)&&s.isEmpty()){t.splice(0,1)}if(L.$isLineBreakNode(i)||L.$isParagraphNode(i)&&i.isEmpty()){t.splice(-1,1)}return t}function ee(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}var te=babelHelpers.classPrivateFieldLooseKey("textEditor");var se=babelHelpers.classPrivateFieldLooseKey("destroyed");var ie=babelHelpers.classPrivateFieldLooseKey("removeListeners");class re{constructor(e){Object.defineProperty(this,te,{writable:true,value:null});Object.defineProperty(this,se,{writable:true,value:false});Object.defineProperty(this,ie,{writable:true,value:()=>{}});babelHelpers.classPrivateFieldLooseBase(this,te)[te]=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,te)[te]}getLexicalEditor(){return babelHelpers.classPrivateFieldLooseBase(this,te)[te].getLexicalEditor()}cleanUpRegister(...e){babelHelpers.classPrivateFieldLooseBase(this,ie)[ie]=y.mergeRegister(babelHelpers.classPrivateFieldLooseBase(this,ie)[ie],...e)}isDestroyed(){return babelHelpers.classPrivateFieldLooseBase(this,se)[se]}destroy(){babelHelpers.classPrivateFieldLooseBase(this,se)[se]=true;babelHelpers.classPrivateFieldLooseBase(this,ie)[ie]();babelHelpers.classPrivateFieldLooseBase(this,ie)[ie]=null}}class ae 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 oe=e=>e,le;var ne=babelHelpers.classPrivateFieldLooseKey("format");var de=babelHelpers.classPrivateFieldLooseKey("blockType");var ce=babelHelpers.classPrivateFieldLooseKey("active");var he=babelHelpers.classPrivateFieldLooseKey("disabled");var be=babelHelpers.classPrivateFieldLooseKey("disableInsideUnformatted");var ue=babelHelpers.classPrivateFieldLooseKey("disableCallback");var pe=babelHelpers.classPrivateFieldLooseKey("container");var ge=babelHelpers.classPrivateFieldLooseKey("handleClick");class ve extends ae{constructor(...e){super(...e);Object.defineProperty(this,ge,{value:fe});Object.defineProperty(this,ne,{writable:true,value:null});Object.defineProperty(this,de,{writable:true,value:null});Object.defineProperty(this,ce,{writable:true,value:false});Object.defineProperty(this,he,{writable:true,value:false});Object.defineProperty(this,be,{writable:true,value:false});Object.defineProperty(this,ue,{writable:true,value:null});Object.defineProperty(this,pe,{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,ne)[ne]=e}getFormat(){return babelHelpers.classPrivateFieldLooseBase(this,ne)[ne]}hasFormat(){return babelHelpers.classPrivateFieldLooseBase(this,ne)[ne]}setBlockType(e){babelHelpers.classPrivateFieldLooseBase(this,de)[de]=e}getBlockType(){return babelHelpers.classPrivateFieldLooseBase(this,de)[de]}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,be)[be]=true}enableInsideUnformatted(){babelHelpers.classPrivateFieldLooseBase(this,be)[be]=false}shouldDisableInsideUnformatted(){return babelHelpers.classPrivateFieldLooseBase(this,be)[be]}setActive(e=true){if(e===babelHelpers.classPrivateFieldLooseBase(this,ce)[ce]){return}babelHelpers.classPrivateFieldLooseBase(this,ce)[ce]=e;if(e){F.Dom.addClass(this.getContainer(),"--active")}else{F.Dom.removeClass(this.getContainer(),"--active")}}isActive(){return babelHelpers.classPrivateFieldLooseBase(this,ce)[ce]}setDisabled(e=true){if(e===babelHelpers.classPrivateFieldLooseBase(this,he)[he]){return}babelHelpers.classPrivateFieldLooseBase(this,he)[he]=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,he)[he]}hasOwnDisableCallback(){return babelHelpers.classPrivateFieldLooseBase(this,ue)[ue]!==null}setDisableCallback(e){if(F.Type.isFunction(e)){babelHelpers.classPrivateFieldLooseBase(this,ue)[ue]=e}}invokeDisableCallback(){return babelHelpers.classPrivateFieldLooseBase(this,ue)[ue]()}getContainer(){if(babelHelpers.classPrivateFieldLooseBase(this,pe)[pe]===null){babelHelpers.classPrivateFieldLooseBase(this,pe)[pe]=F.Tag.render(le||(le=oe`
<button
type="button"
class="ui-text-editor-toolbar-button"
onclick="${0}"
>
</button>
`),babelHelpers.classPrivateFieldLooseBase(this,ge)[ge].bind(this))}return babelHelpers.classPrivateFieldLooseBase(this,pe)[pe]}render(){return this.getContainer()}}function fe(){this.emit("onClick")}function Pe(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 me extends L.ElementNode{static getType(){return"quote"}static clone(e){return new me(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:Le()}),priority:0})}}static importJSON(e){const t=Le();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){Fe(this);return true}canBeEmpty(){return false}isShadowRoot(){return true}}function Le(){return L.$applyNodeReplacement(new me)}function ye(e){return e instanceof me}function Fe(e){if(!ye(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 He(e,t){let s=e;while(s!==null&&s.getParent()!==null&&!t(s)){s=s.getParentOrThrow()}return t(s)?s:null}function Be(e){return(L.$isElementNode(e)||L.$isDecoratorNode(e))&&!e.isInline()&&!e.isParentRequired()}function Ce(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=He(e.anchor.getNode(),Be);if(l&&!o.includes(l)){o.unshift(l)}a.add(r.getKey());let n=true;for(const e of o){if(!Be(e)||a.has(e.getKey())){continue}const t=He(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 Oe=L.createCommand("INSERT_QUOTE_COMMAND");const Te=L.createCommand("FORMAT_QUOTE_COMMAND");const Ee=L.createCommand("REMOVE_QUOTE_COMMAND");var Ne=babelHelpers.classPrivateFieldLooseKey("registerCommands");var _e=babelHelpers.classPrivateFieldLooseKey("registerComponents");class Me extends re{constructor(e){super(e);Object.defineProperty(this,_e,{value:Se});Object.defineProperty(this,Ne,{value:De});babelHelpers.classPrivateFieldLooseBase(this,Ne)[Ne]();babelHelpers.classPrivateFieldLooseBase(this,_e)[_e]()}static getName(){return"Quote"}static getNodes(e){return[me]}importBBCode(){return{quote:()=>({conversion:e=>({node:Le(),after:e=>k(e)}),priority:0})}}exportBBCode(){return{quote:e=>{const t=this.getEditor().getBBCodeScheme();return{node:t.createElement({name:"quote"})}}}}validateScheme(){return{nodes:[{nodeClass:me,validate:e=>{let t=null;e.getChildren().forEach((e=>{if(j(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 De(){this.cleanUpRegister(this.getEditor().registerCommand(Oe,(e=>{const t=Le();if(F.Type.isPlainObject(e)&&F.Type.isStringFilled(e.content)){const s=$(e.content,this.getEditor(),false);t.append(...k(s));y.$insertNodeToNearestRoot(t)}else{t.append(L.$createParagraphNode());y.$insertNodeToNearestRoot(t)}t.selectStart();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(Te,(()=>{const e=L.$getSelection();if(L.$isRangeSelection(e)){const t=Le();Ce(e,(()=>t));if(t.isEmpty()){t.append(L.$createParagraphNode())}t.selectStart()}return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(Ee,(()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return false}let t=y.$findMatchingParent(e.anchor.getNode(),ye);if(!t){t=y.$findMatchingParent(e.focus.getNode(),ye)}Fe(t);return true}),L.COMMAND_PRIORITY_LOW))}function Se(){this.getEditor().getComponentRegistry().register("quote",(()=>{const e=new ve;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(Ee)}else if(this.getEditor().getNewLineMode()===N.LINE_BREAK){this.getEditor().dispatchCommand(Oe)}else{this.getEditor().dispatchCommand(Te)}}))}));return e}))}var Re=Object.freeze({QuoteNode:me,$createQuoteNode:Le,$isQuoteNode:ye,$removeQuote:Fe,INSERT_QUOTE_COMMAND:Oe,FORMAT_QUOTE_COMMAND:Te,REMOVE_QUOTE_COMMAND:Ee,QuotePlugin:Me});function Ie(e){const t=we();return{node:t}}class xe extends L.ElementNode{static getType(){return"spoiler-content"}static clone(e){return new xe(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:Ie,priority:2}}}}static importJSON(e){return we()}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 bt()}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 we(){return new xe}function Ae(e){return e instanceof xe}class $e extends L.TextNode{static getType(){return"spoiler-title-text"}static clone(e){return new $e(e.__text,e.__key)}createDOM(e){return super.createDOM(e)}static importJSON(e){return Ke(e.text)}exportJSON(){return{...super.exportJSON(),type:"spoiler-title-text"}}}function Ke(e=""){return L.$applyNodeReplacement(new $e(e))}function je(e){return e instanceof $e}const ke=L.createCommand("INSERT_SPOILER_COMMAND");const Ue=L.createCommand("REMOVE_SPOILER_COMMAND");var We=babelHelpers.classPrivateFieldLooseKey("registerComponents");var Ye=babelHelpers.classPrivateFieldLooseKey("registerCommands");var ze=babelHelpers.classPrivateFieldLooseKey("registerNodeTransforms");var Xe=babelHelpers.classPrivateFieldLooseKey("handleDeleteCharacter");var Ge=babelHelpers.classPrivateFieldLooseKey("handleEnter");var Ve=babelHelpers.classPrivateFieldLooseKey("handlePaste");class Je extends re{constructor(e){super(e);Object.defineProperty(this,Ve,{value:st});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});babelHelpers.classPrivateFieldLooseBase(this,ze)[ze]();babelHelpers.classPrivateFieldLooseBase(this,Ye)[Ye]();babelHelpers.classPrivateFieldLooseBase(this,We)[We]()}static getName(){return"Spoiler"}static getNodes(e){return[ct,ot,xe,$e]}importBBCode(){return{spoiler:()=>({conversion:e=>{const t=F.Type.isStringFilled(e.getValue())?rt(e.getValue()):F.Loc.getMessage("TEXT_EDITOR_SPOILER_TITLE");return{node:bt(false),after:e=>[lt().append(Ke(t)),we().append(...k(e))]}},priority:0})}}exportBBCode(){return{spoiler:e=>{const t=this.getEditor().getBBCodeScheme();const s=e.getChildren()[0];const i=rt(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:ct},{nodeClass:xe,validate:e=>{e.getChildren().forEach((e=>{if(j(e)){const t=L.$createParagraphNode();e.replace(t);t.append(e)}}));return false}}],bbcodeMap:{spoiler:"spoiler","spoiler-content":"spoiler"}}}}function qe(){this.getEditor().getComponentRegistry().register("spoiler",(()=>{const e=new ve;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(Ue)}else{this.getEditor().dispatchCommand(ke)}}))}));return e}))}function Qe(){this.cleanUpRegister(this.getEditor().registerCommand(L.DELETE_CHARACTER_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Xe)[Xe].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ENTER_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ge)[Ge].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=>nt(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,Ve)[Ve].bind(this),L.COMMAND_PRIORITY_NORMAL),this.getEditor().registerCommand(ke,(e=>{this.getEditor().update((()=>{const t=F.Type.isPlainObject(e)&&F.Type.isStringFilled(e.title)?e.title:undefined;const s=L.$getSelection();const i=it(s,t);i.getTitleNode().select()}));return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(Ue,(()=>{this.getEditor().update((()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return}let t=y.$findMatchingParent(e.anchor.getNode(),ut);if(!t){t=y.$findMatchingParent(e.focus.getNode(),ut)}dt(t)}));return true}),L.COMMAND_PRIORITY_LOW))}function Ze(){this.cleanUpRegister(this.getEditor().registerNodeTransform(ct,(e=>{const t=e.getChildren();if(t.length!==2||!nt(t[0])||!Ae(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(ot,(e=>{const t=e.getParent();if(!ut(t)){e.replace(L.$createParagraphNode().append(...e.getChildren()))}else if(e.getChildrenSize()===1&&!je(e.getFirstChild())||e.getChildrenSize()>1){L.$setSelection(null);const t=rt(e.getTextContent());e.clear();e.append(Ke(t));e.select()}})),this.getEditor().registerNodeTransform($e,(e=>{const t=e.getParent();if(!nt(t)){e.replace(L.$createParagraphNode().append(L.$createTextNode(e.getTextContent())))}})),this.getEditor().registerNodeTransform(xe,(e=>{const t=e.getParent();if(!ut(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 et(){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(!ut(i)||i.getOpen()){return false}i.setOpen(true);return true}function tt(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(nt(t)){const s=t.getParent();if(ut(s)){s.toggleOpen();L.$setSelection(e.clone());return true}}}}return false}function st(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=>nt(e)));if(s){r.$insertDataTransferForPlainText(e.clipboardData,t);return true}return false}function it(e,t){if(!L.$isRangeSelection(e)){return null}const s=e.anchor;const i=s.getNode();const r=ht(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=He(e.anchor.getNode(),Be);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(!Be(e)||a.has(e.getKey())){continue}const t=He(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 rt(e){return e.trim().replaceAll(/\r?\n|\t/gm,"").replace("\r","").replaceAll(/\s+/g," ")}function at(e){const t=lt();return{node:t}}class ot extends L.ElementNode{constructor(...e){super(...e);this.__language="hack";this.__flags=E}static getType(){return"spoiler-title"}static clone(e){return new ot(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:at,priority:1})}}static importJSON(e){return lt()}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(!ut(t)){return false}return dt(t)}insertNewAfter(e,t=true){const s=this.getParentOrThrow();if(!ut(s)){throw new Error("SpoilerTitleNode expects to be child of SpoilerNode")}if(s.getOpen()){const e=this.getNextSibling();if(!Ae(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 bt()}canIndent(){return false}insertAfter(e){const t=e.getTextContent();this.clear();this.append(Ke(rt(t)));return this}}function lt(){return new ot}function nt(e){return e instanceof ot}function dt(e){if(!ut(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 ct extends L.ElementNode{constructor(e,t){super(t);this.__open=e}static getType(){return"spoiler"}static clone(e){return new ct(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:ht(t)}},priority:1})}}static importJSON(e){return bt(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(nt(t)){const e=t;if(this.getTitleNode()===null){super.append(e)}else{this.getTitleNode().clear();this.getTitleNode().append(Ke(t.getTextContent()))}}else if(Ae(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 ht(e,t=F.Loc.getMessage("TEXT_EDITOR_SPOILER_TITLE")){return bt(e).append(lt().append(Ke(t)),we())}function bt(e){return new ct(e)}function ut(e){return e instanceof ct}var pt=Object.freeze({SpoilerNode:ct,$createSpoiler:ht,$createSpoilerNode:bt,$isSpoilerNode:ut,convertSummaryElement:at,SpoilerTitleNode:ot,$createSpoilerTitleNode:lt,$isSpoilerTitleNode:nt,$removeSpoiler:dt,convertSpoilerContentElement:Ie,SpoilerContentNode:xe,$createSpoilerContentNode:we,$isSpoilerContentNode:Ae,INSERT_SPOILER_COMMAND:ke,REMOVE_SPOILER_COMMAND:Ue,SpoilerPlugin:Je,insertSpoiler:it,trimSpoilerTitle:rt});class gt 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 gt(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:vt,priority:1}),h2:e=>({conversion:vt,priority:1}),h3:e=>({conversion:vt,priority:1}),h4:e=>({conversion:vt,priority:1}),h5:e=>({conversion:vt,priority:1}),h6:e=>({conversion:vt,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 vt(e){return{node:L.$createParagraphNode(),forChild:e=>{if(L.$isTextNode(e)){e.toggleFormat("bold")}return e}}}const ft=L.createCommand("FORMAT_PARAGRAPH_COMMAND");var Pt=babelHelpers.classPrivateFieldLooseKey("registerCommands");var mt=babelHelpers.classPrivateFieldLooseKey("registerListeners");var Lt=babelHelpers.classPrivateFieldLooseKey("isBlockNode");var yt=babelHelpers.classPrivateFieldLooseKey("handlePaste");var Ft=babelHelpers.classPrivateFieldLooseKey("handleEscapeUp");var Ht=babelHelpers.classPrivateFieldLooseKey("handleEscapeDown");class Bt extends re{constructor(e){super(e);Object.defineProperty(this,Ht,{value:_t});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});babelHelpers.classPrivateFieldLooseBase(this,Pt)[Pt]();babelHelpers.classPrivateFieldLooseBase(this,mt)[mt]()}static getName(){return"Paragraph"}static getNodes(e){return[gt,{replace:L.ParagraphNode,with:t=>new gt(e.getNewLineMode()),withClass:gt}]}importBBCode(){return{p:()=>({conversion:e=>Mt(e),priority:0}),left:()=>({conversion:e=>Mt(e),priority:0}),right:()=>({conversion:e=>Mt(e),priority:0}),center:()=>({conversion:e=>Mt(e),priority:0}),justify:()=>({conversion:e=>Mt(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:gt}],bbcodeMap:{root:"#root",tab:"#tab",text:"#text",paragraph:"p","custom-paragraph":"p",linebreak:"#linebreak"}}}}function Ct(){this.cleanUpRegister(this.getEditor().registerCommand(ft,(()=>{const e=L.$getSelection();if(L.$isRangeSelection(e)){d.$setBlocksType(e,(()=>L.$createParagraphNode()))}return true}),L.COMMAND_PRIORITY_EDITOR))}function Ot(){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,Ft)[Ft].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ARROW_LEFT_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ft)[Ft].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ARROW_DOWN_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ht)[Ht].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_ARROW_RIGHT_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ht)[Ht].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.PASTE_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,yt)[yt].bind(this),L.COMMAND_PRIORITY_LOW))}function Tt(e){return ye(e)||$t(e)||ut(e)}function Et(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=Pe(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 Nt(){const e=L.$getSelection();if(L.$isRangeSelection(e)&&e.isCollapsed()&&e.anchor.offset===0){const s=y.$findMatchingParent(e.anchor.getNode(),babelHelpers.classPrivateFieldLooseBase(this,Lt)[Lt]);if(babelHelpers.classPrivateFieldLooseBase(this,Lt)[Lt](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 _t(){const e=L.$getSelection();if(L.$isRangeSelection(e)&&e.isCollapsed()){const t=y.$findMatchingParent(e.anchor.getNode(),babelHelpers.classPrivateFieldLooseBase(this,Lt)[Lt]);if(babelHelpers.classPrivateFieldLooseBase(this,Lt)[Lt](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 Mt(e){return{node:L.$createParagraphNode(),after:e=>Z(e)}}var Dt=Object.freeze({FORMAT_PARAGRAPH_COMMAND:ft,ParagraphPlugin:Bt});class St 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 St(e.__text,e.__highlightType||undefined,e.__key)}getHighlightType(){const e=this.getLatest();return e.__highlightType}createDOM(e){const t=super.createDOM(e);const s=Rt(e.theme,this.__highlightType);y.addClassNamesToElement(t,s);return t}updateDOM(e,t,s){const i=super.updateDOM(e,t,s);const r=Rt(s.theme,e.__highlightType);const a=Rt(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=It(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 At()}}function Rt(e,t){return t&&e&&e.codeHighlight&&e.codeHighlight[t]}function It(e,t){return L.$applyNodeReplacement(new St(e,t))}function xt(e){return e instanceof St}class wt extends L.ElementNode{constructor(...e){super(...e);this.__language="lexical-hack";this.__flags=E}static getType(){return"code"}static clone(e){return new wt(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)||Vt(e,"BR"));return t?{conversion:Kt,priority:1}:null},div:e=>({conversion:jt,priority:1}),pre:e=>({conversion:Kt,priority:0}),table:e=>{const t=e;if(Gt(t)){return{conversion:kt,priority:3}}return null},td:e=>{const t=e;const s=t.closest("table");if(Xt(t)){return{conversion:Wt,priority:3}}if(s&&Gt(s)){return{conversion:Ut,priority:3}}return null},tr:e=>{const t=e;const s=t.closest("table");if(s&&Gt(s)){return{conversion:Ut,priority:3}}return null}}}static importJSON(e){const t=At();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=fs(l);const t=[];while(true){if(L.$isTabNode(e)){t.push(L.$createTabNode());e=e.getNextSibling()}else if(xt(e)){let s=0;const i=e.getTextContent();const r=e.getTextContentSize();while(s<r&&i[s]===" "){s++}if(s!==0){t.push(It(" ".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($t(l)){const{offset:t}=e.anchor;l.splice(t,0,[L.$createLineBreakNode()]);l.select(t+1,t+1)}return null}}function At(){return L.$applyNodeReplacement(new wt)}function $t(e){return e instanceof wt}function Kt(e){return{node:At()}}function jt(e){const t=e;const s=Yt(t);if(!s&&!zt(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?At():null}}function kt(){return{node:At()}}function Ut(){return{node:null}}function Wt(e){const t=e;return{after:e=>{if(t.parentNode&&t.parentNode.nextSibling){e.push(L.$createLineBreakNode())}return e},node:null}}function Yt(e){return e.style.fontFamily.match("monospace")!==null}function zt(e){let t=e.parentElement;while(t!==null){if(Yt(t)){return true}t=t.parentElement}return false}function Xt(e){return e.classList.contains("js-file-line")}function Gt(e){return e.classList.contains("js-file-line-container")}function Vt(e,t){let s=false;for(const i of e.childNodes){if(F.Type.isElementNode(i)&&i.tagName===t){return true}s=Vt(i,t)}return s}const Jt=L.createCommand("FORMAT_CODE_COMMAND");const qt=L.createCommand("INSERT_CODE_COMMAND");var Qt=babelHelpers.classPrivateFieldLooseKey("nodesCurrentlyHighlighting");var Zt=babelHelpers.classPrivateFieldLooseKey("codeParser");var es=babelHelpers.classPrivateFieldLooseKey("registerComponents");var ts=babelHelpers.classPrivateFieldLooseKey("registerListeners");var ss=babelHelpers.classPrivateFieldLooseKey("registerCommands");var is=babelHelpers.classPrivateFieldLooseKey("handleCodeNodeTransform");var rs=babelHelpers.classPrivateFieldLooseKey("handleTextNodeTransform");var as=babelHelpers.classPrivateFieldLooseKey("handleTab");var os=babelHelpers.classPrivateFieldLooseKey("handleMultilineIndent");class ls extends re{constructor(e){super(e);Object.defineProperty(this,os,{value:ps});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,Qt,{writable:true,value:new Set});Object.defineProperty(this,Zt,{writable:true,value:new t.CodeParser});babelHelpers.classPrivateFieldLooseBase(this,ss)[ss]();babelHelpers.classPrivateFieldLooseBase(this,es)[es]();babelHelpers.classPrivateFieldLooseBase(this,ts)[ts]()}static getName(){return"Code"}static getNodes(e){return[wt,St]}importBBCode(){return{code:()=>({conversion:e=>({node:At(),after:e=>{const t=Z(e);const s=t.map((e=>e.getTextContent())).join("");return[L.$createTextNode(s)]}}),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:wt}],bbcodeMap:{code:"code"}}}}function ns(){this.getEditor().getComponentRegistry().register("code",(()=>{const e=new ve;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(ft)}else{this.getEditor().dispatchCommand(Jt)}}))}));return e}))}function ds(){const e=babelHelpers.classPrivateFieldLooseBase(this,rs)[rs].bind(this);this.cleanUpRegister(this.getEditor().registerNodeTransform(wt,babelHelpers.classPrivateFieldLooseBase(this,is)[is].bind(this)),this.getEditor().registerNodeTransform(L.TextNode,e),this.getEditor().registerNodeTransform(St,e),this.getEditor().registerCommand(L.FORMAT_TEXT_COMMAND,(()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return false}const t=ee(e);return xt(t)||$t(t)}),L.COMMAND_PRIORITY_HIGH),this.getEditor().registerCommand(L.KEY_TAB_COMMAND,(e=>{const t=babelHelpers.classPrivateFieldLooseBase(this,as)[as](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(!gs(e)){return false}L.$insertNodes([L.$createTabNode()]);return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.INDENT_CONTENT_COMMAND,(e=>babelHelpers.classPrivateFieldLooseBase(this,os)[os](L.INDENT_CONTENT_COMMAND)),L.COMMAND_PRIORITY_NORMAL),this.getEditor().registerCommand(L.OUTDENT_CONTENT_COMMAND,(e=>babelHelpers.classPrivateFieldLooseBase(this,os)[os](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=>$t(e)));if(s){r.$insertDataTransferForPlainText(e.clipboardData,t);return true}return false}),L.COMMAND_PRIORITY_NORMAL))}function cs(){this.cleanUpRegister(this.getEditor().registerCommand(qt,(e=>{const t=At();if(F.Type.isPlainObject(e)&&F.Type.isStringFilled(e.content)){const s=ys(babelHelpers.classPrivateFieldLooseBase(this,Zt)[Zt].parse(e.content));t.append(...s);y.$insertNodeToNearestRoot(t)}else{y.$insertNodeToNearestRoot(t);t.selectEnd()}return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(Jt,(()=>{const e=L.$getSelection();if(L.$isRangeSelection(e)){if(e.isCollapsed()){d.$setBlocksType(e,(()=>At()))}else{const t=e.getTextContent();const s=At();e.insertNodes([s]);const i=L.$getSelection();if(L.$isRangeSelection(i)){i.insertRawText(t)}}}return true}),L.COMMAND_PRIORITY_EDITOR))}function hs(e){const t=e.getKey();if(babelHelpers.classPrivateFieldLooseBase(this,Qt)[Qt].has(t)){return}babelHelpers.classPrivateFieldLooseBase(this,Qt)[Qt].add(t);this.getEditor().update((()=>{Fs(t,(()=>{const s=L.$getNodeByKey(t);if(!$t(s)||!s.isAttached()){return false}const i=s.getTextContent();const r=ys(babelHelpers.classPrivateFieldLooseBase(this,Zt)[Zt].parse(i));const a=ms(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 bs(e){const t=e.getParent();if($t(t)){babelHelpers.classPrivateFieldLooseBase(this,is)[is](t)}else if(xt(e)){e.replace(L.$createTextNode(e.__text))}}function us(e){const t=L.$getSelection();if(!L.$isRangeSelection(t)||!gs(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=vs(t);if(r.length>1){return s}const a=t.getNodes();const o=a[0];if($t(o)){return s}const l=fs(o);const n=Ps(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 ps(e){const t=L.$getSelection();if(!L.$isRangeSelection(t)||!gs(t)){return false}const s=vs(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=fs(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($t(a)){if(e===L.INDENT_CONTENT_COMMAND){t.insertNodes([L.$createTabNode()])}return true}const o=fs(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 gs(e){if(!L.$isRangeSelection(e)){return false}const t=e.anchor.getNode();const s=e.focus.getNode();if(t.is(s)&&$t(t)){return true}const i=t.getParent();return $t(i)&&i.is(s.getParent())}function vs(e){const t=e.getNodes();const s=[[]];if(t.length===1&&$t(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 fs(e){let t=e;let s=e;while(xt(s)||L.$isTabNode(s)){t=s;s=s.getPreviousSibling()}return t}function Ps(e){let t=e;let s=e;while(xt(s)||L.$isTabNode(s)){t=s;s=s.getNextSibling()}return t}function ms(e,t){let s=0;while(s<e.length){if(!Ls(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(!Ls(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 Ls(e,t){return xt(e)&&xt(t)&&e.__text===t.__text&&e.__highlightType===t.__highlightType||L.$isTabNode(e)&&L.$isTabNode(t)||L.$isLineBreakNode(e)&&L.$isLineBreakNode(t)}function ys(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(It(i,e.type))}}}));return t}function Fs(e,t){const s=L.$getNodeByKey(e);if(!$t(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 Hs=Object.freeze({FORMAT_CODE_COMMAND:Jt,INSERT_CODE_COMMAND:qt,CodePlugin:ls,getFirstCodeNodeOfLine:fs,getLastCodeNodeOfLine:Ps,CodeNode:wt,$createCodeNode:At,$isCodeNode:$t,CodeTokenNode:St,$createCodeTokenNode:It,$isCodeTokenNode:xt});function Bs(e,t){return e.getEditorState().read((()=>{const e=L.$getNodeByKey(t);if(e===null){return false}return e.isSelected()}))}function Cs(e,t){let s=false;const i=new Set;const r=e=>{i.add(e)};const a=e.registerUpdateListener((()=>{s=Bs(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 Os=babelHelpers.classPrivateFieldLooseKey("textEditor");var Ts=babelHelpers.classPrivateFieldLooseKey("target");var Es=babelHelpers.classPrivateFieldLooseKey("nodeKey");var Ns=babelHelpers.classPrivateFieldLooseKey("options");var _s=babelHelpers.classPrivateFieldLooseKey("nodeSelection");var Ms=babelHelpers.classPrivateFieldLooseKey("unregisterCommands");var Ds=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Ss=babelHelpers.classPrivateFieldLooseKey("handleDelete");class Rs{constructor(e){Object.defineProperty(this,Ss,{value:xs});Object.defineProperty(this,Ds,{value:Is});Object.defineProperty(this,Os,{writable:true,value:null});Object.defineProperty(this,Ts,{writable:true,value:null});Object.defineProperty(this,Es,{writable:true,value:null});Object.defineProperty(this,Ns,{writable:true,value:{}});Object.defineProperty(this,_s,{writable:true,value:null});Object.defineProperty(this,Ms,{writable:true,value:null});const{textEditor:t,target:s,nodeKey:i,options:r}=e;babelHelpers.classPrivateFieldLooseBase(this,Os)[Os]=t;babelHelpers.classPrivateFieldLooseBase(this,Ts)[Ts]=s;babelHelpers.classPrivateFieldLooseBase(this,Es)[Es]=i;babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns]=r;babelHelpers.classPrivateFieldLooseBase(this,_s)[_s]=Cs(this.getEditor(),this.getNodeKey());babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].onSelect((e=>{if(e){F.Dom.addClass(this.getTarget(),"--selected")}else{F.Dom.removeClass(this.getTarget(),"--selected")}}));babelHelpers.classPrivateFieldLooseBase(this,Ms)[Ms]=babelHelpers.classPrivateFieldLooseBase(this,Ds)[Ds]()}update(e){}destroy(){babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].dispose();babelHelpers.classPrivateFieldLooseBase(this,Ms)[Ms]()}getEditor(){return babelHelpers.classPrivateFieldLooseBase(this,Os)[Os]}getNodeKey(){return babelHelpers.classPrivateFieldLooseBase(this,Es)[Es]}getTarget(){return babelHelpers.classPrivateFieldLooseBase(this,Ts)[Ts]}getNodeSelection(){return babelHelpers.classPrivateFieldLooseBase(this,_s)[_s]}isSelected(){return babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].isSelected()}setSelected(e){babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].setSelected(e)}getOptions(){return babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns]}getOption(e,t){if(!F.Type.isUndefined(babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns][e])){return babelHelpers.classPrivateFieldLooseBase(this,Ns)[Ns][e]}if(!F.Type.isUndefined(t)){return t}return null}}function Is(){return y.mergeRegister(this.getEditor().registerCommand(L.CLICK_COMMAND,(e=>{if(this.getTarget().contains(e.target)){if(e.shiftKey){babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].setSelected(!babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].isSelected())}else{babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].clearSelection();babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].setSelected(true)}return true}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_DELETE_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ss)[Ss].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.KEY_BACKSPACE_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,Ss)[Ss].bind(this),L.COMMAND_PRIORITY_LOW))}function xs(e){if(babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].isSelected()&&L.$isNodeSelection(L.$getSelection())){e.preventDefault();const t=L.$getNodeByKey(this.getNodeKey());babelHelpers.classPrivateFieldLooseBase(this,_s)[_s].setSelected(false);if(t){t.remove();return true}}return false}let ws=e=>e,As,$s;function Ks(e,t,s){return Math.min(Math.max(e,t),s)}const js={EAST:1,SOUTH:2,WEST:4,NORTH:8};var ks=babelHelpers.classPrivateFieldLooseKey("positioning");var Us=babelHelpers.classPrivateFieldLooseKey("freeTransform");var Ws=babelHelpers.classPrivateFieldLooseKey("onPointerDownHandler");var Ys=babelHelpers.classPrivateFieldLooseKey("onPointerMoveHandler");var zs=babelHelpers.classPrivateFieldLooseKey("onPointerUpHandler");var Xs=babelHelpers.classPrivateFieldLooseKey("container");var Gs=babelHelpers.classPrivateFieldLooseKey("target");var Vs=babelHelpers.classPrivateFieldLooseKey("editor");var Js=babelHelpers.classPrivateFieldLooseKey("maxWidth");var qs=babelHelpers.classPrivateFieldLooseKey("maxHeight");var Qs=babelHelpers.classPrivateFieldLooseKey("minWidth");var Zs=babelHelpers.classPrivateFieldLooseKey("minHeight");var ei=babelHelpers.classPrivateFieldLooseKey("handlePointerDown");var ti=babelHelpers.classPrivateFieldLooseKey("handlePointerMove");var si=babelHelpers.classPrivateFieldLooseKey("handlePointerUp");var ii=babelHelpers.classPrivateFieldLooseKey("getMaxContainerWidth");var ri=babelHelpers.classPrivateFieldLooseKey("getMaxContainerHeight");class ai 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,ri,{value:ci});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,ks,{writable:true,value:{currentHeight:0,currentWidth:0,direction:0,isResizing:false,ratio:0,startHeight:0,startWidth:0,startX:0,startY:0}});Object.defineProperty(this,Us,{writable:true,value:false});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:null});Object.defineProperty(this,Js,{writable:true,value:"none"});Object.defineProperty(this,qs,{writable:true,value:"none"});Object.defineProperty(this,Qs,{writable:true,value:16});Object.defineProperty(this,Zs,{writable:true,value:16});this.setEventNamespace("BX.UI.TextEditor.FigureResizer");babelHelpers.classPrivateFieldLooseBase(this,Gs)[Gs]=e;babelHelpers.classPrivateFieldLooseBase(this,Vs)[Vs]=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,Zs)[Zs]=Math.min(Math.max(babelHelpers.classPrivateFieldLooseBase(this,Zs)[Zs],F.Type.isNumber(a)?a:babelHelpers.classPrivateFieldLooseBase(this,Zs)[Zs]),F.Type.isNumber(i)?i:Infinity);babelHelpers.classPrivateFieldLooseBase(this,Js)[Js]=F.Type.isNumber(o)?o:"none";babelHelpers.classPrivateFieldLooseBase(this,qs)[qs]=F.Type.isNumber(l)?l:"none";babelHelpers.classPrivateFieldLooseBase(this,Us)[Us]=d===true;babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws]=babelHelpers.classPrivateFieldLooseBase(this,ei)[ei].bind(this);babelHelpers.classPrivateFieldLooseBase(this,Ys)[Ys]=babelHelpers.classPrivateFieldLooseBase(this,ti)[ti].bind(this);babelHelpers.classPrivateFieldLooseBase(this,zs)[zs]=babelHelpers.classPrivateFieldLooseBase(this,si)[si].bind(this);this.subscribeFromOptions(n)}show(){F.Dom.addClass(this.getContainer(),"--shown")}hide(){F.Dom.removeClass(this.getContainer(),"--shown")}getContainer(){if(babelHelpers.classPrivateFieldLooseBase(this,Xs)[Xs]===null){const e=F.Tag.render(As||(As=ws`
<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>
`),js.NORTH,babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws],js.EAST,babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws],js.SOUTH,babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws],js.WEST,babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws]);babelHelpers.classPrivateFieldLooseBase(this,Xs)[Xs]=F.Tag.render($s||($s=ws`
<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>
`),js.NORTH|js.EAST,babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws],js.SOUTH|js.EAST,babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws],js.SOUTH|js.WEST,babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws],js.NORTH|js.WEST,babelHelpers.classPrivateFieldLooseBase(this,Ws)[Ws],babelHelpers.classPrivateFieldLooseBase(this,Us)[Us]?e:null)}return babelHelpers.classPrivateFieldLooseBase(this,Xs)[Xs]}getTarget(){return babelHelpers.classPrivateFieldLooseBase(this,Gs)[Gs]}setTarget(e){babelHelpers.classPrivateFieldLooseBase(this,Gs)[Gs]=e}getEditor(){return babelHelpers.classPrivateFieldLooseBase(this,Vs)[Vs]}isResizing(){return babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].isResizing}}function oi(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,ks)[ks].startWidth=i;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startHeight=r;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].ratio=i/r;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentWidth=i;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentHeight=r;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startX=e.clientX;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startY=e.clientY;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].isResizing=true;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].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,Ys)[Ys]);F.Event.bind(document,"pointerup",babelHelpers.classPrivateFieldLooseBase(this,zs)[zs])}function li(e){const t=this.getTarget();const s=babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].direction&(js.EAST|js.WEST);const i=babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].direction&(js.SOUTH|js.NORTH);if(babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].isResizing){if(s&&i){let s=Math.floor(babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startX-e.clientX);s=babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].direction&js.EAST?-s:s;const i=Math.round(Ks(babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startWidth+s,babelHelpers.classPrivateFieldLooseBase(this,Qs)[Qs],babelHelpers.classPrivateFieldLooseBase(this,ii)[ii]()));const r=Math.ceil(i/babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].ratio);F.Dom.style(t,{width:`${i}px`,height:`${r}px`});this.emit("onResize",{width:i,height:r});babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentHeight=r;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentWidth=i}else if(i){let s=Math.floor(babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startY-e.clientY);s=babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].direction&js.SOUTH?-s:s;const i=Math.round(Math.max(babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startHeight+s,babelHelpers.classPrivateFieldLooseBase(this,Zs)[Zs]));F.Dom.style(t,"height",`${i}px`);this.emit("onResize",{width:babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentWidth,height:i});babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentHeight=i}else{let s=Math.floor(babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startX-e.clientX);s=babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].direction&js.EAST?-s:s;const i=Math.round(Ks(babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startWidth+s,babelHelpers.classPrivateFieldLooseBase(this,Qs)[Qs],babelHelpers.classPrivateFieldLooseBase(this,ii)[ii]()));F.Dom.style(t,"width",`${i}px`);this.emit("onResize",{width:i,height:babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentHeight});babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentWidth=i}}}function ni(){if(babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].isResizing){setTimeout((()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentWidth;const t=babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentHeight;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startWidth=0;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startHeight=0;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].ratio=0;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startX=0;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].startY=0;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentWidth=0;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].currentHeight=0;babelHelpers.classPrivateFieldLooseBase(this,ks)[ks].isResizing=false;F.Dom.removeClass(this.getContainer(),"--resizing");this.emit("onResizeEnd",{width:e,height:t});F.Event.unbind(document,"pointermove",babelHelpers.classPrivateFieldLooseBase(this,Ys)[Ys]);F.Event.unbind(document,"pointerup",babelHelpers.classPrivateFieldLooseBase(this,zs)[zs])}),200)}}function di(){const e=F.Type.isNumber(babelHelpers.classPrivateFieldLooseBase(this,Js)[Js])?babelHelpers.classPrivateFieldLooseBase(this,Js)[Js]:Infinity;const t=this.getEditor().getRootElement();if(t!==null){return Math.min(t.getBoundingClientRect().width-20,e)}return 100}function ci(){if(F.Type.isNumber(babelHelpers.classPrivateFieldLooseBase(this,qs)[qs])){return babelHelpers.classPrivateFieldLooseBase(this,qs)[qs]}const e=this.getEditor().getRootElement();if(e!==null){return e.getBoundingClientRect().height-20}return 100}let hi=e=>e,bi,ui;var pi=babelHelpers.classPrivateFieldLooseKey("refs");var gi=babelHelpers.classPrivateFieldLooseKey("figureResizer");var vi=babelHelpers.classPrivateFieldLooseKey("render");var fi=babelHelpers.classPrivateFieldLooseKey("getContainer");var Pi=babelHelpers.classPrivateFieldLooseKey("getImageContainer");var mi=babelHelpers.classPrivateFieldLooseKey("setDraggable");var Li=babelHelpers.classPrivateFieldLooseKey("handleResizeStart");var yi=babelHelpers.classPrivateFieldLooseKey("handleResizeEnd");class Fi extends Rs{constructor(e){super(e);Object.defineProperty(this,yi,{value:Ei});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,pi,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,gi,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,gi)[gi]=new ai({target:this.getImage(),editor:this.getEditor(),originalWidth:this.getOption("width"),originalHeight:this.getOption("height"),events:{onResizeStart:babelHelpers.classPrivateFieldLooseBase(this,Li)[Li].bind(this),onResizeEnd:babelHelpers.classPrivateFieldLooseBase(this,yi)[yi].bind(this)}});this.getNodeSelection().onSelect((e=>{if(e||babelHelpers.classPrivateFieldLooseBase(this,gi)[gi].isResizing()){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,fi)[fi](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,gi)[gi].show()}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,fi)[fi](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,gi)[gi].hide()}const t=e&&!babelHelpers.classPrivateFieldLooseBase(this,gi)[gi].isResizing();babelHelpers.classPrivateFieldLooseBase(this,mi)[mi](t)}));this.update(this.getOptions());babelHelpers.classPrivateFieldLooseBase(this,vi)[vi]()}getImage(){return babelHelpers.classPrivateFieldLooseBase(this,pi)[pi].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 Hi(){F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,fi)[fi](),this.getTarget())}function Bi(){return babelHelpers.classPrivateFieldLooseBase(this,pi)[pi].remember("container",(()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,gi)[gi].getContainer();return F.Tag.render(bi||(bi=hi`
<div class="ui-text-editor-file-image-component">
${0}
${0}
</div>
`),babelHelpers.classPrivateFieldLooseBase(this,Pi)[Pi](),e)}))}function Ci(){return babelHelpers.classPrivateFieldLooseBase(this,pi)[pi].remember("image-container",(()=>F.Tag.render(ui||(ui=hi`
<div class="ui-text-editor-file-image-container">
${0}
</div>
`),this.getImage())))}function Oi(e){F.Dom.attr(babelHelpers.classPrivateFieldLooseBase(this,Pi)[Pi](),{draggable:e});if(e){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,fi)[fi](),"--draggable")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,fi)[fi](),"--draggable")}}function Ti(e){babelHelpers.classPrivateFieldLooseBase(this,mi)[mi](false);this.setSelected(true)}function Ei(e){this.setSelected(true);this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(Mi(t)){const{width:s,height:i}=e.getData();t.setWidthAndHeight(s,i)}}))}class Ni 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 Ni(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 _i(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=_i(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:Fi,options:{src:this.__info.previewUrl,width:this.getWidth(),height:this.getHeight(),maxWidth:this.getWidth(),maxHeight:this.getHeight(),config:t}}}isInline(){return true}}Ni.useDecoratorComponent=true;function _i(e,t={},s=null,i=null){return new Ni(e,t,s,i)}function Mi(e){return e instanceof Ni}class Di 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 Di(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 Si(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=Si(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 Si(e,t={}){return new Di(e,t).setMode("token")}function Ri(e){return e instanceof Di}function Ii(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 xi=e=>e,wi;var Ai=babelHelpers.classPrivateFieldLooseKey("refs");var $i=babelHelpers.classPrivateFieldLooseKey("figureResizer");var Ki=babelHelpers.classPrivateFieldLooseKey("render");var ji=babelHelpers.classPrivateFieldLooseKey("getContainer");var ki=babelHelpers.classPrivateFieldLooseKey("getVideo");var Ui=babelHelpers.classPrivateFieldLooseKey("handleResize");var Wi=babelHelpers.classPrivateFieldLooseKey("handleResizeEnd");var Yi=babelHelpers.classPrivateFieldLooseKey("setDraggable");class zi extends Rs{constructor(e){super(e);Object.defineProperty(this,Yi,{value:Qi});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,Ai,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,$i,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,$i)[$i]=new ai({target:babelHelpers.classPrivateFieldLooseBase(this,ki)[ki](),editor:this.getEditor(),minWidth:120,minHeight:120,events:{onResize:babelHelpers.classPrivateFieldLooseBase(this,Ui)[Ui].bind(this),onResizeEnd:babelHelpers.classPrivateFieldLooseBase(this,Wi)[Wi].bind(this)}});this.getNodeSelection().onSelect((e=>{if(e||babelHelpers.classPrivateFieldLooseBase(this,$i)[$i].isResizing()){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,ji)[ji](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,$i)[$i].show()}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,ji)[ji](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,$i)[$i].hide()}babelHelpers.classPrivateFieldLooseBase(this,Yi)[Yi](e)}));this.update(this.getOptions());babelHelpers.classPrivateFieldLooseBase(this,Ki)[Ki]()}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,ki)[ki](),{attrs:{width:t,height:null},style:{width:t,height:"auto",aspectRatio:i}})}}function Xi(){F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,ji)[ji](),this.getTarget())}function Gi(){return babelHelpers.classPrivateFieldLooseBase(this,Ai)[Ai].remember("container",(()=>F.Tag.render(wi||(wi=xi`
<div class="ui-text-editor-video-component">
<div class="ui-text-editor-video-object-container">${0}</div>
${0}
</div>
`),babelHelpers.classPrivateFieldLooseBase(this,ki)[ki](),babelHelpers.classPrivateFieldLooseBase(this,$i)[$i].getContainer())))}function Vi(){return babelHelpers.classPrivateFieldLooseBase(this,Ai)[Ai].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(tr(t)&&t.getWidth()===0){const[s,i]=Ii(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 Ji(e){this.update(e.getData())}function qi(e){this.setSelected(true);this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(tr(t)){const{width:s,height:i}=e.getData();t.setWidthAndHeight(s,i)}}))}function Qi(e){F.Dom.attr(babelHelpers.classPrivateFieldLooseBase(this,ji)[ji](),{draggable:e});if(e){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,ji)[ji](),"--draggable")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,ji)[ji](),"--draggable")}}class Zi 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 Zi(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 er(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:zi,options:{src:this.__info.downloadUrl,width:this.getWidth(),height:this.getHeight(),maxWidth:this.getWidth(),maxHeight:this.getHeight(),config:t}}}isInline(){return true}}Zi.useDecoratorComponent=true;function er(e,t={},s=null,i=null){const r=new Zi(e,t,s,i);return L.$applyNodeReplacement(r)}function tr(e){return e instanceof Zi}function sr(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 ir(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 rr=e=>e,ar;const or="application/x-lexical-drag-image";const lr=F.Tag.render(ar||(ar=rr`<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7">`));function nr(e,t,s){const i=e=>e instanceof t;const r=()=>ir((e=>i(e)));return y.mergeRegister(e.registerCommand(L.DRAGSTART_COMMAND,(t=>{const s=r();if(!s){return false}const i=dr(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 cr(t,e)}),L.COMMAND_PRIORITY_LOW),e.registerCommand(L.DROP_COMMAND,(t=>{const i=r();if(!i){return false}e.dispatchCommand(O);return hr(t,e,i,s)}),L.COMMAND_PRIORITY_HIGH))}function dr(e,t){const s=e.dataTransfer;if(!s){return false}s.setData("text/plain","_");s.setDragImage(lr,0,0);s.setData(or,JSON.stringify({data:t.exportJSON(),type:t.getType()}));return true}function cr(e,t){if(!br(e,t)){e.preventDefault()}return true}function hr(e,t,s,i){var r;const a=(r=e.dataTransfer)==null?void 0:r.getData(or);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(br(e,t)&&F.Type.isFunction(i)){const t=sr(e);s.remove();const r=L.$createRangeSelection();if(t!==null&&t!==undefined){r.applyDOMRange(t)}L.$setSelection(r);i(l)}return true}function br(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 ur={FILE:"file",IMAGE:"image",VIDEO:"video"};const pr=L.createCommand("ADD_FILE_COMMAND");const gr=L.createCommand("ADD_FILES_COMMAND");const vr=L.createCommand("INSERT_FILE_COMMAND");const fr=L.createCommand("REMOVE_FILE_COMMAND");const Pr=L.createCommand("GET_INSERTED_FILES_COMMAND");var mr=babelHelpers.classPrivateFieldLooseKey("enabled");var Lr=babelHelpers.classPrivateFieldLooseKey("mode");var yr=babelHelpers.classPrivateFieldLooseKey("files");var Fr=babelHelpers.classPrivateFieldLooseKey("registerListeners");class Hr extends re{constructor(e){super(e);Object.defineProperty(this,Fr,{value:Br});Object.defineProperty(this,mr,{writable:true,value:false});Object.defineProperty(this,Lr,{writable:true,value:"file"});Object.defineProperty(this,yr,{writable:true,value:new Map});const t=e.getOption("file.mode");babelHelpers.classPrivateFieldLooseBase(this,mr)[mr]=["file","disk"].includes(t);if(!babelHelpers.classPrivateFieldLooseBase(this,mr)[mr]){return}babelHelpers.classPrivateFieldLooseBase(this,Lr)[Lr]=t;const s=e.getOption("file.files",[]);this.addFiles(s);babelHelpers.classPrivateFieldLooseBase(this,Fr)[Fr]();this.cleanUpRegister(nr(this.getEditor(),Ni,(e=>{this.getEditor().dispatchCommand(vr,e)})),nr(this.getEditor(),Zi,(e=>{this.getEditor().dispatchCommand(vr,e)})))}static getName(){return"File"}static getNodes(e){return[Di,Ni,Zi]}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===ur.IMAGE){const s=F.Text.toInteger(e.getAttribute("width"));const r=F.Text.toInteger(e.getAttribute("height"));return{node:_i(t,i,s,r)}}if(r===ur.VIDEO){const s=F.Text.toInteger(e.getAttribute("width"));const r=F.Text.toInteger(e.getAttribute("height"));return{node:er(t,i,s,r)}}return{node:Si(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,mr)[mr]}getMode(){return babelHelpers.classPrivateFieldLooseBase(this,Lr)[Lr]}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,yr)[yr].has(t)){babelHelpers.classPrivateFieldLooseBase(this,yr)[yr].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,yr)[yr].get(e.toString())||null}return null}getFileType(e){if(e!=null&&e.isImage){return ur.IMAGE}if(e!=null&&e.isVideo){return ur.VIDEO}return ur.FILE}removeFile(e,t=true){if(F.Type.isStringFilled(e)||F.Type.isNumber(e)){babelHelpers.classPrivateFieldLooseBase(this,yr)[yr].delete(e.toString());this.getEditor().update((()=>{const t=[...L.$nodesOfType(Di),...L.$nodesOfType(Ni),...L.$nodesOfType(Zi)];t.forEach((t=>{if(t.getServerFileId().toString()===e.toString()){t.remove()}}))}),t?{tag:"history-merge"}:{})}}}function Br(){this.cleanUpRegister(this.getEditor().registerCommand(vr,(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===ur.IMAGE){const[t,l]=Ii(i,r,a,o);s=_i(e.serverFileId,e.info,t,l)}else if(t===ur.VIDEO){let t=0;let l=0;if(i>0&&r>0){[t,l]=Ii(i,r,a,o)}s=er(e.serverFileId,e.info,t,l)}else{s=Si(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(fr,(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(Pr,(e=>{if(!F.Type.isFunction(e)){return false}const t=[...L.$nodesOfType(Di),...L.$nodesOfType(Ni),...L.$nodesOfType(Zi)];e(t);return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(pr,(e=>{this.addFile(e);return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(gr,(e=>{this.addFiles(e);return true}),L.COMMAND_PRIORITY_EDITOR))}var Cr=Object.freeze({FileImageNode:Ni,$createFileImageNode:_i,$isFileImageNode:Mi,FileImageComponent:Fi,FileNode:Di,$createFileNode:Si,$isFileNode:Ri,FileVideoNode:Zi,$createFileVideoNode:er,$isFileVideoNode:tr,FileType:ur,ADD_FILE_COMMAND:pr,ADD_FILES_COMMAND:gr,INSERT_FILE_COMMAND:vr,REMOVE_FILE_COMMAND:fr,GET_INSERTED_FILES_COMMAND:Pr,FilePlugin:Hr});function Or(e){return/^(http:|https:|ftp:|blob:|\/)/i.test(e)}let Tr=e=>e,Er,Nr;var _r=babelHelpers.classPrivateFieldLooseKey("refs");var Mr=babelHelpers.classPrivateFieldLooseKey("figureResizer");var Dr=babelHelpers.classPrivateFieldLooseKey("maxWidth");var Sr=babelHelpers.classPrivateFieldLooseKey("render");var Rr=babelHelpers.classPrivateFieldLooseKey("getContainer");var Ir=babelHelpers.classPrivateFieldLooseKey("getImageContainer");var xr=babelHelpers.classPrivateFieldLooseKey("setDraggable");var wr=babelHelpers.classPrivateFieldLooseKey("handleResizeStart");var Ar=babelHelpers.classPrivateFieldLooseKey("handleResizeEnd");class $r extends Rs{constructor(e){super(e);Object.defineProperty(this,Ar,{value:Yr});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,_r,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,Mr,{writable:true,value:null});Object.defineProperty(this,Dr,{writable:true,value:"none"});babelHelpers.classPrivateFieldLooseBase(this,Mr)[Mr]=new ai({target:this.getImage(),editor:this.getEditor(),originalWidth:this.getOption("width"),originalHeight:this.getOption("height"),maxWidth:this.getMaxWidth(),events:{onResizeStart:babelHelpers.classPrivateFieldLooseBase(this,wr)[wr].bind(this),onResizeEnd:babelHelpers.classPrivateFieldLooseBase(this,Ar)[Ar].bind(this)}});this.getNodeSelection().onSelect((e=>{if(e||babelHelpers.classPrivateFieldLooseBase(this,Mr)[Mr].isResizing()){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Rr)[Rr](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,Mr)[Mr].show()}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Rr)[Rr](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,Mr)[Mr].hide()}const t=e&&!babelHelpers.classPrivateFieldLooseBase(this,Mr)[Mr].isResizing();babelHelpers.classPrivateFieldLooseBase(this,xr)[xr](t)}));this.update(this.getOptions());babelHelpers.classPrivateFieldLooseBase(this,Sr)[Sr]()}getImage(){return babelHelpers.classPrivateFieldLooseBase(this,_r)[_r].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,Dr)[Dr]}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,Dr)[Dr]=e.maxWidth;F.Dom.style(this.getImage(),{width:t,height:"auto",aspectRatio:s})}}function Kr(){F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,Rr)[Rr](),this.getTarget())}function jr(){return babelHelpers.classPrivateFieldLooseBase(this,_r)[_r].remember("container",(()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,Mr)[Mr].getContainer();return F.Tag.render(Er||(Er=Tr`
<div class="ui-text-editor-image-component">
${0}
${0}
</div>
`),babelHelpers.classPrivateFieldLooseBase(this,Ir)[Ir](),e)}))}function kr(){return babelHelpers.classPrivateFieldLooseBase(this,_r)[_r].remember("image-container",(()=>F.Tag.render(Nr||(Nr=Tr`
<div class="ui-text-editor-image-container">
${0}
</div>
`),this.getImage())))}function Ur(e){F.Dom.attr(babelHelpers.classPrivateFieldLooseBase(this,Ir)[Ir](),{draggable:e});if(e){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Rr)[Rr](),"--draggable")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Rr)[Rr](),"--draggable")}}function Wr(e){babelHelpers.classPrivateFieldLooseBase(this,xr)[xr](false);this.setSelected(true)}function Yr(e){this.setSelected(true);this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(Gr(t)){const{width:s,height:i}=e.getData();t.setWidthAndHeight(s,i)}}))}class zr extends L.DecoratorNode{constructor(e,t,s,i,r){super(r);this.__width="inherit";this.__height="inherit";this.__maxWidth="none";if(Or(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 zr(e.__src,e.__width,e.__height,e.__maxWidth,e.__key)}static importJSON(e){const{width:t,height:s,src:i,maxWidth:r}=e;return Xr({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&&Or(e.src)){const{src:t,width:s,height:i}=e;const r=Xr({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:$r,options:{src:this.getSrc(),width:this.getWidth(),height:this.getHeight(),maxWidth:this.getMaxWidth(),config:t}}}isInline(){return true}}zr.useDecoratorComponent=true;function Xr({src:e,width:t,height:s,maxWidth:i,key:r}){return L.$applyNodeReplacement(new zr(e,t,s,i,r))}function Gr(e){return e instanceof zr}function Vr(e,t,s){const i=Jr(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 Jr(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=qr(l)}if(L.$isTextNode(r)){n=qr(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 qr(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 Zr=new WeakMap;const ea=16;function ta(e,t,s){const i=L.$getSelection();if(!L.$isRangeSelection(i)){return false}const r=Vr(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+ea}else if(d.right<o+h-b){b+=o+h-b-d.right+ea}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=Zr.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"}Zr.set(e,h);e.setBindElement({left:o,top:a,bottom:l});e.adjustPosition({position:h,forceBindPosition:true})}return true}function sa(e){Zr.delete(e)}const ia=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g;const ra=/^(?:(?:https?|ftps?|mailto):|[^a-z]|[+.a-z-]+(?:[^+.:a-z-]|$))/i;function aa(e){if(!F.Type.isStringFilled(e)){return""}const t=e.replaceAll(ia,"");return ra.test(t)?t:""}let oa=e=>e,la,na;var da=babelHelpers.classPrivateFieldLooseKey("popup");var ca=babelHelpers.classPrivateFieldLooseKey("imageUrl");var ha=babelHelpers.classPrivateFieldLooseKey("targetContainer");var ba=babelHelpers.classPrivateFieldLooseKey("refs");var ua=babelHelpers.classPrivateFieldLooseKey("handleSaveBtnClick");var pa=babelHelpers.classPrivateFieldLooseKey("handleTextBoxKeyDown");var ga=babelHelpers.classPrivateFieldLooseKey("handleCancelBtnClick");class va extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,ga,{value:ma});Object.defineProperty(this,pa,{value:Pa});Object.defineProperty(this,ua,{value:fa});Object.defineProperty(this,da,{writable:true,value:null});Object.defineProperty(this,ca,{writable:true,value:""});Object.defineProperty(this,ha,{writable:true,value:null});Object.defineProperty(this,ba,{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,da)[da]!==null&&babelHelpers.classPrivateFieldLooseBase(this,da)[da].isShown()}destroy(){this.getPopup().destroy()}setImageUrl(e){if(F.Type.isString(e)){babelHelpers.classPrivateFieldLooseBase(this,ca)[ca]=aa(e)}}getImageUrl(){return babelHelpers.classPrivateFieldLooseBase(this,ca)[ca]}setTargetContainer(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,ha)[ha]=e}}getTargetContainer(){return babelHelpers.classPrivateFieldLooseBase(this,ha)[ha]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,da)[da]===null){babelHelpers.classPrivateFieldLooseBase(this,da)[da]=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,da)[da]}getContainer(){return babelHelpers.classPrivateFieldLooseBase(this,ba)[ba].remember("container",(()=>F.Tag.render(la||(la=oa`
<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,ua)[ua].bind(this),babelHelpers.classPrivateFieldLooseBase(this,ga)[ga].bind(this))))}getUrlTextBox(){return babelHelpers.classPrivateFieldLooseBase(this,ba)[ba].remember("url-textbox",(()=>F.Tag.render(na||(na=oa`
<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,pa)[pa].bind(this))))}}function fa(){const e=this.getUrlTextBox().value.trim();if(e.length>0){this.setImageUrl(e);this.emit("onSave")}else{this.getUrlTextBox().focus()}}function Pa(e){if(e.key==="Enter"){e.preventDefault();babelHelpers.classPrivateFieldLooseBase(this,ua)[ua]()}}function ma(){this.emit("onCancel")}const La=L.createCommand("INSERT_IMAGE_COMMAND");const ya=L.createCommand("INSERT_IMAGE_DIALOG_COMMAND");var Fa=babelHelpers.classPrivateFieldLooseKey("imageDialog");var Ha=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var Ba=babelHelpers.classPrivateFieldLooseKey("lastSelection");var Ca=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Oa=babelHelpers.classPrivateFieldLooseKey("restoreSelection");var Ta=babelHelpers.classPrivateFieldLooseKey("handleDialogDestroy");var Ea=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var Na=babelHelpers.classPrivateFieldLooseKey("registerComponents");class _a extends re{constructor(e){super(e);Object.defineProperty(this,Na,{value:Ia});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,Fa,{writable:true,value:null});Object.defineProperty(this,Ha,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,Ea)[Ea].bind(this)});Object.defineProperty(this,Ba,{writable:true,value:null});this.cleanUpRegister(babelHelpers.classPrivateFieldLooseBase(this,Ca)[Ca](),nr(this.getEditor(),zr,(e=>{this.getEditor().dispatchCommand(La,e)})));babelHelpers.classPrivateFieldLooseBase(this,Na)[Na]()}static getName(){return"Image"}static getNodes(e){return[zr]}importBBCode(){return{img:()=>({conversion:e=>{const t=e.getContent().trim();const s=Number(e.getAttribute("width"));const i=Number(e.getAttribute("height"));if(Or(t)){return{node:Xr({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:zr}],bbcodeMap:{image:"img"}}}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa]!==null){babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].destroy()}}}function Ma(){return y.mergeRegister(this.getEditor().registerCommand(La,(e=>{if(!Or(e==null?void 0:e.src)){return false}const t=Xr(e);L.$insertNodes([t]);if(L.$isRootOrShadowRoot(t.getParentOrThrow())){y.$wrapNodeInElement(t,L.$createParagraphNode).selectEnd()}return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(ya,(()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return false}babelHelpers.classPrivateFieldLooseBase(this,Ba)[Ba]=e.clone();if(babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa]!==null){babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].destroy()}this.getEditor().dispatchCommand(H);babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa]=new va({targetContainer:document.body,events:{onSave:()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].getImageUrl();if(!F.Type.isStringFilled(e)){babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].hide();return}this.getEditor().dispatchCommand(La,{src:e});babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].hide()},onCancel:()=>{babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].hide()},onClose:()=>{babelHelpers.classPrivateFieldLooseBase(this,Ta)[Ta]()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,Ta)[Ta]()},onShow:()=>{if(ta(babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].getPopup(),this.getEditor())){F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,Ha)[Ha]);this.getEditor().highlightSelection()}},onAfterShow:()=>{babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].getUrlTextBox().focus()}}});babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa]!==null){babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].destroy()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].isShown()),L.COMMAND_PRIORITY_LOW))}function Da(){const e=L.$getSelection();if(!L.$isRangeSelection(e)&&babelHelpers.classPrivateFieldLooseBase(this,Ba)[Ba]!==null){L.$setSelection(babelHelpers.classPrivateFieldLooseBase(this,Ba)[Ba]);babelHelpers.classPrivateFieldLooseBase(this,Ba)[Ba]=null;return true}return false}function Sa(){babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa]=null;F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,Ha)[Ha]);this.getEditor().resetHighlightSelection();this.getEditor().update((()=>{if(!babelHelpers.classPrivateFieldLooseBase(this,Oa)[Oa]()){this.getEditor().focus()}}))}function Ra(){this.getEditor().update((()=>{ta(babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].getPopup(),this.getEditor())}))}function Ia(){this.getEditor().getComponentRegistry().register("image",(()=>{const e=new ve;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,Fa)[Fa]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Fa)[Fa].isShown()){return}this.getEditor().focus((()=>{this.getEditor().dispatchCommand(ya)}))}));return e}))}var xa=Object.freeze({ImageNode:zr,$createImageNode:Xr,$isImageNode:Gr,INSERT_IMAGE_COMMAND:La,INSERT_IMAGE_DIALOG_COMMAND:ya,ImagePlugin:_a});class wa extends L.ElementNode{constructor(e,t,s){super(s);this.__entityId=e;this.__id=t}static getType(){return"mention"}static clone(e){return new wa(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=$a(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:Aa,priority:1}},a:e=>{if(!e.hasAttribute("data-mention-id")){return null}return{conversion:Aa,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 Aa(e){const t=e.textContent;if(t!==null){const{mentionEntityId:t,mentionId:s}=e.dataset;const i=$a(t,s);return{node:i}}return null}function $a(e,t){const s=new wa(e,t);return L.$applyNodeReplacement(s)}function Ka(e){return e instanceof wa}const ja="\\.,\\+\\*\\?\\$\\@\\|#{}\\(\\)\\^\\-\\[\\]\\\\/!%'\"~=<>_:;";const ka=["@","+"].join("");const Ua=`[^${ka}${ja}\\s]`;const Wa="(?:"+"\\.[ |$]|"+" |"+`[${ja}]|`+")";const Ya=25;const za=new RegExp("(^|\\s|\\()("+`[${ka}]`+`((?:${Ua}${Wa}){0,${Ya}})`+")$");const Xa=L.createCommand("INSERT_MENTION_COMMAND");const Ga=L.createCommand("INSERT_MENTION_DIALOG_COMMAND");var Va=babelHelpers.classPrivateFieldLooseKey("dialog");var Ja=babelHelpers.classPrivateFieldLooseKey("lastQueryMatch");var qa=babelHelpers.classPrivateFieldLooseKey("mentionListening");var Qa=babelHelpers.classPrivateFieldLooseKey("removeKeyboardCommandsLock");var Za=babelHelpers.classPrivateFieldLooseKey("removeUpdateListener");var eo=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var to=babelHelpers.classPrivateFieldLooseKey("lastPosition");var so=babelHelpers.classPrivateFieldLooseKey("timeoutId");var io=babelHelpers.classPrivateFieldLooseKey("triggerByAtSign");var ro=babelHelpers.classPrivateFieldLooseKey("dialogOptions");var ao=babelHelpers.classPrivateFieldLooseKey("entities");var oo=babelHelpers.classPrivateFieldLooseKey("registerCommands");var lo=babelHelpers.classPrivateFieldLooseKey("registerComponents");var no=babelHelpers.classPrivateFieldLooseKey("convertMentionElement");var co=babelHelpers.classPrivateFieldLooseKey("registerKeyDownListener");var ho=babelHelpers.classPrivateFieldLooseKey("registerTextContentListener");var bo=babelHelpers.classPrivateFieldLooseKey("unregisterTextContentListener");var uo=babelHelpers.classPrivateFieldLooseKey("textContentListener");var po=babelHelpers.classPrivateFieldLooseKey("startMentionListening");var go=babelHelpers.classPrivateFieldLooseKey("stopMentionListening");var vo=babelHelpers.classPrivateFieldLooseKey("getQueryMatch");var fo=babelHelpers.classPrivateFieldLooseKey("getTextUpToAnchor");var Po=babelHelpers.classPrivateFieldLooseKey("isSelectionOnEntityBoundary");var mo=babelHelpers.classPrivateFieldLooseKey("matchMention");var Lo=babelHelpers.classPrivateFieldLooseKey("splitNodeContainingQuery");var yo=babelHelpers.classPrivateFieldLooseKey("getFullMatchOffset");var Fo=babelHelpers.classPrivateFieldLooseKey("openDialog");var Ho=babelHelpers.classPrivateFieldLooseKey("adjustDialogPosition");var Bo=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var Co=babelHelpers.classPrivateFieldLooseKey("handleHideOrDestroy");var Oo=babelHelpers.classPrivateFieldLooseKey("hideDialog");var To=babelHelpers.classPrivateFieldLooseKey("lockKeyboardCommands");var Eo=babelHelpers.classPrivateFieldLooseKey("unlockKeyboardCommands");class No extends re{constructor(e){super(e);Object.defineProperty(this,Eo,{value:qo});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,Va,{writable:true,value:null});Object.defineProperty(this,Ja,{writable:true,value:null});Object.defineProperty(this,qa,{writable:true,value:false});Object.defineProperty(this,Qa,{writable:true,value:null});Object.defineProperty(this,Za,{writable:true,value:null});Object.defineProperty(this,eo,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,Bo)[Bo].bind(this)});Object.defineProperty(this,to,{writable:true,value:null});Object.defineProperty(this,so,{writable:true,value:null});Object.defineProperty(this,io,{writable:true,value:false});Object.defineProperty(this,ro,{writable:true,value:null});Object.defineProperty(this,ao,{writable:true,value:new Set});const t=e.getOption("mention.entities",[]);babelHelpers.classPrivateFieldLooseBase(this,ao)[ao]=F.Type.isArrayFilled(t)?new Set(t):new Set;const s=e.getOption("mention.dialogOptions");if(F.Type.isPlainObject(s)){babelHelpers.classPrivateFieldLooseBase(this,ro)[ro]=s;if(F.Type.isArrayFilled(babelHelpers.classPrivateFieldLooseBase(this,ro)[ro].entities)){for(const e of babelHelpers.classPrivateFieldLooseBase(this,ro)[ro].entities){if(F.Type.isPlainObject(e)&&F.Type.isStringFilled(e.id)){babelHelpers.classPrivateFieldLooseBase(this,ao)[ao].add(e.id)}}}babelHelpers.classPrivateFieldLooseBase(this,co)[co]()}if(babelHelpers.classPrivateFieldLooseBase(this,ao)[ao].size>0){babelHelpers.classPrivateFieldLooseBase(this,oo)[oo]();babelHelpers.classPrivateFieldLooseBase(this,lo)[lo]()}}static getName(){return"Mention"}static getNodes(e){return[wa]}importBBCode(){if(babelHelpers.classPrivateFieldLooseBase(this,ao)[ao].size>0){const e={};for(const t of babelHelpers.classPrivateFieldLooseBase(this,ao)[ao]){e[t]=()=>({conversion:babelHelpers.classPrivateFieldLooseBase(this,no)[no],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:wa}],bbcodeMap:{mention:"#mention"}}}shouldTriggerByAtSign(){return babelHelpers.classPrivateFieldLooseBase(this,io)[io]}isDialogVisible(){return babelHelpers.classPrivateFieldLooseBase(this,Va)[Va]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].isRendered()&&babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].getPopup().isShown()}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,so)[so]!==null){clearTimeout(babelHelpers.classPrivateFieldLooseBase(this,so)[so]);babelHelpers.classPrivateFieldLooseBase(this,so)[so]=null}if(babelHelpers.classPrivateFieldLooseBase(this,Va)[Va]!==null){babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].destroy()}babelHelpers.classPrivateFieldLooseBase(this,bo)[bo]();babelHelpers.classPrivateFieldLooseBase(this,Eo)[Eo]()}}function _o(){this.cleanUpRegister(this.getEditor().registerCommand(Xa,(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,ao)[ao].has(e.entityId)){console.error(`TextEditor: MentionPlugin: entity id "${e.entityId}" was not found.`);return false}const t=$a(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(Ga,(e=>{const t=L.$getSelection();if(!L.$isRangeSelection(t)){return false}this.getEditor().update((()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,fo)[fo](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,vo)[vo](L.$getSelection());if(e!==null&&!babelHelpers.classPrivateFieldLooseBase(this,Po)[Po](e.leadOffset)){babelHelpers.classPrivateFieldLooseBase(this,Fo)[Fo](e)}}))}});return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(e=>{if(!e||e.sender!=="mention"){babelHelpers.classPrivateFieldLooseBase(this,Oo)[Oo]()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>this.isDialogVisible()),L.COMMAND_PRIORITY_LOW))}function Mo(){this.getEditor().getComponentRegistry().register("mention",(()=>{const e=new ve;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(Ga)}))}));return e}))}function Do(e){return{node:$a(e.getName(),e.getValue())}}function So(){babelHelpers.classPrivateFieldLooseBase(this,io)[io]=true;const e=e=>{if(babelHelpers.classPrivateFieldLooseBase(this,qa)[qa]){if(e.key==="Escape"||e.key==="Enter"){babelHelpers.classPrivateFieldLooseBase(this,go)[go]()}}else if(!babelHelpers.classPrivateFieldLooseBase(this,qa)[qa]&&(e.key==="+"||e.key==="@")){babelHelpers.classPrivateFieldLooseBase(this,so)[so]=setTimeout((()=>{this.getEditor().update((()=>{const e=L.$getSelection();const t=babelHelpers.classPrivateFieldLooseBase(this,vo)[vo](e);if(t!==null&&!babelHelpers.classPrivateFieldLooseBase(this,Po)[Po](t.leadOffset)){babelHelpers.classPrivateFieldLooseBase(this,Fo)[Fo](t)}}))}),300)}return false};this.cleanUpRegister(this.getEditor().registerCommand(L.KEY_DOWN_COMMAND,e,L.COMMAND_PRIORITY_LOW))}function Ro(){babelHelpers.classPrivateFieldLooseBase(this,bo)[bo]();babelHelpers.classPrivateFieldLooseBase(this,Za)[Za]=this.getEditor().registerTextContentListener(babelHelpers.classPrivateFieldLooseBase(this,uo)[uo].bind(this))}function Io(){if(babelHelpers.classPrivateFieldLooseBase(this,Za)[Za]!==null){babelHelpers.classPrivateFieldLooseBase(this,Za)[Za]();babelHelpers.classPrivateFieldLooseBase(this,Za)[Za]=null}}function xo(){this.getEditor().getEditorState().read((()=>{const e=L.$getSelection();const t=babelHelpers.classPrivateFieldLooseBase(this,vo)[vo](e);if(t!==null&&!babelHelpers.classPrivateFieldLooseBase(this,Po)[Po](t.leadOffset)){babelHelpers.classPrivateFieldLooseBase(this,Fo)[Fo](t)}else{babelHelpers.classPrivateFieldLooseBase(this,Oo)[Oo]()}}))}function wo(){babelHelpers.classPrivateFieldLooseBase(this,qa)[qa]=true;babelHelpers.classPrivateFieldLooseBase(this,ho)[ho]()}function Ao(){babelHelpers.classPrivateFieldLooseBase(this,qa)[qa]=false;babelHelpers.classPrivateFieldLooseBase(this,bo)[bo]()}function $o(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,fo)[fo](e);if(!F.Type.isStringFilled(r)){return null}return babelHelpers.classPrivateFieldLooseBase(this,mo)[mo](r,t)}function Ko(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 jo(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 ko(e,t){const s=za.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 Uo(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,yo)[yo](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 Wo(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 Yo(e){if(this.isDestroyed()){return}babelHelpers.classPrivateFieldLooseBase(this,Ja)[Ja]=e;if(babelHelpers.classPrivateFieldLooseBase(this,Va)[Va]===null){const t=F.Type.isPlainObject(babelHelpers.classPrivateFieldLooseBase(this,ro)[ro])?{...babelHelpers.classPrivateFieldLooseBase(this,ro)[ro]}:{};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,To)[To]();babelHelpers.classPrivateFieldLooseBase(this,po)[po]();F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,eo)[eo])},onHide:()=>{babelHelpers.classPrivateFieldLooseBase(this,Co)[Co]()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,Co)[Co]()},"Item:onBeforeSelect":e=>{const t=e.getData().item;e.preventDefault();this.getEditor().update((()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,Lo)[Lo](babelHelpers.classPrivateFieldLooseBase(this,Ja)[Ja]);const s=$a(t.getEntityId(),t.getId());s.append(L.$createTextNode(t.getTitle()));if(e){e.replace(s);s.select()}babelHelpers.classPrivateFieldLooseBase(this,Oo)[Oo]()}))}}};babelHelpers.classPrivateFieldLooseBase(this,Va)[Va]=new r(a);this.getEditor().dispatchCommand(H,{sender:"mention"});babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].subscribeFromOptions(s);babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].show();babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].search(e.matchingString);babelHelpers.classPrivateFieldLooseBase(this,Ho)[Ho]()})).catch((e=>{console.error('TextEditor: MentionPlugin: cannot load "ui.entity-selector"',e)}))}else{this.getEditor().dispatchCommand(H,{sender:"mention"});babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].show();babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].search(e.matchingString);babelHelpers.classPrivateFieldLooseBase(this,Ho)[Ho]()}}function zo(){this.getEditor().update((()=>{const e=Vr(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,Va)[Va].getPopup().getPopupContainer(),"ui-text-editor-mention-popup__hidden")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].getPopup().getPopupContainer(),"ui-text-editor-mention-popup__hidden");babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].show();if(babelHelpers.classPrivateFieldLooseBase(this,to)[to]===null||babelHelpers.classPrivateFieldLooseBase(this,to)[to].top!==i){babelHelpers.classPrivateFieldLooseBase(this,to)[to]={left:s-o,top:i}}babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].getPopup().setBindElement(babelHelpers.classPrivateFieldLooseBase(this,to)[to]);babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].getPopup().adjustPosition({forceBindPosition:true,forceTop:true})}}))}function Xo(){babelHelpers.classPrivateFieldLooseBase(this,Ho)[Ho]()}function Go(){babelHelpers.classPrivateFieldLooseBase(this,to)[to]=null;babelHelpers.classPrivateFieldLooseBase(this,Eo)[Eo]();babelHelpers.classPrivateFieldLooseBase(this,go)[go]();F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,eo)[eo])}function Vo(){if(babelHelpers.classPrivateFieldLooseBase(this,Va)[Va]!==null){babelHelpers.classPrivateFieldLooseBase(this,Va)[Va].hide()}}function Jo(){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 qo(){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:Xa,INSERT_MENTION_DIALOG_COMMAND:Ga,MentionPlugin:No,MentionNode:wa,$createMentionNode:$a,$isMentionNode:Ka});class Zo extends L.DecoratorNode{static getType(){return"smiley"}static clone(e){return new Zo(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 tl(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 el(e){return e instanceof Zo}function tl(e,t,s,i){const r=new Zo(e,t,s,i);return L.$applyNodeReplacement(r)}var sl=babelHelpers.classPrivateFieldLooseKey("popup");var il=babelHelpers.classPrivateFieldLooseKey("targetNode");class rl extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,sl,{writable:true,value:null});Object.defineProperty(this,il,{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,sl)[sl]!==null&&babelHelpers.classPrivateFieldLooseBase(this,sl)[sl].isShown()}destroy(){this.getPopup().destroy()}setTargetNode(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,il)[il]=e}}getTargetNode(){return babelHelpers.classPrivateFieldLooseBase(this,il)[il]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,sl)[sl]===null){const e=360;const t=this.getTargetNode();const s=t.getBoundingClientRect();const i=s.width;babelHelpers.classPrivateFieldLooseBase(this,sl)[sl]=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,sl)[sl].getContentContainer())})).catch((()=>{babelHelpers.classPrivateFieldLooseBase(this,sl)[sl].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,sl)[sl]}}const al=L.createCommand("INSERT_SMILEY_COMMAND");const ol=L.createCommand("INSERT_SMILEY_DIALOG_COMMAND");var ll=babelHelpers.classPrivateFieldLooseKey("smileyParser");var nl=babelHelpers.classPrivateFieldLooseKey("smileyDialog");var dl=babelHelpers.classPrivateFieldLooseKey("registerListeners");var cl=babelHelpers.classPrivateFieldLooseKey("registerInsertSmileyCommand");var hl=babelHelpers.classPrivateFieldLooseKey("registerComponents");class bl extends re{constructor(e){super(e);Object.defineProperty(this,hl,{value:gl});Object.defineProperty(this,cl,{value:pl});Object.defineProperty(this,dl,{value:ul});Object.defineProperty(this,ll,{writable:true,value:null});Object.defineProperty(this,nl,{writable:true,value:null});if(a.SmileyManager.getSize()>0){babelHelpers.classPrivateFieldLooseBase(this,ll)[ll]=new a.SmileyParser(a.SmileyManager.getAll());babelHelpers.classPrivateFieldLooseBase(this,dl)[dl]();babelHelpers.classPrivateFieldLooseBase(this,cl)[cl]();babelHelpers.classPrivateFieldLooseBase(this,hl)[hl]()}}static getName(){return"Smiley"}static getNodes(e){return[Zo]}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,nl)[nl]!==null){babelHelpers.classPrivateFieldLooseBase(this,nl)[nl].destroy()}}}function ul(){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,ll)[ll].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=tl(s.getImage(),s.getTyping(),s.getWidth(),s.getHeight());t.replace(e)}else{e.add(t.getKey())}}}})),this.getEditor().registerUpdateListener((()=>{e.clear()})),this.getEditor().registerMutationListener(Zo,(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,nl)[nl]!==null){babelHelpers.classPrivateFieldLooseBase(this,nl)[nl].hide()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,nl)[nl]!==null&&babelHelpers.classPrivateFieldLooseBase(this,nl)[nl].isShown()),L.COMMAND_PRIORITY_LOW))}function pl(){this.cleanUpRegister(this.getEditor().registerCommand(al,(e=>{const t=a.SmileyManager.get(e)||null;if(!t){return false}const s=tl(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(ol,(e=>{if(!F.Type.isPlainObject(e)||!F.Type.isElementNode(e.targetNode)){return false}if(babelHelpers.classPrivateFieldLooseBase(this,nl)[nl]!==null){if(babelHelpers.classPrivateFieldLooseBase(this,nl)[nl].getTargetNode()===e.targetNode){babelHelpers.classPrivateFieldLooseBase(this,nl)[nl].show();return true}babelHelpers.classPrivateFieldLooseBase(this,nl)[nl].destroy()}babelHelpers.classPrivateFieldLooseBase(this,nl)[nl]=new rl({targetNode:e.targetNode,events:{onSelect:e=>{this.getEditor().dispatchCommand(al,e.getData().smiley);babelHelpers.classPrivateFieldLooseBase(this,nl)[nl].hide()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,nl)[nl]=null}}});babelHelpers.classPrivateFieldLooseBase(this,nl)[nl].show();return true}),L.COMMAND_PRIORITY_LOW))}function gl(){this.getEditor().getComponentRegistry().register("smileys",(()=>{const e=new ve;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(ol,{targetNode:e.getContainer()})}))}));return e}))}var vl=Object.freeze({INSERT_SMILEY_COMMAND:al,INSERT_SMILEY_DIALOG_COMMAND:ol,SmileyPlugin:bl,SmileyNode:Zo,$isSmileyNode:el,$createSmileyNode:tl,SmileyDialog:rl});let fl=e=>e,Pl,ml;var Ll=babelHelpers.classPrivateFieldLooseKey("refs");var yl=babelHelpers.classPrivateFieldLooseKey("figureResizer");var Fl=babelHelpers.classPrivateFieldLooseKey("trusted");var Hl=babelHelpers.classPrivateFieldLooseKey("render");var Bl=babelHelpers.classPrivateFieldLooseKey("getContainer");var Cl=babelHelpers.classPrivateFieldLooseKey("getVideo");var Ol=babelHelpers.classPrivateFieldLooseKey("handleResize");var Tl=babelHelpers.classPrivateFieldLooseKey("handleResizeEnd");class El extends Rs{constructor(e){super(e);Object.defineProperty(this,Tl,{value:Sl});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,Ll,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,yl,{writable:true,value:null});Object.defineProperty(this,Fl,{writable:true,value:false});babelHelpers.classPrivateFieldLooseBase(this,Fl)[Fl]=F.Type.isStringFilled(this.getOption("provider"));babelHelpers.classPrivateFieldLooseBase(this,yl)[yl]=new ai({target:babelHelpers.classPrivateFieldLooseBase(this,Cl)[Cl](),editor:this.getEditor(),minWidth:120,minHeight:120,freeTransform:true,events:{onResize:babelHelpers.classPrivateFieldLooseBase(this,Ol)[Ol].bind(this),onResizeEnd:babelHelpers.classPrivateFieldLooseBase(this,Tl)[Tl].bind(this)}});this.getNodeSelection().onSelect((e=>{if(e||babelHelpers.classPrivateFieldLooseBase(this,yl)[yl].isResizing()){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Bl)[Bl](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,yl)[yl].show()}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Bl)[Bl](),"--selected");babelHelpers.classPrivateFieldLooseBase(this,yl)[yl].hide()}}));this.update(this.getOptions());babelHelpers.classPrivateFieldLooseBase(this,Hl)[Hl]()}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,Cl)[Cl](),{attrs:{width:t},style:{width:t,height:"auto",aspectRatio:i}})}}function Nl(){F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,Bl)[Bl](),this.getTarget())}function _l(){return babelHelpers.classPrivateFieldLooseBase(this,Ll)[Ll].remember("container",(()=>F.Tag.render(Pl||(Pl=fl`
<div class="ui-text-editor-video-component">
<div class="ui-text-editor-video-object-container">${0}</div>
${0}
</div>
`),babelHelpers.classPrivateFieldLooseBase(this,Cl)[Cl](),babelHelpers.classPrivateFieldLooseBase(this,yl)[yl].getContainer())))}function Ml(){return babelHelpers.classPrivateFieldLooseBase(this,Ll)[Ll].remember("video",(()=>{var e,t;let s=null;const i=this.getOption("src");if(babelHelpers.classPrivateFieldLooseBase(this,Fl)[Fl]){s=F.Tag.render(ml||(ml=fl`<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(xl(t)&&t.getWidth()===0){const[s,i]=Ii(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 Dl(e){this.update(e.getData())}function Sl(e){this.setSelected(true);this.getEditor().update((()=>{const t=L.$getNodeByKey(this.getNodeKey());if(xl(t)){const{width:s,height:i}=e.getData();t.setWidthAndHeight(s,i)}}))}class Rl 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 Rl(e.__src,e.__width,e.__height,e.__key)}static importJSON(e){const{width:t,height:s,src:i}=e;return Il({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:El,options:{src:this.getSrc(),width:this.getWidth(),height:this.getHeight(),provider:this.getProvider(),config:t}}}isInline(){return true}}Rl.useDecoratorComponent=true;function Il({src:e,width:t,height:s,key:i}){return L.$applyNodeReplacement(new Rl(e,t,s,i))}function xl(e){return e instanceof Rl}let wl=e=>e,Al,$l,Kl;var jl=babelHelpers.classPrivateFieldLooseKey("popup");var kl=babelHelpers.classPrivateFieldLooseKey("videoUrl");var Ul=babelHelpers.classPrivateFieldLooseKey("targetContainer");var Wl=babelHelpers.classPrivateFieldLooseKey("refs");var Yl=babelHelpers.classPrivateFieldLooseKey("handleSaveBtnClick");var zl=babelHelpers.classPrivateFieldLooseKey("handleTextBoxKeyDown");var Xl=babelHelpers.classPrivateFieldLooseKey("handleTextBoxInput");var Gl=babelHelpers.classPrivateFieldLooseKey("handleCancelBtnClick");class Vl extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,Gl,{value:Zl});Object.defineProperty(this,Xl,{value:Ql});Object.defineProperty(this,zl,{value:ql});Object.defineProperty(this,Yl,{value:Jl});Object.defineProperty(this,jl,{writable:true,value:null});Object.defineProperty(this,kl,{writable:true,value:""});Object.defineProperty(this,Ul,{writable:true,value:null});Object.defineProperty(this,Wl,{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,jl)[jl]!==null&&babelHelpers.classPrivateFieldLooseBase(this,jl)[jl].isShown()}destroy(){this.getPopup().destroy()}setVideoUrl(e){if(F.Type.isString(e)){babelHelpers.classPrivateFieldLooseBase(this,kl)[kl]=aa(e)}}getVideoUrl(){return babelHelpers.classPrivateFieldLooseBase(this,kl)[kl]}setTargetContainer(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,Ul)[Ul]=e}}getTargetContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ul)[Ul]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,jl)[jl]===null){babelHelpers.classPrivateFieldLooseBase(this,jl)[jl]=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,jl)[jl]}getContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Wl)[Wl].remember("container",(()=>F.Tag.render(Al||(Al=wl`
<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,Yl)[Yl].bind(this),babelHelpers.classPrivateFieldLooseBase(this,Gl)[Gl].bind(this),this.getStatusContainer())))}getUrlTextBox(){return babelHelpers.classPrivateFieldLooseBase(this,Wl)[Wl].remember("url-textbox",(()=>F.Tag.render($l||($l=wl`
<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,zl)[zl].bind(this),babelHelpers.classPrivateFieldLooseBase(this,Xl)[Xl].bind(this))))}getStatusContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Wl)[Wl].remember("status",(()=>F.Tag.render(Kl||(Kl=wl`
<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 Jl(){const e=this.getUrlTextBox().value.trim();if(e.length>0){this.setVideoUrl(e);this.emit("onSave")}else{this.getUrlTextBox().focus()}}function ql(e){if(e.key==="Enter"){e.preventDefault();babelHelpers.classPrivateFieldLooseBase(this,Yl)[Yl]()}}function Ql(e){this.emit("onInput")}function Zl(){this.emit("onCancel")}function en(e){return/^(http:|https:|\/)/i.test(e)}const tn=L.createCommand("INSERT_VIDEO_COMMAND");const sn=L.createCommand("INSERT_VIDEO_DIALOG_COMMAND");var rn=babelHelpers.classPrivateFieldLooseKey("videoDialog");var an=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var on=babelHelpers.classPrivateFieldLooseKey("lastSelection");var ln=babelHelpers.classPrivateFieldLooseKey("registerCommands");var nn=babelHelpers.classPrivateFieldLooseKey("restoreSelection");var dn=babelHelpers.classPrivateFieldLooseKey("handleDialogDestroy");var cn=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var hn=babelHelpers.classPrivateFieldLooseKey("registerComponents");class bn extends re{constructor(e){super(e);Object.defineProperty(this,hn,{value:fn});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,rn,{writable:true,value:null});Object.defineProperty(this,an,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,cn)[cn].bind(this)});Object.defineProperty(this,on,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,ln)[ln]();babelHelpers.classPrivateFieldLooseBase(this,hn)[hn]()}static getName(){return"Video"}static getNodes(e){return[Rl]}importBBCode(){return{video:()=>({conversion:e=>{const t=e.getContent().trim();const s=Number(e.getAttribute("width"));const i=Number(e.getAttribute("height"));if(en(t)){return{node:Il({src:aa(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:Rl}],bbcodeMap:{video:"video"}}}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,rn)[rn]!==null){babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].destroy()}}}function un(){this.cleanUpRegister(this.getEditor().registerCommand(tn,(e=>{if(F.Type.isPlainObject(e)&&en(e.src)){const t=Il({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(sn,(()=>{const e=L.$getSelection();if(!L.$isRangeSelection(e)){return false}babelHelpers.classPrivateFieldLooseBase(this,on)[on]=e.clone();if(babelHelpers.classPrivateFieldLooseBase(this,rn)[rn]!==null){babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].destroy()}this.getEditor().dispatchCommand(H);babelHelpers.classPrivateFieldLooseBase(this,rn)[rn]=new Vl({targetContainer:document.body,events:{onSave:()=>{const e=babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].getVideoUrl();if(!F.Type.isStringFilled(e)){babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].hide();return}if(!en(e)){babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].showError(F.Loc.getMessage("TEXT_EDITOR_INVALID_URL"));return}this.getEditor().dispatchCommand(tn,{src:e});babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].hide()},onInput:()=>{babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].clearError()},onCancel:()=>{babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].hide()},onShow:()=>{if(ta(babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].getPopup(),this.getEditor())){F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,an)[an]);this.getEditor().highlightSelection()}},onClose:()=>{babelHelpers.classPrivateFieldLooseBase(this,dn)[dn]()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,dn)[dn]()}}});babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,rn)[rn]!==null){babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].hide()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,rn)[rn]!==null&&babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].isShown()),L.COMMAND_PRIORITY_LOW))}function pn(){const e=L.$getSelection();if(!L.$isRangeSelection(e)&&babelHelpers.classPrivateFieldLooseBase(this,on)[on]!==null){L.$setSelection(babelHelpers.classPrivateFieldLooseBase(this,on)[on]);babelHelpers.classPrivateFieldLooseBase(this,on)[on]=null;return true}return false}function gn(){babelHelpers.classPrivateFieldLooseBase(this,rn)[rn]=null;F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,an)[an]);this.getEditor().resetHighlightSelection();this.getEditor().update((()=>{if(!babelHelpers.classPrivateFieldLooseBase(this,nn)[nn]()){this.getEditor().focus()}}))}function vn(){this.getEditor().update((()=>{ta(babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].getPopup(),this.getEditor())}))}function fn(){this.getEditor().getComponentRegistry().register("video",(()=>{const e=new ve;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,rn)[rn]!==null&&babelHelpers.classPrivateFieldLooseBase(this,rn)[rn].isShown()){return}this.getEditor().focus((()=>{this.getEditor().dispatchCommand(sn)}))}));return e}))}var Pn=Object.freeze({VideoNode:Rl,$createVideoNode:Il,$isVideoNode:xl,INSERT_VIDEO_COMMAND:tn,INSERT_VIDEO_DIALOG_COMMAND:sn,VideoPlugin:bn});function mn(e){let t=R.map((t=>t(e))).filter(Boolean).join(", ").toLocaleLowerCase();if(t!==""){t=`format: ${t}`}return t}function Ln(e){if(xt(e)){const t=e;return`{ ${t.__highlightType}: "${yn(t.getTextContent())}" }`}if($t(e)){const t=e;return`{ children: ${t.getChildrenSize()} }`}if(L.$isTextNode(e)){const t=e.getTextContent();const s=t.length===0?"(empty)":`"${yn(t)}"`;const i=Fn(e);return[s,i.length>0?`{ ${i} }`:null].filter(Boolean).join(" ").trim()}if(Mi(e)){const t=e;return`{ id: ${t.getId()}, width: ${t.getWidth()}, height: ${t.getHeight()} }`}if(Ri(e)){const t=e;return`{ id: ${t.getId()} }`}if(tr(e)){const t=e;return`{ id: ${t.getId()} }`}if(el(e)){const t=e;return`{ typing: ${t.getTyping()}, width: ${t.getWidth()}, height: ${t.getHeight()} }`}if(xl(e)){const t=e;return`{ width: ${t.getWidth()}, height: ${t.getHeight()} }`}if(Ka(e)){const t=e;return`{ entityId: ${t.getEntityId()}, id: ${t.getId()} }`}if(Gr(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)":`"${yn(s)}"`;const r=Hn(t);return[i,r.length>0?`{ ${r} }`:null].filter(Boolean).join(" ").trim()}return""}function yn(e){return Object.entries(M).reduce(((e,[t,s])=>e.replace(new RegExp(t,"g"),String(s))),e)}function Fn(e){return[mn(e),Tn(e),En(e)].filter(Boolean).join(", ")}function Hn(e){return[Bn(e),Cn(e),On(e)].filter(Boolean).join(", ")}function Bn(e){let t=e.getTarget();if(!F.Type.isNil(t)){t=`target: ${t}`}return t}function Cn(e){let t=e.getRel();if(!F.Type.isNil(t)){t=`rel: ${t}`}return t}function On(e){let t=e.getTitle();if(!F.Type.isNil(t)){t=`title: ${t}`}return t}function Tn(e){let t=I.map((t=>t(e))).filter(Boolean).join(", ").toLocaleLowerCase();if(t!==""){t=`detail: ${t}`}return t}function En(e){let t=x.map((t=>t(e))).filter(Boolean).join(", ").toLocaleLowerCase();if(t!==""){t=`mode: ${t}`}return t}function Nn(e){if(!L.$isNodeSelection(e)){return""}return`: node\n \u2514 [${[...e._nodes].join(", ")}]`}function _n(e){let t="";const s=mn(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 Mn(e){return`: table\n \u2514 { table: ${e.tableKey}, anchorCell: ${e.anchor.key}, focusCell: ${e.focus.key} }`}function Dn(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)){Dn(e,t,s.concat(i===r-1?S.ancestorIsLastChild:S.ancestorHasNextSibling))}}))}function Sn(e){const t=e.getEditorState();let s=" root\n";const i=t.read((()=>{const e=L.$getSelection();Dn(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} ${Ln(t)}\n`;s+=Rn({indent:i,isSelected:l,node:t,nodeKeyDisplay:a,selection:e,typeDisplay:o})}));if(e===null){return": null"}if(L.$isRangeSelection(e)){return _n(e)}if(h.$isTableSelection(e)){return Mn(e)}return Nn(e)}));s+=`\n selection${i}`;return s}function Rn({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]=In(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 In(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 xn(e){return[...e].reduce(((e,t)=>Math.trunc(Math.imul(31,e)+t.codePointAt(0))),0)}function wn(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 An={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 $n;var Kn=babelHelpers.classPrivateFieldLooseKey("pluginConstructors");var jn=babelHelpers.classPrivateFieldLooseKey("plugins");var kn=babelHelpers.classPrivateFieldLooseKey("availablePlugins");$n=Symbol.iterator;class Un{constructor(e=[],t=[],s=[]){Object.defineProperty(this,Kn,{writable:true,value:new Map});Object.defineProperty(this,jn,{writable:true,value:new Map});Object.defineProperty(this,kn,{writable:true,value:new Map});for(const t of e){if(t.getName()){babelHelpers.classPrivateFieldLooseBase(this,kn)[kn].set(t.getName(),t)}}for(const e of t){if(F.Type.isFunction(e)&&e.getName()&&!babelHelpers.classPrivateFieldLooseBase(this,kn)[kn].has(e.getName())){babelHelpers.classPrivateFieldLooseBase(this,kn)[kn].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,kn)[kn].get(e))}));i.map((e=>F.Type.isFunction(e)?e:babelHelpers.classPrivateFieldLooseBase(this,kn)[kn].get(e))).forEach((e=>{if(F.Type.isFunction(e)){babelHelpers.classPrivateFieldLooseBase(this,Kn)[Kn].set(e.getName(),e)}}))}init(e){const t=[];for(const[,s]of babelHelpers.classPrivateFieldLooseBase(this,Kn)[Kn]){const i=new s(e);if(!(i instanceof re)){throw new TypeError("TextEditor: a plugin must be an instance of TextEditor.BasePlugin.")}babelHelpers.classPrivateFieldLooseBase(this,jn)[jn].set(s.getName(),i);t.push(i)}t.forEach((e=>{e.afterInit()}))}getConstructors(){return[...babelHelpers.classPrivateFieldLooseBase(this,Kn)[Kn].values()]}getPlugins(){return babelHelpers.classPrivateFieldLooseBase(this,jn)[jn]}[$n](){return babelHelpers.classPrivateFieldLooseBase(this,jn)[jn][Symbol.iterator]()}get(e){const t=F.Type.isFunction(e)?e.getName():e;return babelHelpers.classPrivateFieldLooseBase(this,jn)[jn].get(t)||null}has(e){const t=F.Type.isFunction(e)?e.getName():e;return babelHelpers.classPrivateFieldLooseBase(this,jn)[jn].has(t)}}var Wn=babelHelpers.classPrivateFieldLooseKey("components");var Yn=babelHelpers.classPrivateFieldLooseKey("normalizeName");class zn{constructor(){Object.defineProperty(this,Wn,{writable:true,value:new Map})}register(e,t){babelHelpers.classPrivateFieldLooseBase(this,Wn)[Wn].set(babelHelpers.classPrivateFieldLooseBase(this.constructor,Yn)[Yn](e),{callback:t})}create(e){const t=babelHelpers.classPrivateFieldLooseBase(this,Wn)[Wn].get(babelHelpers.classPrivateFieldLooseBase(this.constructor,Yn)[Yn](e));return t?t.callback():null}}function Xn(e){return String(e).toLowerCase()}Object.defineProperty(zn,Yn,{value:Xn});var Gn=babelHelpers.classPrivateFieldLooseKey("editor");var Vn=babelHelpers.classPrivateFieldLooseKey("nodeTypeToBBCodeType");var Jn=babelHelpers.classPrivateFieldLooseKey("nodeValidation");var qn=babelHelpers.classPrivateFieldLooseKey("initNodeValidation");var Qn=babelHelpers.classPrivateFieldLooseKey("handleNodeTransform");class Zn{constructor(e){Object.defineProperty(this,Qn,{value:td});Object.defineProperty(this,qn,{value:ed});Object.defineProperty(this,Gn,{writable:true,value:null});Object.defineProperty(this,Vn,{writable:true,value:new Map});Object.defineProperty(this,Jn,{writable:true,value:new Map});babelHelpers.classPrivateFieldLooseBase(this,Gn)[Gn]=e;babelHelpers.classPrivateFieldLooseBase(this,qn)[qn]()}isNodeAllowed(e,t){const s=F.Type.isString(e)?e:babelHelpers.classPrivateFieldLooseBase(this,Vn)[Vn].get(e.getType());const i=F.Type.isString(t)?t:babelHelpers.classPrivateFieldLooseBase(this,Vn)[Vn].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,Gn)[Gn].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 ed(){const e=babelHelpers.classPrivateFieldLooseBase(this,Qn)[Qn].bind(this);for(const[,t]of babelHelpers.classPrivateFieldLooseBase(this,Gn)[Gn].getPlugins()){const s=t.validateScheme();if(!F.Type.isPlainObject(s)){continue}if(F.Type.isArrayFilled(s.nodes)){s.nodes.forEach((t=>{babelHelpers.classPrivateFieldLooseBase(this,Gn)[Gn].registerNodeTransform(t.nodeClass,e);if(F.Type.isFunction(t.validate)){babelHelpers.classPrivateFieldLooseBase(this,Jn)[Jn].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,Vn)[Vn].set(e,t)}}}}function td(e){const{validate:t=null}=babelHelpers.classPrivateFieldLooseBase(this,Jn)[Jn].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 sd extends re{constructor(e){super(e);this.cleanUpRegister(c.registerRichText(e.getLexicalEditor()))}static getName(){return"RichText"}}class id 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:rd,priority:0}),tr:()=>({conversion:()=>({node:null}),priority:0}),td:()=>({conversion:()=>({node:null}),priority:0}),th:()=>({conversion:()=>({node:null}),priority:0})}}}function rd(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 ad extends re{static getName(){return"Clipboard"}static getNodes(e){const t=[];const s=e.getPlugins().getConstructors().some((e=>e.getName()==="Table"));if(!s){t.push(id)}return t}}var od=babelHelpers.classPrivateFieldLooseKey("registerComponents");class ld extends re{constructor(e){super(e);Object.defineProperty(this,od,{value:nd});babelHelpers.classPrivateFieldLooseBase(this,od)[od]()}static getName(){return"Bold"}importBBCode(){return{b:()=>({conversion:A,priority:0}),color:()=>({conversion:A,priority:0}),background:()=>({conversion:A,priority:0}),size:()=>({conversion:A,priority:0})}}exportBBCode(){return{"text:bold":(e,t)=>{if(e.hasFormat("bold")){return Q(t,"b",this.getEditor())}return null}}}}function nd(){this.getEditor().getComponentRegistry().register("bold",(()=>{const e=new ve;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 dd=Object.freeze({BoldPlugin:ld});var cd=babelHelpers.classPrivateFieldLooseKey("registerComponents");class hd extends re{constructor(e){super(e);Object.defineProperty(this,cd,{value:bd});babelHelpers.classPrivateFieldLooseBase(this,cd)[cd]()}static getName(){return"Italic"}importBBCode(){return{i:()=>({conversion:A,priority:0})}}exportBBCode(){return{"text:italic":(e,t)=>{if(e.hasFormat("italic")){return Q(t,"i",this.getEditor())}return null}}}}function bd(){this.getEditor().getComponentRegistry().register("italic",(()=>{const e=new ve;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 ud=Object.freeze({ItalicPlugin:hd});var pd=babelHelpers.classPrivateFieldLooseKey("registerKeyModifierCommand");var gd=babelHelpers.classPrivateFieldLooseKey("registerComponents");class vd extends re{constructor(e){super(e);Object.defineProperty(this,gd,{value:Pd});Object.defineProperty(this,pd,{value:fd});babelHelpers.classPrivateFieldLooseBase(this,gd)[gd]();babelHelpers.classPrivateFieldLooseBase(this,pd)[pd]()}static getName(){return"Strikethrough"}importBBCode(){return{s:()=>({conversion:A,priority:0}),del:()=>({conversion:A,priority:0})}}exportBBCode(){return{"text:strikethrough":(e,t)=>{if(e.hasFormat("strikethrough")){return Q(t,"s",this.getEditor())}return null}}}}function fd(){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 Pd(){this.getEditor().getComponentRegistry().register("strikethrough",(()=>{const e=new ve;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 md=Object.freeze({StrikethroughPlugin:vd});var Ld=babelHelpers.classPrivateFieldLooseKey("registerComponents");class yd extends re{constructor(e){super(e);Object.defineProperty(this,Ld,{value:Fd});babelHelpers.classPrivateFieldLooseBase(this,Ld)[Ld]()}static getName(){return"Underline"}importBBCode(){return{u:()=>({conversion:A,priority:0})}}exportBBCode(){return{"text:underline":(e,t)=>{if(e.hasFormat("underline")){return Q(t,"u",this.getEditor())}return null}}}}function Fd(){this.getEditor().getComponentRegistry().register("underline",(()=>{const e=new ve;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 Hd=Object.freeze({UnderlinePlugin:yd});const Bd=L.createCommand("CLEAR_FORMATTING_COMMAND");var Cd=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Od=babelHelpers.classPrivateFieldLooseKey("registerComponents");class Td extends re{constructor(e){super(e);Object.defineProperty(this,Od,{value:Nd});Object.defineProperty(this,Cd,{value:Ed});babelHelpers.classPrivateFieldLooseBase(this,Cd)[Cd]();babelHelpers.classPrivateFieldLooseBase(this,Od)[Od]()}static getName(){return"ClearFormat"}}function Ed(){this.cleanUpRegister(this.getEditor().registerCommand(Bd,(()=>{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 Nd(){this.getEditor().getComponentRegistry().register("clear-format",(()=>{const e=new ve;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(Bd)}))}));return e}))}let _d=e=>e,Md,Dd,Sd;var Rd=babelHelpers.classPrivateFieldLooseKey("popup");var Id=babelHelpers.classPrivateFieldLooseKey("editMode");var xd=babelHelpers.classPrivateFieldLooseKey("autoLinkMode");var wd=babelHelpers.classPrivateFieldLooseKey("linkUrl");var Ad=babelHelpers.classPrivateFieldLooseKey("targetContainer");var $d=babelHelpers.classPrivateFieldLooseKey("refs");var Kd=babelHelpers.classPrivateFieldLooseKey("handleSaveBtnClick");var jd=babelHelpers.classPrivateFieldLooseKey("handleLinkTextBoxKeyDown");var kd=babelHelpers.classPrivateFieldLooseKey("handleCancelBtnClick");var Ud=babelHelpers.classPrivateFieldLooseKey("handleEditBtnClick");var Wd=babelHelpers.classPrivateFieldLooseKey("handleUnlinkBtnClick");class Yd extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,Wd,{value:Jd});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,Rd,{writable:true,value:null});Object.defineProperty(this,Id,{writable:true,value:null});Object.defineProperty(this,xd,{writable:true,value:null});Object.defineProperty(this,wd,{writable:true,value:""});Object.defineProperty(this,Ad,{writable:true,value:null});Object.defineProperty(this,$d,{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,wd)[wd]==="")}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,Rd)[Rd]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd].isShown()}hide(){this.getPopup().close()}destroy(){this.getPopup().destroy()}setAutoLinkMode(e=true){if(e===babelHelpers.classPrivateFieldLooseBase(this,xd)[xd]){return}if(e){F.Dom.addClass(this.getContainer(),"--auto-link-mode")}else{F.Dom.removeClass(this.getContainer(),"--auto-link-mode")}if(babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd].adjustPosition()}babelHelpers.classPrivateFieldLooseBase(this,xd)[xd]=e}setEditMode(e=true){if(e===babelHelpers.classPrivateFieldLooseBase(this,Id)[Id]){return}if(e){F.Dom.addClass(this.getContainer(),"--edit-mode")}else{F.Dom.removeClass(this.getContainer(),"--edit-mode")}if(babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd].adjustPosition()}babelHelpers.classPrivateFieldLooseBase(this,Id)[Id]=e}setLinkUrl(e){if(F.Type.isString(e)){babelHelpers.classPrivateFieldLooseBase(this,wd)[wd]=aa(e);this.getLinkTextBox().value=babelHelpers.classPrivateFieldLooseBase(this,wd)[wd];this.getLinkLabel().textContent=babelHelpers.classPrivateFieldLooseBase(this,wd)[wd];this.getLinkLabel().href=babelHelpers.classPrivateFieldLooseBase(this,wd)[wd]}}getLinkUrl(){return babelHelpers.classPrivateFieldLooseBase(this,wd)[wd]}setTargetContainer(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,Ad)[Ad]=e}}getTargetContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Ad)[Ad]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd]===null){babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd]=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,Id)[Id]){this.getLinkTextBox().focus()}}}})}return babelHelpers.classPrivateFieldLooseBase(this,Rd)[Rd]}getContainer(){return babelHelpers.classPrivateFieldLooseBase(this,$d)[$d].remember("container",(()=>F.Tag.render(Md||(Md=_d`
<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,Kd)[Kd].bind(this),babelHelpers.classPrivateFieldLooseBase(this,kd)[kd].bind(this),this.getLinkLabel(),babelHelpers.classPrivateFieldLooseBase(this,Ud)[Ud].bind(this),babelHelpers.classPrivateFieldLooseBase(this,Wd)[Wd].bind(this))))}getLinkTextBox(){return babelHelpers.classPrivateFieldLooseBase(this,$d)[$d].remember("link-textbox",(()=>F.Tag.render(Dd||(Dd=_d`
<input
type="text"
class="ui-ctl-element"
placeholder="https://"
value="${0}"
onkeydown="${0}"
data-testid="link-textbox-input"
>
`),this.getLinkUrl(),babelHelpers.classPrivateFieldLooseBase(this,jd)[jd].bind(this))))}getLinkLabel(){return babelHelpers.classPrivateFieldLooseBase(this,$d)[$d].remember("link-label",(()=>F.Tag.render(Sd||(Sd=_d`
<a href="" target="_blank" class="ui-text-editor-link-label"></a>
`))))}}function zd(){const e=this.getLinkTextBox().value.trim();if(e.length>0){this.setLinkUrl(e);this.emit("onSave")}else{this.getLinkTextBox().focus()}}function Xd(e){if(e.key==="Enter"){e.preventDefault();babelHelpers.classPrivateFieldLooseBase(this,Kd)[Kd]()}}function Gd(){this.emit("onCancel")}function Vd(){this.setEditMode(true);this.getLinkTextBox().focus();this.getLinkTextBox().select()}function Jd(){this.emit("onUnlink")}function qd(e){return/^(http:|https:|mailto:|tel:|sms:)/i.test(e)}const Qd=L.createCommand("INSERT_LINK_DIALOG_COMMAND");var Zd=babelHelpers.classPrivateFieldLooseKey("linkEditor");var ec=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var tc=babelHelpers.classPrivateFieldLooseKey("lastSelection");var sc=babelHelpers.classPrivateFieldLooseKey("registerListeners");var ic=babelHelpers.classPrivateFieldLooseKey("registerCommands");var rc=babelHelpers.classPrivateFieldLooseKey("registerToggleLinkCommand");var ac=babelHelpers.classPrivateFieldLooseKey("registerInsertLinkCommand");var oc=babelHelpers.classPrivateFieldLooseKey("restoreSelection");var lc=babelHelpers.classPrivateFieldLooseKey("handleDialogDestroy");var nc=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var dc=babelHelpers.classPrivateFieldLooseKey("registerKeyModifierCommand");var cc=babelHelpers.classPrivateFieldLooseKey("registerPasteCommand");var hc=babelHelpers.classPrivateFieldLooseKey("insertLink");var bc=babelHelpers.classPrivateFieldLooseKey("isLinkSelected");var uc=babelHelpers.classPrivateFieldLooseKey("convertAutoLinkToLink");var pc=babelHelpers.classPrivateFieldLooseKey("registerComponents");class gc extends re{constructor(e){super(e);Object.defineProperty(this,pc,{value:Ec});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,Zd,{writable:true,value:null});Object.defineProperty(this,ec,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,nc)[nc].bind(this)});Object.defineProperty(this,tc,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,ic)[ic]();babelHelpers.classPrivateFieldLooseBase(this,sc)[sc]();babelHelpers.classPrivateFieldLooseBase(this,pc)[pc]()}static getName(){return"Link"}static getNodes(e){return[P.LinkNode]}importBBCode(){return{url:()=>({conversion:e=>{let t=e.getValue();if(!qd(t)){t=e.toPlainText();if(!qd(t)){return{node:null}}}return{node:P.$createLinkNode(aa(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,Zd)[Zd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd].destroy()}}}function vc(){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 fc(){this.cleanUpRegister(babelHelpers.classPrivateFieldLooseBase(this,rc)[rc](),babelHelpers.classPrivateFieldLooseBase(this,ac)[ac](),babelHelpers.classPrivateFieldLooseBase(this,dc)[dc](),babelHelpers.classPrivateFieldLooseBase(this,cc)[cc]())}function Pc(){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(qd(s)){if(t.isCollapsed()&&!babelHelpers.classPrivateFieldLooseBase(this,bc)[bc](t)){babelHelpers.classPrivateFieldLooseBase(this,hc)[hc](t,s,r,i)}else{P.$toggleLink(s,r)}return true}return false}return false}),L.COMMAND_PRIORITY_LOW)}function mc(){return y.mergeRegister(this.getEditor().registerCommand(Qd,(e=>{const t=L.$getSelection();if(!L.$isRangeSelection(t)||!this.getEditor().isEditable()){return false}babelHelpers.classPrivateFieldLooseBase(this,tc)[tc]=t.clone();if(babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd].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=ee(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,Zd)[Zd]=new Yd({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(!qd(i)){i=`${r}${i}`;t.setLinkUrl(i)}if(s===null){this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,oc)[oc]();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,tc)[tc]=e.clone()}if(!L.$isRangeSelection(e)||e.isCollapsed()){t.hide()}babelHelpers.classPrivateFieldLooseBase(this,uc)[uc](e)}))}else{this.getEditor().update((()=>{s.setURL(i);babelHelpers.classPrivateFieldLooseBase(this,uc)[uc](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(ta(babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd].getPopup(),this.getEditor())){F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,ec)[ec]);this.getEditor().highlightSelection()}},onClose:()=>{babelHelpers.classPrivateFieldLooseBase(this,lc)[lc]()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,lc)[lc]()}}});babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd].show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd]!==null){babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd].destroy()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd].isShown()),L.COMMAND_PRIORITY_LOW))}function Lc(){const e=L.$getSelection();if(!L.$isRangeSelection(e)&&babelHelpers.classPrivateFieldLooseBase(this,tc)[tc]!==null){L.$setSelection(babelHelpers.classPrivateFieldLooseBase(this,tc)[tc]);babelHelpers.classPrivateFieldLooseBase(this,tc)[tc]=null;return true}return false}function yc(){babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd]=null;F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,ec)[ec]);this.getEditor().resetHighlightSelection();this.getEditor().update((()=>{if(!babelHelpers.classPrivateFieldLooseBase(this,oc)[oc]()){this.getEditor().focus()}}))}function Fc(){this.getEditor().update((()=>{ta(babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd].getPopup(),this.getEditor())}))}function Hc(){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 Bc(){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(!qd(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 Cc(e,t,s,i){const r=aa(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 Oc(e){const t=ee(e);const s=t.getParent();return P.$isLinkNode(s)||P.$isLinkNode(t)}function Tc(e){if(L.$isRangeSelection(e)){const t=ee(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 Ec(){this.getEditor().getComponentRegistry().register("link",(()=>{const e=new ve;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,Zd)[Zd]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Zd)[Zd].isShown()){return}this.getEditor().focus((()=>{this.getEditor().dispatchCommand(Qd)}))}));return e}))}var Nc=Object.freeze({INSERT_LINK_DIALOG_COMMAND:Qd,LinkPlugin:gc});const _c=/((https?:\/\/(www\.)?)|(www\.))[\w#%+.:=@~-]{1,256}\.[\d()A-Za-z]{1,6}\b([\w#%&()+./:=?@[\]~-]*)(?<![%()+.:\]-])/;const Mc=/(([^\s"(),.:;<>@[\\\]]+(\.[^\s"(),.:;<>@[\\\]]+)*)|(".+"))@((\[(?:\d{1,3}\.){3}\d{1,3}])|(([\dA-Za-z-]+\.)+[A-Za-z]{2,}))/;const Dc=[xc(_c,(e=>e.startsWith("http")?e:`https://${e}`)),xc(Mc,(e=>`mailto:${e}`))];var Sc=babelHelpers.classPrivateFieldLooseKey("registerListeners");class Rc extends re{constructor(e){super(e);Object.defineProperty(this,Sc,{value:Ic});babelHelpers.classPrivateFieldLooseBase(this,Sc)[Sc]()}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 Ic(){const e=(e,t)=>{};this.cleanUpRegister(this.getEditor().registerNodeTransform(L.TextNode,(t=>{const s=t.getParentOrThrow();const i=t.getPreviousSibling();if(P.$isAutoLinkNode(s)){Xc(s,Dc,e)}else if(!P.$isLinkNode(s)){if(t.isSimpleText()&&(jc(t.getTextContent())||!P.$isAutoLinkNode(i))){zc(t,Dc,e)}Gc(t,Dc,e)}})))}function xc(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 wc(e,t){for(const s of t){const t=s(e);if(t){return t}}return null}const Ac=/[\s(),.;[\]]/;function $c(e){return Ac.test(e)}function Kc(e){return $c(e[e.length-1])}function jc(e){return $c(e[0])}function kc(e){return/^\.[\dA-Za-z]+/.test(e)}function Uc(e){let t=e.getPreviousSibling();if(L.$isElementNode(t)){t=t.getLastDescendant()}return t===null||L.$isLineBreakNode(t)||L.$isTextNode(t)&&Kc(t.getTextContent())}function Wc(e){let t=e.getNextSibling();if(L.$isElementNode(t)){t=t.getFirstDescendant()}return t===null||L.$isLineBreakNode(t)||L.$isTextNode(t)&&jc(t.getTextContent())}function Yc(e,t,s,i){const r=e>0?$c(s[e-1]):Uc(i);if(!r){return false}return t<s.length?$c(s[t]):Wc(i)}function zc(e,t,s){const i=e.getTextContent();let r=i;let a=0;let o=e;let l=wc(r,t);while(l!==null){const n=l.index;const d=l.length;const c=n+d;const h=Yc(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=wc(r,t)}}function Xc(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()){Vc(e);s(null,e.getURL());return}}const a=e.getTextContent();const o=wc(a,t);if(o===null||o.text!==a){Vc(e);s(null,e.getURL());return}if(!Uc(e)||!Wc(e)){Vc(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 Gc(e,t,s){const i=e.getPreviousSibling();const r=e.getNextSibling();const a=e.getTextContent();if(P.$isAutoLinkNode(i)&&(!jc(a)||kc(a))){i.append(e);Xc(i,t,s);s(null,i.getURL())}if(P.$isAutoLinkNode(r)&&!Kc(a)){Vc(r);Xc(r,t,s);s(null,r.getURL())}}function Vc(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 Jc=Object.freeze({AutoLinkPlugin:Rc});var qc=babelHelpers.classPrivateFieldLooseKey("registerListeners");class Qc extends re{constructor(e){super(e);Object.defineProperty(this,qc,{value:Zc});babelHelpers.classPrivateFieldLooseBase(this,qc)[qc]()}static getName(){return"TabIndent"}}function Zc(){this.cleanUpRegister(this.getEditor().registerCommand(L.KEY_TAB_COMMAND,(e=>{const t=L.$getSelection();if(!L.$isRangeSelection(t)){return false}e.preventDefault();return this.getEditor().dispatchCommand(e.shiftKey?L.OUTDENT_CONTENT_COMMAND:L.INDENT_CONTENT_COMMAND)}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(L.INDENT_CONTENT_COMMAND,(e=>{const t=L.$getSelection();return!eh(t)}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.OUTDENT_CONTENT_COMMAND,(e=>{const t=L.$getSelection();return!eh(t)}),L.COMMAND_PRIORITY_LOW))}function eh(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 th=Object.freeze({TabIndentPlugin:Qc});var sh=babelHelpers.classPrivateFieldLooseKey("registerListeners");var ih=babelHelpers.classPrivateFieldLooseKey("registerComponents");var rh=babelHelpers.classPrivateFieldLooseKey("isIndentPermitted");var ah=babelHelpers.classPrivateFieldLooseKey("getElementNodesInSelection");class oh extends re{constructor(e){super(e);Object.defineProperty(this,ah,{value:ch});Object.defineProperty(this,rh,{value:dh});Object.defineProperty(this,ih,{value:nh});Object.defineProperty(this,sh,{value:lh});babelHelpers.classPrivateFieldLooseBase(this,sh)[sh]();babelHelpers.classPrivateFieldLooseBase(this,ih)[ih]()}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 lh(){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,rh)[rh](1)),L.COMMAND_PRIORITY_CRITICAL))}function nh(){this.getEditor().getComponentRegistry().register("bulleted-list",(()=>{const e=new ve;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 ve;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 dh(e){const t=L.$getSelection();if(!L.$isRangeSelection(t)){return false}const s=babelHelpers.classPrivateFieldLooseBase(this,ah)[ah](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 ch(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 hh=Object.freeze({ListPlugin:oh});let bh=e=>e,uh,ph,gh,vh;var fh=babelHelpers.classPrivateFieldLooseKey("popup");var Ph=babelHelpers.classPrivateFieldLooseKey("targetNode");var mh=babelHelpers.classPrivateFieldLooseKey("refs");var Lh=babelHelpers.classPrivateFieldLooseKey("lastSelectedBox");var yh=babelHelpers.classPrivateFieldLooseKey("handleMouseMove");var Fh=babelHelpers.classPrivateFieldLooseKey("handleClick");var Hh=babelHelpers.classPrivateFieldLooseKey("highlightBoxes");class Bh extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,Hh,{value:Th});Object.defineProperty(this,Fh,{value:Oh});Object.defineProperty(this,yh,{value:Ch});Object.defineProperty(this,fh,{writable:true,value:null});Object.defineProperty(this,Ph,{writable:true,value:null});Object.defineProperty(this,mh,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,Lh,{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,fh)[fh]!==null&&babelHelpers.classPrivateFieldLooseBase(this,fh)[fh].isShown()}destroy(){this.getPopup().destroy()}setTargetNode(e){if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,Ph)[Ph]=e}}getTargetNode(){return babelHelpers.classPrivateFieldLooseBase(this,Ph)[Ph]}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,fh)[fh]===null){const e=this.getTargetNode();const t=e.getBoundingClientRect();const s=t.width;babelHelpers.classPrivateFieldLooseBase(this,fh)[fh]=new p.Popup({autoHide:true,closeByEsc:true,padding:0,content:F.Tag.render(uh||(uh=bh`
<div class="ui-text-editor-table-dialog" onclick="${0}">
${0}
${0}
</div>
`),babelHelpers.classPrivateFieldLooseBase(this,Fh)[Fh].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,Lh)[Lh]=null;babelHelpers.classPrivateFieldLooseBase(this,Hh)[Hh](1,1)}}})}return babelHelpers.classPrivateFieldLooseBase(this,fh)[fh]}getGridContainer(){return babelHelpers.classPrivateFieldLooseBase(this,mh)[mh].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(ph||(ph=bh`
<button
class="ui-text-editor-table-dialog-box"
data-column="${0}"
data-row="${0}"
></button>
`),i+1,s+1))}return F.Tag.render(gh||(gh=bh`
<div
class="ui-text-editor-table-dialog-grid"
onmousemove="${0}"
>${0}</div>
`),babelHelpers.classPrivateFieldLooseBase(this,yh)[yh].bind(this),e)}))}getCaptionContainer(){return babelHelpers.classPrivateFieldLooseBase(this,mh)[mh].remember("caption",(()=>F.Tag.render(vh||(vh=bh`<div class="ui-text-editor-table-dialog-caption"></div>`))))}}function Ch(e){if(babelHelpers.classPrivateFieldLooseBase(this,Lh)[Lh]!==e.target&&F.Dom.hasClass(e.target,"ui-text-editor-table-dialog-box")){const{row:t,column:s}=e.target.dataset;babelHelpers.classPrivateFieldLooseBase(this,Hh)[Hh](t,s);babelHelpers.classPrivateFieldLooseBase(this,Lh)[Lh]=e.target}}function Oh(e){if(babelHelpers.classPrivateFieldLooseBase(this,Lh)[Lh]){const{row:e,column:t}=babelHelpers.classPrivateFieldLooseBase(this,Lh)[Lh].dataset;this.emit("onSelect",{rows:e,columns:t})}}function Th(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 Eh=L.createCommand("INSERT_TABLE_DIALOG_COMMAND");var Nh=babelHelpers.classPrivateFieldLooseKey("tableDialog");var _h=babelHelpers.classPrivateFieldLooseKey("registerComponents");var Mh=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Dh=babelHelpers.classPrivateFieldLooseKey("registerListeners");class Sh extends re{constructor(e){super(e);Object.defineProperty(this,Dh,{value:xh});Object.defineProperty(this,Mh,{value:Ih});Object.defineProperty(this,_h,{value:Rh});Object.defineProperty(this,Nh,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,Mh)[Mh]();babelHelpers.classPrivateFieldLooseBase(this,Dh)[Dh]();babelHelpers.classPrivateFieldLooseBase(this,_h)[_h]()}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=>k(e)}),priority:0}),th:()=>({conversion:e=>({node:h.$createTableCellNode(h.TableCellHeaderStates.ROW),after:e=>k(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(j(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,Nh)[Nh]!==null){babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh].destroy()}}}function Rh(){this.getEditor().getComponentRegistry().register("table",(()=>{const e=new ve;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(Eh,{targetNode:e.getContainer()})}));return e}))}function Ih(){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(Eh,(e=>{if(!F.Type.isPlainObject(e)||!F.Type.isElementNode(e.targetNode)){return false}if(babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh]!==null){if(babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh].getTargetNode()===e.targetNode){babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh].show();return true}babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh].destroy()}babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh]=new Bh({targetNode:e.targetNode,events:{onSelect:e=>{this.getEditor().dispatchCommand(h.INSERT_TABLE_COMMAND,e.getData());babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh].hide()},onDestroy:()=>{babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh]=null}}});babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh].show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(H,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh]!==null){babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh].hide()}return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Nh)[Nh].isShown()),L.COMMAND_PRIORITY_LOW))}function xh(){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 wh=Object.freeze({INSERT_TABLE_DIALOG_COMMAND:Eh,TablePlugin:Sh});class Ah extends L.TextNode{static getType(){return"hashtag"}static clone(e){return new Ah(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=$h(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 $h(e=""){return L.$applyNodeReplacement(new Ah(e))}function Kh(e){return e instanceof Ah}var jh=babelHelpers.classPrivateFieldLooseKey("registerListeners");class kh extends re{constructor(e){super(e);Object.defineProperty(this,jh,{value:Uh});babelHelpers.classPrivateFieldLooseBase(this,jh)[jh]()}static getName(){return"Hashtag"}static getNodes(e){return[Ah]}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 Uh(){const e=e=>$h(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,Ah,e))}var Wh=Object.freeze({HashtagNode:Ah,$createHashtagNode:$h,$isHashtagNode:Kh,HashtagPlugin:kh});function Yh(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 zh=e=>e,Xh;const Gh=L.createCommand("INSERT_COPILOT_DIALOG_COMMAND");const Vh={INIT:"init",LOADING:"loading",LOADED:"loaded"};var Jh=babelHelpers.classPrivateFieldLooseKey("copilot");var qh=babelHelpers.classPrivateFieldLooseKey("copilotStatus");var Qh=babelHelpers.classPrivateFieldLooseKey("copilotOptions");var Zh=babelHelpers.classPrivateFieldLooseKey("targetParagraph");var eb=babelHelpers.classPrivateFieldLooseKey("lastSelection");var tb=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var sb=babelHelpers.classPrivateFieldLooseKey("triggerBySpace");var ib=babelHelpers.classPrivateFieldLooseKey("registerListeners");var rb=babelHelpers.classPrivateFieldLooseKey("registerParagraphNodeTransform");var ab=babelHelpers.classPrivateFieldLooseKey("registerComponents");var ob=babelHelpers.classPrivateFieldLooseKey("show");var lb=babelHelpers.classPrivateFieldLooseKey("hide");var nb=babelHelpers.classPrivateFieldLooseKey("createCopilot");var db=babelHelpers.classPrivateFieldLooseKey("resetLoader");var cb=babelHelpers.classPrivateFieldLooseKey("adjustDialogPosition");var hb=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var bb=babelHelpers.classPrivateFieldLooseKey("restoreSelection");var ub=babelHelpers.classPrivateFieldLooseKey("handleCopilotSave");var pb=babelHelpers.classPrivateFieldLooseKey("handleCopilotAddBelow");var gb=babelHelpers.classPrivateFieldLooseKey("handleCopilotHide");class vb extends re{constructor(e){super(e);Object.defineProperty(this,gb,{value:Nb});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,Jh,{writable:true,value:null});Object.defineProperty(this,qh,{writable:true,value:Vh.INIT});Object.defineProperty(this,Qh,{writable:true,value:null});Object.defineProperty(this,Zh,{writable:true,value:null});Object.defineProperty(this,eb,{writable:true,value:null});Object.defineProperty(this,tb,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,hb)[hb].bind(this)});Object.defineProperty(this,sb,{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,ib)[ib]();babelHelpers.classPrivateFieldLooseBase(this,ab)[ab]()}}static getName(){return"Copilot"}shouldTriggerBySpace(){return babelHelpers.classPrivateFieldLooseBase(this,sb)[sb]}isCopilotLoaded(){return babelHelpers.classPrivateFieldLooseBase(this,qh)[qh]===Vh.LOADED}isCopilotLoading(){return babelHelpers.classPrivateFieldLooseBase(this,qh)[qh]===Vh.LOADING}isCopilotShown(){return babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].isShown()}show({onShow:e,onError:t}={}){if(this.isCopilotLoaded()){babelHelpers.classPrivateFieldLooseBase(this,ob)[ob]({onShow:e})}else if(!this.isCopilotLoading()){babelHelpers.classPrivateFieldLooseBase(this,nb)[nb]().then((()=>{babelHelpers.classPrivateFieldLooseBase(this,ob)[ob]({onShow:e})})).catch((()=>{if(F.Type.isFunction(t)){t()}}))}}destroy(){super.destroy();if(babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh]!==null){babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].hide();babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh]=null}}}function fb(){babelHelpers.classPrivateFieldLooseBase(this,sb)[sb]=this.getEditor().getOption("copilot.triggerBySpace",false);this.cleanUpRegister(this.getEditor().registerCommand(Gh,(e=>{const t=F.Type.isPlainObject(e)?e:{};this.show(t);return true}),L.COMMAND_PRIORITY_EDITOR),this.getEditor().registerCommand(H,(()=>{babelHelpers.classPrivateFieldLooseBase(this,lb)[lb]();return false}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(B,(()=>this.isCopilotShown()),L.COMMAND_PRIORITY_LOW),babelHelpers.classPrivateFieldLooseBase(this,sb)[sb]?babelHelpers.classPrivateFieldLooseBase(this,rb)[rb]():()=>{})}function Pb(){return this.getEditor().registerNodeTransform(gt,(e=>{if(e.getChildrenSize()!==1||!L.$isRootNode(e.getParent())){return}if(!L.$isTextNode(e.getFirstChild())||e.getFirstChild().getTextContent()!==" "){babelHelpers.classPrivateFieldLooseBase(this,db)[db]();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,db)[db]();babelHelpers.classPrivateFieldLooseBase(this,Zh)[Zh]=this.getEditor().getElementByKey(e.getKey());if(babelHelpers.classPrivateFieldLooseBase(this,Zh)[Zh]){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Zh)[Zh],"ui-text-editor-loading-ellipsis")}}e.getFirstChild().remove();e.select();this.show({onShow:()=>babelHelpers.classPrivateFieldLooseBase(this,db)[db](),onError:()=>babelHelpers.classPrivateFieldLooseBase(this,db)[db]()})}))}function mb(){this.getEditor().getComponentRegistry().register("copilot",(()=>{const e=new ve;const t="--copilot-ai";const s="--refresh-5 ui-text-editor-copilot-loading";const i=F.Tag.render(Xh||(Xh=zh`
<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(Gh,{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 Lb({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,eb)[eb]=t.clone();const a=s.trim();if(a.length>0){babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].setSelectedText(a)}else{const e=L.$getRoot().getTextContent().trim();if(e.length>0){babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].setContext(e)}}babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].show({width:r});babelHelpers.classPrivateFieldLooseBase(this,cb)[cb]();F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,tb)[tb]);if(!t.isCollapsed()){this.getEditor().highlightSelection()}if(F.Type.isFunction(e)){e()}}))}function yb(){if(this.isCopilotLoaded()&&babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].isShown()){babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].hide()}}function Fb(){if(this.isDestroyed()){return Promise.reject(new Error("Copilot plugin was destroyed."))}babelHelpers.classPrivateFieldLooseBase(this,qh)[qh]=Vh.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,Jh)[Jh]=new s({showResultInCopilot:true,...babelHelpers.classPrivateFieldLooseBase(this,Qh)[Qh],autoHide:true});babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].subscribe(i.FINISH_INIT,(()=>{if(this.isDestroyed()){t(new Error("Copilot plugin was destroyed."));return}babelHelpers.classPrivateFieldLooseBase(this,qh)[qh]=Vh.LOADED;e()}));babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].subscribe(i.TEXT_SAVE,babelHelpers.classPrivateFieldLooseBase(this,ub)[ub].bind(this));babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].subscribe(i.TEXT_PLACE_BELOW,babelHelpers.classPrivateFieldLooseBase(this,pb)[pb].bind(this));babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].subscribe(i.HIDE,babelHelpers.classPrivateFieldLooseBase(this,gb)[gb].bind(this));babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].init()})).catch((()=>{t()}))}))}function Hb(){if(babelHelpers.classPrivateFieldLooseBase(this,Zh)[Zh]){F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Zh)[Zh],"ui-text-editor-loading-ellipsis")}}function Bb(){this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,bb)[bb]();const e=Vr(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,Jh)[Jh].adjust({hide:true})}else{babelHelpers.classPrivateFieldLooseBase(this,Jh)[Jh].adjust({hide:false,position:{left:s-o,top:i}})}}))}function Cb(){babelHelpers.classPrivateFieldLooseBase(this,cb)[cb]()}function Ob(){const e=L.$getSelection();if(!L.$isRangeSelection(e)&&babelHelpers.classPrivateFieldLooseBase(this,eb)[eb]!==null){L.$setSelection(babelHelpers.classPrivateFieldLooseBase(this,eb)[eb]);babelHelpers.classPrivateFieldLooseBase(this,eb)[eb]=null;return true}return false}function Tb(e){const{result:t}=e.getData();this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,bb)[bb]();const e=L.$getSelection();if(L.$isRangeSelection(e)){e.insertRawText(t)}babelHelpers.classPrivateFieldLooseBase(this,lb)[lb]()}))}function Eb(e){const{result:t}=e.getData();this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,bb)[bb]();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(...Yh(t));r.insertAfter(e)}else{e.insertLineBreak();e.insertRawText(t)}}babelHelpers.classPrivateFieldLooseBase(this,lb)[lb]()}))}function Nb(){F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,tb)[tb]);this.getEditor().resetHighlightSelection();this.getEditor().update((()=>{if(!babelHelpers.classPrivateFieldLooseBase(this,bb)[bb]()){this.getEditor().focus()}}))}var _b=babelHelpers.classPrivateFieldLooseKey("registerComponents");class Mb extends re{constructor(e){super(e);Object.defineProperty(this,_b,{value:Db});const t=u.createEmptyHistoryState();this.cleanUpRegister(u.registerHistory(e.getLexicalEditor(),t,1e3));babelHelpers.classPrivateFieldLooseBase(this,_b)[_b]()}static getName(){return"History"}}function Db(){let e=false;this.getEditor().getComponentRegistry().register("undo",(()=>{const t=new ve;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 ve;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 Sb=Object.freeze({HistoryPlugin:Mb});let Rb=e=>e,Ib,xb;const wb={DOWNWARD:1,UPWARD:-1,INDETERMINATE:0};const Ab="application/x-ui-text-editor-drag-block";var $b=babelHelpers.classPrivateFieldLooseKey("draggableBlockElement");var Kb=babelHelpers.classPrivateFieldLooseKey("lastBlockElementIndex");var jb=babelHelpers.classPrivateFieldLooseKey("lastTargetElement");var kb=babelHelpers.classPrivateFieldLooseKey("container");var Ub=babelHelpers.classPrivateFieldLooseKey("dropLine");var Wb=babelHelpers.classPrivateFieldLooseKey("isDragging");var Yb=babelHelpers.classPrivateFieldLooseKey("bodyDragDropHandler");var zb=babelHelpers.classPrivateFieldLooseKey("bodyDragOverHandler");var Xb=babelHelpers.classPrivateFieldLooseKey("registerEvents");var Gb=babelHelpers.classPrivateFieldLooseKey("registerListeners");var Vb=babelHelpers.classPrivateFieldLooseKey("handleMouseMove");var Jb=babelHelpers.classPrivateFieldLooseKey("handleMouseLeave");var qb=babelHelpers.classPrivateFieldLooseKey("findBlockElement");var Qb=babelHelpers.classPrivateFieldLooseKey("getCurrentIndex");var Zb=babelHelpers.classPrivateFieldLooseKey("updatePosition");var eu=babelHelpers.classPrivateFieldLooseKey("setDraggableBlockElement");var tu=babelHelpers.classPrivateFieldLooseKey("handleDragStart");var su=babelHelpers.classPrivateFieldLooseKey("handleDragEnd");var iu=babelHelpers.classPrivateFieldLooseKey("handleDragOver");var ru=babelHelpers.classPrivateFieldLooseKey("handleDragDrop");var au=babelHelpers.classPrivateFieldLooseKey("showDropLine");var ou=babelHelpers.classPrivateFieldLooseKey("hideDropLine");class lu extends re{constructor(e){super(e);Object.defineProperty(this,ou,{value:yu});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,$b,{writable:true,value:null});Object.defineProperty(this,Kb,{writable:true,value:Infinity});Object.defineProperty(this,jb,{writable:true,value:null});Object.defineProperty(this,kb,{writable:true,value:null});Object.defineProperty(this,Ub,{writable:true,value:null});Object.defineProperty(this,Wb,{writable:true,value:false});Object.defineProperty(this,Yb,{writable:true,value:null});Object.defineProperty(this,zb,{writable:true,value:null});this.cleanUpRegister(babelHelpers.classPrivateFieldLooseBase(this,Xb)[Xb](),babelHelpers.classPrivateFieldLooseBase(this,Gb)[Gb]());babelHelpers.classPrivateFieldLooseBase(this,Yb)[Yb]=e=>{this.getEditor().dispatchCommand(L.DROP_COMMAND,e)};babelHelpers.classPrivateFieldLooseBase(this,zb)[zb]=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,kb)[kb]===null){babelHelpers.classPrivateFieldLooseBase(this,kb)[kb]=F.Tag.render(Ib||(Ib=Rb`
<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,tu)[tu].bind(this),babelHelpers.classPrivateFieldLooseBase(this,su)[su].bind(this))}return babelHelpers.classPrivateFieldLooseBase(this,kb)[kb]}getDropLine(){if(babelHelpers.classPrivateFieldLooseBase(this,Ub)[Ub]===null){babelHelpers.classPrivateFieldLooseBase(this,Ub)[Ub]=F.Tag.render(xb||(xb=Rb`
<div class="ui-text-editor-block-drop-line"></div>
`))}return babelHelpers.classPrivateFieldLooseBase(this,Ub)[Ub]}destroy(){super.destroy();F.Dom.remove(this.getContainer());F.Dom.remove(this.getDropLine())}}function nu(){const e=this.getEditor().getScrollerContainer();const t=babelHelpers.classPrivateFieldLooseBase(this,Vb)[Vb].bind(this);const s=babelHelpers.classPrivateFieldLooseBase(this,Jb)[Jb].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 du(){return y.mergeRegister(this.getEditor().registerCommand(L.DRAGOVER_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,iu)[iu].bind(this),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(L.DROP_COMMAND,babelHelpers.classPrivateFieldLooseBase(this,ru)[ru].bind(this),L.COMMAND_PRIORITY_HIGH),this.getEditor().registerTextContentListener((()=>{babelHelpers.classPrivateFieldLooseBase(this,eu)[eu](null);babelHelpers.classPrivateFieldLooseBase(this,Zb)[Zb]()})))}function cu(e){if(!this.getEditor().isEditable()){return}const t=e.target;if(!(t instanceof HTMLElement)){babelHelpers.classPrivateFieldLooseBase(this,eu)[eu](null);return}if(t.closest(".ui-text-editor-block-toolbar")!==null){return}const s=babelHelpers.classPrivateFieldLooseBase(this,qb)[qb](e);babelHelpers.classPrivateFieldLooseBase(this,eu)[eu](s)}function hu(){babelHelpers.classPrivateFieldLooseBase(this,eu)[eu](null)}function bu(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=wb.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,Kb)[Kb]=a;break}if(o===wb.INDETERMINATE){if(v){o=wb.UPWARD}else if(f){o=wb.DOWNWARD}else{o=Infinity}}a+=o}}));return i}function uu(e){if(e===0){return Infinity}if(babelHelpers.classPrivateFieldLooseBase(this,Kb)[Kb]>=0&&babelHelpers.classPrivateFieldLooseBase(this,Kb)[Kb]<e){return babelHelpers.classPrivateFieldLooseBase(this,Kb)[Kb]}return Math.floor(e/2)}function pu(){if(babelHelpers.classPrivateFieldLooseBase(this,$b)[$b]===null){F.Dom.style(this.getContainer(),{opacity:0,transform:"translateY(-10000px)"})}else{const e=F.Text.toNumber(F.Dom.style(babelHelpers.classPrivateFieldLooseBase(this,$b)[$b],"margin-top"));const t=babelHelpers.classPrivateFieldLooseBase(this,$b)[$b].offsetTop+e;F.Dom.style(this.getContainer(),{opacity:1,transform:`translateY(${t}px)`})}}function gu(e){const t=babelHelpers.classPrivateFieldLooseBase(this,$b)[$b]!==e;babelHelpers.classPrivateFieldLooseBase(this,$b)[$b]=e;if(t){babelHelpers.classPrivateFieldLooseBase(this,Zb)[Zb]()}}function vu(e){const t=e.dataTransfer;if(!t||babelHelpers.classPrivateFieldLooseBase(this,$b)[$b]===null){return}this.getEditor().dispatchCommand(H);t.setDragImage(babelHelpers.classPrivateFieldLooseBase(this,$b)[$b],0,0);let s="";this.getEditor().update((()=>{const e=L.$getNearestNodeFromDOMNode(babelHelpers.classPrivateFieldLooseBase(this,$b)[$b]);if(e){s=e.getKey()}}));t.setData(Ab,s);babelHelpers.classPrivateFieldLooseBase(this,Wb)[Wb]=true;F.Event.bind(document.body,"drop",babelHelpers.classPrivateFieldLooseBase(this,Yb)[Yb]);F.Event.bind(document.body,"dragover",babelHelpers.classPrivateFieldLooseBase(this,zb)[zb])}function fu(e){babelHelpers.classPrivateFieldLooseBase(this,Wb)[Wb]=false;babelHelpers.classPrivateFieldLooseBase(this,ou)[ou]();F.Event.unbind(document.body,"drop",babelHelpers.classPrivateFieldLooseBase(this,Yb)[Yb]);F.Event.unbind(document.body,"dragover",babelHelpers.classPrivateFieldLooseBase(this,zb)[zb])}function Pu(e){if(babelHelpers.classPrivateFieldLooseBase(this,Wb)[Wb]===false){return false}const t=e.dataTransfer.types.includes("Files");if(t||!(e.target instanceof HTMLElement)){return false}const s=babelHelpers.classPrivateFieldLooseBase(this,qb)[qb](e);if(s===null){return false}babelHelpers.classPrivateFieldLooseBase(this,jb)[jb]=s;babelHelpers.classPrivateFieldLooseBase(this,au)[au](s,e);e.preventDefault();return true}function mu(e){var t;if(babelHelpers.classPrivateFieldLooseBase(this,Wb)[Wb]===false){return false}const s=e.dataTransfer.types.includes("Files");const i=((t=e.dataTransfer)==null?void 0:t.getData(Ab))||"";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,qb)[qb](e)||babelHelpers.classPrivateFieldLooseBase(this,jb)[jb];if(!a){return false}const o=L.$getNearestNodeFromDOMNode(a);if(!o){return false}F.Event.unbind(document.body,"drop",babelHelpers.classPrivateFieldLooseBase(this,Yb)[Yb]);F.Event.unbind(document.body,"dragover",babelHelpers.classPrivateFieldLooseBase(this,zb)[zb]);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,eu)[eu](null);return true}function Lu(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 yu(){F.Dom.style(this.getDropLine(),{opacity:0,transform:"translate(-10000px, -10000px)"})}var Fu=Object.freeze({BlockToolbarPlugin:lu});let Hu=e=>e,Bu;var Cu=babelHelpers.classPrivateFieldLooseKey("container");class Ou extends ae{constructor(...e){super(...e);Object.defineProperty(this,Cu,{writable:true,value:null})}getContainer(){if(babelHelpers.classPrivateFieldLooseBase(this,Cu)[Cu]===null){babelHelpers.classPrivateFieldLooseBase(this,Cu)[Cu]=F.Tag.render(Bu||(Bu=Hu`<span class="ui-text-editor-toolbar-separator"></span>`))}return babelHelpers.classPrivateFieldLooseBase(this,Cu)[Cu]}render(){return this.getContainer()}}let Tu=e=>e,Eu,Nu,_u;var Mu=babelHelpers.classPrivateFieldLooseKey("textEditor");var Du=babelHelpers.classPrivateFieldLooseKey("items");var Su=babelHelpers.classPrivateFieldLooseKey("rendered");var Ru=babelHelpers.classPrivateFieldLooseKey("moreBtn");var Iu=babelHelpers.classPrivateFieldLooseKey("refs");var xu=babelHelpers.classPrivateFieldLooseKey("resizeObserver");var wu=babelHelpers.classPrivateFieldLooseKey("timeoutId");var Au=babelHelpers.classPrivateFieldLooseKey("removeListeners");var $u=babelHelpers.classPrivateFieldLooseKey("registerListeners");var Ku=babelHelpers.classPrivateFieldLooseKey("fillFromOptions");var ju=babelHelpers.classPrivateFieldLooseKey("handleResize");var ku=babelHelpers.classPrivateFieldLooseKey("getSelectionBlockTypes");var Uu=babelHelpers.classPrivateFieldLooseKey("getBlockType");class Wu{constructor(e,t){Object.defineProperty(this,Uu,{value:Vu});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,Mu,{writable:true,value:null});Object.defineProperty(this,Du,{writable:true,value:[]});Object.defineProperty(this,Su,{writable:true,value:false});Object.defineProperty(this,Ru,{writable:true,value:null});Object.defineProperty(this,Iu,{writable:true,value:new g.MemoryCache});Object.defineProperty(this,xu,{writable:true,value:null});Object.defineProperty(this,wu,{writable:true,value:null});Object.defineProperty(this,Au,{writable:true,value:null});babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu]=e;const s=F.Type.isArray(t)?t:[];babelHelpers.classPrivateFieldLooseBase(this,Ku)[Ku](s);if(babelHelpers.classPrivateFieldLooseBase(this,Du)[Du].length>0){babelHelpers.classPrivateFieldLooseBase(this,Au)[Au]=babelHelpers.classPrivateFieldLooseBase(this,$u)[$u]();babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]=new ResizeObserver(babelHelpers.classPrivateFieldLooseBase(this,ju)[ju].bind(this))}}renderTo(e){if(this.isRendered()){return}if(F.Type.isElementNode(e)){babelHelpers.classPrivateFieldLooseBase(this,Du)[Du].forEach((e=>{F.Dom.append(e.render(),this.getItemsContainer())}));F.Dom.append(this.getContainer(),e);if(babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]!==null){babelHelpers.classPrivateFieldLooseBase(this,xu)[xu].observe(this.getContainer())}babelHelpers.classPrivateFieldLooseBase(this,Su)[Su]=true}}isEmpty(){return babelHelpers.classPrivateFieldLooseBase(this,Du)[Du].length===0}getContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu].remember("container",(()=>F.Tag.render(Eu||(Eu=Tu`
<div class="ui-text-editor-toolbar-container">
${0}
${0}
</div>
`),this.getItemsContainer(),this.getMoreBtnContainer())))}getItemsContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu].remember("items-container",(()=>F.Tag.render(Nu||(Nu=Tu`
<div class="ui-text-editor-toolbar-items"></div>
`))))}getMoreBtnContainer(){return babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu].remember("more-btn-container",(()=>F.Tag.render(_u||(_u=Tu`
<div class="ui-text-editor-toolbar-more-btn">
${0}
</div>
`),this.getMoreBtn().render())))}getMoreBtn(){if(babelHelpers.classPrivateFieldLooseBase(this,Ru)[Ru]===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,Ru)[Ru]=new ve;babelHelpers.classPrivateFieldLooseBase(this,Ru)[Ru].setContent('<span class="ui-text-editor-toolbar-more-btn-icon"></span>');babelHelpers.classPrivateFieldLooseBase(this,Ru)[Ru].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,Ru)[Ru]}getItems(){return babelHelpers.classPrivateFieldLooseBase(this,Du)[Du]}isRendered(){return babelHelpers.classPrivateFieldLooseBase(this,Su)[Su]}destroy(){if(babelHelpers.classPrivateFieldLooseBase(this,Au)[Au]!==null){babelHelpers.classPrivateFieldLooseBase(this,Au)[Au]()}if(babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]!==null){babelHelpers.classPrivateFieldLooseBase(this,xu)[xu].disconnect();babelHelpers.classPrivateFieldLooseBase(this,xu)[xu]=null}if(this.isRendered()){F.Dom.remove(this.getContainer())}if(babelHelpers.classPrivateFieldLooseBase(this,wu)[wu]){clearTimeout(babelHelpers.classPrivateFieldLooseBase(this,wu)[wu])}babelHelpers.classPrivateFieldLooseBase(this,Du)[Du]=null;babelHelpers.classPrivateFieldLooseBase(this,Iu)[Iu]=null}update(){babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].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,ku)[ku](e);const i=!babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].isEditable();babelHelpers.classPrivateFieldLooseBase(this,Du)[Du].forEach((r=>{if(!(r instanceof ve)){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,Du)[Du].forEach((e=>{if(e instanceof ve){e.setActive(false)}}))}}function Yu(){return y.mergeRegister(babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].registerCommand(L.SELECTION_CHANGE_COMMAND,(()=>{this.update();return false}),L.COMMAND_PRIORITY_CRITICAL),babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].registerCommand(L.FOCUS_COMMAND,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,wu)[wu]){clearTimeout(babelHelpers.classPrivateFieldLooseBase(this,wu)[wu]);babelHelpers.classPrivateFieldLooseBase(this,wu)[wu]=null}return false}),L.COMMAND_PRIORITY_CRITICAL),babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].registerCommand(L.BLUR_COMMAND,(()=>{if(babelHelpers.classPrivateFieldLooseBase(this,wu)[wu]){clearTimeout(babelHelpers.classPrivateFieldLooseBase(this,wu)[wu])}babelHelpers.classPrivateFieldLooseBase(this,wu)[wu]=setTimeout((()=>{const e=document.activeElement;const t=babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].getScrollerContainer();if(e===null||!t.contains(e)){this.reset()}}),400);return false}),L.COMMAND_PRIORITY_CRITICAL),babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].registerUpdateListener((()=>{this.update()})),babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].registerEditableListener((()=>{this.update()})))}function zu(e){e.forEach((e=>{if(e==="|"){babelHelpers.classPrivateFieldLooseBase(this,Du)[Du].push(new Ou)}else{const t=babelHelpers.classPrivateFieldLooseBase(this,Mu)[Mu].getComponentRegistry().create(e);if(t===null){console.warn(`TextEditor Toolbar: "${e}" component doesn't exist.`)}else{babelHelpers.classPrivateFieldLooseBase(this,Du)[Du].push(t)}}}))}function Xu(e){if(this.getContainer().offsetWidth===0||F.Dom.hasClass(this.getItemsContainer(),"--animating")){return}const t=babelHelpers.classPrivateFieldLooseBase(this,Du)[Du].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 Gu(e){const t=e.anchor.getNode();const s=new Set;let i=t;while(i!==L.$getRoot()&&i!==null){const e=babelHelpers.classPrivateFieldLooseBase(this,Uu)[Uu](i);s.add(e);i=i.getParent()}return s}function Vu(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(xt(e)){return"code"}return e.getType()}let Ju=e=>e,qu;var Qu=babelHelpers.classPrivateFieldLooseKey("popup");var Zu=babelHelpers.classPrivateFieldLooseKey("toolbar");var ep=babelHelpers.classPrivateFieldLooseKey("showDebounced");var tp=babelHelpers.classPrivateFieldLooseKey("onEditorScroll");var sp=babelHelpers.classPrivateFieldLooseKey("registerListeners");var ip=babelHelpers.classPrivateFieldLooseKey("show");var rp=babelHelpers.classPrivateFieldLooseKey("adjustDialogPosition");var ap=babelHelpers.classPrivateFieldLooseKey("initDialogPosition");var op=babelHelpers.classPrivateFieldLooseKey("handleEditorScroll");var lp=babelHelpers.classPrivateFieldLooseKey("shouldShowDialog");class np extends re{constructor(e){super(e);Object.defineProperty(this,lp,{value:pp});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,Qu,{writable:true,value:null});Object.defineProperty(this,Zu,{writable:true,value:null});Object.defineProperty(this,ep,{writable:true,value:null});Object.defineProperty(this,tp,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,op)[op].bind(this)});babelHelpers.classPrivateFieldLooseBase(this,ep)[ep]=F.Runtime.debounce((()=>{this.getEditor().update((()=>{if(babelHelpers.classPrivateFieldLooseBase(this,lp)[lp]()){babelHelpers.classPrivateFieldLooseBase(this,ip)[ip]()}}))}),700)}static getName(){return"FloatingToolbar"}afterInit(){const e=this.getEditor().getOption("floatingToolbar",[]);babelHelpers.classPrivateFieldLooseBase(this,Zu)[Zu]=new Wu(this.getEditor(),e);if(!babelHelpers.classPrivateFieldLooseBase(this,Zu)[Zu].isEmpty()){this.cleanUpRegister(babelHelpers.classPrivateFieldLooseBase(this,sp)[sp]())}}update(){if(babelHelpers.classPrivateFieldLooseBase(this,lp)[lp]()){if(this.getPopup().isShown()){babelHelpers.classPrivateFieldLooseBase(this,ip)[ip]()}else{babelHelpers.classPrivateFieldLooseBase(this,ep)[ep]()}}else{this.getPopup().close()}}getPopup(){if(babelHelpers.classPrivateFieldLooseBase(this,Qu)[Qu]===null){const e=F.Tag.render(qu||(qu=Ju`<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,rp)[rp]()){F.Event.bind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,tp)[tp])}},onClose:()=>{F.Event.unbind(this.getEditor().getScrollerContainer(),"scroll",babelHelpers.classPrivateFieldLooseBase(this,tp)[tp]);sa(this.getPopup())}}});babelHelpers.classPrivateFieldLooseBase(this,Zu)[Zu].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,Zu)[Zu].destroy();babelHelpers.classPrivateFieldLooseBase(this,Zu)[Zu]=null}}function dp(){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 cp(){this.getPopup().show();sa(this.getPopup());babelHelpers.classPrivateFieldLooseBase(this,rp)[rp]()}function hp(){return ta(this.getPopup(),this.getEditor(),babelHelpers.classPrivateFieldLooseBase(this,ap)[ap])}function bp(e){const{isBackward:t,isMultiline:s}=e;return t||!s?"top":"bottom"}function up(){this.getEditor().update((()=>{babelHelpers.classPrivateFieldLooseBase(this,rp)[rp]()}))}function pp(){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=ee(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 gp=Object.freeze({FloatingToolbarPlugin:np});const vp=L.createCommand("TOGGLE_TOOLBAR_COMMAND");const fp=L.createCommand("SHOW_TOOLBAR_COMMAND");const Pp=L.createCommand("HIDE_TOOLBAR_COMMAND");var mp=babelHelpers.classPrivateFieldLooseKey("toolbar");var Lp=babelHelpers.classPrivateFieldLooseKey("registerCommands");class yp extends re{constructor(...e){super(...e);Object.defineProperty(this,Lp,{value:Fp});Object.defineProperty(this,mp,{writable:true,value:null})}static getName(){return"Toolbar"}getToolbar(){return babelHelpers.classPrivateFieldLooseBase(this,mp)[mp]}isRendered(){return babelHelpers.classPrivateFieldLooseBase(this,mp)[mp]!==null&&babelHelpers.classPrivateFieldLooseBase(this,mp)[mp].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,mp)[mp]=new Wu(this.getEditor(),this.getEditor().getOption("toolbar"));if(!babelHelpers.classPrivateFieldLooseBase(this,mp)[mp].isEmpty()){babelHelpers.classPrivateFieldLooseBase(this,Lp)[Lp]();babelHelpers.classPrivateFieldLooseBase(this,mp)[mp].renderTo(this.getEditor().getToolbarContainer());const e=this.getEditor().getOption("hideToolbar",false);if(e){this.hide()}}}destroy(){super.destroy();babelHelpers.classPrivateFieldLooseBase(this,mp)[mp].destroy()}}function Fp(){this.cleanUpRegister(this.getEditor().registerCommand(vp,(()=>{this.toggle();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(fp,(()=>{this.show();return true}),L.COMMAND_PRIORITY_LOW),this.getEditor().registerCommand(Pp,(()=>{this.hide();return true}),L.COMMAND_PRIORITY_LOW))}var Hp=Object.freeze({TOGGLE_TOOLBAR_COMMAND:vp,SHOW_TOOLBAR_COMMAND:fp,HIDE_TOOLBAR_COMMAND:Pp,ToolbarPlugin:yp});let Bp=e=>e,Cp;var Op=babelHelpers.classPrivateFieldLooseKey("placeholder");var Tp=babelHelpers.classPrivateFieldLooseKey("placeholderNode");var Ep=babelHelpers.classPrivateFieldLooseKey("paragraphPlaceholder");var Np=babelHelpers.classPrivateFieldLooseKey("registerPlaceholderListeners");var _p=babelHelpers.classPrivateFieldLooseKey("togglePlaceholder");var Mp=babelHelpers.classPrivateFieldLooseKey("hasFocus");var Dp=babelHelpers.classPrivateFieldLooseKey("hidePlaceholder");var Sp=babelHelpers.classPrivateFieldLooseKey("registerParagraphListeners");class Rp extends re{constructor(...e){super(...e);Object.defineProperty(this,Sp,{value:$p});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,Op,{writable:true,value:null});Object.defineProperty(this,Tp,{writable:true,value:null});Object.defineProperty(this,Ep,{writable:true,value:null})}afterInit(){const e=this.getEditor().getOption("placeholder");if(F.Type.isStringFilled(e)){babelHelpers.classPrivateFieldLooseBase(this,Op)[Op]=e;babelHelpers.classPrivateFieldLooseBase(this,Tp)[Tp]=F.Tag.render(Cp||(Cp=Bp`
<div class="ui-text-editor-placeholder">${0}</div>
`),F.Text.encode(babelHelpers.classPrivateFieldLooseBase(this,Op)[Op]));F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,Tp)[Tp],this.getEditor().getScrollerContainer());babelHelpers.classPrivateFieldLooseBase(this,Np)[Np]()}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,Ep)[Ep]=t;babelHelpers.classPrivateFieldLooseBase(this,Sp)[Sp]()}}}static getName(){return"Placeholder"}}function Ip(){this.cleanUpRegister(this.getEditor().registerUpdateListener((()=>{this.getEditor().getEditorState().read((()=>{babelHelpers.classPrivateFieldLooseBase(this,_p)[_p]()}))})))}function xp(){if(babelHelpers.classPrivateFieldLooseBase(this,Op)[Op]===null){return}let e=m.$canShowPlaceholder(this.getLexicalEditor().isComposing());if(e&&babelHelpers.classPrivateFieldLooseBase(this,Ep)[Ep]!==null&&babelHelpers.classPrivateFieldLooseBase(this,Mp)[Mp]()){e=false}if(e){F.Dom.addClass(babelHelpers.classPrivateFieldLooseBase(this,Tp)[Tp],"--shown")}else{F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Tp)[Tp],"--shown")}}function wp(){const e=document.activeElement;const t=this.getEditor().getRootElement();return t!==null&&e!==null&&t.contains(e)}function Ap(){if(babelHelpers.classPrivateFieldLooseBase(this,Tp)[Tp]!==null){F.Dom.removeClass(babelHelpers.classPrivateFieldLooseBase(this,Tp)[Tp],"--shown")}}function $p(){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,Mp)[Mp]()){t.dataset.placeholder=babelHelpers.classPrivateFieldLooseBase(this,Ep)[Ep];i=e;babelHelpers.classPrivateFieldLooseBase(this,Dp)[Dp]()}}}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,_p)[_p]();return false}),L.COMMAND_PRIORITY_CRITICAL))}let Kp=e=>e,jp,kp,Up,Wp,Yp,zp,Xp,Gp,Vp,Jp;const qp={COLLAPSED:"collapsed",COLLAPSING:"collapsing",EXPANDED:"expanded",EXPANDING:"expanding"};var Qp=babelHelpers.classPrivateFieldLooseKey("lexicalEditor");var Zp=babelHelpers.classPrivateFieldLooseKey("componentRegistry");var eg=babelHelpers.classPrivateFieldLooseKey("refs");var tg=babelHelpers.classPrivateFieldLooseKey("options");var sg=babelHelpers.classPrivateFieldLooseKey("plugins");var ig=babelHelpers.classPrivateFieldLooseKey("newLineMode");var rg=babelHelpers.classPrivateFieldLooseKey("bbcodeScheme");var ag=babelHelpers.classPrivateFieldLooseKey("schemeValidation");var og=babelHelpers.classPrivateFieldLooseKey("bbcodeImportMap");var lg=babelHelpers.classPrivateFieldLooseKey("bbcodeExportMap");var ng=babelHelpers.classPrivateFieldLooseKey("themeClasses");var dg=babelHelpers.classPrivateFieldLooseKey("decoratorNodes");var cg=babelHelpers.classPrivateFieldLooseKey("decoratorComponents");var hg=babelHelpers.classPrivateFieldLooseKey("removeListeners");var bg=babelHelpers.classPrivateFieldLooseKey("highlightContainer");var ug=babelHelpers.classPrivateFieldLooseKey("autoFocus");var pg=babelHelpers.classPrivateFieldLooseKey("minHeight");var gg=babelHelpers.classPrivateFieldLooseKey("maxHeight");var vg=babelHelpers.classPrivateFieldLooseKey("collapsingMode");var fg=babelHelpers.classPrivateFieldLooseKey("collapsingState");var Pg=babelHelpers.classPrivateFieldLooseKey("collapsingTransitionEnd");var mg=babelHelpers.classPrivateFieldLooseKey("paragraphHeight");var Lg=babelHelpers.classPrivateFieldLooseKey("resizeObserver");var yg=babelHelpers.classPrivateFieldLooseKey("destroying");var Fg=babelHelpers.classPrivateFieldLooseKey("rendered");var Hg=babelHelpers.classPrivateFieldLooseKey("prevEmptyStatus");var Bg=babelHelpers.classPrivateFieldLooseKey("initEditorState");var Cg=babelHelpers.classPrivateFieldLooseKey("initDecorateNodes");var Og=babelHelpers.classPrivateFieldLooseKey("registerCommands");var Tg=babelHelpers.classPrivateFieldLooseKey("createNamespace");var Eg=babelHelpers.classPrivateFieldLooseKey("initBBCodeImportMap");var Ng=babelHelpers.classPrivateFieldLooseKey("initBBCodeExportMap");var _g=babelHelpers.classPrivateFieldLooseKey("initBBCodeScheme");var Mg=babelHelpers.classPrivateFieldLooseKey("initCollapsingMode");var Dg=babelHelpers.classPrivateFieldLooseKey("collapse");var Sg=babelHelpers.classPrivateFieldLooseKey("handleCollapsingTransition");class Rg extends b.EventEmitter{constructor(e){super();Object.defineProperty(this,Sg,{value:Wg});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,Qp,{writable:true,value:null});Object.defineProperty(this,Zp,{writable:true,value:new zn});Object.defineProperty(this,eg,{writable:true,value:new F.Cache.MemoryCache});Object.defineProperty(this,tg,{writable:true,value:null});Object.defineProperty(this,sg,{writable:true,value:null});Object.defineProperty(this,ig,{writable:true,value:N.MIXED});Object.defineProperty(this,rg,{writable:true,value:null});Object.defineProperty(this,ag,{writable:true,value:null});Object.defineProperty(this,og,{writable:true,value:void 0});Object.defineProperty(this,lg,{writable:true,value:void 0});Object.defineProperty(this,ng,{writable:true,value:{}});Object.defineProperty(this,dg,{writable:true,value:new Set});Object.defineProperty(this,cg,{writable:true,value:new Map});Object.defineProperty(this,hg,{writable:true,value:null});Object.defineProperty(this,bg,{writable:true,value:F.Tag.render(jp||(jp=Kp`<div class="ui-text-editor-selection-highlighting"></div>`))});Object.defineProperty(this,ug,{writable:true,value:false});Object.defineProperty(this,pg,{writable:true,value:null});Object.defineProperty(this,gg,{writable:true,value:null});Object.defineProperty(this,vg,{writable:true,value:false});Object.defineProperty(this,fg,{writable:true,value:qp.EXPANDED});Object.defineProperty(this,Pg,{writable:true,value:babelHelpers.classPrivateFieldLooseBase(this,Sg)[Sg].bind(this)});Object.defineProperty(this,mg,{writable:true,value:null});Object.defineProperty(this,Lg,{writable:true,value:null});Object.defineProperty(this,yg,{writable:true,value:false});Object.defineProperty(this,Fg,{writable:true,value:false});Object.defineProperty(this,Hg,{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,tg)[tg]=new l.SettingsCollection({...t,...s});const i=[...this.constructor.getBuiltinPlugins()];const r=babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].get("plugins",i);const a=babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].get("extraPlugins",[]);const o=babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].get("removePlugins",[]);const n=babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].get("newLineMode");if([N.LINE_BREAK,N.PARAGRAPH].includes(n)){babelHelpers.classPrivateFieldLooseBase(this,ig)[ig]=n}babelHelpers.classPrivateFieldLooseBase(this,ng)[ng]=An;babelHelpers.classPrivateFieldLooseBase(this,sg)[sg]=new Un(i,[...r,...a],o);const d=babelHelpers.classPrivateFieldLooseBase(this,sg)[sg].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,Tg)[Tg](d),nodes:c.flat(),onError:e=>{console.error(e)},theme:babelHelpers.classPrivateFieldLooseBase(this,ng)[ng],editable:babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].get("editable")!==false});this.setMinHeight(s.minHeight);this.setMaxHeight(s.maxHeight);this.setAutoFocus(s.autoFocus);this.setVisualOptions(s.visualOptions);babelHelpers.classPrivateFieldLooseBase(this,hg)[hg]=y.mergeRegister(babelHelpers.classPrivateFieldLooseBase(this,Og)[Og](),babelHelpers.classPrivateFieldLooseBase(this,Cg)[Cg](c.flat()));babelHelpers.classPrivateFieldLooseBase(this,sg)[sg].init(this);babelHelpers.classPrivateFieldLooseBase(this,og)[og]=babelHelpers.classPrivateFieldLooseBase(this,Eg)[Eg]();babelHelpers.classPrivateFieldLooseBase(this,lg)[lg]=babelHelpers.classPrivateFieldLooseBase(this,Ng)[Ng]();babelHelpers.classPrivateFieldLooseBase(this,rg)[rg]=babelHelpers.classPrivateFieldLooseBase(this,_g)[_g]();babelHelpers.classPrivateFieldLooseBase(this,ag)[ag]=new Zn(this);this.subscribeFromOptions(s.events)}static getBuiltinPlugins(){return[sd,Bt,ad,ld,yd,hd,vd,Td,Qc,ls,Me,oh,No,gc,Rc,_a,bn,bl,Je,Sh,kh,vb,Mb,lu,np,yp,Rp,Hr]}static getDefaultOptions(){return{}}getComponentRegistry(){return babelHelpers.classPrivateFieldLooseBase(this,Zp)[Zp]}getOptions(){return babelHelpers.classPrivateFieldLooseBase(this,tg)[tg]}getOption(e,t=null){return babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].get(e,t)}getThemeClasses(){return babelHelpers.classPrivateFieldLooseBase(this,ng)[ng]}getThemeClass(e){const t=babelHelpers.classPrivateFieldLooseBase(this,ng)[ng][e];if(t!==undefined){return t}return""}getNewLineMode(){return babelHelpers.classPrivateFieldLooseBase(this,ig)[ig]}getBBCodeScheme(){return babelHelpers.classPrivateFieldLooseBase(this,rg)[rg]}getSchemeValidation(){return babelHelpers.classPrivateFieldLooseBase(this,ag)[ag]}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=$(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=G(L.$getRoot(),this);return e.toString()}))}isEmpty(e=true){return babelHelpers.classPrivateFieldLooseBase(this,Qp)[Qp].getEditorState().read((()=>wn(e)))}setAutoFocus(e){if(F.Type.isBoolean(e)){babelHelpers.classPrivateFieldLooseBase(this,ug)[ug]=e}}hasAutoFocus(){return babelHelpers.classPrivateFieldLooseBase(this,ug)[ug]}setMinHeight(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-min-height",e>0?`${e}px`:null)}}}getMinHeight(){return babelHelpers.classPrivateFieldLooseBase(this,pg)[pg]}setMaxHeight(e){if(F.Type.isNumber(e)&&e>0||e===null){const t=babelHelpers.classPrivateFieldLooseBase(this,gg)[gg]!==e;babelHelpers.classPrivateFieldLooseBase(this,gg)[gg]=e;if(t){F.Dom.style(this.getScrollerContainer(),"--ui-text-editor-max-height",e>0?`${e}px`:null)}}}getMaxHeight(){return babelHelpers.classPrivateFieldLooseBase(this,gg)[gg]}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,vg)[vg]}isCollapsed(){return babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]===qp.COLLAPSED}collapse(e=true){babelHelpers.classPrivateFieldLooseBase(this,Dg)[Dg]("hide",e)}expand(e=true){babelHelpers.classPrivateFieldLooseBase(this,Dg)[Dg]("show",e)}toggle(e=true){babelHelpers.classPrivateFieldLooseBase(this,Dg)[Dg]("toggle",e)}getParagraphHeight(){if(babelHelpers.classPrivateFieldLooseBase(this,mg)[mg]!==null){return babelHelpers.classPrivateFieldLooseBase(this,mg)[mg]}const e=this.getThemeClasses().paragraph||"";const t=F.Tag.render(kp||(kp=Kp`<p class="${0}"><br /></p>`),e);F.Dom.style(t,{position:"absolute",transform:"translateY(-1000px)"});F.Dom.append(t,this.getScrollerContainer());babelHelpers.classPrivateFieldLooseBase(this,mg)[mg]=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,mg)[mg]}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,lg)[lg]}getBBCodeImportMap(){return babelHelpers.classPrivateFieldLooseBase(this,og)[og]}getEditorState(){return babelHelpers.classPrivateFieldLooseBase(this,Qp)[Qp].getEditorState()}getPlugins(){return babelHelpers.classPrivateFieldLooseBase(this,sg)[sg]}getPlugin(e){return babelHelpers.classPrivateFieldLooseBase(this,sg)[sg].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,eg)[eg].remember("root",(()=>{const e=[this.isEditable()?"--editable":"--read-only"];return F.Tag.render(Up||(Up=Kp`
<div class="ui-text-editor ${0}">
${0}
</div>
`),e.join(" "),this.getInnerContainer())}))}getInnerContainer(){return babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].remember("inner",(()=>F.Tag.render(Wp||(Wp=Kp`
<div class="ui-text-editor-inner">
${0}
${0}
${0}
${0}
</div>
`),this.getHeaderContainer(),this.getToolbarContainer(),this.getScrollerContainer(),this.getFooterContainer())))}getToolbarContainer(){return babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].remember("toolbar",(()=>F.Tag.render(Yp||(Yp=Kp`
<div class="ui-text-editor-toolbar" tabindex="-1"></div>
`))))}getScrollerContainer(){return babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].remember("scroller",(()=>F.Tag.render(zp||(zp=Kp`
<div class="ui-text-editor-scroller">
${0}
</div>
`),this.getEditableContainer())))}getEditableContainer(){return babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].remember("editable",(()=>F.Tag.render(Xp||(Xp=Kp`
<div
class="ui-text-editor-editable"
contenteditable="${0}"
spellcheck="true"
></div>
`),this.isEditable()?"true":"false")))}getFooterContainer(){return babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].remember("footer",(()=>F.Tag.render(Gp||(Gp=Kp`
<div class="ui-text-editor-slot ui-text-editor-footer" tabindex="-1"></div>
`))))}getHeaderContainer(){return babelHelpers.classPrivateFieldLooseBase(this,eg)[eg].remember("header",(()=>F.Tag.render(Vp||(Vp=Kp`
<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,tg)[tg].get("content"))){this.setText(babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].get("content"))}else{babelHelpers.classPrivateFieldLooseBase(this,Bg)[Bg](babelHelpers.classPrivateFieldLooseBase(this,tg)[tg].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,Fg)[Fg]){babelHelpers.classPrivateFieldLooseBase(this,Lg)[Lg]=new ResizeObserver((()=>{this.emit("onResize");this.dispatchCommand(H,{context:"resize"})}));babelHelpers.classPrivateFieldLooseBase(this,Lg)[Lg].observe(this.getScrollerContainer())}babelHelpers.classPrivateFieldLooseBase(this,Fg)[Fg]=true}isRendered(){return babelHelpers.classPrivateFieldLooseBase(this,Fg)[Fg]}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,bg)[bg].innerHTML="";for(let i=0;i<r;i++){const r=s[i];const a=F.Tag.render(Jp||(Jp=Kp`<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,bg)[bg])}F.Dom.append(babelHelpers.classPrivateFieldLooseBase(this,bg)[bg],this.getScrollerContainer())}}))}resetHighlightSelection(){F.Dom.remove(babelHelpers.classPrivateFieldLooseBase(this,bg)[bg])}destroy(){if(babelHelpers.classPrivateFieldLooseBase(this,yg)[yg]){return}babelHelpers.classPrivateFieldLooseBase(this,yg)[yg]=true;this.emit("onDestroy");for(const[,e]of babelHelpers.classPrivateFieldLooseBase(this,sg)[sg]){e.destroy()}babelHelpers.classPrivateFieldLooseBase(this,hg)[hg]();if(this.isRendered()){babelHelpers.classPrivateFieldLooseBase(this,Lg)[Lg].disconnect();this.setRootElement(null);F.Dom.remove(this.getRootContainer())}babelHelpers.classPrivateFieldLooseBase(this,Lg)[Lg]=null;babelHelpers.classPrivateFieldLooseBase(this,sg)[sg]=null;babelHelpers.classPrivateFieldLooseBase(this,Qp)[Qp]=null;this.$refs=null;babelHelpers.classPrivateFieldLooseBase(this,ag)[ag]=null;babelHelpers.classPrivateFieldLooseBase(this,og)[og]=null;babelHelpers.classPrivateFieldLooseBase(this,lg)[lg]=null;babelHelpers.classPrivateFieldLooseBase(this,dg)[dg]=null;babelHelpers.classPrivateFieldLooseBase(this,cg)[cg]=null;Object.setPrototypeOf(this,null)}}function Ig(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 xg(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,cg)[cg].get(t);if(e){e.destroy()}babelHelpers.classPrivateFieldLooseBase(this,cg)[cg].delete(t)}else{babelHelpers.classPrivateFieldLooseBase(this,dg)[dg].add(t)}}}));t.push(s)}}));const s=babelHelpers.classPrivateFieldLooseBase(this,Qp)[Qp].registerDecoratorListener((e=>{babelHelpers.classPrivateFieldLooseBase(this,dg)[dg].forEach((t=>{const s=e[t];const{componentClass:i,options:r}=s;const a=babelHelpers.classPrivateFieldLooseBase(this,cg)[cg].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,cg)[cg].set(t,new i({textEditor:this,target:o,nodeKey:t,options:r}))}}));babelHelpers.classPrivateFieldLooseBase(this,dg)[dg].clear()}));t.push(s);return y.mergeRegister(...t)}function wg(){return y.mergeRegister(this.registerCommand(L.FOCUS_COMMAND,(()=>{if(this.isCollapsingModeEnabled()&&babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]===qp.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,fg)[fg]===qp.COLLAPSING||babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]===qp.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,tg)[tg].get("collapsingMode")===true){if(o){babelHelpers.classPrivateFieldLooseBase(this,Mg)[Mg]()}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,Hg)[Hg]!==l){babelHelpers.classPrivateFieldLooseBase(this,Hg)[Hg]=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 Ag(e){const t=xn(e.map((e=>e.getName())).sort().join("-"));return String(t)}function $g(){const e=new Map;for(const[,t]of babelHelpers.classPrivateFieldLooseBase(this,sg)[sg]){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 Kg(){const e=new Map;for(const[,t]of babelHelpers.classPrivateFieldLooseBase(this,sg)[sg]){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 jg(){const e=this.getPlugin("File");const t=e!=null&&e.isEnabled()?e.getMode():"none";return new n.DefaultBBCodeScheme({fileTag:t})}function kg(){babelHelpers.classPrivateFieldLooseBase(this,vg)[vg]=true;if(this.isEmpty()){babelHelpers.classPrivateFieldLooseBase(this,Dg)[Dg]("hide",false,true)}else{this.expand(false)}}function Ug(e="hide",t=true,s=false){if(!this.isCollapsingModeEnabled()){return}const i=babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]===qp.COLLAPSED||babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]===qp.COLLAPSING;const r=babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]===qp.EXPANDED||babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]===qp.EXPANDING;if(e==="hide"&&i||e==="show"&&r){return}if(t===false){if(i){babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]=qp.EXPANDED;F.Dom.removeClass(this.getRootContainer(),"--collapsed");this.emit("onCollapsingToggle",{isOpen:true});this.focus()}else{babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]=qp.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,Pg)[Pg]);if(i){babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]=qp.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,fg)[fg]=qp.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,Pg)[Pg])}function Wg(){F.Event.unbind(this.getRootContainer(),"transitionend",babelHelpers.classPrivateFieldLooseBase(this,Pg)[Pg]);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,fg)[fg]===qp.COLLAPSING){F.Dom.addClass(this.getRootContainer(),"--collapsed");babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]=qp.COLLAPSED;this.clear();this.clearHistory();this.blur()}else{this.focus();babelHelpers.classPrivateFieldLooseBase(this,fg)[fg]=qp.EXPANDED}}const Yg={name:"TextEditorComponent",props:{editorOptions:{type:Object},editorInstance:{type:Rg,default:null},events:{type:Object,default:{}},editable:{type:Boolean,default:null}},setup(){return{editorClass:Rg}},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 zg extends Rg{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 Xg={name:"BasicEditorComponent",extends:Yg,setup(){return{editorClass:zg}}};const Gg={Paragraph:Dt,AutoLink:Jc,BlockToolbar:Fu,Bold:dd,Code:Hs,FloatingToolbar:gp,History:Sb,Image:xa,Italic:ud,Link:Nc,List:hh,Mention:Qo,Quote:Re,Strikethrough:md,TabIndent:th,Toolbar:Hp,Underline:Hd,Video:Pn,Spoiler:pt,Smiley:vl,Table:wh,Hashtag:Wh,File:Cr};const Vg={...T};const Jg={..._};const qg={generateContent:Sn};e.TextEditor=Rg;e.BasicEditor=zg;e.TextEditorComponent=Yg;e.BasicEditorComponent=Xg;e.BasePlugin=re;e.Button=ve;e.Plugins=Gg;e.Commands=Vg;e.Constants=Jg;e.Debug=qg})(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