Documentation

@kanunilabs/pivotgrid-react-enterprise


@kanunilabs/pivotgrid-react-enterprise / EnterprisePivotGridProps

Interface: EnterprisePivotGridProps<TRow>

Extends

  • Omit<BasePivotGridProps<TRow>, "data">

Type Parameters

TRow

TRow

Properties

advancedExport?

optional advancedExport?: boolean

Enables the Enterprise-only styled Excel & PDF export items in the footer. Set by EnterprisePivotGrid; in the Community build those items render locked.

Inherited from

Omit.advancedExport


asyncTransactionWait?

optional asyncTransactionWait?: number

How long ref.applyTransactionAsync collects transactions before applying them together. Default 50 ms.

Inherited from

Omit.asyncTransactionWait


chartIntegrationOptions?

optional chartIntegrationOptions?: PivotChartIntegrationOptions & object

Configuration for chart synchronization.

Type Declaration

chartType?

optional chartType?: string

Inherited from

Omit.chartIntegrationOptions


customContextMenuItems?

optional customContextMenuItems?: (field) => object[]

Customize the context menu items for a specific field.

Parameters

field

PivotField<TRow>

Returns

object[]

Inherited from

Omit.customContextMenuItems


data?

optional data?: TRow[]

The rows to pivot. Optional with serverSource, which reads none.


defaultColumnWidths?

optional defaultColumnWidths?: PivotColumnWidthDefaults

Starting widths in pixels: { rowHeader, data } for every row-header column and every data column. Defaults 150 and 95. A width the user drags (or ref.setColumnWidths writes) still wins; see PivotControllerState.columnWidths for its keys.

Inherited from

Omit.defaultColumnWidths


density?

optional density?: PivotDensity

Row rhythm: 'compact' (24px rows, one size smaller type), 'normal' (28px, the default) or 'comfortable' (36px). Changing it repaints in place, without re-running the pivot engine.

Inherited from

Omit.density


dictionary?

optional dictionary?: Partial<PivotDictionary>

Dictionary for localized strings (i18n).

Inherited from

Omit.dictionary


disabled?

optional disabled?: boolean

Disables all interactive features (drag & drop, expand/collapse, context menu, filtering, etc.)

Inherited from

Omit.disabled


fields?

optional fields?: PivotField<TRow>[]

Controlled field configuration. If provided, component acts as controlled.

Inherited from

Omit.fields


gridId?

optional gridId?: string

Optional identifier for the grid instance. Used for report storing and caching.

Inherited from

Omit.gridId


initialFields?

optional initialFields?: PivotField<TRow>[]

Initial field configuration (Uncontrolled mode).

Inherited from

Omit.initialFields


keyboardNavigation?

optional keyboardNavigation?: object

Configuration for keyboard navigation and accessibility.

enabled

enabled: boolean

Inherited from

Omit.keyboardNavigation


layout?

optional layout?: PivotLayoutState

Controlled layout configuration.

Inherited from

Omit.layout


licenseKey?

optional licenseKey?: string

Enterprise license key (KLAB1....). May also be set globally once via LicenseManager.setLicenseKey(). Without a valid license the grid still renders, but an "Unlicensed" watermark is shown and a console notice logged.


licenseValidateUrl?

optional licenseValidateUrl?: string

Optional URL of a revocation endpoint you host (POST { key }). KanuniLabs does not run one, so leave it unset unless you do. When set, a key that already passed offline verification is additionally checked there. Fail-open: a network error keeps the offline result, so a flaky connection never breaks a paying customer. The answer is not signed — point this only at a server you control, over HTTPS.


locale?

optional locale?: PivotLocale

Interface language: 'en', 'tr', 'ar', 'de', 'fr', 'es', 'it', 'pt', 'ru', 'zh-CN', 'ja' or 'ko'. Defaults to 'en'. Also sets the number formatting, and right-to-left for 'ar' (see rtl).

Inherited from

Omit.locale


onAfterPivotCalculate?

optional onAfterPivotCalculate?: (result) => void

Fired after the Pivot matrix compute cycle completes successfully.

Parameters

result

PivotEngineResult

Returns

void

Inherited from

Omit.onAfterPivotCalculate


onBeforePivotCalculate?

optional onBeforePivotCalculate?: () => void

Fired immediately before the Pivot matrix compute cycle begins.

Returns

void

Inherited from

Omit.onBeforePivotCalculate


onCellClick?

optional onCellClick?: (e) => void

Fired when any cell is clicked (data cells, row headers, grand totals). Replaces the deprecated onDrillDown handler. This is the single source of truth for cell interactions.

Parameters

e

CellClickEvent<TRow>

Returns

void

Inherited from

Omit.onCellClick


onCellPrepared?

optional onCellPrepared?: (e) => void

Fired after a cell is prepared to allow modifications.

Parameters

e

CellPreparedEvent<TRow>

Returns

void

Inherited from

Omit.onCellPrepared


onChartStateLoaded?

optional onChartStateLoaded?: (chartState) => void

Callback to receive loaded chart state.

Parameters

chartState

PivotChartIntegrationOptions & object

Returns

void

Inherited from

Omit.onChartStateLoaded


onChartSync?

optional onChartSync?: (syncResult) => void

Callback to receive chart integration payload.

Parameters

syncResult

ChartSyncResult

Returns

void

Inherited from

Omit.onChartSync


onError?

optional onError?: (error) => void

Fired when a critical engine error occurs.

Parameters

error

Error

Returns

void

Inherited from

Omit.onError


onExporting?

optional onExporting?: (e) => void

Fired when an export action is initiated. Can be canceled.

Parameters

e

ExportingEvent

Returns

void

Inherited from

Omit.onExporting


onFieldMove?

optional onFieldMove?: (e) => void | Promise<void>

Fired when a field is moved within the PivotGrid (drag & drop). Provides a validate/cancel hybrid model. If it returns a Promise, the component awaits validation before committing the DND state.

Parameters

e

FieldMoveEvent

Returns

void | Promise<void>

Inherited from

Omit.onFieldMove


onFieldsChange?

optional onFieldsChange?: (fields) => void

Fired when fields configuration changes.

Parameters

fields

PivotField<TRow>[]

Returns

void

Inherited from

Omit.onFieldsChange


onImportData?

optional onImportData?: (data) => void

Callback fired when data is imported via the UI.

Parameters

data

TRow[]

Returns

void

Inherited from

Omit.onImportData


onLayoutChange?

optional onLayoutChange?: (layout) => void

Fired when layout options change.

Parameters

layout

PivotLayoutState

Returns

void

Inherited from

Omit.onLayoutChange


onOpenFullScreenChart?

optional onOpenFullScreenChart?: () => void

Returns

void

Deprecated

NEVER FIRES. Declared, never destructured, never called — there is no code path that reaches it, and there never was. The doc comment here used to read "fired when the full screen chart icon is clicked", which is the reason it survived: it looked implemented in the API reference. Use chartIntegrationOptions instead. Removed in the next major.

Inherited from

Omit.onOpenFullScreenChart


onRefresh?

optional onRefresh?: () => void

Callback fired when the refresh button is clicked.

Returns

void

Inherited from

Omit.onRefresh


onToggleChart?

optional onToggleChart?: () => void

Callback fired when chart toggle is clicked.

Returns

void

Inherited from

Omit.onToggleChart


previewImport?

optional previewImport?: boolean

When true, UI imports open a preview + column-mapping step before applying.

Inherited from

Omit.previewImport


registry?

optional registry?: PivotEngineRegistry

The plugin registry containing custom functions and formatters.

Inherited from

Omit.registry


renderCalculatedFieldModal?

optional renderCalculatedFieldModal?: (props) => ReactNode

Slot for injecting Enterprise Calculated Field Modal

Parameters

props

any

Returns

ReactNode

Inherited from

Omit.renderCalculatedFieldModal


renderNodeContextMenu?

optional renderNodeContextMenu?: (props) => ReactNode

Overrides the built-in node context menu (Community since 2026-08-30); omit to get the default right-click expand/collapse menu

Parameters

props

any

Returns

ReactNode

Inherited from

Omit.renderNodeContextMenu


renderPrefilterBuilder?

optional renderPrefilterBuilder?: (props) => ReactNode

Slot for injecting Enterprise Prefilter Builder

Parameters

props

any

Returns

ReactNode

Inherited from

Omit.renderPrefilterBuilder


rowKey?

optional rowKey?: PivotRowKeyResolver<TRow>

What identifies a row for ref.applyTransaction: a field name, or a function returning a string or number. Without it rows are matched by object identity.

Inherited from

Omit.rowKey


rowSparkline?

optional rowSparkline?: boolean | PivotRowSparkline

A small trend chart in each row's grand-total cell: the row's values for one measure across the columns on screen, in front of the total. true draws the first measure as a line; an object picks the measure, 'bar', and the size. Needs the grand-total column and at least two columns. Registers into the registry you pass, or into one of its own.


rtl?

optional rtl?: boolean

Right-to-Left (RTL) mode. Defaults to false (except for 'ar').

Inherited from

Omit.rtl


serverSource?

optional serverSource?: PivotServerSource

Server-side pivot (Enterprise): the server aggregates; data is not read.

Inherited from

Omit.serverSource


stateStoring?

optional stateStoring?: PivotStateStoringConfig

Configuration for state storing (localStorage, sessionStorage, etc).

Inherited from

Omit.stateStoring


striped?

optional striped?: boolean

Apply zebra striping to the data rows.

Inherited from

Omit.striped


theme?

optional theme?: PivotTheme

Custom theme configuration.

Inherited from

Omit.theme


toolbar?

optional toolbar?: PivotToolbarConfig

Configuration for the toolbar visibility and features.

Inherited from

Omit.toolbar


upgradeUrl?

optional upgradeUrl?: string

URL opened when a Community user clicks a locked Enterprise export item (e.g. your pricing / Enterprise sales page).

Inherited from

Omit.upgradeUrl


workerUrl?

optional workerUrl?: string | URL

Explicit URL for the engine Web Worker script. Required in bundlers that cannot statically resolve the default new URL('./pivot.worker.js', import.meta.url) (e.g. Next.js). Copy the worker from @kanunilabs/pivotgrid-core/dist/pivot.worker.js into a served path and point this at it, e.g. /kanunilabs/pivot.worker.js.

Inherited from

Omit.workerUrl