AttributeOperation (engine/model/operation)
@ckeditor/ckeditor5-engine/src/model/operation/attributeoperation
Operation to change nodes' attribute.
Using this class you can add, remove or change value of the attribute.
Filtering
Properties
-
readonly
affectedSelectable : Selectable
module:engine/model/operation/attributeoperation~AttributeOperation#affectedSelectable
A selectable that will be affected by the operation after it is executed.
The exact returned parameter differs between operation types.
-
inherited
baseVersion : null | number
module:engine/model/operation/attributeoperation~AttributeOperation#baseVersion
version
on 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. -
inherited
batch : null | Batch
module:engine/model/operation/attributeoperation~AttributeOperation#batch
Batch to which the operation is added or
null
if the operation is not added to any batch yet. -
readonly inherited
isDocumentOperation : boolean
module:engine/model/operation/attributeoperation~AttributeOperation#isDocumentOperation
Defines whether operation is executed on attached or detached items.
-
key : string
module:engine/model/operation/attributeoperation~AttributeOperation#key
Key of an attribute to change or remove.
-
newValue : unknown
module:engine/model/operation/attributeoperation~AttributeOperation#newValue
New value of the attribute with given key or
null
, if operation should remove attribute. -
oldValue : unknown
module:engine/model/operation/attributeoperation~AttributeOperation#oldValue
Old value of the attribute with given key or
null
, if attribute was not set before. -
Range on which operation should be applied.
-
readonly
type : 'removeAttribute' | 'addAttribute' | 'changeAttribute'
module:engine/model/operation/attributeoperation~AttributeOperation#type
Operation type.
Static properties
-
readonly static
className : string
module:engine/model/operation/attributeoperation~AttributeOperation.className
Name of the operation class used for serialization.
Methods
-
constructor( range, key, oldValue, newValue, baseVersion )
module:engine/model/operation/attributeoperation~AttributeOperation#constructor
Creates an operation that changes, removes or adds attributes.
If only
newValue
is set, attribute will be added on a node. Note that all nodes in operation's range must not have an attribute with the same key as the added attribute.If only
oldValue
is set, then attribute with given key will be removed. Note that all nodes in operation's range must have an attribute with that key added.If both
newValue
andoldValue
are set, then the operation will change the attribute value. Note that all nodes in operation's ranges must already have an attribute with given key andoldValue
as valueParameters
range : Range
Range on which the operation should be applied. Must be a flat range.
key : string
Key of an attribute to change or remove.
oldValue : unknown
Old value of the attribute with given key or
null
, if attribute was not set before.newValue : unknown
New value of the attribute with given key or
null
, if operation should remove attribute.baseVersion : null | number
Document
version
on which operation can be applied ornull
if the operation operates on detached (non-document) tree.
-
clone() → AttributeOperation
module:engine/model/operation/attributeoperation~AttributeOperation#clone
Creates and returns an operation that has the same parameters as this operation.
Returns
-
getReversed() → Operation
module:engine/model/operation/attributeoperation~AttributeOperation#getReversed
-
toJSON() → unknown
module:engine/model/operation/attributeoperation~AttributeOperation#toJSON
Custom toJSON method to solve child-parent circular dependencies.
Returns
unknown
Clone of this object with the operation property replaced with string.
-
internal
_execute() → void
module:engine/model/operation/attributeoperation~AttributeOperation#_execute
Executes the operation - modifications described by the operation properties will be applied to the model tree.
Returns
void
-
internal
_validate() → void
module:engine/model/operation/attributeoperation~AttributeOperation#_validate
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 ) → AttributeOperation
module:engine/model/operation/attributeoperation~AttributeOperation.fromJSON
Creates
AttributeOperation
object from deserialized object, i.e. from parsed JSON string.Parameters
json : any
Deserialized JSON object.
document : Document
Document 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.
With the release of version 42.0.0, we have rewritten much of our documentation to reflect the new import paths and features. We appreciate your feedback to help us ensure its accuracy and completeness.