@ckeditor/ckeditor5-engine 48.8.1-alpha.3 → 49.0.0-alpha.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.
Files changed (135) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/controller/datacontroller.d.ts +329 -314
  3. package/dist/controller/editingcontroller.d.ts +95 -94
  4. package/dist/conversion/comparemarkers.d.ts +45 -45
  5. package/dist/conversion/conversion.d.ts +474 -474
  6. package/dist/conversion/conversionhelpers.d.ts +21 -21
  7. package/dist/conversion/downcastdispatcher.d.ts +539 -538
  8. package/dist/conversion/downcasthelpers.d.ts +1129 -1129
  9. package/dist/conversion/mapper.d.ts +692 -697
  10. package/dist/conversion/modelconsumable.d.ts +196 -196
  11. package/dist/conversion/upcastdispatcher.d.ts +483 -475
  12. package/dist/conversion/upcasthelpers.d.ts +491 -491
  13. package/dist/conversion/viewconsumable.d.ts +330 -330
  14. package/dist/dataprocessor/basichtmlwriter.d.ts +15 -15
  15. package/dist/dataprocessor/dataprocessor.d.ts +57 -57
  16. package/dist/dataprocessor/htmldataprocessor.d.ts +72 -72
  17. package/dist/dataprocessor/htmlwriter.d.ts +11 -11
  18. package/dist/dataprocessor/xmldataprocessor.d.ts +86 -86
  19. package/dist/dev-utils/model.d.ts +128 -116
  20. package/dist/dev-utils/operationreplayer.d.ts +49 -49
  21. package/dist/dev-utils/utils.d.ts +33 -33
  22. package/dist/dev-utils/view.d.ts +314 -309
  23. package/dist/engineconfig.d.ts +39 -39
  24. package/dist/index-content.css +3 -0
  25. package/dist/index-content.css.map +1 -0
  26. package/dist/index-editor.css +33 -29
  27. package/dist/index-editor.css.map +1 -0
  28. package/dist/index.css +26 -24
  29. package/dist/index.css.map +1 -1
  30. package/dist/index.d.ts +152 -150
  31. package/dist/index.js +34246 -40050
  32. package/dist/index.js.map +1 -1
  33. package/dist/legacyerrors.d.ts +0 -4
  34. package/dist/model/batch.d.ts +86 -86
  35. package/dist/model/differ.d.ts +504 -504
  36. package/dist/model/document.d.ts +265 -262
  37. package/dist/model/documentfragment.d.ts +214 -214
  38. package/dist/model/documentselection.d.ts +412 -410
  39. package/dist/model/element.d.ts +182 -182
  40. package/dist/model/history.d.ts +109 -109
  41. package/dist/model/item.d.ts +9 -9
  42. package/dist/model/liveposition.d.ts +81 -69
  43. package/dist/model/liverange.d.ts +118 -92
  44. package/dist/model/markercollection.d.ts +317 -324
  45. package/dist/model/model.d.ts +889 -909
  46. package/dist/model/node.d.ts +254 -254
  47. package/dist/model/nodelist.d.ts +110 -110
  48. package/dist/model/operation/attributeoperation.d.ts +98 -98
  49. package/dist/model/operation/detachoperation.d.ts +57 -57
  50. package/dist/model/operation/insertoperation.d.ts +85 -85
  51. package/dist/model/operation/markeroperation.d.ts +87 -87
  52. package/dist/model/operation/mergeoperation.d.ts +95 -95
  53. package/dist/model/operation/moveoperation.d.ts +97 -91
  54. package/dist/model/operation/nooperation.d.ts +33 -33
  55. package/dist/model/operation/operation.d.ts +94 -94
  56. package/dist/model/operation/operationfactory.d.ts +14 -14
  57. package/dist/model/operation/renameoperation.d.ts +78 -78
  58. package/dist/model/operation/rootattributeoperation.d.ts +93 -93
  59. package/dist/model/operation/rootoperation.d.ts +71 -71
  60. package/dist/model/operation/splitoperation.d.ts +104 -104
  61. package/dist/model/operation/transform.d.ts +91 -91
  62. package/dist/model/operation/utils.d.ts +58 -58
  63. package/dist/model/position.d.ts +542 -535
  64. package/dist/model/range.d.ts +467 -453
  65. package/dist/model/rootelement.d.ts +55 -55
  66. package/dist/model/schema.d.ts +1325 -1327
  67. package/dist/model/selection.d.ts +452 -471
  68. package/dist/model/text.d.ts +62 -62
  69. package/dist/model/textproxy.d.ts +140 -140
  70. package/dist/model/treewalker.d.ts +190 -190
  71. package/dist/model/typecheckable.d.ts +281 -281
  72. package/dist/model/utils/autoparagraphing.d.ts +29 -29
  73. package/dist/model/utils/deletecontent.d.ts +68 -68
  74. package/dist/model/utils/getselectedcontent.d.ts +27 -27
  75. package/dist/model/utils/insertcontent.d.ts +42 -42
  76. package/dist/model/utils/insertobject.d.ts +41 -41
  77. package/dist/model/utils/modifyselection.d.ts +44 -44
  78. package/dist/model/utils/selection-post-fixer.d.ts +71 -71
  79. package/dist/model/writer.d.ts +857 -848
  80. package/dist/view/attributeelement.d.ts +123 -123
  81. package/dist/view/containerelement.d.ts +49 -49
  82. package/dist/view/datatransfer.d.ts +70 -70
  83. package/dist/view/document.d.ts +175 -177
  84. package/dist/view/documentfragment.d.ts +158 -157
  85. package/dist/view/documentselection.d.ts +308 -307
  86. package/dist/view/domconverter.d.ts +614 -658
  87. package/dist/view/downcastwriter.d.ts +1012 -1006
  88. package/dist/view/editableelement.d.ts +64 -63
  89. package/dist/view/element.d.ts +754 -754
  90. package/dist/view/elementdefinition.d.ts +79 -79
  91. package/dist/view/emptyelement.d.ts +42 -42
  92. package/dist/view/filler.d.ts +75 -75
  93. package/dist/view/item.d.ts +9 -9
  94. package/dist/view/matcher.d.ts +412 -487
  95. package/dist/view/node.d.ts +164 -163
  96. package/dist/view/observer/arrowkeysobserver.d.ts +37 -37
  97. package/dist/view/observer/bubblingemittermixin.d.ts +163 -153
  98. package/dist/view/observer/bubblingeventinfo.d.ts +45 -42
  99. package/dist/view/observer/clickobserver.d.ts +36 -36
  100. package/dist/view/observer/compositionobserver.d.ts +67 -67
  101. package/dist/view/observer/domeventdata.d.ts +46 -46
  102. package/dist/view/observer/domeventobserver.d.ts +77 -74
  103. package/dist/view/observer/fakeselectionobserver.d.ts +42 -42
  104. package/dist/view/observer/focusobserver.d.ts +84 -84
  105. package/dist/view/observer/inputobserver.d.ts +76 -76
  106. package/dist/view/observer/keyobserver.d.ts +53 -53
  107. package/dist/view/observer/mouseobserver.d.ts +73 -73
  108. package/dist/view/observer/mutationobserver.d.ts +101 -101
  109. package/dist/view/observer/observer.d.ts +84 -83
  110. package/dist/view/observer/pointerobserver.d.ts +63 -63
  111. package/dist/view/observer/selectionobserver.d.ts +141 -137
  112. package/dist/view/observer/tabobserver.d.ts +38 -38
  113. package/dist/view/observer/touchobserver.d.ts +60 -60
  114. package/dist/view/placeholder.d.ts +77 -81
  115. package/dist/view/position.d.ts +187 -187
  116. package/dist/view/range.d.ts +282 -282
  117. package/dist/view/rawelement.d.ts +72 -72
  118. package/dist/view/renderer.d.ts +282 -273
  119. package/dist/view/rooteditableelement.d.ts +43 -43
  120. package/dist/view/selection.d.ts +356 -369
  121. package/dist/view/styles/background.d.ts +15 -15
  122. package/dist/view/styles/border.d.ts +27 -27
  123. package/dist/view/styles/margin.d.ts +12 -12
  124. package/dist/view/styles/padding.d.ts +12 -12
  125. package/dist/view/styles/utils.d.ts +72 -72
  126. package/dist/view/stylesmap.d.ts +715 -715
  127. package/dist/view/text.d.ts +75 -75
  128. package/dist/view/textproxy.d.ts +92 -92
  129. package/dist/view/tokenlist.d.ts +104 -104
  130. package/dist/view/treewalker.d.ts +201 -201
  131. package/dist/view/typecheckable.d.ts +445 -445
  132. package/dist/view/uielement.d.ts +93 -93
  133. package/dist/view/upcastwriter.d.ts +412 -412
  134. package/dist/view/view.d.ts +466 -468
  135. package/package.json +3 -3
@@ -1,98 +1,99 @@
1
1
  /**
2
- * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
- */
5
- import { EditingView } from '../view/view.js';
6
- import { Mapper } from '../conversion/mapper.js';
7
- import { DowncastDispatcher } from '../conversion/downcastdispatcher.js';
8
- import type { Model } from '../model/model.js';
9
- import { type ModelItem } from '../model/item.js';
10
- import type { Marker } from '../model/markercollection.js';
11
- import type { StylesProcessor } from '../view/stylesmap.js';
12
- declare const EditingController_base: {
13
- new (): import("@ckeditor/ckeditor5-utils").Observable;
14
- prototype: import("@ckeditor/ckeditor5-utils").Observable;
15
- };
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
16
5
  /**
17
- * A controller for the editing pipeline. The editing pipeline controls the {@link ~EditingController#model model} rendering,
18
- * including selection handling. It also creates the {@link ~EditingController#view view} which builds a
19
- * browser-independent virtualization over the DOM elements. The editing controller also attaches default converters.
20
- */
21
- export declare class EditingController extends /* #__PURE__ */ EditingController_base {
22
- /**
23
- * Editor model.
24
- */
25
- readonly model: Model;
26
- /**
27
- * Editing view controller.
28
- */
29
- readonly view: EditingView;
30
- /**
31
- * A mapper that describes the model-view binding.
32
- */
33
- readonly mapper: Mapper;
34
- /**
35
- * Downcast dispatcher that converts changes from the model to the {@link #view editing view}.
36
- */
37
- readonly downcastDispatcher: DowncastDispatcher;
38
- /**
39
- * Creates an editing controller instance.
40
- *
41
- * @param model Editing model.
42
- * @param stylesProcessor The styles processor instance.
43
- */
44
- constructor(model: Model, stylesProcessor: StylesProcessor);
45
- /**
46
- * Removes all event listeners attached to the `EditingController`. Destroys all objects created
47
- * by `EditingController` that need to be destroyed.
48
- */
49
- destroy(): void;
50
- /**
51
- * Calling this method will refresh the marker by triggering the downcast conversion for it.
52
- *
53
- * Reconverting the marker is useful when you want to change its {@link module:engine/view/element~ViewElement view element}
54
- * without changing any marker data. For instance:
55
- *
56
- * ```ts
57
- * let isCommentActive = false;
58
- *
59
- * model.conversion.markerToHighlight( {
60
- * model: 'comment',
61
- * view: data => {
62
- * const classes = [ 'comment-marker' ];
63
- *
64
- * if ( isCommentActive ) {
65
- * classes.push( 'comment-marker--active' );
66
- * }
67
- *
68
- * return { classes };
69
- * }
70
- * } );
71
- *
72
- * // ...
73
- *
74
- * // Change the property that indicates if marker is displayed as active or not.
75
- * isCommentActive = true;
76
- *
77
- * // Reconverting will downcast and synchronize the marker with the new isCommentActive state value.
78
- * editor.editing.reconvertMarker( 'comment' );
79
- * ```
80
- *
81
- * **Note**: If you want to reconvert a model item, use {@link #reconvertItem} instead.
82
- *
83
- * @param markerOrName Name of a marker to update, or a marker instance.
84
- */
85
- reconvertMarker(markerOrName: Marker | string): void;
86
- /**
87
- * Calling this method will downcast a model item on demand (by requesting a refresh in the {@link module:engine/model/differ~Differ}).
88
- *
89
- * You can use it if you want the view representation of a specific item updated as a response to external modifications. For instance,
90
- * when the view structure depends not only on the associated model data but also on some external state.
91
- *
92
- * **Note**: If you want to reconvert a model marker, use {@link #reconvertMarker} instead.
93
- *
94
- * @param item Item to refresh.
95
- */
96
- reconvertItem(item: ModelItem): void;
6
+ * @module engine/controller/editingcontroller
7
+ */
8
+ import { type ObservableMixinConstructor } from "@ckeditor/ckeditor5-utils";
9
+ import { EditingView } from "../view/view.js";
10
+ import { Mapper } from "../conversion/mapper.js";
11
+ import { DowncastDispatcher } from "../conversion/downcastdispatcher.js";
12
+ import type { Model } from "../model/model.js";
13
+ import { type ModelItem } from "../model/item.js";
14
+ import type { Marker } from "../model/markercollection.js";
15
+ import type { StylesProcessor } from "../view/stylesmap.js";
16
+ declare const EditingControllerBase: ObservableMixinConstructor;
17
+ /**
18
+ * A controller for the editing pipeline. The editing pipeline controls the {@link ~EditingController#model model} rendering,
19
+ * including selection handling. It also creates the {@link ~EditingController#view view} which builds a
20
+ * browser-independent virtualization over the DOM elements. The editing controller also attaches default converters.
21
+ */
22
+ export declare class EditingController extends EditingControllerBase {
23
+ /**
24
+ * Editor model.
25
+ */
26
+ readonly model: Model;
27
+ /**
28
+ * Editing view controller.
29
+ */
30
+ readonly view: EditingView;
31
+ /**
32
+ * A mapper that describes the model-view binding.
33
+ */
34
+ readonly mapper: Mapper;
35
+ /**
36
+ * Downcast dispatcher that converts changes from the model to the {@link #view editing view}.
37
+ */
38
+ readonly downcastDispatcher: DowncastDispatcher;
39
+ /**
40
+ * Creates an editing controller instance.
41
+ *
42
+ * @param model Editing model.
43
+ * @param stylesProcessor The styles processor instance.
44
+ */
45
+ constructor(model: Model, stylesProcessor: StylesProcessor);
46
+ /**
47
+ * Removes all event listeners attached to the `EditingController`. Destroys all objects created
48
+ * by `EditingController` that need to be destroyed.
49
+ */
50
+ destroy(): void;
51
+ /**
52
+ * Calling this method will refresh the marker by triggering the downcast conversion for it.
53
+ *
54
+ * Reconverting the marker is useful when you want to change its {@link module:engine/view/element~ViewElement view element}
55
+ * without changing any marker data. For instance:
56
+ *
57
+ * ```ts
58
+ * let isCommentActive = false;
59
+ *
60
+ * model.conversion.markerToHighlight( {
61
+ * model: 'comment',
62
+ * view: data => {
63
+ * const classes = [ 'comment-marker' ];
64
+ *
65
+ * if ( isCommentActive ) {
66
+ * classes.push( 'comment-marker--active' );
67
+ * }
68
+ *
69
+ * return { classes };
70
+ * }
71
+ * } );
72
+ *
73
+ * // ...
74
+ *
75
+ * // Change the property that indicates if marker is displayed as active or not.
76
+ * isCommentActive = true;
77
+ *
78
+ * // Reconverting will downcast and synchronize the marker with the new isCommentActive state value.
79
+ * editor.editing.reconvertMarker( 'comment' );
80
+ * ```
81
+ *
82
+ * **Note**: If you want to reconvert a model item, use {@link #reconvertItem} instead.
83
+ *
84
+ * @param markerOrName Name of a marker to update, or a marker instance.
85
+ */
86
+ reconvertMarker(markerOrName: Marker | string): void;
87
+ /**
88
+ * Calling this method will downcast a model item on demand (by requesting a refresh in the {@link module:engine/model/differ~Differ}).
89
+ *
90
+ * You can use it if you want the view representation of a specific item updated as a response to external modifications. For instance,
91
+ * when the view structure depends not only on the associated model data but also on some external state.
92
+ *
93
+ * **Note**: If you want to reconvert a model marker, use {@link #reconvertMarker} instead.
94
+ *
95
+ * @param item Item to refresh.
96
+ */
97
+ reconvertItem(item: ModelItem): void;
97
98
  }
98
99
  export {};
@@ -1,49 +1,49 @@
1
1
  /**
2
- * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
- */
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
5
  /**
6
- * @module engine/conversion/comparemarkers
7
- */
8
- import type { ModelRange } from '../model/range.js';
6
+ * @module engine/conversion/comparemarkers
7
+ */
8
+ import type { ModelRange } from "../model/range.js";
9
9
  /**
10
- * Sorts markers so the downcast result is deterministic regardless of the order
11
- * markers were added to the marker collection.
12
- *
13
- * The sort key is the marker's range, ordered "right-to-left" through the document so that
14
- * a marker's opening boundary is processed *after* any markers nested inside it. This way
15
- * the outer marker wraps the inner ones at conversion time.
16
- *
17
- * Cases (positions shown as `0123456789`, sort result top-to-bottom):
18
- *
19
- * 1. Non-overlapping ranges — sorted by position, last range first:
20
- *
21
- * a: [--] → c, b, a
22
- * b: [--]
23
- * c: [--]
24
- *
25
- * 2. Adjacent ranges (end === start) — treated as non-overlapping:
26
- *
27
- * first: [---] → third, second, first
28
- * second: [---]
29
- * third: [---]
30
- *
31
- * 3. Nested ranges (same start, different ends) — inner first, outer last:
32
- *
33
- * shorter: [-] → shorter, longer
34
- * longer: [---]
35
- *
36
- * 4. Partially overlapping ranges — sorted by start position:
37
- *
38
- * earlier: [---] → later, earlier
39
- * later: [---]
40
- *
41
- * 5. Identical ranges — fall back to reverse name comparison:
42
- *
43
- * alpha: [---] → charlie, bravo, alpha
44
- * bravo: [---]
45
- * charlie: [---]
46
- *
47
- * @internal
48
- */
10
+ * Sorts markers so the downcast result is deterministic regardless of the order
11
+ * markers were added to the marker collection.
12
+ *
13
+ * The sort key is the marker's range, ordered "right-to-left" through the document so that
14
+ * a marker's opening boundary is processed *after* any markers nested inside it. This way
15
+ * the outer marker wraps the inner ones at conversion time.
16
+ *
17
+ * Cases (positions shown as `0123456789`, sort result top-to-bottom):
18
+ *
19
+ * 1. Non-overlapping ranges — sorted by position, last range first:
20
+ *
21
+ * a: [--] → c, b, a
22
+ * b: [--]
23
+ * c: [--]
24
+ *
25
+ * 2. Adjacent ranges (end === start) — treated as non-overlapping:
26
+ *
27
+ * first: [---] → third, second, first
28
+ * second: [---]
29
+ * third: [---]
30
+ *
31
+ * 3. Nested ranges (same start, different ends) — inner first, outer last:
32
+ *
33
+ * shorter: [-] → shorter, longer
34
+ * longer: [---]
35
+ *
36
+ * 4. Partially overlapping ranges — sorted by start position:
37
+ *
38
+ * earlier: [---] → later, earlier
39
+ * later: [---]
40
+ *
41
+ * 5. Identical ranges — fall back to reverse name comparison:
42
+ *
43
+ * alpha: [---] → charlie, bravo, alpha
44
+ * bravo: [---]
45
+ * charlie: [---]
46
+ *
47
+ * @internal
48
+ */
49
49
  export declare function compareMarkersForDowncast([name1, range1]: readonly [string, ModelRange], [name2, range2]: readonly [string, ModelRange]): number;