json-joy
    Preparing search index...

    Class ArrApi<N>

    Local changes API for the arr JSON CRDT node ArrNode. This API allows to insert and delete elements in the array by referencing their local index.

    Type Parameters

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    api: ModelApi<any>
    node: N

    Accessors

    • get events(): NodeEvents<N>

      Event target for listening to node changes. You can subscribe to "view" events, which are triggered every time the node's view changes.

      node.events.on('view', () => {
      // do something...
      });

      Returns NodeEvents<N>

    • get s(): ProxyNodeArr<N>

      Returns a proxy object that allows to access array elements by index.

      Returns ProxyNodeArr<N>

      Proxy object that allows to access array elements by index.

    Methods

    • Returns the API object of the extension if the node is an extension node. When the ext parameter is provided, it checks if the node is an instance of the given extension and returns the object's TypeScript type. Otherwise, it returns the API object of the extension, but without any type checking.

      Returns undefined | ExtApi<any> | JsonNodeApi<VecNodeExtensionData<N>>

      API of the extension

    • Returns the API object of the extension if the node is an extension node. When the ext parameter is provided, it checks if the node is an instance of the given extension and returns the object's TypeScript type. Otherwise, it returns the API object of the extension, but without any type checking.

      Type Parameters

      • EN extends ExtNode<any, any>
      • EApi extends ExtApi<EN>

      Parameters

      • ext: Extension<any, any, EN, EApi, any, any>

        Extension of the node

      Returns EApi

      API of the extension

    • Deletes a range of elements at a given position.

      Parameters

      • index: number

        Position at which to delete elements.

      • length: number

        Number of elements to delete.

      Returns void

      Reference to itself.

    • Get API instance of a child node.

      Parameters

      • index: number

        Index of the element to get.

      Returns JsonNodeApi<UnArrNode<N>>

      Child node API for the element at the given index.

    • Find a child node at the given path starting from this node and wrap it in a local changes API.

      Parameters

      • Optionalpath: ApiPath

        Path to the child node to find.

      Returns ValApi<ValNode<any>>

      Local changes API for the child node at the given path.

    • Updates (overwrites) an element at a given position.

      Parameters

      • index: number

        Position at which to update the element.

      • value: JsonNodeView<N>[number]

        Value or schema of the element to replace with.

      Returns void