Trilium Frontend API
    Preparing search index...

    Class SplitOperation

    Operation to split module:engine/model/element~ModelElement an element at given module:engine/model/operation/splitoperation~SplitOperation#splitPosition split position into two elements, both containing a part of the element's original content.

    Hierarchy (View Summary)

    Index

    Constructors

    • Creates a split operation.

      Parameters

      • splitPosition: ModelPosition

        Position at which an element should be split.

      • howMany: number

        Total offset size of elements that are in the split element after position.

      • insertionPosition: ModelPosition

        Position at which the clone of split element (or element from graveyard) will be inserted.

      • graveyardPosition: ModelPosition

        Position in the graveyard root before the element which should be used as a parent of the nodes after position. If it is not set, a copy of the the position parent will be used.

      • baseVersion: number

        Document module:engine/model/document~ModelDocument#version on which operation can be applied or null if the operation operates on detached (non-document) tree.

      Returns SplitOperation

    Properties

    baseVersion: number

    module:engine/model/document~ModelDocument#version on which operation can be applied. If you try to module:engine/model/model~Model#applyOperation apply operation with different base version than the module:engine/model/document~ModelDocument#version document version the module:utils/ckeditorerror~CKEditorError model-document-applyOperation-wrong-version error is thrown.

    batch: Batch

    module:engine/model/batch~Batch Batch to which the operation is added or null if the operation is not added to any batch yet.

    Note, that a #isDocumentOperation non-document operation has this property always set to null, and is never added to any batch.

    graveyardPosition: ModelPosition

    Position in the graveyard root before the element which should be used as a parent of the nodes after position. If it is not set, a copy of the the position parent will be used.

    The default behavior is to clone the split element. Element from graveyard is used during undo.

    howMany: number

    Total offset size of elements that are in the split element after position.

    insertionPosition: ModelPosition

    Position at which the clone of split element (or element from graveyard) will be inserted.

    isDocumentOperation: boolean

    Defines whether operation is executed on attached or detached module:engine/model/item~ModelItem items.

    splitPosition: ModelPosition

    Position at which an element should be split.

    Accessors

    • get affectedSelectable(): ModelSelectable

      A selectable that will be affected by the operation after it is executed.

      The exact returned parameter differs between operation types.

      Returns ModelSelectable

    • get movedRange(): ModelRange

      Artificial range that contains all the nodes from the split element that will be moved to the new element. The range starts at #splitPosition and ends in the same parent, at POSITIVE_INFINITY offset.

      Returns ModelRange

    • get moveTargetPosition(): ModelPosition

      Position inside the new clone of a split element.

      This is a position where nodes that are after the split position will be moved to.

      Returns ModelPosition

    • get type(): "split"

      Operation type.

      Returns "split"

    • get className(): string

      Name of the operation class used for serialization.

      Returns string

    Methods

    • Internal

      Executes the operation - modifications described by the operation properties will be applied to the model tree.

      Returns void

    • Internal

      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

    • Creates and returns an operation that has the same parameters as this operation.

      Returns SplitOperation

      Clone of this operation.

    • See module:engine/model/operation/operation~Operation#getReversed Operation#getReversed().

      Returns Operation

    • Custom toJSON method to solve child-parent circular dependencies.

      Returns unknown

      Clone of this object with the operation property replaced with string.

    • Creates SplitOperation object from deserialized object, i.e. from parsed JSON string.

      Parameters

      • json: any

        Deserialized JSON object.

      • document: ModelDocument

        Document on which this operation will be applied.

      Returns SplitOperation

    • Helper function that returns a default insertion position basing on given splitPosition. The default insertion position is after the split element.

      Parameters

      Returns ModelPosition