@lexical/rich-text 0.6.5 → 0.7.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.
- package/LexicalRichText.dev.js +39 -18
- package/LexicalRichText.prod.js +24 -23
- package/index.d.ts +2 -2
- package/package.json +5 -5
package/LexicalRichText.dev.js
CHANGED
|
@@ -126,11 +126,11 @@ class QuoteNode extends lexical.ElementNode {
|
|
|
126
126
|
} // Mutation
|
|
127
127
|
|
|
128
128
|
|
|
129
|
-
insertNewAfter() {
|
|
129
|
+
insertNewAfter(_, restoreSelection) {
|
|
130
130
|
const newBlock = lexical.$createParagraphNode();
|
|
131
131
|
const direction = this.getDirection();
|
|
132
132
|
newBlock.setDirection(direction);
|
|
133
|
-
this.insertAfter(newBlock);
|
|
133
|
+
this.insertAfter(newBlock, restoreSelection);
|
|
134
134
|
return newBlock;
|
|
135
135
|
}
|
|
136
136
|
|
|
@@ -265,12 +265,12 @@ class HeadingNode extends lexical.ElementNode {
|
|
|
265
265
|
} // Mutation
|
|
266
266
|
|
|
267
267
|
|
|
268
|
-
insertNewAfter(selection) {
|
|
268
|
+
insertNewAfter(selection, restoreSelection = true) {
|
|
269
269
|
const anchorOffet = selection ? selection.anchor.offset : 0;
|
|
270
270
|
const newElement = anchorOffet > 0 && anchorOffet < this.getTextContentSize() ? $createHeadingNode(this.getTag()) : lexical.$createParagraphNode();
|
|
271
271
|
const direction = this.getDirection();
|
|
272
272
|
newElement.setDirection(direction);
|
|
273
|
-
this.insertAfter(newElement);
|
|
273
|
+
this.insertAfter(newElement, restoreSelection);
|
|
274
274
|
return newElement;
|
|
275
275
|
}
|
|
276
276
|
|
|
@@ -403,11 +403,16 @@ function handleIndentAndOutdent(insertTab, indentOrOutdent) {
|
|
|
403
403
|
}
|
|
404
404
|
}
|
|
405
405
|
|
|
406
|
-
function isTargetWithinDecorator(target) {
|
|
406
|
+
function $isTargetWithinDecorator(target) {
|
|
407
407
|
const node = lexical.$getNearestNodeFromDOMNode(target);
|
|
408
408
|
return lexical.$isDecoratorNode(node);
|
|
409
409
|
}
|
|
410
410
|
|
|
411
|
+
function $isSelectionAtEndOfRoot(selection) {
|
|
412
|
+
const focus = selection.focus;
|
|
413
|
+
return focus.key === 'root' && focus.offset === lexical.$getRoot().getChildrenSize();
|
|
414
|
+
}
|
|
415
|
+
|
|
411
416
|
function registerRichText(editor) {
|
|
412
417
|
const removeListener = utils.mergeRegister(editor.registerCommand(lexical.CLICK_COMMAND, payload => {
|
|
413
418
|
const selection = lexical.$getSelection();
|
|
@@ -556,7 +561,7 @@ function registerRichText(editor) {
|
|
|
556
561
|
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ARROW_UP_COMMAND, event => {
|
|
557
562
|
const selection = lexical.$getSelection();
|
|
558
563
|
|
|
559
|
-
if (lexical.$isNodeSelection(selection) &&
|
|
564
|
+
if (lexical.$isNodeSelection(selection) && !$isTargetWithinDecorator(event.target)) {
|
|
560
565
|
// If selection is on a node, let's try and move selection
|
|
561
566
|
// back to being a range selection.
|
|
562
567
|
const nodes = selection.getNodes();
|
|
@@ -565,6 +570,18 @@ function registerRichText(editor) {
|
|
|
565
570
|
nodes[0].selectPrevious();
|
|
566
571
|
return true;
|
|
567
572
|
}
|
|
573
|
+
} else if (lexical.$isRangeSelection(selection)) {
|
|
574
|
+
const possibleNode = lexical.$getAdjacentNode(selection.focus, true);
|
|
575
|
+
|
|
576
|
+
if (lexical.$isDecoratorNode(possibleNode) && !possibleNode.isIsolated()) {
|
|
577
|
+
possibleNode.selectPrevious();
|
|
578
|
+
event.preventDefault();
|
|
579
|
+
return true;
|
|
580
|
+
} else if (lexical.$isElementNode(possibleNode) && !possibleNode.isInline() && !possibleNode.canBeEmpty()) {
|
|
581
|
+
possibleNode.select();
|
|
582
|
+
event.preventDefault();
|
|
583
|
+
return true;
|
|
584
|
+
}
|
|
568
585
|
}
|
|
569
586
|
|
|
570
587
|
return false;
|
|
@@ -580,6 +597,19 @@ function registerRichText(editor) {
|
|
|
580
597
|
nodes[0].selectNext(0, 0);
|
|
581
598
|
return true;
|
|
582
599
|
}
|
|
600
|
+
} else if (lexical.$isRangeSelection(selection)) {
|
|
601
|
+
if ($isSelectionAtEndOfRoot(selection)) {
|
|
602
|
+
event.preventDefault();
|
|
603
|
+
return true;
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
const possibleNode = lexical.$getAdjacentNode(selection.focus, false);
|
|
607
|
+
|
|
608
|
+
if (lexical.$isDecoratorNode(possibleNode) && !possibleNode.isIsolated()) {
|
|
609
|
+
possibleNode.selectNext();
|
|
610
|
+
event.preventDefault();
|
|
611
|
+
return true;
|
|
612
|
+
}
|
|
583
613
|
}
|
|
584
614
|
|
|
585
615
|
return false;
|
|
@@ -613,7 +643,7 @@ function registerRichText(editor) {
|
|
|
613
643
|
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ARROW_RIGHT_COMMAND, event => {
|
|
614
644
|
const selection$1 = lexical.$getSelection();
|
|
615
645
|
|
|
616
|
-
if (lexical.$isNodeSelection(selection$1) &&
|
|
646
|
+
if (lexical.$isNodeSelection(selection$1) && !$isTargetWithinDecorator(event.target)) {
|
|
617
647
|
// If selection is on a node, let's try and move selection
|
|
618
648
|
// back to being a range selection.
|
|
619
649
|
const nodes = selection$1.getNodes();
|
|
@@ -639,7 +669,7 @@ function registerRichText(editor) {
|
|
|
639
669
|
|
|
640
670
|
return false;
|
|
641
671
|
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_BACKSPACE_COMMAND, event => {
|
|
642
|
-
if (isTargetWithinDecorator(event.target)) {
|
|
672
|
+
if ($isTargetWithinDecorator(event.target)) {
|
|
643
673
|
return false;
|
|
644
674
|
}
|
|
645
675
|
|
|
@@ -665,7 +695,7 @@ function registerRichText(editor) {
|
|
|
665
695
|
|
|
666
696
|
return editor.dispatchCommand(lexical.DELETE_CHARACTER_COMMAND, true);
|
|
667
697
|
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_DELETE_COMMAND, event => {
|
|
668
|
-
if (isTargetWithinDecorator(event.target)) {
|
|
698
|
+
if ($isTargetWithinDecorator(event.target)) {
|
|
669
699
|
return false;
|
|
670
700
|
}
|
|
671
701
|
|
|
@@ -704,15 +734,6 @@ function registerRichText(editor) {
|
|
|
704
734
|
}
|
|
705
735
|
|
|
706
736
|
return editor.dispatchCommand(lexical.INSERT_PARAGRAPH_COMMAND, undefined);
|
|
707
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_TAB_COMMAND, event => {
|
|
708
|
-
const selection = lexical.$getSelection();
|
|
709
|
-
|
|
710
|
-
if (!lexical.$isRangeSelection(selection)) {
|
|
711
|
-
return false;
|
|
712
|
-
}
|
|
713
|
-
|
|
714
|
-
event.preventDefault();
|
|
715
|
-
return editor.dispatchCommand(event.shiftKey ? lexical.OUTDENT_CONTENT_COMMAND : lexical.INDENT_CONTENT_COMMAND, undefined);
|
|
716
737
|
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ESCAPE_COMMAND, () => {
|
|
717
738
|
const selection = lexical.$getSelection();
|
|
718
739
|
|
package/LexicalRichText.prod.js
CHANGED
|
@@ -4,28 +4,29 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
-
'use strict';var
|
|
7
|
+
'use strict';var a=require("@lexical/clipboard"),g=require("@lexical/selection"),k=require("@lexical/utils"),l=require("lexical");function m(c,b){return"undefined"!==typeof document.caretRangeFromPoint?(c=document.caretRangeFromPoint(c,b),null===c?null:{node:c.startContainer,offset:c.startOffset}):"undefined"!==document.caretPositionFromPoint?(c=document.caretPositionFromPoint(c,b),null===c?null:{node:c.offsetNode,offset:c.offset}):null}
|
|
8
8
|
let p="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,q=p&&"documentMode"in document?document.documentMode:null;p&&/Mac|iPod|iPhone|iPad/.test(navigator.platform);p&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent);let r=p&&"InputEvent"in window&&!q?"getTargetRanges"in new window.InputEvent("input"):!1,t=p&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent),u=p&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;
|
|
9
9
|
p&&/^(?=.*Chrome).*/i.test(navigator.userAgent);let w=l.createCommand("DRAG_DROP_PASTE_FILE");
|
|
10
|
-
class x extends l.ElementNode{static getType(){return"quote"}static clone(
|
|
11
|
-
l.$createParagraphNode()
|
|
12
|
-
class A extends l.ElementNode{static getType(){return"heading"}static clone(
|
|
13
|
-
priority:0}),h6:()=>({conversion:B,priority:0}),p:
|
|
14
|
-
let
|
|
15
|
-
function E(
|
|
16
|
-
async function G(b
|
|
17
|
-
function I(b
|
|
18
|
-
exports.$isQuoteNode=function(
|
|
19
|
-
exports.registerRichText=function(
|
|
20
|
-
|
|
21
|
-
(
|
|
22
|
-
d=d.getNodes();for(const e of d)k.$getNearestBlockElementAncestorOrThrow(e).setFormat(
|
|
23
|
-
()=>{I(()=>{
|
|
24
|
-
!J(
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
if(l.$isTextNode(f))e.anchor.set(f.getKey(),n,"text"),e.focus.set(f.getKey(),n,"text");else{const h=f.getParentOrThrow().getKey();f=f.getIndexWithinParent()+1;e.anchor.set(h,
|
|
30
|
-
|
|
31
|
-
l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.PASTE_COMMAND,
|
|
10
|
+
class x extends l.ElementNode{static getType(){return"quote"}static clone(c){return new x(c.__key)}constructor(c){super(c)}createDOM(c){let b=document.createElement("blockquote");k.addClassNamesToElement(b,c.theme.quote);return b}updateDOM(){return!1}static importDOM(){return{blockquote:()=>({conversion:y,priority:0})}}static importJSON(c){let b=z();b.setFormat(c.format);b.setIndent(c.indent);b.setDirection(c.direction);return b}exportJSON(){return{...super.exportJSON(),type:"quote"}}insertNewAfter(c,
|
|
11
|
+
b){c=l.$createParagraphNode();let d=this.getDirection();c.setDirection(d);this.insertAfter(c,b);return c}collapseAtStart(){let c=l.$createParagraphNode();this.getChildren().forEach(b=>c.append(b));this.replace(c);return!0}}function z(){return l.$applyNodeReplacement(new x)}
|
|
12
|
+
class A extends l.ElementNode{static getType(){return"heading"}static clone(c){return new A(c.__tag,c.__key)}constructor(c,b){super(b);this.__tag=c}getTag(){return this.__tag}createDOM(c){let b=this.__tag,d=document.createElement(b);c=c.theme.heading;void 0!==c&&k.addClassNamesToElement(d,c[b]);return d}updateDOM(){return!1}static importDOM(){return{h1:()=>({conversion:B,priority:0}),h2:()=>({conversion:B,priority:0}),h3:()=>({conversion:B,priority:0}),h4:()=>({conversion:B,priority:0}),h5:()=>({conversion:B,
|
|
13
|
+
priority:0}),h6:()=>({conversion:B,priority:0}),p:c=>{c=c.firstChild;return null!==c&&D(c)?{conversion:()=>({node:null}),priority:3}:null},span:c=>D(c)?{conversion:()=>({node:E("h1")}),priority:3}:null}}static importJSON(c){let b=E(c.tag);b.setFormat(c.format);b.setIndent(c.indent);b.setDirection(c.direction);return b}exportJSON(){return{...super.exportJSON(),tag:this.getTag(),type:"heading",version:1}}insertNewAfter(c,b=!0){c=c?c.anchor.offset:0;c=0<c&&c<this.getTextContentSize()?E(this.getTag()):
|
|
14
|
+
l.$createParagraphNode();let d=this.getDirection();c.setDirection(d);this.insertAfter(c,b);return c}collapseAtStart(){let c=this.isEmpty()?l.$createParagraphNode():E(this.getTag());this.getChildren().forEach(b=>c.append(b));this.replace(c);return!0}extractWithChild(){return!0}}function D(c){return"span"===c.nodeName.toLowerCase()?"26pt"===c.style.fontSize:!1}function B(c){c=c.nodeName.toLowerCase();let b=null;if("h1"===c||"h2"===c||"h3"===c||"h4"===c||"h5"===c||"h6"===c)b=E(c);return{node:b}}
|
|
15
|
+
function y(){return{node:z()}}function E(c){return l.$applyNodeReplacement(new A(c))}function F(c,b){c.preventDefault();b.update(()=>{let d=l.$getSelection(),e=c instanceof InputEvent||c instanceof KeyboardEvent?null:c.clipboardData;null!=e&&(l.$isRangeSelection(d)||l.DEPRECATED_$isGridSelection(d))&&a.$insertDataTransferForRichText(e,d,b)},{tag:"paste"})}
|
|
16
|
+
async function G(c,b){await a.copyToClipboard__EXPERIMENTAL(b,c instanceof ClipboardEvent?c:null);b.update(()=>{let d=l.$getSelection();l.$isRangeSelection(d)?d.removeText():l.$isNodeSelection(d)&&d.getNodes().forEach(e=>e.remove())})}function H(c){let b=null;c instanceof DragEvent?b=c.dataTransfer:c instanceof ClipboardEvent&&(b=c.clipboardData);if(null===b)return[!1,[],!1];var d=b.types;c=d.includes("Files");d=d.includes("text/html")||d.includes("text/plain");return[c,Array.from(b.files),d]}
|
|
17
|
+
function I(c,b){var d=l.$getSelection();if(l.$isRangeSelection(d)){var e=new Set;d=d.getNodes();for(let f=0;f<d.length;f++){let n=d[f],v=n.getKey();if(e.has(v))continue;let h=k.$getNearestBlockElementAncestorOrThrow(n),C=h.getKey();h.canInsertTab()?(c(n),e.add(v)):h.canIndent()&&!e.has(C)&&(e.add(C),b(h))}}}function J(c){c=l.$getNearestNodeFromDOMNode(c);return l.$isDecoratorNode(c)}exports.$createHeadingNode=E;exports.$createQuoteNode=z;exports.$isHeadingNode=function(c){return c instanceof A};
|
|
18
|
+
exports.$isQuoteNode=function(c){return c instanceof x};exports.DRAG_DROP_PASTE=w;exports.HeadingNode=A;exports.QuoteNode=x;exports.eventFiles=H;
|
|
19
|
+
exports.registerRichText=function(c){return k.mergeRegister(c.registerCommand(l.CLICK_COMMAND,()=>{const b=l.$getSelection();return l.$isNodeSelection(b)?(b.clear(),!0):!1},0),c.registerCommand(l.DELETE_CHARACTER_COMMAND,b=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;d.deleteCharacter(b);return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.DELETE_WORD_COMMAND,b=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;d.deleteWord(b);return!0},l.COMMAND_PRIORITY_EDITOR),
|
|
20
|
+
c.registerCommand(l.DELETE_LINE_COMMAND,b=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;d.deleteLine(b);return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.CONTROLLED_TEXT_INSERTION_COMMAND,b=>{const d=l.$getSelection();if("string"===typeof b)l.$isRangeSelection(d)?d.insertText(b):l.DEPRECATED_$isGridSelection(d);else{if(!l.$isRangeSelection(d)&&!l.DEPRECATED_$isGridSelection(d))return!1;const e=b.dataTransfer;null!=e?a.$insertDataTransferForRichText(e,d,c):l.$isRangeSelection(d)&&
|
|
21
|
+
(b=b.data)&&d.insertText(b)}return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.REMOVE_TEXT_COMMAND,()=>{const b=l.$getSelection();if(!l.$isRangeSelection(b))return!1;b.removeText();return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.FORMAT_TEXT_COMMAND,b=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;d.formatText(b);return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.FORMAT_ELEMENT_COMMAND,b=>{var d=l.$getSelection();if(!l.$isRangeSelection(d)&&!l.$isNodeSelection(d))return!1;
|
|
22
|
+
d=d.getNodes();for(const e of d)k.$getNearestBlockElementAncestorOrThrow(e).setFormat(b);return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.INSERT_LINE_BREAK_COMMAND,b=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;d.insertLineBreak(b);return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.INSERT_PARAGRAPH_COMMAND,()=>{const b=l.$getSelection();if(!l.$isRangeSelection(b))return!1;b.insertParagraph();return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.INDENT_CONTENT_COMMAND,
|
|
23
|
+
()=>{I(()=>{c.dispatchCommand(l.CONTROLLED_TEXT_INSERTION_COMMAND,"\t")},b=>{const d=b.getIndent();10!==d&&b.setIndent(d+1)});return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.OUTDENT_CONTENT_COMMAND,()=>{I(b=>{l.$isTextNode(b)&&(b=b.getTextContent(),"\t"===b[b.length-1]&&c.dispatchCommand(l.DELETE_CHARACTER_COMMAND,!0))},b=>{const d=b.getIndent();0!==d&&b.setIndent(d-1)});return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.KEY_ARROW_UP_COMMAND,b=>{var d=l.$getSelection();if(l.$isNodeSelection(d)&&
|
|
24
|
+
!J(b.target)){if(b=d.getNodes(),0<b.length)return b[0].selectPrevious(),!0}else if(l.$isRangeSelection(d)){d=l.$getAdjacentNode(d.focus,!0);if(l.$isDecoratorNode(d)&&!d.isIsolated())return d.selectPrevious(),b.preventDefault(),!0;if(l.$isElementNode(d)&&!d.isInline()&&!d.canBeEmpty())return d.select(),b.preventDefault(),!0}return!1},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.KEY_ARROW_DOWN_COMMAND,b=>{var d=l.$getSelection();if(l.$isNodeSelection(d)){if(b=d.getNodes(),0<b.length)return b[0].selectNext(0,
|
|
25
|
+
0),!0}else if(l.$isRangeSelection(d)){let e=d.focus;if("root"===e.key&&e.offset===l.$getRoot().getChildrenSize())return b.preventDefault(),!0;d=l.$getAdjacentNode(d.focus,!1);if(l.$isDecoratorNode(d)&&!d.isIsolated())return d.selectNext(),b.preventDefault(),!0}return!1},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.KEY_ARROW_LEFT_COMMAND,b=>{const d=l.$getSelection();if(l.$isNodeSelection(d)){var e=d.getNodes();if(0<e.length)return b.preventDefault(),e[0].selectPrevious(),!0}return l.$isRangeSelection(d)?
|
|
26
|
+
g.$shouldOverrideDefaultCharacterSelection(d,!0)?(e=b.shiftKey,b.preventDefault(),g.$moveCharacter(d,e,!0),!0):!1:!1},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.KEY_ARROW_RIGHT_COMMAND,b=>{const d=l.$getSelection();if(l.$isNodeSelection(d)&&!J(b.target)){var e=d.getNodes();if(0<e.length)return b.preventDefault(),e[0].selectNext(0,0),!0}if(!l.$isRangeSelection(d))return!1;e=b.shiftKey;return g.$shouldOverrideDefaultCharacterSelection(d,!1)?(b.preventDefault(),g.$moveCharacter(d,e,!1),!0):!1},l.COMMAND_PRIORITY_EDITOR),
|
|
27
|
+
c.registerCommand(l.KEY_BACKSPACE_COMMAND,b=>{if(J(b.target))return!1;const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;b.preventDefault();({anchor:b}=d);const e=b.getNode();return d.isCollapsed()&&0===b.offset&&!l.$isRootNode(e)&&0<k.$getNearestBlockElementAncestorOrThrow(e).getIndent()?c.dispatchCommand(l.OUTDENT_CONTENT_COMMAND,void 0):c.dispatchCommand(l.DELETE_CHARACTER_COMMAND,!0)},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.KEY_DELETE_COMMAND,b=>{if(J(b.target))return!1;const d=
|
|
28
|
+
l.$getSelection();if(!l.$isRangeSelection(d))return!1;b.preventDefault();return c.dispatchCommand(l.DELETE_CHARACTER_COMMAND,!1)},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.KEY_ENTER_COMMAND,b=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;if(null!==b){if((u||t)&&r)return!1;b.preventDefault();if(b.shiftKey)return c.dispatchCommand(l.INSERT_LINE_BREAK_COMMAND,!1)}return c.dispatchCommand(l.INSERT_PARAGRAPH_COMMAND,void 0)},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.KEY_ESCAPE_COMMAND,
|
|
29
|
+
()=>{const b=l.$getSelection();if(!l.$isRangeSelection(b))return!1;c.blur();return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.DROP_COMMAND,b=>{const [,d]=H(b);if(0<d.length){var e=m(b.clientX,b.clientY);if(null!==e){const {offset:n,node:v}=e;var f=l.$getNearestNodeFromDOMNode(v);if(null!==f){e=l.$createRangeSelection();if(l.$isTextNode(f))e.anchor.set(f.getKey(),n,"text"),e.focus.set(f.getKey(),n,"text");else{const h=f.getParentOrThrow().getKey();f=f.getIndexWithinParent()+1;e.anchor.set(h,
|
|
30
|
+
f,"element");e.focus.set(h,f,"element")}e=l.$normalizeSelection__EXPERIMENTAL(e);l.$setSelection(e)}c.dispatchCommand(w,d)}b.preventDefault();return!0}b=l.$getSelection();return l.$isRangeSelection(b)?!0:!1},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.DRAGSTART_COMMAND,b=>{[b]=H(b);const d=l.$getSelection();return b&&!l.$isRangeSelection(d)?!1:!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.DRAGOVER_COMMAND,b=>{var [d]=H(b);const e=l.$getSelection();if(d&&!l.$isRangeSelection(e))return!1;d=
|
|
31
|
+
m(b.clientX,b.clientY);null!==d&&(d=l.$getNearestNodeFromDOMNode(d.node),l.$isDecoratorNode(d)&&b.preventDefault());return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.COPY_COMMAND,b=>{a.copyToClipboard__EXPERIMENTAL(c,b instanceof ClipboardEvent?b:null);return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.CUT_COMMAND,b=>{G(b,c);return!0},l.COMMAND_PRIORITY_EDITOR),c.registerCommand(l.PASTE_COMMAND,b=>{const [,d,e]=H(b);if(0<d.length&&!e)return c.dispatchCommand(w,d),!0;const f=l.$getSelection();
|
|
32
|
+
return l.$isRangeSelection(f)||l.DEPRECATED_$isGridSelection(f)?(F(b,c),!0):!1},l.COMMAND_PRIORITY_EDITOR))}
|
package/index.d.ts
CHANGED
|
@@ -28,7 +28,7 @@ export declare class QuoteNode extends ElementNode {
|
|
|
28
28
|
static importDOM(): DOMConversionMap | null;
|
|
29
29
|
static importJSON(serializedNode: SerializedQuoteNode): QuoteNode;
|
|
30
30
|
exportJSON(): SerializedElementNode;
|
|
31
|
-
insertNewAfter(): ParagraphNode;
|
|
31
|
+
insertNewAfter(_: RangeSelection, restoreSelection?: boolean): ParagraphNode;
|
|
32
32
|
collapseAtStart(): true;
|
|
33
33
|
}
|
|
34
34
|
export declare function $createQuoteNode(): QuoteNode;
|
|
@@ -47,7 +47,7 @@ export declare class HeadingNode extends ElementNode {
|
|
|
47
47
|
static importDOM(): DOMConversionMap | null;
|
|
48
48
|
static importJSON(serializedNode: SerializedHeadingNode): HeadingNode;
|
|
49
49
|
exportJSON(): SerializedHeadingNode;
|
|
50
|
-
insertNewAfter(selection?: RangeSelection): ParagraphNode | HeadingNode;
|
|
50
|
+
insertNewAfter(selection?: RangeSelection, restoreSelection?: boolean): ParagraphNode | HeadingNode;
|
|
51
51
|
collapseAtStart(): true;
|
|
52
52
|
extractWithChild(): boolean;
|
|
53
53
|
}
|
package/package.json
CHANGED
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
"rich-text"
|
|
8
8
|
],
|
|
9
9
|
"license": "MIT",
|
|
10
|
-
"version": "0.
|
|
10
|
+
"version": "0.7.1",
|
|
11
11
|
"main": "LexicalRichText.js",
|
|
12
12
|
"peerDependencies": {
|
|
13
|
-
"lexical": "0.
|
|
14
|
-
"@lexical/selection": "0.
|
|
15
|
-
"@lexical/clipboard": "0.
|
|
16
|
-
"@lexical/utils": "0.
|
|
13
|
+
"lexical": "0.7.1",
|
|
14
|
+
"@lexical/selection": "0.7.1",
|
|
15
|
+
"@lexical/clipboard": "0.7.1",
|
|
16
|
+
"@lexical/utils": "0.7.1"
|
|
17
17
|
},
|
|
18
18
|
"repository": {
|
|
19
19
|
"type": "git",
|