Grid – Change Log
Version 6.3.3
2025-10-06FEATURES / ENHANCEMENTS
- Added direction parameter when setting a
sortFnonsortablecolumn configuration, and addeddirectionparameter tosortable(11639) - Update documentation section "Clicking in complex widget" to have same function name (11750)
- Setting
createOnUnmatchedtotrueon aCombowill now create a record for the initial value, or a value programmatically set later, if the value does not exist in the store for the combo (11781)
DEMOS
- Our new Salesforce Community page is up and running. It solves the problem caused by recent change in Salesforce policy regarding Non-Revenue Orgs. Look up "Device Activation Is Always Required for Non-Revenue Orgs"
BUG FIXES
- 11618 – HIGH PRIO
TreeGridselection crashes when using selection - 11754 – HIGH PRIO
Comboshould not allow setting incorrectvalueprogrammatically - 11811 – Cell focus issue with async
finalizeCellEditand check type columns - 11845 – Values are not applied to all selected cells when performing edit operations on multiple cells
- 11858 – REACT Icon disappearing in other rows when collapsing parent node with
Treefeature - 11895 –
showCheckAllis not checked in check column initially when all records are checked - 11916 –
RowExpandergrid widget ignoresdragSelectsetting - 11923 – Filter popup draggable is not configurable
- 11933 – List does not toggle tree node collapsed state on click of the toggle icon
- 11936 – Filter icon click toggles sort when filter feature used together with grouping
- 11938 – HIGH PRIO
this.headerWidgetMapundefined error when columns data is applied from the state withcollapsibleandcollapsedcolumn - 11952 – Performance issues on adding multiple columns
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.3.2
2025-09-15FEATURES / ENHANCEMENTS
- Grid columns now support
headerWritingModeto allow for vertical text display in the column header Try it out in the updatedcolumnsdemo. (11739) - ANGULAR Documentation in "Quick start" and "Data Binding" is now updated to reflect Angular 20 file naming conventions
DEMOS
- ANGULAR New
Lock Rowsdemo is added to show the use ofLockRowsfeature. The demo is located inframeworks/angular/lock-rowsfolder - REACT-VITE New
Lock Rowsdemo is added to show the use ofLockRowsfeature. The demo is located inframeworks/react-vite/lock-rowsfolder - VUE-3-VITE New
Lock Rowsdemo is added to show the use ofLockRowsfeature. The demo is located inframeworks/vue-3-vite/lock-rowsfolder
BUG FIXES
- 11407 – Subclassed toolbar places
spacer : '->'last of the items - 11422 – HIGH PRIO
CheckListFilterCombois not customizable, and is not accessible - 11691 –
RowExpander‘s widget.store config not applied to the store - 11743 – Export to PNG fails
- 11785 – Event handlers should be error-trapped so that the stack is not destroyed
- 11801 – HIGH PRIO Grid’s cell edit not saving changes when clicking to row above (Mobile devices)
- 11805 – VUE-3
LockRowsfeature throws error - 11838 –
store.data = nullclears the store but does not fire the change + dataset event, so UIs do not refresh - 11905 – Export example not working
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.3.1
2025-08-07FEATURES / ENHANCEMENTS
- Internal code improvements and bugfixes
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.3.0
2025-07-21FEATURES / ENHANCEMENTS
- The
TreeGroupfeature now accepts a custom sort function for parent nodes (9366) - PdfExport feature now supports exporting large datasets by streaming data to the export server using WebSocket connection (3953)
- Added new
Chartsfeature, which leverages the newChartandChartDesignerwidgets to enable developers and end users to easily create charts and visualize data directly from selected cells in Bryntum products. Check the "What’s new" guide for details (8442) - New Single Page Unscaled exporter is added. It allows exporting content to a single page without limiting to a specific paper size. PDF export server upgrade to version
2.1.0is required (11397) - Bryntum now ships a
Chartmodule (chart.module.thin.js), to easier integrateChart.js-based charts with our products. Used in the newchartsdemo - Bryntum npm repository provides charts thin package
@bryntum/chart-thinand wrapper packages for major frameworks: Angular (@bryntum/chart-angular-thin), React (@bryntum/chart-react-thin) and Vue 3 (@bryntum/chart-vue-3-thin) - Added Grid columns that can show charts:
SparklineColumnandChartColumn - To pave the way for future improvements, Grid cells are now absolutely positioned inside the rows. A cell size is matched with the size of its column’s header using a
ResizeObserver. If you see any side effect of this change in your app, please report it to us
API CHANGES
- BREAKING The
rendererconfig ofColumnis now also a class property. For TypeScript applications that extend theColumnclass or its descendants and override therendererfunction, you will need to use the following declaration:override renderer: Column'renderer' = ({ column, value }) => { ... };
LOCALE UPDATES
- Moved translations from section
PanelCollapsertoObject - Changed the
Object.collapseandObject.expandkeys to lowercase for consistency - Following locale keys added
SinglePageUnscaledExporter.singlepageunscaled
DEMOS
- New demo with TinyMCE showing how to use a rich text editor in a Grid cell. The demo is located in
examples/tinymce-editorfolder (10679) - New
chartsdemo, showcasing how to combine the newChartsfeature - New
sparklinesdemo, showcasing how to use the newSparklineColumn
BUG FIXES
- 11304 –
Panelcollapse icon does not display any tooltip - 11492 – Tiny MCE editor demo has the wrong index page
- 11615 –
scrollRowIntoView‘s highlight config isn’t passing the item when configured as a function - 11648 – Possible to select multiple radio items
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.2.5
2025-07-09FEATURES / ENHANCEMENTS
- Linked records (created using
record.link()) now have a publicoriginalRecordproperty that points to the original record. And the original record has alinkedRecordsarray that contains all the links to it - AjaxStore’s
beforeRequestevent allows async event handlers (11542)
STYLING CHANGES
- When using animated row removal (
animateRemovingRows), theb-deleting-rowCSS class is now applied to the row being removed. You can override it to alter the animation used
DEMOS
- The
infinite-scroll-treedemo, which demonstrates the lazy loading support of a tree Grid, has been ported to Angular. It is located in theexamples/frameworks/angular/infinite-scroll-treefolder - The
infinite-scroll-treedemo, which demonstrates the lazy loading support of a tree Grid, has been ported to React. It is located in theexamples/frameworks/react-vite/infinite-scroll-treefolder - The
infinite-scroll-treedemo, which demonstrates the lazy loading support of a tree Grid, has been ported to Vue. It is located in theexamples/frameworks/vue-3-vite/infinite-scroll-treefolder
BUG FIXES
- 8479 – Poor animation when removing a row
- 11355 – TreeGrid crashes with 200K+ data
- 11520 – Right click on the sort icon in the column header should open headerMenu
- 11559 – Store not clearing the
changesoncommitwhen customidFieldis used - 11565 – Grid’s
beforeStateApplyshould describe its properties - 11574 – Screen reader is not announcing filter operation results
- 11584 –
applyChangesetcrashes on remotely filtered store - 11602 –
Tool‘s<button>element needstype="button"
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.2.4
2025-06-18FEATURES / ENHANCEMENTS
- A lazy loaded tree store no longer requires each parent to provide its full child count via the
remoteChildCountdata field. Instead, it relies on autodetection and, in special cases, the newisFullyLoadedfield can be used instead - The
unloadmethod has been added to a lazy loaded store. For a regular store, it removes the specified records from the store and reloads the next time they are needed. For a tree store, it clears all the child nodes of the specified parent nodes, and reloads them the next time they are needed (8961) showDirtycan be configured now to show red tag for all the cells for the new records. SetnewRecord : trueonshowDirtyto enable it (10344)
API CHANGES
- DEPRECATED The
remoteChildCountfield on a TreeNode was deprecated and will be removed in7.0
DEMOS
- New
infinite-scroll-treedemo, which demonstrates the lazy loading support of a tree Grid. The new demo is located in theexamples/infinite-scroll-treefolder (9714)
BUG FIXES
- 10161 – Windows OS
ContextMenudoes not show after re-rendering of Scheduler - 10904 – HIGH PRIO Refactor pdf export code to generate rows in bulk
- 11221 – HIGH PRIO
ColumnStoresort and re-ordering columns does not work - 11324 – SALESFORCE Expand/collapse not working for tree using keyboard navigation
- 11337 – Pasting invalid text into
TimeFieldresults in permanent invalidity - 11400 – HIGH PRIO Non-editable cell still change value when using multi-select edit
- 11416 – Aria-live not set correctly when using DOM config on empty text
- 11431 – Column state is not restored correctly for
unconfiguredcolumns with sametypeas already exists inColumnStore - 11433 – HIGH PRIO
CellEditcannot cancel editing withEscapekey whenclearableCombois used - 11471 – Export feature should log stack trace to console when export failed
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.2.3
2025-05-27FEATURES / ENHANCEMENTS
- The
PDF ExportandPrintfeature has a new paper formatA0(11083) - Reordering rows in a flat chained store can now reflect on the master store, if the chained store is configured with
syncOrder: true. Reordering in a chained tree store is always reflected on the master store (11349)
BUG FIXES
- 11045 – Case sensitive filtering is inconsistent
- 11217 –
RowResizefeature doesn’t work with columnautoHeightset totrue - 11343 –
TimeFielddocs mention non-existing step config on the minute field - 11344 –
Slidercomponent cannot be used withinPopupcomponent - 11352 –
TimeFieldis not styled correctly - 11386 – HIGH PRIO
Scrollbarissue after adding columns to empty subgrid - 11394 – HIGH PRIO
FillHandlearea grows on scroll
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.2.2
2025-05-13FEATURES / ENHANCEMENTS
Listnow has optional support for displaying text when empty, using the newemptyTextconfig- The
ChecklistFilterCombonow displays "No results found" when there are no results in the list. The string is localized using thenoItemslocale key, which was already part of the locales but mistakenly not used - When reloading a lazy-loaded
Store(including remote filtering and sorting) the current dataset will be kept until the load request finishes. Previously, it was cleared upon starting the reload and populated with new data later. If anAjaxStoreis being used (aStoreconfigured with areadUrl) a load mask will be displayed during the reload operation (11261)
STYLING CHANGES
- The
emptyTextshown in aCombo‘s picker has been promoted to an actual element with the.b-empty-textCSS class applied to it, instead of a harder to style pseudo-element
BUG FIXES
- 3164 – Column with just icon and no text should not use
margin-rightfor its icon - 9558 –
headerHeightin group feature causes rendering issues with large datasets - 10066 – Support
TimeFieldfor Salesforce - 10474 – Cannot add items into container after remove previous using
destroy() - 10829 –
beforeLoadPageshould havesortersandfiltersin the params when using remote store - 10986 –
Store.searchshould get the fields fromrecord.fieldsinstead ofrecord.fieldNames - 11026 –
DatePickernot selecting valid value whenminproperty is updated dynamically - 11131 – Applying store group state after initializing grid does not show group icon in column header
- 11170 – Clicking "Don’t show again" in hints popup doesn’t work
- 11172 – AI support in Grid – Two
updateevents triggered by AI formula - 11175 – AI support in Grid – Referencing
$datain an AI formula error - 11235 – Async cell renderer can throw if the row being rendered is destroyed during the await
- 11252 – Field class should disable OnePassword except for if it is a
PasswordField - 11276 – Headers misaligned after tree grouping
- 11277 – Row reorder drag handle should be aligned to the left
- 11281 –
DragHelperexample not working properly - 11294 – Copying a cell when using
FillHandle/ cell selection shows double bottom border
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.2.1
2025-04-23FEATURES / ENHANCEMENTS
DateFieldnow reveals its expected format when input is in incorrect formatAggregateColumnnow has aincludeFilteredOutRecordswhich lets you include filtered out records in the aggregation (11105)
STYLING CHANGES
SlideToggleno longer has a fixed height defined in the CSS. This allows for more flexibility in styling and layout
LOCALE UPDATES
- The
DateFieldinvalidFormatmessage is now updated to include the expected format. New value isformat => 'Invalid date input, expected format is ' + format
BUG FIXES
- 11063 –
TreeColumnhaving redundant icon whileLockRowsenabled - 11070 – HIGH PRIO Online demos in codepen crashes
- 11071 – Grid summary column resize issue
- 11079 – Cell pasting is inconsistent based on a drag direction
- 11084 –
expandAll/collapseAllcrashes when using GroupSummary feature - 11097 – Should not show "invalid field" while typing the field name
- 11104 – Resizing
Popupsometimes does not stop after mouse-up - 11117 –
Toastprogress aborted in demos after5s
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.2.0
2025-04-10FEATURES / ENHANCEMENTS
TabPanelnow supports adding custom widgets to thetabBarviaContainer#tabBarItems. See updated live demo on theTabPaneldocs page (10047)- Tabs in a
TabPanelcan now be reordered using drag-drop, by settingenableReorderingtotrueon thetabBar(10489) - New
MonthPickerwidget for date picking and calendar control - We’ve improved search in the documentation with new context-aware algorithms, delivering more accurate and relevant results from the API, guides & examples
PdfExportfeature was updated to support row expander. It requires upgrading PDF Export Server to latest version2.0.0which was recently released in a separate GitHub repository and Docker Hub (10533)- A new feature,
RowEdit, allows editing of a whole record row at one time using a side docked editor panel (10690) - A new config for
Panel,drawermarks aPanelas a docked, slide-in panel, which by default slides in over the contents of the browser viewport - Tabs in a
TabPanelthat contain invalid input fields will now have a red border to highlight the invalid state (10789) RowReorderfeature now allows drag-drop reordering of rows into new groups to update values of leaf nodes (5689)- Setting
requiredon a Field now automatically appends a * to its label, ifshowRequiredIndicatoris set totrue(10835) - New
CheckboxGroupwidget added (2018) - Popups can now be resized on all sides and corners via the new
resizableproperty (6856) - Decimal separator and group separator for formatted numbers can now be configured globally using new static properties on
NumberFormat:decimalSeparatorandgroupSeparator(11016) - BREAKING Since most apps have a build process that includes a transpilation step, starting with
v6.2.0we use the minimum possible transpile polyfills for the source code inside the@bryntum/grid-thinnpm package to ensure that it works for all currently supported frameworks. Previously, each source file was transpiled with more polyfills, which introduced unnecessary overhead from transpilation helper functions. After this change, the size of your built app should be reduced. If you encounter issues with your framework’s builder parsing the code, consider upgrading to a newer framework version that supports the latest ECMAScript specification (10797)
API CHANGES
- The
Widget.accessibilityproperty has been removed. We now detect when keyboard control is being used, and this can be read from the newWidget.focusVisibleproperty - Widget drag-drop is no longer done using the native HTML drag-drop (10793)
- Popups are now
draggableby default - The type of the
valueproperty on checkboxes was for legacy reasonsString, it has now been changed to the more expectedBoolean - BREAKING The
AjaxHelper.fetch()utility function no longer appliescredentials: 'include'by default, to better match how the nativefetchAPI works. This change also affectsAjaxStore, if used by your app to handle remote data (10886)
STYLING CHANGES
- Grid cells with overflowing text now use ellipsis by default. If you prefer the old behavior where text is cropped, set Grid’s
cellEllipsisproperty tofalse(2982) - Changed the
showDirtyindicator pseudo-element from:beforeto:afterso both therowReordergrip handle and theshowDirtyindicator can display simultaneously. If you have custom styles targeting:beforeforshowDirtyindicator, please update them to target:afterinstead (10966) multiSelectLists now display empty checkbox icons when unselected and checked checkboxes when selected
LOCALE UPDATES
- Added translation keys
Object.informationandObject.showDetails,Object.to,Object.at,Object.on,Object.editing,Object.settings,Object.go - New locale key
Toolbar.showOverflowingItemsadded for the tooltip shown for toolbar overflow scroll buttons - New locale key
RowNumberColumn.rowNumberadded for theRowNumberColumnheader tooltip
DEMOS
- New
roweditdemo, which Demonstrates theRowEditfeature, that edits records in a docked panel. The new demo is located inexamples/roweditfolder - New
ai-review-griddemo showing how to use aFormulaProviderto populate field values using AI. Demo located inexamples/ai-review-gridfolder - New
ai-ecommerce-griddemo showing how to use AI to generate SEO description + keywords in bulk. Demo located inexamples/ai-ecommerce-gridfolder
BUG FIXES
- 10373 –
Filterdropdown should include thesameDayandsameTimeoperators - 10623 – Misalignment dragging tab last
- 10625 – ACCESSIBILITY
CheckboxandTabselector buttons have no visible focus rendition - 10868 – Previous filter not shown when filtering assigned resources
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.1.9
2025-04-07FEATURES / ENHANCEMENTS
- Added a new
stateSettingsconfig to control how column state is restored. It includes arestoreUnconfiguredColumnsoption to toggle whethercolumnsnot explicitly defined in the grid configuration should be restored (10943)
BUG FIXES
- 8782 – Salesforce LWS support in Firefox
- 11014 – Export Issue: Column Type ChipView is empty on export
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.1.8
2025-04-01FEATURES / ENHANCEMENTS
- We’ve launched nightly npm package builds on our Bryntum npm server. Versions follow the format
X.Y.Z-nightly.YYYYMMDD(e.g.6.1.8-nightly.20250330), reflecting the current version and publish date - When using the
CellEditfeature, cells, which contain focusable elements may now be included in thecell-to-cellnavigation by settingtabToFocusablesproperty (6999) - A grid store filter, which results in only removal of a contiguous block of records within the visible viewport will now update the UI in the same way as a store
removeoperation (10706) - The
CellCopyPastefeature now supports pasting into multiple non-contiguous cells (10696) - New
applyDefaultsmethod added to theBaseclass to allow setting default values for class configs/properties (10876) AggregateColumnnow lets you toggle aggregation on / off using the newenableAggregationfield (10909)PdfExportnow has anisExportingproperty, which you can use to check if an export operation is ongoing (10947)LockRowsfeatures now supports configuring the bottom grid section using thebottomGridConfigconfig (10958)Combowidget now supports togglingmultiSelectmode on / off at runtimePanelheaderconfig now accepts aniconClsproperty to show an icon in the headerTreeNodeallUnfilteredChildrenproperty is now public, allowing you to retrieve all children of a node, ignoring any active store filters (11013)
API CHANGES
- The
rtlconfig property of widgets is now public. By default, widgets conform to the writing direction of the element they are rendered to. But with the now publicrtlproperty, you can force a widget, and all descendant widgets to lay out from right to left (10859) - The
Widget‘selementAttributesconfig is now public allowing to specify attributes to assign to the root element of this widget (10940)
DEMOS
- We have introduced UI localization for our Vanilla JavaScript demos, supporting all 45 currently available locales
BUG FIXES
- 10206 –
parentIdfield cannot be remapped - 10621 – HIGH PRIO Opening month picker in event editor closes entire editor in Safari
- 10636 –
groupRenderernot triggering for empty string values during Excel export - 10701 – TYPESCRIPT Update
AjaxStorebeforeRequestandafterRequestparameters docs - 10726 –
Gridcrashes and shows a blank section when scrolling to an invalid editor outside the viewport - 10763 –
Gridnot using correctAjaxHelper.DEFAULT_FETCH_OPTIONSfor paged stores - 10795 – SALESFORCE Remove
Map/Setpolyfills - 10812 –
Fillhandledisappears if mouseup happens outside browser window - 10814 – HIGH PRIO Column header misaligned if resize when used regions
- 10825 –
Gridcrashes when reverting changes and reapplying filters on update - 10826 – Error when specifying
labelWidthwith'label'forDateRangeFieldwidget - 10840 – Cells still selected when returning
falsefrom aselectionChangelistener - 10854 – Selecting multiple cells should copy all the selected cell Records when
cellCopyPasteis disabled - 10874 –
Griderror withfinalizeCellEditand sorting - 10889 – Export to excel should include group header
- 10897 – Sticky elements not correctly accounted for when calculating visible rectangle
- 10924 – React Editor popup cutoff on last row
- 10938 – HIGH PRIO Incorrect CSS
sourceMappingURLin Bryntum thin npm packages - 10944 –
Gridcolum with combo editor behaves different with picker title specified - 11002 –
GridIncorrect focus behaviour when editing grouping fields of records
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.1.7
2025-02-21FEATURES / ENHANCEMENTS
- Copied
Modelinstances now have acopyOfproperty that points to the original instance (10587) - The
Buttonclass now accepts asplitproperty, which means that its menu will only be shown when clicking on its arrow icon, and it will only toggle itspressedstate and action itsclickhandler when clicking on the main part (10678) - A new config,
scrollActionfor theCellEditfeature specifies what should happen if the cell editor is scrolled out of view, for example when using a mousewheel. The default value isnullwhich preserves the current behaviour of continuing the edit (10760) - The
CellEditfeature now supports rendering the editor as a floating element outside the cell element (10767)
API CHANGES
- Tree stores got a new
keepExpandedOnLoadconfig inv6.1.4, but it fell out of the changelog. When set totrue, the tree will restore matching nodes expansion state after a reload (10017)
DEMOS
- REACT-VITE "Vue Renderer" JavaScript demo has been updated to use to React + Vite. The new demo is located in
examples/frameworks/vue-3-vite/vue-rendererfolder (10680) - REACT-VITE New
infinite-scrolldemo showing how to load data on demand using RTK Query + lazyLoad feature of Bryntum Grid. Demo is located inexamples/frameworks/react-vite/infinite-scrollfolder (9886) - New Demo
collapsible-inline-columnsshowing collapsing / expanding of inline columns. Demo is located inexamples/collapsible-inline-columnsfolder (10266)
BUG FIXES
- 9587 – HIGH PRIO
StoreDataFieldchange tracking not working when using store field - 10586 –
TreeGroupcheck column not grouping null values with false - 10652 – Grid crashes on
store.removeAll()whenlazy-loadingenabled - 10665 – VUE-3 Unexpected warnings from the wrapper
- 10699 –
deselectFilteredOutRecordsnot working on a Tree Grid - 10704 – Check column still changes when column is set to be
readOnly - 10714 – Clicking on custom expand and collapse icon makes record selected
- 10715 –
StateProviderdoesn’t preserve thescrollTop - 10739 – Horizontal time axis scroll position reset when entering time axis header using keyboard
- 10761 – Using
scrollableconfig insubGridconfiguration breaks the SubGrid’s scrollability - 10763 – Grid not using correct
AjaxHelper.DEFAULT_FETCH_OPTIONS - 10784 – Groups not collapsing when using a check column
- 10785 – HIGH PRIO Exception when dragging linked record to an empty group
- 10787 – Wrong width then using row reorder and selectable row
- 10794 – Column filter not clearing correctly when empty input
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.78.0 - Remix:
>= 2.15.0
Version 6.1.6
2025-01-31FEATURES / ENHANCEMENTS
- ACCESSIBILITY
TreeColumncells in parent rows now include anaria-expandedvalue ensuring that row collapsed state is announced (4643) - Tabs in a
TabPanelcan now beclosablewhich shows an X icon (8679) - ACCESSIBILITY
FilterBarfields now have anaria-labeldefined to let screen readers announce context - ACCESSIBILITY
Widgetnow has anannounceAriaLivemethod letting you provide a text message to screen readers via anaria-liveelement - The
CellEditfeature now supports usingWebComponentsas input elements making it possible to provide an Angular component as a cell editor (10471)
API CHANGES
- DEPRECATED Widget
ariaLiveproperty was deprecated and will be removed in7.0
DEMOS
- ANGULAR New Angular
celleditdemo, which Demonstrates theCellEditfeature has been added. New demo is located inexamples/frameworks/angular/celleditfolder - REACT-VITE Added React Color cell editor to
cell-editexample to demonstrate how to use popup editors. Updated the React version of the demo to19.0.7and Vite version to6.0.9. Demo is located inexamples/frameworks/react-vite/cell-editfolder
BUG FIXES
- 73 – React components rendered inside the cells are not overflowing it
- 1356 – Export summary rows to Excel
- 4280 – Pressing shift shows cell focus outline
- 9518 – Sort count is being shown when only 1 sort count is used along with grouping
- 9946 – Resolve prototype pollution warnings from GitHub Advanced Security
- 10215 – ACCESSIBILITY No records found after the filtering the scheduler not announced by the Voice-Over
- 10407 –
DateRangeFieldignoresclearableconfig - 10428 – Enable CSS targeting of column-specific filter UI fields
- 10466 – Nested grid with chart demo race condition
- 10490 – ACCESSIBILITY
RowExpandercolumn has noaria-label - 10495 – ACCESSIBILITY
RowExpanderbutton needsaria-label - 10516 –
TimeFieldlabel misaligned if initial value has not been set - 10519 – Grid splitter has lower
z-indexthanemptyText - 10591 – HIGH PRIO Not possible to provide
ariaLabelin Column subclass - 10617 –
Shift + Backspaceclears text field value - 10624 – HIGH PRIO
CellEditfreezes when tabbing into readonly row
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.38.0
Version 6.1.5
2024-12-25BUG FIXES
- 10393 – VUE-3-NUXT Basic demo doesn’t display the demo title
- 10467 – Moving a column to the left section does not work when using
LockRows - 10468 –
emptyTextshould not show during store load - 10488 – HIGH PRIO
grid-taskboarddemo code is not available in online Code Editor - 10496 – ACCESSIBILITY Key navigation stuck after landing on a checkbox inside a grid cell
- 10502 – ACCESSIBILITY Rating column cannot be edited using keyboard
- 10504 – ACCESSIBILITY
TimeFieldcannot stop editing usingESCkey - 10510 – Configuring a store and items leaves a combo store misconfigured
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.38.0
Version 6.1.4
2024-12-09FEATURES / ENHANCEMENTS
- Starting with the
6.1.4release, there are now trial versions of thin NPM packages available on our NPM server. These can be used to evaluate combining multiple products before purchasing a license. Please check the "What’s new" guide for the details
API CHANGES
- For more similar behavior between browsers,
DateHelper.parsenow ignores very short strings and discards any dates with a year before1900when falling back tonew Date()parsing. This affectsDateFields usingstrictParsing: false(the default). Before this change, Chrome parsed'2'asFeb 2001, while Safari parsed it asJan 0002
STYLING CHANGES
- When dragging multiple grid rows, a new proxy showing each record was added. The old
b-row-dragging-multipleCSS class is no longer used (10340) - Added a new config
closeOnEscapeto control whether pressing theESCkey will close the popup
DEMOS
- ANGULAR Added new Angular
basic-thindemo showing use of thin NPM packages. Demo is located inexamples/frameworks/angular/basic-thinfolder - REACT Added new React
basic-thindemo showing use of thin NPM packages. Demo is located inexamples/frameworks/react-vite/basic-thinfolder - VUE-3 Added new Vue-3
basic-thindemo showing use of thin NPM packages. Demo is located inexamples/frameworks/vue-3-vite/basic-thinfolder - WEBPACK Added new Webpack
basic-thindemo showing use of thin NPM packages. Demo is located inexamples/frameworks/webpack/basic-thinfolder - REACT Added new React
renderer-context-react-19demo showing use of context rendering with React 19 JSX components. Demo is located inexamples/frameworks/react-vite/renderer-context-react-19folder
BUG FIXES
- 7065 – HIGH PRIO Export to PDF feature missing paper formats
- 10364 – Restore expand on non-editable input click for
TextAreaPickerField - 10367 – Context menu opened from keyboard throws in Salesforce
- 10384 – Add missing percentage docs to
Numberfield - 10386 – Adjust increment/decrement/error tooltip handling of percentage
Numberfield - 10397 – Block
ESCkey from propagating in cell editor - 10413 –
FillHandleonly works on the first table selected when there are two or more tables on the page - 10414 –
DatePickerdoesn’t highlight today date - 10415 –
DateFieldpicker shows previously selected date after input is cleared - 10419 – Combo does not return record
- 10424 – RTL Popups with centered set to true are not centered in RTL mode
- 10429 – Keystrokes on actionable items in grid cells no longer work
- 10446 – Records are duplicated when row is dropped to an empty group
- 10448 – REACT JSX renderers are not supported with
React 19 - 10452 – Drop to a group with empty array field should clear the array field on the corresponding record
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.38.0
Version 6.1.3
2024-11-18FEATURES / ENHANCEMENTS
Printfeature is supported in Salesforce with LWS enabled (7917)- The
RowExpanderfeature now exposes therefreshRowfunction, which when called with arecord, refreshes the content of an already expanded row (10167) - A sort direction param was added to
CollectionSorter´ssortFnfunction (10171) - Stores can now be configured with
reapplySortersOnUpdateto trigger sort after a record is updated (877) - Store sorters can now be configured with a
caseSensitiveboolean if you want sorting to be case-insensitive (10267) - Salesforce LWC build now using generators instead of async/await as a workaround for Firefox bug. LWC bundle is now compiled with
"chrome": "54"babel target (7849) - By configuring a data field with
complexMapping : false, it can now point to a data property containing a dot (.), for example{ "member.name" : "value" }. Previously (since v4.1), the dot was always interpreted as a nested object path (10168)
API CHANGES
- The CellEdit
beforeFinishCellEditevent now also includes anoldValueparam - VUE 2 reached end of life on December 31, 2023. As a result, we will no longer be updating our Vue 2 components. While the components will continue to exist, we will remove them in a future release and recommend that you upgrade to Vue 3 for continued support
STYLING CHANGES
- Certain color adjustment functions in SASS has been deprecated and will be removed from SASS in a future version. To be prepared for that, we have replaced our usages of these functions with the new ones. In general, this should not affect the look of components, with reservation for minor color variations (for more information, see https://sass-lang.com/documentation/breaking-changes/color-functions)
DEMOS
- Renamed "theme" demo to "custom-theme". The updated demo is located in
examples/custom-themefolder (10155)
BUG FIXES
- 9018 – HIGH PRIO Localization doesn’t work for Microsoft Dynamics CRM Online
- 9691 –
columnDragevent paraminsertBeforedoes not get updated once we setcontext.validtofalse - 10084 – Error in currency format
- 10127 – Store changes not being tracked as expected when using a tree store with filters
- 10177 – Spamming row expander causes crash
- 10204 – Remove
tbar,bbarandheaderfrom cloned grid in LockRows feature - 10234 – HIGH PRIO Correct formatting of
NumberFieldpercentage with decimal digits - 10255 – Error when replacing data with
parentIdproperty - 10258 –
showAnimationdoes not animate the Popup - 10260 – React flushSync was called from inside a lifecycle method runtime error
- 10263 – Card layout
activeItemyields the hidden, previousactiveItemin show listeners - 10273 – DOCS
beforeFinishCellEditeventvalueparam points to the old value - 10278 – TYPESCRIPT Define the
GridSelectionModetype - 10285 – HIGH PRIO Combobox does not clear unmatched initial value
- 10309 – Error in
Combogrouping after updating to6.1.0
VERSIONS SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 3.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0 - Sass:
>= 1.38.0
Version 6.1.2
2024-10-11FEATURES / ENHANCEMENTS
toggleCollapsemethod on the Group feature now accepts an array of records/ids (9749)- Implemented support for
headerRendererto return JSX and updated the "Using React Context with renderers" example to demonstrate its usage. The demo is located inframeworks/react-vite/renderer-contextfolder. (7342)
API CHANGES
Storehas a new better way of chaining tree stores. By usingchainTree()instead ofchain(), the chained store will be a full tree store with links to the nodes in the original store. This will let you expand / collapse and filter the tree in one store without affecting the other (9171, 9177, 9178, 10130)- When using both the
RowCopyPasteand theCellCopyPastefeature, copying row data and pasting it into cells, the copied data will now be inserted as new rows. - DEPRECATED The
makeChainedfunction inStorewas deprecated in favor ofchainandchainTree. It will be removed in7.0.0 - DEPRECATED The
groupRecordparam of the Group feature´stoggleGroupandbeforeToggleGroupevents is deprecated in favor of thegroupRecordsparam, since you can now toggle multiple group records. The param will be removed in7.0.0
DEMOS
- REACT-VITE "Basic" TypeScript and JavaScript demos have been updated to use to React + Vite. The new demo is located in
examples/frameworks/react-vite/basicfolder (9932) - VUE-3-VITE "Basic" (Vue 3 + Vite) demo has been updated to use TypeScript. The demo is located in
examples/frameworks/vue-3-vite/basicfolder (9808)
BUG FIXES
- 9241 – Implement support for configuration with rows higher than paper size
- 9412 – HIGH PRIO php demo cannot handle remote filter properly
- 10106 – Row reorder handle was misaligned
- 10107 – Pasting rowCopy data into cells failed in some cases
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 6.1.1
2024-09-27API CHANGES
- Popups now realign automatically when scrolling if
anchoris configured.
BUG FIXES
- 9566 – TYPESCRIPT Nullable child items need type null for TS apps
- 9914 – HIGH PRIO
animateTreeNodeTogglewith locked columns places rows incorrectly
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 6.1.0
2024-09-18FEATURES / ENHANCEMENTS
- Group feature now offers to show a checkbox in group row headers via
selectionMode.showCheckAllInGroupRows(2208) - Model now supports fields being calculated via the new
calculateproperty (3070) - The regular non-Ajax
Storenow has the ability to accept remote paging, sorting and filtering (6860, 8180, 9363, 9887) - The
FilterBarfeature now supports remote filtering without usingAjaxStore(7477) AjaxStorehas new configs that lets you transform incoming and outgoing data:transformLoadedData,transformCreationData,transformModificationData,transformRemovalData(8314)Column.typeinstance member is now public (9229)- The
TreeGroupfeature now supports summaries in each group parent row using the Columnsumconfig. See this in action in the updatedtree-groupingdemo (9716) ExcelExportfeature got a minor refactoring, and now uses more feature-richwrite-excel-filelibrary (6089)
BUG FIXES
- 9319 – Exceptions when copy-pasting records in Grid demo with charts
- 9468 – Crash when selecting date in fullscreen docs fiddle
- 9876 –
DateRangeFieldpicker wrongly scrolls right one month when picker is shown (Firefox only) - 9955 – Aggregation demo total column shows only
$0 - 9959 – Grid crashes when deleting records with group checkbox selected
- 10043 –
DayTimeincludes end on startTime and start on endTime
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 6.0.6
2024-09-13FEATURES / ENHANCEMENTS
- Added a
ignoreLinkRecordsconfig toStoreChain, to avoid importing linked records from a master store, such as when you group by an array field (9840)
DEMOS
- ANGULAR Added new demo showing how to create a custom theme by modifying scss variables. The demo is located in the
frameworks/angular/custom-themefolder - VUE-3 Added new demo showing how to create a custom theme by modifying scss variables. The demo is located in the
frameworks/vue-3/custom-themefolder - REACT-VITE Added new demo showing how to create a custom theme by modifying scss variables. The demo is located in the
frameworks/react-vite/custom-themefolder - REACT-VITE New renderer context demo showing how to configure React renderers to use the React Context. The demo is located in the
frameworks/react-vite/renderer-contextfolder (Fixed 8923)
BUG FIXES
- 8998 – Printing Gantt with more than 3000 records causing application to crash
- 9298 –
LazyLoadbeforeLoadevent isn’t triggered - 9671 – HIGH PRIO REACT Grid column renderer flickering when row is updated
- 9746 – SALESFORCE
RowExpanderdoesn’t expand records in Salesforce - 9748 – View is not updating on adding resources using
addmethod with lock rows feature and grouping - 9758 –
aria-readonlynot properly set on Grid cell - 9767 – Column filter returns undesired results
- 9872 – Records are not persisted when group is collapsed
- 9896 – Grid not rendering any data in Firefox 115 ESR
- 9905 – Accessibility issue in date picker widget, toolbar buttons should not have
role="presentation" - 9913 – Grouping from header menu is broken
- 9927 – Accessibility
DatePickerdoesn’t announce selection status and week day name for selected date in date picker - 9950 –
RowExpanderwill often become detached from record - 9988 – Exception when moving record with empty group value
- 10006 – Placeholder should not be visible after selecting an item in combo with no label
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 6.0.5
2024-08-30FEATURES / ENHANCEMENTS
- DatePicker now supports selecting ranges by tapping twice on touch devices when
multiSelectis enabled
BUG FIXES
- 5233 – ANGULAR Frameworks wrappers components not triggering some events
- 9572 – Default currency from locale not used
- 9712 –
store.createRecord()behavior different withuseRawData - 9718 – VUE-3 Preventable events don’t work in Vue wrapper
- 9738 – TYPESCRIPT
FieldTriggerclass missing docs for its activation key - 9754 –
EventHelper.onTransitionEndcalls its handler usingglobalThisifglobalThis.callbackexists - 9770 –
FillHandlenot moving to active cell afterEnterkey press - 9771 –
beforeCloseevent should handle asynchronous listeners - 9772 –
Containershould be able to track presence of changes to its fields - 9779 –
ActionColumndoes not callonClickhandler for items created by a renderer - 9781 –
AjaxStoreevents, which contain url should read back the url property so that handlers can mutate it - 9797 –
lazyLoadwith TreeGrid hangs - 9801 – Lock rows feature display broken with grouping and filtering
- 9802 – Text cells show as dirty changes when reverting values to empty string
- 9805 – HIGH PRIO Grid freezes when row reordering in column using an array field
- 9819 – Font awesome tree arrows too big on touch screen
- 9851 – Crash on array column when grouping
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 6.0.4
2024-08-02FEATURES / ENHANCEMENTS
- The difference between
Model.fieldsandModel.allFieldswas clarified in the documentation (9700)
BUG FIXES
- 8328 –
Panelfields items not being populated from record config - 9672 – Incorrect docs for navigate event
- 9680 –
RatingColumnvalue not exported to Excel
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 6.0.3
2024-07-26FEATURES / ENHANCEMENTS
- Store now fires
beforeFilterevent before filters are changed (9652) - The plugin processing has been updated to correctly handle multiple plugin configurations
BUG FIXES
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 6.0.2
2024-07-24FEATURES / ENHANCEMENTS
- Bumped the built-in version of FontAwesome Free to
v6.6.0, which includes a new table-cells-row-unlock icon sponsored by Bryntum - The
getCount()function ofStorenow accepts an options object, letting an app control how records in the store are counted (for example if filtered out records should be included in the count or not) (8737) - Added a
totalCountproperty toStoreandAjaxStore. It replaces the existingallCountproperty, but has a better defined behavior, and the name also matches thetotalproperty that is expected to be passed in the dataset when using paging
API CHANGES
- DEPRECATED
Store.allCountandStore.originalCountwas deprecated. Their behavior was not well documented or clear, we recommend usingStore.totalCountorStore.getCount(options)instead to count the records in the store in the way your app needs - DEPRECATED The
Store.getCount(true/false)signature has been deprecated. UseStore.getCount(options)instead for better control of how records are counted GridRowModelnow has a newfixedfield built-in (used byLockRowsfeature)
DEMOS
- REACT-REMIX "Basic" (React + Remix) demo shows using Grid component in Remix. The demo is located in
frameworks/react-remix/basicfolder (4912)
BUG FIXES
- 8835 –
FillHandleRTL issues - 9462 – Summary row cells misaligned when using variable column flex
- 9481 – Filter lost when no results present with remote filtering
- 9521 – Deleting a row while cell editing makes the value disappear in the next row
- 9530 –
LoadMaskonly masks top grid section when usingLockRowsfeature - 9545 – Getting
Undefinedif no value passed toitemsproperty of filter - 9548 – TYPESCRIPT
mergeRendereris not well documented - 9573 – Column custom
ariaLabelis reverted to the default on focus in Cell
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 6.0.1
2024-07-05FEATURES / ENHANCEMENTS
- PERFORMANCE New
refreshOnlyAffectedSummariesproperty added to theSummaryfeature which only refreshes column summaries affected by a record update. (9511)
BUG FIXES
- 9077 – Filter combo not showing correct text when set to false when filtering
ManuallyScheduledcolumn - 9198 – Grid printing does not handle auto height rows
- 9295 – Grid Print hangs if the store has no visible records
- 9419 – Column lines showing on header when
columnLinesis set tofalse - 9436 – DOCS Improve docs and type for
colorsproperty - 9445 – Button rendered in cell HTML prevents selection
- 9463 –
Rowreorderhandle misplaced in right-aligned column - 9480 – Incorrect tooltip and filter icon when no option is selected in
multiSelectFiltercombo - 9489 – Styling issue for
ColumnManagerPopup - 9495 – Fill Handle Issue when change column definitions
- 9510 – Exiting grouping breaks the Stripe feature
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 6.0.0
2024-06-28We are thrilled to announce version 6.0 of our Grid product. This release marks a significant milestone for us after more than two years of dedicated development. In this update, we are excited to bring you:
- Lazy loading of rows as you scroll, for huge datasets
- Support for freezing rows
- New
DateRangeFieldwidget - Support for rendering widgets into grid column headers
- Drag-drop of rows between different Grids and TreeGrids
- Improved TypeScript typings
- A new code editor in the examples for easy fiddling
- Cool new demos
- Bug fixes and other enhancements requested by our community
A special thanks to everyone who helped us by testing our alpha and beta versions. Your feedback and support have been invaluable
FEATURES / ENHANCEMENTS
- The List widget now offers a
tooltipTemplatemethod to show a tooltip text for each list item (887) - Stores now have support for lazy loading of data, which when used in the Grid, loads new records while scrolling (1804, 8001)
- Added a new
DateRangeFieldwidget for picking a range of dates (1888) - Convert button to
menuitemonToolbaroverflow where appropriate (2298) - Programmatically expanding & collapsing a
Panelwas made easier by addingexpandPanel()andcollapsePanel()methods (5871) - The
RowCopyPastefeature has been enhanced in two ways. It now creates clones of the copied records immediately on a copy action. This makes the copied data unaffected by any Store changes between the time of copying and the time of pasting. Additionally, when copy-pasting between different Grid instances, the complete record will be copied, not just the fields that have a corresponding column, as it was previous (6379) - PDF export server has been moved from
examples/_shared/serverfolder to its own GitHub repository: https://github.com/bryntum/pdf-export-server (6820) - Columns now support having widgets rendered into their header via the new
headerWidgetsconfig. See it in action in thenested-grid-with-chartdemo (6855) - The default format for
NumberFieldandNumberColumnnow includes all numeric-related configs from the current locale, like decimals separator, grouping separator etc. (6948) - The
ColumnReorderfeature has a new propertystretchedDragProxywhich displays a full-height transparent element while you reposition the column (7870) - The
AjaxStore'scommitfunction now queues calls being made while already committing instead of aborting and returningfalse. Previously, when a commit was finished, all Store changes were cleared. Now, only changes related to the actual commit will be cleared, so any changes being made after the commit call and before the commit finishes will be left untouched (7980) - Elevate
tabIndexconfig fromTextFieldtoField(8010) ButtonGroupshould allow multiple toggled buttons (8142)- Add
tabIndexconfig to Button (8166) - STYLING The
DatePickerno longer uses a background color in its header, for a cleaner look (8187) - DOCS Documented step triggers for
DateField,NumberField,TimeField&DurationField(8270) - Grid state mechanism now supports the
TreeGroupfeature (8364) - The
RowReorderfeature now supports dragging rows into other grid instances (9225) - ACCESSIBILITY Buttons without text now adds the tooltip text to the
aria-labelattribute (9360) DurationFieldnow acceptsstepas a duration string (e.g."15min")- New
columnCollapseToggleevent fired by Grid when a group column is collapsed or expanded. Thecollapsible-columnsdemo was updated to use this event (previously used private event), so if you copied code from this demo, you may want to review and update your code. - The code editor in examples is now implemented with the VS Code engine. Code folding, search and replace, full undo/redo is now available when editing examples
- To better follow readability recommendations,
NumberColumnnow defaults to aligning its content to the end (right for LTR, left for RTL) - TypeScript Class configs
Config(e.g.ButtonConfig) now provide type declarations forlistenersparameter in.d.tsfiles - TypeScript Class configs
Config(e.g.ButtonConfig) types now have optional parameters in.d.tsfiles.*Configtype can be used instead ofPartial<*Config>declaration PercentColumnnow offers to render a circular percent indicator via the newmodeconfig- The
Filterfeature now supports columns with afilterableconfig in the new multi-filter UI - Bumped the built-in version of FontAwesome Free to
v6.5.2, which includes a new table-cells-row-lock icon sponsored by Bryntum - Angular Bryntum Angular wrapper now exports
Bryntum...Propstypes (e.g.BryntumGridProps) which match the configs available for a wrapper component (e.g.BryntumGridComponent). Wrappers code is now delivered with documentation inside, that helps in setting up the components - The Group feature has a new
headerHeightproperty to easily change group header row heights. EventHelperno longer mutates the DOM event object to fix browser quirks and add utility properties. It now wraps the DOM event with a Proxy, which exposes all the properties of the DOM event and also accepts any new properties added to it. The original DOM event is available in thebrowserEventproperty- New
alwaysMultiSelectselection mode added to Grid, where all row or cell (configurable) clicks adds to the current selection. Click on a selected row or cell deselects it - The
RowCopyPastefeature is now configurable withcutOnly, which translates all copy actions into cut actions and prevents theCopycontext menu option
API CHANGES
- VUE-3 Bryntum Vue-3 wrapper now exports
Bryntum...Propstypes (e.g.BryntumGridProps) which match the configs available for a wrapper component (e.g.<bryntum-grid>). Wrappers code is now delivered with documentation and TypeScript sources inside (3085) - BREAKING Previously, when returning
undefinedfrom a column renderer, the actual cell will not be updated. There is a config onGrid.column.Columnwhich controls this behaviour –alwaysClearCell. Since 6.0,alwaysClearCellwill default totrue, requiring columns that relies on the previous behaviour to be configured withalwaysClearCellset tofalse(5622) - DEPRECATED The
WidgetHelperutility class has been deprecated and will be removed in a future release. Use the corresponding widget class instead –Widget,ToastorMask(6103) - DEPRECATED The
beforeExpand,expand,beforeCollapseandcollapseevents triggered by theRowExpanderfeature are now deprecated. Use the newbeforeRowExpand,rowExpand,beforeRowCollapseandrowCollapseevents on Grid instead (7845) - BREAKING
DateColumnnow warns when not using aDateDataFieldin the underlying field definition of theModel. ADateDataFieldwill be created in this case, which results in thevalueprovided to theDateColumnrenderermethod will now always beDateobjects (previouslyStringtype if data was not parsed) (8226) - STYLING Tooltips with pure text contents (non-HTML) are now shown with less body padding (8287)
- BREAKING The
useRawDatasetting onStoreis now enabled by default, but with all sub-settings disabled. This means that the incoming data object will be used as is, without being cloned. Which will boost data loading performance, but is potentially a breaking change if the data object is reused / used in other parts of the application (8335) - To allow defining multiple filters with same
propertybut differentoperator, filter ids are now generated by combiningpropertyandoperator(property-operator, previously onlyproperty). For examplevalue-=andvalue-<(8482) - BREAKING In
6.0.0-alpha-2we changed the default value foruseRawDataon stores totrue. This boosted record creation performance by not cloning the incoming data object. However, this change has lead to some issues, and we are now taking a step back. It will once again default tofalsewhen supplying data inline, and instead only totruewhen data is loaded remotely using anAjaxStore(9289) - The
RowCopyPastefeature’s eventscopyandbeforePastehas gotten their parameters slightly changed. The parameterrecordsnow contains clones of the copied records, and the original copied records can be found in the parameteroriginalRecords(these parameters are wrapped in a single event object) - Field´s
highlightExternalChangedefault value is nowfalse - BREAKING
keepDateconfig of theTimeFieldclass now defaults totrue(previouslyfalse) - DEPRECATED
@bryntum/babel-preset-react-app,@bryntum/cra-template-typescript-grid,@bryntum/cra-template-javascript-gridnpm packages are deprecated, and will not get any further updates. Versions prior to6.0.0are still accessible - BREAKING The following previously deprecated APIs were removed:
BrowserHelper.supportsPassive(v5.0.0)CalendarPanel.showWeekNumber(v4.0.0)DomHelper.up()(v5.3.9)DomHelper.focusWithoutScrolling()(v5.6.4)DomHelper.addClasses()(v5.0.0)DomHelper.removeClasses()(v5.0.0)FieldFilterPicker.fieldsarray form (v5.3.0)FieldFilterPickerGroup.fieldsarray form (v5.3.0)LocaleManager.registerLocale()(v5.3.0)LocaleManager.extendLocale()(v5.3.0)NumberField.decimalPrecision(v3.1.0)NumberField.leadingZeroes(v3.1.0)PickerField.autoClose(v5.5.5)Breakpointtypedef (v5.0.0)Responsive.responsiveHeightChangeevent (v5.0.0)Responsive.responsiveWidthChangeevent (v5.0.0)Responsive.breakpointsconfig (v5.0.0)recordparam for theStore.moveevent (v4.1.4)Store.storeId(v3.0.0)Widget.showByPoint()(v5.0.2)- The
gridRowBeforeDragStart,gridRowDragStart,gridRowDrag,gridRowBeforeDropFinalize,gridRowDrop,
gridRowAbortevents triggered directly on theRowReorderfeature (v5.3.3)recordparam for thegridRowDropevent (v4.0.0)Grid.navigateLeft()argument (v5.2.1)Grid.navigateRight()argument (v5.2.1)Grid.navigateUp()argument (v5.2.1)Grid.navigateDown()argument (v5.2.1)Filter.isMulti(v5.6.0)Grid.selectionModel.rowCheckboxSelection(v5.3.3)PdfExport.enableDirectRendering(v5.2.0)
- The
Pointutility class has afrom()function that creates aPointfrom anEvent. The coordinates for thatPointare now in client space, not screen space - BREAKING The following default values were changed:
Combo.clearTextOnSelectionnow defaults totrueColumn.alwaysClearCellnow defaults totrueStore.fireRemoveEventForMoveActionnow defaults tofalseGrid.animateTreeNodeTogglenow defaults totrueRegionResize.animateCollapseExpandnow defaults totrue
- BREAKING The following previously deprecated APIs were removed:
Store.idField(v2.0.0)TextAreaPickerField.inline(v4.3.7)eventargument ofGrid.navigateUp/Down/Left/Right()(v5.2.1)
- BREAKING The following menu item keys have been renamed:
editFilter->filterEditdisableFilter->filterDisableremoveFilter->filterRemove
- BREAKING The
Grid.util.Locationclass has been renamed toGrid.util.GridLocationto not match the nativeLocationclass name FilterBarfeature now uses=operator by default when filtering inNumberColumn(previously used*operator)Duration.toString(true)now uses a shorter representation without space ('5d', previous'5 d')- The
CheckColumnminWidthconfig was changed to30px - BREAKING The
sourceevent param in allRowReorderevents have been changed to the Grid instance to conform with how other events are fired
STYLING CHANGES
- The Stockholm theme got some slight tweaks to panel header (removed bottom border) and tab panel styling (replaced active tab background with thick bottom border) for a more modern look (8440)
- New
uifor Panel calledplainwhich uses a single background color for the panel and no border/background for header or toolbars MessageDialognow uses the newplainrendition- The
b-grid-emptyCSS class is now added to the root Grid element when there are no rows (previously this CSS class was put on the body container element)
LOCALE UPDATES
- New locale key for the
LockRowsfeature,unlockRow
DEMOS
- VUE-3-VITE New demo showing how to use
FieldFilterPickerGroupto filter a Grid store, synchronized with the Grid Filter feature. The demo is located inframeworks/vue-3-vite/fieldfiltersfolder (8836) columnsdemo has be updated to show how to add, remove, rename, rearrange and resize columns (9214)- New
nested-grid-with-chartdemo showing how to embed custom widgets such as a 3rd party charting library - New
drag-between-gridsdemo showing how to drag rows between differentGridinstances - New
drag-between-treesdemo showing how to drag rows between differentTreeGridinstances - New
grid-taskboarddemo showing how to combine theGridandTaskBoardwidgets
BUG FIXES
- 4933 – Toggleable button loses state when moved to toolbar overflow menu
- 5074 – HIGH PRIO Returning
undefinedfrom column renderer produces unexpected content - 6441 – Instance config values should not be overridden by responsive configs
- 6854 – Pressed state lost as button in
ButtonGroupenters an overflow menu - 7760 – HIGH PRIO TypeScript Type intersection with
anymight be wrong - 7826 –
FilterBarCombofield icons missing padding - 7827 – Misalignment when using
FilterBarwith compactMode for non-left aligned columns - 8171 –
FieldFilterPickerGroupconfiglimitToPropertyshould also apply to configuredfilters - 8329 – HIGH PRIO PDF generated using Gantt Print Feature showing duplicate tasks
- 8409 – Crash when selecting date in
DateRangeFieldwith null value - 8459 – HIGH PRIO
Carouselshould support swipe gesture scrolling for mobile/touch - 8463 – Widgets in overflow menu fire events twice
- 8510 – Should be possible to add
FilterBaronly for an individual column - 8513 – Example Code editor does not destroy old example widgets when new code is evaluated
- 8523 –
SlideToggleinside overflow menu triggers 2 change events - 8559 –
DurationFieldnot working withFilterBar - 8569 –
LockRowsfeature should leave the store unchanged - 8580 – Event disappears if dropped on locked row
- 8582 – Locked row styling tweaks
- 8586 – HIGH PRIO Records disappeared on "Add" button click and quickly scroll to bottom and top
- 8589 – Cutting from locked rows and pasting to normal rows doesn’t paste to the normal rows and vice versa
- 8604 – Code editor should have dark splitter in dark theme
- 8605 – Crash when adding
?code=1to example URL to show editor initially - 8612 – Code panel collapse animation reveals vertical placeholder at the end of the animation
- 8613 – Duplicate row numbers when using
LockRows+RowNumbercolumn - 8614 –
LockRowsfeature does a full render before setting up locking - 8615 – Cell widths out of sync with locked rows +
autoWidthcolumns - 8616 – Lock rows feature will trigger a filter after every change to the data
- 8621 – Nested grid with chart demo: Outer grid not updated when editing inner grid data
- 8698 – Panel header changes size when collapsing / expanding panel in Stockholm theme
- 8813 – HIGH PRIO Toolbar items lose their value when moved into toolbar overflow menu
- 9058 –
LockRowsfeature does not supportGroupfeature - 9066 –
CellEditnot compatible withLockRows - 9080 –
LockRowsnot compatible with checkbox selection - 9085 – REACT
6.0.0-alpha-3thin packages"Can't resolve 'vs/editor/editor.main'"error on build - 9101 – Crash in
lock-rowsdemo when using "Fix by color" field - 9103 –
Nested-grid-with-chartdemo not updating nested grid when outer grid changes - 9105 – Grid
Infinite Scrolldemo crash on applying filter - 9108 – No option to enter value for a filter in Infinite Scroll Demo
- 9138 –
LockRowsnot compatible with remote data - 9284 –
Checkbox‘s overflow twin lacks text - 9318 – Item cannot be dropped last in drag between grids demo
- 9320 – Group header menu should not show option to lock/unlock the row
- 9333 – Grid
drag-between-treesdemo throws when dragging to emptyTreeGrid - 9334 – Grid
drag-between-griddemo shows wrong drop position when dragging to emptyGrid - 9369 –
TreeGroupon name and usingparentRendererresulting in crash - 9419 – Column lines showing on header when columnLines is set to false
- 9444 – MessageDialog prompt is not setting value for textField
FRAMEWORK SUPPORT
- NodeJS:
>= 20.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.13
2024-06-26FEATURES / ENHANCEMENTS
Filterfeature column header tooltips now display localized text for active filter operators, e.g.equalsinstead of=(9338)- ACCESSIBILITY ActionColumn actions now support
ariaLabelattribute to add a descriptive text for screenreaders (9377) - Added documentation for two new Grid events:
horizontalScrollandhorizontalScrollEnd(5064)
API CHANGES
ContextMenusno longer callevent.preventDefault()if there are no items to show (meaning native context menu will be shown). To prevent native menus from showing, please use the newpreventNativeMenuconfig option- Column
gridproperty is now public (9409)
DEMOS
- VUE-3-NUXT "Basic" (NUXT) demo shows using Grid component in NUXT. The demo is located in
frameworks/vue-3-nuxt/basicfolder (9200)
BUG FIXES
- 9369 –
TreeGroupon name and usingparentRendererresulting in crash - 9375 – Grid navigation fails when no cell is focused
- 9376 – Activate button in Action Column with
Spacebar - 9384 – Cell menu disabled when Grid is
readOnly - 9390 – HIGH PRIO Buttons in grid
WidgetColumncells cannot be invoked using keyboard
FRAMEWORK SUPPORT
- NodeJS:
>= 14.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.12
2024-06-13FEATURES / ENHANCEMENTS
- The
refreshRows()method available onGridnow optionally accepts an array of records, to only refresh the corresponding rows (9179) - New events
beforeExcelExportandbeforeCSVExportare added, which will be triggered before Excel and CSV export respectively (8511)
API CHANGES
- Combo dropdowns now auto width around visible content, but match at least the width of the Combo’s input area (9252)
- VUE REACT When using wrappers for Vue or React,
syncDataOnLoadis by default set totrueon all stores configured on the wrapped Widget. Starting from5.6.12, stores with a configuredreadUrlwill have theirsyncDataOnLoaddefault tonull
BUG FIXES
- 8762 – TypeScript incorrect declaration of
GridConfigcomparing to the docs - 8890 – Nested relation field does not call custom setter for field
- 8955 –
fillHandleBeforeDragFinalizeparamsfromandtonot correct when dragging from bottom to top cell - 9065 – HIGH PRIO Copy/paste keyboard shortcuts do not work with Salesforce
Locker - 9111 –
CellEditthrows exception when autocompleting field in Safari - 9235 – Grid row reorder proxy does not stay in view when triggering side scrolling
- 9246 – HIGH PRIO
idfield on model is not persistent anymore - 9248 – RowReorder
showGripinterferes with rendering of group headers - 9253 – Accessibility Editing not started when pressing
Enteron cells in aPercentColumn - 9254 – First added tab to a
TabPaneldoes not initially get the b-active rendition - 9257 – Accessibility
aria-readonlyattribute should be set on readOnly row cells - 9263 – Unable to use "is one of" operator in Grid
filterfeature when usingAjaxStoreandfilterParam - 9273 – Tree Grouping support for rounding values when tree-grouping
NumberColumn - 9343 – HIGH PRIO Crash on restoring grid state when a column has
autoWidthconfigured - 9362 – Summary row disappears after moving column with empty data store
FRAMEWORK SUPPORT
- NodeJS:
>= 14.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.11
2024-05-21FEATURES / ENHANCEMENTS
- A new static boolean property,
Widget.accessibilitywas added, which, when set totruecauses tooltips to be activated onfocusin addition tomouseover(5539) - Vanilla JavaScript documentation has a new section on Multiple Products, showing how to use multiple components in a single page using
thincomponents (8756) - You can now configure
enableRecurringEventswith adefaultActionparameter, to always choose a predefined action,singleto always only process the selected event, orfutureto change all future events (7606) AjaxStorehas a new config calledincludeChildrenInRemoveRequest, that controls if a remove request includes the id of a removed parent and all its children, or just the id of the removed parent (8099)- Column now supports configuring its
ariaLabelandcellAriaLabelDOM attributes
API CHANGES
- Added HTML encoding strings displayed by various widgets such as
FilePickertooltip,Slider,Tooltipand others. - You can now prevent a
SubGridfrom being fully expanded by providing amaxWidthto it in thesubGridConfigsobject. This will also automatically hide the expand button inside the Grid splitter (8775) - After a docs regression, several APIs flagged to be hidden in subclasses were still visible in the docs. These APIs are now correctly hidden (9140)
BUG FIXES
- 8148 – HIGH PRIO State is not saving in grouped column headers when reordering child to another group
- 8319 – HIGH PRIO Grouping rows should not have Stripe color
- 9011 – VUE-3 Filter field is not editable once filtered when data is loaded using
AjaxStore.readUrl - 9050 – Menu detached from submenu after hiding column
- 9057 – DOCS
FieldFilterPickerdocs inline example doesn’t apply filter at initial startup - 9064 – VULNERABILITY Fixed a bug regarding menu item texts not being HTML-encoded
- 9075 – Error when hiding/showing a combo type column filter
- 9091 – Grid Column ignores field’s set value when field is localized
- 9106 – Autocomplete icon in
FilterBarin Safari - 9109 – Nbr items empty in master-detail demo
- 9126 –
headerRendereris not taken into account while exporting data into Excel file - 9137 – Popup focus should go to descendant widget instead of maximizable
- 9146 – HIGH PRIO Incorrectly generated snippets for
on-ownerevents - 9160 –
hasChangesshould always return a boolean value - 9170 –
clearChildrendoes not convert parent to leaf whenconvertEmptyParentToLeafis enabled - 9172 – Crash when pressing
F3with QuickFind enabled - 9197 – Crash when using
TreeGroupwith hidden column - 9199 – Nested grid demo crashes when grouped
- 9210 –
TreeGroupnode toggle fails when a group field is an array
FRAMEWORK SUPPORT
- NodeJS:
>= 14.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.10
2024-04-24FEATURES / ENHANCEMENTS
CalendarPanel(and its subclassDatePicker) may now be configured with anonWorkingDaysobject, which is separate from weekend days while weekend days continue to exist in their fixed position (8914)Storehas a newhasChangesproperty, it is cheaper thanchangesto use if you only need to know if there are changes or notAjaxStorehas a newparamsInBodyconfig that allows sending parameters in the request body instead of the URL query string (4058)- Model (=records) has a new
getUnmodified()function that returns the unmodified value of a field (9029)
BUG FIXES
- 7860 – Allow specifying custom default operator by data type for Grid filter feature
- 8725 – HIGH PRIO
TreeGroupID collision when multiple groups are applied and column with array data is at the top - 8751 – HIGH PRIO Not possible to increase the width of the last column
- 8896 – DOCS Beef up docs about not supporting non-standard operators
- 8910 –
filterFndoes not work withonChangeinFilterFieldconfig - 8926 – DEMO Crash when dragging equipment using touch gesture
- 8947 – Empty
treegriddemo - 8959 – Floating widget doesn’t realign if target transitions
- 8965 – HIGH PRIO Toolbar overflow synced excessively
- 8984 – Filtering crashes when combo widget column has a value
- 8992 – ANGULAR implement support of
ViewEncapsulation.ShadowDom - 8993 – The anchor gap between an aligned, anchored widget and its target allows a mouseout to be fired
- 9035 – Crash when pressing Cancel button in Excel import demo
FRAMEWORK SUPPORT
- NodeJS:
>= 14.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.9
2024-04-09FEATURES / ENHANCEMENTS
- The
MergeCellsfeature has a newshouldMergehook that can be implemented in an app to control which cells should be included in a detected range (8724) - Records that relates to other records with the use of the
Modelclass’s staticrelationsconfig can now propagate their changes to the related records stores. This is useful if you have multiple widgets that you want to refresh when a related record changes. For example, showing row details in a nested grid using theRowExpander. See this in action in theNested gridsdemo. The new behaviour is opt-in, you need to set the newpropagateRecordChangesproperty on theRelationConfigobject (8671) - The
FillHandlefeature will now draw the fill handle in the bottom right corner even when the cell selection ends on the last column (8826)
LOCALE UPDATES
- Added Brazilian Portuguese translation (
'PtBr') (8747)
DEMOS
- VUE-3-VITE New "Summary" demo (Vue 3 + Vite) shows the Summary feature. The demo is located in
frameworks/vue-3-vite/summaryfolder (8385) - ANGULAR New "Summary" demo (Angular) shows the Summary feature. The demo is located in
frameworks/angular/summaryfolder (8386) - REACT-VITE New "Paged grid with mocked Ajax" demo (React + Vite) shows that the grid can access large data sets page by page. Uses remote sorting and filtering with mocked Ajax. The demo is located in
frameworks/react-vite/pagedfolder (8662) - VUE-3-VITE New "Paged grid with mocked Ajax" demo (Vue 3 + Vite) shows that the grid can access large data sets page by page. Uses remote sorting and filtering with mocked Ajax. The demo is located in
frameworks/vue-3-vite/pagedfolder (8663) - ANGULAR New "Paged grid with mocked Ajax" demo (Angular) shows that the grid can access large data sets page by page. Uses remote sorting and filtering with mocked Ajax. The demo is located in
frameworks/angular/pagedfolder (8664) - VUE-3-VITE New "Scaling" demo (Vue 3 + Vite) shows how setting the font-size affects the size of the grid and widgets. Made possible since grid is styled using ’em’ for sizes. The demo is located in
frameworks/vue-3-vite/scalingfolder (8413) - ANGULAR New "Scaling" demo (Angular) shows how setting the font-size affects the size of the grid and widgets. Made possible since grid is styled using ’em’ for sizes. The demo is located in
frameworks/angular/scalingfolder (8414)
BUG FIXES
- 6646 – State of columns is not restored for columns w/o ids
- 7267 – Request for improved API for custom cell editors
- 7662 – Resizing a solitary
flexColumn withmaxWidthdoes not work - 8519 – HIGH PRIO VUE 3 Repeated cell content on grid scrolling with Vue renderers 8519
- 8652 – LWC Selection breaks when click outside Grid
- 8672 – TypeScript Bbar and Tbar type error
- 8700 – Cannot set value manually for widget column fields
- 8748 – Cannot disable or hide file picker badge (now doable with
showBadgeconfig) - 8759 – TOUCH Pressing enter in cell editor does not move editor to the next cell
- 8761 – Popup positioning incorrect when maximized with
centeredandmaximizable - 8791 – Nested grid should have exposed relation property on its records
- 8807 –
dragSelectdoes not work in Salesforce - 8808 –
Model.clearChanges()doesn’t update the UI - 8815 –
DateTimeFieldeditor onColumnthrows an error on start editing - 8821 – Grid columns not scrolling into view when using keyboard navigation on column header
- 8823 – HIGH PRIO The
RowNumberColumndocumentation does not display the description of configs - 8824 – DOCS Class disappears after hiding public members
- 8840 – List "Select all" text not localized dynamically
- 8846 – HIGH PRIO Vue-3 Crash when filtering in column header with config
vue: trueon column - 8856 – Action
OnClicknot working when using svg + path - 8867 – The
rowexpander-regionsdemo shows linked records generated ids - 8875 –
DateHelperstartOfweek method does not return correct output for Sunday - 8880 – Modal masks for multiple popups are not working
- 8912 –
isPagedproperty on AjaxStore should be boolean - 8946 – Broken layout in Tree Grid Demo in Vue3 + Vite
FRAMEWORK SUPPORT
- NodeJS:
>= 14.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.8
2024-03-04FEATURES / ENHANCEMENTS
- The
Listclass now has atitleproperty, which shows a title above the first item (8714) - The
Printfeature now prints background colors without users having to check the "Background graphics" option in the print dialog (8716)
BUG FIXES
- 7297 – Not navigable to next month if selected date is next month
- 8547 – TypeScript Improve constructor declarations
- 8628 – HIGH PRIO Renderer of
CheckColumnsubclass does not havewidgetsparam - 8648 – HIGH PRIO Pressing delete in
GroupBarcauses crash - 8694 –
DatePickershould always navigate to the month of the selected date - 8697 – Vertical misalignment of filter field check box
FRAMEWORK SUPPORT
- NodeJS:
>= 14.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.7
2024-02-22FEATURES / ENHANCEMENTS
- New
expandToLevelmethod forTreeto expand the tree to an arbitrary depth (8390) - A warning message is now shown when
autoHeightis enabled for Grid with 200+ rows (8068) - The
scrollIntoViewoption in the grid selection API now accepts aBryntumScrollOptionsobject to describe how to scroll. To the start or end, animated or snap etc. (8631)
API CHANGES
- The
StateTrackingManager(STM) will by default (ifautoRecordistrue) merge update actions on the same record (in same transaction), keeping the oldest, and the newest values. A transaction will almost always only contain one update action per record. If the previous behaviour is desired, you can configure theStateTrackingManagerwithautoRecordMergeUpdateActionsset tofalse. If you’re not usingautoRecord, then the transaction action can be merged by calling theStateTrackingManager‘s newmergeTransactionUpdateActionsfunction before the end of the transaction
BUG FIXES
- 6148 – Row reorder should not trigger when dragging sideways
- 7183 – Unexpected expansion of nodes when using search highlighting feature
- 8223 – HIGH PRIO Group header should stay in the left most grid region
- 8225 – HIGH PRIO
isExportparam is missing in Action column renderer params while exporting - 8375 – Make pinch -> CTRL / mousewheel opt outable
- 8381 – Panel loses height immediately when collapsing code editor
- 8393 – HIGH PRIO Incorrect indentation for tasks with no children placed after a task with children in name
- 8395 – TYPESCRIPT
DurationUnitDataFieldis missing from typings - 8399 – TYPESCRIPT DOCS Add a type of
columnconfig toDataField - 8423 – HIGH PRIO LWC Engine performance is too low with LWS enabled
- 8429 – HIGH PRIO
CellMenuacts on wrong row when usingselectOnKeyboardNavigation: false - 8460 – Cannot read properties of null (reading ‘constrainTo’)
- 8465 – HIGH PRIO Printing letter in landscape mode does not fit page
- 8484 – Two widget columns with same widget type acts wrong on column hide/show
- 8490 – Filter menu misaligns on selecting a value from Filter combo
- 8495 – Removing a record while in TreeGrouped state does not remove it from the original store
- 8512 – Dynamic column configuration / reactive data
- 8520 – Grouping not refreshing when using tree grouping
- 8539 – Crash when toggling full screen
- 8541 – Checkbox column rendered incorrectly after removing filter
- 8551 – HIGH PRIO Column reorder by drag and drop issues when children columns defined
- 8552 – HIGH PRIO LWC
tooltipRenderercut custom tags in LWS - 8553 – DOCS Combo
recordprop wrong docs - 8557 – DOCS Event handlers are not searchable in docs
- 8584 – It is possible to hide all columns with no chance to show them
FRAMEWORK SUPPORT
- NodeJS:
>= 14.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.6
2024-01-31FEATURES / ENHANCEMENTS
- Subgrids now support animated expansion and collapse with
regionResize: { animateCollapseExpand: true }(4183) - Grid now saves the collapsed state of groups in its default state saving mechanism (8103)
- Docs browser now shows code snippets for all events in the Events section (8213)
- Bumped built-in FontAwesome Free to version
6.5.1 - All frameworks demo applications have been verified and updated to be compatible with Node.js 20
- Grid
emptyTextnow accepts aDomConfigobject block (8253) - New
syncSortoption for chained stores, to always keep chained store data in the same order as the master store (8286) - Grid now fires
rowMouseEnter,rowMouseLeave,cellMouseEnter, andcellMouseLeaveevents (7282) - All context menu features which extend
ContextMenuBasenow include s reference to that feature in theirmenuContextobject which is passed toprocessItemsand event handlers
API CHANGES
- To boost record creation performance, records now cache their
id(it is accessed very frequently, helps performance a bit) and join their store(s) in a more efficient way. As a side effect, a record no longer has astoresarray prior to joining a store, previously it was there as an empty array from start. We don’t think this will affect any code, but wanted to share the change in case it does.
DEMOS
- ANGULAR New "Filtering" demo (Angular) shows how the grid can be filtered (by filtering its store which reflects onto the grid). The demo is located in
frameworks/angular/filteringfolder (8109) - VUE-3-VITE New "Filtering" demo (Vue 3 + Vite) shows how the grid can be filtered (by filtering its store which reflects onto the grid). The demo is located in
frameworks/vue-3-vite/filteringfolder (8110)
BUG FIXES
- 3627 –
Splitterissues on touch devices - 6675 – Keyboard shortcut not triggering Collapse / Expand when tree column outputs a link
- 7469 – Wrong value of
expandedwhen calling storetoJSONmethod - 7798 – HIGH PRIO REACT State Provider is not working
- 7836 – TYPESCRIPT Missing layout classes and config types
- 7847 – Undo not updating node to right position
- 8062 – Widget column’s menu is not opening consistently for some column
- 8170 – Strange background color when selecting multiple rows
- 8198 –
DurationFielddoes not show error tooltip when inputting invalid data - 8200 – Webpack build failed with
.min.cssfile - 8227 – Should not set region when column is moved inside a parent column
- 8229 – HIGH PRIO VUE Auto-size column doesn’t work for Vue renderer
- 8230 – Cell and header menu demo returns valid message when clicked
- 8239 –
ContextMenusaligned below click point instead of to the side - 8245 – HIGH PRIO
ENTERkey not working inside Fiddles in docs - 8249 – Group menu position issue
- 8266 –
namedItemsimprovements and addonActionfor menu items - 8269 – HIGH PRIO Issue with appending child to a collapsed parent in a filtered tree store
- 8281 – Updated task not appearing when it now matches filter after adding dependency
- 8298 – HIGH PRIO
Filterfeature is not working for nested columns - 8303 – Grid cell menu with string
namedItemsnot working - 8311 –
validateOnInputconfig not being respected when usingDateField - 8321 – HIGH PRIO
TreeGridnode duplication on collapse/expand in Docs - 8362 – Menu is always displayed in the top left corner
- 8373 –
Cannot read properties of undefined (reading 'button')
FRAMEWORK SUPPORT
- NodeJS:
>= 14.0.0 - TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.5
2024-01-09FEATURES / ENHANCEMENTS
- It is now possible to show the
CellMenuprogrammatically, via the newshowMenuFormethod. See the docs and updatedcontextmenudemo for more information (4827)
API CHANGES
- TypeScript
elementparameter forElementListenerConfigtypedef andEventHelper.addListenermethod has been changed toEventTargettype (8139) Point.from()method will return a point relative to the page coordinates instead of screen coordinates as ofv6.0
DEMOS
- ANGULAR New Master detail demo (Angular) shows a multi-level grid-in-grid scenario for master/detail view, powered by the
RowExpanderfeature. The demo is located inframeworks/angular/master-detailfolder (8108) - REACT + VITE New Master detail demo (React + Vite) shows a multi-level grid-in-grid scenario for master/detail view, powered by the
RowExpanderfeature. The demo is located inframeworks/react-vite/master-detailfolder (8107) - VUE 3 + VITE New Master detail demo (Vue 3 + Vite) shows a multi-level grid-in-grid scenario for master/detail view, powered by the
RowExpanderfeature. The demo is located inframeworks/react-vite/master-detailfolder
BUG FIXES
- 2159 –
ActionColumnactionsrendererandtooltipfails when specified as functions and record argument is used - 4009 – Store
allRecordsgetter does not return all records when filtered and grouped - 7403 – Make a guide on how to make a theme selector in frameworks
- 7964 – REACT JSX doesn’t work in Popups
- 8012 –
ActionColumn‘sonClickhandler should have link in owner Grid instance in its params - 8116 – Disabled checkboxes can be selected with keyboard shortcut
- 8123 –
WidgetColumnleaks widgets and recreates new ones on column hide/show - 8129 –
KeyMapshould pass event and owningWidgetto handlers - 8130 – Grid is missing a
headerClickevent - 8146 – Error when set percentage width in column
- 8147 – Tree toggles nodes on
pointerupinstead ofclick - 8154 – Firefox Vertical scrolling in docs tree not working with trackpad
- 8165 – Row selection not updated during
ScrollManagerauto scroll - 8175 – Error on tab press after clicking column header with
FilterBarfeature - 8179 –
ascendingconfig not working inGroupfeature - 8191 –
PickerFieldwithautoExpand : truedoes not show picker when clicking trigger icon
FRAMEWORK SUPPORT
- TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.4
2023-12-21API CHANGES
- DEPRECATED The
DomHelper.focusWithoutScrollingmethod is deprecated because the native focus method now supports thepreventScrolloption on all platforms.
DEMOS
- ANGULAR Added new "Tree Grid" Angular demo which is located in the "examples/frameworks/angular/tree" folder
- REACT + VITE Added new "Tree Grid" React + Vite demo which is located in the "examples/frameworks/react-vite/tree" folder
- VUE 3 + VITE Added new "Tree Grid" Vue 3 + Vite demo which is located in the "examples/frameworks/vue-3-vite/tree" folder
BUG FIXES
- 6224 – Add event for ColumnResize to catch user resize action
- 7884 –
pdfExport.exportDialog.bbarbuttons config doesn’t propagate - 7919 – Improve
CellEditvalidation docs - 8028 – Store
min/maxfunctions returning inconsistent values - 8040 – Gantt doesn’t immediately display remotely appended rows when using
{ overscroll : true } - 8047 – Animated tree node collapse causes crash in docs
- 8072 – DOCS Update documentation of
beforeCloseevent return fromPopup - 8081 – Missing
TreeGridcomponent in Angular / React / Vue packages - 8085 – LWC does not support W3C standard
HTMLElement.replaceChildren
FRAMEWORK SUPPORT
- TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.3
2023-12-13FEATURES / ENHANCEMENTS
- The
Toastclass has asideconfig which may be specified as'top'to show the toast at the top of the screen (7910) FillHandlefeature now fires a number of useful events while dragging which allows you to cancel the start, or the finalization of the flow. SeeFillHandlefeature documentation for more information (7932)FillHandlefeature now also operates on leaf nodes inAggregationColumn- VUE-3-VITE New "Master detail" demo (VUE 3 + Vite) shows a multi-level grid-in-grid scenario for master/detail view, powered by the
RowExpanderfeature. The demo is located inframeworks/vue-3-vite/master-detailfolder (7781) - REACT Documentation in "Quick start" and "Guide" is now updated with how to build React application in Vite for higher efficiency and better performance in development
API CHANGES
- DEPRECATED Please kindly note that
@bryntum/babel-preset-react-appand@bryntum/cra-template-typescript-grid,@bryntum/cra-template-javascript-gridpackages will not get any updates after6.0.0version
BUG FIXES
- 1334 – Should be possible to delete a chip with backspace key
- 1335 – Typed text not removed after selecting value in multiselect combo
- 1966 – DOCS Copying code to the
FiddlePanelcode element in docs does not remove formatting - 7681 – LWC Defects of floating widgets in a Bryntum Grid inside a lightning-modal
- 7888 – Dock
start/endin footer configuration crashes the app - 7912 – Reloading tree store data throws exception in Grid
- 7918 – Multi value grouping cannot use field path name into a
StoreDataField - 7923 –
AjaxStorecommit requests not always sent - 7942 – Separator for combo box not working
- 7969 – Headers and cells misaligned when using
showGrip - 7976 – Content lost if setting
showDirtywhile scrolled down - 7977 – Should not enable cell replication for non-editable columns / cells
- 7982 – Widen splitter in all relevant splits on hover
- 7997 – The documentation of
NumberFormatis wrong - 7999 – Animated tree expands rows inserted at wrong index
- 8023 – Salesforce Toast doesn’t shown in Salesforce app
- 8036 – Copy to clipboard doesn’t work in some code blocks
FRAMEWORK SUPPORT
- TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.2
2023-11-24FEATURES / ENHANCEMENTS
- New
rowLinesconfig added to toggle display of row lines in theGrid - Added support for wrapping time when reaching min/max using steppers in the time picker (7580)
- REACT Docs and demos for custom column editors updated to show how to handle async
setState()calls, to avoid loosing column editor values
BUG FIXES
- 7092 – Feature mixin on-owner events are not exposed on class
- 7887 –
RowExpanderwith widget doesn’t work with Vite non-link CSS imports - 7894 – Grid
CellMenudoes not show when clicking top border of a row - 8213 –
NumberFormatConfigtypescript class is missing several configs due to docs issue inNumberFormat
FRAMEWORK SUPPORT
- TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.1
2023-11-17FEATURES / ENHANCEMENTS
- REACT New Cell Edit demo (React + Vite) showing how to use various grid cell editors. The demo is located in
frameworks/react-vite/cell-editfolder - REACT New Scaling demo (React + Vite) shows how setting the font-size affects the size of the grid and widgets. Made possible since grid is styled using ’em’ for sizes. The demo is located in
frameworks/react-vite/scalingfolder - Added support for filtering
TimeColumns (7692) - Added option to maintain scroll position during remote changes when the viewport is near the end of the scrollable range. Configure grid with
preserveScroll : { overscroll : true }to opt-in to the new behavior (7759) - Added support to programmatically refresh a Grid column header via the new
refreshHeaderandrefreshHeadersmethods (7843)
LOCALE UPDATES
- There is a new locale key
selectATime : 'Select time'which may be used byFieldFilterPicker‘s time input
BUG FIXES
- 4911 –
parentIndexis ignored with enabledtransformFlatData - 5719 – YARN Can not install
@bryntumproduct packages using yarn v2/v3 - 7459 – Made
pageSizea property - 7471 – Overriding feature’s keyMap from Widget doesn’t work
- 7703 –
NumberFieldlimits typed input tominimumFractionDigitsnotmaximumFractionDigits - 7733 – Event
cellMouseOutemits only once - 7750 – Vite error
@charset must precede all other statements - 7752 – Print code throws trying to access stylesheet internals
- 7754 – Frameworks Thin packages not working with
pnpm - 7783 – Detached expanded row body when sorting with
spanRegions - 7791 – Salesforce
RowExpanderthrows error when collapse the record - 7802 – Collapsible columns not opening
- 7810 – Undo/redo with outdent error
- 7817 –
Checkboxcolumn remains groupable even when specifically set tofalse - 7820 –
globalThisshould be defined in locales to support LWC - 7833 – Select all checkbox not functional when all grid groups are collapsed
- 7834 – Error in
TreeGroupwith filters - 7853 – Data unavailable when
resourceStoregroups in collapsed state
FRAMEWORK SUPPORT
- TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.6.0
2023-10-26FEATURES / ENHANCEMENTS
- This release introduces a new set of npm packages and framework components, that allows combining multiple Bryntum products in the same application. These packages contain the product specific code only, as opposed to the current packages that has all code for the products each product builds upon (for example Scheduler contains Grid & Core). The new packages are called
thinpackages, and moving forward it will be the recommended way of using Bryntum products in npm based applications (for all supported frameworks). See the "What’s new" guide for more information - Grouping may now group by an array field, which means that one record can be a member of more than one group. Linked records are used when a record must appear more than once in a store (5185)
- The
RowExpanderfeature now supports configuring different widget content for different regions (7035) - New
RowResizefeature allowing user to drag bottom row border to change row height (2843) @bryntum/grid-thinbundle includes scss theme files insass/themesfolder (7445)- The
Listwidget now supports collapse / expand of groups (7405) - Added
preserveScrollconfig to Grid, preventing vertical viewport movement during remote changes (7353) - TypeScript Functions and events declarations in typings were improved to contain all available parameters and return type (6961, 4456)
ExcelExportfeature now supports exporting to CSV file (5612)- Added a
Printfeature based onPdfExportfeature which allows using browser print dialog and not rely on backend (6218) - The
RowExpanderfeature has been improved with support for a single expanded element or widget that span over several Grid regions (7314) - Grid has a new config
animateTreeNodeToggle. When set totrue, expanding and collapsing of tree nodes is animated - Infer field types for
autofields when usingFieldFilterPickerwith store data present (7691)
API CHANGES
- BREAKING
Core.util.helper.Pointclass has been moved to solve circular module dependencies. It is now a named export of theCore.util.helper.Rectanglemodule. Check upgrading guide for the details valuesAPI of theExportDialogclass is reverted to the default implementation inContainer. If you have customized dialog fields you need to review your configuration. See upgrade guide for more details (5907)isMultiis now the default mode for the Grid Filter plugin. To configure the filter pickers inside the column filter editor popup, provide aGridFieldFilterPickerGroupconfiguration using the Filter feature’spickerConfigconfig option. ConfigurelegacyMode : trueto use the previous UI instead (6685)- DEPRECATED The Filter feature context menu items
disableFilter,removeFilter, andeditFilterwill be renamedfilterDisable,filterRemove, andfilterEdit, respectively, in6.0.0If you are customizing theCellMenuto hide or replace any of these menu items, you will need to change their names accordingly - Grid summary cells are now layed out using CSS
gridlayout instead of using a<table>. If custom renderers are used which rely on table layout, these will need updating
LOCALE UPDATES
- There is a new locale key
selectValue : 'Select value'which is used by theFieldFilterPickerwhen creating filters on relation-type fields - There is a new locale key for the
Objectclass.'None'is used to label group header rows which are for child records who’s group field value is an empty array
BUG FIXES
- 7493 – Multi group demo hangs when editing Skills
- 7494 – Grouping indicator not shown when grouped by Skills
- 7502 – Row resizing breaks row reordering
- 7503 – Non-filterable column has a Filter option in its context menu
- 7504 – Multi-group demo hints not showing in Firefox
- 7515 –
RowExpanderrefreshOnRecordChangecreates duplicate instances of widgets - 7527 – Summary row obscures docked scrollbar
- 7546 –
RowExpandergetExpandedRecordcrashes when called from expanded widget paint listener - 7638 – Added
hiddenproperty tofilterBarfeature in docs - 7646 – Facet filters do not apply on iOS
- 7648 – Export to CSV: blank space after each comma
- 7649 – Collapsing/Expanding rapidly a tree cell throws error
- 7654 – Records with no skills disappear in multi-grouping demo
- 7656 – Field filters grid example doesn’t render on iOS
- 7675 – Use polyfill for
ResizeObserverinRowExpanderfor SalesForce non LWS support - 7689 – Moving columns in a multi region grid with a state provider is broken
- 7695 – Print feature not printing correctly when changing the splitter position
- 7697 – Add
filterin config for filterBar feature - 7724 – Slider styling is wrong when placed on a Toolbar in Classic light theme
FRAMEWORK SUPPORT
- TypeScript:
>= 3.6.0 - Angular:
>= 9.0.0 - React:
>= 16.0.0 - Vue:
>= 2.0.0 - Ionic:
>= 5.0.0 - Vite:
>= 4.0.0 - Webpack:
>= 4.0.0
Version 5.5.5
2023-10-23BUG FIXES
- 279 –
ObjectHelper.isEqualfails if compared object has cyclic links - 2024 – Slider tooltip should be configurable
- 7250 – Merge Cells feature has CSS bugs when resizing merged columns in
rtl - 7415 – transformFlatData loses tasks if child sorted before parent
- 7588 – Add
"aria-pressed"only for toggle button and not all buttons - 7611 – The
rowCopyPastefeature doesn’t work with collapsed nodes - 7620 – Headers and cells are misaligned in row reorder demo
- 7638 – Added
hiddenproperty tofilterBarfeature in docs - 7641 – Bryntum Combo and Tag Combo empty text appearing
null - 7651 –
showDirtyindicator jumps to wrong cell during edit - 7653 – Grid goes blank when scrolling to top record
- 7657 – Event
cellMouseOveremits only once - 7676 – Store should have changes if record’s
StoreDataFieldhas number type changes - 7690 – Salesforce Error when open Grid in Firefox if LWS enabled
- 7694 –
FilterBarremoves typed text
Older versions
- Full release version history can be found here.