MergeOperation (engine/model/operation)
@ckeditor/ckeditor5-engine/src/model/operation/mergeoperation
Operation to merge two elements.
The merged element is the parent of sourcePosition and it is merged into the parent of
targetPosition. All nodes from the merged element are moved to targetPosition.
The merged element is moved to the graveyard at graveyardPosition.
Filtering
Properties
-
readonly
affectedSelectable : Selectablemodule:engine/model/operation/mergeoperation~MergeOperation#affectedSelectableA selectable that will be affected by the operation after it is executed.
The exact returned parameter differs between operation types.
-
inherited
baseVersion : null | numbermodule:engine/model/operation/mergeoperation~MergeOperation#baseVersionversionon which operation can be applied. If you try to apply operation with different base version than the document version the model-document-applyOperation-wrong-version error is thrown. -
Batch to which the operation is added or
nullif the operation is not added to any batch yet. -
readonly
deletionPosition : Positionmodule:engine/model/operation/mergeoperation~MergeOperation#deletionPositionPosition before the merged element (which will be deleted).
-
graveyardPosition : Positionmodule:engine/model/operation/mergeoperation~MergeOperation#graveyardPositionPosition in graveyard to which the merged element will be moved.
-
howMany : numbermodule:engine/model/operation/mergeoperation~MergeOperation#howManySummary offset size of nodes which will be moved from the merged element to the new parent.
-
readonly inherited
isDocumentOperation : booleanmodule:engine/model/operation/mergeoperation~MergeOperation#isDocumentOperationDefines whether operation is executed on attached or detached items.
-
Artificial range that contains all the nodes from the merged element that will be moved to
sourcePosition. The range starts atsourcePositionand ends in the same parent, atPOSITIVE_INFINITYoffset. -
sourcePosition : Positionmodule:engine/model/operation/mergeoperation~MergeOperation#sourcePositionPosition inside the merged element. All nodes from that element after that position will be moved to
targetPosition. -
targetPosition : Positionmodule:engine/model/operation/mergeoperation~MergeOperation#targetPositionPosition which the nodes from the merged elements will be moved to.
-
Operation type.
Static properties
-
readonly static
className : stringmodule:engine/model/operation/mergeoperation~MergeOperation.classNameName of the operation class used for serialization.
Methods
-
constructor( sourcePosition, howMany, targetPosition, graveyardPosition, baseVersion )module:engine/model/operation/mergeoperation~MergeOperation#constructorCreates a merge operation.
Parameters
sourcePosition : PositionPosition inside the merged element. All nodes from that element after that position will be moved to
targetPosition.howMany : numberSummary offset size of nodes which will be moved from the merged element to the new parent.
targetPosition : PositionPosition which the nodes from the merged elements will be moved to.
graveyardPosition : PositionPosition in graveyard to which the merged element will be moved.
baseVersion : null | numberDocument
versionon which operation can be applied ornullif the operation operates on detached (non-document) tree.
-
clone() → MergeOperationmodule:engine/model/operation/mergeoperation~MergeOperation#cloneCreates and returns an operation that has the same parameters as this operation.
Returns
-
getReversed() → Operationmodule:engine/model/operation/mergeoperation~MergeOperation#getReversed -
toJSON() → unknownmodule:engine/model/operation/mergeoperation~MergeOperation#toJSONCustom toJSON method to solve child-parent circular dependencies.
Returns
unknownClone of this object with the operation property replaced with string.
-
Executes the operation - modifications described by the operation properties will be applied to the model tree.
Returns
void
-
Checks whether the operation's parameters are correct and the operation can be correctly executed. Throws an error if operation is not valid.
Returns
void
Static methods
-
static
fromJSON( json, document ) → MergeOperationmodule:engine/model/operation/mergeoperation~MergeOperation.fromJSONCreates
MergeOperationobject from deserialized object, i.e. from parsed JSON string.Parameters
json : anyDeserialized JSON object.
document : DocumentDocument on which this operation will be applied.
Returns
Every day, we work hard to keep our documentation complete. Have you spotted outdated information? Is something missing? Please report it via our issue tracker.