Documentation

@kanunilabs/datagrid-enterprise


@kanunilabs/datagrid-enterprise / EditingLayer

Interface: EditingLayer<TRow>

Type Parameters

TRow

TRow = GridRowData

Properties

engine

engine: EditingEngine<TRow>


rangeEnabled

rangeEnabled: boolean

True when ranges are on — the wrapper wires pointer slots and stats.

Methods

addRow()

addRow(values?, beforeKey?): RowKey | null

Parameters

values?

Record<string, unknown>

beforeKey?

RowKey

Returns

RowKey | null


beginRowEdit()

beginRowEdit(rowKey): boolean

Parameters

rowKey

RowKey

Returns

boolean


cancelChanges()

cancelChanges(): void

Returns

void


cancelRowEdit()

cancelRowEdit(): void

Returns

void


cut()

cut(target?): boolean

Cut one cell (or the range holding it) — the row menu's entry (E5).

Parameters

target?

{ columnId: string; rowKey: RowKey; } | null

Returns

boolean


deleteRow()

deleteRow(rowKey): boolean

Parameters

rowKey

RowKey

Returns

boolean


dispose()

dispose(): void

Returns

void


getCellClassName()

getCellClassName(ctx): string | undefined

Parameters

ctx

CellSlotContext<TRow>

Returns

string | undefined


getRangeBounds()

getRangeBounds(): { maxColumn: number; maxRow: number; minColumn: number; minRow: number; } | null

The range rectangle in VIEW coordinates, or null — the chart panel seeds its columns from it (E5), like the React cell menu.

Returns

{ maxColumn: number; maxRow: number; minColumn: number; minRow: number; } | null


getSelectionStats()

getSelectionStats(): SelectionStats | null

Totals for the current range, or null when nothing is selected.

Returns

SelectionStats | null


handleKeyDown()

handleKeyDown(event): boolean

Capture-phase keyboard. True = consumed.

Parameters

event

KeyboardEvent

Returns

boolean


onCellDoubleClick()

onCellDoubleClick(ctx): void

Parameters

ctx

CellSlotContext<TRow>

Returns

void


onCellPointerDown()

onCellPointerDown(ctx, event): void

Range drag + fill handle (E4) — the Community pointer slots.

Parameters

ctx

CellSlotContext<TRow>

event

MouseEvent

Returns

void


onCellPointerEnter()

onCellPointerEnter(ctx, event): void

Parameters

ctx

CellSlotContext<TRow>

event

MouseEvent

Returns

void


onMouseUp()

onMouseUp(): void

The wrapper's mouseup — finishes a range drag or commits a fill.

Returns

void


paste()

paste(): Promise<void>

Paste the clipboard at the focus — the row menu's entry (E5).

Returns

Promise<void>


renderCellContent()

renderCellContent(ctx): string | Node | undefined

Parameters

ctx

CellSlotContext<TRow>

Returns

string | Node | undefined


renderEditForm()

renderEditForm(rowKey, row): string | Node | undefined

The in-grid form body (mode: 'form') — the Community renderEditForm slot.

Parameters

rowKey

RowKey

row

TRow | undefined

Returns

string | Node | undefined


renderRangeStats()

renderRangeStats(): HTMLElement | null

The stats strip's DOM, repainted in place — the status bar's slot.

Returns

HTMLElement | null


saveChanges()

saveChanges(): Promise<void>

Returns

Promise<void>


saveRowEdit()

saveRowEdit(): Promise<boolean>

Returns

Promise<boolean>