@lexical/table 0.21.1-nightly.20241205.0 → 0.21.1-nightly.20241209.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,114 +6,119 @@
6
6
  *
7
7
  */
8
8
 
9
- 'use strict';var h=require("@lexical/utils"),w=require("lexical"),ba=require("@lexical/clipboard");let ca=/^(\d+(?:\.\d+)?)px$/,x={BOTH:3,COLUMN:2,NO_STATUS:0,ROW:1};
10
- class y extends w.ElementNode{static getType(){return"tablecell"}static clone(a){return new y(a.__headerState,a.__colSpan,a.__width,a.__key)}afterCloneFrom(a){super.afterCloneFrom(a);this.__rowSpan=a.__rowSpan;this.__backgroundColor=a.__backgroundColor}static importDOM(){return{td:()=>({conversion:da,priority:0}),th:()=>({conversion:da,priority:0})}}static importJSON(a){let b=a.rowSpan||1;return A(a.headerState,a.colSpan||1,a.width||void 0).setRowSpan(b).setBackgroundColor(a.backgroundColor||null)}constructor(a=
9
+ 'use strict';var h=require("@lexical/utils"),v=require("lexical"),aa=require("@lexical/clipboard");let ba=/^(\d+(?:\.\d+)?)px$/,x={BOTH:3,COLUMN:2,NO_STATUS:0,ROW:1};
10
+ class y extends v.ElementNode{static getType(){return"tablecell"}static clone(a){return new y(a.__headerState,a.__colSpan,a.__width,a.__key)}afterCloneFrom(a){super.afterCloneFrom(a);this.__rowSpan=a.__rowSpan;this.__backgroundColor=a.__backgroundColor}static importDOM(){return{td:()=>({conversion:da,priority:0}),th:()=>({conversion:da,priority:0})}}static importJSON(a){let b=a.rowSpan||1;return A(a.headerState,a.colSpan||1,a.width||void 0).setRowSpan(b).setBackgroundColor(a.backgroundColor||null)}constructor(a=
11
11
  x.NO_STATUS,b=1,c,d){super(d);this.__colSpan=b;this.__rowSpan=1;this.__headerState=a;this.__width=c;this.__backgroundColor=null}createDOM(a){let b=document.createElement(this.getTag());this.__width&&(b.style.width=`${this.__width}px`);1<this.__colSpan&&(b.colSpan=this.__colSpan);1<this.__rowSpan&&(b.rowSpan=this.__rowSpan);null!==this.__backgroundColor&&(b.style.backgroundColor=this.__backgroundColor);h.addClassNamesToElement(b,a.theme.tableCell,this.hasHeader()&&a.theme.tableCellHeader);return b}exportDOM(a){a=
12
- super.exportDOM(a);if(a.element&&w.isHTMLElement(a.element)){let b=a.element;b.setAttribute("data-temporary-table-cell-lexical-key",this.getKey());b.style.border="1px solid black";1<this.__colSpan&&(b.colSpan=this.__colSpan);1<this.__rowSpan&&(b.rowSpan=this.__rowSpan);b.style.width=`${this.getWidth()||75}px`;b.style.verticalAlign="top";b.style.textAlign="start";null===this.__backgroundColor&&this.hasHeader()&&(b.style.backgroundColor="#f2f3f5")}return a}exportJSON(){return{...super.exportJSON(),
12
+ super.exportDOM(a);if(a.element&&v.isHTMLElement(a.element)){let b=a.element;b.setAttribute("data-temporary-table-cell-lexical-key",this.getKey());b.style.border="1px solid black";1<this.__colSpan&&(b.colSpan=this.__colSpan);1<this.__rowSpan&&(b.rowSpan=this.__rowSpan);b.style.width=`${this.getWidth()||75}px`;b.style.verticalAlign="top";b.style.textAlign="start";null===this.__backgroundColor&&this.hasHeader()&&(b.style.backgroundColor="#f2f3f5")}return a}exportJSON(){return{...super.exportJSON(),
13
13
  backgroundColor:this.getBackgroundColor(),colSpan:this.__colSpan,headerState:this.__headerState,rowSpan:this.__rowSpan,type:"tablecell",width:this.getWidth()}}getColSpan(){return this.getLatest().__colSpan}setColSpan(a){let b=this.getWritable();b.__colSpan=a;return b}getRowSpan(){return this.getLatest().__rowSpan}setRowSpan(a){let b=this.getWritable();b.__rowSpan=a;return b}getTag(){return this.hasHeader()?"th":"td"}setHeaderStyles(a,b=x.BOTH){let c=this.getWritable();c.__headerState=a&b|c.__headerState&
14
14
  ~b;return c}getHeaderStyles(){return this.getLatest().__headerState}setWidth(a){let b=this.getWritable();b.__width=a;return b}getWidth(){return this.getLatest().__width}getBackgroundColor(){return this.getLatest().__backgroundColor}setBackgroundColor(a){let b=this.getWritable();b.__backgroundColor=a;return b}toggleHeaderStyle(a){let b=this.getWritable();b.__headerState=(b.__headerState&a)===a?b.__headerState-a:b.__headerState+a;return b}hasHeaderState(a){return(this.getHeaderStyles()&a)===a}hasHeader(){return this.getLatest().__headerState!==
15
15
  x.NO_STATUS}updateDOM(a){return a.__headerState!==this.__headerState||a.__width!==this.__width||a.__colSpan!==this.__colSpan||a.__rowSpan!==this.__rowSpan||a.__backgroundColor!==this.__backgroundColor}isShadowRoot(){return!0}collapseAtStart(){return!0}canBeEmpty(){return!1}canIndent(){return!1}}
16
- function da(a){var b=a.nodeName.toLowerCase(),c=void 0;ca.test(a.style.width)&&(c=parseFloat(a.style.width));b=A("th"===b?x.ROW:x.NO_STATUS,a.colSpan,c);b.__rowSpan=a.rowSpan;c=a.style.backgroundColor;""!==c&&(b.__backgroundColor=c);a=a.style;c=(a&&a.textDecoration||"").split(" ");let d="700"===a.fontWeight||"bold"===a.fontWeight,e=c.includes("line-through"),f="italic"===a.fontStyle,g=c.includes("underline");return{after:n=>{0===n.length&&n.push(w.$createParagraphNode());return n},forChild:(n,q)=>
17
- {if(C(q)&&!w.$isElementNode(n)){q=w.$createParagraphNode();if(w.$isLineBreakNode(n)&&"\n"===n.getTextContent())return null;w.$isTextNode(n)&&(d&&n.toggleFormat("bold"),e&&n.toggleFormat("strikethrough"),f&&n.toggleFormat("italic"),g&&n.toggleFormat("underline"));q.append(n);return q}return n},node:b}}function A(a,b=1,c){return w.$applyNodeReplacement(new y(a,b,c))}function C(a){return a instanceof y}let ea=w.createCommand("INSERT_TABLE_COMMAND");var E;
18
- function F(a){let b=new URLSearchParams;b.append("code",a);for(let c=1;c<arguments.length;c++)b.append("v",arguments[c]);throw Error(`Minified Lexical error #${a}; visit https://lexical.dev/docs/error?${b} for the full message or `+"use the non-minified dev environment for full errors and additional helpful warnings.");}E=F&&F.__esModule&&Object.prototype.hasOwnProperty.call(F,"default")?F["default"]:F;
19
- let fa="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,ha=fa&&"documentMode"in document?document.documentMode:null,ia=fa&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent);fa&&"InputEvent"in window&&!ha?"getTargetRanges"in new window.InputEvent("input"):!1;
20
- class ja extends w.ElementNode{static getType(){return"tablerow"}static clone(a){return new ja(a.__height,a.__key)}static importDOM(){return{tr:()=>({conversion:ka,priority:0})}}static importJSON(a){return I(a.height)}constructor(a,b){super(b);this.__height=a}exportJSON(){return{...super.exportJSON(),...(this.getHeight()&&{height:this.getHeight()}),type:"tablerow",version:1}}createDOM(a){let b=document.createElement("tr");this.__height&&(b.style.height=`${this.__height}px`);h.addClassNamesToElement(b,
21
- a.theme.tableRow);return b}extractWithChild(a,b,c){return"html"===c}isShadowRoot(){return!0}setHeight(a){this.getWritable().__height=a;return this.__height}getHeight(){return this.getLatest().__height}updateDOM(a){return a.__height!==this.__height}canBeEmpty(){return!1}canIndent(){return!1}}function ka(a){let b=void 0;ca.test(a.style.height)&&(b=parseFloat(a.style.height));return{node:I(b)}}function I(a){return w.$applyNodeReplacement(new ja(a))}function J(a){return a instanceof ja}
22
- function la(a){a=h.$findMatchingParent(a,b=>J(b));if(J(a))return a;throw Error("Expected table cell to be inside of table row.");}function ma(a){a=h.$findMatchingParent(a,b=>K(b));if(K(a))return a;throw Error("Expected table cell to be inside of table.");}function na(a,b){let c=ma(a),{x:d,y:e}=c.getCordsFromCellNode(a,b);return{above:c.getCellNodeFromCords(d,e-1,b),below:c.getCellNodeFromCords(d,e+1,b),left:c.getCellNodeFromCords(d-1,e,b),right:c.getCellNodeFromCords(d+1,e,b)}}
23
- let oa=(a,b)=>a===x.BOTH||a===b?b:x.NO_STATUS;function M(a){let b=a.getFirstDescendant();null==b?a.selectStart():b.getParentOrThrow().selectStart()}function pa(a,b){let c=a.getFirstChild();null!==c?c.insertBefore(b):a.append(b)}function N(a,b,c){let [d,e,f]=qa(a,b,c);null===e&&E(207);null===f&&E(208);return[d,e,f]}
24
- function qa(a,b,c){function d(q){let r=e[q];void 0===r&&(e[q]=r=[]);return r}let e=[],f=null,g=null;a=a.getChildren();for(let q=0;q<a.length;q++){var n=a[q];J(n)||E(209);for(let r=n.getFirstChild(),l=0;null!=r;r=r.getNextSibling()){C(r)||E(147);for(n=d(q);void 0!==n[l];)l++;n={cell:r,startColumn:l,startRow:q};let {__rowSpan:k,__colSpan:m}=r;for(let p=0;p<k&&!(q+p>=a.length);p++){let u=d(q+p);for(let t=0;t<m;t++)u[l+t]=n}null!==b&&null===f&&b.is(r)&&(f=n);null!==c&&null===g&&c.is(r)&&(g=n)}}return[e,
25
- f,g]}function P(a){a instanceof y||("__type"in a?(a=h.$findMatchingParent(a,C),C(a)||E(148)):(a=h.$findMatchingParent(a.getNode(),C),C(a)||E(148)));let b=a.getParent();J(b)||E(149);let c=b.getParent();K(c)||E(210);return[a,b,c]}
26
- function ra(a,b,c){function d(m){let {cell:p,startColumn:u,startRow:t}=m;e=Math.min(e,u);f=Math.min(f,t);g=Math.max(g,u+p.__colSpan-1);n=Math.max(n,t+p.__rowSpan-1)}let e=Math.min(b.startColumn,c.startColumn),f=Math.min(b.startRow,c.startRow),g=Math.max(b.startColumn+b.cell.__colSpan-1,c.startColumn+c.cell.__colSpan-1),n=Math.max(b.startRow+b.cell.__rowSpan-1,c.startRow+c.cell.__rowSpan-1);b=e;c=f;for(var q=e,r=f;e<b||f<c||g>q||n>r;){if(e<b){var l=r-c;--b;for(var k=0;k<=l;k++)d(a[c+k][b])}if(f<c)for(l=
27
- q-b,--c,k=0;k<=l;k++)d(a[c][b+k]);if(g>q)for(l=r-c,q+=1,k=0;k<=l;k++)d(a[c+k][q]);if(n>r)for(l=q-b,r+=1,k=0;k<=l;k++)d(a[r][b+k])}return{maxColumn:g,maxRow:n,minColumn:e,minRow:f}}
28
- function sa(a){let [b,,c]=P(a);a=c.getChildren();let d=a.length;var e=a[0].getChildren().length;let f=Array(d);for(var g=0;g<d;g++)f[g]=Array(e);for(e=0;e<d;e++){g=a[e].getChildren();let n=0;for(let q=0;q<g.length;q++){for(;f[e][n];)n++;let r=g[q],l=r.__rowSpan||1,k=r.__colSpan||1;for(let m=0;m<l;m++)for(let p=0;p<k;p++)f[e+m][n+p]=r;if(b===r)return{colSpan:k,columnIndex:n,rowIndex:e,rowSpan:l};n+=k}}return null}
29
- function ta(a){let [[b,c,d,e],[f,g,n,q]]=["anchor","focus"].map(r=>{const l=a[r].getNode(),k=h.$findMatchingParent(l,C);C(k)||E(238,r,l.getKey(),l.getType());const m=k.getParent();J(m)||E(239,r);const p=m.getParent();K(p)||E(240,r);return[l,k,m,p]});e.is(q)||E(241);return{anchorCell:c,anchorNode:b,anchorRow:d,anchorTable:e,focusCell:g,focusNode:f,focusRow:n,focusTable:q}}
30
- class ua{constructor(a,b,c){this.anchor=b;this.focus=c;b._selection=this;c._selection=this;this._cachedNodes=null;this.dirty=!1;this.tableKey=a}getStartEndPoints(){return[this.anchor,this.focus]}isValid(){return"root"!==this.tableKey&&"root"!==this.anchor.key&&"element"===this.anchor.type&&"root"!==this.focus.key&&"element"===this.focus.type}isBackward(){return this.focus.isBefore(this.anchor)}getCachedNodes(){return this._cachedNodes}setCachedNodes(a){this._cachedNodes=a}is(a){return Q(a)&&this.tableKey===
31
- a.tableKey&&this.anchor.is(a.anchor)&&this.focus.is(a.focus)}set(a,b,c){this.dirty=this.dirty||a!==this.tableKey||b!==this.anchor.key||c!==this.focus.key;this.tableKey=a;this.anchor.key=b;this.focus.key=c;this._cachedNodes=null}clone(){return new ua(this.tableKey,w.$createPoint(this.anchor.key,this.anchor.offset,this.anchor.type),w.$createPoint(this.focus.key,this.focus.offset,this.focus.type))}isCollapsed(){return!1}extract(){return this.getNodes()}insertRawText(){}insertText(){}hasFormat(a){let b=
32
- 0;this.getNodes().filter(C).forEach(c=>{c=c.getFirstChild();w.$isParagraphNode(c)&&(b|=c.getTextFormat())});return 0!==(b&w.TEXT_TYPE_TO_FORMAT[a])}insertNodes(a){let b=this.focus.getNode();w.$isElementNode(b)||E(151);w.$normalizeSelection__EXPERIMENTAL(b.select(0,b.getChildrenSize())).insertNodes(a)}getShape(){let {anchorCell:a,focusCell:b}=ta(this);var c=sa(a);null===c&&E(153);let d=sa(b);null===d&&E(155);let e=Math.min(c.columnIndex,d.columnIndex),f=Math.max(c.columnIndex+c.colSpan-1,d.columnIndex+
33
- d.colSpan-1),g=Math.min(c.rowIndex,d.rowIndex);c=Math.max(c.rowIndex+c.rowSpan-1,d.rowIndex+d.rowSpan-1);return{fromX:Math.min(e,f),fromY:Math.min(g,c),toX:Math.max(e,f),toY:Math.max(g,c)}}getNodes(){if(!this.isValid())return[];var a=this._cachedNodes;if(null!==a)return a;let {anchorTable:b,anchorCell:c,focusCell:d}=ta(this);a=d.getParents()[1];if(a!==b)return b.isParentOf(d)?(a=a.getParent(),null==a&&E(159),this.set(this.tableKey,d.getKey(),a.getKey())):(a=b.getParent(),null==a&&E(158),this.set(this.tableKey,
34
- a.getKey(),d.getKey())),this.getNodes();let [e,f,g]=N(b,c,d),{minColumn:n,maxColumn:q,minRow:r,maxRow:l}=ra(e,f,g),k=new Map([[b.getKey(),b]]);a=null;for(let m=r;m<=l;m++)for(let p=n;p<=q;p++){let {cell:u}=e[m][p],t=u.getParent();J(t)||E(160);t!==a&&(k.set(t.getKey(),t),a=t);k.has(u.getKey())||va(u,v=>{k.set(v.getKey(),v)})}a=Array.from(k.values());w.isCurrentlyReadOnlyMode()||(this._cachedNodes=a);return a}getTextContent(){let a=this.getNodes().filter(c=>C(c)),b="";for(let c=0;c<a.length;c++){let d=
35
- a[c],e=d.__parent,f=(a[c+1]||{}).__parent;b+=d.getTextContent()+(f!==e?"\n":"\t")}return b}}function Q(a){return a instanceof ua}function wa(){let a=w.$createPoint("root",0,"element"),b=w.$createPoint("root",0,"element");return new ua("root",a,b)}function va(a,b){a=[[a]];for(var c=a.at(-1);void 0!==c&&0<a.length;c=a.at(-1))c=c.pop(),void 0===c?a.pop():!1!==b(c)&&w.$isElementNode(c)&&a.push(c.getChildren())}
36
- function xa(a,b=w.$getEditor()){let c=w.$getNodeByKey(a);K(c)||E(231,a);b=R(c,b.getElementByKey(a));null===b&&E(232,a);return{tableElement:b,tableNode:c}}
37
- class ya{constructor(a,b){this.isHighlightingCells=!1;this.focusY=this.focusX=this.anchorY=this.anchorX=-1;this.listenersToRemove=new Set;this.tableNodeKey=b;this.editor=a;this.table={columns:0,domRows:[],rows:0};this.focusCell=this.anchorCell=this.focusCellNodeKey=this.anchorCellNodeKey=this.tableSelection=null;this.shouldCheckSelection=this.isSelecting=this.hasHijackedSelectionStyles=!1;this.abortController=new AbortController;this.listenerOptions={signal:this.abortController.signal};this.nextFocus=
38
- null;this.trackTable()}getTable(){return this.table}removeListeners(){this.abortController.abort("removeListeners");Array.from(this.listenersToRemove).forEach(a=>a());this.listenersToRemove.clear()}$lookup(){return xa(this.tableNodeKey,this.editor)}trackTable(){let a=new MutationObserver(b=>{this.editor.getEditorState().read(()=>{let c=!1;for(let f=0;f<b.length;f++){const g=b[f].target.nodeName;if("TABLE"===g||"TBODY"===g||"THEAD"===g||"TR"===g){c=!0;break}}if(c){var {tableNode:d,tableElement:e}=
39
- this.$lookup();this.table=S(d,e)}},{editor:this.editor})});this.editor.getEditorState().read(()=>{let {tableNode:b,tableElement:c}=this.$lookup();this.table=S(b,c);a.observe(c,{attributes:!0,childList:!0,subtree:!0})},{editor:this.editor})}$clearHighlight(){let a=this.editor;this.isHighlightingCells=!1;this.focusY=this.focusX=this.anchorY=this.anchorX=-1;this.focusCell=this.anchorCell=this.focusCellNodeKey=this.anchorCellNodeKey=this.tableSelection=null;this.hasHijackedSelectionStyles=!1;this.$enableHighlightStyle();
40
- let {tableNode:b,tableElement:c}=this.$lookup(),d=S(b,c);za(a,d,null);null!==w.$getSelection()&&(w.$setSelection(null),a.dispatchCommand(w.SELECTION_CHANGE_COMMAND,void 0))}$enableHighlightStyle(){let a=this.editor,{tableElement:b}=this.$lookup();h.removeClassNamesFromElement(b,a._config.theme.tableSelection);b.classList.remove("disable-selection");this.hasHijackedSelectionStyles=!1}$disableHighlightStyle(){let {tableElement:a}=this.$lookup();h.addClassNamesToElement(a,this.editor._config.theme.tableSelection);
41
- this.hasHijackedSelectionStyles=!0}$updateTableTableSelection(a){if(null!==a){a.tableKey!==this.tableNodeKey&&E(233,a.tableKey,this.tableNodeKey);let b=this.editor;this.tableSelection=a;this.isHighlightingCells=!0;this.$disableHighlightStyle();this.updateDOMSelection();za(b,this.table,this.tableSelection)}else this.$clearHighlight()}setShouldCheckSelection(){this.shouldCheckSelection=!0}getAndClearShouldCheckSelection(){return this.shouldCheckSelection?(this.shouldCheckSelection=!1,!0):!1}setNextFocus(a){this.nextFocus=
42
- a}getAndClearNextFocus(){let {nextFocus:a}=this;null!==a&&(this.nextFocus=null);return a}updateDOMSelection(){if(null!==this.anchorCell&&null!==this.focusCell){let a=w.getDOMSelection(this.editor._window);a&&0<a.rangeCount&&a.removeAllRanges()}}$setFocusCellForSelection(a,b=!1){let c=this.editor,{tableNode:d}=this.$lookup();var e=a.x;let f=a.y;this.focusCell=a;if(!this.isHighlightingCells&&(this.anchorX!==e||this.anchorY!==f||b))this.isHighlightingCells=!0,this.$disableHighlightStyle();else if(e===
43
- this.focusX&&f===this.focusY)return!1;this.focusX=e;this.focusY=f;return this.isHighlightingCells&&(b=T(d,w.$getNearestNodeFromDOMNode(a.elem,void 0)),null!=this.tableSelection&&null!=this.anchorCellNodeKey&&null!==b)?(this.focusCellNodeKey=b.getKey(),a=this.$getAnchorTableCellOrThrow(),d.getKey(),a.getKey(),b.getKey(),e=w.$getSelection(),e=Q(e)?e.clone():wa(),e.set(d.getKey(),a.getKey(),b.getKey()),this.tableSelection=e,w.$setSelection(this.tableSelection),c.dispatchCommand(w.SELECTION_CHANGE_COMMAND,
44
- void 0),za(c,this.table,this.tableSelection),!0):!1}$getAnchorTableCell(){return this.anchorCellNodeKey?w.$getNodeByKey(this.anchorCellNodeKey):null}$getAnchorTableCellOrThrow(){let a=this.$getAnchorTableCell();null===a&&E(234);return a}$getFocusTableCell(){return this.focusCellNodeKey?w.$getNodeByKey(this.focusCellNodeKey):null}$getFocusTableCellOrThrow(){let a=this.$getFocusTableCell();null===a&&E(235);return a}$setAnchorCellForSelection(a){this.isHighlightingCells=!1;this.anchorCell=a;this.anchorX=
45
- a.x;this.anchorY=a.y;let {tableNode:b}=this.$lookup();a=T(b,w.$getNearestNodeFromDOMNode(a.elem,void 0));null!==a&&(a=a.getKey(),this.tableSelection=null!=this.tableSelection?this.tableSelection.clone():wa(),this.anchorCellNodeKey=a)}$formatCells(a){let b=w.$getSelection();Q(b)||E(236);let c=w.$createRangeSelection(),d=c.anchor,e=c.focus,f=b.getNodes().filter(C);0<f.length||E(237);let g=f[0].getFirstChild(),n=w.$isParagraphNode(g)?g.getFormatFlags(a,null):null;f.forEach(q=>{d.set(q.getKey(),0,"element");
46
- e.set(q.getKey(),q.getChildrenSize(),"element");c.formatText(a,n)});w.$setSelection(b);this.editor.dispatchCommand(w.SELECTION_CHANGE_COMMAND,void 0)}$clearText(){let {editor:a}=this,b=w.$getNodeByKey(this.tableNodeKey);if(!K(b))throw Error("Expected TableNode.");var c=w.$getSelection();Q(c)||E(11);c=c.getNodes().filter(C);c.length===this.table.columns*this.table.rows?(b.selectPrevious(),b.remove(),w.$getRoot().selectStart()):(c.forEach(d=>{if(w.$isElementNode(d)){let e=w.$createParagraphNode(),f=
47
- w.$createTextNode();e.append(f);d.append(e);d.getChildren().forEach(g=>{g!==e&&g.remove()})}}),za(a,this.table,null),w.$setSelection(null),a.dispatchCommand(w.SELECTION_CHANGE_COMMAND,void 0))}}function R(a,b){if(!b)return b;a="TABLE"===b.nodeName?b:a.getDOMSlot(b).element;"TABLE"!==a.nodeName&&E(245,b.nodeName);return a}function T(a,b){for(let c=b,d=null;null!==c;c=c.getParent()){if(a.is(c))return d;C(c)&&(d=c)}return null}
48
- let Aa=[[w.KEY_ARROW_DOWN_COMMAND,"down"],[w.KEY_ARROW_UP_COMMAND,"up"],[w.KEY_ARROW_LEFT_COMMAND,"backward"],[w.KEY_ARROW_RIGHT_COMMAND,"forward"]],Ba=[w.DELETE_WORD_COMMAND,w.DELETE_LINE_COMMAND,w.DELETE_CHARACTER_COMMAND],Ca=[w.KEY_BACKSPACE_COMMAND,w.KEY_DELETE_COMMAND];function Da(a,b){null!==Ea(a)&&E(205);a.__lexicalTableSelection=b}function Ea(a){return a.__lexicalTableSelection||null}
49
- function Fa(a){for(;null!=a;){let b=a.nodeName;if("TD"===b||"TH"===b){a=a._cell;if(void 0===a)break;return a}a=a.parentNode}return null}
50
- function S(a,b){var c=R(a,b);a=[];b={columns:0,domRows:a,rows:0};var d=c.querySelector("tr");let e=c=0;for(a.length=0;null!=d;){var f=d.nodeName;if("TD"===f||"TH"===f){f=d;f={elem:f,hasBackgroundColor:""!==f.style.backgroundColor,highlighted:!1,x:c,y:e};d._cell=f;let g=a[e];void 0===g&&(g=a[e]=[]);g[c]=f}else if(f=d.firstChild,null!=f){d=f;continue}f=d.nextSibling;if(null!=f)c++,d=f;else if(f=d.parentNode,null!=f){d=f.nextSibling;if(null==d)break;e++;c=0}}b.columns=c+1;b.rows=e+1;return b}
51
- function za(a,b,c){let d=new Set(c?c.getNodes():[]);Ga(b,(e,f)=>{let g=e.elem;d.has(f)?(e.highlighted=!0,Ha(a,e)):(e.highlighted=!1,Ia(a,e),g.getAttribute("style")||g.removeAttribute("style"))})}function Ga(a,b){({domRows:a}=a);for(let c=0;c<a.length;c++){let d=a[c];if(d)for(let e=0;e<d.length;e++){let f=d[e];if(!f)continue;let g=w.$getNearestNodeFromDOMNode(f.elem);null!==g&&b(f,g,{x:e,y:c})}}}function Ja(a,b){b.$disableHighlightStyle();Ga(b.table,c=>{c.highlighted=!0;Ha(a,c)})}
52
- function Ka(a,b){b.$enableHighlightStyle();Ga(b.table,c=>{let d=c.elem;c.highlighted=!1;Ia(a,c);d.getAttribute("style")||d.removeAttribute("style")})}
53
- let La=(a,b,c,d,e)=>{const f="forward"===e;switch(e){case "backward":case "forward":return c!==(f?a.table.columns-1:0)?(a=b.getCellNodeFromCordsOrThrow(c+(f?1:-1),d,a.table),f?a.selectStart():a.selectEnd()):d!==(f?a.table.rows-1:0)?(a=b.getCellNodeFromCordsOrThrow(f?0:a.table.columns-1,d+(f?1:-1),a.table),f?a.selectStart():a.selectEnd()):f?b.selectNext():b.selectPrevious(),!0;case "up":return 0!==d?b.getCellNodeFromCordsOrThrow(c,d-1,a.table).selectEnd():b.selectPrevious(),!0;case "down":return d!==
54
- a.table.rows-1?b.getCellNodeFromCordsOrThrow(c,d+1,a.table).selectStart():b.selectNext(),!0;default:return!1}};function Na(a,b){let c;if(b.startColumn===a.minColumn)c="minColumn";else if(b.startColumn+b.cell.__colSpan-1===a.maxColumn)c="maxColumn";else return null;if(b.startRow===a.minRow)a="minRow";else if(b.startRow+b.cell.__rowSpan-1===a.maxRow)a="maxRow";else return null;return[c,a]}function Oa([a,b]){return["minColumn"===a?"maxColumn":"minColumn","minRow"===b?"maxRow":"minRow"]}
55
- function U(a,b,[c,d]){let e=b[d];a=a[e];void 0===a&&E(250,d,String(e));b=b[c];d=a[b];void 0===d&&E(250,c,String(b));return d}
56
- function Pa(a,b,c,d,e){d=ra(b,c,d);let {minColumn:f,maxColumn:g,minRow:n,maxRow:q}=d;var r=1;let l=1,k=1,m=1;var p=b[n];let u=b[q];for(let O=f;O<=g;O++)r=Math.max(r,p[O].cell.__rowSpan),m=Math.max(m,u[O].cell.__rowSpan);for(p=n;p<=q;p++)l=Math.max(l,b[p][f].cell.__colSpan),k=Math.max(k,b[p][g].cell.__colSpan);let {topSpan:t,leftSpan:v,bottomSpan:B,rightSpan:z}={bottomSpan:m,leftSpan:l,rightSpan:k,topSpan:r};r=Na(d,c);null===r&&E(249,c.cell.getKey());let [D,G]=Oa(r);r=d[D];d=d[G];"forward"===e?r+=
57
- "maxColumn"===D?1:v:"backward"===e?r-="minColumn"===D?1:z:"down"===e?d+="maxRow"===G?1:t:"up"===e&&(d-="minRow"===G?1:B);e=b[d];if(void 0===e)return!1;d=e[r];if(void 0===d)return!1;e=ra(b,c,d);(c=Na(e,c))?b=[U(b,e,c),U(b,e,Oa(c))]:(c=Na(e,d))?b=[U(b,e,Oa(c)),U(b,e,c)]:(c=["minColumn","minRow"],b=[U(b,e,c),U(b,e,Oa(c))]);let [H,L]=b;b=V(a,H.cell);c=V(a,L.cell);a.$setAnchorCellForSelection(b);a.$setFocusCellForSelection(c,!0);return!0}
58
- function W(a,b){if(w.$isRangeSelection(a)||Q(a)){let c=b.isParentOf(a.anchor.getNode());a=b.isParentOf(a.focus.getNode());return c&&a}return!1}function Ha(a,b){b=b.elem;a=a._config.theme;let c=w.$getNearestNodeFromDOMNode(b);C(c)||E(131);h.addClassNamesToElement(b,a.tableCellSelected)}function Ia(a,b){b=b.elem;let c=w.$getNearestNodeFromDOMNode(b);C(c)||E(131);h.removeClassNamesFromElement(b,a._config.theme.tableCellSelected)}function X(a){a=h.$findMatchingParent(a,C);return C(a)?a:null}
59
- function Y(a){a=h.$findMatchingParent(a,K);return K(a)?a:null}function Qa(a){for(let b=a,c=a;null!==c;b=c,c=c.getParent())if(w.$isElementNode(c))if(c!==b&&c.getFirstChild()!==b)break;else if(!c.isInline())return c;return null}
60
- function Ra(a,b,c,d,e){if(("up"===c||"down"===c)&&Sa(a))return!1;var f=w.$getSelection();if(!W(f,d)){if(w.$isRangeSelection(f)){if("backward"===c){if(0<f.focus.offset)return!1;c=Qa(f.focus.getNode());if(!c)return!1;c=c.getPreviousSibling();if(!K(c))return!1;Z(b);b.shiftKey?f.focus.set(c.getParentOrThrow().getKey(),c.getIndexWithinParent(),"element"):c.selectEnd();return!0}if(b.shiftKey&&("up"===c||"down"===c)){var g=f.focus.getNode();if(!f.isCollapsed()&&("up"===c&&!f.isBackward()||"down"===c&&f.isBackward())){e=
61
- h.$findMatchingParent(g,r=>K(r));C(e)&&(e=h.$findMatchingParent(e,K));if(e!==d||!e)return!1;d="down"===c?e.getNextSibling():e.getPreviousSibling();if(!d)return!1;e=0;"up"===c&&w.$isElementNode(d)&&(e=d.getChildrenSize());a=d;"up"===c&&w.$isElementNode(d)&&(a=(c=d.getLastChild())?c:d,e=w.$isTextNode(a)?a.getTextContentSize():0);c=f.clone();c.focus.set(a.getKey(),e,w.$isTextNode(a)?"text":"element");w.$setSelection(c);Z(b);return!0}if(w.$isRootOrShadowRoot(g)){if((b="up"===c?f.getNodes()[f.getNodes().length-
62
- 1]:f.getNodes()[0])&&null!==T(d,b)){c=d.getFirstDescendant();b=d.getLastDescendant();if(!c||!b)return!1;[c]=P(c);[b]=P(b);c=d.getCordsFromCellNode(c,e.table);b=d.getCordsFromCellNode(b,e.table);c=d.getDOMCellFromCordsOrThrow(c.x,c.y,e.table);b=d.getDOMCellFromCordsOrThrow(b.x,b.y,e.table);e.$setAnchorCellForSelection(c);e.$setFocusCellForSelection(b,!0);return!0}return!1}d=h.$findMatchingParent(g,r=>w.$isElementNode(r)&&!r.isInline());C(d)&&(d=h.$findMatchingParent(d,K));if(!d)return!1;d="down"===
63
- c?d.getNextSibling():d.getPreviousSibling();if(K(d)&&e.tableNodeKey===d.getKey()){e=d.getFirstDescendant();a=d.getLastDescendant();if(!e||!a)return!1;[d]=P(e);[e]=P(a);f=f.clone();f.focus.set(("up"===c?d:e).getKey(),"up"===c?0:e.getChildrenSize(),"element");Z(b);w.$setSelection(f);return!0}}}"down"===c&&Ta(a)&&e.setShouldCheckSelection();return!1}if(w.$isRangeSelection(f)&&f.isCollapsed()){let {anchor:r,focus:l}=f;g=h.$findMatchingParent(r.getNode(),C);var n=h.$findMatchingParent(l.getNode(),C);if(!C(g)||
64
- !g.is(n))return!1;n=Y(g);if(n!==d&&null!=n){var q=R(n,a.getElementByKey(n.getKey()));if(null!=q)return e.table=S(n,q),Ra(a,b,c,n,e)}if("backward"===c||"forward"===c){e=r.type;a=r.offset;n=r.getNode();if(!n)return!1;f=f.getNodes();return 1===f.length&&w.$isDecoratorNode(f[0])?!1:Ua(e,a,n,c)?Va(b,n,g,d,c):!1}f=a.getElementByKey(g.__key);n=a.getElementByKey(r.key);if(null==n||null==f)return!1;if("element"===r.type)f=n.getBoundingClientRect();else{f=w.getDOMSelection(a._window);if(null===f||0===f.rangeCount)return!1;
65
- f=f.getRangeAt(0).getBoundingClientRect()}n="up"===c?g.getFirstChild():g.getLastChild();if(null==n)return!1;a=a.getElementByKey(n.__key);if(null==a)return!1;a=a.getBoundingClientRect();if("up"===c?a.top>f.top-f.height:f.bottom+f.height>a.bottom){Z(b);f=d.getCordsFromCellNode(g,e.table);if(b.shiftKey)b=d.getDOMCellFromCordsOrThrow(f.x,f.y,e.table),e.$setAnchorCellForSelection(b),e.$setFocusCellForSelection(b,!0);else return La(e,d,f.x,f.y,c);return!0}}else if(Q(f)){let {anchor:r,focus:l}=f;g=h.$findMatchingParent(r.getNode(),
66
- C);n=h.$findMatchingParent(l.getNode(),C);[q]=f.getNodes();K(q)||E(251);a=R(q,a.getElementByKey(q.getKey()));if(!C(g)||!C(n)||!K(q)||null==a)return!1;e.$updateTableTableSelection(f);f=S(q,a);a=d.getCordsFromCellNode(g,f);f=d.getDOMCellFromCordsOrThrow(a.x,a.y,f);e.$setAnchorCellForSelection(f);Z(b);if(b.shiftKey){let [k,m,p]=N(d,g,n);return Pa(e,k,m,p,c)}n.selectEnd();return!0}return!1}function Z(a){a.preventDefault();a.stopImmediatePropagation();a.stopPropagation()}
67
- function Sa(a){return(a=a.getRootElement())?a.hasAttribute("aria-controls")&&"typeahead-menu"===a.getAttribute("aria-controls"):!1}function Ua(a,b,c,d){return"element"===a&&("backward"===d?null===c.getPreviousSibling():null===c.getNextSibling())||Wa(a,b,c,d)}
68
- function Wa(a,b,c,d){let e=h.$findMatchingParent(c,f=>w.$isElementNode(f)&&!f.isInline());if(!e)return!1;b="backward"===d?0===b:b===c.getTextContentSize();return"text"===a&&b&&("backward"===d?null===e.getPreviousSibling():null===e.getNextSibling())}
69
- function Va(a,b,c,d,e){let [f,g]=N(d,c,c);c=f[0][0];let n=f[f.length-1][f[0].length-1],{startColumn:q,startRow:r}=g;if("backward"===e?q!==c.startColumn||r!==c.startRow:q!==n.startColumn||r!==n.startRow)return!1;b=Xa(b,e,d);if(!b||K(b))return!1;Z(a);"backward"===e?b.selectEnd():b.selectStart();return!0}
70
- function Xa(a,b,c){if(a=h.$findMatchingParent(a,d=>w.$isElementNode(d)&&!d.isInline()))return(a="backward"===b?a.getPreviousSibling():a.getNextSibling())&&K(a)?a:"backward"===b?c.getPreviousSibling():c.getNextSibling()}function Ya(a,b,c){let d=w.$createParagraphNode();"first"===a?b.insertBefore(d):b.insertAfter(d);d.append(...(c||[]));d.selectEnd()}
71
- function Za(a,b,c){var d=c.getParent();if(d){var e=w.getDOMSelection(a._window);if(e&&(e=e.anchorNode,d=a.getElementByKey(d.getKey()),a=R(c,a.getElementByKey(c.getKey())),e&&d&&a&&d.contains(e)&&!a.contains(e)&&(b=h.$findMatchingParent(b.anchor.getNode(),r=>C(r))))&&(a=h.$findMatchingParent(b,r=>K(r)),K(a)&&a.is(c))){var [f,g]=N(c,b,b);c=f[0][0];b=f[f.length-1][f[0].length-1];var {startRow:n,startColumn:q}=g;if(n===c.startRow&&q===c.startColumn)return"first";if(n===b.startRow&&q===b.startColumn)return"last"}}}
72
- function V(a,b){let {tableNode:c}=a.$lookup();b=c.getCordsFromCellNode(b,a.table);return c.getDOMCellFromCordsOrThrow(b.x,b.y,a.table)}function $a(a,b,c,d){if(a=a.querySelector("colgroup")){b=[];for(let e=0;e<c;e++){let f=document.createElement("col"),g=d&&d[e];g&&(f.style.width=`${g}px`);b.push(f)}a.replaceChildren(...b)}}
73
- function ab(a,b,c){c?(h.addClassNamesToElement(a,b.theme.tableRowStriping),a.setAttribute("data-lexical-row-striping","true")):(h.removeClassNamesFromElement(a,b.theme.tableRowStriping),a.removeAttribute("data-lexical-row-striping"))}let bb=new WeakSet;function Ta(a=w.$getEditor()){return bb.has(a)}
74
- class cb extends w.ElementNode{static getType(){return"table"}getColWidths(){return this.getLatest().__colWidths}setColWidths(a){let b=this.getWritable();b.__colWidths=a;return b}static clone(a){return new cb(a.__key)}afterCloneFrom(a){super.afterCloneFrom(a);this.__colWidths=a.__colWidths;this.__rowStriping=a.__rowStriping}static importDOM(){return{table:()=>({conversion:db,priority:1})}}static importJSON(a){let b=eb();b.__rowStriping=a.rowStriping||!1;b.__colWidths=a.colWidths;return b}constructor(a){super(a);
75
- this.__rowStriping=!1}exportJSON(){return{...super.exportJSON(),colWidths:this.getColWidths(),rowStriping:this.__rowStriping?this.__rowStriping:void 0,type:"table",version:1}}extractWithChild(a,b,c){return"html"===c}getDOMSlot(a){a="TABLE"!==a.nodeName&&a.querySelector("table")||a;"TABLE"!==a.nodeName&&E(229);return super.getDOMSlot(a).withAfter(a.querySelector("colgroup"))}createDOM(a,b){let c=document.createElement("table"),d=document.createElement("colgroup");c.appendChild(d);$a(c,a,this.getColumnCount(),
76
- this.getColWidths());w.setDOMUnmanaged(d);h.addClassNamesToElement(c,a.theme.table);this.__rowStriping&&ab(c,a,!0);return Ta(b)?(b=document.createElement("div"),(a=a.theme.tableScrollableWrapper)?h.addClassNamesToElement(b,a):b.style.cssText="overflow-x: auto;",b.appendChild(c),b):c}updateDOM(a,b,c){a.__rowStriping!==this.__rowStriping&&ab(b,c,this.__rowStriping);$a(b,c,this.getColumnCount(),this.getColWidths());return!1}exportDOM(a){let b=super.exportDOM(a);({element:a}=b);return{after:c=>{b.after&&
77
- (c=b.after(c));c&&h.isHTMLElement(c)&&"TABLE"!==c.nodeName&&(c=c.querySelector("table"));if(!c||!h.isHTMLElement(c))return null;var [d]=qa(this,null,null),e=new Map;for(var f of d)for(var g of f)d=g.cell.getKey(),e.has(d)||e.set(d,{colSpan:g.cell.getColSpan(),startColumn:g.startColumn});let n=new Set;for(var q of c.querySelectorAll(":scope > tr > [data-temporary-table-cell-lexical-key]"))if(g=q.getAttribute("data-temporary-table-cell-lexical-key"))if(f=e.get(g),q.removeAttribute("data-temporary-table-cell-lexical-key"),
78
- f)for(e.delete(g),g=0;g<f.colSpan;g++)n.add(g+f.startColumn);if(e=c.querySelector(":scope > colgroup"))q=Array.from(c.querySelectorAll(":scope > colgroup > col")).filter((r,l)=>n.has(l)),e.replaceChildren(...q);e=c.querySelectorAll(":scope > tr");if(0<e.length){q=document.createElement("tbody");for(let r of e)q.appendChild(r);c.append(q)}return c},element:a&&h.isHTMLElement(a)&&"TABLE"!==a.nodeName?a.querySelector("table"):a}}canBeEmpty(){return!1}isShadowRoot(){return!0}getCordsFromCellNode(a,b){let {rows:c,
79
- domRows:d}=b;for(b=0;b<c;b++){let f=d[b];if(null!=f)for(let g=0;g<f.length;g++){var e=f[g];if(null!=e&&({elem:e}=e,e=T(this,w.$getNearestNodeFromDOMNode(e,void 0)),null!==e&&a.is(e)))return{x:g,y:b}}}throw Error("Cell not found in table.");}getDOMCellFromCords(a,b,c){({domRows:c}=c);b=c[b];if(null==b)return null;a=b[a<b.length?a:b.length-1];return null==a?null:a}getDOMCellFromCordsOrThrow(a,b,c){a=this.getDOMCellFromCords(a,b,c);if(!a)throw Error("Cell not found at cords.");return a}getCellNodeFromCords(a,
80
- b,c){a=this.getDOMCellFromCords(a,b,c);if(null==a)return null;a=w.$getNearestNodeFromDOMNode(a.elem);return C(a)?a:null}getCellNodeFromCordsOrThrow(a,b,c){a=this.getCellNodeFromCords(a,b,c);if(!a)throw Error("Node at cords not TableCellNode.");return a}getRowStriping(){return!!this.getLatest().__rowStriping}setRowStriping(a){this.getWritable().__rowStriping=a}canSelectBefore(){return!0}canIndent(){return!1}getColumnCount(){let a=this.getFirstChild();if(!a)return 0;let b=0;a.getChildren().forEach(c=>
81
- {C(c)&&(b+=c.getColSpan())});return b}}function db(a){let b=eb();a.hasAttribute("data-lexical-row-striping")&&b.setRowStriping(!0);var c=a.querySelector(":scope > colgroup");if(c){a=[];for(let d of c.querySelectorAll(":scope > col")){c=d.style.width;if(!c||!ca.test(c)){a=void 0;break}a.push(parseFloat(c))}a&&b.setColWidths(a)}return{node:b}}function eb(){return w.$applyNodeReplacement(new cb)}function K(a){return a instanceof cb}exports.$computeTableMap=N;exports.$computeTableMapSkipCellCheck=qa;
82
- exports.$createTableCellNode=A;exports.$createTableNode=eb;exports.$createTableNodeWithDimensions=function(a,b,c=!0){let d=eb();for(let f=0;f<a;f++){let g=I();for(let n=0;n<b;n++){var e=x.NO_STATUS;"object"===typeof c?(0===f&&c.rows&&(e|=x.ROW),0===n&&c.columns&&(e|=x.COLUMN)):c&&(0===f&&(e|=x.ROW),0===n&&(e|=x.COLUMN));e=A(e);let q=w.$createParagraphNode();q.append(w.$createTextNode());e.append(q);g.append(e)}d.append(g)}return d};exports.$createTableRowNode=I;exports.$createTableSelection=wa;
83
- exports.$deleteTableColumn=function(a,b){let c=a.getChildren();for(let e=0;e<c.length;e++){var d=c[e];if(J(d)){d=d.getChildren();if(b>=d.length||0>b)throw Error("Table column target index out of range");d[b].remove()}}return a};
84
- exports.$deleteTableColumn__EXPERIMENTAL=function(){var a=w.$getSelection();w.$isRangeSelection(a)||Q(a)||E(188);var b=a.anchor.getNode();a=a.focus.getNode();let [c,,d]=P(b);var [e]=P(a);let [f,g,n]=N(d,c,e);var {startColumn:q}=g;let {startRow:r,startColumn:l}=n;b=Math.min(q,l);var k=Math.max(q+c.__colSpan-1,l+e.__colSpan-1);a=k-b+1;if(f[0].length===k-b+1)d.selectPrevious(),d.remove();else{var m=f.length;for(let p=0;p<m;p++)for(let u=b;u<=k;u++){let {cell:t,startColumn:v}=f[p][u];v<b?u===b&&t.setColSpan(t.__colSpan-
85
- Math.min(a,t.__colSpan-(b-v))):v+t.__colSpan-1>k?u===k&&t.setColSpan(t.__colSpan-(k-v+1)):t.remove()}k=f[r];e=q>l?k[q+c.__colSpan]:k[l+e.__colSpan];void 0!==e?({cell:q}=e,M(q)):({cell:q}=l<q?k[l-1]:k[q-1],M(q));if(q=d.getColWidths())q=[...q],q.splice(b,a),d.setColWidths(q)}};
86
- exports.$deleteTableRow__EXPERIMENTAL=function(){var a=w.$getSelection();w.$isRangeSelection(a)||Q(a)||E(188);let [b,c]=a.isBackward()?[a.focus.getNode(),a.anchor.getNode()]:[a.anchor.getNode(),a.focus.getNode()],[d,,e]=P(b);var [f]=P(c);let [g,n,q]=N(e,d,f);({startRow:a}=n);var {startRow:r}=q;f=r+f.__rowSpan-1;if(g.length===f-a+1)e.remove();else{r=g[0].length;var l=g[f+1],k=e.getChildAtIndex(f+1);for(let p=f;p>=a;p--){for(var m=r-1;0<=m;m--){let {cell:u,startRow:t,startColumn:v}=g[p][m];if(v===m&&
87
- (p===a&&t<a&&u.setRowSpan(u.__rowSpan-(t-a)),t>=a&&t+u.__rowSpan-1>f))if(u.setRowSpan(u.__rowSpan-(f-t+1)),null===k&&E(122),0===m)pa(k,u);else{let {cell:B}=l[m-1];B.insertAfter(u)}}m=e.getChildAtIndex(p);J(m)||E(206,String(p));m.remove()}void 0!==l?({cell:a}=l[0],M(a)):({cell:a}=g[a-1][0],M(a))}};exports.$findCellNode=X;exports.$findTableNode=Y;exports.$getElementForTableNode=function(a,b){a=a.getElementByKey(b.getKey());null===a&&E(230);return S(b,a)};exports.$getNodeTriplet=P;
88
- exports.$getTableAndElementByKey=xa;exports.$getTableCellNodeFromLexicalNode=function(a){a=h.$findMatchingParent(a,b=>C(b));return C(a)?a:null};exports.$getTableCellNodeRect=sa;exports.$getTableColumnIndexFromTableCellNode=function(a){return la(a).getChildren().findIndex(b=>b.is(a))};exports.$getTableNodeFromLexicalNodeOrThrow=ma;exports.$getTableRowIndexFromTableCellNode=function(a){let b=la(a);return ma(b).getChildren().findIndex(c=>c.is(b))};exports.$getTableRowNodeFromTableCellNodeOrThrow=la;
89
- exports.$insertTableColumn=function(a,b,c=!0,d,e){let f=a.getChildren(),g=[];for(let r=0;r<f.length;r++){let l=f[r];if(J(l))for(let k=0;k<d;k++){var n=l.getChildren();if(b>=n.length||0>b)throw Error("Table column target index out of range");n=n[b];C(n)||E(12);let {left:m,right:p}=na(n,e);var q=x.NO_STATUS;if(m&&m.hasHeaderState(x.ROW)||p&&p.hasHeaderState(x.ROW))q|=x.ROW;q=A(q);q.append(w.$createParagraphNode());g.push({newTableCell:q,targetCell:n})}}g.forEach(({newTableCell:r,targetCell:l})=>{c?
90
- l.insertAfter(r):l.insertBefore(r)});return a};
91
- exports.$insertTableColumn__EXPERIMENTAL=function(a=!0){function b(k=x.NO_STATUS){k=A(k).append(w.$createParagraphNode());null===r&&(r=k);return k}var c=w.$getSelection();w.$isRangeSelection(c)||Q(c)||E(188);var d=c.anchor.getNode();c=c.focus.getNode();[d]=P(d);let [e,,f]=P(c),[g,n,q]=N(f,e,d);d=g.length;c=a?Math.max(n.startColumn,q.startColumn):Math.min(n.startColumn,q.startColumn);a=a?c+e.__colSpan-1:c-1;c=f.getFirstChild();J(c)||E(120);let r=null;var l=c;a:for(c=0;c<d;c++){0!==c&&(l=l.getNextSibling(),
92
- J(l)||E(121));let k=g[c],m=oa(k[0>a?0:a].cell.__headerState,x.ROW);if(0>a){pa(l,b(m));continue}let {cell:p,startColumn:u,startRow:t}=k[a];if(u+p.__colSpan-1<=a){let v=p,B=t,z=a;for(;B!==c&&1<v.__rowSpan;)if(z-=p.__colSpan,0<=z){let {cell:D,startRow:G}=k[z];v=D;B=G}else{l.append(b(m));continue a}v.insertAfter(b(m))}else p.setColSpan(p.__colSpan+1)}null!==r&&M(r);if(d=f.getColWidths())d=[...d],a=0>a?0:a,d.splice(a,0,d[a]),f.setColWidths(d);return r};
93
- exports.$insertTableRow=function(a,b,c=!0,d,e){var f=a.getChildren();if(b>=f.length||0>b)throw Error("Table row target index out of range");b=f[b];if(J(b))for(f=0;f<d;f++){let n=b.getChildren(),q=n.length,r=I();for(let l=0;l<q;l++){var g=n[l];C(g)||E(12);let {above:k,below:m}=na(g,e);g=x.NO_STATUS;let p=k&&k.getWidth()||m&&m.getWidth()||void 0;if(k&&k.hasHeaderState(x.COLUMN)||m&&m.hasHeaderState(x.COLUMN))g|=x.COLUMN;g=A(g,1,p);g.append(w.$createParagraphNode());r.append(g)}c?b.insertAfter(r):b.insertBefore(r)}else throw Error("Row before insertion index does not exist.");
16
+ function da(a){var b=a.nodeName.toLowerCase(),c=void 0;ba.test(a.style.width)&&(c=parseFloat(a.style.width));b=A("th"===b?x.ROW:x.NO_STATUS,a.colSpan,c);b.__rowSpan=a.rowSpan;c=a.style.backgroundColor;""!==c&&(b.__backgroundColor=c);a=a.style;c=(a&&a.textDecoration||"").split(" ");let d="700"===a.fontWeight||"bold"===a.fontWeight,e=c.includes("line-through"),f="italic"===a.fontStyle,g=c.includes("underline");return{after:m=>{0===m.length&&m.push(v.$createParagraphNode());return m},forChild:(m,p)=>
17
+ {if(B(p)&&!v.$isElementNode(m)){p=v.$createParagraphNode();if(v.$isLineBreakNode(m)&&"\n"===m.getTextContent())return null;v.$isTextNode(m)&&(d&&m.toggleFormat("bold"),e&&m.toggleFormat("strikethrough"),f&&m.toggleFormat("italic"),g&&m.toggleFormat("underline"));p.append(m);return p}return m},node:b}}function A(a=x.NO_STATUS,b=1,c){return v.$applyNodeReplacement(new y(a,b,c))}function B(a){return a instanceof y}let ea=v.createCommand("INSERT_TABLE_COMMAND");var D;
18
+ function F(a){let b=new URLSearchParams;b.append("code",a);for(let c=1;c<arguments.length;c++)b.append("v",arguments[c]);throw Error(`Minified Lexical error #${a}; visit https://lexical.dev/docs/error?${b} for the full message or `+"use the non-minified dev environment for full errors and additional helpful warnings.");}D=F&&F.__esModule&&Object.prototype.hasOwnProperty.call(F,"default")?F["default"]:F;
19
+ class I extends v.ElementNode{static getType(){return"tablerow"}static clone(a){return new I(a.__height,a.__key)}static importDOM(){return{tr:()=>({conversion:fa,priority:0})}}static importJSON(a){return J(a.height)}constructor(a,b){super(b);this.__height=a}exportJSON(){return{...super.exportJSON(),...(this.getHeight()&&{height:this.getHeight()}),type:"tablerow",version:1}}createDOM(a){let b=document.createElement("tr");this.__height&&(b.style.height=`${this.__height}px`);h.addClassNamesToElement(b,
20
+ a.theme.tableRow);return b}extractWithChild(a,b,c){return"html"===c}isShadowRoot(){return!0}setHeight(a){this.getWritable().__height=a;return this.__height}getHeight(){return this.getLatest().__height}updateDOM(a){return a.__height!==this.__height}canBeEmpty(){return!1}canIndent(){return!1}}function fa(a){let b=void 0;ba.test(a.style.height)&&(b=parseFloat(a.style.height));return{after:c=>h.$descendantsMatching(c,B),node:J(b)}}function J(a){return v.$applyNodeReplacement(new I(a))}
21
+ function K(a){return a instanceof I}let ha="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,ia=ha&&"documentMode"in document?document.documentMode:null,ja=ha&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent);ha&&"InputEvent"in window&&!ia?"getTargetRanges"in new window.InputEvent("input"):!1;
22
+ function ka(a,b,c=!0){let d=la();for(let f=0;f<a;f++){let g=J();for(let m=0;m<b;m++){var e=x.NO_STATUS;"object"===typeof c?(0===f&&c.rows&&(e|=x.ROW),0===m&&c.columns&&(e|=x.COLUMN)):c&&(0===f&&(e|=x.ROW),0===m&&(e|=x.COLUMN));e=A(e);let p=v.$createParagraphNode();p.append(v.$createTextNode());e.append(p);g.append(e)}d.append(g)}return d}function ma(a){a=h.$findMatchingParent(a,b=>K(b));if(K(a))return a;throw Error("Expected table cell to be inside of table row.");}
23
+ function na(a){a=h.$findMatchingParent(a,b=>L(b));if(L(a))return a;throw Error("Expected table cell to be inside of table.");}function oa(a,b){let c=na(a),{x:d,y:e}=c.getCordsFromCellNode(a,b);return{above:c.getCellNodeFromCords(d,e-1,b),below:c.getCellNodeFromCords(d,e+1,b),left:c.getCellNodeFromCords(d-1,e,b),right:c.getCellNodeFromCords(d+1,e,b)}}let pa=(a,b)=>a===x.BOTH||a===b?b:x.NO_STATUS;function M(a){let b=a.getFirstDescendant();null==b?a.selectStart():b.getParentOrThrow().selectStart()}
24
+ function qa(a,b){let c=a.getFirstChild();null!==c?c.insertBefore(b):a.append(b)}function O(a,b,c){let [d,e,f]=ra(a,b,c);null===e&&D(207);null===f&&D(208);return[d,e,f]}
25
+ function ra(a,b,c){function d(p){let r=e[p];void 0===r&&(e[p]=r=[]);return r}let e=[],f=null,g=null;a=a.getChildren();for(let p=0;p<a.length;p++){var m=a[p];K(m)||D(209);for(let r=m.getFirstChild(),k=0;null!=r;r=r.getNextSibling()){B(r)||D(147);for(m=d(p);void 0!==m[k];)k++;m={cell:r,startColumn:k,startRow:p};let {__rowSpan:l,__colSpan:n}=r;for(let q=0;q<l&&!(p+q>=a.length);q++){let u=d(p+q);for(let t=0;t<n;t++)u[k+t]=m}null!==b&&null===f&&b.is(r)&&(f=m);null!==c&&null===g&&c.is(r)&&(g=m)}}return[e,
26
+ f,g]}function Q(a){a instanceof y||("__type"in a?(a=h.$findMatchingParent(a,B),B(a)||D(148)):(a=h.$findMatchingParent(a.getNode(),B),B(a)||D(148)));let b=a.getParent();K(b)||D(149);let c=b.getParent();L(c)||D(210);return[a,b,c]}
27
+ function sa(a,b,c){function d(n){let {cell:q,startColumn:u,startRow:t}=n;e=Math.min(e,u);f=Math.min(f,t);g=Math.max(g,u+q.__colSpan-1);m=Math.max(m,t+q.__rowSpan-1)}let e=Math.min(b.startColumn,c.startColumn),f=Math.min(b.startRow,c.startRow),g=Math.max(b.startColumn+b.cell.__colSpan-1,c.startColumn+c.cell.__colSpan-1),m=Math.max(b.startRow+b.cell.__rowSpan-1,c.startRow+c.cell.__rowSpan-1);b=e;c=f;for(var p=e,r=f;e<b||f<c||g>p||m>r;){if(e<b){var k=r-c;--b;for(var l=0;l<=k;l++)d(a[c+l][b])}if(f<c)for(k=
28
+ p-b,--c,l=0;l<=k;l++)d(a[c][b+l]);if(g>p)for(k=r-c,p+=1,l=0;l<=k;l++)d(a[c+l][p]);if(m>r)for(k=p-b,r+=1,l=0;l<=k;l++)d(a[r][b+l])}return{maxColumn:g,maxRow:m,minColumn:e,minRow:f}}
29
+ function ta(a){let [b,,c]=Q(a);a=c.getChildren();let d=a.length;var e=a[0].getChildren().length;let f=Array(d);for(var g=0;g<d;g++)f[g]=Array(e);for(e=0;e<d;e++){g=a[e].getChildren();let m=0;for(let p=0;p<g.length;p++){for(;f[e][m];)m++;let r=g[p],k=r.__rowSpan||1,l=r.__colSpan||1;for(let n=0;n<k;n++)for(let q=0;q<l;q++)f[e+n][m+q]=r;if(b===r)return{colSpan:l,columnIndex:m,rowIndex:e,rowSpan:k};m+=l}}return null}
30
+ function ua(a){let [[b,c,d,e],[f,g,m,p]]=["anchor","focus"].map(r=>{const k=a[r].getNode(),l=h.$findMatchingParent(k,B);B(l)||D(238,r,k.getKey(),k.getType());const n=l.getParent();K(n)||D(239,r);const q=n.getParent();L(q)||D(240,r);return[k,l,n,q]});e.is(p)||D(241);return{anchorCell:c,anchorNode:b,anchorRow:d,anchorTable:e,focusCell:g,focusNode:f,focusRow:m,focusTable:p}}
31
+ class va{constructor(a,b,c){this.anchor=b;this.focus=c;b._selection=this;c._selection=this;this._cachedNodes=null;this.dirty=!1;this.tableKey=a}getStartEndPoints(){return[this.anchor,this.focus]}isValid(){return"root"!==this.tableKey&&"root"!==this.anchor.key&&"element"===this.anchor.type&&"root"!==this.focus.key&&"element"===this.focus.type}isBackward(){return this.focus.isBefore(this.anchor)}getCachedNodes(){return this._cachedNodes}setCachedNodes(a){this._cachedNodes=a}is(a){return R(a)&&this.tableKey===
32
+ a.tableKey&&this.anchor.is(a.anchor)&&this.focus.is(a.focus)}set(a,b,c){this.dirty=this.dirty||a!==this.tableKey||b!==this.anchor.key||c!==this.focus.key;this.tableKey=a;this.anchor.key=b;this.focus.key=c;this._cachedNodes=null}clone(){return new va(this.tableKey,v.$createPoint(this.anchor.key,this.anchor.offset,this.anchor.type),v.$createPoint(this.focus.key,this.focus.offset,this.focus.type))}isCollapsed(){return!1}extract(){return this.getNodes()}insertRawText(){}insertText(){}hasFormat(a){let b=
33
+ 0;this.getNodes().filter(B).forEach(c=>{c=c.getFirstChild();v.$isParagraphNode(c)&&(b|=c.getTextFormat())});return 0!==(b&v.TEXT_TYPE_TO_FORMAT[a])}insertNodes(a){let b=this.focus.getNode();v.$isElementNode(b)||D(151);v.$normalizeSelection__EXPERIMENTAL(b.select(0,b.getChildrenSize())).insertNodes(a)}getShape(){let {anchorCell:a,focusCell:b}=ua(this);var c=ta(a);null===c&&D(153);let d=ta(b);null===d&&D(155);let e=Math.min(c.columnIndex,d.columnIndex),f=Math.max(c.columnIndex+c.colSpan-1,d.columnIndex+
34
+ d.colSpan-1),g=Math.min(c.rowIndex,d.rowIndex);c=Math.max(c.rowIndex+c.rowSpan-1,d.rowIndex+d.rowSpan-1);return{fromX:Math.min(e,f),fromY:Math.min(g,c),toX:Math.max(e,f),toY:Math.max(g,c)}}getNodes(){if(!this.isValid())return[];var a=this._cachedNodes;if(null!==a)return a;let {anchorTable:b,anchorCell:c,focusCell:d}=ua(this);a=d.getParents()[1];if(a!==b)return b.isParentOf(d)?(a=a.getParent(),null==a&&D(159),this.set(this.tableKey,d.getKey(),a.getKey())):(a=b.getParent(),null==a&&D(158),this.set(this.tableKey,
35
+ a.getKey(),d.getKey())),this.getNodes();let [e,f,g]=O(b,c,d),{minColumn:m,maxColumn:p,minRow:r,maxRow:k}=sa(e,f,g),l=new Map([[b.getKey(),b]]);a=null;for(let n=r;n<=k;n++)for(let q=m;q<=p;q++){let {cell:u}=e[n][q],t=u.getParent();K(t)||D(160);t!==a&&(l.set(t.getKey(),t),a=t);l.has(u.getKey())||wa(u,w=>{l.set(w.getKey(),w)})}a=Array.from(l.values());v.isCurrentlyReadOnlyMode()||(this._cachedNodes=a);return a}getTextContent(){let a=this.getNodes().filter(c=>B(c)),b="";for(let c=0;c<a.length;c++){let d=
36
+ a[c],e=d.__parent,f=(a[c+1]||{}).__parent;b+=d.getTextContent()+(f!==e?"\n":"\t")}return b}}function R(a){return a instanceof va}function xa(){let a=v.$createPoint("root",0,"element"),b=v.$createPoint("root",0,"element");return new va("root",a,b)}function wa(a,b){a=[[a]];for(var c=a.at(-1);void 0!==c&&0<a.length;c=a.at(-1))c=c.pop(),void 0===c?a.pop():!1!==b(c)&&v.$isElementNode(c)&&a.push(c.getChildren())}
37
+ function ya(a,b=v.$getEditor()){let c=v.$getNodeByKey(a);L(c)||D(231,a);b=S(c,b.getElementByKey(a));null===b&&D(232,a);return{tableElement:b,tableNode:c}}
38
+ class za{constructor(a,b){this.isHighlightingCells=!1;this.focusY=this.focusX=this.anchorY=this.anchorX=-1;this.listenersToRemove=new Set;this.tableNodeKey=b;this.editor=a;this.table={columns:0,domRows:[],rows:0};this.focusCell=this.anchorCell=this.focusCellNodeKey=this.anchorCellNodeKey=this.tableSelection=null;this.shouldCheckSelection=this.isSelecting=this.hasHijackedSelectionStyles=!1;this.abortController=new AbortController;this.listenerOptions={signal:this.abortController.signal};this.nextFocus=
39
+ null;this.trackTable()}getTable(){return this.table}removeListeners(){this.abortController.abort("removeListeners");Array.from(this.listenersToRemove).forEach(a=>a());this.listenersToRemove.clear()}$lookup(){return ya(this.tableNodeKey,this.editor)}trackTable(){let a=new MutationObserver(b=>{this.editor.getEditorState().read(()=>{let c=!1;for(let f=0;f<b.length;f++){const g=b[f].target.nodeName;if("TABLE"===g||"TBODY"===g||"THEAD"===g||"TR"===g){c=!0;break}}if(c){var {tableNode:d,tableElement:e}=
40
+ this.$lookup();this.table=T(d,e)}},{editor:this.editor})});this.editor.getEditorState().read(()=>{let {tableNode:b,tableElement:c}=this.$lookup();this.table=T(b,c);a.observe(c,{attributes:!0,childList:!0,subtree:!0})},{editor:this.editor})}$clearHighlight(){let a=this.editor;this.isHighlightingCells=!1;this.focusY=this.focusX=this.anchorY=this.anchorX=-1;this.focusCell=this.anchorCell=this.focusCellNodeKey=this.anchorCellNodeKey=this.tableSelection=null;this.hasHijackedSelectionStyles=!1;this.$enableHighlightStyle();
41
+ let {tableNode:b,tableElement:c}=this.$lookup(),d=T(b,c);Aa(a,d,null);null!==v.$getSelection()&&(v.$setSelection(null),a.dispatchCommand(v.SELECTION_CHANGE_COMMAND,void 0))}$enableHighlightStyle(){let a=this.editor,{tableElement:b}=this.$lookup();h.removeClassNamesFromElement(b,a._config.theme.tableSelection);b.classList.remove("disable-selection");this.hasHijackedSelectionStyles=!1}$disableHighlightStyle(){let {tableElement:a}=this.$lookup();h.addClassNamesToElement(a,this.editor._config.theme.tableSelection);
42
+ this.hasHijackedSelectionStyles=!0}$updateTableTableSelection(a){if(null!==a){a.tableKey!==this.tableNodeKey&&D(233,a.tableKey,this.tableNodeKey);let b=this.editor;this.tableSelection=a;this.isHighlightingCells=!0;this.$disableHighlightStyle();this.updateDOMSelection();Aa(b,this.table,this.tableSelection)}else this.$clearHighlight()}setShouldCheckSelection(){this.shouldCheckSelection=!0}getAndClearShouldCheckSelection(){return this.shouldCheckSelection?(this.shouldCheckSelection=!1,!0):!1}setNextFocus(a){this.nextFocus=
43
+ a}getAndClearNextFocus(){let {nextFocus:a}=this;null!==a&&(this.nextFocus=null);return a}updateDOMSelection(){if(null!==this.anchorCell&&null!==this.focusCell){let a=v.getDOMSelection(this.editor._window);a&&0<a.rangeCount&&a.removeAllRanges()}}$setFocusCellForSelection(a,b=!1){let c=this.editor,{tableNode:d}=this.$lookup();var e=a.x;let f=a.y;this.focusCell=a;if(!this.isHighlightingCells&&(this.anchorX!==e||this.anchorY!==f||b))this.isHighlightingCells=!0,this.$disableHighlightStyle();else if(e===
44
+ this.focusX&&f===this.focusY)return!1;this.focusX=e;this.focusY=f;return this.isHighlightingCells&&(b=U(d,v.$getNearestNodeFromDOMNode(a.elem,void 0)),null!=this.tableSelection&&null!=this.anchorCellNodeKey&&null!==b)?(this.focusCellNodeKey=b.getKey(),a=this.$getAnchorTableCellOrThrow(),d.getKey(),a.getKey(),b.getKey(),e=v.$getSelection(),e=R(e)?e.clone():xa(),e.set(d.getKey(),a.getKey(),b.getKey()),this.tableSelection=e,v.$setSelection(this.tableSelection),c.dispatchCommand(v.SELECTION_CHANGE_COMMAND,
45
+ void 0),Aa(c,this.table,this.tableSelection),!0):!1}$getAnchorTableCell(){return this.anchorCellNodeKey?v.$getNodeByKey(this.anchorCellNodeKey):null}$getAnchorTableCellOrThrow(){let a=this.$getAnchorTableCell();null===a&&D(234);return a}$getFocusTableCell(){return this.focusCellNodeKey?v.$getNodeByKey(this.focusCellNodeKey):null}$getFocusTableCellOrThrow(){let a=this.$getFocusTableCell();null===a&&D(235);return a}$setAnchorCellForSelection(a){this.isHighlightingCells=!1;this.anchorCell=a;this.anchorX=
46
+ a.x;this.anchorY=a.y;let {tableNode:b}=this.$lookup();a=U(b,v.$getNearestNodeFromDOMNode(a.elem,void 0));null!==a&&(a=a.getKey(),this.tableSelection=null!=this.tableSelection?this.tableSelection.clone():xa(),this.anchorCellNodeKey=a)}$formatCells(a){let b=v.$getSelection();R(b)||D(236);let c=v.$createRangeSelection(),d=c.anchor,e=c.focus,f=b.getNodes().filter(B);0<f.length||D(237);let g=f[0].getFirstChild(),m=v.$isParagraphNode(g)?g.getFormatFlags(a,null):null;f.forEach(p=>{d.set(p.getKey(),0,"element");
47
+ e.set(p.getKey(),p.getChildrenSize(),"element");c.formatText(a,m)});v.$setSelection(b);this.editor.dispatchCommand(v.SELECTION_CHANGE_COMMAND,void 0)}$clearText(){let {editor:a}=this,b=v.$getNodeByKey(this.tableNodeKey);if(!L(b))throw Error("Expected TableNode.");var c=v.$getSelection();R(c)||D(11);c=c.getNodes().filter(B);c.length===this.table.columns*this.table.rows?(b.selectPrevious(),b.remove(),v.$getRoot().selectStart()):(c.forEach(d=>{if(v.$isElementNode(d)){let e=v.$createParagraphNode(),f=
48
+ v.$createTextNode();e.append(f);d.append(e);d.getChildren().forEach(g=>{g!==e&&g.remove()})}}),Aa(a,this.table,null),v.$setSelection(null),a.dispatchCommand(v.SELECTION_CHANGE_COMMAND,void 0))}}function S(a,b){if(!b)return b;a="TABLE"===b.nodeName?b:a.getDOMSlot(b).element;"TABLE"!==a.nodeName&&D(245,b.nodeName);return a}function U(a,b){for(let c=b,d=null;null!==c;c=c.getParent()){if(a.is(c))return d;B(c)&&(d=c)}return null}
49
+ let Ba=[[v.KEY_ARROW_DOWN_COMMAND,"down"],[v.KEY_ARROW_UP_COMMAND,"up"],[v.KEY_ARROW_LEFT_COMMAND,"backward"],[v.KEY_ARROW_RIGHT_COMMAND,"forward"]],Ca=[v.DELETE_WORD_COMMAND,v.DELETE_LINE_COMMAND,v.DELETE_CHARACTER_COMMAND],Da=[v.KEY_BACKSPACE_COMMAND,v.KEY_DELETE_COMMAND];
50
+ function Ea(a,b,c,d){let e=c.getRootElement(),f=c._window;null!==e&&null!==f||D(246);let g=new za(c,a.getKey()),m=S(a,b);Fa(m,g);g.listenersToRemove.add(()=>{Ga(m)===g&&delete m.__lexicalTableSelection});let p=()=>{if(!g.isSelecting){var k=()=>{g.isSelecting=!1;f.removeEventListener("mouseup",k);f.removeEventListener("mousemove",l)},l=n=>{if(1!==(n.buttons&1)&&g.isSelecting)g.isSelecting=!1,f.removeEventListener("mouseup",k),f.removeEventListener("mousemove",l);else{var q=!m.contains(n.target),u=
51
+ null;if(q)for(const t of document.elementsFromPoint(n.clientX,n.clientY)){if(u=m.contains(t)?Ha(t):null)break}else u=Ha(n.target);!u||null!==g.focusCell&&u.elem===g.focusCell.elem||(g.setNextFocus({focusCell:u,override:q}),c.dispatchCommand(v.SELECTION_CHANGE_COMMAND,void 0))}};g.isSelecting=!0;f.addEventListener("mouseup",k,g.listenerOptions);f.addEventListener("mousemove",l,g.listenerOptions)}};m.addEventListener("mousedown",k=>{if(0===k.button&&f){var l=Ha(k.target);null!==l&&c.update(()=>{const n=
52
+ v.$getPreviousSelection();if(ja&&k.shiftKey&&V(n,a)&&(v.$isRangeSelection(n)||R(n))){const q=n.anchor.getNode(),u=U(a,n.anchor.getNode());u?(g.$setAnchorCellForSelection(W(g,u)),g.$setFocusCellForSelection(l),X(k)):(a.isBefore(q)?a.selectStart():a.selectEnd()).anchor.set(n.anchor.key,n.anchor.offset,n.anchor.type)}else g.$setAnchorCellForSelection(l)});p()}},g.listenerOptions);f.addEventListener("mousedown",k=>{0===k.button&&c.update(()=>{const l=v.$getSelection(),n=k.target;R(l)&&l.tableKey===g.tableNodeKey&&
53
+ e.contains(n)&&g.$clearHighlight()})},g.listenerOptions);for(let [k,l]of Ba)g.listenersToRemove.add(c.registerCommand(k,n=>Ia(c,n,l,a,g),v.COMMAND_PRIORITY_HIGH));g.listenersToRemove.add(c.registerCommand(v.KEY_ESCAPE_COMMAND,k=>{var l=v.$getSelection();return R(l)&&(l=U(a,l.focus.getNode()),null!==l)?(X(k),l.selectEnd(),!0):!1},v.COMMAND_PRIORITY_HIGH));b=k=>()=>{var l=v.$getSelection();if(!V(l,a))return!1;if(R(l))return g.$clearText(),!0;if(v.$isRangeSelection(l)){var n=U(a,l.anchor.getNode());
54
+ if(!B(n))return!1;var q=l.anchor.getNode();n=l.focus.getNode();q=a.isParentOf(q);n=a.isParentOf(n);if(q&&!n||n&&!q)return g.$clearText(),!0;n=(l=h.$findMatchingParent(l.anchor.getNode(),u=>v.$isElementNode(u)))&&h.$findMatchingParent(l,u=>v.$isElementNode(u)&&B(u.getParent()));if(!v.$isElementNode(n)||!v.$isElementNode(l))return!1;if(k===v.DELETE_LINE_COMMAND&&null===n.getPreviousSibling())return!0}return!1};for(let k of Ca)g.listenersToRemove.add(c.registerCommand(k,b(k),v.COMMAND_PRIORITY_CRITICAL));
55
+ let r=k=>{const l=v.$getSelection();if(!R(l)&&!v.$isRangeSelection(l))return!1;const n=a.isParentOf(l.anchor.getNode()),q=a.isParentOf(l.focus.getNode());if(n!==q){k=n?"focus":"anchor";const {key:u,offset:t,type:w}=l[k];a[l[n?"anchor":"focus"].isBefore(l[k])?"selectPrevious":"selectNext"]()[k].set(u,t,w);return!1}return R(l)?(k&&(k.preventDefault(),k.stopPropagation()),g.$clearText(),!0):!1};for(let k of Da)g.listenersToRemove.add(c.registerCommand(k,r,v.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(v.CUT_COMMAND,
56
+ k=>{let l=v.$getSelection();if(l){if(!R(l)&&!v.$isRangeSelection(l))return!1;void aa.copyToClipboard(c,h.objectKlassEquals(k,ClipboardEvent)?k:null,aa.$getClipboardDataFromSelection(l));k=r(k);return v.$isRangeSelection(l)?(l.removeText(),!0):k}return!1},v.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(v.FORMAT_TEXT_COMMAND,k=>{let l=v.$getSelection();if(!V(l,a))return!1;if(R(l))return g.$formatCells(k),!0;v.$isRangeSelection(l)&&(k=h.$findMatchingParent(l.anchor.getNode(),
57
+ n=>B(n)),B(k));return!1},v.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(v.FORMAT_ELEMENT_COMMAND,k=>{var l=v.$getSelection();if(!R(l)||!V(l,a))return!1;var n=l.anchor.getNode();l=l.focus.getNode();if(!B(n)||!B(l))return!1;let [q,u,t]=O(a,n,l);n=Math.max(u.startRow+u.cell.__rowSpan-1,t.startRow+t.cell.__rowSpan-1);l=Math.max(u.startColumn+u.cell.__colSpan-1,t.startColumn+t.cell.__colSpan-1);var w=Math.min(u.startRow,t.startRow);let C=Math.min(u.startColumn,t.startColumn),z=
58
+ new Set;for(;w<=n;w++)for(let G=C;G<=l;G++){var E=q[w][G].cell;if(!z.has(E)){z.add(E);E.setFormat(k);E=E.getChildren();for(let H=0;H<E.length;H++){let N=E[H];v.$isElementNode(N)&&!N.isInline()&&N.setFormat(k)}}}return!0},v.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(v.CONTROLLED_TEXT_INSERTION_COMMAND,k=>{var l=v.$getSelection();if(!V(l,a))return!1;if(R(l))g.$clearHighlight();else if(v.$isRangeSelection(l)){let n=h.$findMatchingParent(l.anchor.getNode(),q=>B(q));if(!B(n))return!1;
59
+ if("string"===typeof k&&(l=Ja(c,l,a)))return La(l,a,[v.$createTextNode(k)]),!0}return!1},v.COMMAND_PRIORITY_CRITICAL));d&&g.listenersToRemove.add(c.registerCommand(v.KEY_TAB_COMMAND,k=>{var l=v.$getSelection();if(!v.$isRangeSelection(l)||!l.isCollapsed()||!V(l,a))return!1;var n=Ma(l.anchor.getNode());if(null===n||!a.is(Na(n)))return!1;X(k);a:{k=k.shiftKey?"previous":"next";l="next"===k?"getNextSibling":"getPreviousSibling";let u="next"===k?"getFirstChild":"getLastChild";var q=n[l]();if(v.$isElementNode(q))q.selectEnd();
60
+ else{n=h.$findMatchingParent(n,K);null===n&&D(247);for(q=n[l]();K(q);q=q[l]()){let t=q[u]();if(v.$isElementNode(t)){t.selectEnd();break a}}l=h.$findMatchingParent(n,L);null===l&&D(248);"next"===k?l.selectNext():l.selectPrevious()}}return!0},v.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(v.FOCUS_COMMAND,()=>a.isSelected(),v.COMMAND_PRIORITY_HIGH));g.listenersToRemove.add(c.registerCommand(v.SELECTION_INSERT_CLIPBOARD_NODES_COMMAND,k=>{let {nodes:l,selection:n}=k;k=n.getStartEndPoints();
61
+ var q=R(n);q=v.$isRangeSelection(n)&&null!==h.$findMatchingParent(n.anchor.getNode(),H=>B(H))&&null!==h.$findMatchingParent(n.focus.getNode(),H=>B(H))||q;if(1!==l.length||!L(l[0])||!q||null===k)return!1;var [u]=k,t=l[0];k=t.getChildren();q=t.getFirstChildOrThrow().getChildrenSize();t=t.getChildrenSize();var w=h.$findMatchingParent(u.getNode(),H=>B(H)),C=w&&h.$findMatchingParent(w,H=>K(H)),z=C&&h.$findMatchingParent(C,H=>L(H));if(!B(w)||!K(C)||!L(z))return!1;u=C.getIndexWithinParent();var E=Math.min(z.getChildrenSize()-
62
+ 1,u+t-1);t=w.getIndexWithinParent();w=Math.min(C.getChildrenSize()-1,t+q-1);q=Math.min(t,w);C=Math.min(u,E);t=Math.max(t,w);u=Math.max(u,E);z=z.getChildren();for(E=0;C<=u;C++){w=z[C];if(!K(w))return!1;var G=k[E];if(!K(G))return!1;w=w.getChildren();G=G.getChildren();let H=0;for(let N=q;N<=t;N++){let P=w[N];if(!B(P))return!1;let Ka=G[H];if(!B(Ka))return!1;let Ya=P.getChildren();Ka.getChildren().forEach(ca=>{v.$isTextNode(ca)&&v.$createParagraphNode().append(ca);P.append(ca)});Ya.forEach(ca=>ca.remove());
63
+ H++}E++}return!0},v.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(v.SELECTION_CHANGE_COMMAND,()=>{let k=v.$getSelection(),l=v.$getPreviousSelection();var n=g.getAndClearNextFocus();if(null!==n){({focusCell:n}=n);if(R(k)&&k.tableKey===g.tableNodeKey){if(n.x===g.focusX&&n.y===g.focusY)return!1;g.$setFocusCellForSelection(n);return!0}if(n!==g.anchorCell&&V(k,a))return g.$setFocusCellForSelection(n),!0}if(g.getAndClearShouldCheckSelection()&&v.$isRangeSelection(l)&&v.$isRangeSelection(k)&&
64
+ k.isCollapsed()){var q=k.anchor.getNode();n=a.getFirstChild();q=Ma(q);if(null!==q&&K(n)){let w=n.getFirstChild();if(B(w)&&a.is(h.$findMatchingParent(q,C=>C.is(a)||C.is(w))))return w.selectStart(),!0}}if(v.$isRangeSelection(k)){let {anchor:w,focus:C}=k;q=w.getNode();n=C.getNode();var u=Ma(q),t=Ma(n);let z=!(!u||!a.is(Na(u))),E=!(!t||!a.is(Na(t)));q=z!==E;let G=z&&E;n=k.isBackward();q?(q=k.clone(),E?([t]=O(a,t,t),u=t[0][0].cell,t=t[t.length-1].at(-1).cell,q.focus.set(n?u.getKey():t.getKey(),n?u.getChildrenSize():
65
+ t.getChildrenSize(),"element")):z&&([t]=O(a,u,u),u=t[0][0].cell,t=t[t.length-1].at(-1).cell,q.anchor.set(n?t.getKey():u.getKey(),n?t.getChildrenSize():0,"element")),v.$setSelection(q),Oa(c,g)):G&&!u.is(t)&&(g.$setAnchorCellForSelection(W(g,u)),g.$setFocusCellForSelection(W(g,t),!0))}else k&&R(k)&&k.is(l)&&k.tableKey===a.getKey()&&(n=v.getDOMSelection(f))&&n.anchorNode&&n.focusNode&&(q=(q=v.$getNearestNodeFromDOMNode(n.focusNode))&&!a.isParentOf(q),u=(u=v.$getNearestNodeFromDOMNode(n.anchorNode))&&
66
+ a.isParentOf(u),q&&u&&0<n.rangeCount&&(q=v.$createRangeSelectionFromDom(n,c)))&&(q.anchor.set(a.getKey(),k.isBackward()?a.getChildrenSize():0,"element"),n.removeAllRanges(),v.$setSelection(q));if(k&&!k.is(l)&&(R(k)||R(l))&&g.tableSelection&&!g.tableSelection.is(l))return R(k)&&k.tableKey===g.tableNodeKey?g.$updateTableTableSelection(k):!R(k)&&R(l)&&l.tableKey===g.tableNodeKey&&g.$updateTableTableSelection(null),!1;g.hasHijackedSelectionStyles&&!a.isSelected()?Pa(c,g):!g.hasHijackedSelectionStyles&&
67
+ a.isSelected()&&Oa(c,g);return!1},v.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(v.INSERT_PARAGRAPH_COMMAND,()=>{var k=v.$getSelection();return v.$isRangeSelection(k)&&k.isCollapsed()&&V(k,a)?(k=Ja(c,k,a))?(La(k,a),!0):!1:!1},v.COMMAND_PRIORITY_CRITICAL));return g}function Fa(a,b){null!==Ga(a)&&D(205);a.__lexicalTableSelection=b}function Ga(a){return a.__lexicalTableSelection||null}
68
+ function Ha(a){for(;null!=a;){let b=a.nodeName;if("TD"===b||"TH"===b){a=a._cell;if(void 0===a)break;return a}a=a.parentNode}return null}
69
+ function T(a,b){var c=S(a,b);a=[];b={columns:0,domRows:a,rows:0};var d=c.querySelector("tr");let e=c=0;for(a.length=0;null!=d;){var f=d.nodeName;if("TD"===f||"TH"===f){f=d;f={elem:f,hasBackgroundColor:""!==f.style.backgroundColor,highlighted:!1,x:c,y:e};d._cell=f;let g=a[e];void 0===g&&(g=a[e]=[]);g[c]=f}else if(f=d.firstChild,null!=f){d=f;continue}f=d.nextSibling;if(null!=f)c++,d=f;else if(f=d.parentNode,null!=f){d=f.nextSibling;if(null==d)break;e++;c=0}}b.columns=c+1;b.rows=e+1;return b}
70
+ function Aa(a,b,c){let d=new Set(c?c.getNodes():[]);Qa(b,(e,f)=>{let g=e.elem;d.has(f)?(e.highlighted=!0,Ra(a,e)):(e.highlighted=!1,Sa(a,e),g.getAttribute("style")||g.removeAttribute("style"))})}function Qa(a,b){({domRows:a}=a);for(let c=0;c<a.length;c++){let d=a[c];if(d)for(let e=0;e<d.length;e++){let f=d[e];if(!f)continue;let g=v.$getNearestNodeFromDOMNode(f.elem);null!==g&&b(f,g,{x:e,y:c})}}}function Oa(a,b){b.$disableHighlightStyle();Qa(b.table,c=>{c.highlighted=!0;Ra(a,c)})}
71
+ function Pa(a,b){b.$enableHighlightStyle();Qa(b.table,c=>{let d=c.elem;c.highlighted=!1;Sa(a,c);d.getAttribute("style")||d.removeAttribute("style")})}
72
+ let Ta=(a,b,c,d,e)=>{const f="forward"===e;switch(e){case "backward":case "forward":return c!==(f?a.table.columns-1:0)?(a=b.getCellNodeFromCordsOrThrow(c+(f?1:-1),d,a.table),f?a.selectStart():a.selectEnd()):d!==(f?a.table.rows-1:0)?(a=b.getCellNodeFromCordsOrThrow(f?0:a.table.columns-1,d+(f?1:-1),a.table),f?a.selectStart():a.selectEnd()):f?b.selectNext():b.selectPrevious(),!0;case "up":return 0!==d?b.getCellNodeFromCordsOrThrow(c,d-1,a.table).selectEnd():b.selectPrevious(),!0;case "down":return d!==
73
+ a.table.rows-1?b.getCellNodeFromCordsOrThrow(c,d+1,a.table).selectStart():b.selectNext(),!0;default:return!1}};function Ua(a,b){let c;if(b.startColumn===a.minColumn)c="minColumn";else if(b.startColumn+b.cell.__colSpan-1===a.maxColumn)c="maxColumn";else return null;if(b.startRow===a.minRow)a="minRow";else if(b.startRow+b.cell.__rowSpan-1===a.maxRow)a="maxRow";else return null;return[c,a]}function Va([a,b]){return["minColumn"===a?"maxColumn":"minColumn","minRow"===b?"maxRow":"minRow"]}
74
+ function Y(a,b,[c,d]){let e=b[d];a=a[e];void 0===a&&D(250,d,String(e));b=b[c];d=a[b];void 0===d&&D(250,c,String(b));return d}
75
+ function Wa(a,b,c,d,e){d=sa(b,c,d);let {minColumn:f,maxColumn:g,minRow:m,maxRow:p}=d;var r=1;let k=1,l=1,n=1;var q=b[m];let u=b[p];for(let P=f;P<=g;P++)r=Math.max(r,q[P].cell.__rowSpan),n=Math.max(n,u[P].cell.__rowSpan);for(q=m;q<=p;q++)k=Math.max(k,b[q][f].cell.__colSpan),l=Math.max(l,b[q][g].cell.__colSpan);let {topSpan:t,leftSpan:w,bottomSpan:C,rightSpan:z}={bottomSpan:n,leftSpan:k,rightSpan:l,topSpan:r};r=Ua(d,c);null===r&&D(249,c.cell.getKey());let [E,G]=Va(r);r=d[E];d=d[G];"forward"===e?r+=
76
+ "maxColumn"===E?1:w:"backward"===e?r-="minColumn"===E?1:z:"down"===e?d+="maxRow"===G?1:t:"up"===e&&(d-="minRow"===G?1:C);e=b[d];if(void 0===e)return!1;d=e[r];if(void 0===d)return!1;e=sa(b,c,d);(c=Ua(e,c))?b=[Y(b,e,c),Y(b,e,Va(c))]:(c=Ua(e,d))?b=[Y(b,e,Va(c)),Y(b,e,c)]:(c=["minColumn","minRow"],b=[Y(b,e,c),Y(b,e,Va(c))]);let [H,N]=b;b=W(a,H.cell);c=W(a,N.cell);a.$setAnchorCellForSelection(b);a.$setFocusCellForSelection(c,!0);return!0}
77
+ function V(a,b){if(v.$isRangeSelection(a)||R(a)){let c=b.isParentOf(a.anchor.getNode());a=b.isParentOf(a.focus.getNode());return c&&a}return!1}function Ra(a,b){b=b.elem;a=a._config.theme;let c=v.$getNearestNodeFromDOMNode(b);B(c)||D(131);h.addClassNamesToElement(b,a.tableCellSelected)}function Sa(a,b){b=b.elem;let c=v.$getNearestNodeFromDOMNode(b);B(c)||D(131);h.removeClassNamesFromElement(b,a._config.theme.tableCellSelected)}function Ma(a){a=h.$findMatchingParent(a,B);return B(a)?a:null}
78
+ function Na(a){a=h.$findMatchingParent(a,L);return L(a)?a:null}function Xa(a){for(let b=a,c=a;null!==c;b=c,c=c.getParent())if(v.$isElementNode(c))if(c!==b&&c.getFirstChild()!==b)break;else if(!c.isInline())return c;return null}
79
+ function Ia(a,b,c,d,e){if(("up"===c||"down"===c)&&Za(a))return!1;var f=v.$getSelection();if(!V(f,d)){if(v.$isRangeSelection(f)){if("backward"===c){if(0<f.focus.offset)return!1;c=Xa(f.focus.getNode());if(!c)return!1;c=c.getPreviousSibling();if(!L(c))return!1;X(b);b.shiftKey?f.focus.set(c.getParentOrThrow().getKey(),c.getIndexWithinParent(),"element"):c.selectEnd();return!0}if(b.shiftKey&&("up"===c||"down"===c)){var g=f.focus.getNode();if(!f.isCollapsed()&&("up"===c&&!f.isBackward()||"down"===c&&f.isBackward())){e=
80
+ h.$findMatchingParent(g,r=>L(r));B(e)&&(e=h.$findMatchingParent(e,L));if(e!==d||!e)return!1;d="down"===c?e.getNextSibling():e.getPreviousSibling();if(!d)return!1;e=0;"up"===c&&v.$isElementNode(d)&&(e=d.getChildrenSize());a=d;"up"===c&&v.$isElementNode(d)&&(a=(c=d.getLastChild())?c:d,e=v.$isTextNode(a)?a.getTextContentSize():0);c=f.clone();c.focus.set(a.getKey(),e,v.$isTextNode(a)?"text":"element");v.$setSelection(c);X(b);return!0}if(v.$isRootOrShadowRoot(g)){if((b="up"===c?f.getNodes()[f.getNodes().length-
81
+ 1]:f.getNodes()[0])&&null!==U(d,b)){c=d.getFirstDescendant();b=d.getLastDescendant();if(!c||!b)return!1;[c]=Q(c);[b]=Q(b);c=d.getCordsFromCellNode(c,e.table);b=d.getCordsFromCellNode(b,e.table);c=d.getDOMCellFromCordsOrThrow(c.x,c.y,e.table);b=d.getDOMCellFromCordsOrThrow(b.x,b.y,e.table);e.$setAnchorCellForSelection(c);e.$setFocusCellForSelection(b,!0);return!0}return!1}d=h.$findMatchingParent(g,r=>v.$isElementNode(r)&&!r.isInline());B(d)&&(d=h.$findMatchingParent(d,L));if(!d)return!1;d="down"===
82
+ c?d.getNextSibling():d.getPreviousSibling();if(L(d)&&e.tableNodeKey===d.getKey()){e=d.getFirstDescendant();a=d.getLastDescendant();if(!e||!a)return!1;[d]=Q(e);[e]=Q(a);f=f.clone();f.focus.set(("up"===c?d:e).getKey(),"up"===c?0:e.getChildrenSize(),"element");X(b);v.$setSelection(f);return!0}}}"down"===c&&$a(a)&&e.setShouldCheckSelection();return!1}if(v.$isRangeSelection(f)&&f.isCollapsed()){let {anchor:r,focus:k}=f;g=h.$findMatchingParent(r.getNode(),B);var m=h.$findMatchingParent(k.getNode(),B);if(!B(g)||
83
+ !g.is(m))return!1;m=Na(g);if(m!==d&&null!=m){var p=S(m,a.getElementByKey(m.getKey()));if(null!=p)return e.table=T(m,p),Ia(a,b,c,m,e)}if("backward"===c||"forward"===c){e=r.type;a=r.offset;m=r.getNode();if(!m)return!1;f=f.getNodes();return 1===f.length&&v.$isDecoratorNode(f[0])?!1:ab(e,a,m,c)?bb(b,m,g,d,c):!1}f=a.getElementByKey(g.__key);m=a.getElementByKey(r.key);if(null==m||null==f)return!1;if("element"===r.type)f=m.getBoundingClientRect();else{f=v.getDOMSelection(a._window);if(null===f||0===f.rangeCount)return!1;
84
+ f=f.getRangeAt(0).getBoundingClientRect()}m="up"===c?g.getFirstChild():g.getLastChild();if(null==m)return!1;a=a.getElementByKey(m.__key);if(null==a)return!1;a=a.getBoundingClientRect();if("up"===c?a.top>f.top-f.height:f.bottom+f.height>a.bottom){X(b);f=d.getCordsFromCellNode(g,e.table);if(b.shiftKey)b=d.getDOMCellFromCordsOrThrow(f.x,f.y,e.table),e.$setAnchorCellForSelection(b),e.$setFocusCellForSelection(b,!0);else return Ta(e,d,f.x,f.y,c);return!0}}else if(R(f)){let {anchor:r,focus:k}=f;g=h.$findMatchingParent(r.getNode(),
85
+ B);m=h.$findMatchingParent(k.getNode(),B);[p]=f.getNodes();L(p)||D(251);a=S(p,a.getElementByKey(p.getKey()));if(!B(g)||!B(m)||!L(p)||null==a)return!1;e.$updateTableTableSelection(f);f=T(p,a);a=d.getCordsFromCellNode(g,f);f=d.getDOMCellFromCordsOrThrow(a.x,a.y,f);e.$setAnchorCellForSelection(f);X(b);if(b.shiftKey){let [l,n,q]=O(d,g,m);return Wa(e,l,n,q,c)}m.selectEnd();return!0}return!1}function X(a){a.preventDefault();a.stopImmediatePropagation();a.stopPropagation()}
86
+ function Za(a){return(a=a.getRootElement())?a.hasAttribute("aria-controls")&&"typeahead-menu"===a.getAttribute("aria-controls"):!1}function ab(a,b,c,d){return"element"===a&&("backward"===d?null===c.getPreviousSibling():null===c.getNextSibling())||cb(a,b,c,d)}
87
+ function cb(a,b,c,d){let e=h.$findMatchingParent(c,f=>v.$isElementNode(f)&&!f.isInline());if(!e)return!1;b="backward"===d?0===b:b===c.getTextContentSize();return"text"===a&&b&&("backward"===d?null===e.getPreviousSibling():null===e.getNextSibling())}
88
+ function bb(a,b,c,d,e){let [f,g]=O(d,c,c);c=f[0][0];let m=f[f.length-1][f[0].length-1],{startColumn:p,startRow:r}=g;if("backward"===e?p!==c.startColumn||r!==c.startRow:p!==m.startColumn||r!==m.startRow)return!1;b=db(b,e,d);if(!b||L(b))return!1;X(a);"backward"===e?b.selectEnd():b.selectStart();return!0}
89
+ function db(a,b,c){if(a=h.$findMatchingParent(a,d=>v.$isElementNode(d)&&!d.isInline()))return(a="backward"===b?a.getPreviousSibling():a.getNextSibling())&&L(a)?a:"backward"===b?c.getPreviousSibling():c.getNextSibling()}function La(a,b,c){let d=v.$createParagraphNode();"first"===a?b.insertBefore(d):b.insertAfter(d);d.append(...(c||[]));d.selectEnd()}
90
+ function Ja(a,b,c){var d=c.getParent();if(d){var e=v.getDOMSelection(a._window);if(e&&(e=e.anchorNode,d=a.getElementByKey(d.getKey()),a=S(c,a.getElementByKey(c.getKey())),e&&d&&a&&d.contains(e)&&!a.contains(e)&&(b=h.$findMatchingParent(b.anchor.getNode(),r=>B(r))))&&(a=h.$findMatchingParent(b,r=>L(r)),L(a)&&a.is(c))){var [f,g]=O(c,b,b);c=f[0][0];b=f[f.length-1][f[0].length-1];var {startRow:m,startColumn:p}=g;if(m===c.startRow&&p===c.startColumn)return"first";if(m===b.startRow&&p===b.startColumn)return"last"}}}
91
+ function W(a,b){let {tableNode:c}=a.$lookup();b=c.getCordsFromCellNode(b,a.table);return c.getDOMCellFromCordsOrThrow(b.x,b.y,a.table)}function eb(a,b,c,d){if(a=a.querySelector("colgroup")){b=[];for(let e=0;e<c;e++){let f=document.createElement("col"),g=d&&d[e];g&&(f.style.width=`${g}px`);b.push(f)}a.replaceChildren(...b)}}
92
+ function fb(a,b,c){c?(h.addClassNamesToElement(a,b.theme.tableRowStriping),a.setAttribute("data-lexical-row-striping","true")):(h.removeClassNamesFromElement(a,b.theme.tableRowStriping),a.removeAttribute("data-lexical-row-striping"))}let gb=new WeakSet;function $a(a=v.$getEditor()){return gb.has(a)}
93
+ class Z extends v.ElementNode{static getType(){return"table"}getColWidths(){return this.getLatest().__colWidths}setColWidths(a){let b=this.getWritable();b.__colWidths=a;return b}static clone(a){return new Z(a.__key)}afterCloneFrom(a){super.afterCloneFrom(a);this.__colWidths=a.__colWidths;this.__rowStriping=a.__rowStriping}static importDOM(){return{table:()=>({conversion:hb,priority:1})}}static importJSON(a){let b=la();b.__rowStriping=a.rowStriping||!1;b.__colWidths=a.colWidths;return b}constructor(a){super(a);
94
+ this.__rowStriping=!1}exportJSON(){return{...super.exportJSON(),colWidths:this.getColWidths(),rowStriping:this.__rowStriping?this.__rowStriping:void 0,type:"table",version:1}}extractWithChild(a,b,c){return"html"===c}getDOMSlot(a){a="TABLE"!==a.nodeName&&a.querySelector("table")||a;"TABLE"!==a.nodeName&&D(229);return super.getDOMSlot(a).withAfter(a.querySelector("colgroup"))}createDOM(a,b){let c=document.createElement("table"),d=document.createElement("colgroup");c.appendChild(d);eb(c,a,this.getColumnCount(),
95
+ this.getColWidths());v.setDOMUnmanaged(d);h.addClassNamesToElement(c,a.theme.table);this.__rowStriping&&fb(c,a,!0);return $a(b)?(b=document.createElement("div"),(a=a.theme.tableScrollableWrapper)?h.addClassNamesToElement(b,a):b.style.cssText="overflow-x: auto;",b.appendChild(c),b):c}updateDOM(a,b,c){a.__rowStriping!==this.__rowStriping&&fb(b,c,this.__rowStriping);eb(b,c,this.getColumnCount(),this.getColWidths());return!1}exportDOM(a){let b=super.exportDOM(a);({element:a}=b);return{after:c=>{b.after&&
96
+ (c=b.after(c));c&&h.isHTMLElement(c)&&"TABLE"!==c.nodeName&&(c=c.querySelector("table"));if(!c||!h.isHTMLElement(c))return null;var [d]=ra(this,null,null),e=new Map;for(var f of d)for(var g of f)d=g.cell.getKey(),e.has(d)||e.set(d,{colSpan:g.cell.getColSpan(),startColumn:g.startColumn});let m=new Set;for(var p of c.querySelectorAll(":scope > tr > [data-temporary-table-cell-lexical-key]"))if(g=p.getAttribute("data-temporary-table-cell-lexical-key"))if(f=e.get(g),p.removeAttribute("data-temporary-table-cell-lexical-key"),
97
+ f)for(e.delete(g),g=0;g<f.colSpan;g++)m.add(g+f.startColumn);if(e=c.querySelector(":scope > colgroup"))p=Array.from(c.querySelectorAll(":scope > colgroup > col")).filter((r,k)=>m.has(k)),e.replaceChildren(...p);e=c.querySelectorAll(":scope > tr");if(0<e.length){p=document.createElement("tbody");for(let r of e)p.appendChild(r);c.append(p)}return c},element:a&&h.isHTMLElement(a)&&"TABLE"!==a.nodeName?a.querySelector("table"):a}}canBeEmpty(){return!1}isShadowRoot(){return!0}getCordsFromCellNode(a,b){let {rows:c,
98
+ domRows:d}=b;for(b=0;b<c;b++){let f=d[b];if(null!=f)for(let g=0;g<f.length;g++){var e=f[g];if(null!=e&&({elem:e}=e,e=U(this,v.$getNearestNodeFromDOMNode(e,void 0)),null!==e&&a.is(e)))return{x:g,y:b}}}throw Error("Cell not found in table.");}getDOMCellFromCords(a,b,c){({domRows:c}=c);b=c[b];if(null==b)return null;a=b[a<b.length?a:b.length-1];return null==a?null:a}getDOMCellFromCordsOrThrow(a,b,c){a=this.getDOMCellFromCords(a,b,c);if(!a)throw Error("Cell not found at cords.");return a}getCellNodeFromCords(a,
99
+ b,c){a=this.getDOMCellFromCords(a,b,c);if(null==a)return null;a=v.$getNearestNodeFromDOMNode(a.elem);return B(a)?a:null}getCellNodeFromCordsOrThrow(a,b,c){a=this.getCellNodeFromCords(a,b,c);if(!a)throw Error("Node at cords not TableCellNode.");return a}getRowStriping(){return!!this.getLatest().__rowStriping}setRowStriping(a){this.getWritable().__rowStriping=a}canSelectBefore(){return!0}canIndent(){return!1}getColumnCount(){let a=this.getFirstChild();if(!a)return 0;let b=0;a.getChildren().forEach(c=>
100
+ {B(c)&&(b+=c.getColSpan())});return b}}function hb(a){let b=la();a.hasAttribute("data-lexical-row-striping")&&b.setRowStriping(!0);var c=a.querySelector(":scope > colgroup");if(c){a=[];for(let d of c.querySelectorAll(":scope > col")){c=d.style.width;if(!c||!ba.test(c)){a=void 0;break}a.push(parseFloat(c))}a&&b.setColWidths(a)}return{after:d=>h.$descendantsMatching(d,K),node:b}}function la(){return v.$applyNodeReplacement(new Z)}function L(a){return a instanceof Z}
101
+ function ib({rows:a,columns:b,includeHeaders:c}){a=ka(Number(a),Number(b),c);h.$insertNodeToNearestRoot(a);a=a.getFirstDescendant();v.$isTextNode(a)&&a.select();return!0}function jb(a){K(a.getParent())?a.isEmpty()&&a.append(v.$createParagraphNode()):a.remove()}function kb(a){L(a.getParent())?h.$unwrapAndFilterDescendants(a,B):a.remove()}
102
+ function lb(a){h.$unwrapAndFilterDescendants(a,K);let [b]=ra(a,null,null),c=b.reduce((e,f)=>Math.max(e,f.length),0);a=a.getChildren();for(let e=0;e<b.length;++e){let f=a[e];if(f){K(f)||D(253,f.constructor.name,f.getType());var d=b[e].reduce((g,m)=>m?1+g:g,0);if(d!==c)for(;d<c;++d){let g=A();g.append(v.$createParagraphNode());f.append(g)}}}}exports.$computeTableMap=O;exports.$computeTableMapSkipCellCheck=ra;exports.$createTableCellNode=A;exports.$createTableNode=la;
103
+ exports.$createTableNodeWithDimensions=ka;exports.$createTableRowNode=J;exports.$createTableSelection=xa;exports.$deleteTableColumn=function(a,b){let c=a.getChildren();for(let e=0;e<c.length;e++){var d=c[e];if(K(d)){d=d.getChildren();if(b>=d.length||0>b)throw Error("Table column target index out of range");d[b].remove()}}return a};
104
+ exports.$deleteTableColumn__EXPERIMENTAL=function(){var a=v.$getSelection();v.$isRangeSelection(a)||R(a)||D(188);var b=a.anchor.getNode();a=a.focus.getNode();let [c,,d]=Q(b);var [e]=Q(a);let [f,g,m]=O(d,c,e);var {startColumn:p}=g;let {startRow:r,startColumn:k}=m;b=Math.min(p,k);var l=Math.max(p+c.__colSpan-1,k+e.__colSpan-1);a=l-b+1;if(f[0].length===l-b+1)d.selectPrevious(),d.remove();else{var n=f.length;for(let q=0;q<n;q++)for(let u=b;u<=l;u++){let {cell:t,startColumn:w}=f[q][u];w<b?u===b&&t.setColSpan(t.__colSpan-
105
+ Math.min(a,t.__colSpan-(b-w))):w+t.__colSpan-1>l?u===l&&t.setColSpan(t.__colSpan-(l-w+1)):t.remove()}l=f[r];e=p>k?l[p+c.__colSpan]:l[k+e.__colSpan];void 0!==e?({cell:p}=e,M(p)):({cell:p}=k<p?l[k-1]:l[p-1],M(p));if(p=d.getColWidths())p=[...p],p.splice(b,a),d.setColWidths(p)}};
106
+ exports.$deleteTableRow__EXPERIMENTAL=function(){var a=v.$getSelection();v.$isRangeSelection(a)||R(a)||D(188);let [b,c]=a.isBackward()?[a.focus.getNode(),a.anchor.getNode()]:[a.anchor.getNode(),a.focus.getNode()],[d,,e]=Q(b);var [f]=Q(c);let [g,m,p]=O(e,d,f);({startRow:a}=m);var {startRow:r}=p;f=r+f.__rowSpan-1;if(g.length===f-a+1)e.remove();else{r=g[0].length;var k=g[f+1],l=e.getChildAtIndex(f+1);for(let q=f;q>=a;q--){for(var n=r-1;0<=n;n--){let {cell:u,startRow:t,startColumn:w}=g[q][n];if(w===n&&
107
+ (q===a&&t<a&&u.setRowSpan(u.__rowSpan-(t-a)),t>=a&&t+u.__rowSpan-1>f))if(u.setRowSpan(u.__rowSpan-(f-t+1)),null===l&&D(122),0===n)qa(l,u);else{let {cell:C}=k[n-1];C.insertAfter(u)}}n=e.getChildAtIndex(q);K(n)||D(206,String(q));n.remove()}void 0!==k?({cell:a}=k[0],M(a)):({cell:a}=g[a-1][0],M(a))}};exports.$findCellNode=Ma;exports.$findTableNode=Na;exports.$getElementForTableNode=function(a,b){a=a.getElementByKey(b.getKey());null===a&&D(230);return T(b,a)};exports.$getNodeTriplet=Q;
108
+ exports.$getTableAndElementByKey=ya;exports.$getTableCellNodeFromLexicalNode=function(a){a=h.$findMatchingParent(a,b=>B(b));return B(a)?a:null};exports.$getTableCellNodeRect=ta;exports.$getTableColumnIndexFromTableCellNode=function(a){return ma(a).getChildren().findIndex(b=>b.is(a))};exports.$getTableNodeFromLexicalNodeOrThrow=na;exports.$getTableRowIndexFromTableCellNode=function(a){let b=ma(a);return na(b).getChildren().findIndex(c=>c.is(b))};exports.$getTableRowNodeFromTableCellNodeOrThrow=ma;
109
+ exports.$insertTableColumn=function(a,b,c=!0,d,e){let f=a.getChildren(),g=[];for(let r=0;r<f.length;r++){let k=f[r];if(K(k))for(let l=0;l<d;l++){var m=k.getChildren();if(b>=m.length||0>b)throw Error("Table column target index out of range");m=m[b];B(m)||D(12);let {left:n,right:q}=oa(m,e);var p=x.NO_STATUS;if(n&&n.hasHeaderState(x.ROW)||q&&q.hasHeaderState(x.ROW))p|=x.ROW;p=A(p);p.append(v.$createParagraphNode());g.push({newTableCell:p,targetCell:m})}}g.forEach(({newTableCell:r,targetCell:k})=>{c?
110
+ k.insertAfter(r):k.insertBefore(r)});return a};
111
+ exports.$insertTableColumn__EXPERIMENTAL=function(a=!0){function b(l=x.NO_STATUS){l=A(l).append(v.$createParagraphNode());null===r&&(r=l);return l}var c=v.$getSelection();v.$isRangeSelection(c)||R(c)||D(188);var d=c.anchor.getNode();c=c.focus.getNode();[d]=Q(d);let [e,,f]=Q(c),[g,m,p]=O(f,e,d);d=g.length;c=a?Math.max(m.startColumn,p.startColumn):Math.min(m.startColumn,p.startColumn);a=a?c+e.__colSpan-1:c-1;c=f.getFirstChild();K(c)||D(120);let r=null;var k=c;a:for(c=0;c<d;c++){0!==c&&(k=k.getNextSibling(),
112
+ K(k)||D(121));let l=g[c],n=pa(l[0>a?0:a].cell.__headerState,x.ROW);if(0>a){qa(k,b(n));continue}let {cell:q,startColumn:u,startRow:t}=l[a];if(u+q.__colSpan-1<=a){let w=q,C=t,z=a;for(;C!==c&&1<w.__rowSpan;)if(z-=q.__colSpan,0<=z){let {cell:E,startRow:G}=l[z];w=E;C=G}else{k.append(b(n));continue a}w.insertAfter(b(n))}else q.setColSpan(q.__colSpan+1)}null!==r&&M(r);if(d=f.getColWidths())d=[...d],a=0>a?0:a,d.splice(a,0,d[a]),f.setColWidths(d);return r};
113
+ exports.$insertTableRow=function(a,b,c=!0,d,e){var f=a.getChildren();if(b>=f.length||0>b)throw Error("Table row target index out of range");b=f[b];if(K(b))for(f=0;f<d;f++){let m=b.getChildren(),p=m.length,r=J();for(let k=0;k<p;k++){var g=m[k];B(g)||D(12);let {above:l,below:n}=oa(g,e);g=x.NO_STATUS;let q=l&&l.getWidth()||n&&n.getWidth()||void 0;if(l&&l.hasHeaderState(x.COLUMN)||n&&n.hasHeaderState(x.COLUMN))g|=x.COLUMN;g=A(g,1,q);g.append(v.$createParagraphNode());r.append(g)}c?b.insertAfter(r):b.insertBefore(r)}else throw Error("Row before insertion index does not exist.");
94
114
  return a};
95
- exports.$insertTableRow__EXPERIMENTAL=function(a=!0){var b=w.$getSelection();w.$isRangeSelection(b)||Q(b)||E(188);b=b.focus.getNode();let [c,,d]=P(b),[e,f]=N(d,c,c);b=e[0].length;var {startRow:g}=f;if(a){a=g+c.__rowSpan-1;var n=e[a];g=I();for(var q=0;q<b;q++){let {cell:l,startRow:k}=n[q];if(k+l.__rowSpan-1<=a){var r=oa(n[q].cell.__headerState,x.COLUMN);g.append(A(r).append(w.$createParagraphNode()))}else l.setRowSpan(l.__rowSpan+1)}b=d.getChildAtIndex(a);J(b)||E(145);b.insertAfter(g);b=g}else{n=e[g];
96
- a=I();for(q=0;q<b;q++){let {cell:l,startRow:k}=n[q];k===g?(r=oa(n[q].cell.__headerState,x.COLUMN),a.append(A(r).append(w.$createParagraphNode()))):l.setRowSpan(l.__rowSpan+1)}b=d.getChildAtIndex(g);J(b)||E(145);b.insertBefore(a);b=a}return b};exports.$isScrollableTablesActive=Ta;exports.$isTableCellNode=C;exports.$isTableNode=K;exports.$isTableRowNode=J;exports.$isTableSelection=Q;
115
+ exports.$insertTableRow__EXPERIMENTAL=function(a=!0){var b=v.$getSelection();v.$isRangeSelection(b)||R(b)||D(188);b=b.focus.getNode();let [c,,d]=Q(b),[e,f]=O(d,c,c);b=e[0].length;var {startRow:g}=f;if(a){a=g+c.__rowSpan-1;var m=e[a];g=J();for(var p=0;p<b;p++){let {cell:k,startRow:l}=m[p];if(l+k.__rowSpan-1<=a){var r=pa(m[p].cell.__headerState,x.COLUMN);g.append(A(r).append(v.$createParagraphNode()))}else k.setRowSpan(k.__rowSpan+1)}b=d.getChildAtIndex(a);K(b)||D(145);b.insertAfter(g);b=g}else{m=e[g];
116
+ a=J();for(p=0;p<b;p++){let {cell:k,startRow:l}=m[p];l===g?(r=pa(m[p].cell.__headerState,x.COLUMN),a.append(A(r).append(v.$createParagraphNode()))):k.setRowSpan(k.__rowSpan+1)}b=d.getChildAtIndex(g);K(b)||D(145);b.insertBefore(a);b=a}return b};exports.$isScrollableTablesActive=$a;exports.$isTableCellNode=B;exports.$isTableNode=L;exports.$isTableRowNode=K;exports.$isTableSelection=R;
97
117
  exports.$removeTableRowAtIndex=function(a,b){let c=a.getChildren();if(b>=c.length||0>b)throw Error("Expected table cell to be inside of table row.");c[b].remove();return a};
98
- exports.$unmergeCell=function(){var a=w.$getSelection();w.$isRangeSelection(a)||Q(a)||E(188);a=a.anchor.getNode();let [b,c,d]=P(a);a=b.__colSpan;let e=b.__rowSpan;if(1!==a||1!==e){var [f,g]=N(d,b,b),{startColumn:n,startRow:q}=g,r=b.__headerState&x.COLUMN,l=Array.from({length:a},(v,B)=>{v=r;for(let z=0;0!==v&&z<f.length;z++)v&=f[z][B+n].cell.__headerState;return v}),k=b.__headerState&x.ROW,m=Array.from({length:e},(v,B)=>{v=k;for(let z=0;0!==v&&z<f[0].length;z++)v&=f[B+q][z].cell.__headerState;return v});
99
- if(1<a){for(var p=1;p<a;p++)b.insertAfter(A(l[p]|m[0]).append(w.$createParagraphNode()));b.setColSpan(1)}if(1<e){let v;for(p=1;p<e;p++){var u=q+p;let B=f[u];v=(v||c).getNextSibling();J(v)||E(125);var t=null;for(let z=0;z<n;z++){let D=B[z],G=D.cell;D.startRow===u&&(t=G);1<G.__colSpan&&(z+=G.__colSpan-1)}if(null===t)for(t=a-1;0<=t;t--)pa(v,A(l[t]|m[p]).append(w.$createParagraphNode()));else for(u=a-1;0<=u;u--)t.insertAfter(A(l[u]|m[p]).append(w.$createParagraphNode()))}b.setRowSpan(1)}}};
100
- exports.INSERT_TABLE_COMMAND=ea;exports.TableCellHeaderStates=x;exports.TableCellNode=y;exports.TableNode=cb;exports.TableObserver=ya;exports.TableRowNode=ja;
101
- exports.applyTableHandlers=function(a,b,c,d){let e=c.getRootElement(),f=c._window;null!==e&&null!==f||E(246);let g=new ya(c,a.getKey()),n=R(a,b);Da(n,g);g.listenersToRemove.add(()=>{Ea(n)===g&&delete n.__lexicalTableSelection});let q=()=>{if(!g.isSelecting){var l=()=>{g.isSelecting=!1;f.removeEventListener("mouseup",l);f.removeEventListener("mousemove",k)},k=m=>{if(1!==(m.buttons&1)&&g.isSelecting)g.isSelecting=!1,f.removeEventListener("mouseup",l),f.removeEventListener("mousemove",k);else{var p=
102
- !n.contains(m.target),u=null;if(p)for(const t of document.elementsFromPoint(m.clientX,m.clientY)){if(u=n.contains(t)?Fa(t):null)break}else u=Fa(m.target);!u||null!==g.focusCell&&u.elem===g.focusCell.elem||(g.setNextFocus({focusCell:u,override:p}),c.dispatchCommand(w.SELECTION_CHANGE_COMMAND,void 0))}};g.isSelecting=!0;f.addEventListener("mouseup",l,g.listenerOptions);f.addEventListener("mousemove",k,g.listenerOptions)}};n.addEventListener("mousedown",l=>{if(0===l.button&&f){var k=Fa(l.target);null!==
103
- k&&c.update(()=>{const m=w.$getPreviousSelection();if(ia&&l.shiftKey&&W(m,a)&&(w.$isRangeSelection(m)||Q(m))){const p=m.anchor.getNode(),u=T(a,m.anchor.getNode());u?(g.$setAnchorCellForSelection(V(g,u)),g.$setFocusCellForSelection(k),Z(l)):(a.isBefore(p)?a.selectStart():a.selectEnd()).anchor.set(m.anchor.key,m.anchor.offset,m.anchor.type)}else g.$setAnchorCellForSelection(k)});q()}},g.listenerOptions);f.addEventListener("mousedown",l=>{0===l.button&&c.update(()=>{const k=w.$getSelection(),m=l.target;
104
- Q(k)&&k.tableKey===g.tableNodeKey&&e.contains(m)&&g.$clearHighlight()})},g.listenerOptions);for(let [l,k]of Aa)g.listenersToRemove.add(c.registerCommand(l,m=>Ra(c,m,k,a,g),w.COMMAND_PRIORITY_HIGH));g.listenersToRemove.add(c.registerCommand(w.KEY_ESCAPE_COMMAND,l=>{var k=w.$getSelection();return Q(k)&&(k=T(a,k.focus.getNode()),null!==k)?(Z(l),k.selectEnd(),!0):!1},w.COMMAND_PRIORITY_HIGH));b=l=>()=>{var k=w.$getSelection();if(!W(k,a))return!1;if(Q(k))return g.$clearText(),!0;if(w.$isRangeSelection(k)){var m=
105
- T(a,k.anchor.getNode());if(!C(m))return!1;var p=k.anchor.getNode();m=k.focus.getNode();p=a.isParentOf(p);m=a.isParentOf(m);if(p&&!m||m&&!p)return g.$clearText(),!0;m=(k=h.$findMatchingParent(k.anchor.getNode(),u=>w.$isElementNode(u)))&&h.$findMatchingParent(k,u=>w.$isElementNode(u)&&C(u.getParent()));if(!w.$isElementNode(m)||!w.$isElementNode(k))return!1;if(l===w.DELETE_LINE_COMMAND&&null===m.getPreviousSibling())return!0}return!1};for(let l of Ba)g.listenersToRemove.add(c.registerCommand(l,b(l),
106
- w.COMMAND_PRIORITY_CRITICAL));let r=l=>{const k=w.$getSelection();if(!Q(k)&&!w.$isRangeSelection(k))return!1;const m=a.isParentOf(k.anchor.getNode()),p=a.isParentOf(k.focus.getNode());if(m!==p){l=m?"focus":"anchor";const {key:u,offset:t,type:v}=k[l];a[k[m?"anchor":"focus"].isBefore(k[l])?"selectPrevious":"selectNext"]()[l].set(u,t,v);return!1}return Q(k)?(l&&(l.preventDefault(),l.stopPropagation()),g.$clearText(),!0):!1};for(let l of Ca)g.listenersToRemove.add(c.registerCommand(l,r,w.COMMAND_PRIORITY_CRITICAL));
107
- g.listenersToRemove.add(c.registerCommand(w.CUT_COMMAND,l=>{let k=w.$getSelection();if(k){if(!Q(k)&&!w.$isRangeSelection(k))return!1;void ba.copyToClipboard(c,h.objectKlassEquals(l,ClipboardEvent)?l:null,ba.$getClipboardDataFromSelection(k));l=r(l);return w.$isRangeSelection(k)?(k.removeText(),!0):l}return!1},w.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(w.FORMAT_TEXT_COMMAND,l=>{let k=w.$getSelection();if(!W(k,a))return!1;if(Q(k))return g.$formatCells(l),!0;w.$isRangeSelection(k)&&
108
- (l=h.$findMatchingParent(k.anchor.getNode(),m=>C(m)),C(l));return!1},w.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(w.FORMAT_ELEMENT_COMMAND,l=>{var k=w.$getSelection();if(!Q(k)||!W(k,a))return!1;var m=k.anchor.getNode();k=k.focus.getNode();if(!C(m)||!C(k))return!1;let [p,u,t]=N(a,m,k);m=Math.max(u.startRow+u.cell.__rowSpan-1,t.startRow+t.cell.__rowSpan-1);k=Math.max(u.startColumn+u.cell.__colSpan-1,t.startColumn+t.cell.__colSpan-1);var v=Math.min(u.startRow,t.startRow);let B=
109
- Math.min(u.startColumn,t.startColumn),z=new Set;for(;v<=m;v++)for(let G=B;G<=k;G++){var D=p[v][G].cell;if(!z.has(D)){z.add(D);D.setFormat(l);D=D.getChildren();for(let H=0;H<D.length;H++){let L=D[H];w.$isElementNode(L)&&!L.isInline()&&L.setFormat(l)}}}return!0},w.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(w.CONTROLLED_TEXT_INSERTION_COMMAND,l=>{var k=w.$getSelection();if(!W(k,a))return!1;if(Q(k))g.$clearHighlight();else if(w.$isRangeSelection(k)){let m=h.$findMatchingParent(k.anchor.getNode(),
110
- p=>C(p));if(!C(m))return!1;if("string"===typeof l&&(k=Za(c,k,a)))return Ya(k,a,[w.$createTextNode(l)]),!0}return!1},w.COMMAND_PRIORITY_CRITICAL));d&&g.listenersToRemove.add(c.registerCommand(w.KEY_TAB_COMMAND,l=>{var k=w.$getSelection();if(!w.$isRangeSelection(k)||!k.isCollapsed()||!W(k,a))return!1;var m=X(k.anchor.getNode());if(null===m||!a.is(Y(m)))return!1;Z(l);a:{l=l.shiftKey?"previous":"next";k="next"===l?"getNextSibling":"getPreviousSibling";let u="next"===l?"getFirstChild":"getLastChild";var p=
111
- m[k]();if(w.$isElementNode(p))p.selectEnd();else{m=h.$findMatchingParent(m,J);null===m&&E(247);for(p=m[k]();J(p);p=p[k]()){let t=p[u]();if(w.$isElementNode(t)){t.selectEnd();break a}}k=h.$findMatchingParent(m,K);null===k&&E(248);"next"===l?k.selectNext():k.selectPrevious()}}return!0},w.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(w.FOCUS_COMMAND,()=>a.isSelected(),w.COMMAND_PRIORITY_HIGH));g.listenersToRemove.add(c.registerCommand(w.SELECTION_INSERT_CLIPBOARD_NODES_COMMAND,
112
- l=>{let {nodes:k,selection:m}=l;l=m.getStartEndPoints();var p=Q(m);p=w.$isRangeSelection(m)&&null!==h.$findMatchingParent(m.anchor.getNode(),H=>C(H))&&null!==h.$findMatchingParent(m.focus.getNode(),H=>C(H))||p;if(1!==k.length||!K(k[0])||!p||null===l)return!1;var [u]=l,t=k[0];l=t.getChildren();p=t.getFirstChildOrThrow().getChildrenSize();t=t.getChildrenSize();var v=h.$findMatchingParent(u.getNode(),H=>C(H)),B=v&&h.$findMatchingParent(v,H=>J(H)),z=B&&h.$findMatchingParent(B,H=>K(H));if(!C(v)||!J(B)||
113
- !K(z))return!1;u=B.getIndexWithinParent();var D=Math.min(z.getChildrenSize()-1,u+t-1);t=v.getIndexWithinParent();v=Math.min(B.getChildrenSize()-1,t+p-1);p=Math.min(t,v);B=Math.min(u,D);t=Math.max(t,v);u=Math.max(u,D);z=z.getChildren();for(D=0;B<=u;B++){v=z[B];if(!J(v))return!1;var G=l[D];if(!J(G))return!1;v=v.getChildren();G=G.getChildren();let H=0;for(let L=p;L<=t;L++){let O=v[L];if(!C(O))return!1;let Ma=G[H];if(!C(Ma))return!1;let fb=O.getChildren();Ma.getChildren().forEach(aa=>{w.$isTextNode(aa)&&
114
- w.$createParagraphNode().append(aa);O.append(aa)});fb.forEach(aa=>aa.remove());H++}D++}return!0},w.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(w.SELECTION_CHANGE_COMMAND,()=>{let l=w.$getSelection(),k=w.$getPreviousSelection();var m=g.getAndClearNextFocus();if(null!==m){({focusCell:m}=m);if(Q(l)&&l.tableKey===g.tableNodeKey){if(m.x===g.focusX&&m.y===g.focusY)return!1;g.$setFocusCellForSelection(m);return!0}if(m!==g.anchorCell&&W(l,a))return g.$setFocusCellForSelection(m),
115
- !0}if(g.getAndClearShouldCheckSelection()&&w.$isRangeSelection(k)&&w.$isRangeSelection(l)&&l.isCollapsed()){var p=l.anchor.getNode();m=a.getFirstChild();p=X(p);if(null!==p&&J(m)){let v=m.getFirstChild();if(C(v)&&a.is(h.$findMatchingParent(p,B=>B.is(a)||B.is(v))))return v.selectStart(),!0}}if(w.$isRangeSelection(l)){let {anchor:v,focus:B}=l;p=v.getNode();m=B.getNode();var u=X(p),t=X(m);let z=!(!u||!a.is(Y(u))),D=!(!t||!a.is(Y(t)));p=z!==D;let G=z&&D;m=l.isBackward();p?(p=l.clone(),D?([t]=N(a,t,t),
116
- u=t[0][0].cell,t=t[t.length-1].at(-1).cell,p.focus.set(m?u.getKey():t.getKey(),m?u.getChildrenSize():t.getChildrenSize(),"element")):z&&([t]=N(a,u,u),u=t[0][0].cell,t=t[t.length-1].at(-1).cell,p.anchor.set(m?t.getKey():u.getKey(),m?t.getChildrenSize():0,"element")),w.$setSelection(p),Ja(c,g)):G&&!u.is(t)&&(g.$setAnchorCellForSelection(V(g,u)),g.$setFocusCellForSelection(V(g,t),!0))}else l&&Q(l)&&l.is(k)&&l.tableKey===a.getKey()&&(m=w.getDOMSelection(f))&&m.anchorNode&&m.focusNode&&(p=(p=w.$getNearestNodeFromDOMNode(m.focusNode))&&
117
- !a.isParentOf(p),u=(u=w.$getNearestNodeFromDOMNode(m.anchorNode))&&a.isParentOf(u),p&&u&&0<m.rangeCount&&(p=w.$createRangeSelectionFromDom(m,c)))&&(p.anchor.set(a.getKey(),l.isBackward()?a.getChildrenSize():0,"element"),m.removeAllRanges(),w.$setSelection(p));if(l&&!l.is(k)&&(Q(l)||Q(k))&&g.tableSelection&&!g.tableSelection.is(k))return Q(l)&&l.tableKey===g.tableNodeKey?g.$updateTableTableSelection(l):!Q(l)&&Q(k)&&k.tableKey===g.tableNodeKey&&g.$updateTableTableSelection(null),!1;g.hasHijackedSelectionStyles&&
118
- !a.isSelected()?Ka(c,g):!g.hasHijackedSelectionStyles&&a.isSelected()&&Ja(c,g);return!1},w.COMMAND_PRIORITY_CRITICAL));g.listenersToRemove.add(c.registerCommand(w.INSERT_PARAGRAPH_COMMAND,()=>{var l=w.$getSelection();return w.$isRangeSelection(l)&&l.isCollapsed()&&W(l,a)?(l=Za(c,l,a))?(Ya(l,a),!0):!1:!1},w.COMMAND_PRIORITY_CRITICAL));return g};exports.getDOMCellFromTarget=Fa;exports.getTableElement=R;exports.getTableObserverFromTableElement=Ea;
119
- exports.setScrollableTablesActive=function(a,b){b?bb.add(a):bb.delete(a)}
118
+ exports.$unmergeCell=function(){var a=v.$getSelection();v.$isRangeSelection(a)||R(a)||D(188);a=a.anchor.getNode();let [b,c,d]=Q(a);a=b.__colSpan;let e=b.__rowSpan;if(1!==a||1!==e){var [f,g]=O(d,b,b),{startColumn:m,startRow:p}=g,r=b.__headerState&x.COLUMN,k=Array.from({length:a},(w,C)=>{w=r;for(let z=0;0!==w&&z<f.length;z++)w&=f[z][C+m].cell.__headerState;return w}),l=b.__headerState&x.ROW,n=Array.from({length:e},(w,C)=>{w=l;for(let z=0;0!==w&&z<f[0].length;z++)w&=f[C+p][z].cell.__headerState;return w});
119
+ if(1<a){for(var q=1;q<a;q++)b.insertAfter(A(k[q]|n[0]).append(v.$createParagraphNode()));b.setColSpan(1)}if(1<e){let w;for(q=1;q<e;q++){var u=p+q;let C=f[u];w=(w||c).getNextSibling();K(w)||D(125);var t=null;for(let z=0;z<m;z++){let E=C[z],G=E.cell;E.startRow===u&&(t=G);1<G.__colSpan&&(z+=G.__colSpan-1)}if(null===t)for(t=a-1;0<=t;t--)qa(w,A(k[t]|n[q]).append(v.$createParagraphNode()));else for(u=a-1;0<=u;u--)t.insertAfter(A(k[u]|n[q]).append(v.$createParagraphNode()))}b.setRowSpan(1)}}};
120
+ exports.INSERT_TABLE_COMMAND=ea;exports.TableCellHeaderStates=x;exports.TableCellNode=y;exports.TableNode=Z;exports.TableObserver=za;exports.TableRowNode=I;exports.applyTableHandlers=Ea;exports.getDOMCellFromTarget=Ha;exports.getTableElement=S;exports.getTableObserverFromTableElement=Ga;
121
+ exports.registerTableCellUnmergeTransform=function(a){return a.registerNodeTransform(y,b=>{if(1<b.getColSpan()||1<b.getRowSpan()){var [,,c]=Q(b);[b]=O(c,b,b);let e=b.length,f=b[0].length;c=c.getFirstChild();K(c)||D(175);let g=[];for(let m=0;m<e;m++){0!==m&&(c=c.getNextSibling(),K(c)||D(175));let p=null;for(let r=0;r<f;r++){var d=b[m][r];let k=d.cell;if(d.startRow===m&&d.startColumn===r)p=k,g.push(k);else if(1<k.getColSpan()||1<k.getRowSpan())B(k)||D(176),d=A(k.__headerState),null!==p?p.insertAfter(d):
122
+ h.$insertFirst(c,d)}}for(let m of g)m.setColSpan(1),m.setRowSpan(1)}})};exports.registerTablePlugin=function(a){a.hasNodes([Z])||D(254);return h.mergeRegister(a.registerCommand(ea,ib,v.COMMAND_PRIORITY_EDITOR),a.registerNodeTransform(Z,lb),a.registerNodeTransform(I,kb),a.registerNodeTransform(y,jb))};
123
+ exports.registerTableSelectionObserver=function(a,b=!0){let c=new Map,d=(f,g,m)=>{m=S(f,m);f=Ea(f,m,a,b);c.set(g,[f,m])},e=a.registerMutationListener(Z,f=>{a.getEditorState().read(()=>{for(const [g,m]of f){const p=c.get(g);if("created"===m||"updated"===m){const {tableNode:r,tableElement:k}=ya(g);void 0===p?d(r,g,k):k!==p[1]&&(p[0].removeListeners(),c.delete(g),d(r,g,k))}else"destroyed"===m&&void 0!==p&&(p[0].removeListeners(),c.delete(g))}},{editor:a})},{skipInitialization:!1});return()=>{e();for(let [,
124
+ [f]]of c)f.removeListeners()}};exports.setScrollableTablesActive=function(a,b){b?gb.add(a):gb.delete(a)}