@ckeditor/ckeditor5-engine 48.2.0 → 48.3.0-alpha.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 (129) hide show
  1. package/dist/controller/datacontroller.d.ts +329 -328
  2. package/dist/controller/editingcontroller.d.ts +95 -94
  3. package/dist/conversion/comparemarkers.d.ts +45 -45
  4. package/dist/conversion/conversion.d.ts +474 -474
  5. package/dist/conversion/conversionhelpers.d.ts +21 -21
  6. package/dist/conversion/downcastdispatcher.d.ts +539 -538
  7. package/dist/conversion/downcasthelpers.d.ts +1129 -1129
  8. package/dist/conversion/mapper.d.ts +692 -697
  9. package/dist/conversion/modelconsumable.d.ts +196 -196
  10. package/dist/conversion/upcastdispatcher.d.ts +483 -482
  11. package/dist/conversion/upcasthelpers.d.ts +491 -491
  12. package/dist/conversion/viewconsumable.d.ts +330 -330
  13. package/dist/dataprocessor/basichtmlwriter.d.ts +15 -15
  14. package/dist/dataprocessor/dataprocessor.d.ts +57 -57
  15. package/dist/dataprocessor/htmldataprocessor.d.ts +72 -72
  16. package/dist/dataprocessor/htmlwriter.d.ts +11 -11
  17. package/dist/dataprocessor/xmldataprocessor.d.ts +86 -86
  18. package/dist/dev-utils/model.d.ts +128 -123
  19. package/dist/dev-utils/operationreplayer.d.ts +49 -49
  20. package/dist/dev-utils/utils.d.ts +33 -33
  21. package/dist/dev-utils/view.d.ts +314 -309
  22. package/dist/engineconfig.d.ts +39 -39
  23. package/dist/index.css.map +1 -1
  24. package/dist/index.d.ts +150 -150
  25. package/dist/index.js +34026 -40107
  26. package/dist/index.js.map +1 -1
  27. package/dist/legacyerrors.d.ts +0 -4
  28. package/dist/model/batch.d.ts +86 -86
  29. package/dist/model/differ.d.ts +504 -504
  30. package/dist/model/document.d.ts +265 -268
  31. package/dist/model/documentfragment.d.ts +214 -214
  32. package/dist/model/documentselection.d.ts +406 -410
  33. package/dist/model/element.d.ts +182 -182
  34. package/dist/model/history.d.ts +109 -109
  35. package/dist/model/item.d.ts +9 -9
  36. package/dist/model/liveposition.d.ts +70 -69
  37. package/dist/model/liverange.d.ts +93 -92
  38. package/dist/model/markercollection.d.ts +317 -324
  39. package/dist/model/model.d.ts +889 -909
  40. package/dist/model/node.d.ts +254 -254
  41. package/dist/model/nodelist.d.ts +110 -110
  42. package/dist/model/operation/attributeoperation.d.ts +98 -98
  43. package/dist/model/operation/detachoperation.d.ts +57 -57
  44. package/dist/model/operation/insertoperation.d.ts +85 -85
  45. package/dist/model/operation/markeroperation.d.ts +87 -87
  46. package/dist/model/operation/mergeoperation.d.ts +95 -95
  47. package/dist/model/operation/moveoperation.d.ts +97 -97
  48. package/dist/model/operation/nooperation.d.ts +33 -33
  49. package/dist/model/operation/operation.d.ts +94 -94
  50. package/dist/model/operation/operationfactory.d.ts +14 -14
  51. package/dist/model/operation/renameoperation.d.ts +78 -78
  52. package/dist/model/operation/rootattributeoperation.d.ts +93 -93
  53. package/dist/model/operation/rootoperation.d.ts +71 -71
  54. package/dist/model/operation/splitoperation.d.ts +104 -104
  55. package/dist/model/operation/transform.d.ts +91 -91
  56. package/dist/model/operation/utils.d.ts +58 -58
  57. package/dist/model/position.d.ts +535 -535
  58. package/dist/model/range.d.ts +458 -453
  59. package/dist/model/rootelement.d.ts +55 -55
  60. package/dist/model/schema.d.ts +1325 -1327
  61. package/dist/model/selection.d.ts +452 -471
  62. package/dist/model/text.d.ts +62 -62
  63. package/dist/model/textproxy.d.ts +140 -140
  64. package/dist/model/treewalker.d.ts +190 -190
  65. package/dist/model/typecheckable.d.ts +281 -281
  66. package/dist/model/utils/autoparagraphing.d.ts +29 -29
  67. package/dist/model/utils/deletecontent.d.ts +68 -68
  68. package/dist/model/utils/getselectedcontent.d.ts +27 -27
  69. package/dist/model/utils/insertcontent.d.ts +42 -42
  70. package/dist/model/utils/insertobject.d.ts +41 -41
  71. package/dist/model/utils/modifyselection.d.ts +44 -44
  72. package/dist/model/utils/selection-post-fixer.d.ts +71 -71
  73. package/dist/model/writer.d.ts +854 -854
  74. package/dist/view/attributeelement.d.ts +123 -123
  75. package/dist/view/containerelement.d.ts +49 -49
  76. package/dist/view/datatransfer.d.ts +70 -70
  77. package/dist/view/document.d.ts +175 -177
  78. package/dist/view/documentfragment.d.ts +158 -157
  79. package/dist/view/documentselection.d.ts +308 -307
  80. package/dist/view/domconverter.d.ts +612 -657
  81. package/dist/view/downcastwriter.d.ts +1006 -1006
  82. package/dist/view/editableelement.d.ts +64 -63
  83. package/dist/view/element.d.ts +754 -754
  84. package/dist/view/elementdefinition.d.ts +79 -79
  85. package/dist/view/emptyelement.d.ts +42 -42
  86. package/dist/view/filler.d.ts +75 -75
  87. package/dist/view/item.d.ts +9 -9
  88. package/dist/view/matcher.d.ts +412 -487
  89. package/dist/view/node.d.ts +164 -163
  90. package/dist/view/observer/arrowkeysobserver.d.ts +37 -37
  91. package/dist/view/observer/bubblingemittermixin.d.ts +163 -153
  92. package/dist/view/observer/bubblingeventinfo.d.ts +45 -42
  93. package/dist/view/observer/clickobserver.d.ts +36 -36
  94. package/dist/view/observer/compositionobserver.d.ts +67 -67
  95. package/dist/view/observer/domeventdata.d.ts +46 -46
  96. package/dist/view/observer/domeventobserver.d.ts +77 -74
  97. package/dist/view/observer/fakeselectionobserver.d.ts +42 -42
  98. package/dist/view/observer/focusobserver.d.ts +84 -84
  99. package/dist/view/observer/inputobserver.d.ts +76 -76
  100. package/dist/view/observer/keyobserver.d.ts +53 -53
  101. package/dist/view/observer/mouseobserver.d.ts +73 -73
  102. package/dist/view/observer/mutationobserver.d.ts +101 -101
  103. package/dist/view/observer/observer.d.ts +84 -83
  104. package/dist/view/observer/pointerobserver.d.ts +63 -63
  105. package/dist/view/observer/selectionobserver.d.ts +136 -136
  106. package/dist/view/observer/tabobserver.d.ts +38 -38
  107. package/dist/view/observer/touchobserver.d.ts +60 -60
  108. package/dist/view/placeholder.d.ts +80 -80
  109. package/dist/view/position.d.ts +187 -187
  110. package/dist/view/range.d.ts +282 -282
  111. package/dist/view/rawelement.d.ts +72 -72
  112. package/dist/view/renderer.d.ts +270 -272
  113. package/dist/view/rooteditableelement.d.ts +43 -43
  114. package/dist/view/selection.d.ts +356 -369
  115. package/dist/view/styles/background.d.ts +15 -15
  116. package/dist/view/styles/border.d.ts +27 -27
  117. package/dist/view/styles/margin.d.ts +12 -12
  118. package/dist/view/styles/padding.d.ts +12 -12
  119. package/dist/view/styles/utils.d.ts +72 -72
  120. package/dist/view/stylesmap.d.ts +715 -715
  121. package/dist/view/text.d.ts +75 -75
  122. package/dist/view/textproxy.d.ts +92 -92
  123. package/dist/view/tokenlist.d.ts +104 -104
  124. package/dist/view/treewalker.d.ts +201 -201
  125. package/dist/view/typecheckable.d.ts +445 -445
  126. package/dist/view/uielement.d.ts +93 -93
  127. package/dist/view/upcastwriter.d.ts +412 -412
  128. package/dist/view/view.d.ts +466 -469
  129. package/package.json +2 -2
@@ -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;