@ckeditor/ckeditor5-engine 45.2.1 → 46.0.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 (241) hide show
  1. package/dist/index.js +2563 -2257
  2. package/dist/index.js.map +1 -1
  3. package/package.json +3 -3
  4. package/src/controller/datacontroller.d.ts +33 -32
  5. package/src/controller/datacontroller.js +29 -28
  6. package/src/controller/editingcontroller.d.ts +8 -8
  7. package/src/controller/editingcontroller.js +10 -10
  8. package/src/conversion/conversion.d.ts +18 -19
  9. package/src/conversion/conversion.js +4 -4
  10. package/src/conversion/conversionhelpers.d.ts +1 -1
  11. package/src/conversion/conversionhelpers.js +1 -1
  12. package/src/conversion/downcastdispatcher.d.ts +63 -69
  13. package/src/conversion/downcastdispatcher.js +16 -16
  14. package/src/conversion/downcasthelpers.d.ts +94 -83
  15. package/src/conversion/downcasthelpers.js +63 -53
  16. package/src/conversion/mapper.d.ts +27 -27
  17. package/src/conversion/mapper.js +15 -15
  18. package/src/conversion/modelconsumable.d.ts +26 -26
  19. package/src/conversion/modelconsumable.js +23 -23
  20. package/src/conversion/upcastdispatcher.d.ts +33 -32
  21. package/src/conversion/upcastdispatcher.js +19 -19
  22. package/src/conversion/upcasthelpers.d.ts +46 -38
  23. package/src/conversion/upcasthelpers.js +33 -24
  24. package/src/conversion/viewconsumable.d.ts +50 -45
  25. package/src/conversion/viewconsumable.js +32 -27
  26. package/src/dataprocessor/basichtmlwriter.d.ts +4 -2
  27. package/src/dataprocessor/basichtmlwriter.js +3 -1
  28. package/src/dataprocessor/dataprocessor.d.ts +7 -6
  29. package/src/dataprocessor/htmldataprocessor.d.ts +10 -10
  30. package/src/dataprocessor/htmldataprocessor.js +6 -6
  31. package/src/dataprocessor/htmlwriter.d.ts +1 -1
  32. package/src/dataprocessor/xmldataprocessor.d.ts +10 -10
  33. package/src/dataprocessor/xmldataprocessor.js +6 -6
  34. package/src/dev-utils/model.d.ts +25 -26
  35. package/src/dev-utils/model.js +35 -36
  36. package/src/dev-utils/operationreplayer.d.ts +5 -3
  37. package/src/dev-utils/operationreplayer.js +4 -2
  38. package/src/dev-utils/utils.d.ts +8 -0
  39. package/src/dev-utils/utils.js +8 -0
  40. package/src/dev-utils/view.d.ts +66 -63
  41. package/src/dev-utils/view.js +144 -134
  42. package/src/index.d.ts +135 -106
  43. package/src/index.js +120 -71
  44. package/src/legacyerrors.d.ts +5 -0
  45. package/src/legacyerrors.js +17 -0
  46. package/src/model/batch.d.ts +2 -15
  47. package/src/model/batch.js +1 -23
  48. package/src/model/differ.d.ts +54 -31
  49. package/src/model/differ.js +15 -15
  50. package/src/model/document.d.ts +31 -31
  51. package/src/model/document.js +13 -13
  52. package/src/model/documentfragment.d.ts +45 -45
  53. package/src/model/documentfragment.js +40 -40
  54. package/src/model/documentselection.d.ts +92 -92
  55. package/src/model/documentselection.js +71 -70
  56. package/src/model/element.d.ts +31 -31
  57. package/src/model/element.js +29 -29
  58. package/src/model/history.d.ts +3 -3
  59. package/src/model/history.js +2 -2
  60. package/src/model/item.d.ts +4 -5
  61. package/src/model/liveposition.d.ts +31 -31
  62. package/src/model/liveposition.js +18 -18
  63. package/src/model/liverange.d.ts +42 -38
  64. package/src/model/liverange.js +17 -16
  65. package/src/model/markercollection.d.ts +41 -40
  66. package/src/model/markercollection.js +22 -20
  67. package/src/model/model.d.ts +82 -81
  68. package/src/model/model.js +54 -54
  69. package/src/model/node.d.ts +48 -48
  70. package/src/model/node.js +31 -31
  71. package/src/model/nodelist.d.ts +17 -17
  72. package/src/model/nodelist.js +11 -11
  73. package/src/model/operation/attributeoperation.d.ts +10 -10
  74. package/src/model/operation/attributeoperation.js +7 -7
  75. package/src/model/operation/detachoperation.d.ts +11 -9
  76. package/src/model/operation/detachoperation.js +8 -6
  77. package/src/model/operation/insertoperation.d.ts +13 -13
  78. package/src/model/operation/insertoperation.js +15 -15
  79. package/src/model/operation/markeroperation.d.ts +12 -12
  80. package/src/model/operation/markeroperation.js +5 -5
  81. package/src/model/operation/mergeoperation.d.ts +16 -16
  82. package/src/model/operation/mergeoperation.js +18 -18
  83. package/src/model/operation/moveoperation.d.ts +16 -16
  84. package/src/model/operation/moveoperation.js +18 -15
  85. package/src/model/operation/nooperation.d.ts +4 -4
  86. package/src/model/operation/nooperation.js +2 -2
  87. package/src/model/operation/operation.d.ts +10 -10
  88. package/src/model/operation/operation.js +5 -5
  89. package/src/model/operation/operationfactory.d.ts +4 -4
  90. package/src/model/operation/operationfactory.js +12 -12
  91. package/src/model/operation/renameoperation.d.ts +10 -10
  92. package/src/model/operation/renameoperation.js +7 -7
  93. package/src/model/operation/rootattributeoperation.d.ts +12 -12
  94. package/src/model/operation/rootattributeoperation.js +8 -8
  95. package/src/model/operation/rootoperation.d.ts +8 -8
  96. package/src/model/operation/rootoperation.js +3 -3
  97. package/src/model/operation/splitoperation.d.ts +17 -17
  98. package/src/model/operation/splitoperation.js +19 -19
  99. package/src/model/operation/transform.d.ts +11 -8
  100. package/src/model/operation/transform.js +66 -49
  101. package/src/model/operation/utils.d.ts +24 -23
  102. package/src/model/operation/utils.js +20 -20
  103. package/src/model/position.d.ts +101 -97
  104. package/src/model/position.js +69 -64
  105. package/src/model/range.d.ts +90 -90
  106. package/src/model/range.js +87 -87
  107. package/src/model/rootelement.d.ts +11 -11
  108. package/src/model/rootelement.js +9 -9
  109. package/src/model/schema.d.ts +158 -154
  110. package/src/model/schema.js +93 -90
  111. package/src/model/selection.d.ts +73 -73
  112. package/src/model/selection.js +62 -62
  113. package/src/model/text.d.ts +11 -10
  114. package/src/model/text.js +11 -10
  115. package/src/model/textproxy.d.ts +39 -38
  116. package/src/model/textproxy.js +31 -30
  117. package/src/model/treewalker.d.ts +37 -37
  118. package/src/model/treewalker.js +14 -14
  119. package/src/model/typecheckable.d.ts +45 -45
  120. package/src/model/typecheckable.js +1 -1
  121. package/src/model/utils/autoparagraphing.d.ts +7 -7
  122. package/src/model/utils/deletecontent.d.ts +7 -5
  123. package/src/model/utils/deletecontent.js +13 -11
  124. package/src/model/utils/getselectedcontent.d.ts +6 -5
  125. package/src/model/utils/getselectedcontent.js +2 -1
  126. package/src/model/utils/insertcontent.d.ts +9 -8
  127. package/src/model/utils/insertcontent.js +41 -40
  128. package/src/model/utils/insertobject.d.ts +9 -9
  129. package/src/model/utils/insertobject.js +4 -4
  130. package/src/model/utils/modifyselection.d.ts +5 -4
  131. package/src/model/utils/modifyselection.js +12 -11
  132. package/src/model/utils/selection-post-fixer.d.ts +12 -8
  133. package/src/model/utils/selection-post-fixer.js +15 -11
  134. package/src/model/writer.d.ts +102 -101
  135. package/src/model/writer.js +99 -98
  136. package/src/view/attributeelement.d.ts +29 -29
  137. package/src/view/attributeelement.js +25 -25
  138. package/src/view/containerelement.d.ts +16 -15
  139. package/src/view/containerelement.js +15 -14
  140. package/src/view/datatransfer.d.ts +7 -7
  141. package/src/view/datatransfer.js +1 -1
  142. package/src/view/document.d.ts +25 -25
  143. package/src/view/document.js +15 -15
  144. package/src/view/documentfragment.d.ts +21 -21
  145. package/src/view/documentfragment.js +14 -14
  146. package/src/view/documentselection.d.ts +65 -63
  147. package/src/view/documentselection.js +27 -25
  148. package/src/view/domconverter.d.ts +96 -91
  149. package/src/view/domconverter.js +78 -73
  150. package/src/view/downcastwriter.d.ts +185 -181
  151. package/src/view/downcastwriter.js +222 -210
  152. package/src/view/editableelement.d.ts +13 -13
  153. package/src/view/editableelement.js +8 -8
  154. package/src/view/element.d.ts +75 -74
  155. package/src/view/element.js +58 -58
  156. package/src/view/elementdefinition.d.ts +3 -4
  157. package/src/view/emptyelement.d.ts +13 -13
  158. package/src/view/emptyelement.js +13 -13
  159. package/src/view/filler.d.ts +14 -3
  160. package/src/view/filler.js +12 -1
  161. package/src/view/item.d.ts +4 -5
  162. package/src/view/matcher.d.ts +22 -19
  163. package/src/view/matcher.js +6 -6
  164. package/src/view/node.d.ts +33 -33
  165. package/src/view/node.js +9 -9
  166. package/src/view/observer/arrowkeysobserver.d.ts +10 -10
  167. package/src/view/observer/arrowkeysobserver.js +5 -5
  168. package/src/view/observer/bubblingemittermixin.d.ts +5 -5
  169. package/src/view/observer/bubblingemittermixin.js +2 -9
  170. package/src/view/observer/bubblingeventinfo.d.ts +9 -9
  171. package/src/view/observer/bubblingeventinfo.js +1 -1
  172. package/src/view/observer/clickobserver.d.ts +8 -8
  173. package/src/view/observer/clickobserver.js +4 -4
  174. package/src/view/observer/compositionobserver.d.ts +19 -19
  175. package/src/view/observer/compositionobserver.js +6 -6
  176. package/src/view/observer/domeventdata.d.ts +9 -9
  177. package/src/view/observer/domeventdata.js +2 -2
  178. package/src/view/observer/domeventobserver.d.ts +3 -3
  179. package/src/view/observer/domeventobserver.js +5 -5
  180. package/src/view/observer/fakeselectionobserver.d.ts +9 -9
  181. package/src/view/observer/fakeselectionobserver.js +8 -8
  182. package/src/view/observer/focusobserver.d.ts +16 -16
  183. package/src/view/observer/focusobserver.js +7 -7
  184. package/src/view/observer/inputobserver.d.ts +18 -18
  185. package/src/view/observer/inputobserver.js +5 -5
  186. package/src/view/observer/keyobserver.d.ts +11 -11
  187. package/src/view/observer/keyobserver.js +3 -3
  188. package/src/view/observer/mouseobserver.d.ts +16 -16
  189. package/src/view/observer/mouseobserver.js +3 -3
  190. package/src/view/observer/mutationobserver.d.ts +21 -21
  191. package/src/view/observer/mutationobserver.js +7 -7
  192. package/src/view/observer/observer.d.ts +12 -12
  193. package/src/view/observer/observer.js +6 -6
  194. package/src/view/observer/selectionobserver.d.ts +33 -33
  195. package/src/view/observer/selectionobserver.js +14 -14
  196. package/src/view/observer/tabobserver.d.ts +10 -10
  197. package/src/view/observer/tabobserver.js +5 -5
  198. package/src/view/observer/touchobserver.d.ts +13 -13
  199. package/src/view/observer/touchobserver.js +3 -3
  200. package/src/view/placeholder.d.ts +21 -21
  201. package/src/view/placeholder.js +23 -23
  202. package/src/view/position.d.ts +49 -49
  203. package/src/view/position.js +42 -42
  204. package/src/view/range.d.ts +76 -74
  205. package/src/view/range.js +67 -65
  206. package/src/view/rawelement.d.ts +19 -19
  207. package/src/view/rawelement.js +16 -16
  208. package/src/view/renderer.d.ts +14 -14
  209. package/src/view/renderer.js +7 -7
  210. package/src/view/rooteditableelement.d.ts +8 -7
  211. package/src/view/rooteditableelement.js +7 -6
  212. package/src/view/selection.d.ts +66 -64
  213. package/src/view/selection.js +50 -48
  214. package/src/view/styles/background.d.ts +2 -2
  215. package/src/view/styles/background.js +9 -9
  216. package/src/view/styles/border.d.ts +2 -2
  217. package/src/view/styles/border.js +13 -13
  218. package/src/view/styles/margin.d.ts +2 -2
  219. package/src/view/styles/margin.js +5 -5
  220. package/src/view/styles/padding.d.ts +2 -2
  221. package/src/view/styles/padding.js +5 -5
  222. package/src/view/styles/utils.d.ts +24 -24
  223. package/src/view/styles/utils.js +25 -25
  224. package/src/view/stylesmap.d.ts +28 -32
  225. package/src/view/stylesmap.js +52 -39
  226. package/src/view/text.d.ts +11 -11
  227. package/src/view/text.js +10 -10
  228. package/src/view/textproxy.d.ts +33 -32
  229. package/src/view/textproxy.js +23 -22
  230. package/src/view/tokenlist.d.ts +14 -14
  231. package/src/view/tokenlist.js +10 -10
  232. package/src/view/treewalker.d.ts +42 -40
  233. package/src/view/treewalker.js +36 -35
  234. package/src/view/typecheckable.d.ts +76 -75
  235. package/src/view/typecheckable.js +1 -1
  236. package/src/view/uielement.d.ts +22 -21
  237. package/src/view/uielement.js +17 -16
  238. package/src/view/upcastwriter.d.ts +70 -70
  239. package/src/view/upcastwriter.js +42 -42
  240. package/src/view/view.d.ts +70 -69
  241. package/src/view/view.js +56 -55
@@ -5,14 +5,14 @@
5
5
  /**
6
6
  * @module engine/view/observer/clickobserver
7
7
  */
8
- import DomEventObserver from './domeventobserver.js';
8
+ import { DomEventObserver } from './domeventobserver.js';
9
9
  /**
10
- * {@link module:engine/view/document~Document#event:click Click} event observer.
10
+ * {@link module:engine/view/document~ViewDocument#event:click Click} event observer.
11
11
  *
12
12
  * Note that this observer is not available by default. To make it available it needs to be added to
13
- * {@link module:engine/view/view~View view controller} by a {@link module:engine/view/view~View#addObserver} method.
13
+ * {@link module:engine/view/view~EditingView view controller} by a {@link module:engine/view/view~EditingView#addObserver} method.
14
14
  */
15
- export default class ClickObserver extends DomEventObserver {
15
+ export class ClickObserver extends DomEventObserver {
16
16
  /**
17
17
  * @inheritDoc
18
18
  */
@@ -5,17 +5,17 @@
5
5
  /**
6
6
  * @module engine/view/observer/compositionobserver
7
7
  */
8
- import DomEventObserver from './domeventobserver.js';
9
- import type View from '../view.js';
10
- import type DomEventData from './domeventdata.js';
8
+ import { DomEventObserver } from './domeventobserver.js';
9
+ import { type EditingView } from '../view.js';
10
+ import { type ViewDocumentDomEventData } from './domeventdata.js';
11
11
  /**
12
- * {@link module:engine/view/document~Document#event:compositionstart Compositionstart},
13
- * {@link module:engine/view/document~Document#event:compositionupdate compositionupdate} and
14
- * {@link module:engine/view/document~Document#event:compositionend compositionend} events observer.
12
+ * {@link module:engine/view/document~ViewDocument#event:compositionstart Compositionstart},
13
+ * {@link module:engine/view/document~ViewDocument#event:compositionupdate compositionupdate} and
14
+ * {@link module:engine/view/document~ViewDocument#event:compositionend compositionend} events observer.
15
15
  *
16
- * Note that this observer is attached by the {@link module:engine/view/view~View} and is available by default.
16
+ * Note that this observer is attached by the {@link module:engine/view/view~EditingView} and is available by default.
17
17
  */
18
- export default class CompositionObserver extends DomEventObserver<'compositionstart' | 'compositionupdate' | 'compositionend'> {
18
+ export declare class CompositionObserver extends DomEventObserver<'compositionstart' | 'compositionupdate' | 'compositionend'> {
19
19
  /**
20
20
  * @inheritDoc
21
21
  */
@@ -23,13 +23,13 @@ export default class CompositionObserver extends DomEventObserver<'compositionst
23
23
  /**
24
24
  * @inheritDoc
25
25
  */
26
- constructor(view: View);
26
+ constructor(view: EditingView);
27
27
  /**
28
28
  * @inheritDoc
29
29
  */
30
30
  onDomEvent(domEvent: CompositionEvent): void;
31
31
  }
32
- export interface CompositionEventData extends DomEventData<CompositionEvent> {
32
+ export interface ViewDocumentCompositionEventData extends ViewDocumentDomEventData<CompositionEvent> {
33
33
  data: string | null;
34
34
  }
35
35
  /**
@@ -38,15 +38,15 @@ export interface CompositionEventData extends DomEventData<CompositionEvent> {
38
38
  * Introduced by {@link module:engine/view/observer/compositionobserver~CompositionObserver}.
39
39
  *
40
40
  * Note that because {@link module:engine/view/observer/compositionobserver~CompositionObserver} is attached by the
41
- * {@link module:engine/view/view~View} this event is available by default.
41
+ * {@link module:engine/view/view~EditingView} this event is available by default.
42
42
  *
43
43
  * @see module:engine/view/observer/compositionobserver~CompositionObserver
44
- * @eventName module:engine/view/document~Document#compositionstart
44
+ * @eventName module:engine/view/document~ViewDocument#compositionstart
45
45
  * @param data Event data.
46
46
  */
47
47
  export type ViewDocumentCompositionStartEvent = {
48
48
  name: 'compositionstart';
49
- args: [data: CompositionEventData];
49
+ args: [data: ViewDocumentCompositionEventData];
50
50
  };
51
51
  /**
52
52
  * Fired when composition is updated inside one of the editables.
@@ -54,15 +54,15 @@ export type ViewDocumentCompositionStartEvent = {
54
54
  * Introduced by {@link module:engine/view/observer/compositionobserver~CompositionObserver}.
55
55
  *
56
56
  * Note that because {@link module:engine/view/observer/compositionobserver~CompositionObserver} is attached by the
57
- * {@link module:engine/view/view~View} this event is available by default.
57
+ * {@link module:engine/view/view~EditingView} this event is available by default.
58
58
  *
59
59
  * @see module:engine/view/observer/compositionobserver~CompositionObserver
60
- * @eventName module:engine/view/document~Document#compositionupdate
60
+ * @eventName module:engine/view/document~ViewDocument#compositionupdate
61
61
  * @param data Event data.
62
62
  */
63
63
  export type ViewDocumentCompositionUpdateEvent = {
64
64
  name: 'compositionupdate';
65
- args: [data: CompositionEventData];
65
+ args: [data: ViewDocumentCompositionEventData];
66
66
  };
67
67
  /**
68
68
  * Fired when composition ends inside one of the editables.
@@ -70,13 +70,13 @@ export type ViewDocumentCompositionUpdateEvent = {
70
70
  * Introduced by {@link module:engine/view/observer/compositionobserver~CompositionObserver}.
71
71
  *
72
72
  * Note that because {@link module:engine/view/observer/compositionobserver~CompositionObserver} is attached by the
73
- * {@link module:engine/view/view~View} this event is available by default.
73
+ * {@link module:engine/view/view~EditingView} this event is available by default.
74
74
  *
75
75
  * @see module:engine/view/observer/compositionobserver~CompositionObserver
76
- * @eventName module:engine/view/document~Document#compositionend
76
+ * @eventName module:engine/view/document~ViewDocument#compositionend
77
77
  * @param data Event data.
78
78
  */
79
79
  export type ViewDocumentCompositionEndEvent = {
80
80
  name: 'compositionend';
81
- args: [data: CompositionEventData];
81
+ args: [data: ViewDocumentCompositionEventData];
82
82
  };
@@ -5,16 +5,16 @@
5
5
  /**
6
6
  * @module engine/view/observer/compositionobserver
7
7
  */
8
- import DomEventObserver from './domeventobserver.js';
8
+ import { DomEventObserver } from './domeventobserver.js';
9
9
  // @if CK_DEBUG_TYPING // const { _debouncedLine, _buildLogMessage } = require( '../../dev-utils/utils.js' );
10
10
  /**
11
- * {@link module:engine/view/document~Document#event:compositionstart Compositionstart},
12
- * {@link module:engine/view/document~Document#event:compositionupdate compositionupdate} and
13
- * {@link module:engine/view/document~Document#event:compositionend compositionend} events observer.
11
+ * {@link module:engine/view/document~ViewDocument#event:compositionstart Compositionstart},
12
+ * {@link module:engine/view/document~ViewDocument#event:compositionupdate compositionupdate} and
13
+ * {@link module:engine/view/document~ViewDocument#event:compositionend compositionend} events observer.
14
14
  *
15
- * Note that this observer is attached by the {@link module:engine/view/view~View} and is available by default.
15
+ * Note that this observer is attached by the {@link module:engine/view/view~EditingView} and is available by default.
16
16
  */
17
- export default class CompositionObserver extends DomEventObserver {
17
+ export class CompositionObserver extends DomEventObserver {
18
18
  /**
19
19
  * @inheritDoc
20
20
  */
@@ -2,25 +2,25 @@
2
2
  * @license Copyright (c) 2003-2025, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
4
  */
5
- import type Document from '../document.js';
6
- import type Element from '../element.js';
7
- import type View from '../view.js';
5
+ import { type ViewDocument } from '../document.js';
6
+ import { type ViewElement } from '../element.js';
7
+ import { type EditingView } from '../view.js';
8
8
  /**
9
- * Information about a DOM event in context of the {@link module:engine/view/document~Document}.
9
+ * Information about a DOM event in context of the {@link module:engine/view/document~ViewDocument}.
10
10
  * It wraps the native event, which usually should not be used as the wrapper contains
11
11
  * additional data (like key code for keyboard events).
12
12
  *
13
13
  * @typeParam TEvent The type of DOM Event that this class represents.
14
14
  */
15
- export default class DomEventData<TEvent extends Event = Event> {
15
+ export declare class ViewDocumentDomEventData<TEvent extends Event = Event> {
16
16
  /**
17
17
  * Instance of the view controller.
18
18
  */
19
- readonly view: View;
19
+ readonly view: EditingView;
20
20
  /**
21
21
  * The instance of the document.
22
22
  */
23
- readonly document: Document;
23
+ readonly document: ViewDocument;
24
24
  /**
25
25
  * The DOM event.
26
26
  */
@@ -34,11 +34,11 @@ export default class DomEventData<TEvent extends Event = Event> {
34
34
  * @param domEvent The DOM event.
35
35
  * @param additionalData Additional properties that the instance should contain.
36
36
  */
37
- constructor(view: View, domEvent: TEvent, additionalData?: object);
37
+ constructor(view: EditingView, domEvent: TEvent, additionalData?: object);
38
38
  /**
39
39
  * The tree view element representing the target.
40
40
  */
41
- get target(): Element;
41
+ get target(): ViewElement;
42
42
  /**
43
43
  * Prevents the native's event default action.
44
44
  */
@@ -7,13 +7,13 @@
7
7
  */
8
8
  import { extend } from 'es-toolkit/compat';
9
9
  /**
10
- * Information about a DOM event in context of the {@link module:engine/view/document~Document}.
10
+ * Information about a DOM event in context of the {@link module:engine/view/document~ViewDocument}.
11
11
  * It wraps the native event, which usually should not be used as the wrapper contains
12
12
  * additional data (like key code for keyboard events).
13
13
  *
14
14
  * @typeParam TEvent The type of DOM Event that this class represents.
15
15
  */
16
- export default class DomEventData {
16
+ export class ViewDocumentDomEventData {
17
17
  /**
18
18
  * Instance of the view controller.
19
19
  */
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * @module engine/view/observer/domeventobserver
7
7
  */
8
- import Observer from './observer.js';
8
+ import { Observer } from './observer.js';
9
9
  import type { EventInfo } from '@ckeditor/ckeditor5-utils';
10
10
  /**
11
11
  * Base class for DOM event observers. This class handles
@@ -34,7 +34,7 @@ import type { EventInfo } from '@ckeditor/ckeditor5-utils';
34
34
  * @typeParam EventType DOM Event type name or an union of those.
35
35
  * @typeParam AdditionalData Additional data passed along with the event.
36
36
  */
37
- export default abstract class DomEventObserver<EventType extends keyof HTMLElementEventMap, AdditionalData extends object = object> extends Observer {
37
+ export declare abstract class DomEventObserver<EventType extends keyof HTMLElementEventMap, AdditionalData extends object = object> extends Observer {
38
38
  /**
39
39
  * Type of the DOM event the observer should listen to. Array of types can be defined
40
40
  * if the observer should listen to multiple DOM events.
@@ -72,7 +72,7 @@ export default abstract class DomEventObserver<EventType extends keyof HTMLEleme
72
72
  * @param eventType The event type (name).
73
73
  * @param domEvent The DOM event.
74
74
  * @param additionalData The additional data which should extend the
75
- * {@link module:engine/view/observer/domeventdata~DomEventData event data} object.
75
+ * {@link module:engine/view/observer/domeventdata~ViewDocumentDomEventData event data} object.
76
76
  */
77
77
  fire(eventType: string | EventInfo, domEvent: Event, additionalData?: AdditionalData): void;
78
78
  }
@@ -5,8 +5,8 @@
5
5
  /**
6
6
  * @module engine/view/observer/domeventobserver
7
7
  */
8
- import Observer from './observer.js';
9
- import DomEventData from './domeventdata.js';
8
+ import { Observer } from './observer.js';
9
+ import { ViewDocumentDomEventData } from './domeventdata.js';
10
10
  /**
11
11
  * Base class for DOM event observers. This class handles
12
12
  * {@link module:engine/view/observer/observer~Observer#observe adding} listeners to DOM elements,
@@ -34,7 +34,7 @@ import DomEventData from './domeventdata.js';
34
34
  * @typeParam EventType DOM Event type name or an union of those.
35
35
  * @typeParam AdditionalData Additional data passed along with the event.
36
36
  */
37
- export default class DomEventObserver extends Observer {
37
+ export class DomEventObserver extends Observer {
38
38
  /**
39
39
  * If set to `true` DOM events will be listened on the capturing phase.
40
40
  * Default value is `false`.
@@ -71,11 +71,11 @@ export default class DomEventObserver extends Observer {
71
71
  * @param eventType The event type (name).
72
72
  * @param domEvent The DOM event.
73
73
  * @param additionalData The additional data which should extend the
74
- * {@link module:engine/view/observer/domeventdata~DomEventData event data} object.
74
+ * {@link module:engine/view/observer/domeventdata~ViewDocumentDomEventData event data} object.
75
75
  */
76
76
  fire(eventType, domEvent, additionalData) {
77
77
  if (this.isEnabled) {
78
- this.document.fire(eventType, new DomEventData(this.view, domEvent, additionalData));
78
+ this.document.fire(eventType, new ViewDocumentDomEventData(this.view, domEvent, additionalData));
79
79
  }
80
80
  }
81
81
  }
@@ -5,16 +5,16 @@
5
5
  /**
6
6
  * @module engine/view/observer/fakeselectionobserver
7
7
  */
8
- import Observer from './observer.js';
9
- import type View from '../view.js';
8
+ import { Observer } from './observer.js';
9
+ import { type EditingView } from '../view.js';
10
10
  /**
11
11
  * Fake selection observer class. If view selection is fake it is placed in dummy DOM container. This observer listens
12
- * on {@link module:engine/view/document~Document#event:keydown keydown} events and handles moving fake view selection to the correct place
13
- * if arrow keys are pressed.
14
- * Fires {@link module:engine/view/document~Document#event:selectionChange selectionChange event} simulating natural behaviour of
12
+ * on {@link module:engine/view/document~ViewDocument#event:keydown keydown} events and handles moving
13
+ * fake view selection to the correct place if arrow keys are pressed.
14
+ * Fires {@link module:engine/view/document~ViewDocument#event:selectionChange selectionChange event} simulating natural behaviour of
15
15
  * {@link module:engine/view/observer/selectionobserver~SelectionObserver SelectionObserver}.
16
16
  */
17
- export default class FakeSelectionObserver extends Observer {
17
+ export declare class FakeSelectionObserver extends Observer {
18
18
  /**
19
19
  * Fires debounced event `selectionChangeDone`. It uses `es-toolkit#debounce` method to delay function call.
20
20
  */
@@ -22,7 +22,7 @@ export default class FakeSelectionObserver extends Observer {
22
22
  /**
23
23
  * Creates new FakeSelectionObserver instance.
24
24
  */
25
- constructor(view: View);
25
+ constructor(view: EditingView);
26
26
  /**
27
27
  * @inheritDoc
28
28
  */
@@ -39,8 +39,8 @@ export default class FakeSelectionObserver extends Observer {
39
39
  * Handles collapsing view selection according to given key code. If left or up key is provided - new selection will be
40
40
  * collapsed to left. If right or down key is pressed - new selection will be collapsed to right.
41
41
  *
42
- * This method fires {@link module:engine/view/document~Document#event:selectionChange} and
43
- * {@link module:engine/view/document~Document#event:selectionChangeDone} events imitating behaviour of
42
+ * This method fires {@link module:engine/view/document~ViewDocument#event:selectionChange} and
43
+ * {@link module:engine/view/document~ViewDocument#event:selectionChangeDone} events imitating behaviour of
44
44
  * {@link module:engine/view/observer/selectionobserver~SelectionObserver}.
45
45
  */
46
46
  private _handleSelectionMove;
@@ -5,18 +5,18 @@
5
5
  /**
6
6
  * @module engine/view/observer/fakeselectionobserver
7
7
  */
8
- import Observer from './observer.js';
9
- import ViewSelection from '../selection.js';
8
+ import { Observer } from './observer.js';
9
+ import { ViewSelection } from '../selection.js';
10
10
  import { keyCodes } from '@ckeditor/ckeditor5-utils';
11
11
  import { debounce } from 'es-toolkit/compat';
12
12
  /**
13
13
  * Fake selection observer class. If view selection is fake it is placed in dummy DOM container. This observer listens
14
- * on {@link module:engine/view/document~Document#event:keydown keydown} events and handles moving fake view selection to the correct place
15
- * if arrow keys are pressed.
16
- * Fires {@link module:engine/view/document~Document#event:selectionChange selectionChange event} simulating natural behaviour of
14
+ * on {@link module:engine/view/document~ViewDocument#event:keydown keydown} events and handles moving
15
+ * fake view selection to the correct place if arrow keys are pressed.
16
+ * Fires {@link module:engine/view/document~ViewDocument#event:selectionChange selectionChange event} simulating natural behaviour of
17
17
  * {@link module:engine/view/observer/selectionobserver~SelectionObserver SelectionObserver}.
18
18
  */
19
- export default class FakeSelectionObserver extends Observer {
19
+ export class FakeSelectionObserver extends Observer {
20
20
  /**
21
21
  * Fires debounced event `selectionChangeDone`. It uses `es-toolkit#debounce` method to delay function call.
22
22
  */
@@ -64,8 +64,8 @@ export default class FakeSelectionObserver extends Observer {
64
64
  * Handles collapsing view selection according to given key code. If left or up key is provided - new selection will be
65
65
  * collapsed to left. If right or down key is pressed - new selection will be collapsed to right.
66
66
  *
67
- * This method fires {@link module:engine/view/document~Document#event:selectionChange} and
68
- * {@link module:engine/view/document~Document#event:selectionChangeDone} events imitating behaviour of
67
+ * This method fires {@link module:engine/view/document~ViewDocument#event:selectionChange} and
68
+ * {@link module:engine/view/document~ViewDocument#event:selectionChangeDone} events imitating behaviour of
69
69
  * {@link module:engine/view/observer/selectionobserver~SelectionObserver}.
70
70
  */
71
71
  _handleSelectionMove(keyCode) {
@@ -5,18 +5,18 @@
5
5
  /**
6
6
  * @module engine/view/observer/focusobserver
7
7
  */
8
- import DomEventObserver from './domeventobserver.js';
9
- import type DomEventData from './domeventdata.js';
10
- import type View from '../view.js';
8
+ import { DomEventObserver } from './domeventobserver.js';
9
+ import { type ViewDocumentDomEventData } from './domeventdata.js';
10
+ import { type EditingView } from '../view.js';
11
11
  /**
12
- * {@link module:engine/view/document~Document#event:focus Focus}
13
- * and {@link module:engine/view/document~Document#event:blur blur} events observer.
14
- * Focus observer handle also {@link module:engine/view/rooteditableelement~RootEditableElement#isFocused isFocused} property of the
15
- * {@link module:engine/view/rooteditableelement~RootEditableElement root elements}.
12
+ * {@link module:engine/view/document~ViewDocument#event:focus Focus}
13
+ * and {@link module:engine/view/document~ViewDocument#event:blur blur} events observer.
14
+ * Focus observer handle also {@link module:engine/view/rooteditableelement~ViewRootEditableElement#isFocused isFocused} property of the
15
+ * {@link module:engine/view/rooteditableelement~ViewRootEditableElement root elements}.
16
16
  *
17
- * Note that this observer is attached by the {@link module:engine/view/view~View} and is available by default.
17
+ * Note that this observer is attached by the {@link module:engine/view/view~EditingView} and is available by default.
18
18
  */
19
- export default class FocusObserver extends DomEventObserver<'focus' | 'blur'> {
19
+ export declare class FocusObserver extends DomEventObserver<'focus' | 'blur'> {
20
20
  /**
21
21
  * Identifier of the timeout currently used by focus listener to delay rendering execution.
22
22
  */
@@ -34,7 +34,7 @@ export default class FocusObserver extends DomEventObserver<'focus' | 'blur'> {
34
34
  /**
35
35
  * @inheritDoc
36
36
  */
37
- constructor(view: View);
37
+ constructor(view: EditingView);
38
38
  /**
39
39
  * Finishes setting the document focus state.
40
40
  */
@@ -66,15 +66,15 @@ export default class FocusObserver extends DomEventObserver<'focus' | 'blur'> {
66
66
  * Introduced by {@link module:engine/view/observer/focusobserver~FocusObserver}.
67
67
  *
68
68
  * Note that because {@link module:engine/view/observer/focusobserver~FocusObserver} is attached by the
69
- * {@link module:engine/view/view~View} this event is available by default.
69
+ * {@link module:engine/view/view~EditingView} this event is available by default.
70
70
  *
71
71
  * @see module:engine/view/observer/focusobserver~FocusObserver
72
- * @eventName module:engine/view/document~Document#focus
72
+ * @eventName module:engine/view/document~ViewDocument#focus
73
73
  * @param data Event data.
74
74
  */
75
75
  export type ViewDocumentFocusEvent = {
76
76
  name: 'focus';
77
- args: [data: DomEventData<FocusEvent>];
77
+ args: [data: ViewDocumentDomEventData<FocusEvent>];
78
78
  };
79
79
  /**
80
80
  * Fired when one of the editables loses focus.
@@ -82,13 +82,13 @@ export type ViewDocumentFocusEvent = {
82
82
  * Introduced by {@link module:engine/view/observer/focusobserver~FocusObserver}.
83
83
  *
84
84
  * Note that because {@link module:engine/view/observer/focusobserver~FocusObserver} is attached by the
85
- * {@link module:engine/view/view~View} this event is available by default.
85
+ * {@link module:engine/view/view~EditingView} this event is available by default.
86
86
  *
87
87
  * @see module:engine/view/observer/focusobserver~FocusObserver
88
- * @eventName module:engine/view/document~Document#blur
88
+ * @eventName module:engine/view/document~ViewDocument#blur
89
89
  * @param data Event data.
90
90
  */
91
91
  export type ViewDocumentBlurEvent = {
92
92
  name: 'blur';
93
- args: [data: DomEventData<FocusEvent>];
93
+ args: [data: ViewDocumentDomEventData<FocusEvent>];
94
94
  };
@@ -5,17 +5,17 @@
5
5
  /**
6
6
  * @module engine/view/observer/focusobserver
7
7
  */
8
- import DomEventObserver from './domeventobserver.js';
8
+ import { DomEventObserver } from './domeventobserver.js';
9
9
  // @if CK_DEBUG_TYPING // const { _debouncedLine, _buildLogMessage } = require( '../../dev-utils/utils.js' );
10
10
  /**
11
- * {@link module:engine/view/document~Document#event:focus Focus}
12
- * and {@link module:engine/view/document~Document#event:blur blur} events observer.
13
- * Focus observer handle also {@link module:engine/view/rooteditableelement~RootEditableElement#isFocused isFocused} property of the
14
- * {@link module:engine/view/rooteditableelement~RootEditableElement root elements}.
11
+ * {@link module:engine/view/document~ViewDocument#event:focus Focus}
12
+ * and {@link module:engine/view/document~ViewDocument#event:blur blur} events observer.
13
+ * Focus observer handle also {@link module:engine/view/rooteditableelement~ViewRootEditableElement#isFocused isFocused} property of the
14
+ * {@link module:engine/view/rooteditableelement~ViewRootEditableElement root elements}.
15
15
  *
16
- * Note that this observer is attached by the {@link module:engine/view/view~View} and is available by default.
16
+ * Note that this observer is attached by the {@link module:engine/view/view~EditingView} and is available by default.
17
17
  */
18
- export default class FocusObserver extends DomEventObserver {
18
+ export class FocusObserver extends DomEventObserver {
19
19
  /**
20
20
  * Identifier of the timeout currently used by focus listener to delay rendering execution.
21
21
  */
@@ -5,17 +5,17 @@
5
5
  /**
6
6
  * @module engine/view/observer/inputobserver
7
7
  */
8
- import DomEventObserver from './domeventobserver.js';
9
- import type DomEventData from './domeventdata.js';
10
- import type ViewRange from '../range.js';
11
- import DataTransfer from '../datatransfer.js';
8
+ import { DomEventObserver } from './domeventobserver.js';
9
+ import { type ViewDocumentDomEventData } from './domeventdata.js';
10
+ import { type ViewRange } from '../range.js';
11
+ import { ViewDataTransfer } from '../datatransfer.js';
12
12
  /**
13
13
  * Observer for events connected with data input.
14
14
  *
15
- * **Note**: This observer is attached by {@link module:engine/view/view~View} and available by default in all
15
+ * **Note**: This observer is attached by {@link module:engine/view/view~EditingView} and available by default in all
16
16
  * editor instances.
17
17
  */
18
- export default class InputObserver extends DomEventObserver<'beforeinput'> {
18
+ export declare class InputObserver extends DomEventObserver<'beforeinput'> {
19
19
  /**
20
20
  * @inheritDoc
21
21
  */
@@ -29,20 +29,20 @@ export default class InputObserver extends DomEventObserver<'beforeinput'> {
29
29
  * Fired before the web browser inputs, deletes, or formats some data.
30
30
  *
31
31
  * This event is introduced by {@link module:engine/view/observer/inputobserver~InputObserver} and available
32
- * by default in all editor instances (attached by {@link module:engine/view/view~View}).
32
+ * by default in all editor instances (attached by {@link module:engine/view/view~EditingView}).
33
33
  *
34
34
  * @see module:engine/view/observer/inputobserver~InputObserver
35
- * @eventName module:engine/view/document~Document#beforeinput
35
+ * @eventName module:engine/view/document~ViewDocument#beforeinput
36
36
  * @param data Event data containing detailed information about the event.
37
37
  */
38
38
  export type ViewDocumentInputEvent = {
39
39
  name: 'beforeinput';
40
- args: [data: InputEventData];
40
+ args: [data: ViewDocumentInputEventData];
41
41
  };
42
42
  /**
43
43
  * The value of the {@link ~ViewDocumentInputEvent} event.
44
44
  */
45
- export interface InputEventData extends DomEventData<InputEvent> {
45
+ export interface ViewDocumentInputEventData extends ViewDocumentDomEventData<InputEvent> {
46
46
  /**
47
47
  * The type of the input event (e.g. "insertText" or "deleteWordBackward"). Corresponds to native `InputEvent#inputType`.
48
48
  */
@@ -52,14 +52,14 @@ export interface InputEventData extends DomEventData<InputEvent> {
52
52
  *
53
53
  * * the web browser and input events implementation (for instance [Level 1](https://www.w3.org/TR/input-events-1/) or
54
54
  * [Level 2](https://www.w3.org/TR/input-events-2/)),
55
- * * {@link module:engine/view/observer/inputobserver~InputEventData#inputType input type}
55
+ * * {@link module:engine/view/observer/inputobserver~ViewDocumentInputEventData#inputType input type}
56
56
  *
57
57
  * text data is sometimes passed in the `data` and sometimes in the `dataTransfer` property.
58
58
  *
59
59
  * * If `InputEvent#data` was set, this property reflects its value.
60
60
  * * If `InputEvent#data` is unavailable, this property contains the `'text/plain'` data from
61
- * {@link module:engine/view/observer/inputobserver~InputEventData#dataTransfer}.
62
- * * If the event ({@link module:engine/view/observer/inputobserver~InputEventData#inputType input type})
61
+ * {@link module:engine/view/observer/inputobserver~ViewDocumentInputEventData#dataTransfer}.
62
+ * * If the event ({@link module:engine/view/observer/inputobserver~ViewDocumentInputEventData#inputType input type})
63
63
  * provides no data whatsoever, this property is `null`.
64
64
  */
65
65
  readonly data: string | null;
@@ -68,18 +68,18 @@ export interface InputEventData extends DomEventData<InputEvent> {
68
68
  *
69
69
  * The value is `null` when no `dataTransfer` was passed along with the input event.
70
70
  */
71
- readonly dataTransfer: DataTransfer;
71
+ readonly dataTransfer: ViewDataTransfer;
72
72
  /**
73
73
  * A flag indicating that the `beforeinput` event was fired during composition.
74
74
  *
75
75
  * Corresponds to the
76
- * {@link module:engine/view/document~Document#event:compositionstart},
77
- * {@link module:engine/view/document~Document#event:compositionupdate},
78
- * and {@link module:engine/view/document~Document#event:compositionend } trio.
76
+ * {@link module:engine/view/document~ViewDocument#event:compositionstart},
77
+ * {@link module:engine/view/document~ViewDocument#event:compositionupdate},
78
+ * and {@link module:engine/view/document~ViewDocument#event:compositionend } trio.
79
79
  */
80
80
  readonly isComposing: boolean;
81
81
  /**
82
- * Editing {@link module:engine/view/range~Range view ranges} corresponding to DOM ranges provided by the web browser
82
+ * Editing {@link module:engine/view/range~ViewRange view ranges} corresponding to DOM ranges provided by the web browser
83
83
  * (as returned by `InputEvent#getTargetRanges()`).
84
84
  */
85
85
  readonly targetRanges: Array<ViewRange>;
@@ -5,18 +5,18 @@
5
5
  /**
6
6
  * @module engine/view/observer/inputobserver
7
7
  */
8
- import DomEventObserver from './domeventobserver.js';
9
- import DataTransfer from '../datatransfer.js';
8
+ import { DomEventObserver } from './domeventobserver.js';
9
+ import { ViewDataTransfer } from '../datatransfer.js';
10
10
  import { env, isText, indexOf } from '@ckeditor/ckeditor5-utils';
11
11
  import { INLINE_FILLER_LENGTH, startsWithFiller } from '../filler.js';
12
12
  // @if CK_DEBUG_TYPING // const { _debouncedLine, _buildLogMessage } = require( '../../dev-utils/utils.js' );
13
13
  /**
14
14
  * Observer for events connected with data input.
15
15
  *
16
- * **Note**: This observer is attached by {@link module:engine/view/view~View} and available by default in all
16
+ * **Note**: This observer is attached by {@link module:engine/view/view~EditingView} and available by default in all
17
17
  * editor instances.
18
18
  */
19
- export default class InputObserver extends DomEventObserver {
19
+ export class InputObserver extends DomEventObserver {
20
20
  /**
21
21
  * @inheritDoc
22
22
  */
@@ -38,7 +38,7 @@ export default class InputObserver extends DomEventObserver {
38
38
  let data = null;
39
39
  let targetRanges = [];
40
40
  if (domEvent.dataTransfer) {
41
- dataTransfer = new DataTransfer(domEvent.dataTransfer);
41
+ dataTransfer = new ViewDataTransfer(domEvent.dataTransfer);
42
42
  }
43
43
  if (domEvent.data !== null) {
44
44
  data = domEvent.data;
@@ -5,15 +5,15 @@
5
5
  /**
6
6
  * @module engine/view/observer/keyobserver
7
7
  */
8
- import DomEventObserver from './domeventobserver.js';
9
- import type DomEventData from './domeventdata.js';
8
+ import { DomEventObserver } from './domeventobserver.js';
9
+ import { type ViewDocumentDomEventData } from './domeventdata.js';
10
10
  import { type KeystrokeInfo } from '@ckeditor/ckeditor5-utils';
11
11
  /**
12
12
  * Observer for events connected with pressing keyboard keys.
13
13
  *
14
- * Note that this observer is attached by the {@link module:engine/view/view~View} and is available by default.
14
+ * Note that this observer is attached by the {@link module:engine/view/view~EditingView} and is available by default.
15
15
  */
16
- export default class KeyObserver extends DomEventObserver<'keydown' | 'keyup', KeystrokeInfo & {
16
+ export declare class KeyObserver extends DomEventObserver<'keydown' | 'keyup', KeystrokeInfo & {
17
17
  keystroke: number;
18
18
  }> {
19
19
  /**
@@ -31,14 +31,14 @@ export default class KeyObserver extends DomEventObserver<'keydown' | 'keyup', K
31
31
  * Introduced by {@link module:engine/view/observer/keyobserver~KeyObserver}.
32
32
  *
33
33
  * Note that because {@link module:engine/view/observer/keyobserver~KeyObserver} is attached by the
34
- * {@link module:engine/view/view~View} this event is available by default.
34
+ * {@link module:engine/view/view~EditingView} this event is available by default.
35
35
  *
36
36
  * @see module:engine/view/observer/keyobserver~KeyObserver
37
- * @eventName module:engine/view/document~Document#keydown
37
+ * @eventName module:engine/view/document~ViewDocument#keydown
38
38
  */
39
39
  export type ViewDocumentKeyDownEvent = {
40
40
  name: 'keydown';
41
- args: [data: KeyEventData];
41
+ args: [data: ViewDocumentKeyEventData];
42
42
  };
43
43
  /**
44
44
  * Fired when a key has been released.
@@ -46,19 +46,19 @@ export type ViewDocumentKeyDownEvent = {
46
46
  * Introduced by {@link module:engine/view/observer/keyobserver~KeyObserver}.
47
47
  *
48
48
  * Note that because {@link module:engine/view/observer/keyobserver~KeyObserver} is attached by the
49
- * {@link module:engine/view/view~View} this event is available by default.
49
+ * {@link module:engine/view/view~EditingView} this event is available by default.
50
50
  *
51
51
  * @see module:engine/view/observer/keyobserver~KeyObserver
52
- * @eventName module:engine/view/document~Document#keyup
52
+ * @eventName module:engine/view/document~ViewDocument#keyup
53
53
  */
54
54
  export type ViewDocumentKeyUpEvent = {
55
55
  name: 'keyup';
56
- args: [data: KeyEventData];
56
+ args: [data: ViewDocumentKeyEventData];
57
57
  };
58
58
  /**
59
59
  * The value of both events - {@link ~ViewDocumentKeyDownEvent} and {@link ~ViewDocumentKeyUpEvent}.
60
60
  */
61
- export interface KeyEventData extends DomEventData<KeyboardEvent>, KeystrokeInfo {
61
+ export interface ViewDocumentKeyEventData extends ViewDocumentDomEventData<KeyboardEvent>, KeystrokeInfo {
62
62
  /**
63
63
  * Code of the whole keystroke. See {@link module:utils/keyboard~getCode}.
64
64
  */