Skip to content

Releases: plotly/dash-ag-grid

v31.3.0

22 Nov 16:08
71ae0ec
Compare
Choose a tag to compare

What's Changed

Fixed

  • #300 Fixes issue #299 where grid was unmounted and trying to update the columnState.
  • #325 Fixes issue #324 where pivotComparator functions were not sorting columns correctly because they were only being passed params.
  • #314
    • locking selenium for tests that were failing due to missing import
  • #313
    • #312 fixing issue where scrollTo was defaulting to not reset the value
      • to maintain scroll position during a grid rerender, be sure to use getRowId
    • fixing side issue where cellDoubleClicked was forcing the grid to rerender
  • #331
    • adjusted setProps -> customSetProps which tests if the grid is active in the dash tree and mounted.
    • #307 fixes JS console error because setProps is no longer called when unmounted.

Added

  • #330 Added dash_clientside to available functions for easier on-liner functions, esp. eventListeners.

Changed

  • #327 bumping to v31.3.2 for the grid
  • #332
    • handleDynamicStyle now checks for params.data before attempting to apply the test
    • #321 fixes issue with infinite scroll and dynamic row styling

New Contributors

Full Changelog: v31.2.0...v31.3.0

v31.2.0

01 May 14:45
7ecc776
Compare
Choose a tag to compare

Changed

  • #273 increased the timeout for getApiAsync to 2 minutes. by @AnnMarieW
  • #281 webpack is now designed to build quicker, excludes node_modules and uses a different parser by @BSd3v
  • #287 bumping to v31.2.1 for the grid by @BSd3v

Added

  • #270 by @BSd3v
    • support for eventListeners to be added to the grid that get loaded upon gridReady
    • eventListeners are added upon gridReady only, if you need to add or remove other event listeners, please use the getApi or getApiAsync methods
    • added default for selectedRows to be []

Fixed

  • #283/#290 by @BSd3v
    • selectedRows can now be passed along with the rowData
  • #293 by @BSd3v
    • aggFuncs can now be passes as an object from the grid to be mapped to functions
    • fixes #278

CI

New Contributors

Full Changelog: v31.0.1...v31.2.0

v31.0.1

07 Feb 18:23
Compare
Choose a tag to compare
  • #266 Updated README

v31.0.0

02 Feb 02:45
Compare
Choose a tag to compare

Added

  • #246
    • grid_version added to allow developer to see underlying AG Grid version in python
    • Added quartz theme native support
    • Added function support for dateParser, dateFormatter, quickFilterParser, components, quickFilterMatcher, predicate, textFormatter, textMatcher, numberFormatter, numberParser, dataTypeMatcher

Removed

  • #246 dropped getColumnApi and getColmunApiAsync as these are deprecated from the underlying grid.

Changed

  • #261 The cellValueChanged property has changed been changed from a (single) event object to a list of event objects. For multi-cell edits, the list will contain an element per change. In other cases, the list will contain a single element. Fixes #262
  • #246
    • updating underlying grid version from AG Grid v29 -> v31, with this change, Dash AG Grid will reflect a similar version number to underlying Grid version.
    • dataTypeDefinitions now supports full js, partial python with full definitions in js of an object, and objects have parts that are js
    • columnSize and columnState cannot be currently passed together when grid initializes, the columnSize will trump the columnState

Fixed

  • #246 testing for grid going to destroyed state

v2.4.0

17 Oct 20:38
Compare
Choose a tag to compare

Added

  • #243 Added function support for:
    • getContextMenuItems, isRowMaster, setPopupParent, popupParent, filter
    • iterate through csvExportParams and defaultCsvExportParams for functions:
      • getCustomContextBelowRow, shouldRowBeSkipped, processCellCallback, processHeaderCallback, processGroupHeaderCallback, processRowGroupCallback

Fixed

  • #237 Fixed issue with grid components not being passed down to the detail grids
  • #232 Fixed height style to unassign automatically if domLayout = 'autoHeight', addresses #231

v2.3.0

27 Jul 16:01
Compare
Choose a tag to compare

Added

  • #212 Async function for getApiAsync and getColumnApiAsync for use with grid initializing

Fixed

  • #226 Fixed issue when using grouped rows with rowData and virtualRowData populating incorrectly. #215

v2.2.0

20 Jun 16:04
Compare
Choose a tag to compare

Added

  • #199 Add scrollTo prop which allows scrolling to rows and columns.
  • #209 Add getApi and getColumnApi to dash_ag_grid namespace to allow for JS functions to call the grid's API directly

Fixed

  • 210 Fix issue with columnState and React 18

Updated

  • 210 Migrate props that use setProps from the render() to componentDidUpdate

v2.1.0

02 Jun 16:00
Compare
Choose a tag to compare

Added

  • #201 Add cellDoubleClicked prop, which works exactly like cellClicked

Updated

  • #174

    • columnState floats during grid interaction and only gets pushed when sent in a callback
    • columnDefs trumps columnState if it is pushed in a callback without a columnState
  • #207 Update AG Grid from 29.3.3 to 29.3.5, with a few minor bugfixes, see their changelog for 29.3.4 and 29.3.5. Also other minor dependency updates.

Fixed

  • #174 Fix #171: Markdown renderer now displays a blank cell rather than writing undefined if there is no value

  • #204 filterOptions will now work as a regular object

  • #206 Fix #195 where if the user was to redo the exact same action, callbacks on cellValueChanged would not trigger again. Fix by adding timestamp into the object, as we have in other event-type props to make them unique.

v2.0.0

02 May 18:13
2eb6882
Compare
Choose a tag to compare

The first full open-source release of Dash AG Grid!

Removed

  • Overhaul commit

    • Remove agGridColumns component due to deprecation in AG Grid v29, use columnDefs instead.
    • Remove some hardcoded CSS
  • #132 Remove prop autoSizeAllColumns, use the columnSize prop instead.

Added

  • Overhaul commit

    • Add className prop for css customization native to AG Grid
    • Add enable* props for easier user / dash manipulation, for creating buttons
    • Add overarching dangerously_allow_code prop to grid props only provided at render, to keep columnDefs from receiving possible updates to execute malicious JavaScript (originally called dangerously_allow_html but renamed later)
    • Add data_previous and data_previous_timestamp props to allow easier change tracking in callbacks
    • Add dashGridOptions prop to allow for arbitrary use of AG Grid props not explicitly listed
    • Add setRowId prop to allow rowData change detection
    • Add columnState prop to retrieve the current state of the columns after user interaction
  • #6

    • Allow strings of functions to be passed as parameters to valueGetterFunction, valueFormatterFunction. This allows for functions to be parsed even in a strict CSP environment.
    • Add row conditional formatting via getRowStyle, acts similar to cellStyles
    • Add ability for custom parsing functions to be passed via the namespace window.dashAgGridFunctions
    • Allow for null to be passed to columnSize, to prevent the fit to width or autosize being the only options
  • #28

    • Allow for other column prop functions to pass without disabling them if dangerously_allow_code is not passed
    • Copy over columnDef dangerously_allow_code to allow for the prop to be placed only on the grid level
    • Keep params together instead of splitting into separate keys, to allow for easier transition to using AG Grid docs
  • #39

    • Allow for defaultColDef to be iterated through for functions
    • Add tooltipComponent to be altered if it was list as a function object
  • #49 Safely handle more attributes when dangerously_allow_code is disabled:

    • Top-level attributes rowClassRules, getRowStyle, and getRowClass
    • Column attributes cellClass, cellStyle, and cellClassRules
  • #67 Function parsing recursive columnDefs

    • Add more functions to be available for parsing
    • Allow for recursively going through columnDefs -> children and master detail info
  • #76 Add logging function available by default, available via {"function": "log()"}

  • #111 Add filterModel prop in order to capture the grid's active filters

  • #132

    • Add new columnSize option responsiveSizeToFit, which will adjust column sizes based upon grid size and columns added or removed
    • Add columnSizeOptions prop to modify the behavior chosen in columnSize
    • Add ability to push columnState back to grid and replay the settings
  • #145

    • Support alignedGrids
    • Support functions with tooltipComponentParams
    • Add paginationInfo for read-only info from the grid's pagination
    • Add paginationGoTo to navigate to different pages

-#164 Support passing selectedRows functions or ids for performing selections

Updated

  • Overhaul commit

    • Update AG Grid from v27.x to v29.x - see AG Grid Changelog for details.
    • Update markdown renderer to use github markdown, and also have the ability to be passed a target for links, to avoid dangerously_allow_code
    • Update requirements.txt (Python dependencies for demos and docs) to allow the latest packages
  • #39

    • Change selectionChanged to selectedRows to make props align with AG Grid
    • Allow selectedRows to persist
  • #70 Change clickData to cellRendererData to more closely line up with what this does

  • #81

    • Prop clean-up overhaul
    • Remove cellStyle from the grid level, allowing more flexibility in customization, and alignment with AG grid
    • Allow for functions, styleConditions and regular dictionaries to be passed to the cellStyle on all levels
    • Add rowId to cellClicked data
  • #132 Change columnSize option of autoSizeAll -> autoSize

  • #145 and #159 Update AG Grid 29.1.0 -> 29.3.3

  • #155

    • Update React to 18.2.0
    • Update material-ui to @mui for rowMenuRenderer

-#164 Update selectedRows to maintain persistence by utilizing rowIds if available

Fixed

  • Overhaul commit

    • Fix conditional formatting for nested columns
    • Fix issue where columns would not take edits or adjustments due to becoming static
  • #6 Fix props issue for enableAddRows

  • #19 Fixed cellClicked as reported in #17

  • #45 Fix #44, markdown ignoring target="_blank" to open links in a new tab. Now if dangerously_use_code is false, markdown cells honor columnDef.linkTarget, but if dangerously_use_code is true you MUST use the HTML syntax <a target="_blank"> to achieve this, markdown syntax [text](url) will ignore columnDef.linkTarget.

  • #47 Fix virtualRowData by setting the default rowModelType='clientSide'

  • #81 Fix syncing issue with rowData, virtualRowData when cell edits and async rowTransactions occur

  • #90 Fix columnState to be populated once gridReady

  • #92 Fix defaultStyle when no styleConditions is in cellStyle

  • #111 Fix templates to only populate when dangerously_allow_code=True

  • #132 Fix columnSize to update upon interaction

  • #145

    • Fix onRowDragEnd to trigger virtualRowData update
    • Fix all virtualRowData updates to take into account sorting
  • #155 and #158

    • Fix openGroups where clearing out the set would cause issues
    • Fix paginationGoTo to work with a starting page
  • #161 Fix the default style to be applied even when a style is given from the developer. style.height and style.width always exist but can be overridden if other values are provided in the style prop.

-#164

  • Fix comparator to not be restricted to just params
  • Fix paginationGoTo to allow 0 to be passed

v2.0.0rc2

25 Apr 20:23
Compare
Choose a tag to compare
v2.0.0rc2 Pre-release
Pre-release

2nd release candidate for v2.0.0