@portabletext/editor 1.39.1 → 1.40.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.
Files changed (99) hide show
  1. package/lib/_chunks-cjs/behavior.core.cjs +12 -4
  2. package/lib/_chunks-cjs/behavior.core.cjs.map +1 -1
  3. package/lib/_chunks-cjs/editor-provider.cjs +131 -109
  4. package/lib/_chunks-cjs/editor-provider.cjs.map +1 -1
  5. package/lib/_chunks-cjs/{parse-blocks.cjs → util.selection-point-to-block-offset.cjs} +74 -4
  6. package/lib/_chunks-cjs/util.selection-point-to-block-offset.cjs.map +1 -0
  7. package/lib/_chunks-cjs/util.slice-blocks.cjs +2 -2
  8. package/lib/_chunks-cjs/util.slice-blocks.cjs.map +1 -1
  9. package/lib/_chunks-cjs/util.split-text-block.cjs +68 -0
  10. package/lib/_chunks-cjs/util.split-text-block.cjs.map +1 -0
  11. package/lib/_chunks-es/behavior.core.js +12 -4
  12. package/lib/_chunks-es/behavior.core.js.map +1 -1
  13. package/lib/_chunks-es/editor-provider.js +125 -103
  14. package/lib/_chunks-es/editor-provider.js.map +1 -1
  15. package/lib/_chunks-es/{parse-blocks.js → util.selection-point-to-block-offset.js} +76 -5
  16. package/lib/_chunks-es/util.selection-point-to-block-offset.js.map +1 -0
  17. package/lib/_chunks-es/util.slice-blocks.js +2 -2
  18. package/lib/_chunks-es/util.slice-blocks.js.map +1 -1
  19. package/lib/_chunks-es/util.split-text-block.js +70 -0
  20. package/lib/_chunks-es/util.split-text-block.js.map +1 -0
  21. package/lib/behaviors/index.d.cts +383 -111
  22. package/lib/behaviors/index.d.ts +383 -111
  23. package/lib/index.cjs +198 -195
  24. package/lib/index.cjs.map +1 -1
  25. package/lib/index.d.cts +345 -90
  26. package/lib/index.d.ts +345 -90
  27. package/lib/index.js +205 -202
  28. package/lib/index.js.map +1 -1
  29. package/lib/plugins/index.cjs +11 -11
  30. package/lib/plugins/index.cjs.map +1 -1
  31. package/lib/plugins/index.d.cts +335 -93
  32. package/lib/plugins/index.d.ts +335 -93
  33. package/lib/plugins/index.js +2 -2
  34. package/lib/selectors/index.d.cts +333 -81
  35. package/lib/selectors/index.d.ts +333 -81
  36. package/lib/utils/index.cjs +15 -87
  37. package/lib/utils/index.cjs.map +1 -1
  38. package/lib/utils/index.d.cts +386 -84
  39. package/lib/utils/index.d.ts +386 -84
  40. package/lib/utils/index.js +13 -86
  41. package/lib/utils/index.js.map +1 -1
  42. package/package.json +6 -6
  43. package/src/behavior-actions/behavior.action.decorator.add.ts +13 -2
  44. package/src/behaviors/behavior.core.block-objects.ts +32 -2
  45. package/src/behaviors/behavior.default.ts +38 -14
  46. package/src/behaviors/behavior.types.ts +5 -4
  47. package/src/converters/converter.portable-text.ts +9 -0
  48. package/src/converters/converter.text-plain.test.ts +5 -5
  49. package/src/converters/converter.text-plain.ts +12 -19
  50. package/src/editor/Editable.tsx +122 -68
  51. package/src/editor/PortableTextEditor.tsx +8 -8
  52. package/src/editor/__tests__/self-solving.test.tsx +1 -1
  53. package/src/editor/components/Element.tsx +2 -9
  54. package/src/editor/create-editor.ts +13 -5
  55. package/src/editor/editor-machine.ts +6 -2
  56. package/src/editor/editor-provider.tsx +11 -7
  57. package/src/editor/editor-selector.ts +4 -3
  58. package/src/editor/editor-snapshot.ts +2 -2
  59. package/src/editor/plugins/create-with-event-listeners.ts +2 -5
  60. package/src/editor/plugins/createWithPortableTextMarkModel.ts +1 -2
  61. package/src/internal-utils/block-keys.ts +9 -0
  62. package/src/internal-utils/collapse-selection.ts +36 -0
  63. package/src/internal-utils/compound-client-rect.ts +28 -0
  64. package/src/internal-utils/drag-selection.test.ts +507 -0
  65. package/src/internal-utils/drag-selection.ts +66 -0
  66. package/src/internal-utils/editor-selection.test.ts +40 -0
  67. package/src/internal-utils/editor-selection.ts +60 -0
  68. package/src/internal-utils/event-position.ts +55 -80
  69. package/src/internal-utils/inline-object-selection.ts +115 -0
  70. package/src/internal-utils/selection-block-keys.ts +20 -0
  71. package/src/internal-utils/selection-elements.ts +61 -0
  72. package/src/internal-utils/selection-focus-text.ts +38 -0
  73. package/src/internal-utils/selection-text.test.ts +23 -0
  74. package/src/internal-utils/selection-text.ts +90 -0
  75. package/src/internal-utils/split-string.ts +12 -0
  76. package/src/internal-utils/string-overlap.test.ts +14 -0
  77. package/src/internal-utils/string-overlap.ts +28 -0
  78. package/src/internal-utils/string-utils.ts +7 -0
  79. package/src/internal-utils/terse-pt.test.ts +60 -0
  80. package/src/internal-utils/terse-pt.ts +36 -0
  81. package/src/internal-utils/text-block-key.test.ts +30 -0
  82. package/src/internal-utils/text-block-key.ts +30 -0
  83. package/src/internal-utils/text-marks.test.ts +33 -0
  84. package/src/internal-utils/text-marks.ts +26 -0
  85. package/src/internal-utils/text-selection.test.ts +175 -0
  86. package/src/internal-utils/text-selection.ts +122 -0
  87. package/src/internal-utils/value-annotations.ts +31 -0
  88. package/src/internal-utils/values.ts +16 -5
  89. package/src/utils/index.ts +5 -0
  90. package/src/utils/util.block-offset-to-block-selection-point.ts +28 -0
  91. package/src/utils/util.block-offset-to-selection-point.ts +33 -0
  92. package/src/utils/util.block-offsets-to-selection.ts +3 -3
  93. package/src/utils/util.is-equal-selections.ts +20 -0
  94. package/src/utils/util.is-selection-collapsed.ts +15 -0
  95. package/src/utils/util.reverse-selection.ts +9 -5
  96. package/src/utils/util.selection-point-to-block-offset.ts +31 -0
  97. package/lib/_chunks-cjs/parse-blocks.cjs.map +0 -1
  98. package/lib/_chunks-es/parse-blocks.js.map +0 -1
  99. package/src/editor/components/use-draggable.ts +0 -123
@@ -193,6 +193,30 @@ export declare function blockOffsetsToSelection({
193
193
  backward?: boolean
194
194
  }): EditorSelection
195
195
 
196
+ /**
197
+ * @public
198
+ */
199
+ export declare function blockOffsetToBlockSelectionPoint({
200
+ value,
201
+ blockOffset,
202
+ }: {
203
+ value: Array<PortableTextBlock>
204
+ blockOffset: BlockOffset
205
+ }): EditorSelectionPoint | undefined
206
+
207
+ /**
208
+ * @public
209
+ */
210
+ export declare function blockOffsetToSelectionPoint({
211
+ value,
212
+ blockOffset,
213
+ direction,
214
+ }: {
215
+ value: Array<PortableTextBlock>
216
+ blockOffset: BlockOffset
217
+ direction: 'forward' | 'backward'
218
+ }): EditorSelectionPoint | undefined
219
+
196
220
  /**
197
221
  * @public
198
222
  */
@@ -228,21 +252,21 @@ declare type ClipboardBehaviorEvent =
228
252
  originEvent: {
229
253
  dataTransfer: DataTransfer
230
254
  }
231
- position: EventPosition
255
+ position: Pick<EventPosition, 'selection'>
232
256
  }
233
257
  | {
234
258
  type: 'clipboard.cut'
235
259
  originEvent: {
236
260
  dataTransfer: DataTransfer
237
261
  }
238
- position: EventPosition
262
+ position: Pick<EventPosition, 'selection'>
239
263
  }
240
264
  | {
241
265
  type: 'clipboard.paste'
242
266
  originEvent: {
243
267
  dataTransfer: DataTransfer
244
268
  }
245
- position: EventPosition
269
+ position: Pick<EventPosition, 'selection'>
246
270
  }
247
271
 
248
272
  declare type Converter<TMIMEType extends MIMEType = MIMEType> = {
@@ -332,7 +356,7 @@ declare type DragBehaviorEvent =
332
356
  originEvent: {
333
357
  dataTransfer: DataTransfer
334
358
  }
335
- position: EventPosition
359
+ position: Pick<EventPosition, 'selection'>
336
360
  }
337
361
  | {
338
362
  type: 'drag.drag'
@@ -497,7 +521,7 @@ declare const editorMachine: StateMachine<
497
521
  value: Array<PortableTextBlock> | undefined
498
522
  internalDrag?: {
499
523
  ghost?: HTMLElement
500
- origin: EventPosition
524
+ origin: Pick<EventPosition, 'selection'>
501
525
  }
502
526
  },
503
527
  | {
@@ -558,6 +582,10 @@ declare const editorMachine: StateMachine<
558
582
  | {
559
583
  type: 'decorator.toggle'
560
584
  decorator: string
585
+ offsets?: {
586
+ anchor: BlockOffset_2
587
+ focus: BlockOffset_2
588
+ }
561
589
  }
562
590
  | {
563
591
  type: 'delete'
@@ -866,7 +894,7 @@ declare const editorMachine: StateMachine<
866
894
  }
867
895
  | {
868
896
  type: 'dragstart'
869
- origin: EventPosition
897
+ origin: Pick<EventPosition, 'selection'>
870
898
  ghost?: HTMLElement
871
899
  }
872
900
  | {
@@ -936,7 +964,7 @@ declare const editorMachine: StateMachine<
936
964
  {
937
965
  'edit mode':
938
966
  | {
939
- editable: 'idle' | 'dragging internally'
967
+ editable: 'dragging internally' | 'idle'
940
968
  }
941
969
  | {
942
970
  'read only': 'read only' | 'determine initial edit mode'
@@ -945,7 +973,7 @@ declare const editorMachine: StateMachine<
945
973
  | 'setting up'
946
974
  | 'dirty'
947
975
  | {
948
- pristine: 'idle' | 'normalizing'
976
+ pristine: 'normalizing' | 'idle'
949
977
  }
950
978
  },
951
979
  'dragging internally',
@@ -1017,6 +1045,10 @@ declare const editorMachine: StateMachine<
1017
1045
  | {
1018
1046
  type: 'decorator.toggle'
1019
1047
  decorator: string
1048
+ offsets?: {
1049
+ anchor: BlockOffset_2
1050
+ focus: BlockOffset_2
1051
+ }
1020
1052
  }
1021
1053
  | {
1022
1054
  type: 'delete'
@@ -1304,7 +1336,7 @@ declare const editorMachine: StateMachine<
1304
1336
  value: Array<PortableTextBlock> | undefined
1305
1337
  internalDrag?: {
1306
1338
  ghost?: HTMLElement
1307
- origin: EventPosition
1339
+ origin: Pick<EventPosition, 'selection'>
1308
1340
  }
1309
1341
  },
1310
1342
  | {
@@ -1365,6 +1397,10 @@ declare const editorMachine: StateMachine<
1365
1397
  | {
1366
1398
  type: 'decorator.toggle'
1367
1399
  decorator: string
1400
+ offsets?: {
1401
+ anchor: BlockOffset_2
1402
+ focus: BlockOffset_2
1403
+ }
1368
1404
  }
1369
1405
  | {
1370
1406
  type: 'delete'
@@ -1673,7 +1709,7 @@ declare const editorMachine: StateMachine<
1673
1709
  }
1674
1710
  | {
1675
1711
  type: 'dragstart'
1676
- origin: EventPosition
1712
+ origin: Pick<EventPosition, 'selection'>
1677
1713
  ghost?: HTMLElement
1678
1714
  }
1679
1715
  | {
@@ -1747,6 +1783,10 @@ declare const editorMachine: StateMachine<
1747
1783
  | {
1748
1784
  type: 'decorator.toggle'
1749
1785
  decorator: string
1786
+ offsets?: {
1787
+ anchor: BlockOffset_2
1788
+ focus: BlockOffset_2
1789
+ }
1750
1790
  }
1751
1791
  | {
1752
1792
  type: 'delete'
@@ -2055,7 +2095,7 @@ declare const editorMachine: StateMachine<
2055
2095
  }
2056
2096
  | {
2057
2097
  type: 'dragstart'
2058
- origin: EventPosition
2098
+ origin: Pick<EventPosition, 'selection'>
2059
2099
  ghost?: HTMLElement
2060
2100
  }
2061
2101
  | {
@@ -2092,7 +2132,7 @@ declare const editorMachine: StateMachine<
2092
2132
  value: Array<PortableTextBlock> | undefined
2093
2133
  internalDrag?: {
2094
2134
  ghost?: HTMLElement
2095
- origin: EventPosition
2135
+ origin: Pick<EventPosition, 'selection'>
2096
2136
  }
2097
2137
  },
2098
2138
  {
@@ -2157,6 +2197,10 @@ declare const editorMachine: StateMachine<
2157
2197
  | {
2158
2198
  type: 'decorator.toggle'
2159
2199
  decorator: string
2200
+ offsets?: {
2201
+ anchor: BlockOffset_2
2202
+ focus: BlockOffset_2
2203
+ }
2160
2204
  }
2161
2205
  | {
2162
2206
  type: 'delete'
@@ -2465,7 +2509,7 @@ declare const editorMachine: StateMachine<
2465
2509
  }
2466
2510
  | {
2467
2511
  type: 'dragstart'
2468
- origin: EventPosition
2512
+ origin: Pick<EventPosition, 'selection'>
2469
2513
  ghost?: HTMLElement
2470
2514
  }
2471
2515
  | {
@@ -2537,6 +2581,10 @@ declare const editorMachine: StateMachine<
2537
2581
  | {
2538
2582
  type: 'decorator.toggle'
2539
2583
  decorator: string
2584
+ offsets?: {
2585
+ anchor: BlockOffset_2
2586
+ focus: BlockOffset_2
2587
+ }
2540
2588
  }
2541
2589
  | {
2542
2590
  type: 'delete'
@@ -2789,7 +2837,7 @@ declare const editorMachine: StateMachine<
2789
2837
  value: Array<PortableTextBlock> | undefined
2790
2838
  internalDrag?: {
2791
2839
  ghost?: HTMLElement
2792
- origin: EventPosition
2840
+ origin: Pick<EventPosition, 'selection'>
2793
2841
  }
2794
2842
  },
2795
2843
  {
@@ -2853,6 +2901,10 @@ declare const editorMachine: StateMachine<
2853
2901
  | {
2854
2902
  type: 'decorator.toggle'
2855
2903
  decorator: string
2904
+ offsets?: {
2905
+ anchor: BlockOffset_2
2906
+ focus: BlockOffset_2
2907
+ }
2856
2908
  }
2857
2909
  | {
2858
2910
  type: 'delete'
@@ -3161,7 +3213,7 @@ declare const editorMachine: StateMachine<
3161
3213
  }
3162
3214
  | {
3163
3215
  type: 'dragstart'
3164
- origin: EventPosition
3216
+ origin: Pick<EventPosition, 'selection'>
3165
3217
  ghost?: HTMLElement
3166
3218
  }
3167
3219
  | {
@@ -3233,6 +3285,10 @@ declare const editorMachine: StateMachine<
3233
3285
  | {
3234
3286
  type: 'decorator.toggle'
3235
3287
  decorator: string
3288
+ offsets?: {
3289
+ anchor: BlockOffset_2
3290
+ focus: BlockOffset_2
3291
+ }
3236
3292
  }
3237
3293
  | {
3238
3294
  type: 'delete'
@@ -3485,7 +3541,7 @@ declare const editorMachine: StateMachine<
3485
3541
  value: Array<PortableTextBlock> | undefined
3486
3542
  internalDrag?: {
3487
3543
  ghost?: HTMLElement
3488
- origin: EventPosition
3544
+ origin: Pick<EventPosition, 'selection'>
3489
3545
  }
3490
3546
  },
3491
3547
  {
@@ -3552,6 +3608,10 @@ declare const editorMachine: StateMachine<
3552
3608
  | {
3553
3609
  type: 'decorator.toggle'
3554
3610
  decorator: string
3611
+ offsets?: {
3612
+ anchor: BlockOffset_2
3613
+ focus: BlockOffset_2
3614
+ }
3555
3615
  }
3556
3616
  | {
3557
3617
  type: 'delete'
@@ -3860,7 +3920,7 @@ declare const editorMachine: StateMachine<
3860
3920
  }
3861
3921
  | {
3862
3922
  type: 'dragstart'
3863
- origin: EventPosition
3923
+ origin: Pick<EventPosition, 'selection'>
3864
3924
  ghost?: HTMLElement
3865
3925
  }
3866
3926
  | {
@@ -3932,6 +3992,10 @@ declare const editorMachine: StateMachine<
3932
3992
  | {
3933
3993
  type: 'decorator.toggle'
3934
3994
  decorator: string
3995
+ offsets?: {
3996
+ anchor: BlockOffset_2
3997
+ focus: BlockOffset_2
3998
+ }
3935
3999
  }
3936
4000
  | {
3937
4001
  type: 'delete'
@@ -4184,7 +4248,7 @@ declare const editorMachine: StateMachine<
4184
4248
  value: Array<PortableTextBlock> | undefined
4185
4249
  internalDrag?: {
4186
4250
  ghost?: HTMLElement
4187
- origin: EventPosition
4251
+ origin: Pick<EventPosition, 'selection'>
4188
4252
  }
4189
4253
  },
4190
4254
  {
@@ -4250,6 +4314,10 @@ declare const editorMachine: StateMachine<
4250
4314
  | {
4251
4315
  type: 'decorator.toggle'
4252
4316
  decorator: string
4317
+ offsets?: {
4318
+ anchor: BlockOffset_2
4319
+ focus: BlockOffset_2
4320
+ }
4253
4321
  }
4254
4322
  | {
4255
4323
  type: 'delete'
@@ -4558,7 +4626,7 @@ declare const editorMachine: StateMachine<
4558
4626
  }
4559
4627
  | {
4560
4628
  type: 'dragstart'
4561
- origin: EventPosition
4629
+ origin: Pick<EventPosition, 'selection'>
4562
4630
  ghost?: HTMLElement
4563
4631
  }
4564
4632
  | {
@@ -4630,6 +4698,10 @@ declare const editorMachine: StateMachine<
4630
4698
  | {
4631
4699
  type: 'decorator.toggle'
4632
4700
  decorator: string
4701
+ offsets?: {
4702
+ anchor: BlockOffset_2
4703
+ focus: BlockOffset_2
4704
+ }
4633
4705
  }
4634
4706
  | {
4635
4707
  type: 'delete'
@@ -4882,7 +4954,7 @@ declare const editorMachine: StateMachine<
4882
4954
  value: Array<PortableTextBlock> | undefined
4883
4955
  internalDrag?: {
4884
4956
  ghost?: HTMLElement
4885
- origin: EventPosition
4957
+ origin: Pick<EventPosition, 'selection'>
4886
4958
  }
4887
4959
  },
4888
4960
  {
@@ -4947,6 +5019,10 @@ declare const editorMachine: StateMachine<
4947
5019
  | {
4948
5020
  type: 'decorator.toggle'
4949
5021
  decorator: string
5022
+ offsets?: {
5023
+ anchor: BlockOffset_2
5024
+ focus: BlockOffset_2
5025
+ }
4950
5026
  }
4951
5027
  | {
4952
5028
  type: 'delete'
@@ -5255,7 +5331,7 @@ declare const editorMachine: StateMachine<
5255
5331
  }
5256
5332
  | {
5257
5333
  type: 'dragstart'
5258
- origin: EventPosition
5334
+ origin: Pick<EventPosition, 'selection'>
5259
5335
  ghost?: HTMLElement
5260
5336
  }
5261
5337
  | {
@@ -5327,6 +5403,10 @@ declare const editorMachine: StateMachine<
5327
5403
  | {
5328
5404
  type: 'decorator.toggle'
5329
5405
  decorator: string
5406
+ offsets?: {
5407
+ anchor: BlockOffset_2
5408
+ focus: BlockOffset_2
5409
+ }
5330
5410
  }
5331
5411
  | {
5332
5412
  type: 'delete'
@@ -5580,7 +5660,7 @@ declare const editorMachine: StateMachine<
5580
5660
  value: Array<PortableTextBlock> | undefined
5581
5661
  internalDrag?: {
5582
5662
  ghost?: HTMLElement
5583
- origin: EventPosition
5663
+ origin: Pick<EventPosition, 'selection'>
5584
5664
  }
5585
5665
  },
5586
5666
  {
@@ -5645,6 +5725,10 @@ declare const editorMachine: StateMachine<
5645
5725
  | {
5646
5726
  type: 'decorator.toggle'
5647
5727
  decorator: string
5728
+ offsets?: {
5729
+ anchor: BlockOffset_2
5730
+ focus: BlockOffset_2
5731
+ }
5648
5732
  }
5649
5733
  | {
5650
5734
  type: 'delete'
@@ -5953,7 +6037,7 @@ declare const editorMachine: StateMachine<
5953
6037
  }
5954
6038
  | {
5955
6039
  type: 'dragstart'
5956
- origin: EventPosition
6040
+ origin: Pick<EventPosition, 'selection'>
5957
6041
  ghost?: HTMLElement
5958
6042
  }
5959
6043
  | {
@@ -5982,7 +6066,7 @@ declare const editorMachine: StateMachine<
5982
6066
  value: Array<PortableTextBlock> | undefined
5983
6067
  internalDrag?: {
5984
6068
  ghost?: HTMLElement
5985
- origin: EventPosition
6069
+ origin: Pick<EventPosition, 'selection'>
5986
6070
  }
5987
6071
  },
5988
6072
  {
@@ -6047,6 +6131,10 @@ declare const editorMachine: StateMachine<
6047
6131
  | {
6048
6132
  type: 'decorator.toggle'
6049
6133
  decorator: string
6134
+ offsets?: {
6135
+ anchor: BlockOffset_2
6136
+ focus: BlockOffset_2
6137
+ }
6050
6138
  }
6051
6139
  | {
6052
6140
  type: 'delete'
@@ -6355,7 +6443,7 @@ declare const editorMachine: StateMachine<
6355
6443
  }
6356
6444
  | {
6357
6445
  type: 'dragstart'
6358
- origin: EventPosition
6446
+ origin: Pick<EventPosition, 'selection'>
6359
6447
  ghost?: HTMLElement
6360
6448
  }
6361
6449
  | {
@@ -6427,6 +6515,10 @@ declare const editorMachine: StateMachine<
6427
6515
  | {
6428
6516
  type: 'decorator.toggle'
6429
6517
  decorator: string
6518
+ offsets?: {
6519
+ anchor: BlockOffset_2
6520
+ focus: BlockOffset_2
6521
+ }
6430
6522
  }
6431
6523
  | {
6432
6524
  type: 'delete'
@@ -6680,7 +6772,7 @@ declare const editorMachine: StateMachine<
6680
6772
  value: Array<PortableTextBlock> | undefined
6681
6773
  internalDrag?: {
6682
6774
  ghost?: HTMLElement
6683
- origin: EventPosition
6775
+ origin: Pick<EventPosition, 'selection'>
6684
6776
  }
6685
6777
  },
6686
6778
  {
@@ -6745,6 +6837,10 @@ declare const editorMachine: StateMachine<
6745
6837
  | {
6746
6838
  type: 'decorator.toggle'
6747
6839
  decorator: string
6840
+ offsets?: {
6841
+ anchor: BlockOffset_2
6842
+ focus: BlockOffset_2
6843
+ }
6748
6844
  }
6749
6845
  | {
6750
6846
  type: 'delete'
@@ -7053,7 +7149,7 @@ declare const editorMachine: StateMachine<
7053
7149
  }
7054
7150
  | {
7055
7151
  type: 'dragstart'
7056
- origin: EventPosition
7152
+ origin: Pick<EventPosition, 'selection'>
7057
7153
  ghost?: HTMLElement
7058
7154
  }
7059
7155
  | {
@@ -7125,6 +7221,10 @@ declare const editorMachine: StateMachine<
7125
7221
  | {
7126
7222
  type: 'decorator.toggle'
7127
7223
  decorator: string
7224
+ offsets?: {
7225
+ anchor: BlockOffset_2
7226
+ focus: BlockOffset_2
7227
+ }
7128
7228
  }
7129
7229
  | {
7130
7230
  type: 'delete'
@@ -7377,7 +7477,7 @@ declare const editorMachine: StateMachine<
7377
7477
  value: Array<PortableTextBlock> | undefined
7378
7478
  internalDrag?: {
7379
7479
  ghost?: HTMLElement
7380
- origin: EventPosition
7480
+ origin: Pick<EventPosition, 'selection'>
7381
7481
  }
7382
7482
  },
7383
7483
  {
@@ -7441,6 +7541,10 @@ declare const editorMachine: StateMachine<
7441
7541
  | {
7442
7542
  type: 'decorator.toggle'
7443
7543
  decorator: string
7544
+ offsets?: {
7545
+ anchor: BlockOffset_2
7546
+ focus: BlockOffset_2
7547
+ }
7444
7548
  }
7445
7549
  | {
7446
7550
  type: 'delete'
@@ -7749,7 +7853,7 @@ declare const editorMachine: StateMachine<
7749
7853
  }
7750
7854
  | {
7751
7855
  type: 'dragstart'
7752
- origin: EventPosition
7856
+ origin: Pick<EventPosition, 'selection'>
7753
7857
  ghost?: HTMLElement
7754
7858
  }
7755
7859
  | {
@@ -7821,6 +7925,10 @@ declare const editorMachine: StateMachine<
7821
7925
  | {
7822
7926
  type: 'decorator.toggle'
7823
7927
  decorator: string
7928
+ offsets?: {
7929
+ anchor: BlockOffset_2
7930
+ focus: BlockOffset_2
7931
+ }
7824
7932
  }
7825
7933
  | {
7826
7934
  type: 'delete'
@@ -8073,7 +8181,7 @@ declare const editorMachine: StateMachine<
8073
8181
  value: Array<PortableTextBlock> | undefined
8074
8182
  internalDrag?: {
8075
8183
  ghost?: HTMLElement
8076
- origin: EventPosition
8184
+ origin: Pick<EventPosition, 'selection'>
8077
8185
  }
8078
8186
  },
8079
8187
  {
@@ -8138,6 +8246,10 @@ declare const editorMachine: StateMachine<
8138
8246
  | {
8139
8247
  type: 'decorator.toggle'
8140
8248
  decorator: string
8249
+ offsets?: {
8250
+ anchor: BlockOffset_2
8251
+ focus: BlockOffset_2
8252
+ }
8141
8253
  }
8142
8254
  | {
8143
8255
  type: 'delete'
@@ -8446,7 +8558,7 @@ declare const editorMachine: StateMachine<
8446
8558
  }
8447
8559
  | {
8448
8560
  type: 'dragstart'
8449
- origin: EventPosition
8561
+ origin: Pick<EventPosition, 'selection'>
8450
8562
  ghost?: HTMLElement
8451
8563
  }
8452
8564
  | {
@@ -8518,6 +8630,10 @@ declare const editorMachine: StateMachine<
8518
8630
  | {
8519
8631
  type: 'decorator.toggle'
8520
8632
  decorator: string
8633
+ offsets?: {
8634
+ anchor: BlockOffset_2
8635
+ focus: BlockOffset_2
8636
+ }
8521
8637
  }
8522
8638
  | {
8523
8639
  type: 'delete'
@@ -8776,7 +8892,7 @@ declare const editorMachine: StateMachine<
8776
8892
  value: Array<PortableTextBlock> | undefined
8777
8893
  internalDrag?: {
8778
8894
  ghost?: HTMLElement
8779
- origin: EventPosition
8895
+ origin: Pick<EventPosition, 'selection'>
8780
8896
  }
8781
8897
  },
8782
8898
  PatchesEvent,
@@ -8838,6 +8954,10 @@ declare const editorMachine: StateMachine<
8838
8954
  | {
8839
8955
  type: 'decorator.toggle'
8840
8956
  decorator: string
8957
+ offsets?: {
8958
+ anchor: BlockOffset_2
8959
+ focus: BlockOffset_2
8960
+ }
8841
8961
  }
8842
8962
  | {
8843
8963
  type: 'delete'
@@ -9146,7 +9266,7 @@ declare const editorMachine: StateMachine<
9146
9266
  }
9147
9267
  | {
9148
9268
  type: 'dragstart'
9149
- origin: EventPosition
9269
+ origin: Pick<EventPosition, 'selection'>
9150
9270
  ghost?: HTMLElement
9151
9271
  }
9152
9272
  | {
@@ -9218,6 +9338,10 @@ declare const editorMachine: StateMachine<
9218
9338
  | {
9219
9339
  type: 'decorator.toggle'
9220
9340
  decorator: string
9341
+ offsets?: {
9342
+ anchor: BlockOffset_2
9343
+ focus: BlockOffset_2
9344
+ }
9221
9345
  }
9222
9346
  | {
9223
9347
  type: 'delete'
@@ -9473,7 +9597,7 @@ declare const editorMachine: StateMachine<
9473
9597
  value: Array<PortableTextBlock> | undefined
9474
9598
  internalDrag?: {
9475
9599
  ghost?: HTMLElement
9476
- origin: EventPosition
9600
+ origin: Pick<EventPosition, 'selection'>
9477
9601
  }
9478
9602
  },
9479
9603
  {
@@ -9538,6 +9662,10 @@ declare const editorMachine: StateMachine<
9538
9662
  | {
9539
9663
  type: 'decorator.toggle'
9540
9664
  decorator: string
9665
+ offsets?: {
9666
+ anchor: BlockOffset_2
9667
+ focus: BlockOffset_2
9668
+ }
9541
9669
  }
9542
9670
  | {
9543
9671
  type: 'delete'
@@ -9846,7 +9974,7 @@ declare const editorMachine: StateMachine<
9846
9974
  }
9847
9975
  | {
9848
9976
  type: 'dragstart'
9849
- origin: EventPosition
9977
+ origin: Pick<EventPosition, 'selection'>
9850
9978
  ghost?: HTMLElement
9851
9979
  }
9852
9980
  | {
@@ -9880,7 +10008,7 @@ declare const editorMachine: StateMachine<
9880
10008
  value: Array<PortableTextBlock> | undefined
9881
10009
  internalDrag?: {
9882
10010
  ghost?: HTMLElement
9883
- origin: EventPosition
10011
+ origin: Pick<EventPosition, 'selection'>
9884
10012
  }
9885
10013
  },
9886
10014
  {
@@ -9945,6 +10073,10 @@ declare const editorMachine: StateMachine<
9945
10073
  | {
9946
10074
  type: 'decorator.toggle'
9947
10075
  decorator: string
10076
+ offsets?: {
10077
+ anchor: BlockOffset_2
10078
+ focus: BlockOffset_2
10079
+ }
9948
10080
  }
9949
10081
  | {
9950
10082
  type: 'delete'
@@ -10253,7 +10385,7 @@ declare const editorMachine: StateMachine<
10253
10385
  }
10254
10386
  | {
10255
10387
  type: 'dragstart'
10256
- origin: EventPosition
10388
+ origin: Pick<EventPosition, 'selection'>
10257
10389
  ghost?: HTMLElement
10258
10390
  }
10259
10391
  | {
@@ -10284,7 +10416,7 @@ declare const editorMachine: StateMachine<
10284
10416
  value: Array<PortableTextBlock> | undefined
10285
10417
  internalDrag?: {
10286
10418
  ghost?: HTMLElement
10287
- origin: EventPosition
10419
+ origin: Pick<EventPosition, 'selection'>
10288
10420
  }
10289
10421
  },
10290
10422
  {
@@ -10349,6 +10481,10 @@ declare const editorMachine: StateMachine<
10349
10481
  | {
10350
10482
  type: 'decorator.toggle'
10351
10483
  decorator: string
10484
+ offsets?: {
10485
+ anchor: BlockOffset_2
10486
+ focus: BlockOffset_2
10487
+ }
10352
10488
  }
10353
10489
  | {
10354
10490
  type: 'delete'
@@ -10657,7 +10793,7 @@ declare const editorMachine: StateMachine<
10657
10793
  }
10658
10794
  | {
10659
10795
  type: 'dragstart'
10660
- origin: EventPosition
10796
+ origin: Pick<EventPosition, 'selection'>
10661
10797
  ghost?: HTMLElement
10662
10798
  }
10663
10799
  | {
@@ -10700,7 +10836,7 @@ declare const editorMachine: StateMachine<
10700
10836
  value: Array<PortableTextBlock> | undefined
10701
10837
  internalDrag?: {
10702
10838
  ghost?: HTMLElement
10703
- origin: EventPosition
10839
+ origin: Pick<EventPosition, 'selection'>
10704
10840
  }
10705
10841
  },
10706
10842
  {
@@ -10741,7 +10877,7 @@ declare const editorMachine: StateMachine<
10741
10877
  value: Array<PortableTextBlock> | undefined
10742
10878
  internalDrag?: {
10743
10879
  ghost?: HTMLElement
10744
- origin: EventPosition
10880
+ origin: Pick<EventPosition, 'selection'>
10745
10881
  }
10746
10882
  },
10747
10883
  {
@@ -10773,7 +10909,7 @@ declare const editorMachine: StateMachine<
10773
10909
  value: Array<PortableTextBlock> | undefined
10774
10910
  internalDrag?: {
10775
10911
  ghost?: HTMLElement
10776
- origin: EventPosition
10912
+ origin: Pick<EventPosition, 'selection'>
10777
10913
  }
10778
10914
  },
10779
10915
  {
@@ -10806,7 +10942,7 @@ declare const editorMachine: StateMachine<
10806
10942
  value: Array<PortableTextBlock> | undefined
10807
10943
  internalDrag?: {
10808
10944
  ghost?: HTMLElement
10809
- origin: EventPosition
10945
+ origin: Pick<EventPosition, 'selection'>
10810
10946
  }
10811
10947
  },
10812
10948
  {
@@ -10837,7 +10973,7 @@ declare const editorMachine: StateMachine<
10837
10973
  value: Array<PortableTextBlock> | undefined
10838
10974
  internalDrag?: {
10839
10975
  ghost?: HTMLElement
10840
- origin: EventPosition
10976
+ origin: Pick<EventPosition, 'selection'>
10841
10977
  }
10842
10978
  },
10843
10979
  | {
@@ -10922,6 +11058,10 @@ declare const editorMachine: StateMachine<
10922
11058
  | {
10923
11059
  type: 'decorator.toggle'
10924
11060
  decorator: string
11061
+ offsets?: {
11062
+ anchor: BlockOffset_2
11063
+ focus: BlockOffset_2
11064
+ }
10925
11065
  }
10926
11066
  | {
10927
11067
  type: 'delete'
@@ -11230,7 +11370,7 @@ declare const editorMachine: StateMachine<
11230
11370
  }
11231
11371
  | {
11232
11372
  type: 'dragstart'
11233
- origin: EventPosition
11373
+ origin: Pick<EventPosition, 'selection'>
11234
11374
  ghost?: HTMLElement
11235
11375
  }
11236
11376
  | {
@@ -11302,6 +11442,10 @@ declare const editorMachine: StateMachine<
11302
11442
  | {
11303
11443
  type: 'decorator.toggle'
11304
11444
  decorator: string
11445
+ offsets?: {
11446
+ anchor: BlockOffset_2
11447
+ focus: BlockOffset_2
11448
+ }
11305
11449
  }
11306
11450
  | {
11307
11451
  type: 'delete'
@@ -11554,7 +11698,7 @@ declare const editorMachine: StateMachine<
11554
11698
  value: Array<PortableTextBlock> | undefined
11555
11699
  internalDrag?: {
11556
11700
  ghost?: HTMLElement
11557
- origin: EventPosition
11701
+ origin: Pick<EventPosition, 'selection'>
11558
11702
  }
11559
11703
  },
11560
11704
  | {
@@ -11625,6 +11769,10 @@ declare const editorMachine: StateMachine<
11625
11769
  | {
11626
11770
  type: 'decorator.toggle'
11627
11771
  decorator: string
11772
+ offsets?: {
11773
+ anchor: BlockOffset_2
11774
+ focus: BlockOffset_2
11775
+ }
11628
11776
  }
11629
11777
  | {
11630
11778
  type: 'delete'
@@ -11933,7 +12081,7 @@ declare const editorMachine: StateMachine<
11933
12081
  }
11934
12082
  | {
11935
12083
  type: 'dragstart'
11936
- origin: EventPosition
12084
+ origin: Pick<EventPosition, 'selection'>
11937
12085
  ghost?: HTMLElement
11938
12086
  }
11939
12087
  | {
@@ -12005,6 +12153,10 @@ declare const editorMachine: StateMachine<
12005
12153
  | {
12006
12154
  type: 'decorator.toggle'
12007
12155
  decorator: string
12156
+ offsets?: {
12157
+ anchor: BlockOffset_2
12158
+ focus: BlockOffset_2
12159
+ }
12008
12160
  }
12009
12161
  | {
12010
12162
  type: 'delete'
@@ -12257,7 +12409,7 @@ declare const editorMachine: StateMachine<
12257
12409
  value: Array<PortableTextBlock> | undefined
12258
12410
  internalDrag?: {
12259
12411
  ghost?: HTMLElement
12260
- origin: EventPosition
12412
+ origin: Pick<EventPosition, 'selection'>
12261
12413
  }
12262
12414
  },
12263
12415
  {
@@ -12321,6 +12473,10 @@ declare const editorMachine: StateMachine<
12321
12473
  | {
12322
12474
  type: 'decorator.toggle'
12323
12475
  decorator: string
12476
+ offsets?: {
12477
+ anchor: BlockOffset_2
12478
+ focus: BlockOffset_2
12479
+ }
12324
12480
  }
12325
12481
  | {
12326
12482
  type: 'delete'
@@ -12629,7 +12785,7 @@ declare const editorMachine: StateMachine<
12629
12785
  }
12630
12786
  | {
12631
12787
  type: 'dragstart'
12632
- origin: EventPosition
12788
+ origin: Pick<EventPosition, 'selection'>
12633
12789
  ghost?: HTMLElement
12634
12790
  }
12635
12791
  | {
@@ -12701,6 +12857,10 @@ declare const editorMachine: StateMachine<
12701
12857
  | {
12702
12858
  type: 'decorator.toggle'
12703
12859
  decorator: string
12860
+ offsets?: {
12861
+ anchor: BlockOffset_2
12862
+ focus: BlockOffset_2
12863
+ }
12704
12864
  }
12705
12865
  | {
12706
12866
  type: 'delete'
@@ -12953,7 +13113,7 @@ declare const editorMachine: StateMachine<
12953
13113
  value: Array<PortableTextBlock> | undefined
12954
13114
  internalDrag?: {
12955
13115
  ghost?: HTMLElement
12956
- origin: EventPosition
13116
+ origin: Pick<EventPosition, 'selection'>
12957
13117
  }
12958
13118
  },
12959
13119
  {
@@ -13017,6 +13177,10 @@ declare const editorMachine: StateMachine<
13017
13177
  | {
13018
13178
  type: 'decorator.toggle'
13019
13179
  decorator: string
13180
+ offsets?: {
13181
+ anchor: BlockOffset_2
13182
+ focus: BlockOffset_2
13183
+ }
13020
13184
  }
13021
13185
  | {
13022
13186
  type: 'delete'
@@ -13325,7 +13489,7 @@ declare const editorMachine: StateMachine<
13325
13489
  }
13326
13490
  | {
13327
13491
  type: 'dragstart'
13328
- origin: EventPosition
13492
+ origin: Pick<EventPosition, 'selection'>
13329
13493
  ghost?: HTMLElement
13330
13494
  }
13331
13495
  | {
@@ -13397,6 +13561,10 @@ declare const editorMachine: StateMachine<
13397
13561
  | {
13398
13562
  type: 'decorator.toggle'
13399
13563
  decorator: string
13564
+ offsets?: {
13565
+ anchor: BlockOffset_2
13566
+ focus: BlockOffset_2
13567
+ }
13400
13568
  }
13401
13569
  | {
13402
13570
  type: 'delete'
@@ -13649,7 +13817,7 @@ declare const editorMachine: StateMachine<
13649
13817
  value: Array<PortableTextBlock> | undefined
13650
13818
  internalDrag?: {
13651
13819
  ghost?: HTMLElement
13652
- origin: EventPosition
13820
+ origin: Pick<EventPosition, 'selection'>
13653
13821
  }
13654
13822
  },
13655
13823
  | {
@@ -13667,6 +13835,10 @@ declare const editorMachine: StateMachine<
13667
13835
  | {
13668
13836
  type: 'decorator.toggle'
13669
13837
  decorator: string
13838
+ offsets?: {
13839
+ anchor: BlockOffset_2
13840
+ focus: BlockOffset_2
13841
+ }
13670
13842
  },
13671
13843
  | {
13672
13844
  type: 'annotation.add'
@@ -13726,6 +13898,10 @@ declare const editorMachine: StateMachine<
13726
13898
  | {
13727
13899
  type: 'decorator.toggle'
13728
13900
  decorator: string
13901
+ offsets?: {
13902
+ anchor: BlockOffset_2
13903
+ focus: BlockOffset_2
13904
+ }
13729
13905
  }
13730
13906
  | {
13731
13907
  type: 'delete'
@@ -14034,7 +14210,7 @@ declare const editorMachine: StateMachine<
14034
14210
  }
14035
14211
  | {
14036
14212
  type: 'dragstart'
14037
- origin: EventPosition
14213
+ origin: Pick<EventPosition, 'selection'>
14038
14214
  ghost?: HTMLElement
14039
14215
  }
14040
14216
  | {
@@ -14106,6 +14282,10 @@ declare const editorMachine: StateMachine<
14106
14282
  | {
14107
14283
  type: 'decorator.toggle'
14108
14284
  decorator: string
14285
+ offsets?: {
14286
+ anchor: BlockOffset_2
14287
+ focus: BlockOffset_2
14288
+ }
14109
14289
  }
14110
14290
  | {
14111
14291
  type: 'delete'
@@ -14358,7 +14538,7 @@ declare const editorMachine: StateMachine<
14358
14538
  value: Array<PortableTextBlock> | undefined
14359
14539
  internalDrag?: {
14360
14540
  ghost?: HTMLElement
14361
- origin: EventPosition
14541
+ origin: Pick<EventPosition, 'selection'>
14362
14542
  }
14363
14543
  },
14364
14544
  | {
@@ -14436,6 +14616,10 @@ declare const editorMachine: StateMachine<
14436
14616
  | {
14437
14617
  type: 'decorator.toggle'
14438
14618
  decorator: string
14619
+ offsets?: {
14620
+ anchor: BlockOffset_2
14621
+ focus: BlockOffset_2
14622
+ }
14439
14623
  }
14440
14624
  | {
14441
14625
  type: 'delete'
@@ -14744,7 +14928,7 @@ declare const editorMachine: StateMachine<
14744
14928
  }
14745
14929
  | {
14746
14930
  type: 'dragstart'
14747
- origin: EventPosition
14931
+ origin: Pick<EventPosition, 'selection'>
14748
14932
  ghost?: HTMLElement
14749
14933
  }
14750
14934
  | {
@@ -14816,6 +15000,10 @@ declare const editorMachine: StateMachine<
14816
15000
  | {
14817
15001
  type: 'decorator.toggle'
14818
15002
  decorator: string
15003
+ offsets?: {
15004
+ anchor: BlockOffset_2
15005
+ focus: BlockOffset_2
15006
+ }
14819
15007
  }
14820
15008
  | {
14821
15009
  type: 'delete'
@@ -15068,7 +15256,7 @@ declare const editorMachine: StateMachine<
15068
15256
  value: Array<PortableTextBlock> | undefined
15069
15257
  internalDrag?: {
15070
15258
  ghost?: HTMLElement
15071
- origin: EventPosition
15259
+ origin: Pick<EventPosition, 'selection'>
15072
15260
  }
15073
15261
  },
15074
15262
  {
@@ -15132,6 +15320,10 @@ declare const editorMachine: StateMachine<
15132
15320
  | {
15133
15321
  type: 'decorator.toggle'
15134
15322
  decorator: string
15323
+ offsets?: {
15324
+ anchor: BlockOffset_2
15325
+ focus: BlockOffset_2
15326
+ }
15135
15327
  }
15136
15328
  | {
15137
15329
  type: 'delete'
@@ -15440,7 +15632,7 @@ declare const editorMachine: StateMachine<
15440
15632
  }
15441
15633
  | {
15442
15634
  type: 'dragstart'
15443
- origin: EventPosition
15635
+ origin: Pick<EventPosition, 'selection'>
15444
15636
  ghost?: HTMLElement
15445
15637
  }
15446
15638
  | {
@@ -15512,6 +15704,10 @@ declare const editorMachine: StateMachine<
15512
15704
  | {
15513
15705
  type: 'decorator.toggle'
15514
15706
  decorator: string
15707
+ offsets?: {
15708
+ anchor: BlockOffset_2
15709
+ focus: BlockOffset_2
15710
+ }
15515
15711
  }
15516
15712
  | {
15517
15713
  type: 'delete'
@@ -15764,7 +15960,7 @@ declare const editorMachine: StateMachine<
15764
15960
  value: Array<PortableTextBlock> | undefined
15765
15961
  internalDrag?: {
15766
15962
  ghost?: HTMLElement
15767
- origin: EventPosition
15963
+ origin: Pick<EventPosition, 'selection'>
15768
15964
  }
15769
15965
  },
15770
15966
  | {
@@ -15831,6 +16027,10 @@ declare const editorMachine: StateMachine<
15831
16027
  | {
15832
16028
  type: 'decorator.toggle'
15833
16029
  decorator: string
16030
+ offsets?: {
16031
+ anchor: BlockOffset_2
16032
+ focus: BlockOffset_2
16033
+ }
15834
16034
  }
15835
16035
  | {
15836
16036
  type: 'delete'
@@ -16139,7 +16339,7 @@ declare const editorMachine: StateMachine<
16139
16339
  }
16140
16340
  | {
16141
16341
  type: 'dragstart'
16142
- origin: EventPosition
16342
+ origin: Pick<EventPosition, 'selection'>
16143
16343
  ghost?: HTMLElement
16144
16344
  }
16145
16345
  | {
@@ -16211,6 +16411,10 @@ declare const editorMachine: StateMachine<
16211
16411
  | {
16212
16412
  type: 'decorator.toggle'
16213
16413
  decorator: string
16414
+ offsets?: {
16415
+ anchor: BlockOffset_2
16416
+ focus: BlockOffset_2
16417
+ }
16214
16418
  }
16215
16419
  | {
16216
16420
  type: 'delete'
@@ -16463,7 +16667,7 @@ declare const editorMachine: StateMachine<
16463
16667
  value: Array<PortableTextBlock> | undefined
16464
16668
  internalDrag?: {
16465
16669
  ghost?: HTMLElement
16466
- origin: EventPosition
16670
+ origin: Pick<EventPosition, 'selection'>
16467
16671
  }
16468
16672
  },
16469
16673
  | {
@@ -16583,6 +16787,10 @@ declare const editorMachine: StateMachine<
16583
16787
  | {
16584
16788
  type: 'decorator.toggle'
16585
16789
  decorator: string
16790
+ offsets?: {
16791
+ anchor: BlockOffset_2
16792
+ focus: BlockOffset_2
16793
+ }
16586
16794
  }
16587
16795
  | {
16588
16796
  type: 'delete'
@@ -16891,7 +17099,7 @@ declare const editorMachine: StateMachine<
16891
17099
  }
16892
17100
  | {
16893
17101
  type: 'dragstart'
16894
- origin: EventPosition
17102
+ origin: Pick<EventPosition, 'selection'>
16895
17103
  ghost?: HTMLElement
16896
17104
  }
16897
17105
  | {
@@ -16963,6 +17171,10 @@ declare const editorMachine: StateMachine<
16963
17171
  | {
16964
17172
  type: 'decorator.toggle'
16965
17173
  decorator: string
17174
+ offsets?: {
17175
+ anchor: BlockOffset_2
17176
+ focus: BlockOffset_2
17177
+ }
16966
17178
  }
16967
17179
  | {
16968
17180
  type: 'delete'
@@ -17215,7 +17427,7 @@ declare const editorMachine: StateMachine<
17215
17427
  value: Array<PortableTextBlock> | undefined
17216
17428
  internalDrag?: {
17217
17429
  ghost?: HTMLElement
17218
- origin: EventPosition
17430
+ origin: Pick<EventPosition, 'selection'>
17219
17431
  }
17220
17432
  },
17221
17433
  | {
@@ -17288,6 +17500,10 @@ declare const editorMachine: StateMachine<
17288
17500
  | {
17289
17501
  type: 'decorator.toggle'
17290
17502
  decorator: string
17503
+ offsets?: {
17504
+ anchor: BlockOffset_2
17505
+ focus: BlockOffset_2
17506
+ }
17291
17507
  }
17292
17508
  | {
17293
17509
  type: 'delete'
@@ -17596,7 +17812,7 @@ declare const editorMachine: StateMachine<
17596
17812
  }
17597
17813
  | {
17598
17814
  type: 'dragstart'
17599
- origin: EventPosition
17815
+ origin: Pick<EventPosition, 'selection'>
17600
17816
  ghost?: HTMLElement
17601
17817
  }
17602
17818
  | {
@@ -17668,6 +17884,10 @@ declare const editorMachine: StateMachine<
17668
17884
  | {
17669
17885
  type: 'decorator.toggle'
17670
17886
  decorator: string
17887
+ offsets?: {
17888
+ anchor: BlockOffset_2
17889
+ focus: BlockOffset_2
17890
+ }
17671
17891
  }
17672
17892
  | {
17673
17893
  type: 'delete'
@@ -17920,7 +18140,7 @@ declare const editorMachine: StateMachine<
17920
18140
  value: Array<PortableTextBlock> | undefined
17921
18141
  internalDrag?: {
17922
18142
  ghost?: HTMLElement
17923
- origin: EventPosition
18143
+ origin: Pick<EventPosition, 'selection'>
17924
18144
  }
17925
18145
  },
17926
18146
  | {
@@ -17994,6 +18214,10 @@ declare const editorMachine: StateMachine<
17994
18214
  | {
17995
18215
  type: 'decorator.toggle'
17996
18216
  decorator: string
18217
+ offsets?: {
18218
+ anchor: BlockOffset_2
18219
+ focus: BlockOffset_2
18220
+ }
17997
18221
  }
17998
18222
  | {
17999
18223
  type: 'delete'
@@ -18302,7 +18526,7 @@ declare const editorMachine: StateMachine<
18302
18526
  }
18303
18527
  | {
18304
18528
  type: 'dragstart'
18305
- origin: EventPosition
18529
+ origin: Pick<EventPosition, 'selection'>
18306
18530
  ghost?: HTMLElement
18307
18531
  }
18308
18532
  | {
@@ -18374,6 +18598,10 @@ declare const editorMachine: StateMachine<
18374
18598
  | {
18375
18599
  type: 'decorator.toggle'
18376
18600
  decorator: string
18601
+ offsets?: {
18602
+ anchor: BlockOffset_2
18603
+ focus: BlockOffset_2
18604
+ }
18377
18605
  }
18378
18606
  | {
18379
18607
  type: 'delete'
@@ -18626,7 +18854,7 @@ declare const editorMachine: StateMachine<
18626
18854
  value: Array<PortableTextBlock> | undefined
18627
18855
  internalDrag?: {
18628
18856
  ghost?: HTMLElement
18629
- origin: EventPosition
18857
+ origin: Pick<EventPosition, 'selection'>
18630
18858
  }
18631
18859
  },
18632
18860
  {
@@ -18691,6 +18919,10 @@ declare const editorMachine: StateMachine<
18691
18919
  | {
18692
18920
  type: 'decorator.toggle'
18693
18921
  decorator: string
18922
+ offsets?: {
18923
+ anchor: BlockOffset_2
18924
+ focus: BlockOffset_2
18925
+ }
18694
18926
  }
18695
18927
  | {
18696
18928
  type: 'delete'
@@ -18999,7 +19231,7 @@ declare const editorMachine: StateMachine<
18999
19231
  }
19000
19232
  | {
19001
19233
  type: 'dragstart'
19002
- origin: EventPosition
19234
+ origin: Pick<EventPosition, 'selection'>
19003
19235
  ghost?: HTMLElement
19004
19236
  }
19005
19237
  | {
@@ -19071,6 +19303,10 @@ declare const editorMachine: StateMachine<
19071
19303
  | {
19072
19304
  type: 'decorator.toggle'
19073
19305
  decorator: string
19306
+ offsets?: {
19307
+ anchor: BlockOffset_2
19308
+ focus: BlockOffset_2
19309
+ }
19074
19310
  }
19075
19311
  | {
19076
19312
  type: 'delete'
@@ -19323,7 +19559,7 @@ declare const editorMachine: StateMachine<
19323
19559
  value: Array<PortableTextBlock> | undefined
19324
19560
  internalDrag?: {
19325
19561
  ghost?: HTMLElement
19326
- origin: EventPosition
19562
+ origin: Pick<EventPosition, 'selection'>
19327
19563
  }
19328
19564
  },
19329
19565
  | {
@@ -19392,6 +19628,10 @@ declare const editorMachine: StateMachine<
19392
19628
  | {
19393
19629
  type: 'decorator.toggle'
19394
19630
  decorator: string
19631
+ offsets?: {
19632
+ anchor: BlockOffset_2
19633
+ focus: BlockOffset_2
19634
+ }
19395
19635
  }
19396
19636
  | {
19397
19637
  type: 'delete'
@@ -19700,7 +19940,7 @@ declare const editorMachine: StateMachine<
19700
19940
  }
19701
19941
  | {
19702
19942
  type: 'dragstart'
19703
- origin: EventPosition
19943
+ origin: Pick<EventPosition, 'selection'>
19704
19944
  ghost?: HTMLElement
19705
19945
  }
19706
19946
  | {
@@ -19772,6 +20012,10 @@ declare const editorMachine: StateMachine<
19772
20012
  | {
19773
20013
  type: 'decorator.toggle'
19774
20014
  decorator: string
20015
+ offsets?: {
20016
+ anchor: BlockOffset_2
20017
+ focus: BlockOffset_2
20018
+ }
19775
20019
  }
19776
20020
  | {
19777
20021
  type: 'delete'
@@ -20024,7 +20268,7 @@ declare const editorMachine: StateMachine<
20024
20268
  value: Array<PortableTextBlock> | undefined
20025
20269
  internalDrag?: {
20026
20270
  ghost?: HTMLElement
20027
- origin: EventPosition
20271
+ origin: Pick<EventPosition, 'selection'>
20028
20272
  }
20029
20273
  },
20030
20274
  | {
@@ -20097,6 +20341,10 @@ declare const editorMachine: StateMachine<
20097
20341
  | {
20098
20342
  type: 'decorator.toggle'
20099
20343
  decorator: string
20344
+ offsets?: {
20345
+ anchor: BlockOffset_2
20346
+ focus: BlockOffset_2
20347
+ }
20100
20348
  }
20101
20349
  | {
20102
20350
  type: 'delete'
@@ -20405,7 +20653,7 @@ declare const editorMachine: StateMachine<
20405
20653
  }
20406
20654
  | {
20407
20655
  type: 'dragstart'
20408
- origin: EventPosition
20656
+ origin: Pick<EventPosition, 'selection'>
20409
20657
  ghost?: HTMLElement
20410
20658
  }
20411
20659
  | {
@@ -20477,6 +20725,10 @@ declare const editorMachine: StateMachine<
20477
20725
  | {
20478
20726
  type: 'decorator.toggle'
20479
20727
  decorator: string
20728
+ offsets?: {
20729
+ anchor: BlockOffset_2
20730
+ focus: BlockOffset_2
20731
+ }
20480
20732
  }
20481
20733
  | {
20482
20734
  type: 'delete'
@@ -20750,12 +21002,12 @@ declare const editorMachine: StateMachine<
20750
21002
  value: Array<PortableTextBlock> | undefined
20751
21003
  internalDrag?: {
20752
21004
  ghost?: HTMLElement
20753
- origin: EventPosition
21005
+ origin: Pick<EventPosition, 'selection'>
20754
21006
  }
20755
21007
  },
20756
21008
  {
20757
21009
  type: 'dragstart'
20758
- origin: EventPosition
21010
+ origin: Pick<EventPosition, 'selection'>
20759
21011
  ghost?: HTMLElement
20760
21012
  },
20761
21013
  | {
@@ -20816,6 +21068,10 @@ declare const editorMachine: StateMachine<
20816
21068
  | {
20817
21069
  type: 'decorator.toggle'
20818
21070
  decorator: string
21071
+ offsets?: {
21072
+ anchor: BlockOffset_2
21073
+ focus: BlockOffset_2
21074
+ }
20819
21075
  }
20820
21076
  | {
20821
21077
  type: 'delete'
@@ -21128,7 +21384,7 @@ declare const editorMachine: StateMachine<
21128
21384
  }
21129
21385
  | {
21130
21386
  type: 'dragstart'
21131
- origin: EventPosition
21387
+ origin: Pick<EventPosition, 'selection'>
21132
21388
  ghost?: HTMLElement
21133
21389
  }
21134
21390
  | {
@@ -21166,7 +21422,7 @@ declare const editorMachine: StateMachine<
21166
21422
  value: Array<PortableTextBlock> | undefined
21167
21423
  internalDrag?: {
21168
21424
  ghost?: HTMLElement
21169
- origin: EventPosition
21425
+ origin: Pick<EventPosition, 'selection'>
21170
21426
  }
21171
21427
  },
21172
21428
  | {
@@ -21227,6 +21483,10 @@ declare const editorMachine: StateMachine<
21227
21483
  | {
21228
21484
  type: 'decorator.toggle'
21229
21485
  decorator: string
21486
+ offsets?: {
21487
+ anchor: BlockOffset_2
21488
+ focus: BlockOffset_2
21489
+ }
21230
21490
  }
21231
21491
  | {
21232
21492
  type: 'delete'
@@ -21535,7 +21795,7 @@ declare const editorMachine: StateMachine<
21535
21795
  }
21536
21796
  | {
21537
21797
  type: 'dragstart'
21538
- origin: EventPosition
21798
+ origin: Pick<EventPosition, 'selection'>
21539
21799
  ghost?: HTMLElement
21540
21800
  }
21541
21801
  | {
@@ -21602,6 +21862,10 @@ declare const editorMachine: StateMachine<
21602
21862
  | {
21603
21863
  type: 'decorator.toggle'
21604
21864
  decorator: string
21865
+ offsets?: {
21866
+ anchor: BlockOffset_2
21867
+ focus: BlockOffset_2
21868
+ }
21605
21869
  }
21606
21870
  | {
21607
21871
  type: 'delete'
@@ -21910,7 +22174,7 @@ declare const editorMachine: StateMachine<
21910
22174
  }
21911
22175
  | {
21912
22176
  type: 'dragstart'
21913
- origin: EventPosition
22177
+ origin: Pick<EventPosition, 'selection'>
21914
22178
  ghost?: HTMLElement
21915
22179
  }
21916
22180
  | {
@@ -21933,7 +22197,7 @@ declare const editorMachine: StateMachine<
21933
22197
  value: Array<PortableTextBlock> | undefined
21934
22198
  internalDrag?: {
21935
22199
  ghost?: HTMLElement
21936
- origin: EventPosition
22200
+ origin: Pick<EventPosition, 'selection'>
21937
22201
  }
21938
22202
  },
21939
22203
  | {
@@ -21994,6 +22258,10 @@ declare const editorMachine: StateMachine<
21994
22258
  | {
21995
22259
  type: 'decorator.toggle'
21996
22260
  decorator: string
22261
+ offsets?: {
22262
+ anchor: BlockOffset_2
22263
+ focus: BlockOffset_2
22264
+ }
21997
22265
  }
21998
22266
  | {
21999
22267
  type: 'delete'
@@ -22302,7 +22570,7 @@ declare const editorMachine: StateMachine<
22302
22570
  }
22303
22571
  | {
22304
22572
  type: 'dragstart'
22305
- origin: EventPosition
22573
+ origin: Pick<EventPosition, 'selection'>
22306
22574
  ghost?: HTMLElement
22307
22575
  }
22308
22576
  | {
@@ -22369,6 +22637,10 @@ declare const editorMachine: StateMachine<
22369
22637
  | {
22370
22638
  type: 'decorator.toggle'
22371
22639
  decorator: string
22640
+ offsets?: {
22641
+ anchor: BlockOffset_2
22642
+ focus: BlockOffset_2
22643
+ }
22372
22644
  }
22373
22645
  | {
22374
22646
  type: 'delete'
@@ -22677,7 +22949,7 @@ declare const editorMachine: StateMachine<
22677
22949
  }
22678
22950
  | {
22679
22951
  type: 'dragstart'
22680
- origin: EventPosition
22952
+ origin: Pick<EventPosition, 'selection'>
22681
22953
  ghost?: HTMLElement
22682
22954
  }
22683
22955
  | {
@@ -22809,7 +23081,7 @@ declare type EditorSnapshot = {
22809
23081
  hasTag: HasTag
22810
23082
  internalDrag:
22811
23083
  | {
22812
- origin: EventPosition
23084
+ origin: Pick<EventPosition, 'selection'>
22813
23085
  }
22814
23086
  | undefined
22815
23087
  }
@@ -22924,6 +23196,14 @@ export declare function isEqualSelectionPoints(
22924
23196
  b: EditorSelectionPoint,
22925
23197
  ): boolean
22926
23198
 
23199
+ /**
23200
+ * @public
23201
+ */
23202
+ export declare function isEqualSelections(
23203
+ a: EditorSelection,
23204
+ b: EditorSelection,
23205
+ ): boolean
23206
+
22927
23207
  /**
22928
23208
  * @public
22929
23209
  */
@@ -22931,6 +23211,13 @@ export declare function isKeyedSegment(
22931
23211
  segment: PathSegment,
22932
23212
  ): segment is KeyedSegment
22933
23213
 
23214
+ /**
23215
+ * @public
23216
+ */
23217
+ export declare function isSelectionCollapsed(
23218
+ selection: EditorSelection,
23219
+ ): boolean
23220
+
22934
23221
  /**
22935
23222
  * @public
22936
23223
  */
@@ -23093,9 +23380,20 @@ declare interface PortableTextSlateEditor extends ReactEditor {
23093
23380
  /**
23094
23381
  * @public
23095
23382
  */
23096
- export declare function reverseSelection(
23097
- selection: NonNullable<EditorSelection>,
23098
- ): NonNullable<EditorSelection>
23383
+ export declare function reverseSelection<
23384
+ TEditorSelection extends NonNullable<EditorSelection> | null,
23385
+ >(selection: TEditorSelection): TEditorSelection
23386
+
23387
+ /**
23388
+ * @public
23389
+ */
23390
+ export declare function selectionPointToBlockOffset({
23391
+ value,
23392
+ selectionPoint,
23393
+ }: {
23394
+ value: Array<PortableTextBlock>
23395
+ selectionPoint: EditorSelectionPoint
23396
+ }): BlockOffset | undefined
23099
23397
 
23100
23398
  declare type Serializer<TMIMEType extends MIMEType> = ({
23101
23399
  snapshot,
@@ -23211,6 +23509,10 @@ declare type SyntheticBehaviorEvent =
23211
23509
  | {
23212
23510
  type: 'decorator.toggle'
23213
23511
  decorator: string
23512
+ offsets?: {
23513
+ anchor: BlockOffset
23514
+ focus: BlockOffset
23515
+ }
23214
23516
  }
23215
23517
  | {
23216
23518
  type: 'delete'