@uva-glass/component-library 3.52.11 → 3.53.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.
- package/dist/{Lexical.prod-sd_e2sqT.js → Lexical.prod-DH2XfwvA.js} +58 -58
- package/dist/{Lexical.prod-sd_e2sqT.js.map → Lexical.prod-DH2XfwvA.js.map} +1 -1
- package/dist/{LexicalClipboard.prod-Co2PF1UJ.js → LexicalClipboard.prod-DTuNvXAS.js} +22 -22
- package/dist/{LexicalClipboard.prod-Co2PF1UJ.js.map → LexicalClipboard.prod-DTuNvXAS.js.map} +1 -1
- package/dist/{LexicalLink.prod-BCE6Bg2N.js → LexicalLink.prod-BV5Y2RYj.js} +8 -9
- package/dist/{LexicalLink.prod-BCE6Bg2N.js.map → LexicalLink.prod-BV5Y2RYj.js.map} +1 -1
- package/dist/{LexicalList.prod-CIB0K0ja.js → LexicalList.prod-DA9du3qx.js} +4 -4
- package/dist/{LexicalList.prod-CIB0K0ja.js.map → LexicalList.prod-DA9du3qx.js.map} +1 -1
- package/dist/{LexicalSelection.prod-CCmcTP6S.js → LexicalSelection.prod-mQk00-U_.js} +2 -2
- package/dist/{LexicalSelection.prod-CCmcTP6S.js.map → LexicalSelection.prod-mQk00-U_.js.map} +1 -1
- package/dist/{LexicalTable.prod-Oa2YPHLl.js → LexicalTable.prod-RGq0GKAR.js} +4 -4
- package/dist/{LexicalTable.prod-Oa2YPHLl.js.map → LexicalTable.prod-RGq0GKAR.js.map} +1 -1
- package/dist/{LexicalUtils.prod-CjKjgnmx.js → LexicalUtils.prod-DU4QwthB.js} +2 -2
- package/dist/{LexicalUtils.prod-CjKjgnmx.js.map → LexicalUtils.prod-DU4QwthB.js.map} +1 -1
- package/dist/RteEditor.module-DaBh86FK.js +41 -0
- package/dist/RteEditor.module-DaBh86FK.js.map +1 -0
- package/dist/{TableCellResizerPlugin-DATbSzfg.js → TableCellResizerPlugin-DRwI83s2.js} +4 -4
- package/dist/{TableCellResizerPlugin-DATbSzfg.js.map → TableCellResizerPlugin-DRwI83s2.js.map} +1 -1
- package/dist/{TablePlugin-CqCjNBW_.js → TablePlugin-DmE96vN7.js} +20 -20
- package/dist/{TablePlugin-CqCjNBW_.js.map → TablePlugin-DmE96vN7.js.map} +1 -1
- package/dist/assets/AddCatalogueLinkForm.css +1 -0
- package/dist/assets/Flyout.css +1 -1
- package/dist/assets/RteEditor.css +1 -1
- package/dist/assets/variables.css +72 -72
- package/dist/chunk-SS2NHR7W-qmI2h7CJ.js +4507 -0
- package/dist/chunk-SS2NHR7W-qmI2h7CJ.js.map +1 -0
- package/dist/{client-CFLMKOFW.js → client-D4oO7Spw.js} +11 -11
- package/dist/{client-CFLMKOFW.js.map → client-D4oO7Spw.js.map} +1 -1
- package/dist/components/Accordion/Accordion.test.js +2 -2
- package/dist/components/AccordionCard/AccordionCard.test.js +2 -2
- package/dist/components/ActionList/ActionList.test.js +2 -2
- package/dist/components/AppStatusBar/AppStatusBar.test.js +1 -1
- package/dist/components/Attention/Attention.test.js +1 -1
- package/dist/components/Backdrop/Backdrop.test.js +1 -1
- package/dist/components/Buttons/Button.stories.js +1 -1
- package/dist/components/Buttons/Button.test.js +1 -1
- package/dist/components/Buttons/LinkButton.stories.js +1 -1
- package/dist/components/Buttons/LinkButton.test.js +1 -1
- package/dist/components/Buttons/MenuButton.stories.js +1 -1
- package/dist/components/Buttons/MenuButton.test.js +1 -1
- package/dist/components/Card/Card.test.js +1 -1
- package/dist/components/Checkbox/Checkbox.stories.js +1 -1
- package/dist/components/Checkbox/Checkbox.test.js +2 -2
- package/dist/components/CheckboxButtonBar/CheckboxButtonBar.stories.js +1 -1
- package/dist/components/CheckboxButtonBar/CheckboxButtonBar.test.js +1 -1
- package/dist/components/CheckboxTree/CheckboxTree.js +1 -1
- package/dist/components/CheckboxTree/CheckboxTree.stories.js +111 -55
- package/dist/components/CheckboxTree/CheckboxTree.stories.js.map +1 -1
- package/dist/components/Chip/Chip.stories.js +1 -1
- package/dist/components/ControlsButton/ControlsButton.stories.js +1 -1
- package/dist/components/Drawer/Drawer.stories.js +1 -1
- package/dist/components/FeedbackBar/FeedbackBar.test.js +1 -1
- package/dist/components/FormInput/FormInput.js +1 -1
- package/dist/components/FormInput/FormInput.stories.js +1 -1
- package/dist/components/IconButton/IconButton.stories.js +1 -1
- package/dist/components/InputField/InputField.stories.js +2 -2
- package/dist/components/Label/Label.test.js +1 -1
- package/dist/components/MetaDataBar/MetaDataBar.test.js +1 -1
- package/dist/components/ModalDialog/ModalDialog.stories.js +1 -1
- package/dist/components/MultiSelect/MultiSelect.js +1 -1
- package/dist/components/MultiSelect/MultiSelect.stories.js +2 -2
- package/dist/components/MultiSelect/components/MultiSelectHeader.js +1 -1
- package/dist/components/MultiSelect/index.js +1 -1
- package/dist/components/MultiSelectBox/MultiSelectBox.stories.js +1 -1
- package/dist/components/MultiSelectBox/MultiSelectBox.test.js +1 -1
- package/dist/components/Notification/Notification.stories.js +1 -1
- package/dist/components/Notification/Notification.test.js +1 -1
- package/dist/components/OverlayCloseButton/OverlayCloseButton.stories.js +1 -1
- package/dist/components/PeriodSelector/PeriodSelector.js +1 -1
- package/dist/components/PeriodSelector/PeriodSelector.stories.js +1 -1
- package/dist/components/ProgrammeCard/ProgrammeCard.stories.js +1 -1
- package/dist/components/RadioGroup/RadioGroup.stories.js +1 -1
- package/dist/components/RadioGroup/Radiogroup.test.js +1 -1
- package/dist/components/RadioTabSelector/RadioTabSelector.js +1 -1
- package/dist/components/RadioTabSelector/RadioTabSelector.stories.js +1 -1
- package/dist/components/RteEditor/EditorHeader/EditorHeader.js +1 -1
- package/dist/components/RteEditor/Plugins/BlockFormatPlugin/BlockFormatPlugin.js +2 -2
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/AddCatalogueLinkForm.d.ts +22 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/AddCatalogueLinkForm.js +108 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/AddCatalogueLinkForm.js.map +1 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/index.d.ts +1 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/index.js +5 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/AddCatalogueLinkForm/index.js.map +1 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/CourseCataloguePlugin.d.ts +8 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/CourseCataloguePlugin.js +182 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/CourseCataloguePlugin.js.map +1 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/index.d.ts +1 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/index.js +5 -0
- package/dist/components/RteEditor/Plugins/CourseCataloguePlugin/index.js.map +1 -0
- package/dist/components/RteEditor/Plugins/HistoryPlugin/HistoryPlugin.js +8 -8
- package/dist/components/RteEditor/Plugins/LinkPlugin/AddLinkForm/AddLinkFrom.js +2 -2
- package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.d.ts +0 -2
- package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.js +112 -132
- package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.js.map +1 -1
- package/dist/components/RteEditor/Plugins/LinkPlugin/helpers.js +1 -1
- package/dist/components/RteEditor/Plugins/LinkPlugin/index.js +2 -3
- package/dist/components/RteEditor/Plugins/ListPlugin/ListPlugin.js +52 -57
- package/dist/components/RteEditor/Plugins/ListPlugin/ListPlugin.js.map +1 -1
- package/dist/components/RteEditor/Plugins/PasteHandlerPlugin/PasteHandlerPlugin.js +3 -3
- package/dist/components/RteEditor/Plugins/TableCellResizerPlugin/TableCellResizerPlugin.js +4 -4
- package/dist/components/RteEditor/Plugins/TableCellResizerPlugin/index.js +1 -1
- package/dist/components/RteEditor/Plugins/TablePlugin/AddTableFrom.js +2 -2
- package/dist/components/RteEditor/Plugins/TablePlugin/TablePlugin.js +6 -6
- package/dist/components/RteEditor/Plugins/TablePlugin/helpers.js +24 -23
- package/dist/components/RteEditor/Plugins/TablePlugin/helpers.js.map +1 -1
- package/dist/components/RteEditor/Plugins/TablePlugin/index.js +1 -1
- package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.d.ts +4 -1
- package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.js +65 -52
- package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.js.map +1 -1
- package/dist/components/RteEditor/Plugins/index.js +8 -9
- package/dist/components/RteEditor/Providers/LanguageProvider.d.ts +2 -2
- package/dist/components/RteEditor/Providers/LanguageProvider.js +4 -4
- package/dist/components/RteEditor/Providers/LanguageProvider.js.map +1 -1
- package/dist/components/RteEditor/RteEditor.d.ts +8 -3
- package/dist/components/RteEditor/RteEditor.js +334 -309
- package/dist/components/RteEditor/RteEditor.js.map +1 -1
- package/dist/components/RteEditor/RteEditor.stories.js +69 -33
- package/dist/components/RteEditor/RteEditor.stories.js.map +1 -1
- package/dist/components/RteEditor/UvaTheme/UvaTheme.d.ts +1 -0
- package/dist/components/RteEditor/UvaTheme/UvaTheme.js +3 -2
- package/dist/components/RteEditor/UvaTheme/UvaTheme.js.map +1 -1
- package/dist/components/RteEditor/helpers.js +26 -23
- package/dist/components/RteEditor/helpers.js.map +1 -1
- package/dist/components/RteEditor/hooks/components/Flyout.js +6 -16
- package/dist/components/RteEditor/hooks/components/Flyout.js.map +1 -1
- package/dist/components/RteEditor/hooks/useTranslation.d.ts +39 -1
- package/dist/components/RteEditor/hooks/useTranslation.js +6 -6
- package/dist/components/RteEditor/hooks/useTranslation.js.map +1 -1
- package/dist/components/RteEditor/mockCatalogueSearchData.d.ts +18 -0
- package/dist/components/RteEditor/mockCatalogueSearchData.js +485 -0
- package/dist/components/RteEditor/mockCatalogueSearchData.js.map +1 -0
- package/dist/components/RteEditor/mockRteContent.d.ts +1 -1
- package/dist/components/RteEditor/mockRteContent.js +8 -6
- package/dist/components/RteEditor/mockRteContent.js.map +1 -1
- package/dist/components/RteEditor/nodes/CourseCatalogueNode/CourseCatalogueNode.d.ts +29 -0
- package/dist/components/RteEditor/nodes/CourseCatalogueNode/CourseCatalogueNode.js +126 -0
- package/dist/components/RteEditor/nodes/CourseCatalogueNode/CourseCatalogueNode.js.map +1 -0
- package/dist/components/RteEditor/nodes/CourseCatalogueNode/index.d.ts +1 -0
- package/dist/components/RteEditor/nodes/CourseCatalogueNode/index.js +11 -0
- package/dist/components/RteEditor/nodes/CourseCatalogueNode/index.js.map +1 -0
- package/dist/components/RteEditor/nodes/TableWrapperNode/TableWrapperNode.js +58 -52
- package/dist/components/RteEditor/nodes/TableWrapperNode/TableWrapperNode.js.map +1 -1
- package/dist/components/RteEditor/nodes/index.d.ts +1 -0
- package/dist/components/RteEditor/nodes/index.js +14 -6
- package/dist/components/RteEditor/nodes/index.js.map +1 -1
- package/dist/components/RteEditor/translations.d.ts +41 -3
- package/dist/components/RteEditor/translations.js +44 -6
- package/dist/components/RteEditor/translations.js.map +1 -1
- package/dist/components/SelectListbox/SelectListBox.stories.js +1 -1
- package/dist/components/Sortable/Sortable.stories.js +1 -1
- package/dist/components/StatusBadge/StatusBadge.test.js +1 -1
- package/dist/components/TextArea/TextArea.stories.js +1 -1
- package/dist/components/TextArea/TextArea.test.js +2 -2
- package/dist/components/ToggleSwitch/ToggleSwitch.stories.js +1 -1
- package/dist/components/VarIndicator/VarIndicator.stories.js +1 -1
- package/dist/components/VarIndicator/VarIndicator.test.js +2 -2
- package/dist/components/index.js +1 -1
- package/dist/{index-DRQMriwT.js → index-B4NxQN5d.js} +8668 -10004
- package/dist/index-B4NxQN5d.js.map +1 -0
- package/dist/{index-BKK3EWVW.js → index-ZQcmo1D_.js} +2 -2
- package/dist/{index-BKK3EWVW.js.map → index-ZQcmo1D_.js.map} +1 -1
- package/dist/index.js +1 -1
- package/dist/react-18-BczhA0zC.js +41 -0
- package/dist/react-18-BczhA0zC.js.map +1 -0
- package/dist/{react.esm-BjO203QT.js → react.esm-BDo_tPxu.js} +2 -2
- package/dist/{react.esm-BjO203QT.js.map → react.esm-BDo_tPxu.js.map} +1 -1
- package/dist/storybook__react.d.js +4252 -4509
- package/dist/storybook__react.d.js.map +1 -1
- package/package.json +19 -19
- package/dist/RteEditor.module-CUi7Vqe8.js +0 -37
- package/dist/RteEditor.module-CUi7Vqe8.js.map +0 -1
- package/dist/chunk-HERDX7MO-DaYu-eWo.js +0 -11320
- package/dist/chunk-HERDX7MO-DaYu-eWo.js.map +0 -1
- package/dist/index-DRQMriwT.js.map +0 -1
- package/dist/react-18-C6foUf2n.js +0 -42
- package/dist/react-18-C6foUf2n.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LexicalTable.prod-Oa2YPHLl.js","sources":["../node_modules/@lexical/table/LexicalTable.prod.mjs"],"sourcesContent":["/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport{addClassNamesToElement as e,$descendantsMatching as t,$findMatchingParent as n,removeClassNamesFromElement as o,objectKlassEquals as r,isHTMLElement as l,$insertFirst as s,mergeRegister as i,$insertNodeToNearestRoot as c,$unwrapAndFilterDescendants as a}from\"@lexical/utils\";import{ElementNode as u,isHTMLElement as h,$isInlineElementOrDecoratorNode as d,$isTextNode as f,$isLineBreakNode as g,$createParagraphNode as m,$applyNodeReplacement as p,createCommand as C,$createTextNode as _,$getSelection as S,$isRangeSelection as w,$isParagraphNode as b,$createPoint as y,$getNodeByKey as N,$isElementNode as v,$normalizeSelection__EXPERIMENTAL as x,isCurrentlyReadOnlyMode as T,TEXT_TYPE_TO_FORMAT as R,$getEditor as F,$setSelection as O,SELECTION_CHANGE_COMMAND as A,getDOMSelection as K,$createRangeSelection as E,$isRootNode as k,INSERT_PARAGRAPH_COMMAND as M,KEY_ARROW_DOWN_COMMAND as $,KEY_ARROW_UP_COMMAND as z,KEY_ARROW_LEFT_COMMAND as W,KEY_ARROW_RIGHT_COMMAND as H,COMMAND_PRIORITY_HIGH as L,KEY_ESCAPE_COMMAND as B,DELETE_WORD_COMMAND as P,DELETE_LINE_COMMAND as D,DELETE_CHARACTER_COMMAND as I,KEY_BACKSPACE_COMMAND as U,KEY_DELETE_COMMAND as J,CUT_COMMAND as Y,FORMAT_TEXT_COMMAND as X,FORMAT_ELEMENT_COMMAND as q,CONTROLLED_TEXT_INSERTION_COMMAND as j,KEY_TAB_COMMAND as V,FOCUS_COMMAND as G,SELECTION_INSERT_CLIPBOARD_NODES_COMMAND as Q,$getPreviousSelection as Z,$getNearestNodeFromDOMNode as ee,$createRangeSelectionFromDom as te,isDOMNode as ne,$isRootOrShadowRoot as oe,$caretFromPoint as re,$isExtendableTextPointCaret as le,$extendCaretToRange as se,$isSiblingCaret as ie,$getSiblingCaret as ce,$setPointFromCaret as ae,$normalizeCaret as ue,$isChildCaret as he,$getChildCaret as de,$getAdjacentChildCaret as fe,setDOMUnmanaged as ge,COMMAND_PRIORITY_EDITOR as me,CLICK_COMMAND as pe,defineExtension as Ce,safeCast as _e}from\"lexical\";import{effect as Se,namedSignals as we}from\"@lexical/extension\";import{copyToClipboard as be,$getClipboardDataFromSelection as ye}from\"@lexical/clipboard\";const Ne=/^(\\d+(?:\\.\\d+)?)px$/,ve={BOTH:3,COLUMN:2,NO_STATUS:0,ROW:1};class xe extends u{__colSpan;__rowSpan;__headerState;__width;__backgroundColor;__verticalAlign;static getType(){return\"tablecell\"}static clone(e){return new xe(e.__headerState,e.__colSpan,e.__width,e.__key)}afterCloneFrom(e){super.afterCloneFrom(e),this.__rowSpan=e.__rowSpan,this.__backgroundColor=e.__backgroundColor,this.__verticalAlign=e.__verticalAlign}static importDOM(){return{td:e=>({conversion:Re,priority:0}),th:e=>({conversion:Re,priority:0})}}static importJSON(e){return Fe().updateFromJSON(e)}updateFromJSON(e){return super.updateFromJSON(e).setHeaderStyles(e.headerState).setColSpan(e.colSpan||1).setRowSpan(e.rowSpan||1).setWidth(e.width||void 0).setBackgroundColor(e.backgroundColor||null).setVerticalAlign(e.verticalAlign||void 0)}constructor(e=ve.NO_STATUS,t=1,n,o){super(o),this.__colSpan=t,this.__rowSpan=1,this.__headerState=e,this.__width=n,this.__backgroundColor=null,this.__verticalAlign=void 0}createDOM(t){const n=document.createElement(this.getTag());return this.__width&&(n.style.width=`${this.__width}px`),this.__colSpan>1&&(n.colSpan=this.__colSpan),this.__rowSpan>1&&(n.rowSpan=this.__rowSpan),null!==this.__backgroundColor&&(n.style.backgroundColor=this.__backgroundColor),Te(this.__verticalAlign)&&(n.style.verticalAlign=this.__verticalAlign),e(n,t.theme.tableCell,this.hasHeader()&&t.theme.tableCellHeader),n}exportDOM(e){const t=super.exportDOM(e);if(h(t.element)){const e=t.element;e.setAttribute(\"data-temporary-table-cell-lexical-key\",this.getKey()),e.style.border=\"1px solid black\",this.__colSpan>1&&(e.colSpan=this.__colSpan),this.__rowSpan>1&&(e.rowSpan=this.__rowSpan),e.style.width=`${this.getWidth()||75}px`,e.style.verticalAlign=this.getVerticalAlign()||\"top\",e.style.textAlign=\"start\",null===this.__backgroundColor&&this.hasHeader()&&(e.style.backgroundColor=\"#f2f3f5\")}return t}exportJSON(){return{...super.exportJSON(),...Te(this.__verticalAlign)&&{verticalAlign:this.__verticalAlign},backgroundColor:this.getBackgroundColor(),colSpan:this.__colSpan,headerState:this.__headerState,rowSpan:this.__rowSpan,width:this.getWidth()}}getColSpan(){return this.getLatest().__colSpan}setColSpan(e){const t=this.getWritable();return t.__colSpan=e,t}getRowSpan(){return this.getLatest().__rowSpan}setRowSpan(e){const t=this.getWritable();return t.__rowSpan=e,t}getTag(){return this.hasHeader()?\"th\":\"td\"}setHeaderStyles(e,t=ve.BOTH){const n=this.getWritable();return n.__headerState=e&t|n.__headerState&~t,n}getHeaderStyles(){return this.getLatest().__headerState}setWidth(e){const t=this.getWritable();return t.__width=e,t}getWidth(){return this.getLatest().__width}getBackgroundColor(){return this.getLatest().__backgroundColor}setBackgroundColor(e){const t=this.getWritable();return t.__backgroundColor=e,t}getVerticalAlign(){return this.getLatest().__verticalAlign}setVerticalAlign(e){const t=this.getWritable();return t.__verticalAlign=e||void 0,t}toggleHeaderStyle(e){const t=this.getWritable();return(t.__headerState&e)===e?t.__headerState-=e:t.__headerState+=e,t}hasHeaderState(e){return(this.getHeaderStyles()&e)===e}hasHeader(){return this.getLatest().__headerState!==ve.NO_STATUS}updateDOM(e){return e.__headerState!==this.__headerState||e.__width!==this.__width||e.__colSpan!==this.__colSpan||e.__rowSpan!==this.__rowSpan||e.__backgroundColor!==this.__backgroundColor||e.__verticalAlign!==this.__verticalAlign}isShadowRoot(){return!0}collapseAtStart(){return!0}canBeEmpty(){return!1}canIndent(){return!1}}function Te(e){return\"middle\"===e||\"bottom\"===e}function Re(e){const t=e,n=e.nodeName.toLowerCase();let o;Ne.test(t.style.width)&&(o=parseFloat(t.style.width));const r=Fe(\"th\"===n?ve.ROW:ve.NO_STATUS,t.colSpan,o);r.__rowSpan=t.rowSpan;const l=t.style.backgroundColor;\"\"!==l&&(r.__backgroundColor=l);const s=t.style.verticalAlign;Te(s)&&(r.__verticalAlign=s);const i=t.style,c=(i&&i.textDecoration||\"\").split(\" \"),a=\"700\"===i.fontWeight||\"bold\"===i.fontWeight,u=c.includes(\"line-through\"),h=\"italic\"===i.fontStyle,p=c.includes(\"underline\");return{after:e=>{const t=[];let n=null;const o=()=>{if(n){const e=n.getFirstChild();g(e)&&1===n.getChildrenSize()&&e.remove()}};for(const r of e)d(r)||f(r)||g(r)?(f(r)&&(a&&r.toggleFormat(\"bold\"),u&&r.toggleFormat(\"strikethrough\"),h&&r.toggleFormat(\"italic\"),p&&r.toggleFormat(\"underline\")),n?n.append(r):(n=m().append(r),t.push(n))):(t.push(r),o(),n=null);return o(),0===t.length&&t.push(m()),t},node:r}}function Fe(e=ve.NO_STATUS,t=1,n){return p(new xe(e,t,n))}function Oe(e){return e instanceof xe}const Ae=C(\"INSERT_TABLE_COMMAND\");function Ke(e,...t){const n=new URL(\"https://lexical.dev/docs/error\"),o=new URLSearchParams;o.append(\"code\",e);for(const e of t)o.append(\"v\",e);throw n.search=o.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}class Ee extends u{__height;static getType(){return\"tablerow\"}static clone(e){return new Ee(e.__height,e.__key)}static importDOM(){return{tr:e=>({conversion:ke,priority:0})}}static importJSON(e){return Me().updateFromJSON(e)}updateFromJSON(e){return super.updateFromJSON(e).setHeight(e.height)}constructor(e,t){super(t),this.__height=e}exportJSON(){const e=this.getHeight();return{...super.exportJSON(),...void 0===e?void 0:{height:e}}}createDOM(t){const n=document.createElement(\"tr\");return this.__height&&(n.style.height=`${this.__height}px`),e(n,t.theme.tableRow),n}extractWithChild(e,t,n){return\"html\"===n}isShadowRoot(){return!0}setHeight(e){const t=this.getWritable();return t.__height=e,t}getHeight(){return this.getLatest().__height}updateDOM(e){return e.__height!==this.__height}canBeEmpty(){return!1}canIndent(){return!1}}function ke(e){const n=e;let o;return Ne.test(n.style.height)&&(o=parseFloat(n.style.height)),{after:e=>t(e,Oe),node:Me(o)}}function Me(e){return p(new Ee(e))}function $e(e){return e instanceof Ee}const ze=\"undefined\"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,We=ze&&\"documentMode\"in document?document.documentMode:null,He=ze&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent);function Le(e,t,n=!0){const o=gn();for(let r=0;r<e;r++){const e=Me();for(let o=0;o<t;o++){let t=ve.NO_STATUS;\"object\"==typeof n?(0===r&&n.rows&&(t|=ve.ROW),0===o&&n.columns&&(t|=ve.COLUMN)):n&&(0===r&&(t|=ve.ROW),0===o&&(t|=ve.COLUMN));const l=Fe(t),s=m();s.append(_()),l.append(s),e.append(l)}o.append(e)}return o}function Be(e){const t=n(e,e=>Oe(e));return Oe(t)?t:null}function Pe(e){const t=n(e,e=>$e(e));if($e(t))return t;throw new Error(\"Expected table cell to be inside of table row.\")}function De(e){const t=n(e,e=>mn(e));if(mn(t))return t;throw new Error(\"Expected table cell to be inside of table.\")}function Ie(e){const t=Pe(e);return De(t).getChildren().findIndex(e=>e.is(t))}function Ue(e){return Pe(e).getChildren().findIndex(t=>t.is(e))}function Je(e,t){const n=De(e),{x:o,y:r}=n.getCordsFromCellNode(e,t);return{above:n.getCellNodeFromCords(o,r-1,t),below:n.getCellNodeFromCords(o,r+1,t),left:n.getCellNodeFromCords(o-1,r,t),right:n.getCellNodeFromCords(o+1,r,t)}}function Ye(e,t){const n=e.getChildren();if(t>=n.length||t<0)throw new Error(\"Expected table cell to be inside of table row.\");return n[t].remove(),e}function Xe(e,t,n=!0,o,r){const l=e.getChildren();if(t>=l.length||t<0)throw new Error(\"Table row target index out of range\");const s=l[t];if(!$e(s))throw new Error(\"Row before insertion index does not exist.\");for(let e=0;e<o;e++){const e=s.getChildren(),t=e.length,o=Me();for(let n=0;n<t;n++){const t=e[n];Oe(t)||Ke(12);const{above:l,below:s}=Je(t,r);let i=ve.NO_STATUS;const c=l&&l.getWidth()||s&&s.getWidth()||void 0;(l&&l.hasHeaderState(ve.COLUMN)||s&&s.hasHeaderState(ve.COLUMN))&&(i|=ve.COLUMN);const a=Fe(i,1,c);a.append(m()),o.append(a)}n?s.insertAfter(o):s.insertBefore(o)}return e}ze&&\"InputEvent\"in window&&!We&&new window.InputEvent(\"input\");const qe=(e,t)=>e===ve.BOTH||e===t?t:ve.NO_STATUS;function je(e=!0){const t=S();w(t)||wt(t)||Ke(188);const n=t.anchor.getNode(),o=t.focus.getNode(),[r]=mt(n),[l,,s]=mt(o),[,i,c]=ft(s,l,r),{startRow:a}=c,{startRow:u}=i;return e?Ge(a+r.__rowSpan>u+l.__rowSpan?r:l,!0):Ge(u<a?l:r,!1)}const Ve=je;function Ge(e,t=!0){const[,,n]=mt(e),[o,r]=ft(n,e,e),l=o[0].length,{startRow:s}=r;let i=null;if(t){const t=s+e.__rowSpan-1,r=o[t],c=Me();for(let e=0;e<l;e++){const{cell:n,startRow:o}=r[e];if(o+n.__rowSpan-1<=t){const t=r[e].cell.__headerState,n=qe(t,ve.COLUMN);c.append(Fe(n).append(m()))}else n.setRowSpan(n.__rowSpan+1)}const a=n.getChildAtIndex(t);$e(a)||Ke(256),a.insertAfter(c),i=c}else{const e=s,t=o[e],r=Me();for(let n=0;n<l;n++){const{cell:o,startRow:l}=t[n];if(l===e){const e=t[n].cell.__headerState,o=qe(e,ve.COLUMN);r.append(Fe(o).append(m()))}else o.setRowSpan(o.__rowSpan+1)}const c=n.getChildAtIndex(e);$e(c)||Ke(257),c.insertBefore(r),i=r}return i}function Qe(e,t,n=!0,o,r){const l=e.getChildren(),s=[];for(let e=0;e<l.length;e++){const n=l[e];if($e(n))for(let e=0;e<o;e++){const e=n.getChildren();if(t>=e.length||t<0)throw new Error(\"Table column target index out of range\");const o=e[t];Oe(o)||Ke(12);const{left:l,right:i}=Je(o,r);let c=ve.NO_STATUS;(l&&l.hasHeaderState(ve.ROW)||i&&i.hasHeaderState(ve.ROW))&&(c|=ve.ROW);const a=Fe(c);a.append(m()),s.push({newTableCell:a,targetCell:o})}}return s.forEach(({newTableCell:e,targetCell:t})=>{n?t.insertAfter(e):t.insertBefore(e)}),e}function Ze(e=!0){const t=S();w(t)||wt(t)||Ke(188);const n=t.anchor.getNode(),o=t.focus.getNode(),[r]=mt(n),[l,,s]=mt(o),[,i,c]=ft(s,l,r),{startColumn:a}=c,{startColumn:u}=i;return e?tt(a+r.__colSpan>u+l.__colSpan?r:l,!0):tt(u<a?l:r,!1)}const et=Ze;function tt(e,t=!0,n=!0){const[,,o]=mt(e),[r,l]=ft(o,e,e),s=r.length,{startColumn:i}=l,c=t?i+e.__colSpan-1:i-1,a=o.getFirstChild();$e(a)||Ke(120);let u=null;function h(e=ve.NO_STATUS){const t=Fe(e).append(m());return null===u&&(u=t),t}let d=a;e:for(let e=0;e<s;e++){if(0!==e){const e=d.getNextSibling();$e(e)||Ke(121),d=e}const t=r[e],n=t[c<0?0:c].cell.__headerState,o=qe(n,ve.ROW);if(c<0){ct(d,h(o));continue}const{cell:l,startColumn:s,startRow:i}=t[c];if(s+l.__colSpan-1<=c){let n=l,r=i,s=c;for(;r!==e&&n.__rowSpan>1;){if(s-=l.__colSpan,!(s>=0)){d.append(h(o));continue e}{const{cell:e,startRow:o}=t[s];n=e,r=o}}n.insertAfter(h(o))}else l.setColSpan(l.__colSpan+1)}null!==u&&n&&it(u);const f=o.getColWidths();if(f){const e=[...f],t=c<0?0:c,n=e[t];e.splice(t,0,n),o.setColWidths(e)}return u}function nt(e,t){const n=e.getChildren();for(let e=0;e<n.length;e++){const o=n[e];if($e(o)){const e=o.getChildren();if(t>=e.length||t<0)throw new Error(\"Table column target index out of range\");e[t].remove()}}return e}function ot(){const e=S();w(e)||wt(e)||Ke(188);const[t,n]=e.isBackward()?[e.focus.getNode(),e.anchor.getNode()]:[e.anchor.getNode(),e.focus.getNode()],[o,,r]=mt(t),[l]=mt(n),[s,i,c]=ft(r,o,l),{startRow:a}=i,{startRow:u}=c,h=u+l.__rowSpan-1;if(s.length===h-a+1)return void r.remove();const d=s[0].length,f=s[h+1],g=r.getChildAtIndex(h+1);for(let e=h;e>=a;e--){for(let t=d-1;t>=0;t--){const{cell:n,startRow:o,startColumn:r}=s[e][t];if(r===t){if(o<a||o+n.__rowSpan-1>h){const e=Math.max(o,a),t=Math.min(n.__rowSpan+o-1,h),r=e<=t?t-e+1:0;n.setRowSpan(n.__rowSpan-r)}if(o>=a&&o+n.__rowSpan-1>h&&e===h){null===g&&Ke(122);let o=null;for(let n=0;n<t;n++){const t=f[n],r=t.cell;t.startRow===e+1&&(o=r),r.__colSpan>1&&(n+=r.__colSpan-1)}null===o?ct(g,n):o.insertAfter(n)}}}const t=r.getChildAtIndex(e);$e(t)||Ke(206,String(e)),t.remove()}if(void 0!==f){const{cell:e}=f[0];it(e)}else{const e=s[a-1],{cell:t}=e[0];it(t)}}const rt=ot;function lt(){const e=S();w(e)||wt(e)||Ke(188);const t=e.anchor.getNode(),n=e.focus.getNode(),[o,,r]=mt(t),[l]=mt(n),[s,i,c]=ft(r,o,l),{startColumn:a}=i,{startRow:u,startColumn:h}=c,d=Math.min(a,h),f=Math.max(a+o.__colSpan-1,h+l.__colSpan-1),g=f-d+1;if(s[0].length===f-d+1)return r.selectPrevious(),void r.remove();const m=s.length;for(let e=0;e<m;e++)for(let t=d;t<=f;t++){const{cell:n,startColumn:o}=s[e][t];if(o<d){if(t===d){const e=d-o;n.setColSpan(n.__colSpan-Math.min(g,n.__colSpan-e))}}else if(o+n.__colSpan-1>f){if(t===f){const e=f-o+1;n.setColSpan(n.__colSpan-e)}}else n.remove()}const p=s[u],C=a>h?p[a+o.__colSpan]:p[h+l.__colSpan];if(void 0!==C){const{cell:e}=C;it(e)}else{const e=h<a?p[h-1]:p[a-1],{cell:t}=e;it(t)}const _=r.getColWidths();if(_){const e=[..._];e.splice(d,g),r.setColWidths(e)}}const st=lt;function it(e){const t=e.getFirstDescendant();null==t?e.selectStart():t.getParentOrThrow().selectStart()}function ct(e,t){const n=e.getFirstChild();null!==n?n.insertBefore(t):e.append(t)}function at(e){if(0===e.length)return null;const t=De(e[0]),[n]=gt(t,null,null);let o=1/0,r=-1/0,l=1/0,s=-1/0;const i=new Set;for(const t of n)for(const n of t){if(!n||!n.cell)continue;const t=n.cell.getKey();if(!i.has(t)&&e.some(e=>e.is(n.cell))){i.add(t);const e=n.startRow,c=n.startColumn,a=n.cell.__rowSpan||1,u=n.cell.__colSpan||1;o=Math.min(o,e),r=Math.max(r,e+a-1),l=Math.min(l,c),s=Math.max(s,c+u-1)}}if(o===1/0||l===1/0)return null;const c=r-o+1,a=s-l+1,u=n[o][l];if(!u.cell)return null;const h=u.cell;h.setColSpan(a),h.setRowSpan(c);const d=new Set([h.getKey()]);for(let e=o;e<=r;e++)for(let t=l;t<=s;t++){const o=n[e][t];if(!o.cell)continue;const r=o.cell,l=r.getKey();if(!d.has(l)){d.add(l);ut(r)||h.append(...r.getChildren()),r.remove()}}return 0===h.getChildrenSize()&&h.append(m()),h}function ut(e){if(1!==e.getChildrenSize())return!1;const t=e.getFirstChildOrThrow();return!(!b(t)||!t.isEmpty())}function ht(){const e=S();w(e)||wt(e)||Ke(188);const t=e.anchor.getNode(),o=n(t,Oe);return Oe(o)||Ke(148),dt(o)}function dt(e){const[t,n,o]=mt(e),r=t.__colSpan,l=t.__rowSpan;if(1===r&&1===l)return;const[s,i]=ft(o,t,t),{startColumn:c,startRow:a}=i,u=t.__headerState&ve.COLUMN,h=Array.from({length:r},(e,t)=>{let n=u;for(let e=0;0!==n&&e<s.length;e++)n&=s[e][t+c].cell.__headerState;return n}),d=t.__headerState&ve.ROW,f=Array.from({length:l},(e,t)=>{let n=d;for(let e=0;0!==n&&e<s[0].length;e++)n&=s[t+a][e].cell.__headerState;return n});if(r>1){for(let e=1;e<r;e++)t.insertAfter(Fe(h[e]|f[0]).append(m()));t.setColSpan(1)}if(l>1){let e;for(let t=1;t<l;t++){const o=a+t,l=s[o];e=(e||n).getNextSibling(),$e(e)||Ke(125);let i=null;for(let e=0;e<c;e++){const t=l[e],n=t.cell;t.startRow===o&&(i=n),n.__colSpan>1&&(e+=n.__colSpan-1)}if(null===i)for(let n=r-1;n>=0;n--)ct(e,Fe(h[n]|f[t]).append(m()));else for(let e=r-1;e>=0;e--)i.insertAfter(Fe(h[e]|f[t]).append(m()))}t.setRowSpan(1)}}function ft(e,t,n){const[o,r,l]=gt(e,t,n);return null===r&&Ke(207),null===l&&Ke(208),[o,r,l]}function gt(e,t,n){const o=[];let r=null,l=null;function s(e){let t=o[e];return void 0===t&&(o[e]=t=[]),t}const i=e.getChildren();for(let e=0;e<i.length;e++){const o=i[e];$e(o)||Ke(209);const c=s(e);for(let a=o.getFirstChild(),u=0;null!=a;a=a.getNextSibling()){for(Oe(a)||Ke(147);void 0!==c[u];)u++;const o={cell:a,startColumn:u,startRow:e},{__rowSpan:h,__colSpan:d}=a;for(let t=0;t<h&&!(e+t>=i.length);t++){const n=s(e+t);for(let e=0;e<d;e++)n[u+e]=o}null!==t&&null===r&&t.is(a)&&(r=o),null!==n&&null===l&&n.is(a)&&(l=o)}}return[o,r,l]}function mt(e){let t;if(e instanceof xe)t=e;else if(\"__type\"in e){const o=n(e,Oe);Oe(o)||Ke(148),t=o}else{const o=n(e.getNode(),Oe);Oe(o)||Ke(148),t=o}const o=t.getParent();$e(o)||Ke(149);const r=o.getParent();return mn(r)||Ke(210),[t,o,r]}function pt(e,t,n){let o,r=Math.min(t.startColumn,n.startColumn),l=Math.min(t.startRow,n.startRow),s=Math.max(t.startColumn+t.cell.__colSpan-1,n.startColumn+n.cell.__colSpan-1),i=Math.max(t.startRow+t.cell.__rowSpan-1,n.startRow+n.cell.__rowSpan-1);do{o=!1;for(let t=0;t<e.length;t++)for(let n=0;n<e[0].length;n++){const c=e[t][n];if(!c)continue;const a=c.startColumn+c.cell.__colSpan-1,u=c.startRow+c.cell.__rowSpan-1,h=c.startColumn<=s&&a>=r,d=c.startRow<=i&&u>=l;if(h&&d){const e=Math.min(r,c.startColumn),t=Math.max(s,a),n=Math.min(l,c.startRow),h=Math.max(i,u);e===r&&t===s&&n===l&&h===i||(r=e,s=t,l=n,i=h,o=!0)}}}while(o);return{maxColumn:s,maxRow:i,minColumn:r,minRow:l}}function Ct(e){const[t,,n]=mt(e),o=n.getChildren(),r=o.length,l=o[0].getChildren().length,s=new Array(r);for(let e=0;e<r;e++)s[e]=new Array(l);for(let e=0;e<r;e++){const n=o[e].getChildren();let r=0;for(let o=0;o<n.length;o++){for(;s[e][r];)r++;const l=n[o],i=l.__rowSpan||1,c=l.__colSpan||1;for(let t=0;t<i;t++)for(let n=0;n<c;n++)s[e+t][r+n]=l;if(t===l)return{colSpan:c,columnIndex:r,rowIndex:e,rowSpan:i};r+=c}}return null}function _t(e){const[[t,o,r,l],[s,i,c,a]]=[\"anchor\",\"focus\"].map(t=>{const o=e[t].getNode(),r=n(o,Oe);Oe(r)||Ke(238,t,o.getKey(),o.getType());const l=r.getParent();$e(l)||Ke(239,t);const s=l.getParent();return mn(s)||Ke(240,t),[o,r,l,s]});return l.is(a)||Ke(241),{anchorCell:o,anchorNode:t,anchorRow:r,anchorTable:l,focusCell:i,focusNode:s,focusRow:c,focusTable:a}}class St{tableKey;anchor;focus;_cachedNodes;dirty;constructor(e,t,n){this.anchor=t,this.focus=n,t._selection=this,n._selection=this,this._cachedNodes=null,this.dirty=!1,this.tableKey=e}getStartEndPoints(){return[this.anchor,this.focus]}isValid(){if(\"root\"===this.tableKey||\"root\"===this.anchor.key||\"element\"!==this.anchor.type||\"root\"===this.focus.key||\"element\"!==this.focus.type)return!1;const e=N(this.tableKey),t=N(this.anchor.key),n=N(this.focus.key);return null!==e&&null!==t&&null!==n}isBackward(){return this.focus.isBefore(this.anchor)}getCachedNodes(){return this._cachedNodes}setCachedNodes(e){this._cachedNodes=e}is(e){return wt(e)&&this.tableKey===e.tableKey&&this.anchor.is(e.anchor)&&this.focus.is(e.focus)}set(e,t,n){this.dirty=this.dirty||e!==this.tableKey||t!==this.anchor.key||n!==this.focus.key,this.tableKey=e,this.anchor.key=t,this.focus.key=n,this._cachedNodes=null}clone(){return new St(this.tableKey,y(this.anchor.key,this.anchor.offset,this.anchor.type),y(this.focus.key,this.focus.offset,this.focus.type))}isCollapsed(){return!1}extract(){return this.getNodes()}insertRawText(e){}insertText(){}hasFormat(e){let t=0;this.getNodes().filter(Oe).forEach(e=>{const n=e.getFirstChild();b(n)&&(t|=n.getTextFormat())});const n=R[e];return 0!==(t&n)}insertNodes(e){const t=this.focus.getNode();v(t)||Ke(151);x(t.select(0,t.getChildrenSize())).insertNodes(e)}getShape(){const{anchorCell:e,focusCell:t}=_t(this),n=Ct(e);null===n&&Ke(153);const o=Ct(t);null===o&&Ke(155);const r=Math.min(n.columnIndex,o.columnIndex),l=Math.max(n.columnIndex+n.colSpan-1,o.columnIndex+o.colSpan-1),s=Math.min(n.rowIndex,o.rowIndex),i=Math.max(n.rowIndex+n.rowSpan-1,o.rowIndex+o.rowSpan-1);return{fromX:Math.min(r,l),fromY:Math.min(s,i),toX:Math.max(r,l),toY:Math.max(s,i)}}getNodes(){if(!this.isValid())return[];const e=this._cachedNodes;if(null!==e)return e;const{anchorTable:t,anchorCell:n,focusCell:o}=_t(this),r=o.getParents()[1];if(r!==t){if(t.isParentOf(o)){const e=r.getParent();null==e&&Ke(159),this.set(this.tableKey,o.getKey(),e.getKey())}else{const e=t.getParent();null==e&&Ke(158),this.set(this.tableKey,e.getKey(),o.getKey())}return this.getNodes()}const[l,s,i]=ft(t,n,o),{minColumn:c,maxColumn:a,minRow:u,maxRow:h}=pt(l,s,i),d=new Map([[t.getKey(),t]]);let f=null;for(let e=u;e<=h;e++)for(let t=c;t<=a;t++){const{cell:n}=l[e][t],o=n.getParent();$e(o)||Ke(160),o!==f&&(d.set(o.getKey(),o),f=o),d.has(n.getKey())||Nt(n,e=>{d.set(e.getKey(),e)})}const g=Array.from(d.values());return T()||(this._cachedNodes=g),g}getTextContent(){const e=this.getNodes().filter(e=>Oe(e));let t=\"\";for(let n=0;n<e.length;n++){const o=e[n],r=o.__parent,l=(e[n+1]||{}).__parent;t+=o.getTextContent()+(l!==r?\"\\n\":\"\\t\")}return t}}function wt(e){return e instanceof St}function bt(){const e=y(\"root\",0,\"element\"),t=y(\"root\",0,\"element\");return new St(\"root\",e,t)}function yt(e,t,n){e.getKey(),t.getKey(),n.getKey();const o=S(),r=wt(o)?o.clone():bt();return r.set(e.getKey(),t.getKey(),n.getKey()),r}function Nt(e,t){const n=[[e]];for(let e=n.at(-1);void 0!==e&&n.length>0;e=n.at(-1)){const o=e.pop();void 0===o?n.pop():!1!==t(o)&&v(o)&&n.push(o.getChildren())}}function vt(e,t=F()){const n=N(e);mn(n)||Ke(231,e);const o=Ft(n,t.getElementByKey(e));return null===o&&Ke(232,e),{tableElement:o,tableNode:n}}class xt{focusX;focusY;listenersToRemove;table;isHighlightingCells;anchorX;anchorY;tableNodeKey;anchorCell;focusCell;anchorCellNodeKey;focusCellNodeKey;editor;tableSelection;hasHijackedSelectionStyles;isSelecting;pointerType;shouldCheckSelection;abortController;listenerOptions;nextFocus;constructor(e,t){this.isHighlightingCells=!1,this.anchorX=-1,this.anchorY=-1,this.focusX=-1,this.focusY=-1,this.listenersToRemove=new Set,this.tableNodeKey=t,this.editor=e,this.table={columns:0,domRows:[],rows:0},this.tableSelection=null,this.anchorCellNodeKey=null,this.focusCellNodeKey=null,this.anchorCell=null,this.focusCell=null,this.hasHijackedSelectionStyles=!1,this.isSelecting=!1,this.pointerType=null,this.shouldCheckSelection=!1,this.abortController=new AbortController,this.listenerOptions={signal:this.abortController.signal},this.nextFocus=null,this.trackTable()}getTable(){return this.table}removeListeners(){this.abortController.abort(\"removeListeners\"),Array.from(this.listenersToRemove).forEach(e=>e()),this.listenersToRemove.clear()}$lookup(){return vt(this.tableNodeKey,this.editor)}trackTable(){const e=new MutationObserver(e=>{this.editor.getEditorState().read(()=>{let t=!1;for(let n=0;n<e.length;n++){const o=e[n].target.nodeName;if(\"TABLE\"===o||\"TBODY\"===o||\"THEAD\"===o||\"TR\"===o){t=!0;break}}if(!t)return;const{tableNode:n,tableElement:o}=this.$lookup();this.table=Ht(n,o)},{editor:this.editor})});this.editor.getEditorState().read(()=>{const{tableNode:t,tableElement:n}=this.$lookup();this.table=Ht(t,n),e.observe(n,{attributes:!0,childList:!0,subtree:!0})},{editor:this.editor})}$clearHighlight(){const e=this.editor;this.isHighlightingCells=!1,this.anchorX=-1,this.anchorY=-1,this.focusX=-1,this.focusY=-1,this.tableSelection=null,this.anchorCellNodeKey=null,this.focusCellNodeKey=null,this.anchorCell=null,this.focusCell=null,this.hasHijackedSelectionStyles=!1,this.$enableHighlightStyle();const{tableNode:t,tableElement:n}=this.$lookup();Lt(e,Ht(t,n),null),null!==S()&&(O(null),e.dispatchCommand(A,void 0))}$enableHighlightStyle(){const e=this.editor,{tableElement:t}=this.$lookup();o(t,e._config.theme.tableSelection),t.classList.remove(\"disable-selection\"),this.hasHijackedSelectionStyles=!1}$disableHighlightStyle(){const{tableElement:t}=this.$lookup();e(t,this.editor._config.theme.tableSelection),this.hasHijackedSelectionStyles=!0}$updateTableTableSelection(e){if(null!==e){e.tableKey!==this.tableNodeKey&&Ke(233,e.tableKey,this.tableNodeKey);const t=this.editor;this.tableSelection=e,this.isHighlightingCells=!0,this.$disableHighlightStyle(),this.updateDOMSelection(),Lt(t,this.table,this.tableSelection)}else this.$clearHighlight()}setShouldCheckSelection(){this.shouldCheckSelection=!0}getAndClearShouldCheckSelection(){return!!this.shouldCheckSelection&&(this.shouldCheckSelection=!1,!0)}setNextFocus(e){this.nextFocus=e}getAndClearNextFocus(){const{nextFocus:e}=this;return null!==e&&(this.nextFocus=null),e}updateDOMSelection(){if(null!==this.anchorCell&&null!==this.focusCell){const e=K(this.editor._window);e&&e.rangeCount>0&&e.removeAllRanges()}}$setFocusCellForSelection(e,t=!1){const n=this.editor,{tableNode:o}=this.$lookup(),r=e.x,l=e.y;if(this.focusCell=e,this.isHighlightingCells||this.anchorX===r&&this.anchorY===l&&!t){if(r===this.focusX&&l===this.focusY)return!1}else this.isHighlightingCells=!0,this.$disableHighlightStyle();if(this.focusX=r,this.focusY=l,this.isHighlightingCells){const t=ln(o,e.elem);if(null!=this.tableSelection&&null!=this.anchorCellNodeKey&&null!==t)return this.focusCellNodeKey=t.getKey(),this.tableSelection=yt(o,this.$getAnchorTableCellOrThrow(),t),O(this.tableSelection),n.dispatchCommand(A,void 0),Lt(n,this.table,this.tableSelection),!0}return!1}$getAnchorTableCell(){return this.anchorCellNodeKey?N(this.anchorCellNodeKey):null}$getAnchorTableCellOrThrow(){const e=this.$getAnchorTableCell();return null===e&&Ke(234),e}$getFocusTableCell(){return this.focusCellNodeKey?N(this.focusCellNodeKey):null}$getFocusTableCellOrThrow(){const e=this.$getFocusTableCell();return null===e&&Ke(235),e}$setAnchorCellForSelection(e){this.isHighlightingCells=!1,this.anchorCell=e,this.anchorX=e.x,this.anchorY=e.y;const{tableNode:t}=this.$lookup(),n=ln(t,e.elem);if(null!==n){const e=n.getKey();this.tableSelection=null!=this.tableSelection?this.tableSelection.clone():bt(),this.anchorCellNodeKey=e}}$formatCells(e){const t=S();wt(t)||Ke(236);const n=E(),o=n.anchor,r=n.focus,l=t.getNodes().filter(Oe);l.length>0||Ke(237);const s=l[0].getFirstChild(),i=b(s)?s.getFormatFlags(e,null):null;l.forEach(t=>{o.set(t.getKey(),0,\"element\"),r.set(t.getKey(),t.getChildrenSize(),\"element\"),n.formatText(e,i)}),O(t),this.editor.dispatchCommand(A,void 0)}$clearText(){const{editor:e}=this,t=N(this.tableNodeKey);if(!mn(t))throw new Error(\"Expected TableNode.\");const n=S();wt(n)||Ke(253);const o=n.getNodes().filter(Oe),r=t.getFirstChild(),l=t.getLastChild();if(o.length>0&&null!==r&&null!==l&&$e(r)&&$e(l)&&o[0]===r.getFirstChild()&&o[o.length-1]===l.getLastChild()){t.selectPrevious();const n=t.getParent();return t.remove(),void(k(n)&&n.isEmpty()&&e.dispatchCommand(M,void 0))}o.forEach(e=>{if(v(e)){const t=m(),n=_();t.append(n),e.append(t),e.getChildren().forEach(e=>{e!==t&&e.remove()})}}),Lt(e,this.table,null),O(null),e.dispatchCommand(A,void 0)}}const Tt=\"__lexicalTableSelection\";function Rt(e){return h(e)&&\"TABLE\"===e.nodeName}function Ft(e,t){if(!t)return t;const n=Rt(t)?t:e.getDOMSlot(t).element;return\"TABLE\"!==n.nodeName&&Ke(245,t.nodeName),n}function Ot(e){return e._window}function At(e,t){for(let n=t,o=null;null!==n;n=n.getParent()){if(e.is(n))return o;Oe(n)&&(o=n)}return null}const Kt=[[$,\"down\"],[z,\"up\"],[W,\"backward\"],[H,\"forward\"]],Et=[P,D,I],kt=[U,J];function Mt(e,t,o,l){const s=o.getRootElement(),i=Ot(o);null!==s&&null!==i||Ke(246);const c=new xt(o,e.getKey()),a=Ft(e,t);!function(e,t){null!==$t(e)&&Ke(205);e[Tt]=t}(a,c),c.listenersToRemove.add(()=>function(e,t){$t(e)===t&&delete e[Tt]}(a,c));const u=t=>{if(c.pointerType=t.pointerType,0!==t.button||!ne(t.target)||!i)return;const n=zt(t.target);null!==n&&o.update(()=>{const o=Z();if(He&&t.shiftKey&&Xt(o,e)&&(w(o)||wt(o))){const r=o.anchor.getNode(),l=At(e,o.anchor.getNode());if(l)c.$setAnchorCellForSelection(rn(c,l)),c.$setFocusCellForSelection(n),tn(t);else{(e.isBefore(r)?e.selectStart():e.selectEnd()).anchor.set(o.anchor.key,o.anchor.offset,o.anchor.type)}}else\"touch\"!==t.pointerType&&c.$setAnchorCellForSelection(n)}),(()=>{if(c.isSelecting)return;const e=()=>{c.isSelecting=!1,i.removeEventListener(\"pointerup\",e),i.removeEventListener(\"pointermove\",t)},t=n=>{if(1&~n.buttons&&c.isSelecting)return c.isSelecting=!1,i.removeEventListener(\"pointerup\",e),void i.removeEventListener(\"pointermove\",t);if(!ne(n.target))return;let r=null;const l=!(He||a.contains(n.target));if(l)r=Wt(a,n.target);else for(const e of document.elementsFromPoint(n.clientX,n.clientY))if(r=Wt(a,e),r)break;!r||null!==c.focusCell&&r.elem===c.focusCell.elem||(c.setNextFocus({focusCell:r,override:l}),o.dispatchCommand(A,void 0))};c.isSelecting=!0,i.addEventListener(\"pointerup\",e,c.listenerOptions),i.addEventListener(\"pointermove\",t,c.listenerOptions)})()};a.addEventListener(\"pointerdown\",u,c.listenerOptions),c.listenersToRemove.add(()=>{a.removeEventListener(\"pointerdown\",u)});const h=e=>{if(e.detail>=3&&ne(e.target)){null!==zt(e.target)&&e.preventDefault()}};a.addEventListener(\"mousedown\",h,c.listenerOptions),c.listenersToRemove.add(()=>{a.removeEventListener(\"mousedown\",h)});const d=e=>{const t=e.target;0===e.button&&ne(t)&&o.update(()=>{const e=S();wt(e)&&e.tableKey===c.tableNodeKey&&s.contains(t)&&c.$clearHighlight()})};i.addEventListener(\"pointerdown\",d,c.listenerOptions),c.listenersToRemove.add(()=>{i.removeEventListener(\"pointerdown\",d)});for(const[t,n]of Kt)c.listenersToRemove.add(o.registerCommand(t,t=>en(o,t,n,e,c),L));c.listenersToRemove.add(o.registerCommand(B,t=>{const n=S();if(wt(n)){const o=At(e,n.focus.getNode());if(null!==o)return tn(t),o.selectEnd(),!0}return!1},L));const g=t=>()=>{const o=S();if(!Xt(o,e))return!1;if(wt(o))return c.$clearText(),!0;if(w(o)){if(!Oe(At(e,o.anchor.getNode())))return!1;const r=o.anchor.getNode(),l=o.focus.getNode(),s=e.isParentOf(r),i=e.isParentOf(l);if(s&&!i||i&&!s)return c.$clearText(),!0;const a=n(o.anchor.getNode(),e=>v(e)),u=a&&n(a,e=>v(e)&&Oe(e.getParent()));if(!v(u)||!v(a))return!1;if(t===D&&null===u.getPreviousSibling())return!0}return!1};for(const e of Et)c.listenersToRemove.add(o.registerCommand(e,g(e),L));const p=t=>{const n=S();if(!wt(n)&&!w(n))return!1;const o=e.isParentOf(n.anchor.getNode());if(o!==e.isParentOf(n.focus.getNode())){const t=o?\"anchor\":\"focus\",r=o?\"focus\":\"anchor\",{key:l,offset:s,type:i}=n[r];return e[n[t].isBefore(n[r])?\"selectPrevious\":\"selectNext\"]()[r].set(l,s,i),!1}return!!Xt(n,e)&&(!!wt(n)&&(t&&(t.preventDefault(),t.stopPropagation()),c.$clearText(),!0))};for(const e of kt)c.listenersToRemove.add(o.registerCommand(e,p,L));return c.listenersToRemove.add(o.registerCommand(Y,e=>{const t=S();if(t){if(!wt(t)&&!w(t))return!1;be(o,r(e,ClipboardEvent)?e:null,ye(t));const n=p(e);return w(t)?(t.removeText(),!0):n}return!1},L)),c.listenersToRemove.add(o.registerCommand(X,t=>{const o=S();if(!Xt(o,e))return!1;if(wt(o))return c.$formatCells(t),!0;if(w(o)){const e=n(o.anchor.getNode(),e=>Oe(e));if(!Oe(e))return!1}return!1},L)),c.listenersToRemove.add(o.registerCommand(q,t=>{const n=S();if(!wt(n)||!Xt(n,e))return!1;const o=n.anchor.getNode(),r=n.focus.getNode();if(!Oe(o)||!Oe(r))return!1;if(function(e,t){if(wt(e)){const n=e.anchor.getNode(),o=e.focus.getNode();if(t&&n&&o){const[e]=ft(t,n,o);return n.getKey()===e[0][0].cell.getKey()&&o.getKey()===e[e.length-1].at(-1).cell.getKey()}}return!1}(n,e))return e.setFormat(t),!0;const[l,s,i]=ft(e,o,r),c=Math.max(s.startRow+s.cell.__rowSpan-1,i.startRow+i.cell.__rowSpan-1),a=Math.max(s.startColumn+s.cell.__colSpan-1,i.startColumn+i.cell.__colSpan-1),u=Math.min(s.startRow,i.startRow),h=Math.min(s.startColumn,i.startColumn),d=new Set;for(let e=u;e<=c;e++)for(let n=h;n<=a;n++){const o=l[e][n].cell;if(d.has(o))continue;d.add(o),o.setFormat(t);const r=o.getChildren();for(let e=0;e<r.length;e++){const n=r[e];v(n)&&!n.isInline()&&n.setFormat(t)}}return!0},L)),c.listenersToRemove.add(o.registerCommand(j,t=>{const r=S();if(!Xt(r,e))return!1;if(wt(r))return c.$clearHighlight(),!1;if(w(r)){const l=n(r.anchor.getNode(),e=>Oe(e));if(!Oe(l))return!1;if(\"string\"==typeof t){const n=on(o,r,e);if(n)return nn(n,e,[_(t)]),!0}}return!1},L)),l&&c.listenersToRemove.add(o.registerCommand(V,t=>{const o=S();if(!w(o)||!o.isCollapsed()||!Xt(o,e))return!1;const r=Gt(o.anchor.getNode());return!(null===r||!e.is(Qt(r)))&&(tn(t),function(e,t){const o=\"next\"===t?\"getNextSibling\":\"getPreviousSibling\",r=\"next\"===t?\"getFirstChild\":\"getLastChild\",l=e[o]();if(v(l))return l.selectEnd();const s=n(e,$e);null===s&&Ke(247);for(let e=s[o]();$e(e);e=e[o]()){const t=e[r]();if(v(t))return t.selectEnd()}const i=n(s,mn);null===i&&Ke(248);\"next\"===t?i.selectNext():i.selectPrevious()}(r,t.shiftKey?\"previous\":\"next\"),!0)},L)),c.listenersToRemove.add(o.registerCommand(G,t=>e.isSelected(),L)),c.listenersToRemove.add(o.registerCommand(Q,(e,t)=>{if(o!==t)return!1;const{nodes:r,selection:l}=e,s=l.getStartEndPoints(),i=wt(l),c=w(l)&&null!==n(l.anchor.getNode(),e=>Oe(e))&&null!==n(l.focus.getNode(),e=>Oe(e))||i;if(1!==r.length||!mn(r[0])||!c||null===s)return!1;const[a,u]=s,[h,d,g]=mt(a),p=n(u.getNode(),e=>Oe(e));if(!(Oe(h)&&Oe(p)&&$e(d)&&mn(g)))return!1;const C=r[0],[_,S,b]=ft(g,h,p),[y]=gt(C,null,null),N=_.length,v=N>0?_[0].length:0;let x=S.startRow,T=S.startColumn,R=y.length,F=R>0?y[0].length:0;if(i){const e=pt(_,S,b),t=e.maxRow-e.minRow+1,n=e.maxColumn-e.minColumn+1;x=e.minRow,T=e.minColumn,R=Math.min(R,t),F=Math.min(F,n)}let O=!1;const A=Math.min(N,x+R)-1,K=Math.min(v,T+F)-1,E=new Set;for(let e=x;e<=A;e++)for(let t=T;t<=K;t++){const n=_[e][t];E.has(n.cell.getKey())||(1===n.cell.__rowSpan&&1===n.cell.__colSpan||(dt(n.cell),E.add(n.cell.getKey()),O=!0))}let[k]=gt(g.getWritable(),null,null);const M=R-N+x;for(let e=0;e<M;e++){Ge(k[N-1][0].cell)}const $=F-v+T;for(let e=0;e<$;e++){tt(k[0][v-1].cell,!0,!1)}[k]=gt(g.getWritable(),null,null);for(let e=x;e<x+R;e++)for(let t=T;t<T+F;t++){const n=e-x,o=t-T,r=y[n][o];if(r.startRow!==n||r.startColumn!==o)continue;const l=r.cell;if(1!==l.__rowSpan||1!==l.__colSpan){const n=[],o=Math.min(e+l.__rowSpan,x+R)-1,r=Math.min(t+l.__colSpan,T+F)-1;for(let l=e;l<=o;l++)for(let e=t;e<=r;e++){const t=k[l][e];n.push(t.cell)}at(n),O=!0}const{cell:s}=k[e][t],i=s.getChildren();l.getChildren().forEach(e=>{if(f(e)){m().append(e),s.append(e)}else s.append(e)}),i.forEach(e=>e.remove())}if(i&&O){const[e]=gt(g.getWritable(),null,null);e[S.startRow][S.startColumn].cell.selectEnd()}return!0},L)),c.listenersToRemove.add(o.registerCommand(A,()=>{const t=S(),r=Z(),l=c.getAndClearNextFocus();if(null!==l){const{focusCell:n}=l;if(wt(t)&&t.tableKey===c.tableNodeKey)return(n.x!==c.focusX||n.y!==c.focusY)&&(c.$setFocusCellForSelection(n),!0);if(n!==c.anchorCell&&Xt(t,e))return c.$setFocusCellForSelection(n),!0}if(c.getAndClearShouldCheckSelection()&&w(r)&&w(t)&&t.isCollapsed()){const o=t.anchor.getNode(),r=e.getFirstChild(),l=Gt(o);if(null!==l&&$e(r)){const t=r.getFirstChild();if(Oe(t)&&e.is(n(l,n=>n.is(e)||n.is(t))))return t.selectStart(),!0}}if(w(t)){const{anchor:n,focus:l}=t,s=n.getNode(),i=l.getNode(),a=Gt(s),u=Gt(i),h=!(!a||!e.is(Qt(a))),d=!(!u||!e.is(Qt(u))),f=h!==d,g=h&&d,m=t.isBackward();if(f){const n=t.clone();if(d){const[t]=ft(e,u,u),o=t[0][0].cell,r=t[t.length-1].at(-1).cell;n.focus.set(m?o.getKey():r.getKey(),m?o.getChildrenSize():r.getChildrenSize(),\"element\")}else if(h){const[t]=ft(e,a,a),o=t[0][0].cell,r=t[t.length-1].at(-1).cell;n.anchor.set(m?r.getKey():o.getKey(),m?r.getChildrenSize():0,\"element\")}O(n),Pt(o,c)}else if(g&&(a.is(u)||(c.$setAnchorCellForSelection(rn(c,a)),c.$setFocusCellForSelection(rn(c,u),!0)),\"touch\"===c.pointerType&&c.isSelecting&&t.isCollapsed()&&w(r)&&r.isCollapsed())){const e=Gt(r.anchor.getNode());e&&!e.is(u)&&(c.$setAnchorCellForSelection(rn(c,e)),c.$setFocusCellForSelection(rn(c,u),!0),c.pointerType=null)}}else if(t&&wt(t)&&t.is(r)&&t.tableKey===e.getKey()){const n=K(i);if(n&&n.anchorNode&&n.focusNode){const r=ee(n.focusNode),l=r&&!e.isParentOf(r),s=ee(n.anchorNode),i=s&&e.isParentOf(s);if(l&&i&&n.rangeCount>0){const r=te(n,o);r&&(r.anchor.set(e.getKey(),t.isBackward()?e.getChildrenSize():0,\"element\"),n.removeAllRanges(),O(r))}}}return t&&!t.is(r)&&(wt(t)||wt(r))&&c.tableSelection&&!c.tableSelection.is(r)?(wt(t)&&t.tableKey===c.tableNodeKey?c.$updateTableTableSelection(t):!wt(t)&&wt(r)&&r.tableKey===c.tableNodeKey&&c.$updateTableTableSelection(null),!1):(c.hasHijackedSelectionStyles&&!e.isSelected()?function(e,t){t.$enableHighlightStyle(),Bt(t.table,t=>{const n=t.elem;t.highlighted=!1,Vt(e,t),n.getAttribute(\"style\")||n.removeAttribute(\"style\")})}(o,c):!c.hasHijackedSelectionStyles&&e.isSelected()&&Pt(o,c),!1)},L)),c.listenersToRemove.add(o.registerCommand(M,()=>{const t=S();if(!w(t)||!t.isCollapsed()||!Xt(t,e))return!1;const n=on(o,t,e);return!!n&&(nn(n,e),!0)},L)),c}function $t(e){return e[Tt]||null}function zt(e){let t=e;for(;null!=t;){const e=t.nodeName;if(\"TD\"===e||\"TH\"===e){const e=t._cell;return void 0===e?null:e}t=t.parentNode}return null}function Wt(e,t){if(!e.contains(t))return null;let n=null;for(let o=t;null!=o;o=o.parentNode){if(o===e)return n;const t=o.nodeName;\"TD\"!==t&&\"TH\"!==t||(n=o._cell||null)}return null}function Ht(e,t){const n=[],o={columns:0,domRows:n,rows:0};let r=Ft(e,t).querySelector(\"tr\"),l=0,s=0;for(n.length=0;null!=r;){const e=r.nodeName;if(\"TD\"===e||\"TH\"===e){const e={elem:r,hasBackgroundColor:\"\"!==r.style.backgroundColor,highlighted:!1,x:l,y:s};r._cell=e;let t=n[s];void 0===t&&(t=n[s]=[]),t[l]=e}else{const e=r.firstChild;if(null!=e){r=e;continue}}const t=r.nextSibling;if(null!=t){l++,r=t;continue}const o=r.parentNode;if(null!=o){const e=o.nextSibling;if(null==e)break;s++,l=0,r=e}}return o.columns=l+1,o.rows=s+1,o}function Lt(e,t,n){const o=new Set(n?n.getNodes():[]);Bt(t,(t,n)=>{const r=t.elem;o.has(n)?(t.highlighted=!0,jt(e,t)):(t.highlighted=!1,Vt(e,t),r.getAttribute(\"style\")||r.removeAttribute(\"style\"))})}function Bt(e,t){const{domRows:n}=e;for(let e=0;e<n.length;e++){const o=n[e];if(o)for(let n=0;n<o.length;n++){const r=o[n];if(!r)continue;const l=ee(r.elem);null!==l&&t(r,l,{x:n,y:e})}}}function Pt(e,t){t.$disableHighlightStyle(),Bt(t.table,t=>{t.highlighted=!0,jt(e,t)})}const Dt=(e,t,n,o,r)=>{const l=\"forward\"===r;switch(r){case\"backward\":case\"forward\":return n!==(l?e.table.columns-1:0)?qt(t.getCellNodeFromCordsOrThrow(n+(l?1:-1),o,e.table),l):o!==(l?e.table.rows-1:0)?qt(t.getCellNodeFromCordsOrThrow(l?0:e.table.columns-1,o+(l?1:-1),e.table),l):l?t.selectNext():t.selectPrevious(),!0;case\"up\":return 0!==o?qt(t.getCellNodeFromCordsOrThrow(n,o-1,e.table),!1):t.selectPrevious(),!0;case\"down\":return o!==e.table.rows-1?qt(t.getCellNodeFromCordsOrThrow(n,o+1,e.table),!0):t.selectNext(),!0;default:return!1}};function It(e,t){let n,o;if(t.startColumn===e.minColumn)n=\"minColumn\";else{if(t.startColumn+t.cell.__colSpan-1!==e.maxColumn)return null;n=\"maxColumn\"}if(t.startRow===e.minRow)o=\"minRow\";else{if(t.startRow+t.cell.__rowSpan-1!==e.maxRow)return null;o=\"maxRow\"}return[n,o]}function Ut([e,t]){return[\"minColumn\"===e?\"maxColumn\":\"minColumn\",\"minRow\"===t?\"maxRow\":\"minRow\"]}function Jt(e,t,[n,o]){const r=t[o],l=e[r];void 0===l&&Ke(250,o,String(r));const s=t[n],i=l[s];return void 0===i&&Ke(250,n,String(s)),i}function Yt(e,t,n,o,r){const l=pt(t,n,o),s=function(e,t){const{minColumn:n,maxColumn:o,minRow:r,maxRow:l}=t;let s=1,i=1,c=1,a=1;const u=e[r],h=e[l];for(let e=n;e<=o;e++)s=Math.max(s,u[e].cell.__rowSpan),a=Math.max(a,h[e].cell.__rowSpan);for(let t=r;t<=l;t++)i=Math.max(i,e[t][n].cell.__colSpan),c=Math.max(c,e[t][o].cell.__colSpan);return{bottomSpan:a,leftSpan:i,rightSpan:c,topSpan:s}}(t,l),{topSpan:i,leftSpan:c,bottomSpan:a,rightSpan:u}=s,h=function(e,t){const n=It(e,t);return null===n&&Ke(249,t.cell.getKey()),n}(l,n),[d,f]=Ut(h);let g=l[d],m=l[f];\"forward\"===r?g+=\"maxColumn\"===d?1:c:\"backward\"===r?g-=\"minColumn\"===d?1:u:\"down\"===r?m+=\"maxRow\"===f?1:i:\"up\"===r&&(m-=\"minRow\"===f?1:a);const p=t[m];if(void 0===p)return!1;const C=p[g];if(void 0===C)return!1;const[_,S]=function(e,t,n){const o=pt(e,t,n),r=It(o,t);if(r)return[Jt(e,o,r),Jt(e,o,Ut(r))];const l=It(o,n);if(l)return[Jt(e,o,Ut(l)),Jt(e,o,l)];const s=[\"minColumn\",\"minRow\"];return[Jt(e,o,s),Jt(e,o,Ut(s))]}(t,n,C),w=rn(e,_.cell),b=rn(e,S.cell);return e.$setAnchorCellForSelection(w),e.$setFocusCellForSelection(b,!0),!0}function Xt(e,t){if(w(e)||wt(e)){const n=t.isParentOf(e.anchor.getNode()),o=t.isParentOf(e.focus.getNode());return n&&o}return!1}function qt(e,t){t?e.selectStart():e.selectEnd()}function jt(t,n){const o=n.elem,r=t._config.theme;Oe(ee(o))||Ke(131),e(o,r.tableCellSelected)}function Vt(e,t){const n=t.elem;Oe(ee(n))||Ke(131);const r=e._config.theme;o(n,r.tableCellSelected)}function Gt(e){const t=n(e,Oe);return Oe(t)?t:null}function Qt(e){const t=n(e,mn);return mn(t)?t:null}function Zt(e,t,o,r,l,s,i){const c=re(o.focus,l?\"previous\":\"next\");if(le(c))return!1;let a=c;for(const e of se(c).iterNodeCarets(\"shadowRoot\")){if(!ie(e)||!v(e.origin))return!1;a=e}const u=a.getParentAtCaret();if(!Oe(u))return!1;const h=u,d=function(e){for(const t of se(e).iterNodeCarets(\"root\")){const{origin:n}=t;if(Oe(n)){if(he(t))return de(n,e.direction)}else if(!$e(n))break}return null}(ce(h,a.direction)),f=n(h,mn);if(!f||!f.is(s))return!1;const g=e.getElementByKey(h.getKey()),m=zt(g);if(!g||!m)return!1;const p=dn(e,f);if(i.table=p,d)if(\"extend\"===r){const t=zt(e.getElementByKey(d.origin.getKey()));if(!t)return!1;i.$setAnchorCellForSelection(m),i.$setFocusCellForSelection(t,!0)}else{const e=ue(d);ae(o.anchor,e),ae(o.focus,e)}else if(\"extend\"===r)i.$setAnchorCellForSelection(m),i.$setFocusCellForSelection(m,!0);else{const e=function(e){const t=fe(e);return he(t)?ue(t):e}(ce(f,c.direction));ae(o.anchor,e),ae(o.focus,e)}return tn(t),!0}function en(e,t,o,r,l){if((\"up\"===o||\"down\"===o)&&function(e){const t=e.getRootElement();if(!t)return!1;return t.hasAttribute(\"aria-controls\")&&\"typeahead-menu\"===t.getAttribute(\"aria-controls\")}(e))return!1;const s=S();if(!Xt(s,r)){if(w(s)){if(\"backward\"===o){if(s.focus.offset>0)return!1;const e=function(e){for(let t=e,n=e;null!==n;t=n,n=n.getParent())if(v(n)){if(n!==t&&n.getFirstChild()!==t)return null;if(!n.isInline())return n}return null}(s.focus.getNode());if(!e)return!1;const n=e.getPreviousSibling();return!!mn(n)&&(tn(t),t.shiftKey?s.focus.set(n.getParentOrThrow().getKey(),n.getIndexWithinParent(),\"element\"):n.selectEnd(),!0)}if(t.shiftKey&&(\"up\"===o||\"down\"===o)){const e=s.focus.getNode();if(!s.isCollapsed()&&(\"up\"===o&&!s.isBackward()||\"down\"===o&&s.isBackward())){let l=n(e,e=>mn(e));if(Oe(l)&&(l=n(l,mn)),l!==r)return!1;if(!l)return!1;const i=\"down\"===o?l.getNextSibling():l.getPreviousSibling();if(!i)return!1;let c=0;\"up\"===o&&v(i)&&(c=i.getChildrenSize());let a=i;if(\"up\"===o&&v(i)){const e=i.getLastChild();a=e||i,c=f(a)?a.getTextContentSize():0}const u=s.clone();return u.focus.set(a.getKey(),c,f(a)?\"text\":\"element\"),O(u),tn(t),!0}if(oe(e)){const e=\"up\"===o?s.getNodes()[s.getNodes().length-1]:s.getNodes()[0];if(e){if(null!==At(r,e)){const e=r.getFirstDescendant(),t=r.getLastDescendant();if(!e||!t)return!1;const[n]=mt(e),[o]=mt(t),s=r.getCordsFromCellNode(n,l.table),i=r.getCordsFromCellNode(o,l.table),c=r.getDOMCellFromCordsOrThrow(s.x,s.y,l.table),a=r.getDOMCellFromCordsOrThrow(i.x,i.y,l.table);return l.$setAnchorCellForSelection(c),l.$setFocusCellForSelection(a,!0),!0}}return!1}{let r=n(e,e=>v(e)&&!e.isInline());if(Oe(r)&&(r=n(r,mn)),!r)return!1;const i=\"down\"===o?r.getNextSibling():r.getPreviousSibling();if(mn(i)&&l.tableNodeKey===i.getKey()){const e=i.getFirstDescendant(),n=i.getLastDescendant();if(!e||!n)return!1;const[r]=mt(e),[l]=mt(n),c=s.clone();return c.focus.set((\"up\"===o?r:l).getKey(),\"up\"===o?0:l.getChildrenSize(),\"element\"),tn(t),O(c),!0}}}}return\"down\"===o&&an(e)&&l.setShouldCheckSelection(),!1}if(w(s)){if(\"backward\"===o||\"forward\"===o){return Zt(e,t,s,t.shiftKey?\"extend\":\"move\",\"backward\"===o,r,l)}if(s.isCollapsed()){const{anchor:i,focus:c}=s,a=n(i.getNode(),Oe),u=n(c.getNode(),Oe);if(!Oe(a)||!a.is(u))return!1;const h=Qt(a);if(h!==r&&null!=h){const n=Ft(h,e.getElementByKey(h.getKey()));if(null!=n)return l.table=Ht(h,n),en(e,t,o,h,l)}const d=e.getElementByKey(a.__key),f=e.getElementByKey(i.key);if(null==f||null==d)return!1;let g;if(\"element\"===i.type)g=f.getBoundingClientRect();else{const t=K(Ot(e));if(null===t||0===t.rangeCount)return!1;g=t.getRangeAt(0).getBoundingClientRect()}const m=\"up\"===o?a.getFirstChild():a.getLastChild();if(null==m)return!1;const p=e.getElementByKey(m.__key);if(null==p)return!1;const C=p.getBoundingClientRect();if(\"up\"===o?C.top>g.top-g.height:g.bottom+g.height>C.bottom){tn(t);const e=r.getCordsFromCellNode(a,l.table);if(!t.shiftKey)return Dt(l,r,e.x,e.y,o);{const t=r.getDOMCellFromCordsOrThrow(e.x,e.y,l.table);l.$setAnchorCellForSelection(t),l.$setFocusCellForSelection(t,!0)}return!0}}}else if(wt(s)){const{anchor:i,focus:c}=s,a=n(i.getNode(),Oe),u=n(c.getNode(),Oe),[h]=s.getNodes();mn(h)||Ke(251);const d=Ft(h,e.getElementByKey(h.getKey()));if(!Oe(a)||!Oe(u)||!mn(h)||null==d)return!1;l.$updateTableTableSelection(s);const f=Ht(h,d),g=r.getCordsFromCellNode(a,f),m=r.getDOMCellFromCordsOrThrow(g.x,g.y,f);if(l.$setAnchorCellForSelection(m),tn(t),t.shiftKey){const[e,t,n]=ft(r,a,u);return Yt(l,e,t,n,o)}return u.selectEnd(),!0}return!1}function tn(e){e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation()}function nn(e,t,n){const o=m();\"first\"===e?t.insertBefore(o):t.insertAfter(o),o.append(...n||[]),o.selectEnd()}function on(e,t,o){const r=o.getParent();if(!r)return;const l=K(Ot(e));if(!l)return;const s=l.anchorNode,i=e.getElementByKey(r.getKey()),c=Ft(o,e.getElementByKey(o.getKey()));if(!s||!i||!c||!i.contains(s)||c.contains(s))return;const a=n(t.anchor.getNode(),e=>Oe(e));if(!a)return;const u=n(a,e=>mn(e));if(!mn(u)||!u.is(o))return;const[h,d]=ft(o,a,a),f=h[0][0],g=h[h.length-1][h[0].length-1],{startRow:m,startColumn:p}=d,C=m===f.startRow&&p===f.startColumn,_=m===g.startRow&&p===g.startColumn;return C?\"first\":_?\"last\":void 0}function rn(e,t){const{tableNode:n}=e.$lookup(),o=n.getCordsFromCellNode(t,e.table);return n.getDOMCellFromCordsOrThrow(o.x,o.y,e.table)}function ln(e,t,n){return At(e,ee(t,n))}function sn(t,n,r){if(!n.theme.tableAlignment)return;const l=[],s=[];for(const e of[\"center\",\"right\"]){const t=n.theme.tableAlignment[e];t&&(e===r?s:l).push(t)}o(t,...l),e(t,...s)}const cn=new WeakSet;function an(e=F()){return cn.has(e)}function un(e,t){t?cn.add(e):cn.delete(e)}class hn extends u{__rowStriping;__frozenColumnCount;__frozenRowCount;__colWidths;static getType(){return\"table\"}getColWidths(){return this.getLatest().__colWidths}setColWidths(e){const t=this.getWritable();return t.__colWidths=e,t}static clone(e){return new hn(e.__key)}afterCloneFrom(e){super.afterCloneFrom(e),this.__colWidths=e.__colWidths,this.__rowStriping=e.__rowStriping,this.__frozenColumnCount=e.__frozenColumnCount,this.__frozenRowCount=e.__frozenRowCount}static importDOM(){return{table:e=>({conversion:fn,priority:1})}}static importJSON(e){return gn().updateFromJSON(e)}updateFromJSON(e){return super.updateFromJSON(e).setRowStriping(e.rowStriping||!1).setFrozenColumns(e.frozenColumnCount||0).setFrozenRows(e.frozenRowCount||0).setColWidths(e.colWidths)}constructor(e){super(e),this.__rowStriping=!1,this.__frozenColumnCount=0,this.__frozenRowCount=0,this.__colWidths=void 0}exportJSON(){return{...super.exportJSON(),colWidths:this.getColWidths(),frozenColumnCount:this.__frozenColumnCount?this.__frozenColumnCount:void 0,frozenRowCount:this.__frozenRowCount?this.__frozenRowCount:void 0,rowStriping:this.__rowStriping?this.__rowStriping:void 0}}extractWithChild(e,t,n){return\"html\"===n}getDOMSlot(e){const t=Rt(e)?e:e.querySelector(\"table\");return Rt(t)||Ke(229),super.getDOMSlot(e).withElement(t).withAfter(t.querySelector(\"colgroup\"))}createDOM(t,n){const o=document.createElement(\"table\");this.__style&&(o.style.cssText=this.__style);const r=document.createElement(\"colgroup\");if(o.appendChild(r),ge(r),e(o,t.theme.table),this.updateTableElement(null,o,t),an(n)){const n=document.createElement(\"div\"),r=t.theme.tableScrollableWrapper;return r?e(n,r):n.style.cssText=\"overflow-x: auto;\",n.appendChild(o),this.updateTableWrapper(null,n,o,t),n}return o}updateTableWrapper(t,n,r,l){this.__frozenColumnCount!==(t?t.__frozenColumnCount:0)&&function(t,n,r,l){l>0?(e(t,r.theme.tableFrozenColumn),n.setAttribute(\"data-lexical-frozen-column\",\"true\")):(o(t,r.theme.tableFrozenColumn),n.removeAttribute(\"data-lexical-frozen-column\"))}(n,r,l,this.__frozenColumnCount),this.__frozenRowCount!==(t?t.__frozenRowCount:0)&&function(t,n,r,l){l>0?(e(t,r.theme.tableFrozenRow),n.setAttribute(\"data-lexical-frozen-row\",\"true\")):(o(t,r.theme.tableFrozenRow),n.removeAttribute(\"data-lexical-frozen-row\"))}(n,r,l,this.__frozenRowCount)}updateTableElement(t,n,r){this.__style!==(t?t.__style:\"\")&&(n.style.cssText=this.__style),this.__rowStriping!==(!!t&&t.__rowStriping)&&function(t,n,r){r?(e(t,n.theme.tableRowStriping),t.setAttribute(\"data-lexical-row-striping\",\"true\")):(o(t,n.theme.tableRowStriping),t.removeAttribute(\"data-lexical-row-striping\"))}(n,r,this.__rowStriping),function(e,t,n,o){const r=e.querySelector(\"colgroup\");if(!r)return;const l=[];for(let e=0;e<n;e++){const t=document.createElement(\"col\"),n=o&&o[e];n&&(t.style.width=`${n}px`),l.push(t)}r.replaceChildren(...l)}(n,0,this.getColumnCount(),this.getColWidths()),sn(n,r,this.getFormatType())}updateDOM(e,t,n){const o=this.getDOMSlot(t).element;return t===o===an()||(l(r=t)&&\"DIV\"===r.nodeName&&this.updateTableWrapper(e,t,o,n),this.updateTableElement(e,o,n),!1);var r}exportDOM(e){const t=super.exportDOM(e),{element:n}=t;return{after:n=>{if(t.after&&(n=t.after(n)),!Rt(n)&&l(n)&&(n=n.querySelector(\"table\")),!Rt(n))return null;sn(n,e._config,this.getFormatType());const[o]=gt(this,null,null),r=new Map;for(const e of o)for(const t of e){const e=t.cell.getKey();r.has(e)||r.set(e,{colSpan:t.cell.getColSpan(),startColumn:t.startColumn})}const s=new Set;for(const e of n.querySelectorAll(\":scope > tr > [data-temporary-table-cell-lexical-key]\")){const t=e.getAttribute(\"data-temporary-table-cell-lexical-key\");if(t){const n=r.get(t);if(e.removeAttribute(\"data-temporary-table-cell-lexical-key\"),n){r.delete(t);for(let e=0;e<n.colSpan;e++)s.add(e+n.startColumn)}}}const i=n.querySelector(\":scope > colgroup\");if(i){const e=Array.from(n.querySelectorAll(\":scope > colgroup > col\")).filter((e,t)=>s.has(t));i.replaceChildren(...e)}const c=n.querySelectorAll(\":scope > tr\");if(c.length>0){const e=document.createElement(\"tbody\");for(const t of c)e.appendChild(t);n.append(e)}return n},element:!Rt(n)&&l(n)?n.querySelector(\"table\"):n}}canBeEmpty(){return!1}isShadowRoot(){return!0}getCordsFromCellNode(e,t){const{rows:n,domRows:o}=t;for(let t=0;t<n;t++){const n=o[t];if(null!=n)for(let o=0;o<n.length;o++){const r=n[o];if(null==r)continue;const{elem:l}=r,s=ln(this,l);if(null!==s&&e.is(s))return{x:o,y:t}}}throw new Error(\"Cell not found in table.\")}getDOMCellFromCords(e,t,n){const{domRows:o}=n,r=o[t];if(null==r)return null;const l=r[e<r.length?e:r.length-1];return null==l?null:l}getDOMCellFromCordsOrThrow(e,t,n){const o=this.getDOMCellFromCords(e,t,n);if(!o)throw new Error(\"Cell not found at cords.\");return o}getCellNodeFromCords(e,t,n){const o=this.getDOMCellFromCords(e,t,n);if(null==o)return null;const r=ee(o.elem);return Oe(r)?r:null}getCellNodeFromCordsOrThrow(e,t,n){const o=this.getCellNodeFromCords(e,t,n);if(!o)throw new Error(\"Node at cords not TableCellNode.\");return o}getRowStriping(){return Boolean(this.getLatest().__rowStriping)}setRowStriping(e){const t=this.getWritable();return t.__rowStriping=e,t}setFrozenColumns(e){const t=this.getWritable();return t.__frozenColumnCount=e,t}getFrozenColumns(){return this.getLatest().__frozenColumnCount}setFrozenRows(e){const t=this.getWritable();return t.__frozenRowCount=e,t}getFrozenRows(){return this.getLatest().__frozenRowCount}canSelectBefore(){return!0}canIndent(){return!1}getColumnCount(){const e=this.getFirstChild();if(!e)return 0;let t=0;return e.getChildren().forEach(e=>{Oe(e)&&(t+=e.getColSpan())}),t}}function dn(e,t){const n=e.getElementByKey(t.getKey());return null===n&&Ke(230),Ht(t,n)}function fn(e){const n=gn();e.hasAttribute(\"data-lexical-row-striping\")&&n.setRowStriping(!0),e.hasAttribute(\"data-lexical-frozen-column\")&&n.setFrozenColumns(1),e.hasAttribute(\"data-lexical-frozen-row\")&&n.setFrozenRows(1);const o=e.querySelector(\":scope > colgroup\");if(o){let e=[];for(const t of o.querySelectorAll(\":scope > col\")){let n=t.style.width||\"\";if(!Ne.test(n)&&(n=t.getAttribute(\"width\")||\"\",!/^\\d+$/.test(n))){e=void 0;break}e.push(parseFloat(n))}e&&n.setColWidths(e)}return{after:e=>t(e,$e),node:n}}function gn(){return p(new hn)}function mn(e){return e instanceof hn}function pn({rows:e,columns:t,includeHeaders:n}){const o=S()||Z();if(!o||!w(o))return!1;if(Qt(o.anchor.getNode()))return!1;const r=Le(Number(e),Number(t),n);c(r);const l=r.getFirstDescendant();return f(l)&&l.select(),!0}function Cn(e){$e(e.getParent())?e.isEmpty()&&e.append(m()):e.remove()}function _n(e){mn(e.getParent())?a(e,Oe):e.remove()}function Sn(e){a(e,$e);const[t]=gt(e,null,null),n=t.reduce((e,t)=>Math.max(e,t.length),0),o=e.getChildren();for(let e=0;e<t.length;++e){const r=o[e];if(!r)continue;$e(r)||Ke(254,r.constructor.name,r.getType());const l=t[e].reduce((e,t)=>t?1+e:e,0);if(l!==n)for(let e=l;e<n;++e){const e=Fe();e.append(m()),r.append(e)}}}function wn(e){if(e.detail<3||!ne(e.target))return!1;const t=ee(e.target);if(null===t)return!1;const o=n(t,e=>v(e)&&!e.isInline());if(null===o)return!1;return!!Oe(o.getParent())&&(o.select(0),!0)}function bn(e){return e.registerNodeTransform(xe,e=>{if(e.getColSpan()>1||e.getRowSpan()>1){const[,,t]=mt(e),[n]=ft(t,e,e),o=n.length,r=n[0].length;let l=t.getFirstChild();$e(l)||Ke(175);const i=[];for(let e=0;e<o;e++){0!==e&&(l=l.getNextSibling(),$e(l)||Ke(175));let t=null;for(let o=0;o<r;o++){const r=n[e][o],c=r.cell;if(r.startRow===e&&r.startColumn===o)t=c,i.push(c);else if(c.getColSpan()>1||c.getRowSpan()>1){Oe(c)||Ke(176);const e=Fe(c.__headerState);null!==t?t.insertAfter(e):s(l,e)}}}for(const e of i)e.setColSpan(1),e.setRowSpan(1)}})}function yn(e,t=!0){const n=new Map,o=(o,r,l)=>{const s=Ft(o,l),i=Mt(o,s,e,t);n.set(r,[i,s])},r=e.registerMutationListener(hn,t=>{e.getEditorState().read(()=>{for(const[e,r]of t){const t=n.get(e);if(\"created\"===r||\"updated\"===r){const{tableNode:r,tableElement:l}=vt(e);void 0===t?o(r,e,l):l!==t[1]&&(t[0].removeListeners(),n.delete(e),o(r,e,l))}else\"destroyed\"===r&&void 0!==t&&(t[0].removeListeners(),n.delete(e))}},{editor:e})},{skipInitialization:!1});return()=>{r();for(const[,[e]]of n)e.removeListeners()}}function Nn(e){return e.hasNodes([hn])||Ke(255),i(e.registerCommand(Ae,pn,me),e.registerCommand(Q,({nodes:t,selection:n},o)=>{if(e!==o||!w(n))return!1;return null!==Qt(n.anchor.getNode())&&t.some(mn)},me),e.registerCommand(pe,wn,me),e.registerNodeTransform(hn,Sn),e.registerNodeTransform(Ee,_n),e.registerNodeTransform(xe,Cn))}const vn=Ce({build:(e,t,n)=>we(t),config:_e({hasCellBackgroundColor:!0,hasCellMerge:!0,hasHorizontalScroll:!0,hasTabHandler:!0}),name:\"@lexical/table/Table\",nodes:[hn,Ee,xe],register(e,t,n){const o=n.getOutput();return i(Se(()=>{const t=o.hasHorizontalScroll.value;an(e)!==t&&(un(e,t),e.registerNodeTransform(hn,()=>{})())}),Nn(e),Se(()=>yn(e,o.hasTabHandler.value)),Se(()=>o.hasCellMerge.value?void 0:bn(e)),Se(()=>o.hasCellBackgroundColor.value?void 0:e.registerNodeTransform(xe,e=>{null!==e.getBackgroundColor()&&e.setBackgroundColor(null)})))}});export{ft as $computeTableMap,gt as $computeTableMapSkipCellCheck,Fe as $createTableCellNode,gn as $createTableNode,Le as $createTableNodeWithDimensions,Me as $createTableRowNode,bt as $createTableSelection,yt as $createTableSelectionFrom,nt as $deleteTableColumn,lt as $deleteTableColumnAtSelection,st as $deleteTableColumn__EXPERIMENTAL,ot as $deleteTableRowAtSelection,rt as $deleteTableRow__EXPERIMENTAL,Gt as $findCellNode,Qt as $findTableNode,dn as $getElementForTableNode,mt as $getNodeTriplet,vt as $getTableAndElementByKey,Be as $getTableCellNodeFromLexicalNode,Ct as $getTableCellNodeRect,Ue as $getTableColumnIndexFromTableCellNode,De as $getTableNodeFromLexicalNodeOrThrow,Ie as $getTableRowIndexFromTableCellNode,Pe as $getTableRowNodeFromTableCellNodeOrThrow,Qe as $insertTableColumn,Ze as $insertTableColumnAtSelection,et as $insertTableColumn__EXPERIMENTAL,Xe as $insertTableRow,je as $insertTableRowAtSelection,Ve as $insertTableRow__EXPERIMENTAL,an as $isScrollableTablesActive,Oe as $isTableCellNode,mn as $isTableNode,$e as $isTableRowNode,wt as $isTableSelection,at as $mergeCells,Ye as $removeTableRowAtIndex,ht as $unmergeCell,Ae as INSERT_TABLE_COMMAND,ve as TableCellHeaderStates,xe as TableCellNode,vn as TableExtension,hn as TableNode,xt as TableObserver,Ee as TableRowNode,Mt as applyTableHandlers,zt as getDOMCellFromTarget,Ft as getTableElement,$t as getTableObserverFromTableElement,bn as registerTableCellUnmergeTransform,Nn as registerTablePlugin,yn as registerTableSelectionObserver,un as setScrollableTablesActive};\n"],"names":["Ne","ve","xe","u","Re","Fe","n","o","t","Te","e","h","l","s","c","a","p","g","r","d","f","m","Oe","Ae","C","Ke","Ee","ke","Me","$e","ze","We","He","Le","gn","_","Be","Pe","De","mn","Ie","Ue","qe","je","S","w","wt","mt","ft","Ge","Ze","tt","ct","i","it","lt","at","gt","ut","b","dt","pt","_t","St","N","y","R","v","x","Nt","T","bt","yt","vt","F","Ft","xt","Ht","Lt","O","A","K","ln","E","k","M","Tt","Rt","Ot","At","Kt","$","z","W","H","Et","P","D","I","kt","U","J","Mt","$t","ne","zt","Z","Xt","rn","tn","Wt","en","L","B","Y","be","ye","X","q","j","on","nn","V","Gt","Qt","G","Q","Pt","ee","te","Bt","Vt","jt","Dt","qt","It","Ut","Jt","Yt","Zt","re","le","se","ie","he","de","ce","dn","ue","ae","fe","oe","an","sn","cn","un","hn","fn","ge","pn","Cn","_n","Sn","wn","bn","yn","Nn","me","pe"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"LexicalTable.prod-RGq0GKAR.js","sources":["../node_modules/@lexical/table/LexicalTable.prod.mjs"],"sourcesContent":["/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport{addClassNamesToElement as e,$descendantsMatching as t,$findMatchingParent as n,removeClassNamesFromElement as o,objectKlassEquals as r,isHTMLElement as l,$insertFirst as s,mergeRegister as i,$insertNodeToNearestRoot as c,$unwrapAndFilterDescendants as a}from\"@lexical/utils\";import{ElementNode as u,isHTMLElement as h,$isInlineElementOrDecoratorNode as d,$isTextNode as f,$isLineBreakNode as g,$createParagraphNode as m,$applyNodeReplacement as p,createCommand as C,$createTextNode as _,$getSelection as S,$isRangeSelection as w,$isParagraphNode as b,$createPoint as y,$getNodeByKey as N,$isElementNode as v,$normalizeSelection__EXPERIMENTAL as x,isCurrentlyReadOnlyMode as T,TEXT_TYPE_TO_FORMAT as R,$getEditor as F,$setSelection as O,SELECTION_CHANGE_COMMAND as A,getDOMSelection as K,$createRangeSelection as E,$isRootNode as k,INSERT_PARAGRAPH_COMMAND as M,KEY_ARROW_DOWN_COMMAND as $,KEY_ARROW_UP_COMMAND as z,KEY_ARROW_LEFT_COMMAND as W,KEY_ARROW_RIGHT_COMMAND as H,COMMAND_PRIORITY_HIGH as L,KEY_ESCAPE_COMMAND as B,DELETE_WORD_COMMAND as P,DELETE_LINE_COMMAND as D,DELETE_CHARACTER_COMMAND as I,KEY_BACKSPACE_COMMAND as U,KEY_DELETE_COMMAND as J,CUT_COMMAND as Y,FORMAT_TEXT_COMMAND as X,FORMAT_ELEMENT_COMMAND as q,CONTROLLED_TEXT_INSERTION_COMMAND as j,KEY_TAB_COMMAND as V,FOCUS_COMMAND as G,SELECTION_INSERT_CLIPBOARD_NODES_COMMAND as Q,$getPreviousSelection as Z,$getNearestNodeFromDOMNode as ee,$createRangeSelectionFromDom as te,isDOMNode as ne,$isRootOrShadowRoot as oe,$caretFromPoint as re,$isExtendableTextPointCaret as le,$extendCaretToRange as se,$isSiblingCaret as ie,$getSiblingCaret as ce,$setPointFromCaret as ae,$normalizeCaret as ue,$isChildCaret as he,$getChildCaret as de,$getAdjacentChildCaret as fe,setDOMUnmanaged as ge,COMMAND_PRIORITY_EDITOR as me,CLICK_COMMAND as pe,defineExtension as Ce,safeCast as _e}from\"lexical\";import{effect as Se,namedSignals as we}from\"@lexical/extension\";import{copyToClipboard as be,$getClipboardDataFromSelection as ye}from\"@lexical/clipboard\";const Ne=/^(\\d+(?:\\.\\d+)?)px$/,ve={BOTH:3,COLUMN:2,NO_STATUS:0,ROW:1};class xe extends u{__colSpan;__rowSpan;__headerState;__width;__backgroundColor;__verticalAlign;static getType(){return\"tablecell\"}static clone(e){return new xe(e.__headerState,e.__colSpan,e.__width,e.__key)}afterCloneFrom(e){super.afterCloneFrom(e),this.__rowSpan=e.__rowSpan,this.__backgroundColor=e.__backgroundColor,this.__verticalAlign=e.__verticalAlign}static importDOM(){return{td:e=>({conversion:Re,priority:0}),th:e=>({conversion:Re,priority:0})}}static importJSON(e){return Fe().updateFromJSON(e)}updateFromJSON(e){return super.updateFromJSON(e).setHeaderStyles(e.headerState).setColSpan(e.colSpan||1).setRowSpan(e.rowSpan||1).setWidth(e.width||void 0).setBackgroundColor(e.backgroundColor||null).setVerticalAlign(e.verticalAlign||void 0)}constructor(e=ve.NO_STATUS,t=1,n,o){super(o),this.__colSpan=t,this.__rowSpan=1,this.__headerState=e,this.__width=n,this.__backgroundColor=null,this.__verticalAlign=void 0}createDOM(t){const n=document.createElement(this.getTag());return this.__width&&(n.style.width=`${this.__width}px`),this.__colSpan>1&&(n.colSpan=this.__colSpan),this.__rowSpan>1&&(n.rowSpan=this.__rowSpan),null!==this.__backgroundColor&&(n.style.backgroundColor=this.__backgroundColor),Te(this.__verticalAlign)&&(n.style.verticalAlign=this.__verticalAlign),e(n,t.theme.tableCell,this.hasHeader()&&t.theme.tableCellHeader),n}exportDOM(e){const t=super.exportDOM(e);if(h(t.element)){const e=t.element;e.setAttribute(\"data-temporary-table-cell-lexical-key\",this.getKey()),e.style.border=\"1px solid black\",this.__colSpan>1&&(e.colSpan=this.__colSpan),this.__rowSpan>1&&(e.rowSpan=this.__rowSpan),e.style.width=`${this.getWidth()||75}px`,e.style.verticalAlign=this.getVerticalAlign()||\"top\",e.style.textAlign=\"start\",null===this.__backgroundColor&&this.hasHeader()&&(e.style.backgroundColor=\"#f2f3f5\")}return t}exportJSON(){return{...super.exportJSON(),...Te(this.__verticalAlign)&&{verticalAlign:this.__verticalAlign},backgroundColor:this.getBackgroundColor(),colSpan:this.__colSpan,headerState:this.__headerState,rowSpan:this.__rowSpan,width:this.getWidth()}}getColSpan(){return this.getLatest().__colSpan}setColSpan(e){const t=this.getWritable();return t.__colSpan=e,t}getRowSpan(){return this.getLatest().__rowSpan}setRowSpan(e){const t=this.getWritable();return t.__rowSpan=e,t}getTag(){return this.hasHeader()?\"th\":\"td\"}setHeaderStyles(e,t=ve.BOTH){const n=this.getWritable();return n.__headerState=e&t|n.__headerState&~t,n}getHeaderStyles(){return this.getLatest().__headerState}setWidth(e){const t=this.getWritable();return t.__width=e,t}getWidth(){return this.getLatest().__width}getBackgroundColor(){return this.getLatest().__backgroundColor}setBackgroundColor(e){const t=this.getWritable();return t.__backgroundColor=e,t}getVerticalAlign(){return this.getLatest().__verticalAlign}setVerticalAlign(e){const t=this.getWritable();return t.__verticalAlign=e||void 0,t}toggleHeaderStyle(e){const t=this.getWritable();return(t.__headerState&e)===e?t.__headerState-=e:t.__headerState+=e,t}hasHeaderState(e){return(this.getHeaderStyles()&e)===e}hasHeader(){return this.getLatest().__headerState!==ve.NO_STATUS}updateDOM(e){return e.__headerState!==this.__headerState||e.__width!==this.__width||e.__colSpan!==this.__colSpan||e.__rowSpan!==this.__rowSpan||e.__backgroundColor!==this.__backgroundColor||e.__verticalAlign!==this.__verticalAlign}isShadowRoot(){return!0}collapseAtStart(){return!0}canBeEmpty(){return!1}canIndent(){return!1}}function Te(e){return\"middle\"===e||\"bottom\"===e}function Re(e){const t=e,n=e.nodeName.toLowerCase();let o;Ne.test(t.style.width)&&(o=parseFloat(t.style.width));const r=Fe(\"th\"===n?ve.ROW:ve.NO_STATUS,t.colSpan,o);r.__rowSpan=t.rowSpan;const l=t.style.backgroundColor;\"\"!==l&&(r.__backgroundColor=l);const s=t.style.verticalAlign;Te(s)&&(r.__verticalAlign=s);const i=t.style,c=(i&&i.textDecoration||\"\").split(\" \"),a=\"700\"===i.fontWeight||\"bold\"===i.fontWeight,u=c.includes(\"line-through\"),h=\"italic\"===i.fontStyle,p=c.includes(\"underline\");return{after:e=>{const t=[];let n=null;const o=()=>{if(n){const e=n.getFirstChild();g(e)&&1===n.getChildrenSize()&&e.remove()}};for(const r of e)d(r)||f(r)||g(r)?(f(r)&&(a&&r.toggleFormat(\"bold\"),u&&r.toggleFormat(\"strikethrough\"),h&&r.toggleFormat(\"italic\"),p&&r.toggleFormat(\"underline\")),n?n.append(r):(n=m().append(r),t.push(n))):(t.push(r),o(),n=null);return o(),0===t.length&&t.push(m()),t},node:r}}function Fe(e=ve.NO_STATUS,t=1,n){return p(new xe(e,t,n))}function Oe(e){return e instanceof xe}const Ae=C(\"INSERT_TABLE_COMMAND\");function Ke(e,...t){const n=new URL(\"https://lexical.dev/docs/error\"),o=new URLSearchParams;o.append(\"code\",e);for(const e of t)o.append(\"v\",e);throw n.search=o.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}class Ee extends u{__height;static getType(){return\"tablerow\"}static clone(e){return new Ee(e.__height,e.__key)}static importDOM(){return{tr:e=>({conversion:ke,priority:0})}}static importJSON(e){return Me().updateFromJSON(e)}updateFromJSON(e){return super.updateFromJSON(e).setHeight(e.height)}constructor(e,t){super(t),this.__height=e}exportJSON(){const e=this.getHeight();return{...super.exportJSON(),...void 0===e?void 0:{height:e}}}createDOM(t){const n=document.createElement(\"tr\");return this.__height&&(n.style.height=`${this.__height}px`),e(n,t.theme.tableRow),n}extractWithChild(e,t,n){return\"html\"===n}isShadowRoot(){return!0}setHeight(e){const t=this.getWritable();return t.__height=e,t}getHeight(){return this.getLatest().__height}updateDOM(e){return e.__height!==this.__height}canBeEmpty(){return!1}canIndent(){return!1}}function ke(e){const n=e;let o;return Ne.test(n.style.height)&&(o=parseFloat(n.style.height)),{after:e=>t(e,Oe),node:Me(o)}}function Me(e){return p(new Ee(e))}function $e(e){return e instanceof Ee}const ze=\"undefined\"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,We=ze&&\"documentMode\"in document?document.documentMode:null,He=ze&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent);function Le(e,t,n=!0){const o=gn();for(let r=0;r<e;r++){const e=Me();for(let o=0;o<t;o++){let t=ve.NO_STATUS;\"object\"==typeof n?(0===r&&n.rows&&(t|=ve.ROW),0===o&&n.columns&&(t|=ve.COLUMN)):n&&(0===r&&(t|=ve.ROW),0===o&&(t|=ve.COLUMN));const l=Fe(t),s=m();s.append(_()),l.append(s),e.append(l)}o.append(e)}return o}function Be(e){const t=n(e,e=>Oe(e));return Oe(t)?t:null}function Pe(e){const t=n(e,e=>$e(e));if($e(t))return t;throw new Error(\"Expected table cell to be inside of table row.\")}function De(e){const t=n(e,e=>mn(e));if(mn(t))return t;throw new Error(\"Expected table cell to be inside of table.\")}function Ie(e){const t=Pe(e);return De(t).getChildren().findIndex(e=>e.is(t))}function Ue(e){return Pe(e).getChildren().findIndex(t=>t.is(e))}function Je(e,t){const n=De(e),{x:o,y:r}=n.getCordsFromCellNode(e,t);return{above:n.getCellNodeFromCords(o,r-1,t),below:n.getCellNodeFromCords(o,r+1,t),left:n.getCellNodeFromCords(o-1,r,t),right:n.getCellNodeFromCords(o+1,r,t)}}function Ye(e,t){const n=e.getChildren();if(t>=n.length||t<0)throw new Error(\"Expected table cell to be inside of table row.\");return n[t].remove(),e}function Xe(e,t,n=!0,o,r){const l=e.getChildren();if(t>=l.length||t<0)throw new Error(\"Table row target index out of range\");const s=l[t];if(!$e(s))throw new Error(\"Row before insertion index does not exist.\");for(let e=0;e<o;e++){const e=s.getChildren(),t=e.length,o=Me();for(let n=0;n<t;n++){const t=e[n];Oe(t)||Ke(12);const{above:l,below:s}=Je(t,r);let i=ve.NO_STATUS;const c=l&&l.getWidth()||s&&s.getWidth()||void 0;(l&&l.hasHeaderState(ve.COLUMN)||s&&s.hasHeaderState(ve.COLUMN))&&(i|=ve.COLUMN);const a=Fe(i,1,c);a.append(m()),o.append(a)}n?s.insertAfter(o):s.insertBefore(o)}return e}ze&&\"InputEvent\"in window&&!We&&new window.InputEvent(\"input\");const qe=(e,t)=>e===ve.BOTH||e===t?t:ve.NO_STATUS;function je(e=!0){const t=S();w(t)||wt(t)||Ke(188);const n=t.anchor.getNode(),o=t.focus.getNode(),[r]=mt(n),[l,,s]=mt(o),[,i,c]=ft(s,l,r),{startRow:a}=c,{startRow:u}=i;return e?Ge(a+r.__rowSpan>u+l.__rowSpan?r:l,!0):Ge(u<a?l:r,!1)}const Ve=je;function Ge(e,t=!0){const[,,n]=mt(e),[o,r]=ft(n,e,e),l=o[0].length,{startRow:s}=r;let i=null;if(t){const t=s+e.__rowSpan-1,r=o[t],c=Me();for(let e=0;e<l;e++){const{cell:n,startRow:o}=r[e];if(o+n.__rowSpan-1<=t){const t=r[e].cell.__headerState,n=qe(t,ve.COLUMN);c.append(Fe(n).append(m()))}else n.setRowSpan(n.__rowSpan+1)}const a=n.getChildAtIndex(t);$e(a)||Ke(256),a.insertAfter(c),i=c}else{const e=s,t=o[e],r=Me();for(let n=0;n<l;n++){const{cell:o,startRow:l}=t[n];if(l===e){const e=t[n].cell.__headerState,o=qe(e,ve.COLUMN);r.append(Fe(o).append(m()))}else o.setRowSpan(o.__rowSpan+1)}const c=n.getChildAtIndex(e);$e(c)||Ke(257),c.insertBefore(r),i=r}return i}function Qe(e,t,n=!0,o,r){const l=e.getChildren(),s=[];for(let e=0;e<l.length;e++){const n=l[e];if($e(n))for(let e=0;e<o;e++){const e=n.getChildren();if(t>=e.length||t<0)throw new Error(\"Table column target index out of range\");const o=e[t];Oe(o)||Ke(12);const{left:l,right:i}=Je(o,r);let c=ve.NO_STATUS;(l&&l.hasHeaderState(ve.ROW)||i&&i.hasHeaderState(ve.ROW))&&(c|=ve.ROW);const a=Fe(c);a.append(m()),s.push({newTableCell:a,targetCell:o})}}return s.forEach(({newTableCell:e,targetCell:t})=>{n?t.insertAfter(e):t.insertBefore(e)}),e}function Ze(e=!0){const t=S();w(t)||wt(t)||Ke(188);const n=t.anchor.getNode(),o=t.focus.getNode(),[r]=mt(n),[l,,s]=mt(o),[,i,c]=ft(s,l,r),{startColumn:a}=c,{startColumn:u}=i;return e?tt(a+r.__colSpan>u+l.__colSpan?r:l,!0):tt(u<a?l:r,!1)}const et=Ze;function tt(e,t=!0,n=!0){const[,,o]=mt(e),[r,l]=ft(o,e,e),s=r.length,{startColumn:i}=l,c=t?i+e.__colSpan-1:i-1,a=o.getFirstChild();$e(a)||Ke(120);let u=null;function h(e=ve.NO_STATUS){const t=Fe(e).append(m());return null===u&&(u=t),t}let d=a;e:for(let e=0;e<s;e++){if(0!==e){const e=d.getNextSibling();$e(e)||Ke(121),d=e}const t=r[e],n=t[c<0?0:c].cell.__headerState,o=qe(n,ve.ROW);if(c<0){ct(d,h(o));continue}const{cell:l,startColumn:s,startRow:i}=t[c];if(s+l.__colSpan-1<=c){let n=l,r=i,s=c;for(;r!==e&&n.__rowSpan>1;){if(s-=l.__colSpan,!(s>=0)){d.append(h(o));continue e}{const{cell:e,startRow:o}=t[s];n=e,r=o}}n.insertAfter(h(o))}else l.setColSpan(l.__colSpan+1)}null!==u&&n&&it(u);const f=o.getColWidths();if(f){const e=[...f],t=c<0?0:c,n=e[t];e.splice(t,0,n),o.setColWidths(e)}return u}function nt(e,t){const n=e.getChildren();for(let e=0;e<n.length;e++){const o=n[e];if($e(o)){const e=o.getChildren();if(t>=e.length||t<0)throw new Error(\"Table column target index out of range\");e[t].remove()}}return e}function ot(){const e=S();w(e)||wt(e)||Ke(188);const[t,n]=e.isBackward()?[e.focus.getNode(),e.anchor.getNode()]:[e.anchor.getNode(),e.focus.getNode()],[o,,r]=mt(t),[l]=mt(n),[s,i,c]=ft(r,o,l),{startRow:a}=i,{startRow:u}=c,h=u+l.__rowSpan-1;if(s.length===h-a+1)return void r.remove();const d=s[0].length,f=s[h+1],g=r.getChildAtIndex(h+1);for(let e=h;e>=a;e--){for(let t=d-1;t>=0;t--){const{cell:n,startRow:o,startColumn:r}=s[e][t];if(r===t){if(o<a||o+n.__rowSpan-1>h){const e=Math.max(o,a),t=Math.min(n.__rowSpan+o-1,h),r=e<=t?t-e+1:0;n.setRowSpan(n.__rowSpan-r)}if(o>=a&&o+n.__rowSpan-1>h&&e===h){null===g&&Ke(122);let o=null;for(let n=0;n<t;n++){const t=f[n],r=t.cell;t.startRow===e+1&&(o=r),r.__colSpan>1&&(n+=r.__colSpan-1)}null===o?ct(g,n):o.insertAfter(n)}}}const t=r.getChildAtIndex(e);$e(t)||Ke(206,String(e)),t.remove()}if(void 0!==f){const{cell:e}=f[0];it(e)}else{const e=s[a-1],{cell:t}=e[0];it(t)}}const rt=ot;function lt(){const e=S();w(e)||wt(e)||Ke(188);const t=e.anchor.getNode(),n=e.focus.getNode(),[o,,r]=mt(t),[l]=mt(n),[s,i,c]=ft(r,o,l),{startColumn:a}=i,{startRow:u,startColumn:h}=c,d=Math.min(a,h),f=Math.max(a+o.__colSpan-1,h+l.__colSpan-1),g=f-d+1;if(s[0].length===f-d+1)return r.selectPrevious(),void r.remove();const m=s.length;for(let e=0;e<m;e++)for(let t=d;t<=f;t++){const{cell:n,startColumn:o}=s[e][t];if(o<d){if(t===d){const e=d-o;n.setColSpan(n.__colSpan-Math.min(g,n.__colSpan-e))}}else if(o+n.__colSpan-1>f){if(t===f){const e=f-o+1;n.setColSpan(n.__colSpan-e)}}else n.remove()}const p=s[u],C=a>h?p[a+o.__colSpan]:p[h+l.__colSpan];if(void 0!==C){const{cell:e}=C;it(e)}else{const e=h<a?p[h-1]:p[a-1],{cell:t}=e;it(t)}const _=r.getColWidths();if(_){const e=[..._];e.splice(d,g),r.setColWidths(e)}}const st=lt;function it(e){const t=e.getFirstDescendant();null==t?e.selectStart():t.getParentOrThrow().selectStart()}function ct(e,t){const n=e.getFirstChild();null!==n?n.insertBefore(t):e.append(t)}function at(e){if(0===e.length)return null;const t=De(e[0]),[n]=gt(t,null,null);let o=1/0,r=-1/0,l=1/0,s=-1/0;const i=new Set;for(const t of n)for(const n of t){if(!n||!n.cell)continue;const t=n.cell.getKey();if(!i.has(t)&&e.some(e=>e.is(n.cell))){i.add(t);const e=n.startRow,c=n.startColumn,a=n.cell.__rowSpan||1,u=n.cell.__colSpan||1;o=Math.min(o,e),r=Math.max(r,e+a-1),l=Math.min(l,c),s=Math.max(s,c+u-1)}}if(o===1/0||l===1/0)return null;const c=r-o+1,a=s-l+1,u=n[o][l];if(!u.cell)return null;const h=u.cell;h.setColSpan(a),h.setRowSpan(c);const d=new Set([h.getKey()]);for(let e=o;e<=r;e++)for(let t=l;t<=s;t++){const o=n[e][t];if(!o.cell)continue;const r=o.cell,l=r.getKey();if(!d.has(l)){d.add(l);ut(r)||h.append(...r.getChildren()),r.remove()}}return 0===h.getChildrenSize()&&h.append(m()),h}function ut(e){if(1!==e.getChildrenSize())return!1;const t=e.getFirstChildOrThrow();return!(!b(t)||!t.isEmpty())}function ht(){const e=S();w(e)||wt(e)||Ke(188);const t=e.anchor.getNode(),o=n(t,Oe);return Oe(o)||Ke(148),dt(o)}function dt(e){const[t,n,o]=mt(e),r=t.__colSpan,l=t.__rowSpan;if(1===r&&1===l)return;const[s,i]=ft(o,t,t),{startColumn:c,startRow:a}=i,u=t.__headerState&ve.COLUMN,h=Array.from({length:r},(e,t)=>{let n=u;for(let e=0;0!==n&&e<s.length;e++)n&=s[e][t+c].cell.__headerState;return n}),d=t.__headerState&ve.ROW,f=Array.from({length:l},(e,t)=>{let n=d;for(let e=0;0!==n&&e<s[0].length;e++)n&=s[t+a][e].cell.__headerState;return n});if(r>1){for(let e=1;e<r;e++)t.insertAfter(Fe(h[e]|f[0]).append(m()));t.setColSpan(1)}if(l>1){let e;for(let t=1;t<l;t++){const o=a+t,l=s[o];e=(e||n).getNextSibling(),$e(e)||Ke(125);let i=null;for(let e=0;e<c;e++){const t=l[e],n=t.cell;t.startRow===o&&(i=n),n.__colSpan>1&&(e+=n.__colSpan-1)}if(null===i)for(let n=r-1;n>=0;n--)ct(e,Fe(h[n]|f[t]).append(m()));else for(let e=r-1;e>=0;e--)i.insertAfter(Fe(h[e]|f[t]).append(m()))}t.setRowSpan(1)}}function ft(e,t,n){const[o,r,l]=gt(e,t,n);return null===r&&Ke(207),null===l&&Ke(208),[o,r,l]}function gt(e,t,n){const o=[];let r=null,l=null;function s(e){let t=o[e];return void 0===t&&(o[e]=t=[]),t}const i=e.getChildren();for(let e=0;e<i.length;e++){const o=i[e];$e(o)||Ke(209);const c=s(e);for(let a=o.getFirstChild(),u=0;null!=a;a=a.getNextSibling()){for(Oe(a)||Ke(147);void 0!==c[u];)u++;const o={cell:a,startColumn:u,startRow:e},{__rowSpan:h,__colSpan:d}=a;for(let t=0;t<h&&!(e+t>=i.length);t++){const n=s(e+t);for(let e=0;e<d;e++)n[u+e]=o}null!==t&&null===r&&t.is(a)&&(r=o),null!==n&&null===l&&n.is(a)&&(l=o)}}return[o,r,l]}function mt(e){let t;if(e instanceof xe)t=e;else if(\"__type\"in e){const o=n(e,Oe);Oe(o)||Ke(148),t=o}else{const o=n(e.getNode(),Oe);Oe(o)||Ke(148),t=o}const o=t.getParent();$e(o)||Ke(149);const r=o.getParent();return mn(r)||Ke(210),[t,o,r]}function pt(e,t,n){let o,r=Math.min(t.startColumn,n.startColumn),l=Math.min(t.startRow,n.startRow),s=Math.max(t.startColumn+t.cell.__colSpan-1,n.startColumn+n.cell.__colSpan-1),i=Math.max(t.startRow+t.cell.__rowSpan-1,n.startRow+n.cell.__rowSpan-1);do{o=!1;for(let t=0;t<e.length;t++)for(let n=0;n<e[0].length;n++){const c=e[t][n];if(!c)continue;const a=c.startColumn+c.cell.__colSpan-1,u=c.startRow+c.cell.__rowSpan-1,h=c.startColumn<=s&&a>=r,d=c.startRow<=i&&u>=l;if(h&&d){const e=Math.min(r,c.startColumn),t=Math.max(s,a),n=Math.min(l,c.startRow),h=Math.max(i,u);e===r&&t===s&&n===l&&h===i||(r=e,s=t,l=n,i=h,o=!0)}}}while(o);return{maxColumn:s,maxRow:i,minColumn:r,minRow:l}}function Ct(e){const[t,,n]=mt(e),o=n.getChildren(),r=o.length,l=o[0].getChildren().length,s=new Array(r);for(let e=0;e<r;e++)s[e]=new Array(l);for(let e=0;e<r;e++){const n=o[e].getChildren();let r=0;for(let o=0;o<n.length;o++){for(;s[e][r];)r++;const l=n[o],i=l.__rowSpan||1,c=l.__colSpan||1;for(let t=0;t<i;t++)for(let n=0;n<c;n++)s[e+t][r+n]=l;if(t===l)return{colSpan:c,columnIndex:r,rowIndex:e,rowSpan:i};r+=c}}return null}function _t(e){const[[t,o,r,l],[s,i,c,a]]=[\"anchor\",\"focus\"].map(t=>{const o=e[t].getNode(),r=n(o,Oe);Oe(r)||Ke(238,t,o.getKey(),o.getType());const l=r.getParent();$e(l)||Ke(239,t);const s=l.getParent();return mn(s)||Ke(240,t),[o,r,l,s]});return l.is(a)||Ke(241),{anchorCell:o,anchorNode:t,anchorRow:r,anchorTable:l,focusCell:i,focusNode:s,focusRow:c,focusTable:a}}class St{tableKey;anchor;focus;_cachedNodes;dirty;constructor(e,t,n){this.anchor=t,this.focus=n,t._selection=this,n._selection=this,this._cachedNodes=null,this.dirty=!1,this.tableKey=e}getStartEndPoints(){return[this.anchor,this.focus]}isValid(){if(\"root\"===this.tableKey||\"root\"===this.anchor.key||\"element\"!==this.anchor.type||\"root\"===this.focus.key||\"element\"!==this.focus.type)return!1;const e=N(this.tableKey),t=N(this.anchor.key),n=N(this.focus.key);return null!==e&&null!==t&&null!==n}isBackward(){return this.focus.isBefore(this.anchor)}getCachedNodes(){return this._cachedNodes}setCachedNodes(e){this._cachedNodes=e}is(e){return wt(e)&&this.tableKey===e.tableKey&&this.anchor.is(e.anchor)&&this.focus.is(e.focus)}set(e,t,n){this.dirty=this.dirty||e!==this.tableKey||t!==this.anchor.key||n!==this.focus.key,this.tableKey=e,this.anchor.key=t,this.focus.key=n,this._cachedNodes=null}clone(){return new St(this.tableKey,y(this.anchor.key,this.anchor.offset,this.anchor.type),y(this.focus.key,this.focus.offset,this.focus.type))}isCollapsed(){return!1}extract(){return this.getNodes()}insertRawText(e){}insertText(){}hasFormat(e){let t=0;this.getNodes().filter(Oe).forEach(e=>{const n=e.getFirstChild();b(n)&&(t|=n.getTextFormat())});const n=R[e];return 0!==(t&n)}insertNodes(e){const t=this.focus.getNode();v(t)||Ke(151);x(t.select(0,t.getChildrenSize())).insertNodes(e)}getShape(){const{anchorCell:e,focusCell:t}=_t(this),n=Ct(e);null===n&&Ke(153);const o=Ct(t);null===o&&Ke(155);const r=Math.min(n.columnIndex,o.columnIndex),l=Math.max(n.columnIndex+n.colSpan-1,o.columnIndex+o.colSpan-1),s=Math.min(n.rowIndex,o.rowIndex),i=Math.max(n.rowIndex+n.rowSpan-1,o.rowIndex+o.rowSpan-1);return{fromX:Math.min(r,l),fromY:Math.min(s,i),toX:Math.max(r,l),toY:Math.max(s,i)}}getNodes(){if(!this.isValid())return[];const e=this._cachedNodes;if(null!==e)return e;const{anchorTable:t,anchorCell:n,focusCell:o}=_t(this),r=o.getParents()[1];if(r!==t){if(t.isParentOf(o)){const e=r.getParent();null==e&&Ke(159),this.set(this.tableKey,o.getKey(),e.getKey())}else{const e=t.getParent();null==e&&Ke(158),this.set(this.tableKey,e.getKey(),o.getKey())}return this.getNodes()}const[l,s,i]=ft(t,n,o),{minColumn:c,maxColumn:a,minRow:u,maxRow:h}=pt(l,s,i),d=new Map([[t.getKey(),t]]);let f=null;for(let e=u;e<=h;e++)for(let t=c;t<=a;t++){const{cell:n}=l[e][t],o=n.getParent();$e(o)||Ke(160),o!==f&&(d.set(o.getKey(),o),f=o),d.has(n.getKey())||Nt(n,e=>{d.set(e.getKey(),e)})}const g=Array.from(d.values());return T()||(this._cachedNodes=g),g}getTextContent(){const e=this.getNodes().filter(e=>Oe(e));let t=\"\";for(let n=0;n<e.length;n++){const o=e[n],r=o.__parent,l=(e[n+1]||{}).__parent;t+=o.getTextContent()+(l!==r?\"\\n\":\"\\t\")}return t}}function wt(e){return e instanceof St}function bt(){const e=y(\"root\",0,\"element\"),t=y(\"root\",0,\"element\");return new St(\"root\",e,t)}function yt(e,t,n){e.getKey(),t.getKey(),n.getKey();const o=S(),r=wt(o)?o.clone():bt();return r.set(e.getKey(),t.getKey(),n.getKey()),r}function Nt(e,t){const n=[[e]];for(let e=n.at(-1);void 0!==e&&n.length>0;e=n.at(-1)){const o=e.pop();void 0===o?n.pop():!1!==t(o)&&v(o)&&n.push(o.getChildren())}}function vt(e,t=F()){const n=N(e);mn(n)||Ke(231,e);const o=Ft(n,t.getElementByKey(e));return null===o&&Ke(232,e),{tableElement:o,tableNode:n}}class xt{focusX;focusY;listenersToRemove;table;isHighlightingCells;anchorX;anchorY;tableNodeKey;anchorCell;focusCell;anchorCellNodeKey;focusCellNodeKey;editor;tableSelection;hasHijackedSelectionStyles;isSelecting;pointerType;shouldCheckSelection;abortController;listenerOptions;nextFocus;constructor(e,t){this.isHighlightingCells=!1,this.anchorX=-1,this.anchorY=-1,this.focusX=-1,this.focusY=-1,this.listenersToRemove=new Set,this.tableNodeKey=t,this.editor=e,this.table={columns:0,domRows:[],rows:0},this.tableSelection=null,this.anchorCellNodeKey=null,this.focusCellNodeKey=null,this.anchorCell=null,this.focusCell=null,this.hasHijackedSelectionStyles=!1,this.isSelecting=!1,this.pointerType=null,this.shouldCheckSelection=!1,this.abortController=new AbortController,this.listenerOptions={signal:this.abortController.signal},this.nextFocus=null,this.trackTable()}getTable(){return this.table}removeListeners(){this.abortController.abort(\"removeListeners\"),Array.from(this.listenersToRemove).forEach(e=>e()),this.listenersToRemove.clear()}$lookup(){return vt(this.tableNodeKey,this.editor)}trackTable(){const e=new MutationObserver(e=>{this.editor.getEditorState().read(()=>{let t=!1;for(let n=0;n<e.length;n++){const o=e[n].target.nodeName;if(\"TABLE\"===o||\"TBODY\"===o||\"THEAD\"===o||\"TR\"===o){t=!0;break}}if(!t)return;const{tableNode:n,tableElement:o}=this.$lookup();this.table=Ht(n,o)},{editor:this.editor})});this.editor.getEditorState().read(()=>{const{tableNode:t,tableElement:n}=this.$lookup();this.table=Ht(t,n),e.observe(n,{attributes:!0,childList:!0,subtree:!0})},{editor:this.editor})}$clearHighlight(){const e=this.editor;this.isHighlightingCells=!1,this.anchorX=-1,this.anchorY=-1,this.focusX=-1,this.focusY=-1,this.tableSelection=null,this.anchorCellNodeKey=null,this.focusCellNodeKey=null,this.anchorCell=null,this.focusCell=null,this.hasHijackedSelectionStyles=!1,this.$enableHighlightStyle();const{tableNode:t,tableElement:n}=this.$lookup();Lt(e,Ht(t,n),null),null!==S()&&(O(null),e.dispatchCommand(A,void 0))}$enableHighlightStyle(){const e=this.editor,{tableElement:t}=this.$lookup();o(t,e._config.theme.tableSelection),t.classList.remove(\"disable-selection\"),this.hasHijackedSelectionStyles=!1}$disableHighlightStyle(){const{tableElement:t}=this.$lookup();e(t,this.editor._config.theme.tableSelection),this.hasHijackedSelectionStyles=!0}$updateTableTableSelection(e){if(null!==e){e.tableKey!==this.tableNodeKey&&Ke(233,e.tableKey,this.tableNodeKey);const t=this.editor;this.tableSelection=e,this.isHighlightingCells=!0,this.$disableHighlightStyle(),this.updateDOMSelection(),Lt(t,this.table,this.tableSelection)}else this.$clearHighlight()}setShouldCheckSelection(){this.shouldCheckSelection=!0}getAndClearShouldCheckSelection(){return!!this.shouldCheckSelection&&(this.shouldCheckSelection=!1,!0)}setNextFocus(e){this.nextFocus=e}getAndClearNextFocus(){const{nextFocus:e}=this;return null!==e&&(this.nextFocus=null),e}updateDOMSelection(){if(null!==this.anchorCell&&null!==this.focusCell){const e=K(this.editor._window);e&&e.rangeCount>0&&e.removeAllRanges()}}$setFocusCellForSelection(e,t=!1){const n=this.editor,{tableNode:o}=this.$lookup(),r=e.x,l=e.y;if(this.focusCell=e,this.isHighlightingCells||this.anchorX===r&&this.anchorY===l&&!t){if(r===this.focusX&&l===this.focusY)return!1}else this.isHighlightingCells=!0,this.$disableHighlightStyle();if(this.focusX=r,this.focusY=l,this.isHighlightingCells){const t=ln(o,e.elem);if(null!=this.tableSelection&&null!=this.anchorCellNodeKey&&null!==t)return this.focusCellNodeKey=t.getKey(),this.tableSelection=yt(o,this.$getAnchorTableCellOrThrow(),t),O(this.tableSelection),n.dispatchCommand(A,void 0),Lt(n,this.table,this.tableSelection),!0}return!1}$getAnchorTableCell(){return this.anchorCellNodeKey?N(this.anchorCellNodeKey):null}$getAnchorTableCellOrThrow(){const e=this.$getAnchorTableCell();return null===e&&Ke(234),e}$getFocusTableCell(){return this.focusCellNodeKey?N(this.focusCellNodeKey):null}$getFocusTableCellOrThrow(){const e=this.$getFocusTableCell();return null===e&&Ke(235),e}$setAnchorCellForSelection(e){this.isHighlightingCells=!1,this.anchorCell=e,this.anchorX=e.x,this.anchorY=e.y;const{tableNode:t}=this.$lookup(),n=ln(t,e.elem);if(null!==n){const e=n.getKey();this.tableSelection=null!=this.tableSelection?this.tableSelection.clone():bt(),this.anchorCellNodeKey=e}}$formatCells(e){const t=S();wt(t)||Ke(236);const n=E(),o=n.anchor,r=n.focus,l=t.getNodes().filter(Oe);l.length>0||Ke(237);const s=l[0].getFirstChild(),i=b(s)?s.getFormatFlags(e,null):null;l.forEach(t=>{o.set(t.getKey(),0,\"element\"),r.set(t.getKey(),t.getChildrenSize(),\"element\"),n.formatText(e,i)}),O(t),this.editor.dispatchCommand(A,void 0)}$clearText(){const{editor:e}=this,t=N(this.tableNodeKey);if(!mn(t))throw new Error(\"Expected TableNode.\");const n=S();wt(n)||Ke(253);const o=n.getNodes().filter(Oe),r=t.getFirstChild(),l=t.getLastChild();if(o.length>0&&null!==r&&null!==l&&$e(r)&&$e(l)&&o[0]===r.getFirstChild()&&o[o.length-1]===l.getLastChild()){t.selectPrevious();const n=t.getParent();return t.remove(),void(k(n)&&n.isEmpty()&&e.dispatchCommand(M,void 0))}o.forEach(e=>{if(v(e)){const t=m(),n=_();t.append(n),e.append(t),e.getChildren().forEach(e=>{e!==t&&e.remove()})}}),Lt(e,this.table,null),O(null),e.dispatchCommand(A,void 0)}}const Tt=\"__lexicalTableSelection\";function Rt(e){return h(e)&&\"TABLE\"===e.nodeName}function Ft(e,t){if(!t)return t;const n=Rt(t)?t:e.getDOMSlot(t).element;return\"TABLE\"!==n.nodeName&&Ke(245,t.nodeName),n}function Ot(e){return e._window}function At(e,t){for(let n=t,o=null;null!==n;n=n.getParent()){if(e.is(n))return o;Oe(n)&&(o=n)}return null}const Kt=[[$,\"down\"],[z,\"up\"],[W,\"backward\"],[H,\"forward\"]],Et=[P,D,I],kt=[U,J];function Mt(e,t,o,l){const s=o.getRootElement(),i=Ot(o);null!==s&&null!==i||Ke(246);const c=new xt(o,e.getKey()),a=Ft(e,t);!function(e,t){null!==$t(e)&&Ke(205);e[Tt]=t}(a,c),c.listenersToRemove.add(()=>function(e,t){$t(e)===t&&delete e[Tt]}(a,c));const u=t=>{if(c.pointerType=t.pointerType,0!==t.button||!ne(t.target)||!i)return;const n=zt(t.target);null!==n&&o.update(()=>{const o=Z();if(He&&t.shiftKey&&Xt(o,e)&&(w(o)||wt(o))){const r=o.anchor.getNode(),l=At(e,o.anchor.getNode());if(l)c.$setAnchorCellForSelection(rn(c,l)),c.$setFocusCellForSelection(n),tn(t);else{(e.isBefore(r)?e.selectStart():e.selectEnd()).anchor.set(o.anchor.key,o.anchor.offset,o.anchor.type)}}else\"touch\"!==t.pointerType&&c.$setAnchorCellForSelection(n)}),(()=>{if(c.isSelecting)return;const e=()=>{c.isSelecting=!1,i.removeEventListener(\"pointerup\",e),i.removeEventListener(\"pointermove\",t)},t=n=>{if(1&~n.buttons&&c.isSelecting)return c.isSelecting=!1,i.removeEventListener(\"pointerup\",e),void i.removeEventListener(\"pointermove\",t);if(!ne(n.target))return;let r=null;const l=!(He||a.contains(n.target));if(l)r=Wt(a,n.target);else for(const e of document.elementsFromPoint(n.clientX,n.clientY))if(r=Wt(a,e),r)break;!r||null!==c.focusCell&&r.elem===c.focusCell.elem||(c.setNextFocus({focusCell:r,override:l}),o.dispatchCommand(A,void 0))};c.isSelecting=!0,i.addEventListener(\"pointerup\",e,c.listenerOptions),i.addEventListener(\"pointermove\",t,c.listenerOptions)})()};a.addEventListener(\"pointerdown\",u,c.listenerOptions),c.listenersToRemove.add(()=>{a.removeEventListener(\"pointerdown\",u)});const h=e=>{if(e.detail>=3&&ne(e.target)){null!==zt(e.target)&&e.preventDefault()}};a.addEventListener(\"mousedown\",h,c.listenerOptions),c.listenersToRemove.add(()=>{a.removeEventListener(\"mousedown\",h)});const d=e=>{const t=e.target;0===e.button&&ne(t)&&o.update(()=>{const e=S();wt(e)&&e.tableKey===c.tableNodeKey&&s.contains(t)&&c.$clearHighlight()})};i.addEventListener(\"pointerdown\",d,c.listenerOptions),c.listenersToRemove.add(()=>{i.removeEventListener(\"pointerdown\",d)});for(const[t,n]of Kt)c.listenersToRemove.add(o.registerCommand(t,t=>en(o,t,n,e,c),L));c.listenersToRemove.add(o.registerCommand(B,t=>{const n=S();if(wt(n)){const o=At(e,n.focus.getNode());if(null!==o)return tn(t),o.selectEnd(),!0}return!1},L));const g=t=>()=>{const o=S();if(!Xt(o,e))return!1;if(wt(o))return c.$clearText(),!0;if(w(o)){if(!Oe(At(e,o.anchor.getNode())))return!1;const r=o.anchor.getNode(),l=o.focus.getNode(),s=e.isParentOf(r),i=e.isParentOf(l);if(s&&!i||i&&!s)return c.$clearText(),!0;const a=n(o.anchor.getNode(),e=>v(e)),u=a&&n(a,e=>v(e)&&Oe(e.getParent()));if(!v(u)||!v(a))return!1;if(t===D&&null===u.getPreviousSibling())return!0}return!1};for(const e of Et)c.listenersToRemove.add(o.registerCommand(e,g(e),L));const p=t=>{const n=S();if(!wt(n)&&!w(n))return!1;const o=e.isParentOf(n.anchor.getNode());if(o!==e.isParentOf(n.focus.getNode())){const t=o?\"anchor\":\"focus\",r=o?\"focus\":\"anchor\",{key:l,offset:s,type:i}=n[r];return e[n[t].isBefore(n[r])?\"selectPrevious\":\"selectNext\"]()[r].set(l,s,i),!1}return!!Xt(n,e)&&(!!wt(n)&&(t&&(t.preventDefault(),t.stopPropagation()),c.$clearText(),!0))};for(const e of kt)c.listenersToRemove.add(o.registerCommand(e,p,L));return c.listenersToRemove.add(o.registerCommand(Y,e=>{const t=S();if(t){if(!wt(t)&&!w(t))return!1;be(o,r(e,ClipboardEvent)?e:null,ye(t));const n=p(e);return w(t)?(t.removeText(),!0):n}return!1},L)),c.listenersToRemove.add(o.registerCommand(X,t=>{const o=S();if(!Xt(o,e))return!1;if(wt(o))return c.$formatCells(t),!0;if(w(o)){const e=n(o.anchor.getNode(),e=>Oe(e));if(!Oe(e))return!1}return!1},L)),c.listenersToRemove.add(o.registerCommand(q,t=>{const n=S();if(!wt(n)||!Xt(n,e))return!1;const o=n.anchor.getNode(),r=n.focus.getNode();if(!Oe(o)||!Oe(r))return!1;if(function(e,t){if(wt(e)){const n=e.anchor.getNode(),o=e.focus.getNode();if(t&&n&&o){const[e]=ft(t,n,o);return n.getKey()===e[0][0].cell.getKey()&&o.getKey()===e[e.length-1].at(-1).cell.getKey()}}return!1}(n,e))return e.setFormat(t),!0;const[l,s,i]=ft(e,o,r),c=Math.max(s.startRow+s.cell.__rowSpan-1,i.startRow+i.cell.__rowSpan-1),a=Math.max(s.startColumn+s.cell.__colSpan-1,i.startColumn+i.cell.__colSpan-1),u=Math.min(s.startRow,i.startRow),h=Math.min(s.startColumn,i.startColumn),d=new Set;for(let e=u;e<=c;e++)for(let n=h;n<=a;n++){const o=l[e][n].cell;if(d.has(o))continue;d.add(o),o.setFormat(t);const r=o.getChildren();for(let e=0;e<r.length;e++){const n=r[e];v(n)&&!n.isInline()&&n.setFormat(t)}}return!0},L)),c.listenersToRemove.add(o.registerCommand(j,t=>{const r=S();if(!Xt(r,e))return!1;if(wt(r))return c.$clearHighlight(),!1;if(w(r)){const l=n(r.anchor.getNode(),e=>Oe(e));if(!Oe(l))return!1;if(\"string\"==typeof t){const n=on(o,r,e);if(n)return nn(n,e,[_(t)]),!0}}return!1},L)),l&&c.listenersToRemove.add(o.registerCommand(V,t=>{const o=S();if(!w(o)||!o.isCollapsed()||!Xt(o,e))return!1;const r=Gt(o.anchor.getNode());return!(null===r||!e.is(Qt(r)))&&(tn(t),function(e,t){const o=\"next\"===t?\"getNextSibling\":\"getPreviousSibling\",r=\"next\"===t?\"getFirstChild\":\"getLastChild\",l=e[o]();if(v(l))return l.selectEnd();const s=n(e,$e);null===s&&Ke(247);for(let e=s[o]();$e(e);e=e[o]()){const t=e[r]();if(v(t))return t.selectEnd()}const i=n(s,mn);null===i&&Ke(248);\"next\"===t?i.selectNext():i.selectPrevious()}(r,t.shiftKey?\"previous\":\"next\"),!0)},L)),c.listenersToRemove.add(o.registerCommand(G,t=>e.isSelected(),L)),c.listenersToRemove.add(o.registerCommand(Q,(e,t)=>{if(o!==t)return!1;const{nodes:r,selection:l}=e,s=l.getStartEndPoints(),i=wt(l),c=w(l)&&null!==n(l.anchor.getNode(),e=>Oe(e))&&null!==n(l.focus.getNode(),e=>Oe(e))||i;if(1!==r.length||!mn(r[0])||!c||null===s)return!1;const[a,u]=s,[h,d,g]=mt(a),p=n(u.getNode(),e=>Oe(e));if(!(Oe(h)&&Oe(p)&&$e(d)&&mn(g)))return!1;const C=r[0],[_,S,b]=ft(g,h,p),[y]=gt(C,null,null),N=_.length,v=N>0?_[0].length:0;let x=S.startRow,T=S.startColumn,R=y.length,F=R>0?y[0].length:0;if(i){const e=pt(_,S,b),t=e.maxRow-e.minRow+1,n=e.maxColumn-e.minColumn+1;x=e.minRow,T=e.minColumn,R=Math.min(R,t),F=Math.min(F,n)}let O=!1;const A=Math.min(N,x+R)-1,K=Math.min(v,T+F)-1,E=new Set;for(let e=x;e<=A;e++)for(let t=T;t<=K;t++){const n=_[e][t];E.has(n.cell.getKey())||(1===n.cell.__rowSpan&&1===n.cell.__colSpan||(dt(n.cell),E.add(n.cell.getKey()),O=!0))}let[k]=gt(g.getWritable(),null,null);const M=R-N+x;for(let e=0;e<M;e++){Ge(k[N-1][0].cell)}const $=F-v+T;for(let e=0;e<$;e++){tt(k[0][v-1].cell,!0,!1)}[k]=gt(g.getWritable(),null,null);for(let e=x;e<x+R;e++)for(let t=T;t<T+F;t++){const n=e-x,o=t-T,r=y[n][o];if(r.startRow!==n||r.startColumn!==o)continue;const l=r.cell;if(1!==l.__rowSpan||1!==l.__colSpan){const n=[],o=Math.min(e+l.__rowSpan,x+R)-1,r=Math.min(t+l.__colSpan,T+F)-1;for(let l=e;l<=o;l++)for(let e=t;e<=r;e++){const t=k[l][e];n.push(t.cell)}at(n),O=!0}const{cell:s}=k[e][t],i=s.getChildren();l.getChildren().forEach(e=>{if(f(e)){m().append(e),s.append(e)}else s.append(e)}),i.forEach(e=>e.remove())}if(i&&O){const[e]=gt(g.getWritable(),null,null);e[S.startRow][S.startColumn].cell.selectEnd()}return!0},L)),c.listenersToRemove.add(o.registerCommand(A,()=>{const t=S(),r=Z(),l=c.getAndClearNextFocus();if(null!==l){const{focusCell:n}=l;if(wt(t)&&t.tableKey===c.tableNodeKey)return(n.x!==c.focusX||n.y!==c.focusY)&&(c.$setFocusCellForSelection(n),!0);if(n!==c.anchorCell&&Xt(t,e))return c.$setFocusCellForSelection(n),!0}if(c.getAndClearShouldCheckSelection()&&w(r)&&w(t)&&t.isCollapsed()){const o=t.anchor.getNode(),r=e.getFirstChild(),l=Gt(o);if(null!==l&&$e(r)){const t=r.getFirstChild();if(Oe(t)&&e.is(n(l,n=>n.is(e)||n.is(t))))return t.selectStart(),!0}}if(w(t)){const{anchor:n,focus:l}=t,s=n.getNode(),i=l.getNode(),a=Gt(s),u=Gt(i),h=!(!a||!e.is(Qt(a))),d=!(!u||!e.is(Qt(u))),f=h!==d,g=h&&d,m=t.isBackward();if(f){const n=t.clone();if(d){const[t]=ft(e,u,u),o=t[0][0].cell,r=t[t.length-1].at(-1).cell;n.focus.set(m?o.getKey():r.getKey(),m?o.getChildrenSize():r.getChildrenSize(),\"element\")}else if(h){const[t]=ft(e,a,a),o=t[0][0].cell,r=t[t.length-1].at(-1).cell;n.anchor.set(m?r.getKey():o.getKey(),m?r.getChildrenSize():0,\"element\")}O(n),Pt(o,c)}else if(g&&(a.is(u)||(c.$setAnchorCellForSelection(rn(c,a)),c.$setFocusCellForSelection(rn(c,u),!0)),\"touch\"===c.pointerType&&c.isSelecting&&t.isCollapsed()&&w(r)&&r.isCollapsed())){const e=Gt(r.anchor.getNode());e&&!e.is(u)&&(c.$setAnchorCellForSelection(rn(c,e)),c.$setFocusCellForSelection(rn(c,u),!0),c.pointerType=null)}}else if(t&&wt(t)&&t.is(r)&&t.tableKey===e.getKey()){const n=K(i);if(n&&n.anchorNode&&n.focusNode){const r=ee(n.focusNode),l=r&&!e.isParentOf(r),s=ee(n.anchorNode),i=s&&e.isParentOf(s);if(l&&i&&n.rangeCount>0){const r=te(n,o);r&&(r.anchor.set(e.getKey(),t.isBackward()?e.getChildrenSize():0,\"element\"),n.removeAllRanges(),O(r))}}}return t&&!t.is(r)&&(wt(t)||wt(r))&&c.tableSelection&&!c.tableSelection.is(r)?(wt(t)&&t.tableKey===c.tableNodeKey?c.$updateTableTableSelection(t):!wt(t)&&wt(r)&&r.tableKey===c.tableNodeKey&&c.$updateTableTableSelection(null),!1):(c.hasHijackedSelectionStyles&&!e.isSelected()?function(e,t){t.$enableHighlightStyle(),Bt(t.table,t=>{const n=t.elem;t.highlighted=!1,Vt(e,t),n.getAttribute(\"style\")||n.removeAttribute(\"style\")})}(o,c):!c.hasHijackedSelectionStyles&&e.isSelected()&&Pt(o,c),!1)},L)),c.listenersToRemove.add(o.registerCommand(M,()=>{const t=S();if(!w(t)||!t.isCollapsed()||!Xt(t,e))return!1;const n=on(o,t,e);return!!n&&(nn(n,e),!0)},L)),c}function $t(e){return e[Tt]||null}function zt(e){let t=e;for(;null!=t;){const e=t.nodeName;if(\"TD\"===e||\"TH\"===e){const e=t._cell;return void 0===e?null:e}t=t.parentNode}return null}function Wt(e,t){if(!e.contains(t))return null;let n=null;for(let o=t;null!=o;o=o.parentNode){if(o===e)return n;const t=o.nodeName;\"TD\"!==t&&\"TH\"!==t||(n=o._cell||null)}return null}function Ht(e,t){const n=[],o={columns:0,domRows:n,rows:0};let r=Ft(e,t).querySelector(\"tr\"),l=0,s=0;for(n.length=0;null!=r;){const e=r.nodeName;if(\"TD\"===e||\"TH\"===e){const e={elem:r,hasBackgroundColor:\"\"!==r.style.backgroundColor,highlighted:!1,x:l,y:s};r._cell=e;let t=n[s];void 0===t&&(t=n[s]=[]),t[l]=e}else{const e=r.firstChild;if(null!=e){r=e;continue}}const t=r.nextSibling;if(null!=t){l++,r=t;continue}const o=r.parentNode;if(null!=o){const e=o.nextSibling;if(null==e)break;s++,l=0,r=e}}return o.columns=l+1,o.rows=s+1,o}function Lt(e,t,n){const o=new Set(n?n.getNodes():[]);Bt(t,(t,n)=>{const r=t.elem;o.has(n)?(t.highlighted=!0,jt(e,t)):(t.highlighted=!1,Vt(e,t),r.getAttribute(\"style\")||r.removeAttribute(\"style\"))})}function Bt(e,t){const{domRows:n}=e;for(let e=0;e<n.length;e++){const o=n[e];if(o)for(let n=0;n<o.length;n++){const r=o[n];if(!r)continue;const l=ee(r.elem);null!==l&&t(r,l,{x:n,y:e})}}}function Pt(e,t){t.$disableHighlightStyle(),Bt(t.table,t=>{t.highlighted=!0,jt(e,t)})}const Dt=(e,t,n,o,r)=>{const l=\"forward\"===r;switch(r){case\"backward\":case\"forward\":return n!==(l?e.table.columns-1:0)?qt(t.getCellNodeFromCordsOrThrow(n+(l?1:-1),o,e.table),l):o!==(l?e.table.rows-1:0)?qt(t.getCellNodeFromCordsOrThrow(l?0:e.table.columns-1,o+(l?1:-1),e.table),l):l?t.selectNext():t.selectPrevious(),!0;case\"up\":return 0!==o?qt(t.getCellNodeFromCordsOrThrow(n,o-1,e.table),!1):t.selectPrevious(),!0;case\"down\":return o!==e.table.rows-1?qt(t.getCellNodeFromCordsOrThrow(n,o+1,e.table),!0):t.selectNext(),!0;default:return!1}};function It(e,t){let n,o;if(t.startColumn===e.minColumn)n=\"minColumn\";else{if(t.startColumn+t.cell.__colSpan-1!==e.maxColumn)return null;n=\"maxColumn\"}if(t.startRow===e.minRow)o=\"minRow\";else{if(t.startRow+t.cell.__rowSpan-1!==e.maxRow)return null;o=\"maxRow\"}return[n,o]}function Ut([e,t]){return[\"minColumn\"===e?\"maxColumn\":\"minColumn\",\"minRow\"===t?\"maxRow\":\"minRow\"]}function Jt(e,t,[n,o]){const r=t[o],l=e[r];void 0===l&&Ke(250,o,String(r));const s=t[n],i=l[s];return void 0===i&&Ke(250,n,String(s)),i}function Yt(e,t,n,o,r){const l=pt(t,n,o),s=function(e,t){const{minColumn:n,maxColumn:o,minRow:r,maxRow:l}=t;let s=1,i=1,c=1,a=1;const u=e[r],h=e[l];for(let e=n;e<=o;e++)s=Math.max(s,u[e].cell.__rowSpan),a=Math.max(a,h[e].cell.__rowSpan);for(let t=r;t<=l;t++)i=Math.max(i,e[t][n].cell.__colSpan),c=Math.max(c,e[t][o].cell.__colSpan);return{bottomSpan:a,leftSpan:i,rightSpan:c,topSpan:s}}(t,l),{topSpan:i,leftSpan:c,bottomSpan:a,rightSpan:u}=s,h=function(e,t){const n=It(e,t);return null===n&&Ke(249,t.cell.getKey()),n}(l,n),[d,f]=Ut(h);let g=l[d],m=l[f];\"forward\"===r?g+=\"maxColumn\"===d?1:c:\"backward\"===r?g-=\"minColumn\"===d?1:u:\"down\"===r?m+=\"maxRow\"===f?1:i:\"up\"===r&&(m-=\"minRow\"===f?1:a);const p=t[m];if(void 0===p)return!1;const C=p[g];if(void 0===C)return!1;const[_,S]=function(e,t,n){const o=pt(e,t,n),r=It(o,t);if(r)return[Jt(e,o,r),Jt(e,o,Ut(r))];const l=It(o,n);if(l)return[Jt(e,o,Ut(l)),Jt(e,o,l)];const s=[\"minColumn\",\"minRow\"];return[Jt(e,o,s),Jt(e,o,Ut(s))]}(t,n,C),w=rn(e,_.cell),b=rn(e,S.cell);return e.$setAnchorCellForSelection(w),e.$setFocusCellForSelection(b,!0),!0}function Xt(e,t){if(w(e)||wt(e)){const n=t.isParentOf(e.anchor.getNode()),o=t.isParentOf(e.focus.getNode());return n&&o}return!1}function qt(e,t){t?e.selectStart():e.selectEnd()}function jt(t,n){const o=n.elem,r=t._config.theme;Oe(ee(o))||Ke(131),e(o,r.tableCellSelected)}function Vt(e,t){const n=t.elem;Oe(ee(n))||Ke(131);const r=e._config.theme;o(n,r.tableCellSelected)}function Gt(e){const t=n(e,Oe);return Oe(t)?t:null}function Qt(e){const t=n(e,mn);return mn(t)?t:null}function Zt(e,t,o,r,l,s,i){const c=re(o.focus,l?\"previous\":\"next\");if(le(c))return!1;let a=c;for(const e of se(c).iterNodeCarets(\"shadowRoot\")){if(!ie(e)||!v(e.origin))return!1;a=e}const u=a.getParentAtCaret();if(!Oe(u))return!1;const h=u,d=function(e){for(const t of se(e).iterNodeCarets(\"root\")){const{origin:n}=t;if(Oe(n)){if(he(t))return de(n,e.direction)}else if(!$e(n))break}return null}(ce(h,a.direction)),f=n(h,mn);if(!f||!f.is(s))return!1;const g=e.getElementByKey(h.getKey()),m=zt(g);if(!g||!m)return!1;const p=dn(e,f);if(i.table=p,d)if(\"extend\"===r){const t=zt(e.getElementByKey(d.origin.getKey()));if(!t)return!1;i.$setAnchorCellForSelection(m),i.$setFocusCellForSelection(t,!0)}else{const e=ue(d);ae(o.anchor,e),ae(o.focus,e)}else if(\"extend\"===r)i.$setAnchorCellForSelection(m),i.$setFocusCellForSelection(m,!0);else{const e=function(e){const t=fe(e);return he(t)?ue(t):e}(ce(f,c.direction));ae(o.anchor,e),ae(o.focus,e)}return tn(t),!0}function en(e,t,o,r,l){if((\"up\"===o||\"down\"===o)&&function(e){const t=e.getRootElement();if(!t)return!1;return t.hasAttribute(\"aria-controls\")&&\"typeahead-menu\"===t.getAttribute(\"aria-controls\")}(e))return!1;const s=S();if(!Xt(s,r)){if(w(s)){if(\"backward\"===o){if(s.focus.offset>0)return!1;const e=function(e){for(let t=e,n=e;null!==n;t=n,n=n.getParent())if(v(n)){if(n!==t&&n.getFirstChild()!==t)return null;if(!n.isInline())return n}return null}(s.focus.getNode());if(!e)return!1;const n=e.getPreviousSibling();return!!mn(n)&&(tn(t),t.shiftKey?s.focus.set(n.getParentOrThrow().getKey(),n.getIndexWithinParent(),\"element\"):n.selectEnd(),!0)}if(t.shiftKey&&(\"up\"===o||\"down\"===o)){const e=s.focus.getNode();if(!s.isCollapsed()&&(\"up\"===o&&!s.isBackward()||\"down\"===o&&s.isBackward())){let l=n(e,e=>mn(e));if(Oe(l)&&(l=n(l,mn)),l!==r)return!1;if(!l)return!1;const i=\"down\"===o?l.getNextSibling():l.getPreviousSibling();if(!i)return!1;let c=0;\"up\"===o&&v(i)&&(c=i.getChildrenSize());let a=i;if(\"up\"===o&&v(i)){const e=i.getLastChild();a=e||i,c=f(a)?a.getTextContentSize():0}const u=s.clone();return u.focus.set(a.getKey(),c,f(a)?\"text\":\"element\"),O(u),tn(t),!0}if(oe(e)){const e=\"up\"===o?s.getNodes()[s.getNodes().length-1]:s.getNodes()[0];if(e){if(null!==At(r,e)){const e=r.getFirstDescendant(),t=r.getLastDescendant();if(!e||!t)return!1;const[n]=mt(e),[o]=mt(t),s=r.getCordsFromCellNode(n,l.table),i=r.getCordsFromCellNode(o,l.table),c=r.getDOMCellFromCordsOrThrow(s.x,s.y,l.table),a=r.getDOMCellFromCordsOrThrow(i.x,i.y,l.table);return l.$setAnchorCellForSelection(c),l.$setFocusCellForSelection(a,!0),!0}}return!1}{let r=n(e,e=>v(e)&&!e.isInline());if(Oe(r)&&(r=n(r,mn)),!r)return!1;const i=\"down\"===o?r.getNextSibling():r.getPreviousSibling();if(mn(i)&&l.tableNodeKey===i.getKey()){const e=i.getFirstDescendant(),n=i.getLastDescendant();if(!e||!n)return!1;const[r]=mt(e),[l]=mt(n),c=s.clone();return c.focus.set((\"up\"===o?r:l).getKey(),\"up\"===o?0:l.getChildrenSize(),\"element\"),tn(t),O(c),!0}}}}return\"down\"===o&&an(e)&&l.setShouldCheckSelection(),!1}if(w(s)){if(\"backward\"===o||\"forward\"===o){return Zt(e,t,s,t.shiftKey?\"extend\":\"move\",\"backward\"===o,r,l)}if(s.isCollapsed()){const{anchor:i,focus:c}=s,a=n(i.getNode(),Oe),u=n(c.getNode(),Oe);if(!Oe(a)||!a.is(u))return!1;const h=Qt(a);if(h!==r&&null!=h){const n=Ft(h,e.getElementByKey(h.getKey()));if(null!=n)return l.table=Ht(h,n),en(e,t,o,h,l)}const d=e.getElementByKey(a.__key),f=e.getElementByKey(i.key);if(null==f||null==d)return!1;let g;if(\"element\"===i.type)g=f.getBoundingClientRect();else{const t=K(Ot(e));if(null===t||0===t.rangeCount)return!1;g=t.getRangeAt(0).getBoundingClientRect()}const m=\"up\"===o?a.getFirstChild():a.getLastChild();if(null==m)return!1;const p=e.getElementByKey(m.__key);if(null==p)return!1;const C=p.getBoundingClientRect();if(\"up\"===o?C.top>g.top-g.height:g.bottom+g.height>C.bottom){tn(t);const e=r.getCordsFromCellNode(a,l.table);if(!t.shiftKey)return Dt(l,r,e.x,e.y,o);{const t=r.getDOMCellFromCordsOrThrow(e.x,e.y,l.table);l.$setAnchorCellForSelection(t),l.$setFocusCellForSelection(t,!0)}return!0}}}else if(wt(s)){const{anchor:i,focus:c}=s,a=n(i.getNode(),Oe),u=n(c.getNode(),Oe),[h]=s.getNodes();mn(h)||Ke(251);const d=Ft(h,e.getElementByKey(h.getKey()));if(!Oe(a)||!Oe(u)||!mn(h)||null==d)return!1;l.$updateTableTableSelection(s);const f=Ht(h,d),g=r.getCordsFromCellNode(a,f),m=r.getDOMCellFromCordsOrThrow(g.x,g.y,f);if(l.$setAnchorCellForSelection(m),tn(t),t.shiftKey){const[e,t,n]=ft(r,a,u);return Yt(l,e,t,n,o)}return u.selectEnd(),!0}return!1}function tn(e){e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation()}function nn(e,t,n){const o=m();\"first\"===e?t.insertBefore(o):t.insertAfter(o),o.append(...n||[]),o.selectEnd()}function on(e,t,o){const r=o.getParent();if(!r)return;const l=K(Ot(e));if(!l)return;const s=l.anchorNode,i=e.getElementByKey(r.getKey()),c=Ft(o,e.getElementByKey(o.getKey()));if(!s||!i||!c||!i.contains(s)||c.contains(s))return;const a=n(t.anchor.getNode(),e=>Oe(e));if(!a)return;const u=n(a,e=>mn(e));if(!mn(u)||!u.is(o))return;const[h,d]=ft(o,a,a),f=h[0][0],g=h[h.length-1][h[0].length-1],{startRow:m,startColumn:p}=d,C=m===f.startRow&&p===f.startColumn,_=m===g.startRow&&p===g.startColumn;return C?\"first\":_?\"last\":void 0}function rn(e,t){const{tableNode:n}=e.$lookup(),o=n.getCordsFromCellNode(t,e.table);return n.getDOMCellFromCordsOrThrow(o.x,o.y,e.table)}function ln(e,t,n){return At(e,ee(t,n))}function sn(t,n,r){if(!n.theme.tableAlignment)return;const l=[],s=[];for(const e of[\"center\",\"right\"]){const t=n.theme.tableAlignment[e];t&&(e===r?s:l).push(t)}o(t,...l),e(t,...s)}const cn=new WeakSet;function an(e=F()){return cn.has(e)}function un(e,t){t?cn.add(e):cn.delete(e)}class hn extends u{__rowStriping;__frozenColumnCount;__frozenRowCount;__colWidths;static getType(){return\"table\"}getColWidths(){return this.getLatest().__colWidths}setColWidths(e){const t=this.getWritable();return t.__colWidths=e,t}static clone(e){return new hn(e.__key)}afterCloneFrom(e){super.afterCloneFrom(e),this.__colWidths=e.__colWidths,this.__rowStriping=e.__rowStriping,this.__frozenColumnCount=e.__frozenColumnCount,this.__frozenRowCount=e.__frozenRowCount}static importDOM(){return{table:e=>({conversion:fn,priority:1})}}static importJSON(e){return gn().updateFromJSON(e)}updateFromJSON(e){return super.updateFromJSON(e).setRowStriping(e.rowStriping||!1).setFrozenColumns(e.frozenColumnCount||0).setFrozenRows(e.frozenRowCount||0).setColWidths(e.colWidths)}constructor(e){super(e),this.__rowStriping=!1,this.__frozenColumnCount=0,this.__frozenRowCount=0,this.__colWidths=void 0}exportJSON(){return{...super.exportJSON(),colWidths:this.getColWidths(),frozenColumnCount:this.__frozenColumnCount?this.__frozenColumnCount:void 0,frozenRowCount:this.__frozenRowCount?this.__frozenRowCount:void 0,rowStriping:this.__rowStriping?this.__rowStriping:void 0}}extractWithChild(e,t,n){return\"html\"===n}getDOMSlot(e){const t=Rt(e)?e:e.querySelector(\"table\");return Rt(t)||Ke(229),super.getDOMSlot(e).withElement(t).withAfter(t.querySelector(\"colgroup\"))}createDOM(t,n){const o=document.createElement(\"table\");this.__style&&(o.style.cssText=this.__style);const r=document.createElement(\"colgroup\");if(o.appendChild(r),ge(r),e(o,t.theme.table),this.updateTableElement(null,o,t),an(n)){const n=document.createElement(\"div\"),r=t.theme.tableScrollableWrapper;return r?e(n,r):n.style.cssText=\"overflow-x: auto;\",n.appendChild(o),this.updateTableWrapper(null,n,o,t),n}return o}updateTableWrapper(t,n,r,l){this.__frozenColumnCount!==(t?t.__frozenColumnCount:0)&&function(t,n,r,l){l>0?(e(t,r.theme.tableFrozenColumn),n.setAttribute(\"data-lexical-frozen-column\",\"true\")):(o(t,r.theme.tableFrozenColumn),n.removeAttribute(\"data-lexical-frozen-column\"))}(n,r,l,this.__frozenColumnCount),this.__frozenRowCount!==(t?t.__frozenRowCount:0)&&function(t,n,r,l){l>0?(e(t,r.theme.tableFrozenRow),n.setAttribute(\"data-lexical-frozen-row\",\"true\")):(o(t,r.theme.tableFrozenRow),n.removeAttribute(\"data-lexical-frozen-row\"))}(n,r,l,this.__frozenRowCount)}updateTableElement(t,n,r){this.__style!==(t?t.__style:\"\")&&(n.style.cssText=this.__style),this.__rowStriping!==(!!t&&t.__rowStriping)&&function(t,n,r){r?(e(t,n.theme.tableRowStriping),t.setAttribute(\"data-lexical-row-striping\",\"true\")):(o(t,n.theme.tableRowStriping),t.removeAttribute(\"data-lexical-row-striping\"))}(n,r,this.__rowStriping),function(e,t,n,o){const r=e.querySelector(\"colgroup\");if(!r)return;const l=[];for(let e=0;e<n;e++){const t=document.createElement(\"col\"),n=o&&o[e];n&&(t.style.width=`${n}px`),l.push(t)}r.replaceChildren(...l)}(n,0,this.getColumnCount(),this.getColWidths()),sn(n,r,this.getFormatType())}updateDOM(e,t,n){const o=this.getDOMSlot(t).element;return t===o===an()||(l(r=t)&&\"DIV\"===r.nodeName&&this.updateTableWrapper(e,t,o,n),this.updateTableElement(e,o,n),!1);var r}exportDOM(e){const t=super.exportDOM(e),{element:n}=t;return{after:n=>{if(t.after&&(n=t.after(n)),!Rt(n)&&l(n)&&(n=n.querySelector(\"table\")),!Rt(n))return null;sn(n,e._config,this.getFormatType());const[o]=gt(this,null,null),r=new Map;for(const e of o)for(const t of e){const e=t.cell.getKey();r.has(e)||r.set(e,{colSpan:t.cell.getColSpan(),startColumn:t.startColumn})}const s=new Set;for(const e of n.querySelectorAll(\":scope > tr > [data-temporary-table-cell-lexical-key]\")){const t=e.getAttribute(\"data-temporary-table-cell-lexical-key\");if(t){const n=r.get(t);if(e.removeAttribute(\"data-temporary-table-cell-lexical-key\"),n){r.delete(t);for(let e=0;e<n.colSpan;e++)s.add(e+n.startColumn)}}}const i=n.querySelector(\":scope > colgroup\");if(i){const e=Array.from(n.querySelectorAll(\":scope > colgroup > col\")).filter((e,t)=>s.has(t));i.replaceChildren(...e)}const c=n.querySelectorAll(\":scope > tr\");if(c.length>0){const e=document.createElement(\"tbody\");for(const t of c)e.appendChild(t);n.append(e)}return n},element:!Rt(n)&&l(n)?n.querySelector(\"table\"):n}}canBeEmpty(){return!1}isShadowRoot(){return!0}getCordsFromCellNode(e,t){const{rows:n,domRows:o}=t;for(let t=0;t<n;t++){const n=o[t];if(null!=n)for(let o=0;o<n.length;o++){const r=n[o];if(null==r)continue;const{elem:l}=r,s=ln(this,l);if(null!==s&&e.is(s))return{x:o,y:t}}}throw new Error(\"Cell not found in table.\")}getDOMCellFromCords(e,t,n){const{domRows:o}=n,r=o[t];if(null==r)return null;const l=r[e<r.length?e:r.length-1];return null==l?null:l}getDOMCellFromCordsOrThrow(e,t,n){const o=this.getDOMCellFromCords(e,t,n);if(!o)throw new Error(\"Cell not found at cords.\");return o}getCellNodeFromCords(e,t,n){const o=this.getDOMCellFromCords(e,t,n);if(null==o)return null;const r=ee(o.elem);return Oe(r)?r:null}getCellNodeFromCordsOrThrow(e,t,n){const o=this.getCellNodeFromCords(e,t,n);if(!o)throw new Error(\"Node at cords not TableCellNode.\");return o}getRowStriping(){return Boolean(this.getLatest().__rowStriping)}setRowStriping(e){const t=this.getWritable();return t.__rowStriping=e,t}setFrozenColumns(e){const t=this.getWritable();return t.__frozenColumnCount=e,t}getFrozenColumns(){return this.getLatest().__frozenColumnCount}setFrozenRows(e){const t=this.getWritable();return t.__frozenRowCount=e,t}getFrozenRows(){return this.getLatest().__frozenRowCount}canSelectBefore(){return!0}canIndent(){return!1}getColumnCount(){const e=this.getFirstChild();if(!e)return 0;let t=0;return e.getChildren().forEach(e=>{Oe(e)&&(t+=e.getColSpan())}),t}}function dn(e,t){const n=e.getElementByKey(t.getKey());return null===n&&Ke(230),Ht(t,n)}function fn(e){const n=gn();e.hasAttribute(\"data-lexical-row-striping\")&&n.setRowStriping(!0),e.hasAttribute(\"data-lexical-frozen-column\")&&n.setFrozenColumns(1),e.hasAttribute(\"data-lexical-frozen-row\")&&n.setFrozenRows(1);const o=e.querySelector(\":scope > colgroup\");if(o){let e=[];for(const t of o.querySelectorAll(\":scope > col\")){let n=t.style.width||\"\";if(!Ne.test(n)&&(n=t.getAttribute(\"width\")||\"\",!/^\\d+$/.test(n))){e=void 0;break}e.push(parseFloat(n))}e&&n.setColWidths(e)}return{after:e=>t(e,$e),node:n}}function gn(){return p(new hn)}function mn(e){return e instanceof hn}function pn({rows:e,columns:t,includeHeaders:n}){const o=S()||Z();if(!o||!w(o))return!1;if(Qt(o.anchor.getNode()))return!1;const r=Le(Number(e),Number(t),n);c(r);const l=r.getFirstDescendant();return f(l)&&l.select(),!0}function Cn(e){$e(e.getParent())?e.isEmpty()&&e.append(m()):e.remove()}function _n(e){mn(e.getParent())?a(e,Oe):e.remove()}function Sn(e){a(e,$e);const[t]=gt(e,null,null),n=t.reduce((e,t)=>Math.max(e,t.length),0),o=e.getChildren();for(let e=0;e<t.length;++e){const r=o[e];if(!r)continue;$e(r)||Ke(254,r.constructor.name,r.getType());const l=t[e].reduce((e,t)=>t?1+e:e,0);if(l!==n)for(let e=l;e<n;++e){const e=Fe();e.append(m()),r.append(e)}}}function wn(e){if(e.detail<3||!ne(e.target))return!1;const t=ee(e.target);if(null===t)return!1;const o=n(t,e=>v(e)&&!e.isInline());if(null===o)return!1;return!!Oe(o.getParent())&&(o.select(0),!0)}function bn(e){return e.registerNodeTransform(xe,e=>{if(e.getColSpan()>1||e.getRowSpan()>1){const[,,t]=mt(e),[n]=ft(t,e,e),o=n.length,r=n[0].length;let l=t.getFirstChild();$e(l)||Ke(175);const i=[];for(let e=0;e<o;e++){0!==e&&(l=l.getNextSibling(),$e(l)||Ke(175));let t=null;for(let o=0;o<r;o++){const r=n[e][o],c=r.cell;if(r.startRow===e&&r.startColumn===o)t=c,i.push(c);else if(c.getColSpan()>1||c.getRowSpan()>1){Oe(c)||Ke(176);const e=Fe(c.__headerState);null!==t?t.insertAfter(e):s(l,e)}}}for(const e of i)e.setColSpan(1),e.setRowSpan(1)}})}function yn(e,t=!0){const n=new Map,o=(o,r,l)=>{const s=Ft(o,l),i=Mt(o,s,e,t);n.set(r,[i,s])},r=e.registerMutationListener(hn,t=>{e.getEditorState().read(()=>{for(const[e,r]of t){const t=n.get(e);if(\"created\"===r||\"updated\"===r){const{tableNode:r,tableElement:l}=vt(e);void 0===t?o(r,e,l):l!==t[1]&&(t[0].removeListeners(),n.delete(e),o(r,e,l))}else\"destroyed\"===r&&void 0!==t&&(t[0].removeListeners(),n.delete(e))}},{editor:e})},{skipInitialization:!1});return()=>{r();for(const[,[e]]of n)e.removeListeners()}}function Nn(e){return e.hasNodes([hn])||Ke(255),i(e.registerCommand(Ae,pn,me),e.registerCommand(Q,({nodes:t,selection:n},o)=>{if(e!==o||!w(n))return!1;return null!==Qt(n.anchor.getNode())&&t.some(mn)},me),e.registerCommand(pe,wn,me),e.registerNodeTransform(hn,Sn),e.registerNodeTransform(Ee,_n),e.registerNodeTransform(xe,Cn))}const vn=Ce({build:(e,t,n)=>we(t),config:_e({hasCellBackgroundColor:!0,hasCellMerge:!0,hasHorizontalScroll:!0,hasTabHandler:!0}),name:\"@lexical/table/Table\",nodes:[hn,Ee,xe],register(e,t,n){const o=n.getOutput();return i(Se(()=>{const t=o.hasHorizontalScroll.value;an(e)!==t&&(un(e,t),e.registerNodeTransform(hn,()=>{})())}),Nn(e),Se(()=>yn(e,o.hasTabHandler.value)),Se(()=>o.hasCellMerge.value?void 0:bn(e)),Se(()=>o.hasCellBackgroundColor.value?void 0:e.registerNodeTransform(xe,e=>{null!==e.getBackgroundColor()&&e.setBackgroundColor(null)})))}});export{ft as $computeTableMap,gt as $computeTableMapSkipCellCheck,Fe as $createTableCellNode,gn as $createTableNode,Le as $createTableNodeWithDimensions,Me as $createTableRowNode,bt as $createTableSelection,yt as $createTableSelectionFrom,nt as $deleteTableColumn,lt as $deleteTableColumnAtSelection,st as $deleteTableColumn__EXPERIMENTAL,ot as $deleteTableRowAtSelection,rt as $deleteTableRow__EXPERIMENTAL,Gt as $findCellNode,Qt as $findTableNode,dn as $getElementForTableNode,mt as $getNodeTriplet,vt as $getTableAndElementByKey,Be as $getTableCellNodeFromLexicalNode,Ct as $getTableCellNodeRect,Ue as $getTableColumnIndexFromTableCellNode,De as $getTableNodeFromLexicalNodeOrThrow,Ie as $getTableRowIndexFromTableCellNode,Pe as $getTableRowNodeFromTableCellNodeOrThrow,Qe as $insertTableColumn,Ze as $insertTableColumnAtSelection,et as $insertTableColumn__EXPERIMENTAL,Xe as $insertTableRow,je as $insertTableRowAtSelection,Ve as $insertTableRow__EXPERIMENTAL,an as $isScrollableTablesActive,Oe as $isTableCellNode,mn as $isTableNode,$e as $isTableRowNode,wt as $isTableSelection,at as $mergeCells,Ye as $removeTableRowAtIndex,ht as $unmergeCell,Ae as INSERT_TABLE_COMMAND,ve as TableCellHeaderStates,xe as TableCellNode,vn as TableExtension,hn as TableNode,xt as TableObserver,Ee as TableRowNode,Mt as applyTableHandlers,zt as getDOMCellFromTarget,Ft as getTableElement,$t as getTableObserverFromTableElement,bn as registerTableCellUnmergeTransform,Nn as registerTablePlugin,yn as registerTableSelectionObserver,un as setScrollableTablesActive};\n"],"names":["Ne","ve","xe","u","Re","Fe","n","o","t","Te","e","h","l","s","c","a","p","g","r","d","f","m","Oe","Ae","C","Ke","Ee","ke","Me","$e","ze","We","He","Le","gn","_","Be","Pe","De","mn","Ie","Ue","qe","je","S","w","wt","mt","ft","Ge","Ze","tt","ct","i","it","lt","at","gt","ut","b","dt","pt","_t","St","N","y","R","v","x","Nt","T","bt","yt","vt","F","Ft","xt","Ht","Lt","O","A","K","ln","E","k","M","Tt","Rt","Ot","At","Kt","$","z","W","H","Et","P","D","I","kt","U","J","Mt","$t","ne","zt","Z","Xt","rn","tn","Wt","en","L","B","Y","be","ye","X","q","j","on","nn","V","Gt","Qt","G","Q","Pt","ee","te","Bt","Vt","jt","Dt","qt","It","Ut","Jt","Yt","Zt","re","le","se","ie","he","de","ce","dn","ue","ae","fe","oe","an","sn","cn","un","hn","fn","ge","pn","Cn","_n","Sn","wn","bn","yn","Nn","me","pe"],"mappings":"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","x_google_ignoreList":[0]}
|