@theredhead — Frontend Library - v1.0.0
    Preparing search index...

    Class FilterableArrayDatasource<T>

    Public ui-kit filterable datasource that accepts the serializable FilterExpression emitted by UIFilter.

    The compiled predicate form remains an internal implementation detail. This wrapper infers filter field metadata from the first row and compiles the descriptor before delegating to the foundation datasource.

    Type Parameters

    • T = unknown

      The row object type.

    Hierarchy (View Summary)

    Implements

    Index

    Constructors

    Properties

    noteRowChanged: Emitter<RowChangedNotification> = ...

    Fires when a specific row has changed. The event includes the index of the changed row.

    noteRowRangeChanged: Emitter<RowRangeChangedNotification> = ...

    Fires when a range of rows has changed. The event includes the definition of the changed range.

    rows: T[]

    Accessors

    • get allRows(): readonly T[]

      Full unfiltered rows, retained for field inference and reset.

      Returns readonly T[]

    Methods

    • Clears any active filter and restores all rows.

      Returns void

    • Applies a serializable filter descriptor to the datasource.

      Pass null, undefined, or an empty rule list to clear the filter.

      Parameters

      Returns void

    • Returns the row object at the given index.

      Parameters

      • rowIndex: number

        Zero-based index of the row to retrieve.

      Returns T

      The row value, or a Promise that resolves to it.

    • Inserts item at index, shifting subsequent items to the right.

      After this call, getNumberOfItems() must return one more than before, and getObjectAtRowIndex(index) must return the inserted item.

      Parameters

      • index: number

        The zero-based position at which to insert.

      • item: T

        The item to insert.

      Returns void

    • Moves the item at fromIndex to toIndex, shifting other items to accommodate.

      After this call, subsequent calls to getObjectAtRowIndex() and getNumberOfItems() must reflect the new order.

      Parameters

      • fromIndex: number

        The current zero-based index of the item to move.

      • toIndex: number

        The desired zero-based index for the item.

      Returns void

    • Notifies consumers that all visible data should be considered stale. Call this after bulk mutations that affect many rows.

      Returns void

    • Notifies consumers that the row at the given index has been externally mutated (e.g. property values changed in-place).

      Call this after directly modifying a row object so that any listening UI (such as a table view) can re-read the data.

      Parameters

      • rowIndex: number

        Zero-based index of the changed row.

      Returns void

    • Removes and returns the item at index, shifting subsequent items to the left.

      After this call, getNumberOfItems() must return one fewer than before.

      Parameters

      • index: number

        The zero-based position of the item to remove.

      Returns T

      The removed item.