Documentation

@kanunilabs/datagrid-react


@kanunilabs/datagrid-react / GridStateStore

Class: GridStateStore

Defined in: datagrid-core/dist/index.d.ts:6491

Constructors

Constructor

new GridStateStore(options?): GridStateStore

Defined in: datagrid-core/dist/index.d.ts:6507

Parameters

options?

GridStateStoreOptions

Returns

GridStateStore

Methods

applyState()

applyState(state): void

Defined in: datagrid-core/dist/index.d.ts:6572

Replace the whole interaction state in ONE notification (view restore).

Parameters

state

GridInteractionState

Returns

void


clampPage()

clampPage(pageCount): number

Defined in: datagrid-core/dist/index.d.ts:6564

Pull the page back inside a shrunken result, WITHOUT notifying.

Called from inside a recompute that is about to publish anyway, so a notification here would only cost a second pass. Returns the page to slice with. Clamping (rather than resetting to 0) is what a user deleting one row on page 7 expects — they stay where they were unless that page is gone.

Parameters

pageCount

number

Returns

number


clearColumnFilters()

clearColumnFilters(): void

Defined in: datagrid-core/dist/index.d.ts:6542

Returns

void


clearSort()

clearSort(): void

Defined in: datagrid-core/dist/index.d.ts:6522

Returns

void


collapsedSet()

collapsedSet(): ReadonlySet<string>

Defined in: datagrid-core/dist/index.d.ts:6514

Collapsed group keys as a set — O(1) membership, built once per change.

Returns

ReadonlySet<string>


effectiveFilter()

effectiveFilter(): FilterNode | null

Defined in: datagrid-core/dist/index.d.ts:6544

Programmatic filter AND every column filter — what the pipeline runs.

Returns

FilterNode | null


expandedSet()

expandedSet(): ReadonlySet<RowKey>

Defined in: datagrid-core/dist/index.d.ts:6516

Row keys with an open detail panel, as a set.

Returns

ReadonlySet<RowKey>


getColumnFilter()

getColumnFilter(columnId, part?): FilterNode | null

Defined in: datagrid-core/dist/index.d.ts:6541

The effective filter for a column, or one part of it.

Parameters

columnId

string

part?

string

Returns

FilterNode | null


getState()

getState(): GridInteractionState

Defined in: datagrid-core/dist/index.d.ts:6508

Returns

GridInteractionState


getVersion()

getVersion(): number

Defined in: datagrid-core/dist/index.d.ts:6509

Returns

number


isDetailExpanded()

isDetailExpanded(rowKey): boolean

Defined in: datagrid-core/dist/index.d.ts:6551

Parameters

rowKey

RowKey

Returns

boolean


isGroupCollapsed()

isGroupCollapsed(key): boolean

Defined in: datagrid-core/dist/index.d.ts:6548

Parameters

key

string

Returns

boolean


reset()

reset(): void

Defined in: datagrid-core/dist/index.d.ts:6573

Returns

void


resetPage()

resetPage(): void

Defined in: datagrid-core/dist/index.d.ts:6570

Reset to the first page. Called whenever the row set changes (filter, search, grouping): staying on page 12 of a result that now has 3 pages is the classic "my grid went blank after filtering" bug.

Returns

void


setCollapsedGroups()

setCollapsedGroups(keys): void

Defined in: datagrid-core/dist/index.d.ts:6550

Parameters

keys

readonly string[]

Returns

void


setColumnFilter()

setColumnFilter(columnId, node, part?): void

Defined in: datagrid-core/dist/index.d.ts:6539

Set (or clear, with null) one column's UI filter.

part names the surface it came from (P3.7). Two parts on one column are ANDed; omitting it REPLACES the column's filter outright, which is what a programmatic caller and a "clear this column" gesture mean.

Parameters

columnId

string

node

FilterNode | null

part?

string

Returns

void


setExpandedDetails()

setExpandedDetails(keys): void

Defined in: datagrid-core/dist/index.d.ts:6553

Parameters

keys

readonly RowKey[]

Returns

void


setFilter()

setFilter(filter): void

Defined in: datagrid-core/dist/index.d.ts:6523

Parameters

filter

FilterNode | null

Returns

void


setFilterEnabled()

setFilterEnabled(enabled): void

Defined in: datagrid-core/dist/index.d.ts:6531

Apply or suspend the filter without touching its conditions.

Re-enabling has to put the user back exactly where they were, so nothing is cleared here — effectiveFilter() still reports the conditions, and the controller decides whether to run them.

Parameters

enabled

boolean

Returns

void


setGroupBy()

setGroupBy(groupBy): boolean

Defined in: datagrid-core/dist/index.d.ts:6547

Accepts a single column, a level list, or null/[] to ungroup.

Parameters

groupBy

string | readonly string[] | null

Returns

boolean


setPage()

setPage(page): void

Defined in: datagrid-core/dist/index.d.ts:6554

Parameters

page

number

Returns

void


setPageSize()

setPageSize(pageSize): void

Defined in: datagrid-core/dist/index.d.ts:6555

Parameters

pageSize

number

Returns

void


setSearchText()

setSearchText(searchText): void

Defined in: datagrid-core/dist/index.d.ts:6545

Parameters

searchText

string

Returns

void


setSort()

setSort(sort): void

Defined in: datagrid-core/dist/index.d.ts:6521

Parameters

sort

SortDescriptor[]

Returns

void


subscribe()

subscribe(listener): () => void

Defined in: datagrid-core/dist/index.d.ts:6510

Parameters

listener

Listener

Returns

() => void


toggleDetail()

toggleDetail(rowKey): void

Defined in: datagrid-core/dist/index.d.ts:6552

Parameters

rowKey

RowKey

Returns

void


toggleGroup()

toggleGroup(key): void

Defined in: datagrid-core/dist/index.d.ts:6549

Parameters

key

string

Returns

void


toggleSort()

toggleSort(columnId, additive?): void

Defined in: datagrid-core/dist/index.d.ts:6520

Toggle a column's sort: none → asc → desc → none. Respects multiSort.

Parameters

columnId

string

additive?

boolean

Returns

void