Skip to content

Latest commit

 

History

History
419 lines (323 loc) · 21.3 KB

CHANGELOG.md

File metadata and controls

419 lines (323 loc) · 21.3 KB

Changelog

v7.0.0-canary.48

  • Fixed an edge case where clicking outside the grid wouldn't close and commit an open editor quickly enough, resulting in the previous rows state being used by parent components in click handlers. (PR)
  • Support for filters has been removed, along with: (PR)
    • The <DataGrid /> props: headerFiltersHeight, filters, onFiltersChange, enableFilterRow
    • Column.filterRenderer
    • The exports: FilterRendererProps, Filters
  • Optional Column props can now also be null in addition to undefined. (PR)

v7.0.0-canary.47

  • Added a third, optional generic on <DataGrid /> to specify the row key type. (PR)
  • Added the useRowSelection hook for custom cell renderers to access isRowSelected and onRowSelectionChange. (PR)
  • HeaderRendererProps.allRowsSelected tweaks, affecting the SelectColumn: (PR)
    • It will now be false when rows.length === 0 instead of true.
    • selectedRows must contain all the row keys for allRowsSelected to be true, instead of naively comparing the size and length.
  • Optional props on <DataGrid /> can now also be null in addition to undefined. (PR)

v7.0.0-canary.46

  • Optimize onRowsChange: only update changed rows (PR)

v7.0.0-canary.45

  • Fixed issue where the scrollbars would flicker in edge cases (PR)

v7.0.0-canary.44

  • Use aria-selected to style selected cell/rows (PR)
  • Add support for variable row heights (PR)

v7.0.0-canary.43

  • Fix aria-readonly (PR)

v7.0.0-canary.42

  • Add missing aria-colspan (PR)
  • Add aria-readonly to readonly cells (PR)

v7.0.0-canary.41

  • Fix summary row colSpan (PR)
  • HeaderCell: Add missing event parameter to onPointerUp, fix #2305 (PR)

v7.0.0-canary.40

  • Add column.colSpan prop to merge cells (PR)
  • Removed prefixed css properties from the generated style file (PR)

v7.0.0-canary.39

  • Add enableVirtualization prop (PR). Grid renders all the rows/columns when it is set to false.

v7.0.0-canary.38

  • Fix summary row position (PR)

v7.0.0-canary.37

  • Add summaryRowHeight prop (PR)
  • Rollup type definitions (PR)

v7.0.0-canary.36

  • Fixed column headers not showing when grid is horizontally scrolled (PR)

v7.0.0-canary.35

  • Migrate to css-in-js with linaria (PR). RDG now internally uses linaria to manage styles. The stylesheets are automatically injected and there is no stylesheet to manually import anymore.
  • Expose data grid root element reference (PR).
  • (Bug fix) Tabbing into the grid should initiate keyboard navigation (PR).

v7.0.0-canary.34

  • Only show the vertical scrollbar when necessary (PR)
  • Fix editorPortalTarget default value for server-side rendering (PR)
  • Use grid layout for rows, split column metrics from compute columns (PR). Resizing columns no longer recreates columns so less re-renders
  • Augment onRowsChange with indexes and column data (PR)

v7.0.0-canary.33

  • (Bug) Commit changes before exiting grid (PR)

v7.0.0-canary.32

  • Fix importing rdg with webpack 4 (PR)

v7.0.0-canary.31

  • (Breaking) Remove some exports from the grid (PR)
  • Use a pseudo-element for header resizer (PR)
  • (new) Formatters now receive a new onRowChange prop (PR)
  • (new) Change column.name type from string to string/ReactElement (PR)
  • Publish bundles instead of modules, use babel only for transpilation (PR)
  • Use the new jsx runtime (PR). The minimum supported react version is 16.14 now.

v7.0.0-canary.30

  • Forward sorting props to headerRenderer (PR)
  • Disable cell navigation while editing. This behavior can be controlled using the new column.editorOptions.onNavigation option (PR)

v7.0.0-canary.29

  • Fix crash when rows are undefined (PR)
  • Fix a scrolling bug caused by scroll-behavior: smooth (PR)

v7.0.0-canary.28

  • (Breaking) Removed onRowsUpdate, enableCellCopyPaste, and enableCellDragAndDrop props. Added 2 new props (onFill and onPaste) (PR)
  • (Breaking) Rename enableFilters to enableFilterRow (PR)

v7.0.0-canary.27

  • (Breaking) Removed old editor API (PR)
  • (Breaking) Removed onCheckCellIsEditable prop (PR). Use column.editable instead. = (Breaking) Replaced rowKey prop with rowKeyGetter (PR)

v7.0.0-canary.26

  • Fixed Copy & Paste events not working properly in non-English keyboards (PR)

v7.0.0-canary.25

  • Added support for webpack 5 (PR)

v7.0.0-canary.24

  • Fixed a bug where grid was getting scrolled on cell focus

v7.0.0-canary.23

  • Minor style fixes

v7.0.0-canary.22

  • Add Grouping (PR). Check the new example.
  • (Breaking) Removed height and width props and added new className and style props. We are now using ResizeObserver to calculate all the grid dimensions (PR)
  • (Breaking) Removed formatterOptions. Grid now handles formatter focus internally so this prop is no longer required (PR)
  • Added support for React 17

v7.0.0-canary.21

  • Editor2 bug fixes (PR)
  • formatterOptions.focusable can be a function now so different rows can have different focus behavior for the same column
  • Grid now internally uses ResizeObserver API to calculate the available width (PR)

v7.0.0-canary.20

  • A new editor api that does not require a ref (PR)
  • A new columnDefaultOptions prop. This replaces minColumnWidth and defaultFormatter props (PR)

v7.0.0-canary.19

  • Allow setting ref on Cell/Row renderers (PR)

v7.0.0-canary.18

  • Accessibility improvements. Added various aria attributes. (PR)
  • Removed enableCellAutoFocus prop (PR)
  • Removed InteractionMasks component. This is an internal change to prepare for grouping and it fixes a few selected cell position bugs
  • Improved focus for custom formatters using the new formatterOptions (PR)

v7.0.0-canary.17

  • Performance improvements (PR)
  • A new rowClass prop (PR)

alpha to canary

  • Added:
    • Props:
      • className
      • style
      • onRowsChange
      • onFill
      • onPaste
      • onSelectedCellChange
        • ⚠️ This replaces the onCellSelected and onCellDeSelected props
      • enableFilterRow
        • ⚠️ This replaces the enableHeaderFilters and column.filterable props
      • filters
      • onFiltersChange
      • rows
        • ⚠️ This replace the rowGetter and rowsCount props
      • rowClass
      • defaultColumnOptions
        • ⚠️ This replaces the minColumnWidth and defaultFormatter props
      • groupBy
      • rowGrouper
    • column.cellClass(row) function support:
      • column = { ..., cellClass(row) { return string; } }
    • column.minWidth
    • column.maxWidth
    • column.headerCellClass
    • column.editor
      • New API
    • column.editorOptions
    • column.groupFormatter
    • scrollToRow method
      • ⚠️ This replaces the scrollToRowIndex prop
    • Dark mode support
      • Dark mode is automatically applied following user preference
      • Light and dark modes can be forced by setting the rdg-light or rdg-dark class names.
  • Removed:
    • Support:
      • ⚠️ IE11
    • Packages:
      • ⚠️ react-data-grid-addons
    • Props:
      • ⚠️ width
      • ⚠️ height
      • ⚠️ cellContentRenderer
      • ⚠️ contextMenu
      • ⚠️ enableCellSelect
      • ⚠️ enableCellAutoFocus
      • ⚠️ getValidFilterValues
      • ⚠️ onCellCopyPaste
      • ⚠️ onSelectedCellRangeChange
      • ⚠️ onCheckCellIsEditable
        • Use column.editable instead.
      • ⚠️ onGridKeyDown
      • ⚠️ onGridKeyUp
      • ⚠️ onRowDoubleClick
      • ⚠️ onRowsUpdate
        • Use onRowsChange, onFill, and onPaste instead.
      • ⚠️ onHeaderDrop
      • ⚠️ draggableHeaderCell
        • Check #2007 on how to migrate
      • ⚠️ rowGroupRenderer
      • ⚠️ onRowExpandToggle
        • Check #2012 on how to migrate
      • ⚠️ rowsContainer
      • ⚠️ Subrow props: getSubRowDetails, onCellExpand, onDeleteSubRow, and onAddSubRow
        • Check #1853 on how to migrate
      • ⚠️ cellMetaData (from Row and Cell props)
      • ⚠️ value (from column.formatter props)
    • Ref handlers:
      • ⚠️ openCellEditor, use selectCell instead.
    • ⚠️ React elements are no longer supported, please use components instead.
      • For example:
      const column = {
        key: 'example',
        name: 'Example',
      - formatter: <CustomFormatter length={5} />
      + formatter: (props) => <CustomFormatter {...props} length={5} />
      };
    • ⚠️ column.events
    • ⚠️ column.getCellActions
      • Check #1845 on how to migrate
    • ⚠️ column.getRowMetaData
    • ⚠️ column.minColumnWidth
    • ⚠️ column.filterable
    • ⚠️ column.draggable
    • ⚠️ cellRangeSelection.{onStart,onUpdate,onEnd}
    • ⚠️ fromRowId, toRowId, and fromRowData from onRowsUpdate argument
    • ⚠️ Stopped exporting HeaderCell
  • Renamed:
    • ⚠️ minHeight to height
    • ⚠️ minWidth to width
    • ⚠️ onGridSort to onSort
    • ⚠️ emptyRowsView to emptyRowsRenderer
    • ⚠️ rowKey to rowKeyGetter
    • ⚠️ rowData to row
    • ⚠️ fromRowData to fromRow
    • ⚠️ idx to rowIdx in Row renderer
  • Changed:
    • ⚠️ Started publishing ES2019/ESM modules instead of ES5/CommonJS modules.
      • Using @babel/preset-env with core-js is recommended to enable compatibility for the browsers your project aims to support.
    • ⚠️ Improved support for summary rows:
      • summaryRows types are now independent from rows
      • Added column.summaryCellClass and column.summaryFormatter props
      • column.formatter isn't used anymore to render summary row cells.
    • Only visible headers cells are now rendered. #1837
    • ⚠️ the rowKeyGetter prop is now required for row selection.
    • ⚠️ column.cellClass does not affect header cells anymore.
    • ⚠️ onScroll will directly pass the UIEvent rather than the scrollLeft and scrollRight only.
    • ⚠️ The stylesheets are now automatically injected, there is no stylsheet to manually import anymore.

main to alpha

  • Added:
    • TypeScript declaration files
    • column.cellContentRenderer
      • More info in this gist
    • summaryRows prop #1773
    • sortColumn and sortDirection props
      • ⚠️ The internal sort states have been removed.
      • Check #1768 on how to migrate.
    • selectedRows and onSelectedRowsChange props
      • ⚠️ Row selection has been reimplemented.
      • A new SelectColumn is now available to import and add a row selection column.
      • Check #1762 on how to migrate.
  • Removed:
    • Packages:
      • react-data-grid-examples
        • Use the website as reference, or clone the repo locally and run npm install + npm start
    • Props:
      • ⚠️ onCellsDragged
      • ⚠️ onDragHandleDoubleClick
      • ⚠️ onRows
      • ⚠️ onRowUpdated
      • ⚠️ rowScrollTimeout
      • ⚠️ toolbar
        • Check #1769 on how to migrate
      • ⚠️ isScrolling (from column.formatter props)
    • ⚠️ ContainerEditorWrapper
    • ⚠️ EditorBase
    • ⚠️ setScrollLeft from Row and Cell renderers
      • setScrollLeft instance method was previously required on custom Cell and Row renderers and it can be safely removed now.
      • More info in #1793
    • ⚠️ Dropped ImmutableJS support.
    • ⚠️ Dropped dynamic height row support.
      • This was not officially supported, but it was still possible to implement dynamic rows via custom Row renderer. This was a buggy feature so it has been removed.
    • ⚠️ Removed row reordering support.
  • Renamed:
    • ReactDataGrid to DataGrid
  • Changed:
    • ⚠️ The stylesheets are now bundled separately:
      • react-data-grid/dist/react-data-grid.css
    • ⚠️ Reimplemented stylesheets, renamed various class names #1780
      • No longer depends on bootstrap
    • Resizing a column now immediately resizes all its cells instead of just its header.
    • Improved performance across the board.

react-data-grid-addons

  • ⚠️ react-data-grid-addons has no default export anymore
    • Use import * as DataGridAddons from 'react-data-grid-addons'; instead
  • ⚠️ The stylesheets are now bundled separately:
    • react-data-grid-addons/dist/react-data-grid-addons.css
  • Removed:
    • ⚠️ AutoComplete editor
    • ⚠️ Utils

5.0.5 (Dec 6, 2018)

  • Bugfix: fix: draggable resizing col jumps to right (1421)
  • Bugfix: Cell Tooltip - Focus Issues (1422)

6.0.1 (Nov 30, 2018)

  • Bugfix: Fix formatter exports (1409)

6.0.0 (Nov 30, 2018)

  • Bugfix: Fix outside click logic for committing changes (1404)
  • TechDebt Add ESLint Rules (1396 1397 1396 1399)
  • TechDebt: Upgrade build tools to latest versions (1350)
  • Feature: Cleanup zIndex logic (1393)
  • Breaking Use react portals for cell editors (1369)
  • TechDebt: Upgrade build tools to latest versions (1350)

5.0.4 (Nov 14, 2018)

  • Bugfix: Custom Formatters Example - Styling Fix (1364)
  • Bugfix: Fix website publishing and remove ImmutableJS dependency (1366)
  • Bugfix: Remove react-data-grid dependency from the addons package (1354)
  • Bugfix: Fix drag fill in IE 11 (1359)
  • Bugfix: Ensure webpack uses correct common js external ref (1370)
  • Feature: Move DropTargetRowContainer static styles to CSS class for user customization (1308)
  • Bugfix: Replace use of i for column index which is no longer passed in (1344)
  • Bugfix: Remove utils from documentation as an exported module (1374)
  • TechDebt: Upgrade eslint packages (1376)
  • Bugfix: Cleanup DraggableContainer and fix styles (1379)

5.0.3 (Nov 1, 2018)

  • Bugfix: Fix frozen-columns source url (1355)
  • TechDebt: Defining the ref callback as a bound method (1353)
  • Bugfix: Fix cell focusing logic (1352)
  • Bugfix: RDG Tree Cell Expand Styling Issues (1316)

5.0.2 (Oct 30, 2018)

  • Bugfix: Fix grouping example (1311)
  • Bugfix: Remove contain layout css (1346)
  • Bugfix: Preserve window scroll position on cell selection (1349)

5.0.1 (Oct 22, 2018)

React-Data-Grid

  • Bugfix: Fix CopyMask columns (1289)

5.0.0 (Oct 22, 2018)

React-Data-Grid

  • Feature: Improve Cell navigation Performance (1123)
  • Feature: Scrolling improvements (1254)
  • Feature: Remove react-data-grid dependency from react-data-grid-addons bundle (1272)

4.0.8 (May 10, 2018)

React-Data-Grid

  • Bugfix: Fix editor refs (#1183)

4.0.7 (April 19, 2018)

React-Data-Grid

  • Feature: Support React v16 (#1116)
  • Feature: Set sort column and direction with props (#649)
  • Bugfix: Filtering should ignore null values (#1147)
  • Bugfix: Resize column doesnt work on firefox when also draggable (#1121)

React-Data-Grid-Addons

  • Breaking: Migrate to react-context-menu 2.9.2 (#1081)