@lexical/rich-text 0.31.1-nightly.20250508.0 → 0.31.1

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.
@@ -425,6 +425,23 @@ function $isSelectionAtEndOfRoot(selection) {
425
425
  const focus = selection.focus;
426
426
  return focus.key === 'root' && focus.offset === lexical.$getRoot().getChildrenSize();
427
427
  }
428
+ function $isSelectionCollapsedAtFrontOfIndentedBlock(selection) {
429
+ if (!selection.isCollapsed()) {
430
+ return false;
431
+ }
432
+ const {
433
+ anchor
434
+ } = selection;
435
+ if (anchor.offset !== 0) {
436
+ return false;
437
+ }
438
+ const anchorNode = anchor.getNode();
439
+ if (lexical.$isRootNode(anchorNode)) {
440
+ return false;
441
+ }
442
+ const element = utils.$getNearestBlockElementAncestorOrThrow(anchorNode);
443
+ return element.getIndent() > 0 && (element.is(anchorNode) || anchorNode.is(element.getFirstDescendant()));
444
+ }
428
445
 
429
446
  /**
430
447
  * Resets the capitalization of the selection to default.
@@ -640,18 +657,10 @@ function registerRichText(editor) {
640
657
  }
641
658
  const selection = lexical.$getSelection();
642
659
  if (lexical.$isRangeSelection(selection)) {
643
- const {
644
- anchor
645
- } = selection;
646
- const anchorNode = anchor.getNode();
647
- if (selection.isCollapsed() && anchor.offset === 0 && !lexical.$isRootNode(anchorNode)) {
648
- const element = utils.$getNearestBlockElementAncestorOrThrow(anchorNode);
649
- if (element.getIndent() > 0) {
650
- event.preventDefault();
651
- return editor.dispatchCommand(lexical.OUTDENT_CONTENT_COMMAND, undefined);
652
- }
660
+ if ($isSelectionCollapsedAtFrontOfIndentedBlock(selection)) {
661
+ event.preventDefault();
662
+ return editor.dispatchCommand(lexical.OUTDENT_CONTENT_COMMAND, undefined);
653
663
  }
654
-
655
664
  // Exception handling for iOS native behavior instead of Lexical's behavior when using Korean on iOS devices.
656
665
  // more details - https://github.com/facebook/lexical/issues/5841
657
666
  if (IS_IOS && navigator.language === 'ko-KR') {
@@ -9,7 +9,7 @@
9
9
  import { $insertDataTransferForRichText, copyToClipboard } from '@lexical/clipboard';
10
10
  import { $shouldOverrideDefaultCharacterSelection, $moveCharacter } from '@lexical/selection';
11
11
  import { addClassNamesToElement, isHTMLElement, objectKlassEquals, mergeRegister, $findMatchingParent, $getNearestBlockElementAncestorOrThrow } from '@lexical/utils';
12
- import { createCommand, ElementNode, $createParagraphNode, $applyNodeReplacement, setNodeIndentFromDOM, CLICK_COMMAND, $getSelection, $isNodeSelection, DELETE_CHARACTER_COMMAND, $isRangeSelection, COMMAND_PRIORITY_EDITOR, DELETE_WORD_COMMAND, DELETE_LINE_COMMAND, CONTROLLED_TEXT_INSERTION_COMMAND, REMOVE_TEXT_COMMAND, FORMAT_TEXT_COMMAND, FORMAT_ELEMENT_COMMAND, $isElementNode, INSERT_LINE_BREAK_COMMAND, INSERT_PARAGRAPH_COMMAND, INSERT_TAB_COMMAND, $insertNodes, $createTabNode, INDENT_CONTENT_COMMAND, OUTDENT_CONTENT_COMMAND, KEY_ARROW_UP_COMMAND, $getAdjacentNode, $isDecoratorNode, KEY_ARROW_DOWN_COMMAND, KEY_ARROW_LEFT_COMMAND, KEY_ARROW_RIGHT_COMMAND, KEY_BACKSPACE_COMMAND, $isRootNode, KEY_DELETE_COMMAND, KEY_ENTER_COMMAND, KEY_ESCAPE_COMMAND, DROP_COMMAND, $getNearestNodeFromDOMNode, $createRangeSelection, $isTextNode, $normalizeSelection__EXPERIMENTAL, $setSelection, DRAGSTART_COMMAND, DRAGOVER_COMMAND, SELECT_ALL_COMMAND, $selectAll, COPY_COMMAND, CUT_COMMAND, PASTE_COMMAND, isDOMNode, isSelectionCapturedInDecoratorInput, KEY_SPACE_COMMAND, KEY_TAB_COMMAND, PASTE_TAG, $getRoot } from 'lexical';
12
+ import { createCommand, ElementNode, $createParagraphNode, $applyNodeReplacement, setNodeIndentFromDOM, CLICK_COMMAND, $getSelection, $isNodeSelection, DELETE_CHARACTER_COMMAND, $isRangeSelection, COMMAND_PRIORITY_EDITOR, DELETE_WORD_COMMAND, DELETE_LINE_COMMAND, CONTROLLED_TEXT_INSERTION_COMMAND, REMOVE_TEXT_COMMAND, FORMAT_TEXT_COMMAND, FORMAT_ELEMENT_COMMAND, $isElementNode, INSERT_LINE_BREAK_COMMAND, INSERT_PARAGRAPH_COMMAND, INSERT_TAB_COMMAND, $insertNodes, $createTabNode, INDENT_CONTENT_COMMAND, OUTDENT_CONTENT_COMMAND, KEY_ARROW_UP_COMMAND, $getAdjacentNode, $isDecoratorNode, KEY_ARROW_DOWN_COMMAND, KEY_ARROW_LEFT_COMMAND, KEY_ARROW_RIGHT_COMMAND, KEY_BACKSPACE_COMMAND, KEY_DELETE_COMMAND, KEY_ENTER_COMMAND, KEY_ESCAPE_COMMAND, DROP_COMMAND, $getNearestNodeFromDOMNode, $createRangeSelection, $isTextNode, $normalizeSelection__EXPERIMENTAL, $setSelection, DRAGSTART_COMMAND, DRAGOVER_COMMAND, SELECT_ALL_COMMAND, $selectAll, COPY_COMMAND, CUT_COMMAND, PASTE_COMMAND, isDOMNode, isSelectionCapturedInDecoratorInput, KEY_SPACE_COMMAND, KEY_TAB_COMMAND, PASTE_TAG, $getRoot, $isRootNode } from 'lexical';
13
13
 
14
14
  /**
15
15
  * Copyright (c) Meta Platforms, Inc. and affiliates.
@@ -423,6 +423,23 @@ function $isSelectionAtEndOfRoot(selection) {
423
423
  const focus = selection.focus;
424
424
  return focus.key === 'root' && focus.offset === $getRoot().getChildrenSize();
425
425
  }
426
+ function $isSelectionCollapsedAtFrontOfIndentedBlock(selection) {
427
+ if (!selection.isCollapsed()) {
428
+ return false;
429
+ }
430
+ const {
431
+ anchor
432
+ } = selection;
433
+ if (anchor.offset !== 0) {
434
+ return false;
435
+ }
436
+ const anchorNode = anchor.getNode();
437
+ if ($isRootNode(anchorNode)) {
438
+ return false;
439
+ }
440
+ const element = $getNearestBlockElementAncestorOrThrow(anchorNode);
441
+ return element.getIndent() > 0 && (element.is(anchorNode) || anchorNode.is(element.getFirstDescendant()));
442
+ }
426
443
 
427
444
  /**
428
445
  * Resets the capitalization of the selection to default.
@@ -638,18 +655,10 @@ function registerRichText(editor) {
638
655
  }
639
656
  const selection = $getSelection();
640
657
  if ($isRangeSelection(selection)) {
641
- const {
642
- anchor
643
- } = selection;
644
- const anchorNode = anchor.getNode();
645
- if (selection.isCollapsed() && anchor.offset === 0 && !$isRootNode(anchorNode)) {
646
- const element = $getNearestBlockElementAncestorOrThrow(anchorNode);
647
- if (element.getIndent() > 0) {
648
- event.preventDefault();
649
- return editor.dispatchCommand(OUTDENT_CONTENT_COMMAND, undefined);
650
- }
658
+ if ($isSelectionCollapsedAtFrontOfIndentedBlock(selection)) {
659
+ event.preventDefault();
660
+ return editor.dispatchCommand(OUTDENT_CONTENT_COMMAND, undefined);
651
661
  }
652
-
653
662
  // Exception handling for iOS native behavior instead of Lexical's behavior when using Korean on iOS devices.
654
663
  // more details - https://github.com/facebook/lexical/issues/5841
655
664
  if (IS_IOS && navigator.language === 'ko-KR') {
@@ -6,4 +6,4 @@
6
6
  *
7
7
  */
8
8
 
9
- "use strict";var e=require("@lexical/clipboard"),t=require("@lexical/selection"),n=require("@lexical/utils"),r=require("lexical");function o(e,t){if(void 0!==document.caretRangeFromPoint){const n=document.caretRangeFromPoint(e,t);return null===n?null:{node:n.startContainer,offset:n.startOffset}}if("undefined"!==document.caretPositionFromPoint){const n=document.caretPositionFromPoint(e,t);return null===n?null:{node:n.offsetNode,offset:n.offset}}return null}const i="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,s=i&&"documentMode"in document?document.documentMode:null,a=!(!i||!("InputEvent"in window)||s)&&"getTargetRanges"in new window.InputEvent("input"),c=i&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent),l=i&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,u=i&&/^(?=.*Chrome).*/i.test(navigator.userAgent),d=i&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&!u,g=r.createCommand("DRAG_DROP_PASTE_FILE");class O extends r.ElementNode{static getType(){return"quote"}static clone(e){return new O(e.__key)}createDOM(e){const t=document.createElement("blockquote");return n.addClassNamesToElement(t,e.theme.quote),t}updateDOM(e,t){return!1}static importDOM(){return{blockquote:e=>({conversion:M,priority:0})}}exportDOM(e){const{element:t}=super.exportDOM(e);if(n.isHTMLElement(t)){this.isEmpty()&&t.append(document.createElement("br"));const e=this.getFormatType();t.style.textAlign=e;const n=this.getDirection();n&&(t.dir=n)}return{element:t}}static importJSON(e){return R().updateFromJSON(e)}insertNewAfter(e,t){const n=r.$createParagraphNode(),o=this.getDirection();return n.setDirection(o),this.insertAfter(n,t),n}collapseAtStart(){const e=r.$createParagraphNode();return this.getChildren().forEach((t=>e.append(t))),this.replace(e),!0}canMergeWhenEmpty(){return!0}}function R(){return r.$applyNodeReplacement(new O)}class N extends r.ElementNode{static getType(){return"heading"}static clone(e){return new N(e.__tag,e.__key)}constructor(e,t){super(t),this.__tag=e}getTag(){return this.__tag}setTag(e){const t=this.getWritable();return this.__tag=e,t}createDOM(e){const t=this.__tag,r=document.createElement(t),o=e.theme.heading;if(void 0!==o){const e=o[t];n.addClassNamesToElement(r,e)}return r}updateDOM(e,t,n){return e.__tag!==this.__tag}static importDOM(){return{h1:e=>({conversion:m,priority:0}),h2:e=>({conversion:m,priority:0}),h3:e=>({conversion:m,priority:0}),h4:e=>({conversion:m,priority:0}),h5:e=>({conversion:m,priority:0}),h6:e=>({conversion:m,priority:0}),p:e=>{const t=e.firstChild;return null!==t&&D(t)?{conversion:()=>({node:null}),priority:3}:null},span:e=>D(e)?{conversion:e=>({node:_("h1")}),priority:3}:null}}exportDOM(e){const{element:t}=super.exportDOM(e);if(n.isHTMLElement(t)){this.isEmpty()&&t.append(document.createElement("br"));const e=this.getFormatType();t.style.textAlign=e;const n=this.getDirection();n&&(t.dir=n)}return{element:t}}static importJSON(e){return _(e.tag).updateFromJSON(e)}updateFromJSON(e){return super.updateFromJSON(e).setTag(e.tag)}exportJSON(){return{...super.exportJSON(),tag:this.getTag()}}insertNewAfter(e,t=!0){const n=e?e.anchor.offset:0,o=this.getLastDescendant(),i=!o||e&&e.anchor.key===o.getKey()&&n===o.getTextContentSize()||!e?r.$createParagraphNode():_(this.getTag()),s=this.getDirection();if(i.setDirection(s),this.insertAfter(i,t),0===n&&!this.isEmpty()&&e){const e=r.$createParagraphNode();e.select(),this.replace(e,!0)}return i}collapseAtStart(){const e=this.isEmpty()?r.$createParagraphNode():_(this.getTag());return this.getChildren().forEach((t=>e.append(t))),this.replace(e),!0}extractWithChild(){return!0}}function D(e){return"span"===e.nodeName.toLowerCase()&&"26pt"===e.style.fontSize}function m(e){const t=e.nodeName.toLowerCase();let n=null;return"h1"!==t&&"h2"!==t&&"h3"!==t&&"h4"!==t&&"h5"!==t&&"h6"!==t||(n=_(t),null!==e.style&&(r.setNodeIndentFromDOM(e,n),n.setFormat(e.style.textAlign))),{node:n}}function M(e){const t=R();return null!==e.style&&(t.setFormat(e.style.textAlign),r.setNodeIndentFromDOM(e,t)),{node:t}}function _(e="h1"){return r.$applyNodeReplacement(new N(e))}function C(e){let t=null;if(n.objectKlassEquals(e,DragEvent)?t=e.dataTransfer:n.objectKlassEquals(e,ClipboardEvent)&&(t=e.clipboardData),null===t)return[!1,[],!1];const r=t.types,o=r.includes("Files"),i=r.includes("text/html")||r.includes("text/plain");return[o,Array.from(t.files),i]}function T(e){const t=r.$getSelection();if(!r.$isRangeSelection(t))return!1;const o=new Set,i=t.getNodes();for(let t=0;t<i.length;t++){const s=i[t],a=s.getKey();if(o.has(a))continue;const c=n.$findMatchingParent(s,(e=>r.$isElementNode(e)&&!e.isInline()));if(null===c)continue;const l=c.getKey();c.canIndent()&&!o.has(l)&&(o.add(l),e(c))}return o.size>0}function f(e){const t=r.$getNearestNodeFromDOMNode(e);return r.$isDecoratorNode(t)}function E(e){for(const t of["lowercase","uppercase","capitalize"])e.hasFormat(t)&&e.toggleFormat(t)}exports.$createHeadingNode=_,exports.$createQuoteNode=R,exports.$isHeadingNode=function(e){return e instanceof N},exports.$isQuoteNode=function(e){return e instanceof O},exports.DRAG_DROP_PASTE=g,exports.HeadingNode=N,exports.QuoteNode=O,exports.eventFiles=C,exports.registerRichText=function(i){const s=n.mergeRegister(i.registerCommand(r.CLICK_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isNodeSelection(t)&&(t.clear(),!0)}),0),i.registerCommand(r.DELETE_CHARACTER_COMMAND,(e=>{const t=r.$getSelection();return r.$isRangeSelection(t)?(t.deleteCharacter(e),!0):!!r.$isNodeSelection(t)&&(t.deleteNodes(),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DELETE_WORD_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isRangeSelection(t)&&(t.deleteWord(e),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DELETE_LINE_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isRangeSelection(t)&&(t.deleteLine(e),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.CONTROLLED_TEXT_INSERTION_COMMAND,(t=>{const n=r.$getSelection();if("string"==typeof t)null!==n&&n.insertText(t);else{if(null===n)return!1;const o=t.dataTransfer;if(null!=o)e.$insertDataTransferForRichText(o,n,i);else if(r.$isRangeSelection(n)){const e=t.data;return e&&n.insertText(e),!0}}return!0}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.REMOVE_TEXT_COMMAND,(()=>{const e=r.$getSelection();return!!r.$isRangeSelection(e)&&(e.removeText(),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.FORMAT_TEXT_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isRangeSelection(t)&&(t.formatText(e),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.FORMAT_ELEMENT_COMMAND,(e=>{const t=r.$getSelection();if(!r.$isRangeSelection(t)&&!r.$isNodeSelection(t))return!1;const o=t.getNodes();for(const t of o){const o=n.$findMatchingParent(t,(e=>r.$isElementNode(e)&&!e.isInline()));null!==o&&o.setFormat(e)}return!0}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.INSERT_LINE_BREAK_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isRangeSelection(t)&&(t.insertLineBreak(e),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.INSERT_PARAGRAPH_COMMAND,(()=>{const e=r.$getSelection();return!!r.$isRangeSelection(e)&&(e.insertParagraph(),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.INSERT_TAB_COMMAND,(()=>(r.$insertNodes([r.$createTabNode()]),!0)),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.INDENT_CONTENT_COMMAND,(()=>T((e=>{const t=e.getIndent();e.setIndent(t+1)}))),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.OUTDENT_CONTENT_COMMAND,(()=>T((e=>{const t=e.getIndent();t>0&&e.setIndent(Math.max(0,t-1))}))),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ARROW_UP_COMMAND,(e=>{const t=r.$getSelection();if(r.$isNodeSelection(t)){const e=t.getNodes();if(e.length>0)return e[0].selectPrevious(),!0}else if(r.$isRangeSelection(t)){const n=r.$getAdjacentNode(t.focus,!0);if(!e.shiftKey&&r.$isDecoratorNode(n)&&!n.isIsolated()&&!n.isInline())return n.selectPrevious(),e.preventDefault(),!0}return!1}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ARROW_DOWN_COMMAND,(e=>{const t=r.$getSelection();if(r.$isNodeSelection(t)){const e=t.getNodes();if(e.length>0)return e[0].selectNext(0,0),!0}else if(r.$isRangeSelection(t)){if(function(e){const t=e.focus;return"root"===t.key&&t.offset===r.$getRoot().getChildrenSize()}(t))return e.preventDefault(),!0;const n=r.$getAdjacentNode(t.focus,!1);if(!e.shiftKey&&r.$isDecoratorNode(n)&&!n.isIsolated()&&!n.isInline())return n.selectNext(),e.preventDefault(),!0}return!1}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ARROW_LEFT_COMMAND,(e=>{const n=r.$getSelection();if(r.$isNodeSelection(n)){const t=n.getNodes();if(t.length>0)return e.preventDefault(),t[0].selectPrevious(),!0}if(!r.$isRangeSelection(n))return!1;if(t.$shouldOverrideDefaultCharacterSelection(n,!0)){const r=e.shiftKey;return e.preventDefault(),t.$moveCharacter(n,r,!0),!0}return!1}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ARROW_RIGHT_COMMAND,(e=>{const n=r.$getSelection();if(r.$isNodeSelection(n)){const t=n.getNodes();if(t.length>0)return e.preventDefault(),t[0].selectNext(0,0),!0}if(!r.$isRangeSelection(n))return!1;const o=e.shiftKey;return!!t.$shouldOverrideDefaultCharacterSelection(n,!1)&&(e.preventDefault(),t.$moveCharacter(n,o,!1),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_BACKSPACE_COMMAND,(e=>{if(f(e.target))return!1;const t=r.$getSelection();if(r.$isRangeSelection(t)){const{anchor:o}=t,s=o.getNode();if(t.isCollapsed()&&0===o.offset&&!r.$isRootNode(s)){if(n.$getNearestBlockElementAncestorOrThrow(s).getIndent()>0)return e.preventDefault(),i.dispatchCommand(r.OUTDENT_CONTENT_COMMAND,void 0)}if(l&&"ko-KR"===navigator.language)return!1}else if(!r.$isNodeSelection(t))return!1;return e.preventDefault(),i.dispatchCommand(r.DELETE_CHARACTER_COMMAND,!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_DELETE_COMMAND,(e=>{if(f(e.target))return!1;const t=r.$getSelection();return!(!r.$isRangeSelection(t)&&!r.$isNodeSelection(t))&&(e.preventDefault(),i.dispatchCommand(r.DELETE_CHARACTER_COMMAND,!1))}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ENTER_COMMAND,(e=>{const t=r.$getSelection();if(!r.$isRangeSelection(t))return!1;if(E(t),null!==e){if((l||c||d)&&a)return!1;if(e.preventDefault(),e.shiftKey)return i.dispatchCommand(r.INSERT_LINE_BREAK_COMMAND,!1)}return i.dispatchCommand(r.INSERT_PARAGRAPH_COMMAND,void 0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ESCAPE_COMMAND,(()=>{const e=r.$getSelection();return!!r.$isRangeSelection(e)&&(i.blur(),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DROP_COMMAND,(e=>{const[,t]=C(e);if(t.length>0){const n=o(e.clientX,e.clientY);if(null!==n){const{offset:e,node:o}=n,s=r.$getNearestNodeFromDOMNode(o);if(null!==s){const t=r.$createRangeSelection();if(r.$isTextNode(s))t.anchor.set(s.getKey(),e,"text"),t.focus.set(s.getKey(),e,"text");else{const e=s.getParentOrThrow().getKey(),n=s.getIndexWithinParent()+1;t.anchor.set(e,n,"element"),t.focus.set(e,n,"element")}const n=r.$normalizeSelection__EXPERIMENTAL(t);r.$setSelection(n)}i.dispatchCommand(g,t)}return e.preventDefault(),!0}const n=r.$getSelection();return!!r.$isRangeSelection(n)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DRAGSTART_COMMAND,(e=>{const[t]=C(e),n=r.$getSelection();return!(t&&!r.$isRangeSelection(n))}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DRAGOVER_COMMAND,(e=>{const[t]=C(e),n=r.$getSelection();if(t&&!r.$isRangeSelection(n))return!1;const i=o(e.clientX,e.clientY);if(null!==i){const t=r.$getNearestNodeFromDOMNode(i.node);r.$isDecoratorNode(t)&&e.preventDefault()}return!0}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.SELECT_ALL_COMMAND,(()=>(r.$selectAll(),!0)),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.COPY_COMMAND,(t=>(e.copyToClipboard(i,n.objectKlassEquals(t,ClipboardEvent)?t:null),!0)),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.CUT_COMMAND,(t=>(async function(t,o){await e.copyToClipboard(o,n.objectKlassEquals(t,ClipboardEvent)?t:null),o.update((()=>{const e=r.$getSelection();r.$isRangeSelection(e)?e.removeText():r.$isNodeSelection(e)&&e.getNodes().forEach((e=>e.remove()))}))}(t,i),!0)),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.PASTE_COMMAND,(t=>{const[,o,s]=C(t);if(o.length>0&&!s)return i.dispatchCommand(g,o),!0;if(r.isDOMNode(t.target)&&r.isSelectionCapturedInDecoratorInput(t.target))return!1;return null!==r.$getSelection()&&(function(t,o){t.preventDefault(),o.update((()=>{const i=r.$getSelection(),s=n.objectKlassEquals(t,InputEvent)||n.objectKlassEquals(t,KeyboardEvent)?null:t.clipboardData;null!=s&&null!==i&&e.$insertDataTransferForRichText(s,i,o)}),{tag:r.PASTE_TAG})}(t,i),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_SPACE_COMMAND,(e=>{const t=r.$getSelection();return r.$isRangeSelection(t)&&E(t),!1}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_TAB_COMMAND,(e=>{const t=r.$getSelection();return r.$isRangeSelection(t)&&E(t),!1}),r.COMMAND_PRIORITY_EDITOR));return s};
9
+ "use strict";var e=require("@lexical/clipboard"),t=require("@lexical/selection"),n=require("@lexical/utils"),r=require("lexical");function o(e,t){if(void 0!==document.caretRangeFromPoint){const n=document.caretRangeFromPoint(e,t);return null===n?null:{node:n.startContainer,offset:n.startOffset}}if("undefined"!==document.caretPositionFromPoint){const n=document.caretPositionFromPoint(e,t);return null===n?null:{node:n.offsetNode,offset:n.offset}}return null}const i="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,s=i&&"documentMode"in document?document.documentMode:null,a=!(!i||!("InputEvent"in window)||s)&&"getTargetRanges"in new window.InputEvent("input"),c=i&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent),l=i&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,u=i&&/^(?=.*Chrome).*/i.test(navigator.userAgent),d=i&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&!u,g=r.createCommand("DRAG_DROP_PASTE_FILE");class O extends r.ElementNode{static getType(){return"quote"}static clone(e){return new O(e.__key)}createDOM(e){const t=document.createElement("blockquote");return n.addClassNamesToElement(t,e.theme.quote),t}updateDOM(e,t){return!1}static importDOM(){return{blockquote:e=>({conversion:M,priority:0})}}exportDOM(e){const{element:t}=super.exportDOM(e);if(n.isHTMLElement(t)){this.isEmpty()&&t.append(document.createElement("br"));const e=this.getFormatType();t.style.textAlign=e;const n=this.getDirection();n&&(t.dir=n)}return{element:t}}static importJSON(e){return R().updateFromJSON(e)}insertNewAfter(e,t){const n=r.$createParagraphNode(),o=this.getDirection();return n.setDirection(o),this.insertAfter(n,t),n}collapseAtStart(){const e=r.$createParagraphNode();return this.getChildren().forEach((t=>e.append(t))),this.replace(e),!0}canMergeWhenEmpty(){return!0}}function R(){return r.$applyNodeReplacement(new O)}class N extends r.ElementNode{static getType(){return"heading"}static clone(e){return new N(e.__tag,e.__key)}constructor(e,t){super(t),this.__tag=e}getTag(){return this.__tag}setTag(e){const t=this.getWritable();return this.__tag=e,t}createDOM(e){const t=this.__tag,r=document.createElement(t),o=e.theme.heading;if(void 0!==o){const e=o[t];n.addClassNamesToElement(r,e)}return r}updateDOM(e,t,n){return e.__tag!==this.__tag}static importDOM(){return{h1:e=>({conversion:m,priority:0}),h2:e=>({conversion:m,priority:0}),h3:e=>({conversion:m,priority:0}),h4:e=>({conversion:m,priority:0}),h5:e=>({conversion:m,priority:0}),h6:e=>({conversion:m,priority:0}),p:e=>{const t=e.firstChild;return null!==t&&D(t)?{conversion:()=>({node:null}),priority:3}:null},span:e=>D(e)?{conversion:e=>({node:_("h1")}),priority:3}:null}}exportDOM(e){const{element:t}=super.exportDOM(e);if(n.isHTMLElement(t)){this.isEmpty()&&t.append(document.createElement("br"));const e=this.getFormatType();t.style.textAlign=e;const n=this.getDirection();n&&(t.dir=n)}return{element:t}}static importJSON(e){return _(e.tag).updateFromJSON(e)}updateFromJSON(e){return super.updateFromJSON(e).setTag(e.tag)}exportJSON(){return{...super.exportJSON(),tag:this.getTag()}}insertNewAfter(e,t=!0){const n=e?e.anchor.offset:0,o=this.getLastDescendant(),i=!o||e&&e.anchor.key===o.getKey()&&n===o.getTextContentSize()||!e?r.$createParagraphNode():_(this.getTag()),s=this.getDirection();if(i.setDirection(s),this.insertAfter(i,t),0===n&&!this.isEmpty()&&e){const e=r.$createParagraphNode();e.select(),this.replace(e,!0)}return i}collapseAtStart(){const e=this.isEmpty()?r.$createParagraphNode():_(this.getTag());return this.getChildren().forEach((t=>e.append(t))),this.replace(e),!0}extractWithChild(){return!0}}function D(e){return"span"===e.nodeName.toLowerCase()&&"26pt"===e.style.fontSize}function m(e){const t=e.nodeName.toLowerCase();let n=null;return"h1"!==t&&"h2"!==t&&"h3"!==t&&"h4"!==t&&"h5"!==t&&"h6"!==t||(n=_(t),null!==e.style&&(r.setNodeIndentFromDOM(e,n),n.setFormat(e.style.textAlign))),{node:n}}function M(e){const t=R();return null!==e.style&&(t.setFormat(e.style.textAlign),r.setNodeIndentFromDOM(e,t)),{node:t}}function _(e="h1"){return r.$applyNodeReplacement(new N(e))}function C(e){let t=null;if(n.objectKlassEquals(e,DragEvent)?t=e.dataTransfer:n.objectKlassEquals(e,ClipboardEvent)&&(t=e.clipboardData),null===t)return[!1,[],!1];const r=t.types,o=r.includes("Files"),i=r.includes("text/html")||r.includes("text/plain");return[o,Array.from(t.files),i]}function f(e){const t=r.$getSelection();if(!r.$isRangeSelection(t))return!1;const o=new Set,i=t.getNodes();for(let t=0;t<i.length;t++){const s=i[t],a=s.getKey();if(o.has(a))continue;const c=n.$findMatchingParent(s,(e=>r.$isElementNode(e)&&!e.isInline()));if(null===c)continue;const l=c.getKey();c.canIndent()&&!o.has(l)&&(o.add(l),e(c))}return o.size>0}function T(e){const t=r.$getNearestNodeFromDOMNode(e);return r.$isDecoratorNode(t)}function E(e){for(const t of["lowercase","uppercase","capitalize"])e.hasFormat(t)&&e.toggleFormat(t)}exports.$createHeadingNode=_,exports.$createQuoteNode=R,exports.$isHeadingNode=function(e){return e instanceof N},exports.$isQuoteNode=function(e){return e instanceof O},exports.DRAG_DROP_PASTE=g,exports.HeadingNode=N,exports.QuoteNode=O,exports.eventFiles=C,exports.registerRichText=function(i){const s=n.mergeRegister(i.registerCommand(r.CLICK_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isNodeSelection(t)&&(t.clear(),!0)}),0),i.registerCommand(r.DELETE_CHARACTER_COMMAND,(e=>{const t=r.$getSelection();return r.$isRangeSelection(t)?(t.deleteCharacter(e),!0):!!r.$isNodeSelection(t)&&(t.deleteNodes(),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DELETE_WORD_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isRangeSelection(t)&&(t.deleteWord(e),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DELETE_LINE_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isRangeSelection(t)&&(t.deleteLine(e),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.CONTROLLED_TEXT_INSERTION_COMMAND,(t=>{const n=r.$getSelection();if("string"==typeof t)null!==n&&n.insertText(t);else{if(null===n)return!1;const o=t.dataTransfer;if(null!=o)e.$insertDataTransferForRichText(o,n,i);else if(r.$isRangeSelection(n)){const e=t.data;return e&&n.insertText(e),!0}}return!0}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.REMOVE_TEXT_COMMAND,(()=>{const e=r.$getSelection();return!!r.$isRangeSelection(e)&&(e.removeText(),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.FORMAT_TEXT_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isRangeSelection(t)&&(t.formatText(e),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.FORMAT_ELEMENT_COMMAND,(e=>{const t=r.$getSelection();if(!r.$isRangeSelection(t)&&!r.$isNodeSelection(t))return!1;const o=t.getNodes();for(const t of o){const o=n.$findMatchingParent(t,(e=>r.$isElementNode(e)&&!e.isInline()));null!==o&&o.setFormat(e)}return!0}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.INSERT_LINE_BREAK_COMMAND,(e=>{const t=r.$getSelection();return!!r.$isRangeSelection(t)&&(t.insertLineBreak(e),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.INSERT_PARAGRAPH_COMMAND,(()=>{const e=r.$getSelection();return!!r.$isRangeSelection(e)&&(e.insertParagraph(),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.INSERT_TAB_COMMAND,(()=>(r.$insertNodes([r.$createTabNode()]),!0)),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.INDENT_CONTENT_COMMAND,(()=>f((e=>{const t=e.getIndent();e.setIndent(t+1)}))),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.OUTDENT_CONTENT_COMMAND,(()=>f((e=>{const t=e.getIndent();t>0&&e.setIndent(Math.max(0,t-1))}))),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ARROW_UP_COMMAND,(e=>{const t=r.$getSelection();if(r.$isNodeSelection(t)){const e=t.getNodes();if(e.length>0)return e[0].selectPrevious(),!0}else if(r.$isRangeSelection(t)){const n=r.$getAdjacentNode(t.focus,!0);if(!e.shiftKey&&r.$isDecoratorNode(n)&&!n.isIsolated()&&!n.isInline())return n.selectPrevious(),e.preventDefault(),!0}return!1}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ARROW_DOWN_COMMAND,(e=>{const t=r.$getSelection();if(r.$isNodeSelection(t)){const e=t.getNodes();if(e.length>0)return e[0].selectNext(0,0),!0}else if(r.$isRangeSelection(t)){if(function(e){const t=e.focus;return"root"===t.key&&t.offset===r.$getRoot().getChildrenSize()}(t))return e.preventDefault(),!0;const n=r.$getAdjacentNode(t.focus,!1);if(!e.shiftKey&&r.$isDecoratorNode(n)&&!n.isIsolated()&&!n.isInline())return n.selectNext(),e.preventDefault(),!0}return!1}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ARROW_LEFT_COMMAND,(e=>{const n=r.$getSelection();if(r.$isNodeSelection(n)){const t=n.getNodes();if(t.length>0)return e.preventDefault(),t[0].selectPrevious(),!0}if(!r.$isRangeSelection(n))return!1;if(t.$shouldOverrideDefaultCharacterSelection(n,!0)){const r=e.shiftKey;return e.preventDefault(),t.$moveCharacter(n,r,!0),!0}return!1}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ARROW_RIGHT_COMMAND,(e=>{const n=r.$getSelection();if(r.$isNodeSelection(n)){const t=n.getNodes();if(t.length>0)return e.preventDefault(),t[0].selectNext(0,0),!0}if(!r.$isRangeSelection(n))return!1;const o=e.shiftKey;return!!t.$shouldOverrideDefaultCharacterSelection(n,!1)&&(e.preventDefault(),t.$moveCharacter(n,o,!1),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_BACKSPACE_COMMAND,(e=>{if(T(e.target))return!1;const t=r.$getSelection();if(r.$isRangeSelection(t)){if(function(e){if(!e.isCollapsed())return!1;const{anchor:t}=e;if(0!==t.offset)return!1;const o=t.getNode();if(r.$isRootNode(o))return!1;const i=n.$getNearestBlockElementAncestorOrThrow(o);return i.getIndent()>0&&(i.is(o)||o.is(i.getFirstDescendant()))}(t))return e.preventDefault(),i.dispatchCommand(r.OUTDENT_CONTENT_COMMAND,void 0);if(l&&"ko-KR"===navigator.language)return!1}else if(!r.$isNodeSelection(t))return!1;return e.preventDefault(),i.dispatchCommand(r.DELETE_CHARACTER_COMMAND,!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_DELETE_COMMAND,(e=>{if(T(e.target))return!1;const t=r.$getSelection();return!(!r.$isRangeSelection(t)&&!r.$isNodeSelection(t))&&(e.preventDefault(),i.dispatchCommand(r.DELETE_CHARACTER_COMMAND,!1))}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ENTER_COMMAND,(e=>{const t=r.$getSelection();if(!r.$isRangeSelection(t))return!1;if(E(t),null!==e){if((l||c||d)&&a)return!1;if(e.preventDefault(),e.shiftKey)return i.dispatchCommand(r.INSERT_LINE_BREAK_COMMAND,!1)}return i.dispatchCommand(r.INSERT_PARAGRAPH_COMMAND,void 0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_ESCAPE_COMMAND,(()=>{const e=r.$getSelection();return!!r.$isRangeSelection(e)&&(i.blur(),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DROP_COMMAND,(e=>{const[,t]=C(e);if(t.length>0){const n=o(e.clientX,e.clientY);if(null!==n){const{offset:e,node:o}=n,s=r.$getNearestNodeFromDOMNode(o);if(null!==s){const t=r.$createRangeSelection();if(r.$isTextNode(s))t.anchor.set(s.getKey(),e,"text"),t.focus.set(s.getKey(),e,"text");else{const e=s.getParentOrThrow().getKey(),n=s.getIndexWithinParent()+1;t.anchor.set(e,n,"element"),t.focus.set(e,n,"element")}const n=r.$normalizeSelection__EXPERIMENTAL(t);r.$setSelection(n)}i.dispatchCommand(g,t)}return e.preventDefault(),!0}const n=r.$getSelection();return!!r.$isRangeSelection(n)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DRAGSTART_COMMAND,(e=>{const[t]=C(e),n=r.$getSelection();return!(t&&!r.$isRangeSelection(n))}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.DRAGOVER_COMMAND,(e=>{const[t]=C(e),n=r.$getSelection();if(t&&!r.$isRangeSelection(n))return!1;const i=o(e.clientX,e.clientY);if(null!==i){const t=r.$getNearestNodeFromDOMNode(i.node);r.$isDecoratorNode(t)&&e.preventDefault()}return!0}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.SELECT_ALL_COMMAND,(()=>(r.$selectAll(),!0)),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.COPY_COMMAND,(t=>(e.copyToClipboard(i,n.objectKlassEquals(t,ClipboardEvent)?t:null),!0)),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.CUT_COMMAND,(t=>(async function(t,o){await e.copyToClipboard(o,n.objectKlassEquals(t,ClipboardEvent)?t:null),o.update((()=>{const e=r.$getSelection();r.$isRangeSelection(e)?e.removeText():r.$isNodeSelection(e)&&e.getNodes().forEach((e=>e.remove()))}))}(t,i),!0)),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.PASTE_COMMAND,(t=>{const[,o,s]=C(t);if(o.length>0&&!s)return i.dispatchCommand(g,o),!0;if(r.isDOMNode(t.target)&&r.isSelectionCapturedInDecoratorInput(t.target))return!1;return null!==r.$getSelection()&&(function(t,o){t.preventDefault(),o.update((()=>{const i=r.$getSelection(),s=n.objectKlassEquals(t,InputEvent)||n.objectKlassEquals(t,KeyboardEvent)?null:t.clipboardData;null!=s&&null!==i&&e.$insertDataTransferForRichText(s,i,o)}),{tag:r.PASTE_TAG})}(t,i),!0)}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_SPACE_COMMAND,(e=>{const t=r.$getSelection();return r.$isRangeSelection(t)&&E(t),!1}),r.COMMAND_PRIORITY_EDITOR),i.registerCommand(r.KEY_TAB_COMMAND,(e=>{const t=r.$getSelection();return r.$isRangeSelection(t)&&E(t),!1}),r.COMMAND_PRIORITY_EDITOR));return s};
@@ -6,4 +6,4 @@
6
6
  *
7
7
  */
8
8
 
9
- import{$insertDataTransferForRichText as t,copyToClipboard as e}from"@lexical/clipboard";import{$shouldOverrideDefaultCharacterSelection as n,$moveCharacter as r}from"@lexical/selection";import{addClassNamesToElement as o,isHTMLElement as i,objectKlassEquals as s,mergeRegister as a,$findMatchingParent as c,$getNearestBlockElementAncestorOrThrow as u}from"@lexical/utils";import{createCommand as l,ElementNode as d,$createParagraphNode as m,$applyNodeReplacement as f,setNodeIndentFromDOM as g,CLICK_COMMAND as p,$getSelection as h,$isNodeSelection as C,DELETE_CHARACTER_COMMAND as v,$isRangeSelection as y,COMMAND_PRIORITY_EDITOR as D,DELETE_WORD_COMMAND as x,DELETE_LINE_COMMAND as w,CONTROLLED_TEXT_INSERTION_COMMAND as N,REMOVE_TEXT_COMMAND as E,FORMAT_TEXT_COMMAND as O,FORMAT_ELEMENT_COMMAND as T,$isElementNode as _,INSERT_LINE_BREAK_COMMAND as A,INSERT_PARAGRAPH_COMMAND as S,INSERT_TAB_COMMAND as F,$insertNodes as I,$createTabNode as P,INDENT_CONTENT_COMMAND as M,OUTDENT_CONTENT_COMMAND as b,KEY_ARROW_UP_COMMAND as K,$getAdjacentNode as k,$isDecoratorNode as J,KEY_ARROW_DOWN_COMMAND as L,KEY_ARROW_LEFT_COMMAND as R,KEY_ARROW_RIGHT_COMMAND as W,KEY_BACKSPACE_COMMAND as z,$isRootNode as q,KEY_DELETE_COMMAND as X,KEY_ENTER_COMMAND as Y,KEY_ESCAPE_COMMAND as B,DROP_COMMAND as G,$getNearestNodeFromDOMNode as V,$createRangeSelection as j,$isTextNode as H,$normalizeSelection__EXPERIMENTAL as Q,$setSelection as U,DRAGSTART_COMMAND as Z,DRAGOVER_COMMAND as $,SELECT_ALL_COMMAND as tt,$selectAll as et,COPY_COMMAND as nt,CUT_COMMAND as rt,PASTE_COMMAND as ot,isDOMNode as it,isSelectionCapturedInDecoratorInput as st,KEY_SPACE_COMMAND as at,KEY_TAB_COMMAND as ct,PASTE_TAG as ut,$getRoot as lt}from"lexical";function dt(t,e){if(void 0!==document.caretRangeFromPoint){const n=document.caretRangeFromPoint(t,e);return null===n?null:{node:n.startContainer,offset:n.startOffset}}if("undefined"!==document.caretPositionFromPoint){const n=document.caretPositionFromPoint(t,e);return null===n?null:{node:n.offsetNode,offset:n.offset}}return null}const mt="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,ft=mt&&"documentMode"in document?document.documentMode:null,gt=!(!mt||!("InputEvent"in window)||ft)&&"getTargetRanges"in new window.InputEvent("input"),pt=mt&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent),ht=mt&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,Ct=mt&&/^(?=.*Chrome).*/i.test(navigator.userAgent),vt=mt&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&!Ct,yt=l("DRAG_DROP_PASTE_FILE");class Dt extends d{static getType(){return"quote"}static clone(t){return new Dt(t.__key)}createDOM(t){const e=document.createElement("blockquote");return o(e,t.theme.quote),e}updateDOM(t,e){return!1}static importDOM(){return{blockquote:t=>({conversion:Tt,priority:0})}}exportDOM(t){const{element:e}=super.exportDOM(t);if(i(e)){this.isEmpty()&&e.append(document.createElement("br"));const t=this.getFormatType();e.style.textAlign=t;const n=this.getDirection();n&&(e.dir=n)}return{element:e}}static importJSON(t){return xt().updateFromJSON(t)}insertNewAfter(t,e){const n=m(),r=this.getDirection();return n.setDirection(r),this.insertAfter(n,e),n}collapseAtStart(){const t=m();return this.getChildren().forEach((e=>t.append(e))),this.replace(t),!0}canMergeWhenEmpty(){return!0}}function xt(){return f(new Dt)}function wt(t){return t instanceof Dt}class Nt extends d{static getType(){return"heading"}static clone(t){return new Nt(t.__tag,t.__key)}constructor(t,e){super(e),this.__tag=t}getTag(){return this.__tag}setTag(t){const e=this.getWritable();return this.__tag=t,e}createDOM(t){const e=this.__tag,n=document.createElement(e),r=t.theme.heading;if(void 0!==r){const t=r[e];o(n,t)}return n}updateDOM(t,e,n){return t.__tag!==this.__tag}static importDOM(){return{h1:t=>({conversion:Ot,priority:0}),h2:t=>({conversion:Ot,priority:0}),h3:t=>({conversion:Ot,priority:0}),h4:t=>({conversion:Ot,priority:0}),h5:t=>({conversion:Ot,priority:0}),h6:t=>({conversion:Ot,priority:0}),p:t=>{const e=t.firstChild;return null!==e&&Et(e)?{conversion:()=>({node:null}),priority:3}:null},span:t=>Et(t)?{conversion:t=>({node:_t("h1")}),priority:3}:null}}exportDOM(t){const{element:e}=super.exportDOM(t);if(i(e)){this.isEmpty()&&e.append(document.createElement("br"));const t=this.getFormatType();e.style.textAlign=t;const n=this.getDirection();n&&(e.dir=n)}return{element:e}}static importJSON(t){return _t(t.tag).updateFromJSON(t)}updateFromJSON(t){return super.updateFromJSON(t).setTag(t.tag)}exportJSON(){return{...super.exportJSON(),tag:this.getTag()}}insertNewAfter(t,e=!0){const n=t?t.anchor.offset:0,r=this.getLastDescendant(),o=!r||t&&t.anchor.key===r.getKey()&&n===r.getTextContentSize()||!t?m():_t(this.getTag()),i=this.getDirection();if(o.setDirection(i),this.insertAfter(o,e),0===n&&!this.isEmpty()&&t){const t=m();t.select(),this.replace(t,!0)}return o}collapseAtStart(){const t=this.isEmpty()?m():_t(this.getTag());return this.getChildren().forEach((e=>t.append(e))),this.replace(t),!0}extractWithChild(){return!0}}function Et(t){return"span"===t.nodeName.toLowerCase()&&"26pt"===t.style.fontSize}function Ot(t){const e=t.nodeName.toLowerCase();let n=null;return"h1"!==e&&"h2"!==e&&"h3"!==e&&"h4"!==e&&"h5"!==e&&"h6"!==e||(n=_t(e),null!==t.style&&(g(t,n),n.setFormat(t.style.textAlign))),{node:n}}function Tt(t){const e=xt();return null!==t.style&&(e.setFormat(t.style.textAlign),g(t,e)),{node:e}}function _t(t="h1"){return f(new Nt(t))}function At(t){return t instanceof Nt}function St(t){let e=null;if(s(t,DragEvent)?e=t.dataTransfer:s(t,ClipboardEvent)&&(e=t.clipboardData),null===e)return[!1,[],!1];const n=e.types,r=n.includes("Files"),o=n.includes("text/html")||n.includes("text/plain");return[r,Array.from(e.files),o]}function Ft(t){const e=h();if(!y(e))return!1;const n=new Set,r=e.getNodes();for(let e=0;e<r.length;e++){const o=r[e],i=o.getKey();if(n.has(i))continue;const s=c(o,(t=>_(t)&&!t.isInline()));if(null===s)continue;const a=s.getKey();s.canIndent()&&!n.has(a)&&(n.add(a),t(s))}return n.size>0}function It(t){const e=V(t);return J(e)}function Pt(t){for(const e of["lowercase","uppercase","capitalize"])t.hasFormat(e)&&t.toggleFormat(e)}function Mt(o){return a(o.registerCommand(p,(t=>{const e=h();return!!C(e)&&(e.clear(),!0)}),0),o.registerCommand(v,(t=>{const e=h();return y(e)?(e.deleteCharacter(t),!0):!!C(e)&&(e.deleteNodes(),!0)}),D),o.registerCommand(x,(t=>{const e=h();return!!y(e)&&(e.deleteWord(t),!0)}),D),o.registerCommand(w,(t=>{const e=h();return!!y(e)&&(e.deleteLine(t),!0)}),D),o.registerCommand(N,(e=>{const n=h();if("string"==typeof e)null!==n&&n.insertText(e);else{if(null===n)return!1;const r=e.dataTransfer;if(null!=r)t(r,n,o);else if(y(n)){const t=e.data;return t&&n.insertText(t),!0}}return!0}),D),o.registerCommand(E,(()=>{const t=h();return!!y(t)&&(t.removeText(),!0)}),D),o.registerCommand(O,(t=>{const e=h();return!!y(e)&&(e.formatText(t),!0)}),D),o.registerCommand(T,(t=>{const e=h();if(!y(e)&&!C(e))return!1;const n=e.getNodes();for(const e of n){const n=c(e,(t=>_(t)&&!t.isInline()));null!==n&&n.setFormat(t)}return!0}),D),o.registerCommand(A,(t=>{const e=h();return!!y(e)&&(e.insertLineBreak(t),!0)}),D),o.registerCommand(S,(()=>{const t=h();return!!y(t)&&(t.insertParagraph(),!0)}),D),o.registerCommand(F,(()=>(I([P()]),!0)),D),o.registerCommand(M,(()=>Ft((t=>{const e=t.getIndent();t.setIndent(e+1)}))),D),o.registerCommand(b,(()=>Ft((t=>{const e=t.getIndent();e>0&&t.setIndent(Math.max(0,e-1))}))),D),o.registerCommand(K,(t=>{const e=h();if(C(e)){const t=e.getNodes();if(t.length>0)return t[0].selectPrevious(),!0}else if(y(e)){const n=k(e.focus,!0);if(!t.shiftKey&&J(n)&&!n.isIsolated()&&!n.isInline())return n.selectPrevious(),t.preventDefault(),!0}return!1}),D),o.registerCommand(L,(t=>{const e=h();if(C(e)){const t=e.getNodes();if(t.length>0)return t[0].selectNext(0,0),!0}else if(y(e)){if(function(t){const e=t.focus;return"root"===e.key&&e.offset===lt().getChildrenSize()}(e))return t.preventDefault(),!0;const n=k(e.focus,!1);if(!t.shiftKey&&J(n)&&!n.isIsolated()&&!n.isInline())return n.selectNext(),t.preventDefault(),!0}return!1}),D),o.registerCommand(R,(t=>{const e=h();if(C(e)){const n=e.getNodes();if(n.length>0)return t.preventDefault(),n[0].selectPrevious(),!0}if(!y(e))return!1;if(n(e,!0)){const n=t.shiftKey;return t.preventDefault(),r(e,n,!0),!0}return!1}),D),o.registerCommand(W,(t=>{const e=h();if(C(e)){const n=e.getNodes();if(n.length>0)return t.preventDefault(),n[0].selectNext(0,0),!0}if(!y(e))return!1;const o=t.shiftKey;return!!n(e,!1)&&(t.preventDefault(),r(e,o,!1),!0)}),D),o.registerCommand(z,(t=>{if(It(t.target))return!1;const e=h();if(y(e)){const{anchor:n}=e,r=n.getNode();if(e.isCollapsed()&&0===n.offset&&!q(r)){if(u(r).getIndent()>0)return t.preventDefault(),o.dispatchCommand(b,void 0)}if(ht&&"ko-KR"===navigator.language)return!1}else if(!C(e))return!1;return t.preventDefault(),o.dispatchCommand(v,!0)}),D),o.registerCommand(X,(t=>{if(It(t.target))return!1;const e=h();return!(!y(e)&&!C(e))&&(t.preventDefault(),o.dispatchCommand(v,!1))}),D),o.registerCommand(Y,(t=>{const e=h();if(!y(e))return!1;if(Pt(e),null!==t){if((ht||pt||vt)&&gt)return!1;if(t.preventDefault(),t.shiftKey)return o.dispatchCommand(A,!1)}return o.dispatchCommand(S,void 0)}),D),o.registerCommand(B,(()=>{const t=h();return!!y(t)&&(o.blur(),!0)}),D),o.registerCommand(G,(t=>{const[,e]=St(t);if(e.length>0){const n=dt(t.clientX,t.clientY);if(null!==n){const{offset:t,node:r}=n,i=V(r);if(null!==i){const e=j();if(H(i))e.anchor.set(i.getKey(),t,"text"),e.focus.set(i.getKey(),t,"text");else{const t=i.getParentOrThrow().getKey(),n=i.getIndexWithinParent()+1;e.anchor.set(t,n,"element"),e.focus.set(t,n,"element")}const n=Q(e);U(n)}o.dispatchCommand(yt,e)}return t.preventDefault(),!0}const n=h();return!!y(n)}),D),o.registerCommand(Z,(t=>{const[e]=St(t),n=h();return!(e&&!y(n))}),D),o.registerCommand($,(t=>{const[e]=St(t),n=h();if(e&&!y(n))return!1;const r=dt(t.clientX,t.clientY);if(null!==r){const e=V(r.node);J(e)&&t.preventDefault()}return!0}),D),o.registerCommand(tt,(()=>(et(),!0)),D),o.registerCommand(nt,(t=>(e(o,s(t,ClipboardEvent)?t:null),!0)),D),o.registerCommand(rt,(t=>(async function(t,n){await e(n,s(t,ClipboardEvent)?t:null),n.update((()=>{const t=h();y(t)?t.removeText():C(t)&&t.getNodes().forEach((t=>t.remove()))}))}(t,o),!0)),D),o.registerCommand(ot,(e=>{const[,n,r]=St(e);if(n.length>0&&!r)return o.dispatchCommand(yt,n),!0;if(it(e.target)&&st(e.target))return!1;return null!==h()&&(function(e,n){e.preventDefault(),n.update((()=>{const r=h(),o=s(e,InputEvent)||s(e,KeyboardEvent)?null:e.clipboardData;null!=o&&null!==r&&t(o,r,n)}),{tag:ut})}(e,o),!0)}),D),o.registerCommand(at,(t=>{const e=h();return y(e)&&Pt(e),!1}),D),o.registerCommand(ct,(t=>{const e=h();return y(e)&&Pt(e),!1}),D))}export{_t as $createHeadingNode,xt as $createQuoteNode,At as $isHeadingNode,wt as $isQuoteNode,yt as DRAG_DROP_PASTE,Nt as HeadingNode,Dt as QuoteNode,St as eventFiles,Mt as registerRichText};
9
+ import{$insertDataTransferForRichText as t,copyToClipboard as e}from"@lexical/clipboard";import{$shouldOverrideDefaultCharacterSelection as n,$moveCharacter as r}from"@lexical/selection";import{addClassNamesToElement as o,isHTMLElement as i,objectKlassEquals as s,mergeRegister as a,$findMatchingParent as c,$getNearestBlockElementAncestorOrThrow as u}from"@lexical/utils";import{createCommand as l,ElementNode as d,$createParagraphNode as m,$applyNodeReplacement as f,setNodeIndentFromDOM as g,CLICK_COMMAND as p,$getSelection as h,$isNodeSelection as C,DELETE_CHARACTER_COMMAND as v,$isRangeSelection as y,COMMAND_PRIORITY_EDITOR as D,DELETE_WORD_COMMAND as x,DELETE_LINE_COMMAND as w,CONTROLLED_TEXT_INSERTION_COMMAND as N,REMOVE_TEXT_COMMAND as E,FORMAT_TEXT_COMMAND as O,FORMAT_ELEMENT_COMMAND as T,$isElementNode as _,INSERT_LINE_BREAK_COMMAND as A,INSERT_PARAGRAPH_COMMAND as F,INSERT_TAB_COMMAND as S,$insertNodes as I,$createTabNode as P,INDENT_CONTENT_COMMAND as M,OUTDENT_CONTENT_COMMAND as b,KEY_ARROW_UP_COMMAND as K,$getAdjacentNode as k,$isDecoratorNode as J,KEY_ARROW_DOWN_COMMAND as L,KEY_ARROW_LEFT_COMMAND as R,KEY_ARROW_RIGHT_COMMAND as W,KEY_BACKSPACE_COMMAND as z,KEY_DELETE_COMMAND as q,KEY_ENTER_COMMAND as X,KEY_ESCAPE_COMMAND as Y,DROP_COMMAND as B,$getNearestNodeFromDOMNode as G,$createRangeSelection as V,$isTextNode as j,$normalizeSelection__EXPERIMENTAL as H,$setSelection as Q,DRAGSTART_COMMAND as U,DRAGOVER_COMMAND as Z,SELECT_ALL_COMMAND as $,$selectAll as tt,COPY_COMMAND as et,CUT_COMMAND as nt,PASTE_COMMAND as rt,isDOMNode as ot,isSelectionCapturedInDecoratorInput as it,KEY_SPACE_COMMAND as st,KEY_TAB_COMMAND as at,PASTE_TAG as ct,$getRoot as ut,$isRootNode as lt}from"lexical";function dt(t,e){if(void 0!==document.caretRangeFromPoint){const n=document.caretRangeFromPoint(t,e);return null===n?null:{node:n.startContainer,offset:n.startOffset}}if("undefined"!==document.caretPositionFromPoint){const n=document.caretPositionFromPoint(t,e);return null===n?null:{node:n.offsetNode,offset:n.offset}}return null}const mt="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,ft=mt&&"documentMode"in document?document.documentMode:null,gt=!(!mt||!("InputEvent"in window)||ft)&&"getTargetRanges"in new window.InputEvent("input"),pt=mt&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent),ht=mt&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,Ct=mt&&/^(?=.*Chrome).*/i.test(navigator.userAgent),vt=mt&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&!Ct,yt=l("DRAG_DROP_PASTE_FILE");class Dt extends d{static getType(){return"quote"}static clone(t){return new Dt(t.__key)}createDOM(t){const e=document.createElement("blockquote");return o(e,t.theme.quote),e}updateDOM(t,e){return!1}static importDOM(){return{blockquote:t=>({conversion:Tt,priority:0})}}exportDOM(t){const{element:e}=super.exportDOM(t);if(i(e)){this.isEmpty()&&e.append(document.createElement("br"));const t=this.getFormatType();e.style.textAlign=t;const n=this.getDirection();n&&(e.dir=n)}return{element:e}}static importJSON(t){return xt().updateFromJSON(t)}insertNewAfter(t,e){const n=m(),r=this.getDirection();return n.setDirection(r),this.insertAfter(n,e),n}collapseAtStart(){const t=m();return this.getChildren().forEach((e=>t.append(e))),this.replace(t),!0}canMergeWhenEmpty(){return!0}}function xt(){return f(new Dt)}function wt(t){return t instanceof Dt}class Nt extends d{static getType(){return"heading"}static clone(t){return new Nt(t.__tag,t.__key)}constructor(t,e){super(e),this.__tag=t}getTag(){return this.__tag}setTag(t){const e=this.getWritable();return this.__tag=t,e}createDOM(t){const e=this.__tag,n=document.createElement(e),r=t.theme.heading;if(void 0!==r){const t=r[e];o(n,t)}return n}updateDOM(t,e,n){return t.__tag!==this.__tag}static importDOM(){return{h1:t=>({conversion:Ot,priority:0}),h2:t=>({conversion:Ot,priority:0}),h3:t=>({conversion:Ot,priority:0}),h4:t=>({conversion:Ot,priority:0}),h5:t=>({conversion:Ot,priority:0}),h6:t=>({conversion:Ot,priority:0}),p:t=>{const e=t.firstChild;return null!==e&&Et(e)?{conversion:()=>({node:null}),priority:3}:null},span:t=>Et(t)?{conversion:t=>({node:_t("h1")}),priority:3}:null}}exportDOM(t){const{element:e}=super.exportDOM(t);if(i(e)){this.isEmpty()&&e.append(document.createElement("br"));const t=this.getFormatType();e.style.textAlign=t;const n=this.getDirection();n&&(e.dir=n)}return{element:e}}static importJSON(t){return _t(t.tag).updateFromJSON(t)}updateFromJSON(t){return super.updateFromJSON(t).setTag(t.tag)}exportJSON(){return{...super.exportJSON(),tag:this.getTag()}}insertNewAfter(t,e=!0){const n=t?t.anchor.offset:0,r=this.getLastDescendant(),o=!r||t&&t.anchor.key===r.getKey()&&n===r.getTextContentSize()||!t?m():_t(this.getTag()),i=this.getDirection();if(o.setDirection(i),this.insertAfter(o,e),0===n&&!this.isEmpty()&&t){const t=m();t.select(),this.replace(t,!0)}return o}collapseAtStart(){const t=this.isEmpty()?m():_t(this.getTag());return this.getChildren().forEach((e=>t.append(e))),this.replace(t),!0}extractWithChild(){return!0}}function Et(t){return"span"===t.nodeName.toLowerCase()&&"26pt"===t.style.fontSize}function Ot(t){const e=t.nodeName.toLowerCase();let n=null;return"h1"!==e&&"h2"!==e&&"h3"!==e&&"h4"!==e&&"h5"!==e&&"h6"!==e||(n=_t(e),null!==t.style&&(g(t,n),n.setFormat(t.style.textAlign))),{node:n}}function Tt(t){const e=xt();return null!==t.style&&(e.setFormat(t.style.textAlign),g(t,e)),{node:e}}function _t(t="h1"){return f(new Nt(t))}function At(t){return t instanceof Nt}function Ft(t){let e=null;if(s(t,DragEvent)?e=t.dataTransfer:s(t,ClipboardEvent)&&(e=t.clipboardData),null===e)return[!1,[],!1];const n=e.types,r=n.includes("Files"),o=n.includes("text/html")||n.includes("text/plain");return[r,Array.from(e.files),o]}function St(t){const e=h();if(!y(e))return!1;const n=new Set,r=e.getNodes();for(let e=0;e<r.length;e++){const o=r[e],i=o.getKey();if(n.has(i))continue;const s=c(o,(t=>_(t)&&!t.isInline()));if(null===s)continue;const a=s.getKey();s.canIndent()&&!n.has(a)&&(n.add(a),t(s))}return n.size>0}function It(t){const e=G(t);return J(e)}function Pt(t){for(const e of["lowercase","uppercase","capitalize"])t.hasFormat(e)&&t.toggleFormat(e)}function Mt(o){return a(o.registerCommand(p,(t=>{const e=h();return!!C(e)&&(e.clear(),!0)}),0),o.registerCommand(v,(t=>{const e=h();return y(e)?(e.deleteCharacter(t),!0):!!C(e)&&(e.deleteNodes(),!0)}),D),o.registerCommand(x,(t=>{const e=h();return!!y(e)&&(e.deleteWord(t),!0)}),D),o.registerCommand(w,(t=>{const e=h();return!!y(e)&&(e.deleteLine(t),!0)}),D),o.registerCommand(N,(e=>{const n=h();if("string"==typeof e)null!==n&&n.insertText(e);else{if(null===n)return!1;const r=e.dataTransfer;if(null!=r)t(r,n,o);else if(y(n)){const t=e.data;return t&&n.insertText(t),!0}}return!0}),D),o.registerCommand(E,(()=>{const t=h();return!!y(t)&&(t.removeText(),!0)}),D),o.registerCommand(O,(t=>{const e=h();return!!y(e)&&(e.formatText(t),!0)}),D),o.registerCommand(T,(t=>{const e=h();if(!y(e)&&!C(e))return!1;const n=e.getNodes();for(const e of n){const n=c(e,(t=>_(t)&&!t.isInline()));null!==n&&n.setFormat(t)}return!0}),D),o.registerCommand(A,(t=>{const e=h();return!!y(e)&&(e.insertLineBreak(t),!0)}),D),o.registerCommand(F,(()=>{const t=h();return!!y(t)&&(t.insertParagraph(),!0)}),D),o.registerCommand(S,(()=>(I([P()]),!0)),D),o.registerCommand(M,(()=>St((t=>{const e=t.getIndent();t.setIndent(e+1)}))),D),o.registerCommand(b,(()=>St((t=>{const e=t.getIndent();e>0&&t.setIndent(Math.max(0,e-1))}))),D),o.registerCommand(K,(t=>{const e=h();if(C(e)){const t=e.getNodes();if(t.length>0)return t[0].selectPrevious(),!0}else if(y(e)){const n=k(e.focus,!0);if(!t.shiftKey&&J(n)&&!n.isIsolated()&&!n.isInline())return n.selectPrevious(),t.preventDefault(),!0}return!1}),D),o.registerCommand(L,(t=>{const e=h();if(C(e)){const t=e.getNodes();if(t.length>0)return t[0].selectNext(0,0),!0}else if(y(e)){if(function(t){const e=t.focus;return"root"===e.key&&e.offset===ut().getChildrenSize()}(e))return t.preventDefault(),!0;const n=k(e.focus,!1);if(!t.shiftKey&&J(n)&&!n.isIsolated()&&!n.isInline())return n.selectNext(),t.preventDefault(),!0}return!1}),D),o.registerCommand(R,(t=>{const e=h();if(C(e)){const n=e.getNodes();if(n.length>0)return t.preventDefault(),n[0].selectPrevious(),!0}if(!y(e))return!1;if(n(e,!0)){const n=t.shiftKey;return t.preventDefault(),r(e,n,!0),!0}return!1}),D),o.registerCommand(W,(t=>{const e=h();if(C(e)){const n=e.getNodes();if(n.length>0)return t.preventDefault(),n[0].selectNext(0,0),!0}if(!y(e))return!1;const o=t.shiftKey;return!!n(e,!1)&&(t.preventDefault(),r(e,o,!1),!0)}),D),o.registerCommand(z,(t=>{if(It(t.target))return!1;const e=h();if(y(e)){if(function(t){if(!t.isCollapsed())return!1;const{anchor:e}=t;if(0!==e.offset)return!1;const n=e.getNode();if(lt(n))return!1;const r=u(n);return r.getIndent()>0&&(r.is(n)||n.is(r.getFirstDescendant()))}(e))return t.preventDefault(),o.dispatchCommand(b,void 0);if(ht&&"ko-KR"===navigator.language)return!1}else if(!C(e))return!1;return t.preventDefault(),o.dispatchCommand(v,!0)}),D),o.registerCommand(q,(t=>{if(It(t.target))return!1;const e=h();return!(!y(e)&&!C(e))&&(t.preventDefault(),o.dispatchCommand(v,!1))}),D),o.registerCommand(X,(t=>{const e=h();if(!y(e))return!1;if(Pt(e),null!==t){if((ht||pt||vt)&&gt)return!1;if(t.preventDefault(),t.shiftKey)return o.dispatchCommand(A,!1)}return o.dispatchCommand(F,void 0)}),D),o.registerCommand(Y,(()=>{const t=h();return!!y(t)&&(o.blur(),!0)}),D),o.registerCommand(B,(t=>{const[,e]=Ft(t);if(e.length>0){const n=dt(t.clientX,t.clientY);if(null!==n){const{offset:t,node:r}=n,i=G(r);if(null!==i){const e=V();if(j(i))e.anchor.set(i.getKey(),t,"text"),e.focus.set(i.getKey(),t,"text");else{const t=i.getParentOrThrow().getKey(),n=i.getIndexWithinParent()+1;e.anchor.set(t,n,"element"),e.focus.set(t,n,"element")}const n=H(e);Q(n)}o.dispatchCommand(yt,e)}return t.preventDefault(),!0}const n=h();return!!y(n)}),D),o.registerCommand(U,(t=>{const[e]=Ft(t),n=h();return!(e&&!y(n))}),D),o.registerCommand(Z,(t=>{const[e]=Ft(t),n=h();if(e&&!y(n))return!1;const r=dt(t.clientX,t.clientY);if(null!==r){const e=G(r.node);J(e)&&t.preventDefault()}return!0}),D),o.registerCommand($,(()=>(tt(),!0)),D),o.registerCommand(et,(t=>(e(o,s(t,ClipboardEvent)?t:null),!0)),D),o.registerCommand(nt,(t=>(async function(t,n){await e(n,s(t,ClipboardEvent)?t:null),n.update((()=>{const t=h();y(t)?t.removeText():C(t)&&t.getNodes().forEach((t=>t.remove()))}))}(t,o),!0)),D),o.registerCommand(rt,(e=>{const[,n,r]=Ft(e);if(n.length>0&&!r)return o.dispatchCommand(yt,n),!0;if(ot(e.target)&&it(e.target))return!1;return null!==h()&&(function(e,n){e.preventDefault(),n.update((()=>{const r=h(),o=s(e,InputEvent)||s(e,KeyboardEvent)?null:e.clipboardData;null!=o&&null!==r&&t(o,r,n)}),{tag:ct})}(e,o),!0)}),D),o.registerCommand(st,(t=>{const e=h();return y(e)&&Pt(e),!1}),D),o.registerCommand(at,(t=>{const e=h();return y(e)&&Pt(e),!1}),D))}export{_t as $createHeadingNode,xt as $createQuoteNode,At as $isHeadingNode,wt as $isQuoteNode,yt as DRAG_DROP_PASTE,Nt as HeadingNode,Dt as QuoteNode,Ft as eventFiles,Mt as registerRichText};
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "rich-text"
8
8
  ],
9
9
  "license": "MIT",
10
- "version": "0.31.1-nightly.20250508.0",
10
+ "version": "0.31.1",
11
11
  "main": "LexicalRichText.js",
12
12
  "types": "index.d.ts",
13
13
  "repository": {
@@ -35,9 +35,9 @@
35
35
  }
36
36
  },
37
37
  "dependencies": {
38
- "@lexical/clipboard": "0.31.1-nightly.20250508.0",
39
- "@lexical/selection": "0.31.1-nightly.20250508.0",
40
- "@lexical/utils": "0.31.1-nightly.20250508.0",
41
- "lexical": "0.31.1-nightly.20250508.0"
38
+ "@lexical/clipboard": "0.31.1",
39
+ "@lexical/selection": "0.31.1",
40
+ "@lexical/utils": "0.31.1",
41
+ "lexical": "0.31.1"
42
42
  }
43
43
  }