API REFERENCE
Feature manuals
Explore each feature's purpose, setup sequence, and combinations.
Column configuration and values
- Column sizing and pinning
Width, order, pinning, and visibility are independent column states. Combine them to pin order IDs, hide supporting information, and widen long product names.
- Multi-level headers
Multi-level headers place related columns under a shared heading. Unlike row grouping, they do not change data counts or aggregate values.
- Live column API
Live column objects are references connected to the current Grid. They differ from serializable column-state arrays: references suit UI controls for individual columns, while state arrays suit saved preferences.
- Separate calculation and display
valueGetter produces a calculated value, while valueFormatter produces readable display text. Return numbers from getters when totals, sorting, or comparisons require numeric values.
Rows and data models
- Data updates
Replace rowData when receiving a complete query result. For partial changes, pass add, update, and remove to applyTransaction. Updates match through getRowId, not display positions.
- Request only needed blocks
When downloading every order at once is impractical, request only the ranges needed for scrolling. datasource supplies data based on starting and ending rows and search conditions.
- Sort and search on the server
Server queries send row ranges, sorting, and filtering together as conditions. Use the Infinite model for simple lists and consider the Server-Side model for server grouping and pivoting.
- Server-side row model
In this model, the server calculates grouping and pivots and supplies rows for each expanded group path. Its data responsibilities differ from grouping already loaded local rows with groupBy.
- Stream the visible range
This suits price feeds and monitoring views where the total count is known but only visible rows need continuous updates. Adjusting the subscription to the scroll range is essential.
- Row height and pinned rows
Row height, top/bottom pinned rows, full-width rows, and merged cells are separate layout features. Choose based on whether you need persistent summaries or wide detail content.
- Row dragging
Managed row dragging applies user-defined order to Grid data. Manual reordering can conflict with display order determined by sorting.
- Page navigation
Pagination controls the number of displayed rows and the current page position. Total data size and page size are separate settings.
- Row indices and data IDs
Row numbers help users read display order, while order IDs identify business data. Decide whether numbers stay attached to rows after sorting or are reassigned to the current display order.
Sorting and search
- Single and multiple sorting
Sorting changes display order without modifying data values. Single sorting uses one criterion; multiple sorting uses prioritized criteria.
- Conditions for each column
Column filters apply conditions to individual columns. Text, numbers, and dates use different inputs and comparisons; conditions across columns narrow results together.
- Search across columns
Quick search looks for text across searchable columns without specifying a column. It is a useful starting point when users do not know whether a term is a product name or a region.
- Filter by business conditions
Connect business conditions outside the Grid through a row predicate. Use this when external UI choices, such as incomplete items or items assigned to you, control the table.
- Choose values from a list
This filter lets users choose from distinct, recurring values such as regions or statuses. It presents the available choices more clearly than a Text filter that matches part of a name.
- Combine multiple filters
Combine multiple filters, such as text search and a value list, within one column. This differs from enabling separate filters on different columns.
- Condition trees
Combine conditions across columns in an AND/OR tree to express business rules, such as large APAC orders or orders for a particular product.
- Find cell content
Find highlights matching cells and moves between results without reducing the row list. Use it when users need to keep reading surrounding rows.
Selection and clipboard
- Row selection
Row selection chooses targets for bulk actions such as approval, export, or assignment. Unlike cell range selection, it selects an entire order.
- Cell range selection
A cell range is a rectangle spanning rows and columns. It defines the scope for copying, pasting, filling, and chart creation; selecting it does not change values.
- Fill values
The fill handle copies values or extends a pattern from a source range. Both the drag UI and fillRange API account for editability, validation, and history.
- Copy cells
Copy one cell's display text to the system clipboard. Selected text inside a cell editor and a focused Grid cell are different copy targets.
- Copy rows
Copy a row's displayed columns as tab-separated text. Spreadsheet apps paste each column into a separate cell, making it useful for transferring several values from one order.
- Copy and paste ranges
Copy values from a rectangular range and paste them in the same row and column arrangement. Targets are determined from the starting cell and remain subject to editability, permissions, and validation.
Editing and validation
- Cell and row editing
Cell editing changes one value immediately; full-row editing commits multiple fields as one row operation. editor specifies the input UI, while editable controls write access.
- Batch editing
Batch editing stages changes to multiple cells for a single commit or cancellation. Distinguish staged values from committed rowData to make the Save action clear.
- Searchable selection editor
This Pro editor narrows a large candidate list through search. Basic Select suits short, fixed lists; Rich Select helps users quickly find an item among many candidates.
- Edit history
Undo or redo recorded editing transactions. One operation may contain multiple cell changes, so cell counts and history counts are not necessarily equal.
- Data validation
Use declarative rules to check required values, numeric ranges, string formats, and custom conditions. The default mode may only mark invalid values, so explicitly set invalidEditMode to block saving when required.
- Cell notes
Cell notes add review context or explanations without changing the value. Standalone notes and collaboration comment threads use different storage and APIs, so choose the appropriate workflow first.
Grouping, analysis, and formulas
- Grouping and aggregation
Row grouping collects source rows with the same region or team into expandable groups. Unlike column groups, which organize headers, row groups change displayed rows and aggregation results.
- Pivot analysis
Pivoting divides source orders into row, column, and value axes to create a cross-tabulation. Unlike collapsible row groups, unique values such as statuses become new result columns.
- Tree data
Trees display parent-child data, such as folders or organizations, with indentation and expansion controls. Unlike grouping equal values, the parent relationship already exists in the data.
- Row details
Master/detail expands an order to show its line items or shipping history. The parent row is a summary, and a full-width panel beneath it holds details.
- Formula calculation
Formulas evaluate strings beginning with = and display the result in a cell. For example, =SUM(A1:A3) references the first column in the original column definitions and the first three source rows.
- Chart selected data
Connect a Grid range to a chart to view the same data as both a table and a graph. Select category and value columns appropriate to the chart type, rather than simply selecting numeric values.
Appearance and view state
- Customize cell appearance
Cell renderers change how data is displayed. Use them for status badges, links, and action buttons while retaining the original values for sorting and filtering.
- Cell tooltips
Tooltips help users briefly inspect truncated names or long descriptions. Do not hide essential errors or guidance exclusively inside tooltips.
- Conditional formatting
Conditional formatting changes visual properties such as background and text color based on a value's meaning. Use it to identify low stock or exceeded targets without changing source values or validation results.
- Highlight changes
Cell change flashing briefly highlights cells changed by editing, pasting, or data transactions. It helps users locate recent changes in tables with many live prices or quantities.
- Follow rows
Row hover highlights the row under the pointer to help users read wide tables. It differs from row selection and does not automatically select a row for business operations.
- Loading and empty results
Loading and empty-data messages explain why the table has no visible content. Pending requests, no results, and failures are distinct states and should not share one empty screen.
Menus and tool panels
- Cell context menus
A cell's context menu offers actions such as Copy, Copy row, and Export for the current location. Also provide toolbar or keyboard access to frequently used features.
- Column menu
Column menus place sorting, filtering, and visibility controls near the current column. Keep them distinct from row actions in cell context menus and whole-column-list management in tool panels.
- Tool panel
Tool panels collect cross-column tasks such as visibility and filter settings. They separate data space from settings space and open only when needed.
- Status and aggregates
The status bar briefly summarizes results such as row counts or range calculations. It helps users understand the visible scope rather than editing data.
File import and export
- Import CSV
CSV import converts delimited text into new columns and rows. Unlike a transaction that appends rows, importCsvText replaces columnDefs and rowData.
- Excel import
XLSX import reads a workbook and converts the selected sheet into a Grid column-and-row snapshot. The full parsed workbook and the display snapshot are different data.
- CSV export
CSV export creates a text file for exchanging table data with other tools. It does not preserve cell colors, column widths, detail panels, or other visual layout.
- Excel export
Excel export generates XLSX bytes or downloads a file. This Pro feature suits exchanges requiring sheet names and workbook format beyond CSV.
- PDF export
PDF export fixes the table into a shareable document. Choose CSV or XLSX for further calculation in other apps, and PDF for reading and distribution.
App integration and performance
- Real-time collaboration
Collaboration shares edits, cursors, and presence among users in the same room. A room name alone does not automatically connect devices over the internet.
- View change history
The audit log tracks row, cell, and selection changes and undo/redo transitions. Use it to inspect change history that current values alone cannot reveal.
- Cell access control
Cell read and edit policies restrict visible and editable values according to user roles. Hiding a column is different from enforcing data access.
- Data snapshot
Snapshots retain rowData at a point in time for comparison with current data or another snapshot. They differ from view-state APIs that save column widths, filters, and focus.
- Large data sets
Virtualization renders only row and column DOM needed near the viewport. It is separate from row models that fetch only part of the data from a server.
- Choose a processing engine
Pro engines accelerate supported sorting, filtering, and aggregation. The actual execution path depends on the browser, package, license, and current feature combination.
- JavaScript processing engine
The JavaScript engine is the standard browser execution path for sorting, filtering, and processing table data. Use it as a straightforward starting point for checking deployment environments and feature combinations.
- Default logo display
The default logo appears in dedicated space beneath Grid, including Community. It occupies layout space as part of the table rather than overlaying data as a watermark.