@lexical/rich-text 0.2.5 → 0.2.8
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.d.ts +6 -2
- package/LexicalRichText.dev.js +33 -51
- package/LexicalRichText.prod.js +7 -7
- package/package.json +6 -6
package/LexicalRichText.d.ts
CHANGED
|
@@ -27,7 +27,9 @@ export declare class QuoteNode extends ElementNode {
|
|
|
27
27
|
collapseAtStart(): true;
|
|
28
28
|
}
|
|
29
29
|
export function $createQuoteNode(): QuoteNode;
|
|
30
|
-
export function $isQuoteNode(
|
|
30
|
+
export function $isQuoteNode(
|
|
31
|
+
node: LexicalNode | null | undefined,
|
|
32
|
+
): node is QuoteNode;
|
|
31
33
|
export type HeadingTagType = 'h1' | 'h2' | 'h3' | 'h4' | 'h5';
|
|
32
34
|
export declare class HeadingNode extends ElementNode {
|
|
33
35
|
__tag: HeadingTagType;
|
|
@@ -42,7 +44,9 @@ export declare class HeadingNode extends ElementNode {
|
|
|
42
44
|
collapseAtStart(): true;
|
|
43
45
|
}
|
|
44
46
|
export function $createHeadingNode(headingTag: HeadingTagType): HeadingNode;
|
|
45
|
-
export function $isHeadingNode(
|
|
47
|
+
export function $isHeadingNode(
|
|
48
|
+
node: LexicalNode | null | undefined,
|
|
49
|
+
): node is HeadingNode;
|
|
46
50
|
export function registerRichText(
|
|
47
51
|
editor: LexicalEditor,
|
|
48
52
|
initialEditorState?: InitialEditorStateType,
|
package/LexicalRichText.dev.js
CHANGED
|
@@ -17,24 +17,16 @@ var lexical = require('lexical');
|
|
|
17
17
|
* This source code is licensed under the MIT license found in the
|
|
18
18
|
* LICENSE file in the root directory of this source tree.
|
|
19
19
|
*
|
|
20
|
-
*
|
|
21
20
|
*/
|
|
22
21
|
const CAN_USE_DOM = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined';
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
26
|
-
*
|
|
27
|
-
* This source code is licensed under the MIT license found in the
|
|
28
|
-
* LICENSE file in the root directory of this source tree.
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*/
|
|
32
|
-
const documentMode = CAN_USE_DOM && 'documentMode' in document ? document.documentMode : null;
|
|
22
|
+
const documentMode = // @ts-ignore
|
|
23
|
+
CAN_USE_DOM && 'documentMode' in document ? document.documentMode : null;
|
|
33
24
|
CAN_USE_DOM && /Mac|iPod|iPhone|iPad/.test(navigator.platform);
|
|
34
25
|
CAN_USE_DOM && /^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent);
|
|
35
26
|
const CAN_USE_BEFORE_INPUT = CAN_USE_DOM && 'InputEvent' in window && !documentMode ? 'getTargetRanges' in new window.InputEvent('input') : false;
|
|
36
|
-
const IS_SAFARI = CAN_USE_DOM && /Version\/[\d
|
|
37
|
-
const IS_IOS = CAN_USE_DOM && /iPad|iPhone|iPod/.test(navigator.userAgent) &&
|
|
27
|
+
const IS_SAFARI = CAN_USE_DOM && /Version\/[\d.]+.*Safari/.test(navigator.userAgent);
|
|
28
|
+
const IS_IOS = CAN_USE_DOM && /iPad|iPhone|iPod/.test(navigator.userAgent) && // @ts-ignore
|
|
29
|
+
!window.MSStream; // Keep these in case we need to use them in the future.
|
|
38
30
|
// export const IS_WINDOWS: boolean = CAN_USE_DOM && /Win/.test(navigator.platform);
|
|
39
31
|
// export const IS_CHROME: boolean = CAN_USE_DOM && /^(?=.*Chrome).*/i.test(navigator.userAgent);
|
|
40
32
|
// export const canUseTextInputEvent: boolean = CAN_USE_DOM && 'TextEvent' in window && !documentMode;
|
|
@@ -45,7 +37,6 @@ const IS_IOS = CAN_USE_DOM && /iPad|iPhone|iPod/.test(navigator.userAgent) && !w
|
|
|
45
37
|
* This source code is licensed under the MIT license found in the
|
|
46
38
|
* LICENSE file in the root directory of this source tree.
|
|
47
39
|
*
|
|
48
|
-
*
|
|
49
40
|
*/
|
|
50
41
|
// Convoluted logic to make this work with Flow. Order matters.
|
|
51
42
|
const options = {
|
|
@@ -181,6 +172,10 @@ class HeadingNode extends lexical.ElementNode {
|
|
|
181
172
|
return true;
|
|
182
173
|
}
|
|
183
174
|
|
|
175
|
+
extractWithChild() {
|
|
176
|
+
return true;
|
|
177
|
+
}
|
|
178
|
+
|
|
184
179
|
}
|
|
185
180
|
|
|
186
181
|
function convertHeadingElement(domNode) {
|
|
@@ -251,7 +246,7 @@ function onPasteForRichText(event, editor) {
|
|
|
251
246
|
const selection = lexical.$getSelection();
|
|
252
247
|
const clipboardData = event.clipboardData;
|
|
253
248
|
|
|
254
|
-
if (clipboardData != null && lexical.$isRangeSelection(selection) || lexical.$isGridSelection(selection)) {
|
|
249
|
+
if (clipboardData != null && (lexical.$isRangeSelection(selection) || lexical.$isGridSelection(selection))) {
|
|
255
250
|
clipboard.$insertDataTransferForRichText(clipboardData, selection, editor);
|
|
256
251
|
}
|
|
257
252
|
});
|
|
@@ -265,7 +260,7 @@ function onCopyForRichText(event, editor) {
|
|
|
265
260
|
|
|
266
261
|
if (selection !== null) {
|
|
267
262
|
if (clipboardData != null) {
|
|
268
|
-
const htmlString = clipboard
|
|
263
|
+
const htmlString = clipboard.$getHtmlContent(editor);
|
|
269
264
|
const lexicalString = clipboard.$getLexicalContent(editor);
|
|
270
265
|
|
|
271
266
|
if (htmlString !== null) {
|
|
@@ -341,29 +336,26 @@ function registerRichText(editor, initialEditorState) {
|
|
|
341
336
|
|
|
342
337
|
selection.deleteCharacter(isBackward);
|
|
343
338
|
return true;
|
|
344
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.DELETE_WORD_COMMAND,
|
|
339
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.DELETE_WORD_COMMAND, isBackward => {
|
|
345
340
|
const selection = lexical.$getSelection();
|
|
346
341
|
|
|
347
342
|
if (!lexical.$isRangeSelection(selection)) {
|
|
348
343
|
return false;
|
|
349
344
|
}
|
|
350
345
|
|
|
351
|
-
const isBackward = payload;
|
|
352
346
|
selection.deleteWord(isBackward);
|
|
353
347
|
return true;
|
|
354
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.DELETE_LINE_COMMAND,
|
|
348
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.DELETE_LINE_COMMAND, isBackward => {
|
|
355
349
|
const selection = lexical.$getSelection();
|
|
356
350
|
|
|
357
351
|
if (!lexical.$isRangeSelection(selection)) {
|
|
358
352
|
return false;
|
|
359
353
|
}
|
|
360
354
|
|
|
361
|
-
const isBackward = payload;
|
|
362
355
|
selection.deleteLine(isBackward);
|
|
363
356
|
return true;
|
|
364
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.INSERT_TEXT_COMMAND,
|
|
357
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.INSERT_TEXT_COMMAND, eventOrText => {
|
|
365
358
|
const selection = lexical.$getSelection();
|
|
366
|
-
const eventOrText = payload;
|
|
367
359
|
|
|
368
360
|
if (typeof eventOrText === 'string') {
|
|
369
361
|
if (lexical.$isRangeSelection(selection)) {
|
|
@@ -390,7 +382,7 @@ function registerRichText(editor, initialEditorState) {
|
|
|
390
382
|
}
|
|
391
383
|
|
|
392
384
|
return true;
|
|
393
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.REMOVE_TEXT_COMMAND,
|
|
385
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.REMOVE_TEXT_COMMAND, () => {
|
|
394
386
|
const selection = lexical.$getSelection();
|
|
395
387
|
|
|
396
388
|
if (!lexical.$isRangeSelection(selection)) {
|
|
@@ -399,14 +391,13 @@ function registerRichText(editor, initialEditorState) {
|
|
|
399
391
|
|
|
400
392
|
selection.removeText();
|
|
401
393
|
return true;
|
|
402
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.FORMAT_TEXT_COMMAND,
|
|
394
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.FORMAT_TEXT_COMMAND, format => {
|
|
403
395
|
const selection = lexical.$getSelection();
|
|
404
396
|
|
|
405
397
|
if (!lexical.$isRangeSelection(selection)) {
|
|
406
398
|
return false;
|
|
407
399
|
}
|
|
408
400
|
|
|
409
|
-
const format = payload;
|
|
410
401
|
selection.formatText(format);
|
|
411
402
|
return true;
|
|
412
403
|
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.FORMAT_ELEMENT_COMMAND, format => {
|
|
@@ -424,17 +415,16 @@ function registerRichText(editor, initialEditorState) {
|
|
|
424
415
|
}
|
|
425
416
|
|
|
426
417
|
return true;
|
|
427
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.INSERT_LINE_BREAK_COMMAND,
|
|
418
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.INSERT_LINE_BREAK_COMMAND, selectStart => {
|
|
428
419
|
const selection = lexical.$getSelection();
|
|
429
420
|
|
|
430
421
|
if (!lexical.$isRangeSelection(selection)) {
|
|
431
422
|
return false;
|
|
432
423
|
}
|
|
433
424
|
|
|
434
|
-
const selectStart = payload;
|
|
435
425
|
selection.insertLineBreak(selectStart);
|
|
436
426
|
return true;
|
|
437
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.INSERT_PARAGRAPH_COMMAND,
|
|
427
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.INSERT_PARAGRAPH_COMMAND, () => {
|
|
438
428
|
const selection = lexical.$getSelection();
|
|
439
429
|
|
|
440
430
|
if (!lexical.$isRangeSelection(selection)) {
|
|
@@ -443,7 +433,7 @@ function registerRichText(editor, initialEditorState) {
|
|
|
443
433
|
|
|
444
434
|
selection.insertParagraph();
|
|
445
435
|
return true;
|
|
446
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.INDENT_CONTENT_COMMAND,
|
|
436
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.INDENT_CONTENT_COMMAND, () => {
|
|
447
437
|
handleIndentAndOutdent(() => {
|
|
448
438
|
editor.dispatchCommand(lexical.INSERT_TEXT_COMMAND, '\t');
|
|
449
439
|
}, block => {
|
|
@@ -454,7 +444,7 @@ function registerRichText(editor, initialEditorState) {
|
|
|
454
444
|
}
|
|
455
445
|
});
|
|
456
446
|
return true;
|
|
457
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.OUTDENT_CONTENT_COMMAND,
|
|
447
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.OUTDENT_CONTENT_COMMAND, () => {
|
|
458
448
|
handleIndentAndOutdent(node => {
|
|
459
449
|
if (lexical.$isTextNode(node)) {
|
|
460
450
|
const textContent = node.getTextContent();
|
|
@@ -472,14 +462,13 @@ function registerRichText(editor, initialEditorState) {
|
|
|
472
462
|
}
|
|
473
463
|
});
|
|
474
464
|
return true;
|
|
475
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ARROW_LEFT_COMMAND,
|
|
465
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ARROW_LEFT_COMMAND, event => {
|
|
476
466
|
const selection$1 = lexical.$getSelection();
|
|
477
467
|
|
|
478
468
|
if (!lexical.$isRangeSelection(selection$1)) {
|
|
479
469
|
return false;
|
|
480
470
|
}
|
|
481
471
|
|
|
482
|
-
const event = payload;
|
|
483
472
|
const isHoldingShift = event.shiftKey;
|
|
484
473
|
|
|
485
474
|
if (selection.$shouldOverrideDefaultCharacterSelection(selection$1, true)) {
|
|
@@ -489,14 +478,13 @@ function registerRichText(editor, initialEditorState) {
|
|
|
489
478
|
}
|
|
490
479
|
|
|
491
480
|
return false;
|
|
492
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ARROW_RIGHT_COMMAND,
|
|
481
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ARROW_RIGHT_COMMAND, event => {
|
|
493
482
|
const selection$1 = lexical.$getSelection();
|
|
494
483
|
|
|
495
484
|
if (!lexical.$isRangeSelection(selection$1)) {
|
|
496
485
|
return false;
|
|
497
486
|
}
|
|
498
487
|
|
|
499
|
-
const event = payload;
|
|
500
488
|
const isHoldingShift = event.shiftKey;
|
|
501
489
|
|
|
502
490
|
if (selection.$shouldOverrideDefaultCharacterSelection(selection$1, false)) {
|
|
@@ -506,14 +494,13 @@ function registerRichText(editor, initialEditorState) {
|
|
|
506
494
|
}
|
|
507
495
|
|
|
508
496
|
return false;
|
|
509
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_BACKSPACE_COMMAND,
|
|
497
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_BACKSPACE_COMMAND, event => {
|
|
510
498
|
const selection = lexical.$getSelection();
|
|
511
499
|
|
|
512
500
|
if (!lexical.$isRangeSelection(selection)) {
|
|
513
501
|
return false;
|
|
514
502
|
}
|
|
515
503
|
|
|
516
|
-
const event = payload;
|
|
517
504
|
event.preventDefault();
|
|
518
505
|
const {
|
|
519
506
|
anchor
|
|
@@ -523,19 +510,18 @@ function registerRichText(editor, initialEditorState) {
|
|
|
523
510
|
const element = utils.$getNearestBlockElementAncestorOrThrow(anchor.getNode());
|
|
524
511
|
|
|
525
512
|
if (element.getIndent() > 0) {
|
|
526
|
-
return editor.dispatchCommand(lexical.OUTDENT_CONTENT_COMMAND);
|
|
513
|
+
return editor.dispatchCommand(lexical.OUTDENT_CONTENT_COMMAND, undefined);
|
|
527
514
|
}
|
|
528
515
|
}
|
|
529
516
|
|
|
530
517
|
return editor.dispatchCommand(lexical.DELETE_CHARACTER_COMMAND, true);
|
|
531
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_DELETE_COMMAND,
|
|
518
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_DELETE_COMMAND, event => {
|
|
532
519
|
const selection = lexical.$getSelection();
|
|
533
520
|
|
|
534
521
|
if (!lexical.$isRangeSelection(selection)) {
|
|
535
522
|
return false;
|
|
536
523
|
}
|
|
537
524
|
|
|
538
|
-
const event = payload;
|
|
539
525
|
event.preventDefault();
|
|
540
526
|
return editor.dispatchCommand(lexical.DELETE_CHARACTER_COMMAND, false);
|
|
541
527
|
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ENTER_COMMAND, event => {
|
|
@@ -560,22 +546,21 @@ function registerRichText(editor, initialEditorState) {
|
|
|
560
546
|
event.preventDefault();
|
|
561
547
|
|
|
562
548
|
if (event.shiftKey) {
|
|
563
|
-
return editor.dispatchCommand(lexical.INSERT_LINE_BREAK_COMMAND);
|
|
549
|
+
return editor.dispatchCommand(lexical.INSERT_LINE_BREAK_COMMAND, false);
|
|
564
550
|
}
|
|
565
551
|
}
|
|
566
552
|
|
|
567
|
-
return editor.dispatchCommand(lexical.INSERT_PARAGRAPH_COMMAND);
|
|
568
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_TAB_COMMAND,
|
|
553
|
+
return editor.dispatchCommand(lexical.INSERT_PARAGRAPH_COMMAND, undefined);
|
|
554
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_TAB_COMMAND, event => {
|
|
569
555
|
const selection = lexical.$getSelection();
|
|
570
556
|
|
|
571
557
|
if (!lexical.$isRangeSelection(selection)) {
|
|
572
558
|
return false;
|
|
573
559
|
}
|
|
574
560
|
|
|
575
|
-
const event = payload;
|
|
576
561
|
event.preventDefault();
|
|
577
|
-
return editor.dispatchCommand(event.shiftKey ? lexical.OUTDENT_CONTENT_COMMAND : lexical.INDENT_CONTENT_COMMAND);
|
|
578
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ESCAPE_COMMAND,
|
|
562
|
+
return editor.dispatchCommand(event.shiftKey ? lexical.OUTDENT_CONTENT_COMMAND : lexical.INDENT_CONTENT_COMMAND, undefined);
|
|
563
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.KEY_ESCAPE_COMMAND, () => {
|
|
579
564
|
const selection = lexical.$getSelection();
|
|
580
565
|
|
|
581
566
|
if (!lexical.$isRangeSelection(selection)) {
|
|
@@ -594,7 +579,7 @@ function registerRichText(editor, initialEditorState) {
|
|
|
594
579
|
|
|
595
580
|
event.preventDefault();
|
|
596
581
|
return true;
|
|
597
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.DRAGSTART_COMMAND,
|
|
582
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.DRAGSTART_COMMAND, event => {
|
|
598
583
|
const selection = lexical.$getSelection();
|
|
599
584
|
|
|
600
585
|
if (!lexical.$isRangeSelection(selection)) {
|
|
@@ -602,24 +587,21 @@ function registerRichText(editor, initialEditorState) {
|
|
|
602
587
|
} // TODO: Make drag and drop work at some point.
|
|
603
588
|
|
|
604
589
|
|
|
605
|
-
const event = payload;
|
|
606
590
|
event.preventDefault();
|
|
607
591
|
return true;
|
|
608
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.COPY_COMMAND,
|
|
592
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.COPY_COMMAND, event => {
|
|
609
593
|
const selection = lexical.$getSelection();
|
|
610
594
|
|
|
611
595
|
if (lexical.$isRangeSelection(selection) || lexical.$isGridSelection(selection)) {
|
|
612
|
-
const event = payload;
|
|
613
596
|
onCopyForRichText(event, editor);
|
|
614
597
|
return true;
|
|
615
598
|
}
|
|
616
599
|
|
|
617
600
|
return false;
|
|
618
|
-
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.CUT_COMMAND,
|
|
601
|
+
}, lexical.COMMAND_PRIORITY_EDITOR), editor.registerCommand(lexical.CUT_COMMAND, event => {
|
|
619
602
|
const selection = lexical.$getSelection();
|
|
620
603
|
|
|
621
604
|
if (lexical.$isRangeSelection(selection) || lexical.$isGridSelection(selection)) {
|
|
622
|
-
const event = payload;
|
|
623
605
|
onCutForRichText(event, editor);
|
|
624
606
|
return true;
|
|
625
607
|
}
|
package/LexicalRichText.prod.js
CHANGED
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
var a=require("@lexical/clipboard"),h=require("@lexical/selection"),k=require("@lexical/utils"),l=require("lexical");const m="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,n=m&&"documentMode"in document?document.documentMode:null;m&&/Mac|iPod|iPhone|iPad/.test(navigator.platform);m&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent);
|
|
8
|
-
const p=m&&"InputEvent"in window&&!n?"getTargetRanges"in new window.InputEvent("input"):!1,q=m&&/Version\/[\d
|
|
8
|
+
const p=m&&"InputEvent"in window&&!n?"getTargetRanges"in new window.InputEvent("input"):!1,q=m&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent),r=m&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,u={tag:"history-merge"};
|
|
9
9
|
class v extends l.ElementNode{static getType(){return"quote"}static clone(b){return new v(b.__key)}constructor(b){super(b)}createDOM(b){const e=document.createElement("blockquote");k.addClassNamesToElement(e,b.theme.quote);return e}updateDOM(){return!1}insertNewAfter(){const b=l.$createParagraphNode(),e=this.getDirection();b.setDirection(e);this.insertAfter(b);return b}collapseAtStart(){const b=l.$createParagraphNode();this.getChildren().forEach(e=>b.append(e));this.replace(b);return!0}}
|
|
10
10
|
class w extends l.ElementNode{static getType(){return"heading"}static clone(b){return new w(b.__tag,b.__key)}constructor(b,e){super(e);this.__tag=b}getTag(){return this.__tag}createDOM(b){const e=this.__tag,f=document.createElement(e);b=b.theme.heading;void 0!==b&&k.addClassNamesToElement(f,b[e]);return f}updateDOM(){return!1}static importDOM(){return{h1:()=>({conversion:x,priority:0}),h2:()=>({conversion:x,priority:0}),h3:()=>({conversion:x,priority:0}),h4:()=>({conversion:x,priority:0}),h5:()=>
|
|
11
|
-
({conversion:x,priority:0})}}insertNewAfter(){const b=l.$createParagraphNode(),e=this.getDirection();b.setDirection(e);this.insertAfter(b);return b}collapseAtStart(){const b=l.$createParagraphNode();this.getChildren().forEach(e=>b.append(e));this.replace(b);return!0}}function x(b){b=b.nodeName.toLowerCase();let e=null;if("h1"===b||"h2"===b||"h3"===b||"h4"===b||"h5"===b)e=y(b);return{node:e}}function y(b){return new w(b)}
|
|
11
|
+
({conversion:x,priority:0})}}insertNewAfter(){const b=l.$createParagraphNode(),e=this.getDirection();b.setDirection(e);this.insertAfter(b);return b}collapseAtStart(){const b=l.$createParagraphNode();this.getChildren().forEach(e=>b.append(e));this.replace(b);return!0}extractWithChild(){return!0}}function x(b){b=b.nodeName.toLowerCase();let e=null;if("h1"===b||"h2"===b||"h3"===b||"h4"===b||"h5"===b)e=y(b);return{node:e}}function y(b){return new w(b)}
|
|
12
12
|
function z(b,e){if(null!==e)if(void 0===e)b.update(()=>{var f=l.$getRoot();if(null===f.getFirstChild()){const c=l.$createParagraphNode();f.append(c);f=document.activeElement;(null!==l.$getSelection()||null!==f&&f===b.getRootElement())&&c.select()}},u);else if(null!==e)switch(typeof e){case "string":e=b.parseEditorState(e);b.setEditorState(e,u);break;case "object":b.setEditorState(e,u);break;case "function":b.update(e,u)}}
|
|
13
|
-
function A(b,e){b.preventDefault();e.update(()=>{const f=l.$getSelection(),c=b.clipboardData;
|
|
13
|
+
function A(b,e){b.preventDefault();e.update(()=>{const f=l.$getSelection(),c=b.clipboardData;null!=c&&(l.$isRangeSelection(f)||l.$isGridSelection(f))&&a.$insertDataTransferForRichText(c,f,e)})}function B(b,e){b.preventDefault();e.update(()=>{const f=b.clipboardData,c=l.$getSelection();if(null!==c&&null!=f){const d=a.$getHtmlContent(e),g=a.$getLexicalContent(e);null!==d&&f.setData("text/html",d);null!==g&&f.setData("application/x-lexical-editor",g);f.setData("text/plain",c.getTextContent())}})}
|
|
14
14
|
function C(b,e){B(b,e);e.update(()=>{const f=l.$getSelection();l.$isRangeSelection(f)&&f.removeText()})}function D(b,e){var f=l.$getSelection();if(l.$isRangeSelection(f)){var c=new Set;f=f.getNodes();for(let g=0;g<f.length;g++){const t=f[g];var d=t.getKey();c.has(d)||(c.add(d),d=k.$getNearestBlockElementAncestorOrThrow(t),d.canInsertTab()?b(t):d.canIndent()&&e(d))}}}exports.$createHeadingNode=y;exports.$createQuoteNode=function(){return new v};
|
|
15
15
|
exports.$isHeadingNode=function(b){return b instanceof w};exports.$isQuoteNode=function(b){return b instanceof v};exports.HeadingNode=w;exports.QuoteNode=v;
|
|
16
16
|
exports.registerRichText=function(b,e){const f=k.mergeRegister(b.registerCommand(l.CLICK_COMMAND,()=>{const c=l.$getSelection();return l.$isNodeSelection(c)?(c.clear(),!0):!1},0),b.registerCommand(l.DELETE_CHARACTER_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;d.deleteCharacter(c);return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.DELETE_WORD_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;d.deleteWord(c);return!0},l.COMMAND_PRIORITY_EDITOR),
|
|
@@ -19,7 +19,7 @@ l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.REMOVE_TEXT_COMMAND,()=>{const c=
|
|
|
19
19
|
return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.INSERT_LINE_BREAK_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;d.insertLineBreak(c);return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.INSERT_PARAGRAPH_COMMAND,()=>{const c=l.$getSelection();if(!l.$isRangeSelection(c))return!1;c.insertParagraph();return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.INDENT_CONTENT_COMMAND,()=>{D(()=>{b.dispatchCommand(l.INSERT_TEXT_COMMAND,"\t")},c=>{const d=c.getIndent();
|
|
20
20
|
10!==d&&c.setIndent(d+1)});return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.OUTDENT_CONTENT_COMMAND,()=>{D(c=>{l.$isTextNode(c)&&(c=c.getTextContent(),"\t"===c[c.length-1]&&b.dispatchCommand(l.DELETE_CHARACTER_COMMAND,!0))},c=>{const d=c.getIndent();0!==d&&c.setIndent(d-1)});return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_ARROW_LEFT_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;const g=c.shiftKey;return h.$shouldOverrideDefaultCharacterSelection(d,
|
|
21
21
|
!0)?(c.preventDefault(),h.$moveCharacter(d,g,!0),!0):!1},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_ARROW_RIGHT_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;const g=c.shiftKey;return h.$shouldOverrideDefaultCharacterSelection(d,!1)?(c.preventDefault(),h.$moveCharacter(d,g,!1),!0):!1},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_BACKSPACE_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;c.preventDefault();({anchor:c}=d);return d.isCollapsed()&&
|
|
22
|
-
0===c.offset&&0<k.$getNearestBlockElementAncestorOrThrow(c.getNode()).getIndent()?b.dispatchCommand(l.OUTDENT_CONTENT_COMMAND):b.dispatchCommand(l.DELETE_CHARACTER_COMMAND,!0)},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_DELETE_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;c.preventDefault();return b.dispatchCommand(l.DELETE_CHARACTER_COMMAND,!1)},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_ENTER_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;
|
|
23
|
-
if(null!==c){if((r||q)&&p)return!1;c.preventDefault();if(c.shiftKey)return b.dispatchCommand(l.INSERT_LINE_BREAK_COMMAND)}return b.dispatchCommand(l.INSERT_PARAGRAPH_COMMAND)},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_TAB_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;c.preventDefault();return b.dispatchCommand(c.shiftKey?l.OUTDENT_CONTENT_COMMAND:l.INDENT_CONTENT_COMMAND)},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_ESCAPE_COMMAND,()=>{const c=
|
|
24
|
-
if(!l.$isRangeSelection(c))return!1;b.blur();return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.DROP_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;c.preventDefault();return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.DRAGSTART_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;c.preventDefault();return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.COPY_COMMAND,c=>{const d=l.$getSelection();return l.$isRangeSelection(d)||
|
|
25
|
-
(B(c,b),!0):!1},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.CUT_COMMAND,c=>{const d=l.$getSelection();return l.$isRangeSelection(d)||l.$isGridSelection(d)?(C(c,b),!0):!1},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.PASTE_COMMAND,c=>{const d=l.$getSelection();return l.$isRangeSelection(d)||l.$isGridSelection(d)?(A(c,b),!0):!1},l.COMMAND_PRIORITY_EDITOR));z(b,e);return f};
|
|
22
|
+
0===c.offset&&0<k.$getNearestBlockElementAncestorOrThrow(c.getNode()).getIndent()?b.dispatchCommand(l.OUTDENT_CONTENT_COMMAND,void 0):b.dispatchCommand(l.DELETE_CHARACTER_COMMAND,!0)},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_DELETE_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;c.preventDefault();return b.dispatchCommand(l.DELETE_CHARACTER_COMMAND,!1)},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_ENTER_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;
|
|
23
|
+
if(null!==c){if((r||q)&&p)return!1;c.preventDefault();if(c.shiftKey)return b.dispatchCommand(l.INSERT_LINE_BREAK_COMMAND,!1)}return b.dispatchCommand(l.INSERT_PARAGRAPH_COMMAND,void 0)},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_TAB_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;c.preventDefault();return b.dispatchCommand(c.shiftKey?l.OUTDENT_CONTENT_COMMAND:l.INDENT_CONTENT_COMMAND,void 0)},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.KEY_ESCAPE_COMMAND,()=>{const c=
|
|
24
|
+
l.$getSelection();if(!l.$isRangeSelection(c))return!1;b.blur();return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.DROP_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;c.preventDefault();return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.DRAGSTART_COMMAND,c=>{const d=l.$getSelection();if(!l.$isRangeSelection(d))return!1;c.preventDefault();return!0},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.COPY_COMMAND,c=>{const d=l.$getSelection();return l.$isRangeSelection(d)||
|
|
25
|
+
l.$isGridSelection(d)?(B(c,b),!0):!1},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.CUT_COMMAND,c=>{const d=l.$getSelection();return l.$isRangeSelection(d)||l.$isGridSelection(d)?(C(c,b),!0):!1},l.COMMAND_PRIORITY_EDITOR),b.registerCommand(l.PASTE_COMMAND,c=>{const d=l.$getSelection();return l.$isRangeSelection(d)||l.$isGridSelection(d)?(A(c,b),!0):!1},l.COMMAND_PRIORITY_EDITOR));z(b,e);return f};
|
package/package.json
CHANGED
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
"rich-text"
|
|
8
8
|
],
|
|
9
9
|
"license": "MIT",
|
|
10
|
-
"version": "0.2.
|
|
11
|
-
"main": "LexicalRichText.
|
|
10
|
+
"version": "0.2.8",
|
|
11
|
+
"main": "LexicalRichText.ts",
|
|
12
12
|
"peerDependencies": {
|
|
13
|
-
"lexical": "0.2.
|
|
14
|
-
"@lexical/selection": "0.2.
|
|
15
|
-
"@lexical/clipboard": "0.2.
|
|
16
|
-
"@lexical/utils": "0.2.
|
|
13
|
+
"lexical": "0.2.8",
|
|
14
|
+
"@lexical/selection": "0.2.8",
|
|
15
|
+
"@lexical/clipboard": "0.2.8",
|
|
16
|
+
"@lexical/utils": "0.2.8"
|
|
17
17
|
},
|
|
18
18
|
"repository": {
|
|
19
19
|
"type": "git",
|