Skip to content

Pivot Grid Feature List

Status legend:

  • Existing ✅ - implemented now.
  • Partial ☑️ - foundation exists, but product/API/UX work is still needed. — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Planned 🚧 - roadmap item.

1. Data Source

Local data

  • Static array data source
  • Immutable data source support
  • Mutable data source support
  • ☑️ Incremental row updates — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ ☑️ row updates — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Batch row updates — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Append rows — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Remove rows — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Replace rows
  • Data normalization for generated pivot rows/cells
  • ☑️ Data type inference — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Schema inference — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Manual schema definition through dimensions
  • Direct grid.pivot configuration
  • Legacy additionalData.pivot configuration
  • Restore original source, columns, grouping, and pinned rows on clearPivot()
  • Generated pivot row metadata
  • Generated pivot column metadata

Remote data

  • Server-side data source contract
  • ☑️ Lazy loading — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Pagination-aware loading
  • ☑️ Cursor-based loading — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Offset/limit loading
  • 🚧 Streaming data source
  • 🚧 WebSocket data source
  • REST data source through HttpPivotRemoteStore
  • ☑️ GraphQL data source through custom adapter/store — Why partial: foundation exists through custom adapter/store, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Custom data adapter through PivotEngineAdapter
  • Request cancellation
  • ☑️ Retry logic — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Loading state handling
  • Error state handling
  • Stale response guard
  • HTTP auth header provider
  • HTTP request lifecycle hooks
  • In-flight remote request deduplication

Hybrid data

  • ☑️ Client-side cache — Why partial: cache keys/state foundations exist, but full lifecycle, invalidation, and observability are not complete.
  • Server-side aggregation with client rendering
  • Client-side aggregation with remote-style engine adapter
  • ☑️ ☑️ pre-aggregation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • 🚧 Incremental cache refresh
  • 🚧 Optimistic updates
  • 🚧 Offline mode
  • 🚧 Local-first mode

2. Field Model

Field metadata

  • Field name
  • Field label through RevoGrid column name
  • Field type through RevoGrid column/type metadata
  • Field description
  • ☑️ Field category — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Field icon — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Field visibility through hidden dimension metadata and show-hidden field filtering
  • ☑️ Field permissions through remote field registry metadata — Why partial: foundation exists through remote field registry metadata, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Field default format through column config/templates/parsers — Why partial: foundation exists through column config/templates/parsers, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Field default aggregation through value definitions and dimension aggregators
  • Field default sorting through RevoGrid column sort metadata
  • Field default filtering through RevoGrid column filter metadata
  • ☑️ Field nullable flag — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Field unique values provider
  • Field value formatter through cell templates/parsers
  • Field value parser through RevoGrid column parser support
  • Server-side public selector registry
  • Backend expression metadata for field registry
  • Allowed filter operations metadata
  • Allowed summary metadata
  • Allowed group interval metadata
  • Drilldown visibility metadata

Field types

  • Text field
  • Number field
  • ☑️ Integer field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Decimal field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Currency field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Percentage field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Date field
  • ☑️ Date-time field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Time field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Boolean field
  • ☑️ Enum field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Multi-enum field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Object field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Array field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ JSON field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Link field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Image field — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Custom field type through RevoGrid column types

Field categories

  • Dimension fields
  • Measure fields
  • ☑️ Calculated fields — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • Hidden fields through hidden dimension metadata
  • ☑️ System fields — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Technical fields — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ User-defined fields — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

3. Pivot Layout Areas

Rows area

  • Add row dimension
  • Remove row dimension
  • Reorder row dimensions
  • Nested row dimensions
  • Row hierarchy
  • Row group expansion
  • Row group collapse
  • Row group sorting through grid sorting/dimension comparers
  • ☑️ Row group filtering — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • Row group formatting through column templates/parsers
  • Row group custom renderer through grouping label template

Columns area

  • Add column dimension
  • Remove column dimension
  • Reorder column dimensions
  • Nested column dimensions
  • Column hierarchy
  • Column group expansion
  • Column group collapse
  • Column group sorting through dimension comparers
  • ☑️ Column group filtering — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • Column group formatting through templates/placeholders
  • ☑️ Column group custom renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.

Values area

  • Add measure
  • Remove measure
  • Reorder measures
  • Multiple measures
  • Measure grouping in generated columns
  • Measure display on columns
  • Measure display on rows
  • Measure aliases through PivotConfigValue.label/name
  • Measure formatting through column config/templates/parsers
  • Measure custom renderer through RevoGrid cell templates

Filters area

  • Add report filter to configuration/panel
  • Remove report filter from configuration/panel
  • Reorder filters
  • ☑️ Global filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • Field-level filters through RevoGrid filter collection
  • Subtotal and grand-total rows are excluded from filter matching and selection-filter option lists
  • ☑️ Context filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • 🚧 Hidden filters
  • 🚧 Locked filters

4. Row Pivoting

Row grouping

  • Single-level row grouping
  • Multi-level row grouping
  • Nested row groups
  • Hierarchical row grouping
  • Tree-style row grouping through RevoGrid grouping
  • Flat row grouping
  • ☑️ Compact row grouping — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Outline row grouping — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Tabular row grouping — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

Row group behavior

  • Expand row group
  • Collapse row group
  • Expand all row groups through collapsed: false
  • Collapse all row groups through collapsed: true
  • ☑️ Expand to level — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Collapse to level — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Preserve expansion state
  • Initial expansion state
  • 🚧 Lazy group expansion
  • 🚧 Async group expansion

Row group display

  • Group indentation through RevoGrid grouping
  • Group icons through RevoGrid grouping
  • Group labels
  • ☑️ Group counts — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Group summaries through groupAggregations
  • 🚧 Group badges
  • ☑️ Group path display — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Custom group label
  • Empty group label through groupLabels.empty
  • Null group label through groupLabels.null

5. Column Pivoting

Column grouping

  • Single-level column grouping
  • Multi-level column grouping
  • Nested column groups
  • Dynamic pivot columns
  • Generated pivot columns
  • Hierarchical column headers
  • Multi-row column headers
  • Column group headers
  • Column leaf headers

Column group behavior

  • Expand column group
  • Collapse column group
  • Expand all column groups
  • Collapse all column groups
  • ☑️ Expand columns to level — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Collapse columns to level — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Preserve column expansion state
  • 🚧 Lazy column group expansion
  • 🚧 Async column group expansion

Column group display

  • Column group labels
  • ☑️ Column group icons — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Column group summaries through subtotal/grand-total/collapsed buckets
  • ☑️ Column group counts through hidden-count metadata — Why partial: foundation exists through hidden-count metadata, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Column group badges
  • ☑️ Custom column group renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • Empty column group label through groupLabels.empty
  • Null column group label through groupLabels.null
  • Flat column header mode
  • Collapsed column placeholder header/cell templates
  • Collapsed column hidden leaf count metadata

6. Aggregations

Basic aggregations

  • Sum
  • Count
  • ☑️ Count non-empty — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Count empty — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Count distinct through distinct
  • Average
  • Minimum
  • Maximum
  • Median
  • Mode
  • First value
  • Last value
  • Range
  • 🚧 Product

Statistical aggregations

  • Variance
  • ☑️ Sample variance — Why partial: base grid behavior exists, but Pivot-specific grouped rows, generated columns, and totals need dedicated UX/accessibility coverage.
  • Population variance
  • Standard deviation through stdDev
  • ☑️ Sample standard deviation — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Population standard deviation through stdDev
  • 🚧 Percentile
  • 🚧 Quartile
  • 🚧 Interquartile range
  • 🚧 Skewness
  • 🚧 Kurtosis
  • 🚧 Correlation
  • 🚧 Covariance

Financial aggregations

  • 🚧 Weighted average
  • Running total through advanced accSum aggregator
  • Cumulative sum through advanced accSum aggregator
  • 🚧 Year-to-date
  • 🚧 Quarter-to-date
  • 🚧 Month-to-date
  • 🚧 Growth rate
  • ☑️ Percentage change through custom aggregation — Why partial: foundation exists through custom aggregation, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Contribution percentage through advanced %oftotal aggregator
  • ☑️ Margin percentage through custom aggregation — Why partial: foundation exists through custom aggregation, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Compound annual growth rate

Custom aggregations

  • Custom aggregation function
  • ☑️ Multi-field aggregation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Aggregation dependencies — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Aggregation context — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Aggregation metadata — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • 🚧 Aggregation lifecycle hooks
  • 🚧 Async aggregation
  • ☑️ Server-defined aggregation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • User-defined aggregation
  • Streaming accumulator path for common client aggregators
  • Custom collapsed-column aggregation override

7. Calculated Fields

Calculated dimensions

  • ☑️ Formula-based dimension through precomputed/custom source fields — Why partial: foundation exists through precomputed/custom source fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Date-derived dimension through precomputed/custom source fields — Why partial: foundation exists through precomputed/custom source fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Text-derived dimension through precomputed/custom source fields — Why partial: foundation exists through precomputed/custom source fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Bucketed dimension through remote group intervals or precomputed fields — Why partial: foundation exists through remote group intervals or precomputed fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Conditional dimension through precomputed/custom source fields — Why partial: foundation exists through precomputed/custom source fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Lookup-based dimension through precomputed/custom source fields — Why partial: foundation exists through precomputed/custom source fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Custom function dimension through precomputed/custom source fields — Why partial: foundation exists through precomputed/custom source fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Calculated measures

  • ☑️ Formula-based measure through custom aggregation/precomputed fields — Why partial: foundation exists through custom aggregation/precomputed fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Measure-to-measure calculation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Ratio calculation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Percentage calculation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Difference calculation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • 🚧 Difference from previous
  • 🚧 Difference from parent
  • 🚧 Difference from grand total
  • ☑️ Running calculation through accSum — Why partial: foundation exists through accSum, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Window calculation

Formula system

  • 🚧 Formula editor
  • 🚧 Formula validation
  • 🚧 Formula autocomplete
  • 🚧 Formula syntax highlighting
  • 🚧 Formula error display
  • 🚧 Formula dependency tracking
  • 🚧 Safe formula execution
  • 🚧 Custom formula functions
  • 🚧 Formula versioning

8. Totals and Subtotals

Grand totals

  • Row grand total
  • Column grand total
  • Both-axis grand total
  • Enable/disable grand totals
  • 🚧 Grand total position top
  • Grand total position bottom through pinned bottom rows
  • 🚧 Grand total position left
  • Grand total position right as generated total columns
  • Sticky grand total row through pinned bottom rows
  • ☑️ Sticky grand total column — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

Subtotals

  • Row subtotals
  • Column subtotals
  • Per-level subtotals
  • Per-field subtotals through totals.disabledSubtotals
  • Enable/disable subtotals per field through totals.disabledSubtotals
  • 🚧 Subtotal position before children
  • Subtotal position after children
  • Custom subtotal label
  • ☑️ Custom subtotal aggregation — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ Sticky subtotals — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Suppress single-child subtotals
  • Suppress redundant grand total when single leaf

Total formatting

  • Grand total styling
  • Subtotal styling
  • Total row custom renderer through row column templates
  • Total column custom renderer through value column templates
  • Total value formatter through column templates/parsers
  • Total label formatter through label templates/config labels
  • Total cells readonly behavior

9. Filtering

Basic filters

  • Equals
  • Not equals
  • Contains
  • Not contains
  • Starts with
  • Ends with
  • ☑️ Is empty — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Is not empty — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Is null — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Is not null — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • In list
  • Not in list

Number filters

  • Greater than
  • Greater than or equal
  • Less than
  • Less than or equal
  • Between through slider range mapping
  • ☑️ Not between — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Positive — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Negative — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Zero — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Top N
  • 🚧 Bottom N
  • 🚧 Above average
  • 🚧 Below average

Date filters

  • ☑️ Date equals — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Date before — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Date after — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Date between — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Today
  • 🚧 Yesterday
  • 🚧 Tomorrow
  • 🚧 This week
  • 🚧 Last week
  • 🚧 Next week
  • 🚧 This month
  • 🚧 Last month
  • 🚧 Next month
  • 🚧 This quarter
  • 🚧 Last quarter
  • 🚧 This year
  • 🚧 Last year
  • 🚧 Year-to-date
  • 🚧 Rolling period

Pivot-specific filters

  • ☑️ Pre-aggregation filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • ☑️ Post-aggregation filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • ☑️ Group filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • ☑️ Measure filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • 🚧 Subtotal filters
  • 🚧 Grand total filters
  • ☑️ Axis filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • ☑️ Context filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • Report filters in layout state/panel
  • 🚧 Hidden filters
  • 🚧 Locked filters

Filter UX

  • Filter popup through RevoGrid filters
  • Filter chips through exported Pivot filter chip helpers
  • ☑️ Filter sidebar — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • Filter search through RevoGrid filters where enabled
  • 🚧 Filter presets
  • 🚧 Filter history
  • Clear filter through RevoGrid filters
  • Clear all filters through RevoGrid filters
  • 🚧 Save filter set
  • 🚧 Restore filter set

10. Sorting

Field sorting

  • Ascending sort
  • Descending sort
  • No sort
  • Multi-field sort in local grid sorting
  • ☑️ Natural sort — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Locale-aware sort — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Case-sensitive sort — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Case-insensitive sort — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • Custom comparator through RevoGrid cellCompare

Pivot sorting

  • Sort row groups by label
  • ☑️ Sort row groups by measure — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Sort row groups by subtotal — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Sort row groups by grand total — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • Sort column groups by label
  • ☑️ Sort column groups by measure — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Sort column groups by subtotal — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Sort column groups by grand total — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • Sort leaf rows
  • Sort leaf columns

Advanced sorting

  • ☑️ Sort by hidden measure — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Sort by calculated field — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Sort by custom order — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • 🚧 Sort by manual order
  • ☑️ Sort by hierarchy order — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • Sort by server-side order
  • Preserve sort after refresh in remote controller state
  • Field-panel sort toggle
  • Remote sort descriptor mapping

11. Grouping Helpers

Date grouping

  • Group by year in remote contract
  • 🚧 Group by half-year
  • Group by quarter in remote contract
  • Group by month in remote contract
  • 🚧 Group by week
  • Group by day in remote contract
  • 🚧 Group by hour
  • 🚧 Group by minute
  • 🚧 Fiscal year grouping
  • 🚧 Fiscal quarter grouping
  • 🚧 Custom calendar grouping
  • Group by day of week in remote contract

Number grouping

  • Fixed interval buckets in remote contract
  • 🚧 Auto buckets
  • ☑️ Custom buckets through precomputed/custom fields — Why partial: foundation exists through precomputed/custom fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Range buckets in remote contract
  • ☑️ Histogram buckets — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Quantile buckets — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Negative/positive buckets — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

Text grouping

  • ☑️ First letter grouping through precomputed/custom fields — Why partial: foundation exists through precomputed/custom fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Prefix grouping through precomputed/custom fields — Why partial: foundation exists through precomputed/custom fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Regex grouping through precomputed/custom fields — Why partial: foundation exists through precomputed/custom fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Custom text buckets through precomputed/custom fields — Why partial: foundation exists through precomputed/custom fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Case-insensitive grouping — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Locale-aware grouping — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

Custom grouping

  • ☑️ Function-based grouping through precomputed/custom fields — Why partial: foundation exists through precomputed/custom fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Lookup-based grouping through precomputed/custom fields — Why partial: foundation exists through precomputed/custom fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Hierarchy-based grouping through row/column dimensions — Why partial: foundation exists through row/column dimensions, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Server-side grouping contract
  • ☑️ User-defined grouping — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

12. Field Panel

Field list

  • Available fields list
  • Field search
  • ☑️ Field categories — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Field icons — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Field descriptions
  • ☑️ Field type badges — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Hidden fields toggle through filterPivotDimensions(..., { showHidden })
  • 🚧 Favorite fields
  • 🚧 Recently used fields

Drag and drop

  • Drag field to rows
  • Drag field to columns
  • Drag field to values
  • Drag field to filters
  • Reorder fields
  • Move field between areas
  • 🚧 Duplicate field
  • Remove field
  • ☑️ Drop validation — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Configurable field dragging
  • Configurable field removing

Field configuration

  • ☑️ Rename field through dimension config — Why partial: foundation exists through dimension config, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Change aggregation
  • ☑️ Change format through dimension config — Why partial: foundation exists through dimension config, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Change sort
  • ☑️ Change filter — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • ☑️ Change display mode — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Change subtotal settings — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Change null handling
  • ☑️ Change permissions through field registry/server policy — Why partial: foundation exists through field registry/server policy, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Open advanced settings
  • Configurable area visibility
  • Localized field panel text

13. Pivot Builder UX

Visual builder

  • Drag-and-drop pivot builder
  • Sidebar builder
  • 🚧 Modal builder
  • ☑️ Inline builder — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Compact builder
  • ☑️ Advanced builder — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Beginner mode
  • 🚧 Expert mode
  • Standalone configurator API
  • Standalone field panel API
  • External configurator mount target

Configuration UX

  • Live preview
  • ☑️ Apply/cancel mode — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Auto-apply mode
  • Reset layout
  • 🚧 Undo layout change
  • 🚧 Redo layout change
  • ☑️ Save configuration through remote store state API — Why partial: foundation exists through remote store state API, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Load configuration through remote store state API — Why partial: foundation exists through remote store state API, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Share configuration
  • Public pivot config update event
  • Preventable config update event flow

Validation UX

  • ☑️ Invalid field warning — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Missing measure warning — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • 🚧 Circular calculated field warning
  • Unsupported server aggregation warning/error
  • Server limitation warning
  • Performance warning

14. Display Modes

Pivot table layouts

  • ☑️ Compact layout — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Outline layout — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Tabular layout — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Flat layout
  • Matrix layout
  • Tree layout through grouped rows
  • ☑️ Excel-like layout — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Minimal layout — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Dense layout — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Comfortable layout — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

Measure display

  • Measures as columns
  • Measures as rows
  • Measures nested under columns
  • Measures nested under rows
  • ☑️ Measures before dimensions through rowTree — Why partial: foundation exists through rowTree, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Measures after dimensions
  • Single measure mode
  • Multi-measure mode
  • Advanced rowTree with $values pseudo-field
  • Row-tree validation

Header display

  • Multi-row headers
  • ☑️ Merged headers — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Repeated labels — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Hidden repeated labels — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Compact headers through flatHeaders
  • Sticky headers through RevoGrid
  • ☑️ Rotated headers — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Wrapped headers — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

15. Cell Rendering

Value rendering

  • Raw value renderer
  • Formatted value renderer
  • ☑️ Currency renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ Percentage renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ Date renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ Boolean renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ Badge renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ Icon renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ Link renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ Image renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.

Analytical rendering

  • ☑️ Data bars through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Sparklines through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Mini line charts through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Mini bar charts through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Mini area charts through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Heatmap cells through custom renderer/cell properties — Why partial: foundation exists through custom renderer/cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Progress bars through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Trend arrows through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ KPI indicators through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Status indicators through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Custom rendering

  • Custom cell renderer
  • Custom header renderer
  • Custom group renderer
  • Custom subtotal renderer
  • Custom grand total renderer
  • Custom empty cell renderer
  • ☑️ Custom loading cell renderer — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • Framework component renderer through RevoGrid wrappers
  • Dimension template/parser propagation to generated columns
  • Total label template bypass for row-axis formatters

16. Formatting

Number formatting

  • Decimal places through Pivot value formatting presets
  • Thousands separator through Pivot value formatting presets
  • Currency symbol through Pivot value formatting presets
  • Currency code through Pivot value formatting presets
  • Percentage format through Pivot value formatting presets
  • ☑️ Scientific notation — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Compact notation — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Negative number format — Why partial: styling hooks exist, but there are no complete Pivot presets, tokens, and documented runtime controls yet.
  • ☑️ Zero display format — Why partial: styling hooks exist, but there are no complete Pivot presets, tokens, and documented runtime controls yet.
  • ☑️ Null display format — Why partial: styling hooks exist, but there are no complete Pivot presets, tokens, and documented runtime controls yet.

Date formatting

  • Short date through Pivot value formatting presets
  • Long date through Pivot value formatting presets
  • Date-time through Pivot value formatting presets
  • ☑️ Time only — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Relative date — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Custom date format — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • Locale-aware date format through Pivot value formatting presets
  • ☑️ Timezone-aware date format — Why partial: styling hooks exist, but there are no complete Pivot presets, tokens, and documented runtime controls yet.

Conditional formatting

  • Value-based formatting through conditional formatting presets
  • Measure-based formatting through conditional formatting presets
  • ☑️ Field-based formatting through cell properties/templates — Why partial: foundation exists through cell properties/templates, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Row-based formatting through cell properties/templates — Why partial: foundation exists through cell properties/templates, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Column-based formatting through cell properties/templates — Why partial: foundation exists through cell properties/templates, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Group-level formatting through group label templates — Why partial: foundation exists through group label templates, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Subtotal formatting
  • Grand total formatting
  • ☑️ Formula-based formatting — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.

17. Conditional Formatting Rules

Rule types

  • Greater than through conditional formatting presets
  • Less than through conditional formatting presets
  • Between through conditional formatting presets
  • Equal to through conditional formatting presets
  • Text contains through conditional formatting presets
  • ☑️ Date occurs through custom cell properties — Why partial: foundation exists through custom cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Duplicate values through custom cell properties — Why partial: foundation exists through custom cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Unique values through custom cell properties — Why partial: foundation exists through custom cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Top N through custom cell properties — Why partial: foundation exists through custom cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Bottom N through custom cell properties — Why partial: foundation exists through custom cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Above average through custom cell properties — Why partial: foundation exists through custom cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Below average through custom cell properties — Why partial: foundation exists through custom cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Formula rule through custom cell properties — Why partial: foundation exists through custom cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Custom function rule through custom cell properties — Why partial: foundation exists through custom cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Visual styles

  • Background color through cell properties
  • Text color through cell properties
  • Font weight through cell properties
  • Border through cell properties
  • ☑️ Icon set through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Data bar through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Color scale through cell properties — Why partial: foundation exists through cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Heatmap through cell properties — Why partial: foundation exists through cell properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Badge through custom renderer — Why partial: foundation exists through custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Tooltip through custom renderer/properties — Why partial: foundation exists through custom renderer/properties, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Cell flash

Rule management

  • 🚧 Add rule
  • 🚧 Edit rule
  • 🚧 Delete rule
  • 🚧 Reorder rules
  • 🚧 Enable/disable rule
  • 🚧 Stop if true
  • 🚧 Apply to selected measure
  • 🚧 Apply to selected field
  • 🚧 Apply to entire pivot

18. Drilldown

Cell drilldown

  • Drill into aggregated cell through PivotDrilldownController
  • Show source rows through PivotDrilldownController
  • Show filtered raw records through PivotDrilldownController
  • 🚧 Show drilldown panel
  • 🚧 Show drilldown modal
  • 🚧 Show drilldown table
  • 🚧 Export drilldown rows
  • 🚧 Copy drilldown rows

Drill path

  • Drill down one level through row/column expand-collapse
  • Drill up one level through row/column expand-collapse
  • ☑️ Drill to leaf records through remote drilldown contract — Why partial: foundation exists through remote drilldown contract, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Drill across dimensions — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Drill through to source system through custom remote store — Why partial: foundation exists through to source system through custom remote store, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Breadcrumb navigation — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Preserve drill state for rows and columns

Drilldown permissions

  • ☑️ Disable drilldown — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Field-level drilldown permission through field registry — Why partial: foundation exists through field registry, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Measure-level drilldown permission — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • Mask sensitive fields through drilldown visible whitelist
  • Server-side drilldown authorization boundary

19. Expand / Collapse

Row expansion

  • Expand row group
  • Collapse row group
  • Expand all rows
  • Collapse all rows
  • Expand selected group
  • Collapse selected group
  • ☑️ Expand to row level — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Collapse to row level — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Lazy expand
  • 🚧 Async expand

Column expansion

  • Expand column group
  • Collapse column group
  • Expand all columns
  • Collapse all columns
  • Expand selected column group
  • Collapse selected column group
  • ☑️ Expand to column level — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Collapse to column level — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Lazy column expand
  • 🚧 Async column expand

Expansion state

  • Save expansion state
  • Restore expansion state
  • Serialize expansion state through pivot config
  • Path-based expansion
  • ☑️ Key-based expansion — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Server-side expansion state — Why partial: remote/server contracts or hooks exist, but the default backend, UI flow, and end-to-end behavior are not fully shipped.
  • Initial expanded paths
  • Initial collapsed paths
  • Persisted column collapsed state map

20. Selection

Cell selection

  • ☑️ Single cell selection through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Multiple cell selection through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Range selection through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Non-contiguous selection through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select visible cells only — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Select raw values — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Select formatted values — Why partial: styling hooks exist, but there are no complete Pivot presets, tokens, and documented runtime controls yet.

Row selection

  • ☑️ Select row group through RevoGrid grouping/selection — Why partial: foundation exists through RevoGrid grouping/selection, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select leaf row through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select subtotal row through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select grand total row through RevoGrid pinned rows — Why partial: foundation exists through RevoGrid pinned rows, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select all visible rows — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Select all source rows behind group
  • ☑️ Checkbox selection through RevoGrid/custom columns — Why partial: foundation exists through RevoGrid/custom columns, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Keyboard row selection through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Column selection

  • ☑️ Select pivot column through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select column group through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select measure column through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select subtotal column through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select grand total column through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Select all visible columns — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Keyboard column selection through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

21. Copy / Paste

Copy

  • ☑️ Copy selected cells through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Copy with row headers through Pivot TSV copy helper
  • Copy with column headers through Pivot TSV copy helper
  • Copy with full pivot headers through Pivot TSV copy helper
  • ☑️ Copy raw values — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Copy formatted values — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • Copy as TSV through Pivot TSV copy helper
  • ☑️ Copy as CSV — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Copy as HTML table — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • 🚧 Copy selected drilldown rows

Paste

  • ☑️ Paste into source data through RevoGrid editing — Why partial: foundation exists through RevoGrid editing, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Paste into editable cells through RevoGrid editing — Why partial: foundation exists through RevoGrid editing, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Paste range through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Paste with validation through RevoGrid/custom validation — Why partial: foundation exists through RevoGrid/custom validation, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Paste with parsing through RevoGrid parsers — Why partial: foundation exists through RevoGrid parsers, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Paste with type conversion through RevoGrid parsers — Why partial: foundation exists through RevoGrid parsers, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Paste conflict handling
  • 🚧 Paste undo support

22. Editing

Source editing

  • ☑️ Edit source cell through RevoGrid editing — Why partial: foundation exists through RevoGrid editing, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Add source row — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Delete source row — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Update source row — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Batch edit rows — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Validate source edit — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Recalculate pivot after edit — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Highlight affected pivot cells

Pivot editing

  • 🚧 Edit aggregated value
  • 🚧 Write-back to source records
  • 🚧 Distribute value change
  • 🚧 Equal distribution
  • 🚧 Proportional distribution
  • 🚧 Custom distribution strategy
  • ☑️ Lock non-editable measures through readonly generated columns/total cells — Why partial: foundation exists through readonly generated columns/total cells, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Edit validation
  • 🚧 Edit audit log

Editing UX

  • ☑️ Inline editor through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Popup editor through RevoGrid/custom editor — Why partial: foundation exists through RevoGrid/custom editor, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Formula editor
  • ☑️ Dropdown editor through RevoGrid/custom editor — Why partial: foundation exists through RevoGrid/custom editor, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Date editor through RevoGrid/custom editor — Why partial: foundation exists through RevoGrid/custom editor, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Number editor through RevoGrid/custom editor — Why partial: foundation exists through RevoGrid/custom editor, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Currency editor through RevoGrid/custom editor — Why partial: foundation exists through RevoGrid/custom editor, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Custom editor through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Commit/cancel edit through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Undo/redo edit

23. Undo / Redo

Layout undo

  • 🚧 Undo field move
  • 🚧 Undo field remove
  • 🚧 Undo field add
  • 🚧 Undo sort change
  • 🚧 Undo filter change
  • 🚧 Undo format change
  • 🚧 Undo layout reset

Data undo

  • 🚧 Undo cell edit
  • 🚧 Undo row insert
  • 🚧 Undo row delete
  • 🚧 Undo paste
  • 🚧 Undo batch update
  • 🚧 Redo all actions

History

  • 🚧 Action history
  • 🚧 Transaction grouping
  • 🚧 Named transactions
  • 🚧 Clear history
  • 🚧 History size limit
  • 🚧 Server-side history integration

24. Export

CSV export

  • Export visible pivot through Pivot CSV export helper
  • ☑️ Export full pivot — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export expanded rows only — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export all rows — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export selected range — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • 🚧 Export drilldown rows
  • ☑️ Export raw values — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export formatted values — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.

Excel export

  • ☑️ Export to XLSX through external/custom integration — Why partial: foundation exists through external/custom integration, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Export merged headers — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export grouped headers — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export subtotals — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export grand totals — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export formatting — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export conditional formatting — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export frozen panes — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export column widths — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Export multiple sheets — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • 🚧 Export drilldown sheet

Other export

  • Export to JSON through Pivot state JSON helper
  • Export pivot state through Pivot state JSON helper
  • 🚧 Export PDF
  • 🚧 Export image
  • ☑️ Export clipboard through grid copy support — Why partial: foundation exists through grid copy support, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Server-side export through request contract extension — Why partial: foundation exists through request contract extension, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Background export job

25. Import

File import

  • ☑️ Import CSV through application/source setup — Why partial: foundation exists through application/source setup, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Import TSV through application/source setup — Why partial: foundation exists through application/source setup, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Import Excel through application/source setup — Why partial: foundation exists through application/source setup, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Import JSON through application/source setup — Why partial: foundation exists through application/source setup, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Import clipboard data through grid paste/source setup — Why partial: foundation exists through grid paste/source setup, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Import from URL through application/source setup — Why partial: foundation exists through application/source setup, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Import from database adapter through remote store/adapter — Why partial: foundation exists through remote store/adapter, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Import processing

  • ☑️ Header detection — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Type inference — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Schema mapping — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Field mapping — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Data validation — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Error reporting — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Preview before import
  • ☑️ Import transformation — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • 🚧 Import deduplication

Pivot import

  • ☑️ Import pivot state through serializable config — Why partial: foundation exists through serializable config, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Import saved view through remote state API — Why partial: foundation exists through remote state API, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Import calculated fields through precomputed/custom fields — Why partial: foundation exists through precomputed/custom fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Import formatting rules
  • ☑️ Import filters through config/grid filter state — Why partial: foundation exists through config/grid filter state, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Import sort rules through grid sort state — Why partial: foundation exists through grid sort state, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

26. Charts

Pivot charts

  • 🚧 Bar chart
  • 🚧 Stacked bar chart
  • 🚧 Line chart
  • 🚧 Area chart
  • 🚧 Pie chart
  • 🚧 Donut chart
  • 🚧 Scatter chart
  • 🚧 Bubble chart
  • 🚧 Heatmap
  • 🚧 Treemap
  • 🚧 Waterfall chart
  • 🚧 Combo chart

Chart integration

  • ☑️ Generate chart from pivot through external adapter/source data — Why partial: foundation exists through external adapter/source data, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Chart selected range through RevoGrid selection plus external charting — Why partial: foundation exists through RevoGrid selection plus external charting, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Chart selected row group — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Chart selected column group — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Sync chart with filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • ☑️ Sync chart with pivot state — Why partial: state primitives exist, but complete persistence, management UI, and migration behavior are incomplete.
  • 🚧 Drill from chart to pivot
  • 🚧 Export chart
  • 🚧 Custom chart adapter

27. Performance

Rendering performance

  • Row virtualization through RevoGrid
  • Column virtualization through RevoGrid
  • Header virtualization through RevoGrid
  • ☑️ Group row virtualization through RevoGrid grouping — Why partial: foundation exists through RevoGrid grouping, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Dynamic column virtualization through RevoGrid
  • Frozen area virtualization through RevoGrid
  • Efficient DOM recycling through RevoGrid
  • ☑️ Incremental rendering through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Lazy cell rendering through RevoGrid/custom templates — Why partial: foundation exists through RevoGrid/custom templates, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Aggregation performance

  • Incremental aggregation for common client aggregators while scanning rows
  • ☑️ Memoized aggregation tree — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ ☑️ recalculation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Dirty path recalculation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Batch recalculation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • 🚧 Web Worker aggregation
  • 🚧 WASM aggregation support
  • ☑️ Async aggregation through remote/server mode — Why partial: foundation exists through remote/server mode, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Streaming aggregation — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.

Large data support

  • ☑️ Hundreds of thousands of rows — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Millions of rows with server-side mode contract
  • High column count support through column virtualization/server column viewport
  • ☑️ High cardinality field support — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Sparse matrix support through remote cell matrix materialization — Why partial: foundation exists through remote cell matrix materialization, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Memory usage optimization — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Backpressure handling — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Performance diagnostics through remote diagnostics model formatter

28. Server-Side Pivot

Server request model

  • Row group descriptors
  • Column group descriptors
  • Value descriptors
  • Filter descriptors
  • Sort descriptors
  • Expanded row paths
  • Expanded column paths
  • Row viewport
  • Column viewport
  • Requested summaries
  • Drilldown request
  • ☑️ Export request — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • UI state hints
  • Request id correlation
  • View id and fields version

Server response model

  • Pivot rows
  • Pivot columns through axis paths/materialization
  • Cell matrix through __rowPath and __columnPath
  • ☑️ Sparse cell matrix — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Row group count
  • Column group count
  • Total summaries
  • Group summaries
  • Metadata
  • Warnings
  • ☑️ Errors through typed PivotError — Why partial: foundation exists through typed PivotError, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Pinned summary rows

Server features

  • Server-side grouping contract
  • Server-side aggregation contract
  • Server-side filtering contract
  • Server-side sorting contract
  • Server-side pagination
  • ☑️ Server-side expansion — Why partial: remote/server contracts or hooks exist, but the default backend, UI flow, and end-to-end behavior are not fully shipped.
  • Server-side drilldown contract
  • ☑️ Server-side export — Why partial: remote/server contracts or hooks exist, but the default backend, UI flow, and end-to-end behavior are not fully shipped.
  • Server-side cache key contract
  • Query cancellation
  • SQL-oriented query planner
  • Average summary decomposition into sum/count plan
  • Server response normalization helpers

29. Caching

Client cache

  • ☑️ Raw data cache through captured original source — Why partial: foundation exists through captured original source, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Aggregation cache — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Group tree cache — Why partial: cache keys/state foundations exist, but full lifecycle, invalidation, and observability are not complete.
  • ☑️ Column tree cache — Why partial: cache keys/state foundations exist, but full lifecycle, invalidation, and observability are not complete.
  • ☑️ Cell value cache — Why partial: cache keys/state foundations exist, but full lifecycle, invalidation, and observability are not complete.
  • ☑️ Format cache — Why partial: cache keys/state foundations exist, but full lifecycle, invalidation, and observability are not complete.
  • ☑️ Drilldown cache through remote store dedup keys — Why partial: foundation exists through remote store dedup keys, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Expansion cache through pivot config state
  • View state cache through remote state API contract
  • In-flight load deduplication

Server cache

  • Query result cache key generation
  • ☑️ Aggregation cache — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Dimension member cache — Why partial: cache keys/state foundations exist, but full lifecycle, invalidation, and observability are not complete.
  • ☑️ Filter value cache — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • ☑️ Export cache — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Drilldown cache key generation — Why partial: cache keys/state foundations exist, but full lifecycle, invalidation, and observability are not complete.
  • ☑️ Cache invalidation request contract — Why partial: remote/server contracts or hooks exist, but the default backend, UI flow, and end-to-end behavior are not fully shipped.
  • ☑️ Cache TTL — Why partial: cache keys/state foundations exist, but full lifecycle, invalidation, and observability are not complete.
  • Cache key generation
  • Tenant/view/fields/dataset watermark cache scope
  • Cache status response metadata

30. Realtime Updates

Data updates

  • ☑️ Insert row through source replacement/reapply — Why partial: foundation exists through source replacement/reapply, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Update row through source replacement/reapply — Why partial: foundation exists through source replacement/reapply, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Delete row through source replacement/reapply — Why partial: foundation exists through source replacement/reapply, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Batch updates through source replacement/reapply — Why partial: foundation exists through source replacement/reapply, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Streaming updates
  • 🚧 WebSocket updates
  • 🚧 Event-source updates
  • ☑️ Polling updates through application-controlled source/remote reload — Why partial: foundation exists through application-controlled source/remote reload, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Pivot recalculation

  • ☑️ Recalculate affected groups — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Recalculate affected measures — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Recalculate affected totals — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Preserve expansion state
  • ☑️ Preserve selection — Why partial: base grid behavior exists, but Pivot-specific grouped rows, generated columns, and totals need dedicated UX/accessibility coverage.
  • ☑️ Preserve scroll position — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Preserve editing state — Why partial: state primitives exist, but complete persistence, management UI, and migration behavior are incomplete.
  • 🚧 Throttle updates
  • 🚧 Debounce updates
  • Reapply pivot after external source changes
  • Reapply pivot after external column changes

Visual feedback

  • 🚧 Cell flash
  • 🚧 Row flash
  • 🚧 Updated group indicator
  • 🚧 Changed total indicator
  • 🚧 Stale data indicator
  • ☑️ Last updated timestamp through remote metadata — Why partial: foundation exists through remote metadata, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

31. State Management

Pivot state

  • Rows state
  • Columns state
  • Values state
  • Filters state
  • Sorting state
  • ☑️ Formatting state through dimension config — Why partial: foundation exists through dimension config, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Expansion state
  • ☑️ Selection state through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Scroll state through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Field panel state
  • Column collapse state
  • Engine/view/field-version state

State operations

  • Get state through active config/grid properties
  • Set state through grid.pivot
  • Reset state through clearPivot()/empty config
  • ☑️ Merge state through config update event patches — Why partial: foundation exists through config update event patches, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Serialize state through pivot config
  • Deserialize state through pivot config
  • ☑️ Version state through remote state response version — Why partial: foundation exists through remote state response version, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Migrate state — Why partial: state primitives exist, but complete persistence, management UI, and migration behavior are incomplete.
  • ☑️ Validate state — Why partial: state primitives exist, but complete persistence, management UI, and migration behavior are incomplete.

Saved views

  • Save view through typed remote store helper
  • Load view through typed remote store helper
  • Rename view through saved-view collection helper
  • Delete view through saved-view delete intent helper
  • Duplicate view through saved-view collection helper
  • 🚧 Share view
  • 🚧 Favorite view
  • 🚧 Default view
  • ☑️ User view through remote state user id — Why partial: foundation exists through remote state user id, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Team view
  • 🚧 Public view

32. API

Pivot API

  • setRows through grid.pivot.rows update
  • getRows through grid.pivot.rows/active config
  • setColumns through grid.pivot.columns update
  • getColumns through grid.pivot.columns/active config
  • setValues through grid.pivot.values update
  • getValues through grid.pivot.values/active config
  • setFilters through grid.pivot.filters/remote filters
  • getFilters through grid.pivot.filters/remote filters
  • setSorting through RevoGrid sorting plugin/remote controller
  • getSorting through RevoGrid sorting plugin/remote controller
  • refresh through applyPivot()/config reassignment
  • reset through clearPivot()
  • createPivotData
  • createPivotDataModel
  • pivotColumns
  • pivotColumnsFromPaths

Expansion API

  • expandPath through expanded state updates
  • collapsePath through expanded state updates
  • expandAll through collapsed: false
  • collapseAll through collapsed: true
  • ☑️ expandToLevel — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ collapseToLevel — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • getExpandedPaths through config state
  • setExpandedPaths through config state
  • Column collapse state through collapsedColumns

Data API

  • setData through grid source replacement
  • getData through grid source/original source
  • ☑️ updateRows — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ appendRows — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ removeRows — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • refreshData through source change/reapply
  • getSourceRows through captured original source
  • ☑️ getDrilldownRows through remote drilldown contract — Why partial: foundation exists through remote drilldown contract, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Export API

  • exportCsv through Pivot CSV export helper
  • ☑️ exportExcel — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • exportJson through Pivot state JSON helper
  • exportState through serializable pivot config
  • ☑️ exportDrilldown — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.

Remote API

  • PivotEngineAdapter.load
  • PivotEngineAdapter.drilldown
  • PivotRemoteStore.load
  • PivotRemoteStore.drilldown
  • PivotRemoteStore.saveState
  • PivotRemoteStore.loadState
  • HttpPivotRemoteStore
  • SqlPivotQueryPlanner
  • createFieldRegistry
  • createPivotCacheKey

33. Events

Layout events

  • Pivot changed through PIVOT_CFG_UPDATE_EVENT
  • Field added through config update event
  • Field removed through config update event
  • Field moved through config update event
  • Field reordered through config update event
  • Rows changed through config update event
  • Columns changed through config update event
  • Values changed through config update event
  • Filters changed through config update event
  • Sorting changed through RevoGrid sorting events/remote sort handling

Interaction events

  • Cell click through RevoGrid
  • Cell double click through RevoGrid
  • Cell context menu through RevoGrid
  • Header click through RevoGrid
  • Group click through RevoGrid grouping
  • Expand through RevoGrid group/column events
  • Collapse through RevoGrid group/column events
  • Selection change through RevoGrid
  • 🚧 Drilldown open
  • 🚧 Drilldown close
  • Column collapse event integration
  • Column expand event integration

Data events

  • Data loading through loader event in remote mode
  • Data loaded through remote hooks/grid events
  • Data error through remote hooks and Pivot UI diagnostics
  • Data refreshed through source set/reapply
  • ☑️ Aggregation started — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Aggregation finished — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • Server request started through remote store hooks
  • Server request finished through remote store hooks
  • Server request failed through remote store hooks
  • Pagination change event integration
  • Filter apply event interception in server mode
  • Sorting apply event interception in server mode

Editing events

  • ☑️ Edit start through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Edit validate through RevoGrid/custom validation — Why partial: foundation exists through RevoGrid/custom validation, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Edit commit through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Edit cancel through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Edit error through RevoGrid/custom validation — Why partial: foundation exists through RevoGrid/custom validation, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Paste start through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Paste commit through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Undo
  • 🚧 Redo

34. Accessibility

Keyboard support

  • ☑️ Keyboard navigation through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Keyboard selection through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Keyboard expand/collapse through RevoGrid grouping/headers — Why partial: foundation exists through RevoGrid grouping/headers, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Keyboard field panel control — Why partial: base grid behavior exists, but Pivot-specific grouped rows, generated columns, and totals need dedicated UX/accessibility coverage.
  • ☑️ Keyboard sorting through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Keyboard filtering through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Keyboard editing through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Keyboard shortcuts — Why partial: base grid behavior exists, but Pivot-specific grouped rows, generated columns, and totals need dedicated UX/accessibility coverage.

Screen reader support

  • ☑️ ARIA grid roles through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ ARIA row groups through RevoGrid grouping — Why partial: foundation exists through RevoGrid grouping, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ ARIA column groups through RevoGrid headers — Why partial: foundation exists through RevoGrid headers, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ ARIA expanded state — Why partial: base grid behavior exists, but Pivot-specific grouped rows, generated columns, and totals need dedicated UX/accessibility coverage.
  • ☑️ ARIA selected state — Why partial: base grid behavior exists, but Pivot-specific grouped rows, generated columns, and totals need dedicated UX/accessibility coverage.
  • ☑️ ARIA sort state — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • ☑️ Accessible labels — Why partial: base grid behavior exists, but Pivot-specific grouped rows, generated columns, and totals need dedicated UX/accessibility coverage.
  • ☑️ Accessible descriptions — Why partial: base grid behavior exists, but Pivot-specific grouped rows, generated columns, and totals need dedicated UX/accessibility coverage.

Visual accessibility

  • ☑️ High contrast mode through theming — Why partial: foundation exists through theming, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Reduced motion mode through CSS/application theme — Why partial: foundation exists through CSS/application theme, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Focus outlines through RevoGrid/browser controls
  • ☑️ Large touch targets — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Color-blind-safe formatting — Why partial: styling hooks exist, but there are no complete Pivot presets, tokens, and documented runtime controls yet.
  • ☑️ Text alternatives for icons — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

35. Permissions

Field permissions

  • ☑️ Hide field through dimensions/field registry — Why partial: foundation exists through dimensions/field registry, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Disable field through dimensions/field registry — Why partial: foundation exists through dimensions/field registry, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Read-only field through RevoGrid readonly columns — Why partial: foundation exists through RevoGrid readonly columns, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ No-export field — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • No-drilldown field through registry drilldownVisible
  • ☑️ Masked field through backend/custom renderer — Why partial: foundation exists through backend/custom renderer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Aggregated-only field through remote field registry policy — Why partial: foundation exists through remote field registry policy, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Action permissions

  • ☑️ Disable export — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Disable drilldown — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Disable editing through readonly columns — Why partial: foundation exists through readonly columns, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Disable field panel through config
  • 🚧 Disable calculated fields
  • 🚧 Disable custom formulas
  • ☑️ Disable saved views through store/policy — Why partial: foundation exists through store/policy, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Disable sharing

Data permissions

  • ☑️ Row-level security through server-side backend — Why partial: foundation exists through server-side backend, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Column-level security through field registry/backend — Why partial: foundation exists through field registry/backend, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Measure-level security through allowed summaries/backend — Why partial: foundation exists through allowed summaries/backend, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Drilldown-level security through field registry/backend authorization boundary
  • Server-side permission validation helpers
  • ☑️ Permission-aware totals — Why partial: backend/custom hooks can enforce it, but Pivot does not yet ship complete policy configuration, UI, and audit flows.
  • ☑️ Permission-aware filters — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.

36. Security

Client security

  • 🚧 Safe formula execution
  • No unsafe eval in pivot implementation
  • ☑️ Sanitized renderers — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ XSS-safe cell content through RevoGrid/default rendering — Why partial: foundation exists through RevoGrid/default rendering, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ XSS-safe tooltips — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ XSS-safe exports — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • ☑️ Safe custom HTML mode — Why partial: extension points can support it, but Pivot does not yet provide built-in presets, configuration UI, and documented behavior.
  • ☑️ CSP compatibility — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.

Server security

  • Validate pivot requests through field registry/planner helpers
  • Validate filter expressions through allowed operations metadata
  • Validate sort expressions through selector registry
  • ☑️ Validate calculated fields — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Rate limit expensive queries — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Query timeout/cancellation through AbortSignal contract
  • Request size limit through PivotLimits contract
  • Export size limit through PivotLimits contract
  • ☑️ Audit logging through remote hooks/backend — Why partial: foundation exists through remote hooks/backend, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Typed pivot errors

37. Observability

Performance metrics

  • ☑️ Render time through external instrumentation — Why partial: foundation exists through external instrumentation, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Aggregation time through remote metadata — Why partial: foundation exists through remote metadata, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Filter time through remote metadata — Why partial: foundation exists through remote metadata, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Sort time through remote metadata — Why partial: foundation exists through remote metadata, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Export time — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • Server request time through remote metadata/hooks
  • Cache hit rate through cache status metadata/hooks
  • ☑️ Memory usage — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Visible row count through response row-axis metadata
  • Visible column count through response column-axis metadata
  • Generated timestamp metadata
  • Request correlation id

Debugging

  • ☑️ Debug mode — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Query inspector through planner/request objects — Why partial: foundation exists through planner/request objects, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Pivot state inspector through serializable config
  • Field metadata inspector through field registry
  • ☑️ Aggregation tree inspector — Why partial: aggregation/custom-field foundations exist, but this needs a first-class Pivot API, UI, dependency handling, and tests.
  • ☑️ Render profiler — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Slow operation warnings through response warnings metadata
  • Error details through PivotError metadata
  • Developer warnings through console errors/typed errors
  • Remote warnings and errors in Pivot UI diagnostics

38. Theming

Theme support

  • Light theme through RevoGrid theme/CSS
  • Dark theme through RevoGrid theme/CSS
  • ☑️ High contrast theme — Why partial: styling hooks exist, but there are no complete Pivot presets, tokens, and documented runtime controls yet.
  • ☑️ Compact theme — Why partial: styling hooks exist, but there are no complete Pivot presets, tokens, and documented runtime controls yet.
  • Custom theme through CSS/classes
  • CSS variables through RevoGrid/plugin styles
  • ☑️ Theme tokens — Why partial: styling hooks exist, but there are no complete Pivot presets, tokens, and documented runtime controls yet.
  • Runtime theme switching
  • Theme propagation to configurator and field panel

Style customization

  • Cell styles through RevoGrid cell properties
  • Header styles through RevoGrid column config
  • Group row styles through grouping template/CSS
  • Subtotal styles
  • Grand total styles
  • Field panel styles
  • ☑️ Filter popup styles through RevoGrid — Why partial: foundation exists through RevoGrid, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Drag-and-drop styles

39. Localization

Text localization

  • Field panel labels
  • ☑️ Filter labels through RevoGrid/application — Why partial: foundation exists through RevoGrid/application, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Sort labels through RevoGrid/application — Why partial: foundation exists through RevoGrid/application, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Aggregation labels through configurator/value selector text
  • Empty states in field/configurator panels
  • ☑️ Error messages — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Export labels
  • ☑️ Context menu labels through RevoGrid/application — Why partial: foundation exists through RevoGrid/application, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Configurator labels through i18n

Locale formatting

  • Locale number formatting through Pivot value formatting presets
  • Locale currency formatting through Pivot value formatting presets
  • Locale date formatting through Pivot value formatting presets
  • ☑️ Locale time formatting through custom templates/parsers — Why partial: foundation exists through custom templates/parsers, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Locale sorting through custom comparators — Why partial: foundation exists through custom comparators, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ RTL layout support — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Timezone support through custom templates/parsers — Why partial: foundation exists through custom templates/parsers, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

40. Framework Integration

JavaScript

  • Vanilla JS support
  • TypeScript support
  • ESM build
  • ☑️ CJS build — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Tree-shakable modules
  • Public TypeScript exports for client, remote, field registry, cache, planner, and engine APIs

Frameworks

  • React wrapper/examples
  • Vue wrapper/examples
  • Angular wrapper/examples
  • ☑️ Svelte wrapper through Web Component usage — Why partial: foundation exists through Web Component usage, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Solid wrapper through Web Component usage — Why partial: foundation exists through Web Component usage, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Web Components support

Integration helpers

  • ☑️ Controlled state mode through grid.pivot and update events — Why partial: foundation exists through grid.pivot and update events, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Uncontrolled state mode through plugin-owned active config
  • ☑️ React hooks — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Vue composables — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ Angular services — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Event adapters through RevoGrid custom events
  • Type-safe config

41. Documentation

User docs

  • Basic pivot guide/demo
  • Field panel guide/demo
  • Aggregation guide/demo through custom aggregator examples
  • ☑️ Filtering guide — Why partial: filter state and mapping exist, but this specific Pivot filter mode lacks dedicated UI, semantics, and validation.
  • ☑️ Sorting guide — Why partial: sorting foundations exist, but this specific Pivot sort mode lacks dedicated controls, semantics, and coverage.
  • Formatting guide/demo
  • ☑️ Export guide — Why partial: grid/application hooks can support it, but Pivot-specific header/state/value handling is not complete.
  • Drilldown guide/demo for expand-collapse
  • ☑️ Saved views guide — Why partial: some examples or APIs exist, but documentation is not complete enough to treat it as shipped.
  • Totals guide/demo
  • Remote pivot guide/demo
  • Values-on-rows guide/demo

Developer docs

  • ☑️ API reference — Why partial: some examples or APIs exist, but documentation is not complete enough to treat it as shipped.
  • ☑️ Type reference — Why partial: some examples or APIs exist, but documentation is not complete enough to treat it as shipped.
  • Custom aggregation guide/demo
  • Custom renderer guide through RevoGrid examples
  • Server-side pivot guide/demo
  • ☑️ Data adapter guide — Why partial: some examples or APIs exist, but documentation is not complete enough to treat it as shipped.
  • ☑️ Performance guide — Why partial: some examples or APIs exist, but documentation is not complete enough to treat it as shipped.
  • ☑️ Security guide — Why partial: backend/custom hooks can enforce it, but Pivot does not yet ship complete policy configuration, UI, and audit flows.
  • ☑️ Migration guide — Why partial: some examples or APIs exist, but documentation is not complete enough to treat it as shipped.

Examples

  • Basic pivot
  • Sales analytics
  • ☑️ Finance report — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ ERP inventory — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • Server-side pivot
  • 🚧 Realtime pivot
  • ☑️ Editable pivot — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • 🚧 Pivot with charts
  • ☑️ Pivot with permissions — Why partial: backend/custom hooks can enforce it, but Pivot does not yet ship complete policy configuration, UI, and audit flows.
  • ☑️ Pivot with saved views — Why partial: state primitives exist, but complete persistence, management UI, and migration behavior are incomplete.
  • Pivot totals
  • Pivot drill-down
  • Pivot values on rows
  • Pivot field panel
  • Pivot custom aggregator
  • Pivot remote/OLAP backend demos

42. AI Features

Natural language pivot

  • 🚧 Create pivot from prompt
  • 🚧 Modify pivot from prompt
  • 🚧 Add measure from prompt
  • 🚧 Add filter from prompt
  • 🚧 Add calculated field from prompt
  • 🚧 Explain current pivot
  • 🚧 Suggest better pivot
  • 🚧 Detect anomalies
  • 🚧 Summarize insights

AI assistant actions

  • 🚧 Generate pivot layout
  • 🚧 Generate chart
  • 🚧 Generate formula
  • 🚧 Generate aggregation
  • 🚧 Generate export summary
  • 🚧 Explain drilldown result
  • 🚧 Recommend filters
  • 🚧 Recommend dimensions

43. Enterprise Features

Governance

  • ☑️ Shared reports through remote saved-state contract — Why partial: foundation exists through remote saved-state contract, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Team views
  • ☑️ Role-based access through backend/field registry — Why partial: foundation exists through backend/field registry, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Audit logs through remote hooks/backend — Why partial: foundation exists through remote hooks/backend, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Change history
  • ☑️ Admin-controlled defaults through supplied config — Why partial: foundation exists through supplied config, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Locked reports through backend/application policy — Why partial: foundation exists through backend/application policy, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Certified datasets through viewId/fieldsVersion — Why partial: foundation exists through viewId/fieldsVersion, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

Compliance

  • ☑️ Export audit log through backend hooks — Why partial: foundation exists through backend hooks, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Drilldown audit log through backend hooks — Why partial: foundation exists through backend hooks, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Permission audit through backend/field registry — Why partial: foundation exists through backend/field registry, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Data masking through backend/custom renderers — Why partial: foundation exists through backend/custom renderers, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ PII protection through backend/field registry — Why partial: foundation exists through backend/field registry, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Secure formula mode
  • Server validation helpers
  • ☑️ Compliance documentation — Why partial: some examples or APIs exist, but documentation is not complete enough to treat it as shipped.

Supportability

  • ☑️ Diagnostics package through state/metadata export — Why partial: foundation exists through state/metadata export, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • Error reporting hooks through remote store hooks
  • ☑️ Performance report through remote metadata/hooks — Why partial: foundation exists through remote metadata/hooks, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • State snapshot export through serializable config
  • Reproducible bug state through config/source examples
  • ☑️ Version compatibility checks through fieldsVersion/response version — Why partial: foundation exists through fieldsVersion/response version, but there is no complete Pivot-specific product workflow, public API, and coverage yet.

44. Nice-to-Have Advanced Features

  • 🚧 Pivot recommendations
  • ☑️ Auto-detected measures through schema/type inference in application layer — Why partial: foundation exists through schema/type inference in application layer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Auto-detected dimensions through schema/type inference in application layer — Why partial: foundation exists through schema/type inference in application layer, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Smart field categorization
  • ☑️ Automatic date hierarchy through remote group intervals/application preprocessing — Why partial: foundation exists through remote group intervals/application preprocessing, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Automatic number bucketing through remote numeric buckets/application preprocessing — Why partial: foundation exists through remote numeric buckets/application preprocessing, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Custom hierarchies through row/column dimensions and rowTree — Why partial: foundation exists through row/column dimensions and rowTree, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ Parent-child dimensions through precomputed hierarchy fields — Why partial: foundation exists through precomputed hierarchy fields, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Slowly changing dimensions
  • 🚧 Scenario comparison
  • 🚧 Budget vs actual mode
  • 🚧 Forecast columns
  • 🚧 What-if analysis
  • 🚧 Editable planning mode
  • 🚧 Comments on cells
  • 🚧 Cell annotations
  • 🚧 Collaborative views
  • 🚧 Live cursors
  • 🚧 Report subscriptions
  • 🚧 Scheduled exports
  • 🚧 Email reports
  • ☑️ Embedded dashboard mode through Web Component/framework wrappers — Why partial: foundation exists through Web Component/framework wrappers, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ White-label mode through CSS/theming — Why partial: foundation exists through CSS/theming, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 Plugin marketplace
  • Custom pivot extensions through adapters, stores, templates, and aggregators
  • ☑️ MCP/AI-agent integration — Why partial: supporting primitives exist, but dedicated Pivot product behavior, public API, UI, and test coverage are incomplete.
  • ☑️ OLAP cube adapter through PivotEngineAdapter — Why partial: foundation exists through PivotEngineAdapter, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • ☑️ SQL adapter through SqlPivotQueryPlanner — Why partial: foundation exists through SqlPivotQueryPlanner, but there is no complete Pivot-specific product workflow, public API, and coverage yet.
  • 🚧 DuckDB adapter
  • 🚧 Apache Arrow support
  • 🚧 Parquet support
  • 🚧 WASM query engine
  • 🚧 Worker-thread query engine