@portabletext/editor 1.8.0 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.d.mts +93 -28
- package/lib/index.d.ts +93 -28
- package/lib/index.esm.js +168 -43
- package/lib/index.esm.js.map +1 -1
- package/lib/index.js +168 -43
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +168 -43
- package/lib/index.mjs.map +1 -1
- package/package.json +10 -10
- package/src/editor/Editable.tsx +46 -31
- package/src/editor/behavior/behavior.action.insert-span.ts +48 -0
- package/src/editor/behavior/behavior.actions.ts +20 -1
- package/src/editor/behavior/behavior.links.ts +91 -0
- package/src/editor/behavior/behavior.markdown.ts +53 -41
- package/src/editor/behavior/behavior.types.ts +13 -0
- package/src/editor/plugins/createWithPortableTextMarkModel.ts +6 -2
- package/src/index.ts +4 -0
package/lib/index.d.mts
CHANGED
|
@@ -131,6 +131,17 @@ export declare type BehaviorActionIntend =
|
|
|
131
131
|
[prop: string]: unknown
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
|
+
| {
|
|
135
|
+
type: 'insert span'
|
|
136
|
+
text: string
|
|
137
|
+
annotations?: Array<{
|
|
138
|
+
name: string
|
|
139
|
+
value: {
|
|
140
|
+
[prop: string]: unknown
|
|
141
|
+
}
|
|
142
|
+
}>
|
|
143
|
+
decorators?: Array<string>
|
|
144
|
+
}
|
|
134
145
|
| {
|
|
135
146
|
type: 'insert text block'
|
|
136
147
|
decorators: Array<string>
|
|
@@ -251,6 +262,10 @@ export declare type BehaviorEvent =
|
|
|
251
262
|
text: string
|
|
252
263
|
options?: TextInsertTextOptions
|
|
253
264
|
}
|
|
265
|
+
| {
|
|
266
|
+
type: 'paste'
|
|
267
|
+
clipboardData: NonNullable<ClipboardEvent['clipboardData']>
|
|
268
|
+
}
|
|
254
269
|
|
|
255
270
|
/**
|
|
256
271
|
* @alpha
|
|
@@ -381,7 +396,8 @@ export declare const coreBehavior: {
|
|
|
381
396
|
| 'delete forward'
|
|
382
397
|
| 'insert soft break'
|
|
383
398
|
| 'insert break'
|
|
384
|
-
| 'insert text'
|
|
399
|
+
| 'insert text'
|
|
400
|
+
| 'paste',
|
|
385
401
|
true
|
|
386
402
|
>
|
|
387
403
|
decorators: {
|
|
@@ -397,7 +413,8 @@ export declare const coreBehavior: {
|
|
|
397
413
|
| 'delete forward'
|
|
398
414
|
| 'insert soft break'
|
|
399
415
|
| 'insert break'
|
|
400
|
-
| 'insert text'
|
|
416
|
+
| 'insert text'
|
|
417
|
+
| 'paste',
|
|
401
418
|
true
|
|
402
419
|
>
|
|
403
420
|
decoratorRemove: Behavior<
|
|
@@ -412,7 +429,8 @@ export declare const coreBehavior: {
|
|
|
412
429
|
| 'delete forward'
|
|
413
430
|
| 'insert soft break'
|
|
414
431
|
| 'insert break'
|
|
415
|
-
| 'insert text'
|
|
432
|
+
| 'insert text'
|
|
433
|
+
| 'paste',
|
|
416
434
|
true
|
|
417
435
|
>
|
|
418
436
|
decoratorToggle: Behavior<
|
|
@@ -427,7 +445,8 @@ export declare const coreBehavior: {
|
|
|
427
445
|
| 'delete forward'
|
|
428
446
|
| 'insert soft break'
|
|
429
447
|
| 'insert break'
|
|
430
|
-
| 'insert text'
|
|
448
|
+
| 'insert text'
|
|
449
|
+
| 'paste',
|
|
431
450
|
true
|
|
432
451
|
>
|
|
433
452
|
}
|
|
@@ -444,7 +463,8 @@ export declare const coreBehavior: {
|
|
|
444
463
|
| 'delete forward'
|
|
445
464
|
| 'insert soft break'
|
|
446
465
|
| 'insert break'
|
|
447
|
-
| 'insert text'
|
|
466
|
+
| 'insert text'
|
|
467
|
+
| 'paste',
|
|
448
468
|
true
|
|
449
469
|
>
|
|
450
470
|
deletingEmptyTextBlockAfterBlockObject: Behavior<
|
|
@@ -459,7 +479,8 @@ export declare const coreBehavior: {
|
|
|
459
479
|
| 'delete forward'
|
|
460
480
|
| 'insert soft break'
|
|
461
481
|
| 'insert break'
|
|
462
|
-
| 'insert text'
|
|
482
|
+
| 'insert text'
|
|
483
|
+
| 'paste',
|
|
463
484
|
true
|
|
464
485
|
>
|
|
465
486
|
deletingEmptyTextBlockBeforeBlockObject: Behavior<
|
|
@@ -474,7 +495,8 @@ export declare const coreBehavior: {
|
|
|
474
495
|
| 'delete forward'
|
|
475
496
|
| 'insert soft break'
|
|
476
497
|
| 'insert break'
|
|
477
|
-
| 'insert text'
|
|
498
|
+
| 'insert text'
|
|
499
|
+
| 'paste',
|
|
478
500
|
true
|
|
479
501
|
>
|
|
480
502
|
}
|
|
@@ -491,7 +513,8 @@ export declare const coreBehavior: {
|
|
|
491
513
|
| 'delete forward'
|
|
492
514
|
| 'insert soft break'
|
|
493
515
|
| 'insert break'
|
|
494
|
-
| 'insert text'
|
|
516
|
+
| 'insert text'
|
|
517
|
+
| 'paste',
|
|
495
518
|
true
|
|
496
519
|
>
|
|
497
520
|
unindentListOnBackspace: Behavior<
|
|
@@ -506,7 +529,8 @@ export declare const coreBehavior: {
|
|
|
506
529
|
| 'delete forward'
|
|
507
530
|
| 'insert soft break'
|
|
508
531
|
| 'insert break'
|
|
509
|
-
| 'insert text'
|
|
532
|
+
| 'insert text'
|
|
533
|
+
| 'paste',
|
|
510
534
|
true
|
|
511
535
|
>
|
|
512
536
|
}
|
|
@@ -527,7 +551,30 @@ export declare const coreBehaviors: Behavior<
|
|
|
527
551
|
| 'delete forward'
|
|
528
552
|
| 'insert soft break'
|
|
529
553
|
| 'insert break'
|
|
530
|
-
| 'insert text'
|
|
554
|
+
| 'insert text'
|
|
555
|
+
| 'paste',
|
|
556
|
+
true
|
|
557
|
+
>[]
|
|
558
|
+
|
|
559
|
+
/**
|
|
560
|
+
* @alpha
|
|
561
|
+
*/
|
|
562
|
+
export declare function createLinkBehaviors(
|
|
563
|
+
config: LinkBehaviorsConfig,
|
|
564
|
+
): Behavior<
|
|
565
|
+
| 'focus'
|
|
566
|
+
| 'annotation.add'
|
|
567
|
+
| 'annotation.remove'
|
|
568
|
+
| 'annotation.toggle'
|
|
569
|
+
| 'decorator.add'
|
|
570
|
+
| 'decorator.remove'
|
|
571
|
+
| 'decorator.toggle'
|
|
572
|
+
| 'delete backward'
|
|
573
|
+
| 'delete forward'
|
|
574
|
+
| 'insert soft break'
|
|
575
|
+
| 'insert break'
|
|
576
|
+
| 'insert text'
|
|
577
|
+
| 'paste',
|
|
531
578
|
true
|
|
532
579
|
>[]
|
|
533
580
|
|
|
@@ -548,7 +595,8 @@ export declare function createMarkdownBehaviors(
|
|
|
548
595
|
| 'delete forward'
|
|
549
596
|
| 'insert soft break'
|
|
550
597
|
| 'insert break'
|
|
551
|
-
| 'insert text'
|
|
598
|
+
| 'insert text'
|
|
599
|
+
| 'paste',
|
|
552
600
|
true
|
|
553
601
|
>[]
|
|
554
602
|
|
|
@@ -5773,6 +5821,23 @@ export declare type InvalidValueResolution = {
|
|
|
5773
5821
|
*/
|
|
5774
5822
|
export declare const keyGenerator: () => string
|
|
5775
5823
|
|
|
5824
|
+
/**
|
|
5825
|
+
* @alpha
|
|
5826
|
+
*/
|
|
5827
|
+
export declare type LinkBehaviorsConfig = {
|
|
5828
|
+
linkAnnotation?: (context: {
|
|
5829
|
+
schema: PortableTextMemberSchemaTypes
|
|
5830
|
+
url: string
|
|
5831
|
+
}) =>
|
|
5832
|
+
| {
|
|
5833
|
+
name: string
|
|
5834
|
+
value: {
|
|
5835
|
+
[prop: string]: unknown
|
|
5836
|
+
}
|
|
5837
|
+
}
|
|
5838
|
+
| undefined
|
|
5839
|
+
}
|
|
5840
|
+
|
|
5776
5841
|
/**
|
|
5777
5842
|
* The editor is currently loading something
|
|
5778
5843
|
* Could be used to show a spinner etc.
|
|
@@ -5786,7 +5851,7 @@ export declare type LoadingChange = {
|
|
|
5786
5851
|
* @alpha
|
|
5787
5852
|
*/
|
|
5788
5853
|
export declare type MarkdownBehaviorsConfig = {
|
|
5789
|
-
|
|
5854
|
+
horizontalRuleObject?: (context: {schema: PortableTextMemberSchemaTypes}) =>
|
|
5790
5855
|
| {
|
|
5791
5856
|
name: string
|
|
5792
5857
|
value?: {
|
|
@@ -5794,22 +5859,22 @@ export declare type MarkdownBehaviorsConfig = {
|
|
|
5794
5859
|
}
|
|
5795
5860
|
}
|
|
5796
5861
|
| undefined
|
|
5797
|
-
|
|
5798
|
-
schema: PortableTextMemberSchemaTypes
|
|
5799
|
-
) => string | undefined
|
|
5800
|
-
|
|
5801
|
-
schema: PortableTextMemberSchemaTypes
|
|
5802
|
-
level: number
|
|
5803
|
-
) => string | undefined
|
|
5804
|
-
|
|
5805
|
-
schema: PortableTextMemberSchemaTypes
|
|
5806
|
-
) => string | undefined
|
|
5807
|
-
|
|
5808
|
-
schema: PortableTextMemberSchemaTypes
|
|
5809
|
-
) => string | undefined
|
|
5810
|
-
|
|
5811
|
-
schema: PortableTextMemberSchemaTypes
|
|
5812
|
-
) => string | undefined
|
|
5862
|
+
defaultStyle?: (context: {
|
|
5863
|
+
schema: PortableTextMemberSchemaTypes
|
|
5864
|
+
}) => string | undefined
|
|
5865
|
+
headingStyle?: (context: {
|
|
5866
|
+
schema: PortableTextMemberSchemaTypes
|
|
5867
|
+
level: number
|
|
5868
|
+
}) => string | undefined
|
|
5869
|
+
blockquoteStyle?: (context: {
|
|
5870
|
+
schema: PortableTextMemberSchemaTypes
|
|
5871
|
+
}) => string | undefined
|
|
5872
|
+
unorderedListStyle?: (context: {
|
|
5873
|
+
schema: PortableTextMemberSchemaTypes
|
|
5874
|
+
}) => string | undefined
|
|
5875
|
+
orderedListStyle?: (context: {
|
|
5876
|
+
schema: PortableTextMemberSchemaTypes
|
|
5877
|
+
}) => string | undefined
|
|
5813
5878
|
}
|
|
5814
5879
|
|
|
5815
5880
|
/**
|
package/lib/index.d.ts
CHANGED
|
@@ -131,6 +131,17 @@ export declare type BehaviorActionIntend =
|
|
|
131
131
|
[prop: string]: unknown
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
|
+
| {
|
|
135
|
+
type: 'insert span'
|
|
136
|
+
text: string
|
|
137
|
+
annotations?: Array<{
|
|
138
|
+
name: string
|
|
139
|
+
value: {
|
|
140
|
+
[prop: string]: unknown
|
|
141
|
+
}
|
|
142
|
+
}>
|
|
143
|
+
decorators?: Array<string>
|
|
144
|
+
}
|
|
134
145
|
| {
|
|
135
146
|
type: 'insert text block'
|
|
136
147
|
decorators: Array<string>
|
|
@@ -251,6 +262,10 @@ export declare type BehaviorEvent =
|
|
|
251
262
|
text: string
|
|
252
263
|
options?: TextInsertTextOptions
|
|
253
264
|
}
|
|
265
|
+
| {
|
|
266
|
+
type: 'paste'
|
|
267
|
+
clipboardData: NonNullable<ClipboardEvent['clipboardData']>
|
|
268
|
+
}
|
|
254
269
|
|
|
255
270
|
/**
|
|
256
271
|
* @alpha
|
|
@@ -381,7 +396,8 @@ export declare const coreBehavior: {
|
|
|
381
396
|
| 'delete forward'
|
|
382
397
|
| 'insert soft break'
|
|
383
398
|
| 'insert break'
|
|
384
|
-
| 'insert text'
|
|
399
|
+
| 'insert text'
|
|
400
|
+
| 'paste',
|
|
385
401
|
true
|
|
386
402
|
>
|
|
387
403
|
decorators: {
|
|
@@ -397,7 +413,8 @@ export declare const coreBehavior: {
|
|
|
397
413
|
| 'delete forward'
|
|
398
414
|
| 'insert soft break'
|
|
399
415
|
| 'insert break'
|
|
400
|
-
| 'insert text'
|
|
416
|
+
| 'insert text'
|
|
417
|
+
| 'paste',
|
|
401
418
|
true
|
|
402
419
|
>
|
|
403
420
|
decoratorRemove: Behavior<
|
|
@@ -412,7 +429,8 @@ export declare const coreBehavior: {
|
|
|
412
429
|
| 'delete forward'
|
|
413
430
|
| 'insert soft break'
|
|
414
431
|
| 'insert break'
|
|
415
|
-
| 'insert text'
|
|
432
|
+
| 'insert text'
|
|
433
|
+
| 'paste',
|
|
416
434
|
true
|
|
417
435
|
>
|
|
418
436
|
decoratorToggle: Behavior<
|
|
@@ -427,7 +445,8 @@ export declare const coreBehavior: {
|
|
|
427
445
|
| 'delete forward'
|
|
428
446
|
| 'insert soft break'
|
|
429
447
|
| 'insert break'
|
|
430
|
-
| 'insert text'
|
|
448
|
+
| 'insert text'
|
|
449
|
+
| 'paste',
|
|
431
450
|
true
|
|
432
451
|
>
|
|
433
452
|
}
|
|
@@ -444,7 +463,8 @@ export declare const coreBehavior: {
|
|
|
444
463
|
| 'delete forward'
|
|
445
464
|
| 'insert soft break'
|
|
446
465
|
| 'insert break'
|
|
447
|
-
| 'insert text'
|
|
466
|
+
| 'insert text'
|
|
467
|
+
| 'paste',
|
|
448
468
|
true
|
|
449
469
|
>
|
|
450
470
|
deletingEmptyTextBlockAfterBlockObject: Behavior<
|
|
@@ -459,7 +479,8 @@ export declare const coreBehavior: {
|
|
|
459
479
|
| 'delete forward'
|
|
460
480
|
| 'insert soft break'
|
|
461
481
|
| 'insert break'
|
|
462
|
-
| 'insert text'
|
|
482
|
+
| 'insert text'
|
|
483
|
+
| 'paste',
|
|
463
484
|
true
|
|
464
485
|
>
|
|
465
486
|
deletingEmptyTextBlockBeforeBlockObject: Behavior<
|
|
@@ -474,7 +495,8 @@ export declare const coreBehavior: {
|
|
|
474
495
|
| 'delete forward'
|
|
475
496
|
| 'insert soft break'
|
|
476
497
|
| 'insert break'
|
|
477
|
-
| 'insert text'
|
|
498
|
+
| 'insert text'
|
|
499
|
+
| 'paste',
|
|
478
500
|
true
|
|
479
501
|
>
|
|
480
502
|
}
|
|
@@ -491,7 +513,8 @@ export declare const coreBehavior: {
|
|
|
491
513
|
| 'delete forward'
|
|
492
514
|
| 'insert soft break'
|
|
493
515
|
| 'insert break'
|
|
494
|
-
| 'insert text'
|
|
516
|
+
| 'insert text'
|
|
517
|
+
| 'paste',
|
|
495
518
|
true
|
|
496
519
|
>
|
|
497
520
|
unindentListOnBackspace: Behavior<
|
|
@@ -506,7 +529,8 @@ export declare const coreBehavior: {
|
|
|
506
529
|
| 'delete forward'
|
|
507
530
|
| 'insert soft break'
|
|
508
531
|
| 'insert break'
|
|
509
|
-
| 'insert text'
|
|
532
|
+
| 'insert text'
|
|
533
|
+
| 'paste',
|
|
510
534
|
true
|
|
511
535
|
>
|
|
512
536
|
}
|
|
@@ -527,7 +551,30 @@ export declare const coreBehaviors: Behavior<
|
|
|
527
551
|
| 'delete forward'
|
|
528
552
|
| 'insert soft break'
|
|
529
553
|
| 'insert break'
|
|
530
|
-
| 'insert text'
|
|
554
|
+
| 'insert text'
|
|
555
|
+
| 'paste',
|
|
556
|
+
true
|
|
557
|
+
>[]
|
|
558
|
+
|
|
559
|
+
/**
|
|
560
|
+
* @alpha
|
|
561
|
+
*/
|
|
562
|
+
export declare function createLinkBehaviors(
|
|
563
|
+
config: LinkBehaviorsConfig,
|
|
564
|
+
): Behavior<
|
|
565
|
+
| 'focus'
|
|
566
|
+
| 'annotation.add'
|
|
567
|
+
| 'annotation.remove'
|
|
568
|
+
| 'annotation.toggle'
|
|
569
|
+
| 'decorator.add'
|
|
570
|
+
| 'decorator.remove'
|
|
571
|
+
| 'decorator.toggle'
|
|
572
|
+
| 'delete backward'
|
|
573
|
+
| 'delete forward'
|
|
574
|
+
| 'insert soft break'
|
|
575
|
+
| 'insert break'
|
|
576
|
+
| 'insert text'
|
|
577
|
+
| 'paste',
|
|
531
578
|
true
|
|
532
579
|
>[]
|
|
533
580
|
|
|
@@ -548,7 +595,8 @@ export declare function createMarkdownBehaviors(
|
|
|
548
595
|
| 'delete forward'
|
|
549
596
|
| 'insert soft break'
|
|
550
597
|
| 'insert break'
|
|
551
|
-
| 'insert text'
|
|
598
|
+
| 'insert text'
|
|
599
|
+
| 'paste',
|
|
552
600
|
true
|
|
553
601
|
>[]
|
|
554
602
|
|
|
@@ -5773,6 +5821,23 @@ export declare type InvalidValueResolution = {
|
|
|
5773
5821
|
*/
|
|
5774
5822
|
export declare const keyGenerator: () => string
|
|
5775
5823
|
|
|
5824
|
+
/**
|
|
5825
|
+
* @alpha
|
|
5826
|
+
*/
|
|
5827
|
+
export declare type LinkBehaviorsConfig = {
|
|
5828
|
+
linkAnnotation?: (context: {
|
|
5829
|
+
schema: PortableTextMemberSchemaTypes
|
|
5830
|
+
url: string
|
|
5831
|
+
}) =>
|
|
5832
|
+
| {
|
|
5833
|
+
name: string
|
|
5834
|
+
value: {
|
|
5835
|
+
[prop: string]: unknown
|
|
5836
|
+
}
|
|
5837
|
+
}
|
|
5838
|
+
| undefined
|
|
5839
|
+
}
|
|
5840
|
+
|
|
5776
5841
|
/**
|
|
5777
5842
|
* The editor is currently loading something
|
|
5778
5843
|
* Could be used to show a spinner etc.
|
|
@@ -5786,7 +5851,7 @@ export declare type LoadingChange = {
|
|
|
5786
5851
|
* @alpha
|
|
5787
5852
|
*/
|
|
5788
5853
|
export declare type MarkdownBehaviorsConfig = {
|
|
5789
|
-
|
|
5854
|
+
horizontalRuleObject?: (context: {schema: PortableTextMemberSchemaTypes}) =>
|
|
5790
5855
|
| {
|
|
5791
5856
|
name: string
|
|
5792
5857
|
value?: {
|
|
@@ -5794,22 +5859,22 @@ export declare type MarkdownBehaviorsConfig = {
|
|
|
5794
5859
|
}
|
|
5795
5860
|
}
|
|
5796
5861
|
| undefined
|
|
5797
|
-
|
|
5798
|
-
schema: PortableTextMemberSchemaTypes
|
|
5799
|
-
) => string | undefined
|
|
5800
|
-
|
|
5801
|
-
schema: PortableTextMemberSchemaTypes
|
|
5802
|
-
level: number
|
|
5803
|
-
) => string | undefined
|
|
5804
|
-
|
|
5805
|
-
schema: PortableTextMemberSchemaTypes
|
|
5806
|
-
) => string | undefined
|
|
5807
|
-
|
|
5808
|
-
schema: PortableTextMemberSchemaTypes
|
|
5809
|
-
) => string | undefined
|
|
5810
|
-
|
|
5811
|
-
schema: PortableTextMemberSchemaTypes
|
|
5812
|
-
) => string | undefined
|
|
5862
|
+
defaultStyle?: (context: {
|
|
5863
|
+
schema: PortableTextMemberSchemaTypes
|
|
5864
|
+
}) => string | undefined
|
|
5865
|
+
headingStyle?: (context: {
|
|
5866
|
+
schema: PortableTextMemberSchemaTypes
|
|
5867
|
+
level: number
|
|
5868
|
+
}) => string | undefined
|
|
5869
|
+
blockquoteStyle?: (context: {
|
|
5870
|
+
schema: PortableTextMemberSchemaTypes
|
|
5871
|
+
}) => string | undefined
|
|
5872
|
+
unorderedListStyle?: (context: {
|
|
5873
|
+
schema: PortableTextMemberSchemaTypes
|
|
5874
|
+
}) => string | undefined
|
|
5875
|
+
orderedListStyle?: (context: {
|
|
5876
|
+
schema: PortableTextMemberSchemaTypes
|
|
5877
|
+
}) => string | undefined
|
|
5813
5878
|
}
|
|
5814
5879
|
|
|
5815
5880
|
/**
|