@ckeditor/ckeditor5-engine 38.2.0-alpha.0 → 38.2.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 (210) hide show
  1. package/package.json +2 -2
  2. package/src/controller/datacontroller.d.ts +15 -15
  3. package/src/controller/datacontroller.js +11 -11
  4. package/src/controller/editingcontroller.d.ts +7 -7
  5. package/src/controller/editingcontroller.js +7 -7
  6. package/src/conversion/conversion.d.ts +6 -6
  7. package/src/conversion/conversion.js +2 -2
  8. package/src/conversion/downcastdispatcher.d.ts +13 -13
  9. package/src/conversion/downcastdispatcher.js +2 -2
  10. package/src/conversion/downcasthelpers.d.ts +19 -19
  11. package/src/conversion/downcasthelpers.js +9 -9
  12. package/src/conversion/mapper.d.ts +9 -9
  13. package/src/conversion/mapper.js +5 -5
  14. package/src/conversion/modelconsumable.d.ts +5 -5
  15. package/src/conversion/modelconsumable.js +1 -1
  16. package/src/conversion/upcastdispatcher.d.ts +12 -12
  17. package/src/conversion/upcastdispatcher.js +5 -5
  18. package/src/conversion/upcasthelpers.d.ts +9 -9
  19. package/src/conversion/upcasthelpers.js +3 -3
  20. package/src/conversion/viewconsumable.d.ts +5 -5
  21. package/src/dataprocessor/basichtmlwriter.d.ts +1 -1
  22. package/src/dataprocessor/dataprocessor.d.ts +2 -2
  23. package/src/dataprocessor/htmldataprocessor.d.ts +6 -6
  24. package/src/dataprocessor/htmldataprocessor.js +2 -2
  25. package/src/dataprocessor/xmldataprocessor.d.ts +6 -6
  26. package/src/dataprocessor/xmldataprocessor.js +2 -2
  27. package/src/dev-utils/model.d.ts +10 -10
  28. package/src/dev-utils/model.js +16 -16
  29. package/src/dev-utils/operationreplayer.d.ts +2 -2
  30. package/src/dev-utils/operationreplayer.js +1 -1
  31. package/src/dev-utils/view.d.ts +8 -8
  32. package/src/dev-utils/view.js +14 -14
  33. package/src/index.d.ts +106 -106
  34. package/src/index.js +64 -64
  35. package/src/model/batch.d.ts +1 -1
  36. package/src/model/differ.d.ts +5 -5
  37. package/src/model/differ.js +2 -2
  38. package/src/model/document.d.ts +11 -9
  39. package/src/model/document.js +4 -4
  40. package/src/model/documentfragment.d.ts +4 -4
  41. package/src/model/documentfragment.js +5 -5
  42. package/src/model/documentselection.d.ts +8 -8
  43. package/src/model/documentselection.js +10 -7
  44. package/src/model/element.d.ts +2 -2
  45. package/src/model/element.js +4 -4
  46. package/src/model/history.d.ts +1 -1
  47. package/src/model/item.d.ts +2 -2
  48. package/src/model/liveposition.d.ts +4 -4
  49. package/src/model/liveposition.js +1 -1
  50. package/src/model/liverange.d.ts +5 -5
  51. package/src/model/liverange.js +1 -1
  52. package/src/model/markercollection.d.ts +4 -4
  53. package/src/model/markercollection.js +2 -2
  54. package/src/model/model.d.ts +14 -14
  55. package/src/model/model.js +18 -18
  56. package/src/model/node.d.ts +5 -5
  57. package/src/model/node.js +2 -2
  58. package/src/model/nodelist.d.ts +1 -1
  59. package/src/model/nodelist.js +1 -1
  60. package/src/model/operation/attributeoperation.d.ts +4 -4
  61. package/src/model/operation/attributeoperation.js +3 -3
  62. package/src/model/operation/detachoperation.d.ts +3 -3
  63. package/src/model/operation/detachoperation.js +3 -3
  64. package/src/model/operation/insertoperation.d.ts +6 -6
  65. package/src/model/operation/insertoperation.js +7 -7
  66. package/src/model/operation/markeroperation.d.ts +5 -5
  67. package/src/model/operation/markeroperation.js +2 -2
  68. package/src/model/operation/mergeoperation.d.ts +5 -5
  69. package/src/model/operation/mergeoperation.js +5 -5
  70. package/src/model/operation/moveoperation.d.ts +4 -4
  71. package/src/model/operation/moveoperation.js +4 -4
  72. package/src/model/operation/nooperation.d.ts +2 -2
  73. package/src/model/operation/nooperation.js +1 -1
  74. package/src/model/operation/operation.d.ts +3 -3
  75. package/src/model/operation/operationfactory.d.ts +2 -2
  76. package/src/model/operation/operationfactory.js +11 -11
  77. package/src/model/operation/renameoperation.d.ts +4 -4
  78. package/src/model/operation/renameoperation.js +3 -3
  79. package/src/model/operation/rootattributeoperation.d.ts +4 -4
  80. package/src/model/operation/rootattributeoperation.js +1 -1
  81. package/src/model/operation/rootoperation.d.ts +3 -3
  82. package/src/model/operation/rootoperation.js +1 -1
  83. package/src/model/operation/splitoperation.d.ts +5 -5
  84. package/src/model/operation/splitoperation.js +5 -5
  85. package/src/model/operation/transform.d.ts +2 -2
  86. package/src/model/operation/transform.js +12 -12
  87. package/src/model/operation/utils.d.ts +6 -6
  88. package/src/model/operation/utils.js +4 -4
  89. package/src/model/position.d.ts +14 -14
  90. package/src/model/position.js +3 -3
  91. package/src/model/range.d.ts +12 -12
  92. package/src/model/range.js +3 -3
  93. package/src/model/rootelement.d.ts +2 -2
  94. package/src/model/rootelement.js +1 -1
  95. package/src/model/schema.d.ts +19 -9
  96. package/src/model/schema.js +5 -5
  97. package/src/model/selection.d.ts +7 -7
  98. package/src/model/selection.js +4 -4
  99. package/src/model/text.d.ts +1 -1
  100. package/src/model/text.js +1 -1
  101. package/src/model/textproxy.d.ts +5 -5
  102. package/src/model/textproxy.js +1 -1
  103. package/src/model/treewalker.d.ts +3 -3
  104. package/src/model/treewalker.js +4 -4
  105. package/src/model/typecheckable.d.ts +13 -13
  106. package/src/model/utils/autoparagraphing.d.ts +4 -4
  107. package/src/model/utils/deletecontent.d.ts +3 -3
  108. package/src/model/utils/deletecontent.js +3 -3
  109. package/src/model/utils/findoptimalinsertionrange.d.ts +4 -4
  110. package/src/model/utils/getselectedcontent.d.ts +4 -4
  111. package/src/model/utils/insertcontent.d.ts +6 -6
  112. package/src/model/utils/insertcontent.js +6 -6
  113. package/src/model/utils/insertobject.d.ts +5 -5
  114. package/src/model/utils/insertobject.js +1 -1
  115. package/src/model/utils/modifyselection.d.ts +3 -3
  116. package/src/model/utils/modifyselection.js +4 -4
  117. package/src/model/utils/selection-post-fixer.d.ts +3 -3
  118. package/src/model/utils/selection-post-fixer.js +2 -2
  119. package/src/model/writer.d.ts +12 -12
  120. package/src/model/writer.js +17 -17
  121. package/src/view/attributeelement.d.ts +3 -3
  122. package/src/view/attributeelement.js +1 -1
  123. package/src/view/containerelement.d.ts +3 -3
  124. package/src/view/containerelement.js +1 -1
  125. package/src/view/document.d.ts +4 -4
  126. package/src/view/document.js +2 -2
  127. package/src/view/documentfragment.d.ts +4 -4
  128. package/src/view/documentfragment.js +3 -3
  129. package/src/view/documentselection.d.ts +8 -8
  130. package/src/view/documentselection.js +2 -2
  131. package/src/view/domconverter.d.ts +50 -66
  132. package/src/view/domconverter.js +258 -224
  133. package/src/view/downcastwriter.d.ts +17 -17
  134. package/src/view/downcastwriter.js +11 -11
  135. package/src/view/editableelement.d.ts +4 -4
  136. package/src/view/editableelement.js +1 -1
  137. package/src/view/element.d.ts +5 -5
  138. package/src/view/element.js +5 -5
  139. package/src/view/emptyelement.d.ts +4 -4
  140. package/src/view/emptyelement.js +2 -2
  141. package/src/view/filler.d.ts +3 -3
  142. package/src/view/filler.js +6 -4
  143. package/src/view/item.d.ts +2 -2
  144. package/src/view/matcher.d.ts +1 -1
  145. package/src/view/node.d.ts +5 -5
  146. package/src/view/node.js +2 -2
  147. package/src/view/observer/arrowkeysobserver.d.ts +4 -4
  148. package/src/view/observer/arrowkeysobserver.js +2 -2
  149. package/src/view/observer/bubblingemittermixin.d.ts +2 -2
  150. package/src/view/observer/bubblingemittermixin.js +1 -1
  151. package/src/view/observer/bubblingeventinfo.d.ts +3 -3
  152. package/src/view/observer/clickobserver.d.ts +3 -3
  153. package/src/view/observer/clickobserver.js +1 -1
  154. package/src/view/observer/compositionobserver.d.ts +3 -3
  155. package/src/view/observer/compositionobserver.js +1 -1
  156. package/src/view/observer/domeventdata.d.ts +3 -3
  157. package/src/view/observer/domeventobserver.d.ts +1 -1
  158. package/src/view/observer/domeventobserver.js +2 -2
  159. package/src/view/observer/fakeselectionobserver.d.ts +2 -2
  160. package/src/view/observer/fakeselectionobserver.js +2 -2
  161. package/src/view/observer/focusobserver.d.ts +3 -3
  162. package/src/view/observer/focusobserver.js +1 -1
  163. package/src/view/observer/inputobserver.d.ts +4 -4
  164. package/src/view/observer/inputobserver.js +2 -2
  165. package/src/view/observer/keyobserver.d.ts +2 -2
  166. package/src/view/observer/keyobserver.js +1 -1
  167. package/src/view/observer/mouseobserver.d.ts +2 -2
  168. package/src/view/observer/mouseobserver.js +1 -1
  169. package/src/view/observer/mutationobserver.d.ts +4 -4
  170. package/src/view/observer/mutationobserver.js +2 -2
  171. package/src/view/observer/observer.d.ts +2 -2
  172. package/src/view/observer/selectionobserver.d.ts +7 -7
  173. package/src/view/observer/selectionobserver.js +3 -3
  174. package/src/view/observer/tabobserver.d.ts +4 -4
  175. package/src/view/observer/tabobserver.js +2 -2
  176. package/src/view/placeholder.d.ts +3 -3
  177. package/src/view/position.d.ts +7 -7
  178. package/src/view/position.js +4 -4
  179. package/src/view/range.d.ts +7 -7
  180. package/src/view/range.js +3 -3
  181. package/src/view/rawelement.d.ts +5 -5
  182. package/src/view/rawelement.js +2 -2
  183. package/src/view/renderer.d.ts +5 -5
  184. package/src/view/renderer.js +3 -3
  185. package/src/view/rooteditableelement.d.ts +2 -2
  186. package/src/view/rooteditableelement.js +1 -1
  187. package/src/view/selection.d.ts +8 -8
  188. package/src/view/selection.js +5 -5
  189. package/src/view/styles/background.d.ts +1 -1
  190. package/src/view/styles/background.js +1 -1
  191. package/src/view/styles/border.d.ts +1 -1
  192. package/src/view/styles/border.js +1 -1
  193. package/src/view/styles/margin.d.ts +1 -1
  194. package/src/view/styles/margin.js +1 -1
  195. package/src/view/styles/padding.d.ts +1 -1
  196. package/src/view/styles/padding.js +1 -1
  197. package/src/view/styles/utils.d.ts +1 -1
  198. package/src/view/text.d.ts +2 -2
  199. package/src/view/text.js +1 -1
  200. package/src/view/textproxy.d.ts +6 -6
  201. package/src/view/textproxy.js +1 -1
  202. package/src/view/treewalker.d.ts +3 -3
  203. package/src/view/treewalker.js +4 -4
  204. package/src/view/typecheckable.d.ts +16 -16
  205. package/src/view/uielement.d.ts +6 -6
  206. package/src/view/uielement.js +2 -2
  207. package/src/view/upcastwriter.d.ts +9 -9
  208. package/src/view/upcastwriter.js +6 -6
  209. package/src/view/view.d.ts +12 -12
  210. package/src/view/view.js +18 -18
@@ -5,11 +5,11 @@
5
5
  /**
6
6
  * @module engine/model/documentfragment
7
7
  */
8
- import TypeCheckable from './typecheckable';
9
- import Element from './element';
10
- import NodeList from './nodelist';
11
- import Text from './text';
12
- import TextProxy from './textproxy';
8
+ import TypeCheckable from './typecheckable.js';
9
+ import Element from './element.js';
10
+ import NodeList from './nodelist.js';
11
+ import Text from './text.js';
12
+ import TextProxy from './textproxy.js';
13
13
  import { isIterable } from '@ckeditor/ckeditor5-utils';
14
14
  // @if CK_DEBUG_ENGINE // const { stringifyMap } = require( '../dev-utils/utils' );
15
15
  /**
@@ -5,14 +5,14 @@
5
5
  /**
6
6
  * @module engine/model/documentselection
7
7
  */
8
- import TypeCheckable from './typecheckable';
9
- import Selection, { type SelectionChangeAttributeEvent, type SelectionChangeRangeEvent } from './selection';
10
- import type { default as Document } from './document';
11
- import type { Marker } from './markercollection';
12
- import type Element from './element';
13
- import type Item from './item';
14
- import type { default as Position, PositionOffset } from './position';
15
- import type Range from './range';
8
+ import TypeCheckable from './typecheckable.js';
9
+ import Selection, { type SelectionChangeAttributeEvent, type SelectionChangeRangeEvent } from './selection.js';
10
+ import type { default as Document } from './document.js';
11
+ import type { Marker } from './markercollection.js';
12
+ import type Element from './element.js';
13
+ import type Item from './item.js';
14
+ import type { default as Position, PositionOffset } from './position.js';
15
+ import type Range from './range.js';
16
16
  import { Collection } from '@ckeditor/ckeditor5-utils';
17
17
  declare const DocumentSelection_base: import("@ckeditor/ckeditor5-utils").Mixed<typeof TypeCheckable, import("@ckeditor/ckeditor5-utils").Emitter>;
18
18
  /**
@@ -5,11 +5,11 @@
5
5
  /**
6
6
  * @module engine/model/documentselection
7
7
  */
8
- import TypeCheckable from './typecheckable';
9
- import LiveRange from './liverange';
10
- import Selection from './selection';
11
- import Text from './text';
12
- import TextProxy from './textproxy';
8
+ import TypeCheckable from './typecheckable.js';
9
+ import LiveRange from './liverange.js';
10
+ import Selection from './selection.js';
11
+ import Text from './text.js';
12
+ import TextProxy from './textproxy.js';
13
13
  import { CKEditorError, Collection, EmitterMixin, toMap, uid } from '@ckeditor/ckeditor5-utils';
14
14
  const storePrefix = 'selection:';
15
15
  /**
@@ -872,8 +872,10 @@ class LiveSelection extends Selection {
872
872
  const range = this.getFirstRange();
873
873
  // ...look for a first character node in that range and take attributes from it.
874
874
  for (const value of range) {
875
- // If the item is an object, we don't want to get attributes from its children.
875
+ // If the item is an object, we don't want to get attributes from its children...
876
876
  if (value.item.is('element') && schema.isObject(value.item)) {
877
+ // ...but collect attributes from inline object.
878
+ attrs = getTextAttributes(value.item, schema);
877
879
  break;
878
880
  }
879
881
  if (value.type == 'text') {
@@ -957,7 +959,8 @@ function getTextAttributes(node, schema) {
957
959
  const attributes = [];
958
960
  // Collect all attributes that can be applied to the text node.
959
961
  for (const [key, value] of node.getAttributes()) {
960
- if (schema.checkAttribute('$text', key)) {
962
+ if (schema.checkAttribute('$text', key) &&
963
+ schema.getAttributeProperties(key).copyFromObject !== false) {
961
964
  attributes.push([key, value]);
962
965
  }
963
966
  }
@@ -5,8 +5,8 @@
5
5
  /**
6
6
  * @module engine/model/element
7
7
  */
8
- import Node, { type NodeAttributes } from './node';
9
- import type Item from './item';
8
+ import Node, { type NodeAttributes } from './node.js';
9
+ import type Item from './item.js';
10
10
  /**
11
11
  * Model element. Type of {@link module:engine/model/node~Node node} that has a {@link module:engine/model/element~Element#name name} and
12
12
  * {@link module:engine/model/element~Element#getChildren child nodes}.
@@ -5,10 +5,10 @@
5
5
  /**
6
6
  * @module engine/model/element
7
7
  */
8
- import Node from './node';
9
- import NodeList from './nodelist';
10
- import Text from './text';
11
- import TextProxy from './textproxy';
8
+ import Node from './node.js';
9
+ import NodeList from './nodelist.js';
10
+ import Text from './text.js';
11
+ import TextProxy from './textproxy.js';
12
12
  import { isIterable } from '@ckeditor/ckeditor5-utils';
13
13
  // @if CK_DEBUG_ENGINE // const { stringifyMap, convertMapToStringifiedObject, convertMapToTags } = require( '../dev-utils/utils' );
14
14
  /**
@@ -2,7 +2,7 @@
2
2
  * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
4
  */
5
- import type Operation from './operation/operation';
5
+ import type Operation from './operation/operation.js';
6
6
  /**
7
7
  * @module engine/model/history
8
8
  */
@@ -2,8 +2,8 @@
2
2
  * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
4
  */
5
- import type Node from './node';
6
- import type TextProxy from './textproxy';
5
+ import type Node from './node.js';
6
+ import type TextProxy from './textproxy.js';
7
7
  /**
8
8
  * @module engine/model/item
9
9
  */
@@ -5,10 +5,10 @@
5
5
  /**
6
6
  * @module engine/model/liveposition
7
7
  */
8
- import Position, { type PositionOffset, type PositionStickiness } from './position';
9
- import type DocumentFragment from './documentfragment';
10
- import type Item from './item';
11
- import type RootElement from './rootelement';
8
+ import Position, { type PositionOffset, type PositionStickiness } from './position.js';
9
+ import type DocumentFragment from './documentfragment.js';
10
+ import type Item from './item.js';
11
+ import type RootElement from './rootelement.js';
12
12
  declare const LivePosition_base: import("@ckeditor/ckeditor5-utils").Mixed<typeof Position, import("@ckeditor/ckeditor5-utils").Emitter>;
13
13
  /**
14
14
  * `LivePosition` is a type of {@link module:engine/model/position~Position Position}
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * @module engine/model/liveposition
7
7
  */
8
- import Position from './position';
8
+ import Position from './position.js';
9
9
  import { CKEditorError, EmitterMixin } from '@ckeditor/ckeditor5-utils';
10
10
  /**
11
11
  * `LivePosition` is a type of {@link module:engine/model/position~Position Position}
@@ -5,11 +5,11 @@
5
5
  /**
6
6
  * @module engine/model/liverange
7
7
  */
8
- import Range from './range';
9
- import type DocumentFragment from './documentfragment';
10
- import type Element from './element';
11
- import type Item from './item';
12
- import type Position from './position';
8
+ import Range from './range.js';
9
+ import type DocumentFragment from './documentfragment.js';
10
+ import type Element from './element.js';
11
+ import type Item from './item.js';
12
+ import type Position from './position.js';
13
13
  declare const LiveRange_base: import("@ckeditor/ckeditor5-utils").Mixed<typeof Range, import("@ckeditor/ckeditor5-utils").Emitter>;
14
14
  /**
15
15
  * `LiveRange` is a type of {@link module:engine/model/range~Range Range}
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * @module engine/model/liverange
7
7
  */
8
- import Range from './range';
8
+ import Range from './range.js';
9
9
  import { EmitterMixin } from '@ckeditor/ckeditor5-utils';
10
10
  /**
11
11
  * `LiveRange` is a type of {@link module:engine/model/range~Range Range}
@@ -5,10 +5,10 @@
5
5
  /**
6
6
  * @module engine/model/markercollection
7
7
  */
8
- import TypeCheckable from './typecheckable';
9
- import LiveRange, { type LiveRangeChangeContentEvent, type LiveRangeChangeRangeEvent, type LiveRangeChangeEvent } from './liverange';
10
- import type Position from './position';
11
- import type Range from './range';
8
+ import TypeCheckable from './typecheckable.js';
9
+ import LiveRange, { type LiveRangeChangeContentEvent, type LiveRangeChangeRangeEvent, type LiveRangeChangeEvent } from './liverange.js';
10
+ import type Position from './position.js';
11
+ import type Range from './range.js';
12
12
  declare const MarkerCollection_base: {
13
13
  new (): import("@ckeditor/ckeditor5-utils").Emitter;
14
14
  prototype: import("@ckeditor/ckeditor5-utils").Emitter;
@@ -5,8 +5,8 @@
5
5
  /**
6
6
  * @module engine/model/markercollection
7
7
  */
8
- import TypeCheckable from './typecheckable';
9
- import LiveRange from './liverange';
8
+ import TypeCheckable from './typecheckable.js';
9
+ import LiveRange from './liverange.js';
10
10
  import { CKEditorError, EmitterMixin } from '@ckeditor/ckeditor5-utils';
11
11
  /**
12
12
  * The collection of all {@link module:engine/model/markercollection~Marker markers} attached to the document.
@@ -5,20 +5,20 @@
5
5
  /**
6
6
  * @module engine/model/model
7
7
  */
8
- import Batch, { type BatchType } from './batch';
9
- import Document from './document';
10
- import MarkerCollection from './markercollection';
11
- import ModelPosition, { type PositionOffset, type PositionStickiness } from './position';
12
- import ModelRange from './range';
13
- import ModelSelection, { type PlaceOrOffset, type Selectable } from './selection';
14
- import DocumentSelection from './documentselection';
15
- import Schema from './schema';
16
- import Writer from './writer';
17
- import Node from './node';
18
- import type ModelDocumentFragment from './documentfragment';
19
- import type Item from './item';
20
- import type ModelElement from './element';
21
- import type Operation from './operation/operation';
8
+ import Batch, { type BatchType } from './batch.js';
9
+ import Document from './document.js';
10
+ import MarkerCollection from './markercollection.js';
11
+ import ModelPosition, { type PositionOffset, type PositionStickiness } from './position.js';
12
+ import ModelRange from './range.js';
13
+ import ModelSelection, { type PlaceOrOffset, type Selectable } from './selection.js';
14
+ import DocumentSelection from './documentselection.js';
15
+ import Schema from './schema.js';
16
+ import Writer from './writer.js';
17
+ import Node from './node.js';
18
+ import type ModelDocumentFragment from './documentfragment.js';
19
+ import type Item from './item.js';
20
+ import type ModelElement from './element.js';
21
+ import type Operation from './operation/operation.js';
22
22
  import { type DecoratedMethodEvent } from '@ckeditor/ckeditor5-utils';
23
23
  declare const Model_base: {
24
24
  new (): import("@ckeditor/ckeditor5-utils").Observable;
@@ -5,24 +5,24 @@
5
5
  /**
6
6
  * @module engine/model/model
7
7
  */
8
- import Batch from './batch';
9
- import Document from './document';
10
- import MarkerCollection from './markercollection';
11
- import ModelPosition from './position';
12
- import ModelRange from './range';
13
- import ModelSelection from './selection';
14
- import OperationFactory from './operation/operationfactory';
15
- import DocumentSelection from './documentselection';
16
- import Schema from './schema';
17
- import Writer from './writer';
18
- import Node from './node';
19
- import { autoParagraphEmptyRoots } from './utils/autoparagraphing';
20
- import { injectSelectionPostFixer } from './utils/selection-post-fixer';
21
- import deleteContent from './utils/deletecontent';
22
- import getSelectedContent from './utils/getselectedcontent';
23
- import insertContent from './utils/insertcontent';
24
- import insertObject from './utils/insertobject';
25
- import modifySelection from './utils/modifyselection';
8
+ import Batch from './batch.js';
9
+ import Document from './document.js';
10
+ import MarkerCollection from './markercollection.js';
11
+ import ModelPosition from './position.js';
12
+ import ModelRange from './range.js';
13
+ import ModelSelection from './selection.js';
14
+ import OperationFactory from './operation/operationfactory.js';
15
+ import DocumentSelection from './documentselection.js';
16
+ import Schema from './schema.js';
17
+ import Writer from './writer.js';
18
+ import Node from './node.js';
19
+ import { autoParagraphEmptyRoots } from './utils/autoparagraphing.js';
20
+ import { injectSelectionPostFixer } from './utils/selection-post-fixer.js';
21
+ import deleteContent from './utils/deletecontent.js';
22
+ import getSelectedContent from './utils/getselectedcontent.js';
23
+ import insertContent from './utils/insertcontent.js';
24
+ import insertObject from './utils/insertobject.js';
25
+ import modifySelection from './utils/modifyselection.js';
26
26
  import { CKEditorError, ObservableMixin } from '@ckeditor/ckeditor5-utils';
27
27
  // @if CK_DEBUG_ENGINE // const { dumpTrees, initDocumentDumping } = require( '../dev-utils/utils' );
28
28
  // @if CK_DEBUG_ENGINE // const { OperationReplayer } = require( '../dev-utils/operationreplayer' ).default;
@@ -5,11 +5,11 @@
5
5
  /**
6
6
  * @module engine/model/node
7
7
  */
8
- import TypeCheckable from './typecheckable';
9
- import type Document from './document';
10
- import type DocumentFragment from './documentfragment';
11
- import type Element from './element';
12
- import '@ckeditor/ckeditor5-utils/src/version';
8
+ import TypeCheckable from './typecheckable.js';
9
+ import type Document from './document.js';
10
+ import type DocumentFragment from './documentfragment.js';
11
+ import type Element from './element.js';
12
+ import '@ckeditor/ckeditor5-utils/src/version.js';
13
13
  /**
14
14
  * Model node. Most basic structure of model tree.
15
15
  *
package/src/model/node.js CHANGED
@@ -6,10 +6,10 @@
6
6
  /**
7
7
  * @module engine/model/node
8
8
  */
9
- import TypeCheckable from './typecheckable';
9
+ import TypeCheckable from './typecheckable.js';
10
10
  import { CKEditorError, compareArrays, toMap } from '@ckeditor/ckeditor5-utils';
11
11
  // To check if component is loaded more than once.
12
- import '@ckeditor/ckeditor5-utils/src/version';
12
+ import '@ckeditor/ckeditor5-utils/src/version.js';
13
13
  /**
14
14
  * Model node. Most basic structure of model tree.
15
15
  *
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * @module engine/model/nodelist
7
7
  */
8
- import Node from './node';
8
+ import Node from './node.js';
9
9
  /**
10
10
  * Provides an interface to operate on a list of {@link module:engine/model/node~Node nodes}. `NodeList` is used internally
11
11
  * in classes like {@link module:engine/model/element~Element Element}
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * @module engine/model/nodelist
7
7
  */
8
- import Node from './node';
8
+ import Node from './node.js';
9
9
  import { CKEditorError, spliceArray } from '@ckeditor/ckeditor5-utils';
10
10
  /**
11
11
  * Provides an interface to operate on a list of {@link module:engine/model/node~Node nodes}. `NodeList` is used internally
@@ -5,10 +5,10 @@
5
5
  /**
6
6
  * @module engine/model/operation/attributeoperation
7
7
  */
8
- import Operation from './operation';
9
- import Range from '../range';
10
- import type Document from '../document';
11
- import type { Selectable } from '../selection';
8
+ import Operation from './operation.js';
9
+ import Range from '../range.js';
10
+ import type Document from '../document.js';
11
+ import type { Selectable } from '../selection.js';
12
12
  /**
13
13
  * Operation to change nodes' attribute.
14
14
  *
@@ -5,9 +5,9 @@
5
5
  /**
6
6
  * @module engine/model/operation/attributeoperation
7
7
  */
8
- import Operation from './operation';
9
- import { _setAttribute } from './utils';
10
- import Range from '../range';
8
+ import Operation from './operation.js';
9
+ import { _setAttribute } from './utils.js';
10
+ import Range from '../range.js';
11
11
  import { CKEditorError } from '@ckeditor/ckeditor5-utils';
12
12
  import { isEqual } from 'lodash-es';
13
13
  /**
@@ -5,9 +5,9 @@
5
5
  /**
6
6
  * @module engine/model/operation/detachoperation
7
7
  */
8
- import Operation from './operation';
9
- import type Position from '../position';
10
- import type { Selectable } from '../selection';
8
+ import Operation from './operation.js';
9
+ import type Position from '../position.js';
10
+ import type { Selectable } from '../selection.js';
11
11
  /**
12
12
  * Operation to permanently remove node from detached root.
13
13
  * Note this operation is only a local operation and won't be send to the other clients.
@@ -5,9 +5,9 @@
5
5
  /**
6
6
  * @module engine/model/operation/detachoperation
7
7
  */
8
- import Operation from './operation';
9
- import Range from '../range';
10
- import { _remove } from './utils';
8
+ import Operation from './operation.js';
9
+ import Range from '../range.js';
10
+ import { _remove } from './utils.js';
11
11
  import { CKEditorError } from '@ckeditor/ckeditor5-utils';
12
12
  // @if CK_DEBUG_ENGINE // const ModelRange = require( '../range' ).default;
13
13
  /**
@@ -5,12 +5,12 @@
5
5
  /**
6
6
  * @module engine/model/operation/insertoperation
7
7
  */
8
- import Operation from './operation';
9
- import Position from '../position';
10
- import NodeList from '../nodelist';
11
- import { type NodeSet } from './utils';
12
- import type { Selectable } from '../selection';
13
- import type Document from '../document';
8
+ import Operation from './operation.js';
9
+ import Position from '../position.js';
10
+ import NodeList from '../nodelist.js';
11
+ import { type NodeSet } from './utils.js';
12
+ import type { Selectable } from '../selection.js';
13
+ import type Document from '../document.js';
14
14
  /**
15
15
  * Operation to insert one or more nodes at given position in the model.
16
16
  */
@@ -5,13 +5,13 @@
5
5
  /**
6
6
  * @module engine/model/operation/insertoperation
7
7
  */
8
- import Operation from './operation';
9
- import Position from '../position';
10
- import NodeList from '../nodelist';
11
- import MoveOperation from './moveoperation';
12
- import { _insert, _normalizeNodes } from './utils';
13
- import Text from '../text';
14
- import Element from '../element';
8
+ import Operation from './operation.js';
9
+ import Position from '../position.js';
10
+ import NodeList from '../nodelist.js';
11
+ import MoveOperation from './moveoperation.js';
12
+ import { _insert, _normalizeNodes } from './utils.js';
13
+ import Text from '../text.js';
14
+ import Element from '../element.js';
15
15
  import { CKEditorError } from '@ckeditor/ckeditor5-utils';
16
16
  /**
17
17
  * Operation to insert one or more nodes at given position in the model.
@@ -5,11 +5,11 @@
5
5
  /**
6
6
  * @module engine/model/operation/markeroperation
7
7
  */
8
- import Operation from './operation';
9
- import Range from '../range';
10
- import type Document from '../document';
11
- import type MarkerCollection from '../markercollection';
12
- import type { Selectable } from '../selection';
8
+ import Operation from './operation.js';
9
+ import Range from '../range.js';
10
+ import type Document from '../document.js';
11
+ import type MarkerCollection from '../markercollection.js';
12
+ import type { Selectable } from '../selection.js';
13
13
  export default class MarkerOperation extends Operation {
14
14
  /**
15
15
  * Marker name.
@@ -5,8 +5,8 @@
5
5
  /**
6
6
  * @module engine/model/operation/markeroperation
7
7
  */
8
- import Operation from './operation';
9
- import Range from '../range';
8
+ import Operation from './operation.js';
9
+ import Range from '../range.js';
10
10
  export default class MarkerOperation extends Operation {
11
11
  /**
12
12
  * @param name Marker name.
@@ -5,11 +5,11 @@
5
5
  /**
6
6
  * @module engine/model/operation/mergeoperation
7
7
  */
8
- import Operation from './operation';
9
- import Position from '../position';
10
- import Range from '../range';
11
- import type Document from '../document';
12
- import type { Selectable } from '../selection';
8
+ import Operation from './operation.js';
9
+ import Position from '../position.js';
10
+ import Range from '../range.js';
11
+ import type Document from '../document.js';
12
+ import type { Selectable } from '../selection.js';
13
13
  /**
14
14
  * Operation to merge two {@link module:engine/model/element~Element elements}.
15
15
  *
@@ -5,11 +5,11 @@
5
5
  /**
6
6
  * @module engine/model/operation/mergeoperation
7
7
  */
8
- import Operation from './operation';
9
- import SplitOperation from './splitoperation';
10
- import Position from '../position';
11
- import Range from '../range';
12
- import { _move } from './utils';
8
+ import Operation from './operation.js';
9
+ import SplitOperation from './splitoperation.js';
10
+ import Position from '../position.js';
11
+ import Range from '../range.js';
12
+ import { _move } from './utils.js';
13
13
  import { CKEditorError } from '@ckeditor/ckeditor5-utils';
14
14
  /**
15
15
  * Operation to merge two {@link module:engine/model/element~Element elements}.
@@ -5,10 +5,10 @@
5
5
  /**
6
6
  * @module engine/model/operation/moveoperation
7
7
  */
8
- import Operation from './operation';
9
- import Position from '../position';
10
- import type { Selectable } from '../selection';
11
- import type Document from '../document';
8
+ import Operation from './operation.js';
9
+ import Position from '../position.js';
10
+ import type { Selectable } from '../selection.js';
11
+ import type Document from '../document.js';
12
12
  /**
13
13
  * Operation to move a range of {@link module:engine/model/item~Item model items}
14
14
  * to given {@link module:engine/model/position~Position target position}.
@@ -5,10 +5,10 @@
5
5
  /**
6
6
  * @module engine/model/operation/moveoperation
7
7
  */
8
- import Operation from './operation';
9
- import Position from '../position';
10
- import Range from '../range';
11
- import { _move } from './utils';
8
+ import Operation from './operation.js';
9
+ import Position from '../position.js';
10
+ import Range from '../range.js';
11
+ import { _move } from './utils.js';
12
12
  import { CKEditorError, compareArrays } from '@ckeditor/ckeditor5-utils';
13
13
  // @if CK_DEBUG_ENGINE // const ModelRange = require( '../range' ).default;
14
14
  /**
@@ -5,8 +5,8 @@
5
5
  /**
6
6
  * @module engine/model/operation/nooperation
7
7
  */
8
- import Operation from './operation';
9
- import type { Selectable } from '../selection';
8
+ import Operation from './operation.js';
9
+ import type { Selectable } from '../selection.js';
10
10
  /**
11
11
  * Operation which is doing nothing ("empty operation", "do-nothing operation", "noop"). This is an operation,
12
12
  * which when executed does not change the tree model. It still has some parameters defined for transformation purposes.
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * @module engine/model/operation/nooperation
7
7
  */
8
- import Operation from './operation';
8
+ import Operation from './operation.js';
9
9
  /**
10
10
  * Operation which is doing nothing ("empty operation", "do-nothing operation", "noop"). This is an operation,
11
11
  * which when executed does not change the tree model. It still has some parameters defined for transformation purposes.
@@ -2,9 +2,9 @@
2
2
  * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
4
  */
5
- import type Batch from '../batch';
6
- import type Document from '../document';
7
- import type { Selectable } from '../selection';
5
+ import type Batch from '../batch.js';
6
+ import type Document from '../document.js';
7
+ import type { Selectable } from '../selection.js';
8
8
  /**
9
9
  * @module engine/model/operation/operation
10
10
  */
@@ -2,8 +2,8 @@
2
2
  * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
4
  */
5
- import Operation from './operation';
6
- import type Document from '../document';
5
+ import Operation from './operation.js';
6
+ import type Document from '../document.js';
7
7
  /**
8
8
  * A factory class for creating operations.
9
9
  */
@@ -5,17 +5,17 @@
5
5
  /**
6
6
  * @module engine/model/operation/operationfactory
7
7
  */
8
- import AttributeOperation from './attributeoperation';
9
- import InsertOperation from './insertoperation';
10
- import MarkerOperation from './markeroperation';
11
- import MoveOperation from './moveoperation';
12
- import NoOperation from './nooperation';
13
- import Operation from './operation';
14
- import RenameOperation from './renameoperation';
15
- import RootAttributeOperation from './rootattributeoperation';
16
- import RootOperation from './rootoperation';
17
- import SplitOperation from './splitoperation';
18
- import MergeOperation from './mergeoperation';
8
+ import AttributeOperation from './attributeoperation.js';
9
+ import InsertOperation from './insertoperation.js';
10
+ import MarkerOperation from './markeroperation.js';
11
+ import MoveOperation from './moveoperation.js';
12
+ import NoOperation from './nooperation.js';
13
+ import Operation from './operation.js';
14
+ import RenameOperation from './renameoperation.js';
15
+ import RootAttributeOperation from './rootattributeoperation.js';
16
+ import RootOperation from './rootoperation.js';
17
+ import SplitOperation from './splitoperation.js';
18
+ import MergeOperation from './mergeoperation.js';
19
19
  const operations = {};
20
20
  operations[AttributeOperation.className] = AttributeOperation;
21
21
  operations[InsertOperation.className] = InsertOperation;