Scheduler – Change Log
Version 6.3.4
2025-11-20FEATURES / ENHANCEMENTS
- VUE-3 Vue 3 npm wrapper package now includes
typesdeclaration inpackage.json
BUG FIXES
- 10969 – Error when setting visible date and max date in the past
- 11419 –
TimeZoneHelperignores milliseconds - 11968 – HIGH PRIO Max date is not updated
- 12011 – DOCS Docs for
ResourceTimeRangesneeds to addexceptionDates - 12134 – Conflicting mouse events when using resource non working time and resource time ranges simultaneously
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.3
2025-10-06FEATURES / ENHANCEMENTS
- 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
- 11716 –
GroupSummary‘s renderer called multiple times
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
- A new experimental
minPackSizeconfig has been added to the Scheduler, which limits how small events can become when usingpacklayout. If events are packed to become smaller than the limit, the row will grow in height instead (11906)
DEMOS
- Added new ExtJS Classic demo showing how to integrate the Scheduler in an ExtJS Classic app. Demo is located in
examples/extjsclassicfolder (6440)
BUG FIXES
- 4192 –
isValidDependencyToCreateis documented as an injectable validation function but is never called - 9269 – RTL Printing with visible schedule range vanishes the events when infinite scroll enabled
- 11733 – Lazy loading events not working correctly when
useResourceIdsistrue - 11818 – Lazy loaded Scheduler does not respect
readOnly: true - 11871 – Race condition with scroll buttons rendering when using lazy loaded store
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-07DEMOS
- ANGULAR Added new Angular
eventeditor-combosdemo showing use of event editor with cascading combos. Demo is located inexamples/frameworks/angular/eventeditor-combosfolder
BUG FIXES
- 9822 – HIGH PRIO Replacing
eventTooltip templateto returnJSXat runtime not working - 11592 – HIGH PRIO
RTLmode breaks drag drop events whenTimeAxis filteris applied
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
- It is now possible to exclude records from timezone conversion. Set the
timeZonefield tofalseon each record that should not be affected by the timeZone config (Fixes 11610) - PdfExport feature now supports exporting large datasets by streaming data to the export server using WebSocket connection (3953)
- Added
Chartsfeature, which leverages the newChartandChartDesignerwidgets to enable developers and end users to easily create charts and visualize data directly from selected cells in a Grid (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) - Bryntum now ships a
Chartmodule (chart.module.thin.js), to easier integrateChart.js-based charts with our products. Used in the newcalendar-chartdemo - 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 - The
ScheduleContextfeature now triggers abeforeContextShowevent when showing the widget/element in the hovered tick, allowing apps to mutate shown element/widget (11646)
API CHANGES
- DEPRECATED The
eventsData,resourcesData,assignmentsData,dependenciesData,timeRangesDataandresourceTimeRangesDataconfigs and properties on theProjectModelhave been deprecated. Useevents,resources,assignments,dependencies,timeRangesandresourceTimeRangesinstead (9778)
LOCALE UPDATES
- The following locale keys added
SinglePageExporterVertical.verticalsinglepage,SinglePageUnscaledExporterVertical.verticalsinglepageunscaledandMultiPageVerticalExporterVertical.verticalmultipagevertical
DEMOS
- New
eventeditor-tinymcedemo, showcasing how to use TinyMCE editor in the event editor - New
chartsdemo, showcasing how to use the newChartsfeature - New
sparklinesdemo, showcasing how to use the newSparklineColumn - New
scheduler-chartdemo, showcasing how to combine the newChartmodule with theScheduler
BUG FIXES
- 11180 – Data and
scrollposition jumps when changeresourceTimeRangesor reassign event - 11457 – Add an option to export task store range
- 11608 – Error when dragging event outside the view with
snapRelativeToEventStartDateistrue
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
- The
multiEventSelectsetting now accepts an object, letting the app decide which modifier keys to use for multi-event selection (by default it isСtrlon Windows andCmdon Mac)
DEMOS
- The
infinite-scroll-treedemo, which demonstrates the lazy loading support of a tree Scheduler, 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 Scheduler, has been ported to Vue. It is located in theexamples/frameworks/vue-3-vite/infinite-scroll-treefolder - The
infinite-scroll-treedemo, which demonstrates the lazy loading support of a tree Scheduler, has been ported to React. It is located in theexamples/frameworks/react-vite/infinite-scroll-treefolder
BUG FIXES
- 10870 – Thin dependency markers are not thin
- 11462 – HIGH PRIO
ScheduleContextandScheduleMenufeatures not compatible - 11562 – Exception thrown with
timeRangesandfillTicks
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
showDirtycan be configured now to show red tag for all the cells for the new records. SetnewRecord : trueonshowDirtyto enable it (10344)- The loading indicator displayed when the
EventStoreis loading can now be configured away by settinglazyLoadingIndicatortofalseon the Scheduler config (9989) - When lazy loading, the
EventStoreand AssignmentStore now support usingresourceIdsas params instead of a resourcestartIndexand acount. ConfigureuseResourceIdson the store’slazyLoadconfig object to activate (9297) - A
CrudManagerconfigured withlazyLoadnow supports implementing arequestDatafunction, instead of using the built-in fetch mechanisms (11342) - Added a
drawOnEventInteractionconfig to theDependenciesfeature, which allows opting out of drawing dependencies on event interactions (dragging, resizing, animating). Useful in apps that display a lot of dependencies on the screen at the same time to make those interactions smoother (11448)
DEMOS
- REACT-VITE Added new React
eventeditor-combosdemo showing use of event editor with cascading combos. Demo is located inexamples/frameworks/react-vite/eventeditor-combosfolder (11124) - New
infinite-scroll-treedemo, which demonstrates the lazy loading support of a tree Scheduler. The new demo is located in theexamples/infinite-scroll-treefolder - REACT-VITE "React JSX component as event renderer" demo has been upgraded to use React + Vite framework with TypeScript. The new demo is located in
frameworks/react-vite/react-eventsfolder
BUG FIXES
- 9689 – HIGH PRIO Filtering timeAxis with Infinite scroll enabled and zoom in/out results in the error
- 11464 – Scheduler Pro Events has some dead zones on right-clicked to activate a context menu
- 11468 – Drag/drop event crashes when a multi-group resource with a group collapsed
- 11475 –
Highlightcallback function not called inscrollEventIntoViewandscrollResourceEventIntoView
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)
STYLING CHANGES
- Major tick lines in the Material theme was adjusted to use same color rule as the other themes, making them less prominent (the override of the
$columnlines-major-colorscss variable was removed)
DEMOS
- VUE 3 + VITE "Custom event editor" Vue 2 demo has been upgraded to use Vue 3 + Vite framework with TypeScript. New demo is located in
frameworks/vue-3-vite/custom-event-editorfolder
BUG FIXES
- 10093 – Lazy loading breaks
CrudManagerload method contract - 10957 –
Summary‘s renderer called 3 times on an initial load - 11081 –
scrollEventIntoViewdoes not scroll to the center of the event - 11313 – HIGH PRIO SharePoint demos across Bryntum Suite are broken
- 11328 – HIGH PRIO Infinite Scroll Causes Endless Scrolling and Error When Using
scrollEventIntoView - 11336 – Icon overlaps with text in material theme
- 11358 –
TimeSelectiondisplayed incorrectly when selection is in future outside the configured time span - 11359 – Selected item ignored when
selectAllItemistrue
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
- TreeSummary cells now support event listeners including
tickCellMouseDown,tickCellMouseUp,tickCellClick,tickCellDblClick, andtickCellContextMenu(11187) - 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)
BUG FIXES
- 10462 – REACT Tooltip with
JSXcomponent does not render on first call - 11138 – HIGH PRIO Events show up only after scroll/refresh/resize
- 11235 – REACT Async cell renderer can throw if the row being rendered is destroyed during the await
- 11236 – HIGH PRIO React Events flicker on event store filter
- 11237 – HIGH PRIO Minutes limit doesn’t update in
endDatewhen changestartDateif it was filtered - 11242 – Tooltips misplaced and hidden instantly for nested events
- 11260 – Performance issue with large dataset
- 11286 – HIGH PRIO Using
resourceIdapproach to manage assignment shouldn’t leave uncommitted changes in assignment store - 11302 – ANGULAR SchedulerPro, Lazy Load, Resource Tree Store observes infinite load calls when creating new phantom record
- 11303 – Delete key on selected
readOnlytask deletes the task
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-23BUG FIXES
- 10991 – Scheduler
Timelineshows 53 weeks for 2025 if week start day is Monday - 11075 – DOCS Incorrect type for
DependencyModel.LagUnitwhen retrieving changes - 11076 –
TreeSummaryfeature doesn’t work withTreeGroupfeature
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
- Event highlighting has been added to the Scheduler API. You can programmatically highlight any available event or events in the timeline by calling
highlightEvents(9873) - Readonly events now consistently display a non-editable information modal, that can be invoked by double-click or context menu. The associated menu item
Editis no longer disabled, but replaced byShow detailswhen the event item cannot be edited - We’ve improved search in the documentation with new context-aware algorithms, delivering more accurate and relevant results from the API, guides & examples
- To make the event editor a docked panel sliding in from the end of the viewport, configure the
EventEditfeature with{ editorConfig : { drawer : true } } - A new config for
Panel,drawermarks a Panel as a docked, slide-in panel, which by default slides in over the contents of the browser viewport - New
TreeSummaryfeature added, which allows you to roll up and display values in the time axis cell for each parent row in a tree scheduler. Check it out in the newtree-summaryandtree-summary-customdemos (8044) - ACCESSIBILITY Higher contrast for event bar text color in
roundedevent style - You can now delete dependencies quickly by clicking the line to reveal a delete icon. This is a more intuitive way to delete dependencies than the previous method of right-clicking the line and selecting
Delete. You can toggle this new behavior with theenableDeleteconfig option (10786) - 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/scheduler-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
- DEPRECATED Previously, the
EventColorPickeraccepted a singlerecordfor updatingeventColor. Now, it acceptsrecordsso thateventColorcan be updated for all the selectedrecords - BREAKING The
AjaxHelper.fetch()utility function no longer appliescredentials: 'include'by default, to better match how the nativefetchAPI works. This change also affectsAjaxStoreandCrudManager, if used by your app to handle remote data (10886) - The
TreeSummaryAPI introduced in the alpha releases was found too inconvenient and was changed. It now only requires implementing arenderer, which handles both the calculations and the formatting of tree summary values (summaryRenderer&generateTickValueswere removed)
LOCALE UPDATES
- Added translation keys
Object.informationandObject.showDetails,EventEdit.startTime,EventEdit.endTime - New locale key
ResourceCollapseColumn.toggleResourceLayoutadded for theResourceCollapseColumncolumn header tooltip - New locale key
SchedulerBase.eventAriaLabeldescribing an event
DEMOS
- New
tree-summarydemo showing how to rollup and summarize tree data. The new demo is located in theexamples/tree-summaryfolder - New
tree-summary-customdemo showing how to rollup and summarize tree and customize the way the rollup data is shown. The new demo is located in theexamples/tree-summary-customfolder
BUG FIXES
- 10592 – Not possible to reach events using keyboard from Scheduler column header in vertical mode
- 10728 – Blank tooltips in Tree Summary Demo for Material theme
- 10841 – Highlight resources while dragging event into another scheduler
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-07BUG FIXES
- 8782 – Salesforce LWS support in Firefox
- 11023 – Unexpected behaviors with lazy loading and tree feature when filtering
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 - A new config,
autoCreatetakes the place of thecreateEventOnDblClickconfig (though that will still work until version7.0).autoCreateallows you to configure the DOM event name, which creates an event. This defaults todblclickas before. It also allows other parameters of the new event to be specified (4399) - A
Schedulerresource store filter, which results in only removal of a contiguous block of resources within the visible viewport will now update the UI in the same way as a storeremoveoperation (10706) CrudManagernow includes arawResponsereference to the native response object, when firingrequestDone,loadloadFailandrequestFailevents (10863)Schedulernow supports sticky resource group headers in vertical mode (10894)- The
EventCopyPastefeature will now paste multiple events into the same pattern they were copied. To revert to the previous behaviour of pasting all copied events to the same target resource and date, setunifiedPasteon the feature config object tofalse(10948) - The
EventDragSelectfeature now triggerseventDragSelectandafterEventDragSelectevents on the Scheduler as the user drags to select events
API CHANGES
- DEPRECATED The
responseOptionsevent param inCrudManagerload/sync events was renamed torequestOptions. - 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) - DEPRECATED The
createEventOnDblClickconfig has been replaced by theautoCreateconfig. WhilecreateEventOnDblClickwill still work until version7.0, it is recommended to useautoCreatefor configuring the DOM event name and other parameters for creating events
DEMOS
- We have introduced UI localization for our Vanilla JavaScript demos, supporting all 45 currently available locales
examples/fieldfiltersdemo was updated to show filtering of the event store as well as the resource store- SHAREPOINT Added a new demo showing drag from grid to scheduler for SharePoint Framework (SPFx) in the
frameworks/react/typescript/sharepoint-fabric-drag-from-gridfolder (9478)
BUG FIXES
- 7603 –
infiniteScrollfeature should be possible to enable at runtime - 10595 – REACT JSX rendered recurrent events content disappear on scroll
- 10795 – SALESFORCE Remove
Map/Setpolyfills - 10821 –
getDateConstraintswith only a start constraint does not work - 10831 –
scrollEventIntoViewerror when using TreeGroup Feature - 10842 – Events not clickable after filtering resource in vertical mode
- 10873 – VUE Recurring Vue-rendered events scroll bug
- 10887 – HIGH PRIO Scheduler
multi-treegroupsdemo failing on creating an event - 10920 – Multi event resize breaks when selected event is out of view
- 10938 – HIGH PRIO Incorrect CSS
sourceMappingURLin Bryntum thin npm packages - 10988 –
SchedulerinCalendarmoving to different week when settingDate - 10999 – Selected event unassigned while attempt to remove another event
- 11001 – Suppress promise rejection message when canceling load requests
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
Groupfeature can now function in vertical mode too (10749)
API CHANGES
- Tree stores got a new
keepExpandedOnLoadconfig in v6.1.4, but it fell out of the changelog. When set totrue, the tree will restore matching nodes expansion state after a reload (10017) EventDragfeature has a new configalwaysCopy. When set totrue, it will alwayscopythe event on drag-drop operation (10402)
BUG FIXES
- 5705 – DOCS Error in vertical scheduler
eventLayoutconfig docs - 10422 – Wrong row snapping when dragging event over tall row with overlapping events
- 10605 – HIGH PRIO
finalizefunction doesn’t work after async operation inbeforeEventResizeFinalize - 10705 – Event not being dropped correctly when dragging in infinite scroll with
lazyloadingenabled - 10736 –
TimeAxisDate Range Picker does not work - 10744 –
loadMaskgetting disabled too early - 10769 – RTL scrolling does not make the timeaxis header sticky
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
- New
eventReleaseThresholdsetting, for advanced use cases where you want to limit the amount of event bar elements that are kept in the DOM for faster re-usage on scroll
API CHANGES
- DEPRECATED Setting the
SchedulerstepUnitproperty has been deprecated. This is a read-only property, which produces a human-readable version of theshiftIncrementfor UIs. Set theshiftIncrementinstead
DEMOS
- REACT Legacy React JavaScript
drag-from-griddemo has been removed - REACT Legacy React TypeScript
drag-from-griddemo has been updated to use React + Vite. New demo is located inexamples/frameworks/react-vite/drag-from-gridfolder - REACT Legacy React JavaScript
verticaldemo has been updated to use React + Vite. New demo is located inexamples/frameworks/react-vite/verticalfolder
BUG FIXES
- 8483 – After
clearFilters, callingscrollResourceIntoViewimmediately doesn’t scroll the resource into view - 10542 – Keyboard focus rendition shown when using mouse
- 10548 – Column resize crashes when lockRows and
showCheckAllenabled - 10627 – Error when resizing multiple events outside the view
- 10655 – Scheduler’s stepUnit is not flexible. And it should be a private property
- 10657 –
ExceptionDatesnot cleared on UI when event becomes non-recurrent - 10658 – Calendar unresponsive if all days set as
nonWorkingDaysandhideNonWorkingDaysistrue
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-25API CHANGES
TimeRangeelements are now stretched the same way events are when using thefillTicksmode
DEMOS
- VUE-3 New demo showing use of vue components in widgets & tooltips. Demo is located in
examples/frameworks/vue-3-vite/widget-renderingfolder (946)
BUG FIXES
- 9993 – HIGH PRIO SALESFORCE Scheduler Pro / Gantt task editor loses focus and cancels on click
- 10143 – ACCESSIBILITY Issue with keyboard accessibility in event navigation
- 10454 –
PDFExportfeature – error in date field when it’s cleared - 10460 – REACT
constrainDragToResourceandconstrainDragToTimeSlotnot working properly withlockRowsenabled - 10482 – Project clears child records added collection when applying a record sync response
- 10520 – Events are not clickable in mixed layout
- 10521 –
RecurrenceFrequencyCombodefault values not restored after custom set used - 10526 – English (Gb) locale uses AM/PM for a view preset
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
STYLING CHANGES
- The header element of
TimeRangelines are no longer given a specific height, and will shrinkwrap
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
BUG FIXES
- 10359 –
DurationColumndrops decimal digits when editing - 10372 – LockRows feature not compatible with showCurrentTimeline of TimeRanges
- 10387 –
ResourceFilteronChangehandler not firing - 10401 – Dragging
TimeRangeclose to viewport edge does not trigger scrolling timeline - 10404 – Event Drag Create doesn’t complete when crossing over dates twice to change drag direction
- 10417 – HIGH PRIO Remote filtering of the
EventStorealso filter the store locally - 10448 – REACT JSX renderers are not supported with
React 19
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
- 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)
API CHANGES
- 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
- 10065 – HIGH PRIO Milestone outside text overlaps with event when ticks removed
- 10135 – HIGH PRIO Fix horizontal dragging of editor in RTL viewports
- 10139 – Event bars stop selecting after moving timeline using
Panfeature - 10165 – HIGH PRIO
ScrollResourceIntoViewandScrollEventIntoViewis not working withLockRows - 10192 – HIGH PRIO Drag from grid/list demos not working in touch devices
- 10195 – HIGH PRIO Salesforce Drag from grid doesn’t work in LWS on touchscreen
- 10198 –
RecurrenceConfirmationPopupbuttons text should be configurable - 10200 – Make
beforeAssignmentDeleteasync - 10202 – Drag & Drop from unplanned grid not working correctly with
LockRowsfeature - 10225 – HIGH PRIO Incorrect type for
beforeAssignmentDeletelistener - 10271 – Setting
allowOverlaptofalsenot working whenshowExactResizePositionenabled - 10300 – HIGH PRIO
EventMenudoesn’t work on Android touch device
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-11DEMOS
- REACT-VITE "Basic" React demo has been updated to use React + Vite. New demo is located in
examples/frameworks/react-vite/basicfolder (9932) - VUE-3-VITE New "Basic" (Vue 3 + Vite) demo shows how to use Bryntum Scheduler in Vue 3 project with TypeScript. The demo is located in
examples/frameworks/vue-3-vite/basicfolder (9808)
BUG FIXES
- 9708 – HIGH PRIO
infiniteScrolland horizontalsplitnot working - 9992 – HIGH PRIO Not clear docs in part of adding new event in
resourceIdnotation used - 10115 – HIGH PRIO BryntumTimeField not working in React
- 10160 – Top Scheduler does not scroll of there are no locked rows in it
- 10163 – Tree-grouping ignores sorting
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-27BUG FIXES
- 9978 – Column auto adjustment for Multiple linked Schedulers when hiding/showing a column
- 9990 – HIGH PRIO New added event stay in changes when call
applyChangesetforresourceStore - 10044 –
eventDragSelectshould exclude the events based onisEventSelectable - 10091 – Events flickering when updating events that uses JSX in
eventRenderer
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
- Support for paging has now been added to the Scheduler (69)
- The regular non-Ajax
Storenow has the ability to accept remote paging, sorting and filtering (6860, 8180, 9363) - The Scheduler can now lazy load events, assignments and/or resource time ranges when scrolling vertically when using a ResourceStore that is not lazy loaded (9709)
- New
DependencyMenufeature, allowing deleting + editing a dependency using right click (9733) EventEditornow supportsautoUpdateRecordto apply changes to the underlying record (updating the UI) while editor is open (9841)- You can now set boundaries for the timeline using two new properties:
minDateandmaxDate. Actions such as timeline scrolling, all types of timeline zooms, and shifts will respect these limits (3870) - With some configurations, zooming in and out of the Scheduler could lead to a very long time axis, which degraded performance. To prevent this, it now limits how many ticks (the bottommost unit) its time axis can contain to 10,000 (which will give a very long scroll range even with small tick sizes)
ExcelExportfeature got a minor refactoring, and now uses more feature-richwrite-excel-filelibrary (6089)
BUG FIXES
- 9154 – Partnered schedulers scroll lags when using iPad
- 9562 – Make resource and assignment data available in EventTooltip
- 9641 – Partial animation on scroll with lazy loading
- 9710 – HIGH PRIO Lazy loading of
EventStorecreatesSTMtransactions
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-13STYLING CHANGES
- Predefined colors available as
eventColorhas been normalized betweenScheduler,CalendarandTaskBoard
DEMOS
- VUE-3 New demo showing implementation of dragging unplanned tasks from a Grid to a Scheduler. The demo is located in
frameworks/vue-3-vite/drag-from-gridfolder (9722) - VUE-3-VITE Event rendering demo (Vue 3 + Vite) shows using Vue components as event renderers. The demo is located in
frameworks/vue-3-vite/event-renderingfolder (Partially fixed 946)
BUG FIXES
- 284 – Shift by whole calendar month when shift unit is month
- 1230 –
rowHeightset onViewPresetis ignored - 9909 – Moving an infinitely weekly repeating event by drag & drop fails
- 9921 – Zooming the timeline with touchpad scales the entire page
- 9949 – Repeat event error when selecting option first day in month
- 9951 – Scheduler crashes when clicking on splitter and no resources exist
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
- You can now opt out of focus-related renditions while keyboard is used, using
DomHelper.enableKeyboardCssModifiers(5271) - The
EventDragfeature has a new property:snapToResource. Set it totrueto be able to snap events to resources while dragging events, i.e., vertical row snap in horizontal mode and vice versa (3624)
BUG FIXES
- 3784 –
visibleDateconfig does not work whenautoHeightis set totrue - 5233 – ANGULAR Frameworks wrappers components not triggering some events
- 7066 – Event drop context data conflict
- 7263 – Bug when using split and panel
- 8042 – HIGH PRIO Drag drop tooltip shown with empty content
- 8263 –
CrudManagerloses changes when applying sync response - 8283 – Scheduler header date is not sticky
- 8359 – HIGH PRIO Export scheduler view with custom component as
eventRenderer - 9150 – HIGH PRIO REACT Bug with Recurring Events + Timezones
- 9212 – Crash when splitting a child event inside a nested event
- 9378 – HIGH PRIO
RecurrenceConfirmationPopupreconfiguration should be easy - 9438 – TYPESCRIPT Update types for the keys in
KeyMapto allownull - 9647 – Crash when enabling
LockRowsand dragging selected events from both splits - 9663 – The validation is still shown when closing and reopening event edit pop up
- 9677 – Splitter misrendered after removing all rows
- 9692 – Multi-assignment event dragging leaves a copy of the dragged event when
LockRowsfeature enabled - 9695 – HIGH PRIO
TaskEditorunexpectedly jumps when editing occurrences - 9718 – VUE-3 Preventable events don’t work in Vue wrapper
- 9723 – Setting
hideHorizontalScrollbartofalsecauses errors - 9737 – Should calculate
ResourceTimeRangesin the original time zone - 9795 – HIGH PRIO beforeEventDropFinalize should include new
startDate/endDatevalues of the dragged event - 9803 – Missing event object in
beforeAddand strange effects when copy/paste Events - 9824 –
Tooltipnot showing for dynamically added summaries - 9850 – Cannot when clicking empty area in the Scheduler
- 9852 – Crash when moving mouse in Firefox
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
PdfExportfeature now supports exporting scheduler in vertical mode (2007) - The
ColumnLinesfeature now supports arendererfunction letting you add CSS classes and custom styles to each line (6016) - The
TimeRangesfeature now fires acurrentTimelineUpdateevent every time the current timeline is updated (9654)
BUG FIXES
- 9674 – Overlap detection broken when dragging multiple events assigned to the same resource
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
- The TimeRanges feature now fires a
currentTimelineUpdateevent every time the current timeline is updated (9654) - The plugin processing has been updated to correctly handle multiple plugin configurations
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
TimelineHistogramview got two new hooks providing more control over the rendered charts DOM elements. Please check "What’s new" guide for more details (9037)- Bumped the built-in version of FontAwesome Free to
v6.6.0, which includes a new table-cells-row-unlock icon sponsored by Bryntum
API CHANGES
- DEPRECATED
TimelineHistogram.getRectClassconfig in favor of newgetBarClassconfig to make naming more consistent
STYLING CHANGES
- The
font-weightfor event bars in the classic themes was increased to 400 (up from 300) to improve readability. Thehollowevent style was also slightly tweaked in theclassic-darktheme for the same reason (9605)
DEMOS
- REACT-REMIX "Basic" (React + Remix) demo shows using Scheduler component in Remix. The demo is located in
frameworks/react-remix/basicfolder (4912) - SHAREPOINT Added a new demo for SharePoint Framework (SPFx) in the
frameworks/react/typescript/sharepoint-fabricfolder (9224)
BUG FIXES
- 4823 – Changing
showCurrentTimeLinevalue doesn’t trigger stateful event - 6310 –
allowOverlap= false not working when dragging multiple events - 8619 – HIGH PRIO Event drag does not work on iPad – it triggers timeline scrolling
- 9294 – HIGH PRIO
applyChangesetin event store triggers a sync - 9309 – HIGH PRIO Multi-event resize issue when resizing to edge
- 9370 – HIGH PRIO REACT custom eventRenderer which return JSX, cause a significant delay in rendering events
- 9504 – HIGH PRIO Resource header blank after collapse expand vertical time axis column
- 9530 –
LoadMaskonly masks top grid section when usingLockRowsfeature - 9560 –
snapRelativeToEventStartDatetrigger error when event drag create action - 9575 – TYPESCRIPT
selectedTimeSpantype definition - 9576 – HIGH PRIO
EventDragis broken in RTL withconstrainDragToTimelineset tofalse - 9580 – HIGH PRIO Mouse does not detach from the timeline with
PanFeature - 9625 – Wrong time axis column width when switching demo to vertical mode
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-05BUG FIXES
- 6015 – HIGH PRIO Poor UX when creating new event with
allowOverlapset to false - 9379 – Merge cells rendering issues
- 9477 – Not possible to configure
generateNewNameinEventCopyPastefeature - 9493 – HIGH PRIO
forceSync: truenot triggering sync call correctly - 9505 – Crash during keyboard navigation in Scheduler vertical mode
- 9512 –
getDateConstraintsblocks horizontal movement in vertical mode
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 Scheduler 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
ScrollButtonsfeature to easily scroll events into view - Support for resizing multiple events simultaneously
- 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
EventEditnow shows an error tooltip when saving is not possible due to overlapping events (2841)- The
LockRowsfeature allows records, which satisfy a certain condition to be locked at the top of the scheduler. By default, the condition is that a certain named field has a truthy value. The field, which decides this status defaults to'fixed', but that is configurable using thefieldNameproperty (4831) - The
EventCopyPastefeature has been enhanced. 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. It also makes it possible to modify the copied data in thebeforePasteevent. Additionally, when copy-pasting between different Scheduler instances, the complete record will be copied, not just a predefined set of fields, as it was previous (6692) - PDF export server has been moved from
examples/_shared/serverfolder to its own GitHub repository: https://github.com/bryntum/pdf-export-server (6820) - The default format for
NumberFieldandNumberColumnnow includes all numeric-related configs from the current locale, like decimals separator, grouping separator etc. (6948) EventResizefeature now supports resizing multiple events simultaneously (7218)- The
TimeSelectionfeature now supports using a drag-drop gesture to select a time span via the newenableDragSelectproperty (7828); - The new
ScrollButtonsfeature will show arrow buttons at both sides of each row, which lets the user scroll to the next out-of-view event easily. Showcased in the newscroll-buttonsdemo (7965) - Stores now have support for lazy loading of data, which when used in the Scheduler, loads new data while scrolling (both vertically and horizontally) (8001)
- To allow for better control of the
z-indexof different layers in the schedule, elements from theResourceTimeRangesandResourceNonWorkingTimefeatures are now rendered to separate parent elements in the DOM. Previously, they were both rendered into the same parent as event bars. If you have adjusted the z-index of the different elements in the schedule, please verify that they are as you expect after upgrading (8043) - Scheduler now supports drag-drop of events in a single direction via the new
singleDirectionproperty (8262) - New
allowOverlapfield onResourceModelto allow per-resource overlap behavior (9010) - When setting recurrence on a non-recurring event, the choice of recurrence types is now pre-populated with choices contextualized to the day of week and week of month of the event’s start date. To disable this, configure the event edit feature with
useContextualRecurrenceRules : false - Milestones at the same date no longer overlap when using pack layout and milestones that take part in layout (using
milestoneLayoutMode) when packing is now correctly positioned - 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
- 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 - Event bars, resource time ranges and time ranges all now use the direction neutral
inset-block-startandinset-inline-startstyles for positioning, rather thantopandleft. This puts them in the same place in LTR and RTL directions without additional processing - 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.BryntumSchedulerProps) which match the configs available for a wrapper component (e.g.BryntumSchedulerComponent). Wrappers code is now delivered with documentation inside, that helps in setting up the components 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
API CHANGES
- VUE-3 Bryntum Vue-3 wrapper now exports
Bryntum...Propstypes (e.g.BryntumSchedulerProps) which match the configs available for a wrapper component (e.g.<bryntum-scheduler>). Wrappers code is now delivered with documentation and TypeScript sources inside (3085) - DEPRECATED The
WidgetHelperutility class has been deprecated and will be removed in a future release. Use the corresponding widget class instead –Widget,ToastorMask(6103) - In previous versions, a call to
project.commitAsync()caused a UI refresh even if nothing was changed by the commit. This has been fixed so that the UI is only refreshed if the commit actually changed something. This is a slight behavioral change (for the better), which we think should have minimal impact on apps (7924) - BREAKING Store search method
findByFieldnow uses exact match for number values (8041) - 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) - BREAKING The
copyKeyproperty of theEventDragfeature now defaults to the default copy key of the native OS (Meta-keyfor Mac andCtrlfor Windows) (9245) - 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 anAjaxStoreor aCrudManager(9289) - STYLING The bottom border styling of the Grid header was moved from the
.b-grid-header-containerelement to.b-grid-headersin non-timeline sub-grids and.b-horizontaltimeaxisin the timeline subgrid - BREAKING
ExcelExportnow exports only events in the current time axis by default. Controlled by theincludeEventsOutsideTimeAxisconfig - Some of the
EventCopyPastefeature’s events has gotten their parameters changed slightly. For thecopyevent, theeventRecordsandassignmentRecordshas been specified as copies of the original copied records. For thepasteevent, thepastedEventRecordsparameter has been deprecated, and its content is now available in theeventRecordsparameter. For the eventscopy,beforePasteandpaste, the original records that were copied are now available in theoriginalEventrecordsandoriginalAssignmentRecordsparameters - With the recent introduction of individual layers for positioned elements, z-indexes have now been normalized. If you have overridden z-index of the layers, please adjust your CSS to ensure it looks as you expect
- The nonworking-time layer has been moved up in the z-index stack to float above the time axis tick lines
- Read-only events are now rendered the same way as normal events (previously used opacity)
- DEPRECATED
@bryntum/babel-preset-react-app,@bryntum/cra-template-typescript-scheduler,@bryntum/cra-template-javascript-schedulernpm packages are deprecated, and will not get any further updates. Versions prior to6.0.0are still accessible - BREAKING In addition to the APIs mentioned in Grid’s changelog, the following previously deprecated APIs were removed:
- The
eventproperty of thetimeRangeHeaderClick,timeRangeHeaderDblClick,timeRangeHeaderContextMenu,beforeEventDragandeventDragStartevents (v5.2.7, v5.3.0) CrudManager.transport.load.fetchOptions(v5.0.0)CrudManager.transport.load.requestConfig(v5.0.0)CrudManager.transport.sync.fetchOptions(v5.0.0)CrudManager.transport.sync.requestConfig(v5.0.0)Dependencies.drawForEvent()(v5.1.0)EventResize.handleSize(v5.2.7)EventResize.touchHandleSize(v5.2.7)NonWorkingTime.highlightWeekends(v5.2.0)ResourceInfoColumn.validNames(v4.3.5)ResourceModel.getEvents()(v5.3.6)Scheduler.horizontalEventSorterFn(v5.0.0)Scheduler.eventBodyTemplate(v5.6.2)TimelineHistogramBase.getBarTip()(v5.0.0)
- The
- BREAKING The documented order of the arguments of
TimeSpan.shift()(EventModelandTaskModelextends it) has been incorrect sincev2.0.0. Docs were updated to reflect the correct order (amount, unit, notunit, amount) and the code that handled the incorrect order has been removed - BREAKING The following default values were changed:
EventResize.lockLayoutandEventDragCreate.lockLayoutboth now defaults totrueScheduler.passStartEndParametersnow defaults totrue- The
triggerargument ofScheduler.resumeRefresh()now defaults totrue
- BREAKING In addition to the APIs mentioned in Grid’s changelog, the following previously deprecated APIs were removed:
- The
eventRecordandassignmentRecordproperties of Scheduler’seventKeyDownandeventKeyUpevents
- The
- BREAKING When using
fillTicksand dragging events, the temporal data on the event that is smaller than the lowest timeaxis header tick is now kept intact when drag-dropping events EventMenumenu item texts forCopy event,Delete eventetc. were simplified to omiteventword. Menu options will now just say "Copy, Cut, Delete"- DEPRECATED The
contextand its nested params ofbeforeEventResizeFinalizehas been deprecated
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)
DEMOS
- REACT-VITE New demo showing booking application, using
ResourceTimeRangesand theSummaryfeature. The demo is located inframeworks/react-vite/bookingfolder (8531) - VUE-3-VITE New demo showing booking application, using
ResourceTimeRangesand theSummaryfeature. The demo is located inframeworks/vue-3-vite/bookingfolder (8532) - The
crudmanagerdemo PHP backend has been improved
BUG FIXES
- 7276 – Move border from headers elements to allow time range header elements to render above
- 7760 – HIGH PRIO TypeScript Type intersection with
anymight be wrong - 7872 –
allowOverlapset tofalseonly checks first occurrence, not other occurrences - 8208 – Remove call to
refreshRowsas part of drag creation - 8309 – Duration column decimal separator is not localized
- 8363 – Scheduler –
ScheduleContextshould allow interaction - 8493 – Events in the locked row disappears upon opening and closing the
EventEditor - 8509 – HIGH PRIO Recurring time ranges not display in RTL
- 8567 – HIGH PRIO
LockRowsevent drag drop issue - 8568 – Cannot delete event in locked row
- 8574 – Date range field not working in "Property booking" demo
- 8580 – Event disappears if dropped on locked row
- 8587 – Event bar duplicated when assigning a resource from a backlog section using task editor
- 8599 – HIGH PRIO "Infinite scroll" demo crashes on event drag create
- 8813 – HIGH PRIO
Toolbaritems lose their value when moved into toolbar overflow menu - 8957 – HIGH PRIO
LockRowsclone Schedulers are not kept synced with date range and scroll state of original - 9104 – Scheduler
backlogdemo – remove the lock/unlock row from context menu - 9112 – Scheduler crashes sometimes when event is hovered
- 9113 – Crash while applying zoom from
timeAxisheader inInfinite scrolldemo - 9117 –
Infinite scrolldemo backend runs out of memory - 9310 – HIGH PRIO Resize tooltip displays incorrect dates while multi-resizing
- 9311 – HIGH PRIO Multi-resize shouldn’t allow resizing
readOnlyevent
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
- The
EventResize&EventDragCreatefeatures has a new option for thelockLayoutconfig. By specifying it asminimal-updates, only the resized / drag created event will be refreshed during the operation, instead of all events assigned to the affected resource. This can boost performance for the action when having many events assigned to a resource, at the cost of not being possible to visually indicate anything on other events until the operation is finished
BUG FIXES
- 7392 – ANGULAR Zoom to span not show correct view span when RTL used
- 9128 – REACT Drag from grid framework demos – Fix bg color for invalid target for drag proxy
- 9356 – HIGH PRIO Infinite scroll feature – scroll resets too close to the left edge of the new date range
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
- Added a new
refreshResources()method to the Scheduler, that lets you update specific resources when for example some external setting unknown to the Scheduler is changed (9179)
API CHANGES
- 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 configuredreadUrlor that belongs to aCrudManagerconfigured with aloadUrl, will have theirsyncDataOnLoaddefault tonull
DEMOS
- ANGULAR Updated "Booking" Angular demo to use Angular components as renderers, which is located in the "examples/frameworks/angular/booking" folder (9270)
BUG FIXES
- 8769 – HIGH PRIO Resizing event weirdly behaving on
WeekView - 8852 – Clearing initial filters doesn’t render the
ResourceTimeRanges - 9213 – Project
timeZoneconfig errors out - 9231 – Disable recurring event confirmation pop-up does not work
- 9278 – Export to PDF hangs on scaled page
- 9349 – Scheduler crashes when state is updated
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) - The
beforeDragCreateFinalizeevent now includes the dates that the event will be created with (9125) CrudManagerhas 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)
API CHANGES
- 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
- 1048 – Safari: Overscrolling timeline
- 7719 – Annual event recurrence is not set up correctly
- 8978 – HIGH PRIO Gantt ASPNET frontend example not building
- 9097 – Dragging event with snap doesn’t seem to snap to correct time
- 9115 – Unexpected row highlight in
drag-from-treedemo - 9211 – Crash "Method cannot be called at this state" when drag-creating
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
- You can now render custom HTML content inside a
GroupSummarytooltip using thetooltipTemplatefunction. Try it out in the updatedgroupsummaryexample. (8752)
BUG FIXES
- 3025 – Resizing a column with preceding flexed columns moves the column being resized
- 8533 – HIGH PRIO ANGULAR Scheduler does not load if
direction: rtlandinfiniteScroll: trueis set - 8934 – Persist the event selection while the user is scrolling using dragging with the mouse
- 8979 – Creating event causing the auto zoom in timeline when no start date set to the scheduler
- 8985 – HIGH PRIO Smarter
EventStoresync behavior for start / end dates - 8992 – ANGULAR implement support of
ViewEncapsulation.ShadowDom - 9004 – Collapsed Group Header State is not Restored
- 9027 –
eventCopyPasteAction: clonenot working whenresourceIdsfield is configured onEventModel
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-09LOCALE UPDATES
- Added Brazilian Portuguese translation (
'PtBr') (8747)
BUG FIXES
- 7267 – Request for improved API for custom cell editors
- 8259 – HIGH PRIO Animated region collapse polish
- 8508 – Demo navigation buttons should be rotated in RTL
- 8571 – Drag from tree demo not working correctly
- 8572 – HIGH PRIO REACT Events disappear when scrolling and using JSX
eventRendererandresourceTimeRanges - 8667 – HIGH PRIO Renderer Context demo event percentage circle showing undefined with new created event
- 8728 – Dates not serialized correctly when a
timeZoneis configured - 8729 – Changing
timeZoneand updating event dates multiple time causes event to get incorrect dates - 8744 – HIGH PRIO Events not rendering on drag scroll
- 8768 – Tooltip for a selector should not show if over a child of a delegate which has its own
data-btipattribute - 8786 –
EventMouseLeavefires multiple times when multiple events are selected - 8919 – Clicking
xto closeEventEditorpopup does not triggerafterEventEditevent
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-04BUG FIXES
- 7297 – Not navigable to next month if selected date is next month
- 8635 – Crash when pressing close button in event editor
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
- If Scheduler is not provided with the viewport start date on creation, it now tries to use the project’s start date, or calculates the earliest start date among all events
- The
rendererof time axis header rows now includes a param letting you reference the Scheduler / Gantt instance in your header renderer. Useful when you want to add summary row to the header (8527)
BUG FIXES
- 7046 – Non working time ranges doesn’t render properly on vertical mode
- 7920 – Fix
getAssignmentsForEventparam type insideAssigmentStoreMixin - 8199 – Events disappear when change window size with very varying row heights
- 8209 – App crashing when moving multiple JSX events and some aren’t in view
- 8268 – Weekends disabled not reflected on Split view
- 8372 – Lift batching state of event and task records during the event/task partial resize events
- 8423 – LWC Engine performance is too low with LWS enabled
- 8436 – Returning
falsefrombeforeAddwhen creating event by drag or double click resulting in crash - 8464 – REACT – All events "flicker" when ever an event is dragged or created or resized
- 8503 – Event start time after drag drop when
fillTicksis used - 8505 – Row highlighted after pressing Enter in event edit
- 8506 – Event buttons not hidden after mouseout
- 8528 – RTL Events not visible when printing
- 8537 – Make private
clsconfigs onCalendarPanelpublic - 8546 – Missing row hover effect on event drag
- 8558 – Dependency is missing on the exported page
- 8594 – Resizing time-selection from both side produces error
- 8597 –
TimeAxisHeaderMenu‘s zoom slider disappear while zooming with it - 8609 – End date field marked as invalid / red after changing event start date
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
- Scheduler now stores its
startDateandendDatevalues as part of its State storing mechanism. - All frameworks demo applications have been verified and updated to be compatible with Node.js 20
- Bumped built-in FontAwesome Free to version
6.5.1 - When editing very long events where the event bar extends outside the visible viewport, only the nearest 100 pixels of the bar are scrolled into the viewport rather than attempting to scroll the whole width into view. The minimum width to scroll in may be configured in the
eventEditfeature using theminEditSizeconfig property (8315) - Grid now saves the collapsed state of groups in its default state saving mechanism (8103)
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
BUG FIXES
- 7469 – Wrong value of
expandedwhen calling storetoJSONmethod - 7707 – TYPESCRIPT Update
timeAxisColumnto be a property - 7720 –
scrollResourceEventIntoViewnot working for collapsed tasks - 7821 – Issue with rendering recurring events with multi assign
- 8000 – Crash when right-clicking before drag creating in Booking demo
- 8022 – Hide validation tooltips in Popups as soon as the popup closes
- 8102 – State doesn’t store to
localeStorageonshiftNext/shiftPrevious - 8200 – Webpack build failed with
.min.cssfile - 8210 – HIGH PRIO Strange row expansion when drag creating in
embedded-chartdemo - 8216 – HIGH PRIO Error in summaries when expanding / collapsing resources
- 8220 – Exporting current view should not reset the time span
- 8233 – HIGH PRIO Dependencies to nested parent events, cause all child events to have an
offset - 8240 –
EventDragSelectignores selection afterclose-to-edge-scroll - 8282 –
EventDragSelectdoes not select milestones - 8288 – Event content
overflownot hidden in Firefox - 8291 – HIGH PRIO Events are not visible when exporting infinitely scrollable scheduler
- 8300 – HIGH PRIO ANGULAR Html custom element can not be rendered inside
eventTooltip.template - 8310 – Timeline histogram with current timeline config triggering error
- 8343 – Focused tooltip throws errors when re-invoked by a new target
- 8344 – Event preamble/postamble element sizing/positioning doesn’t change for RTL mode
- 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-09BUG FIXES
- 1480 – Issue with Repeat event dialog on cancel changes
- 7372 – Improve performance of region resize
- 7403 – Make a guide on how to make a theme selector in frameworks
- 7818 – TypeScript Incorrect
RecurrenceModeltyping in typings - 7850 – Salesforce Multi event select not selecting events in Salesforce
- 7964 – REACT JSX doesn’t work in Popups
- 8112 – Drag not working between schedulers on responsive/mobile devices
- 8119 – Print dialog button should say
Print - 8134 – Dragging event close to edge does not trigger timeline scrolling
- 8143 – Group icon stopped handling click when
resourceCollapsecolumn added - 8153 – Crash when right-clicking vertical time axis
- 8177 –
TimeAxisSubGridthrows"queueMicrotask is not a function"exception - 8179 –
ascendingconfig not working inGroupfeature
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-21FEATURES / ENHANCEMENTS
- The
Labelsfeature now skips rendering unnecessary elements for labels without content.
API CHANGES
resourceTimeRangeRenderermethod fromResourceTimeRangesfeature is now a config on the Scheduler, making it available in framework wrappers (8035)
DEMOS
- ANGULAR Added new "Timeline histogram" Angular demo which is located in the "examples/frameworks/angular/timelinehistogram" folder
- REACT + VITE Added new "Timeline histogram" React + Vite demo which is located in the "examples/frameworks/react-vite/timelinehistogram" folder
- VUE 3 + VITE Added new "Timeline histogram" Vue 3 + Vite demo which is located in the "examples/frameworks/vue-3-vite/timelinehistogram" folder
BUG FIXES
- 6224 – Add event for
ColumnResizeto catch user resize action - 7542 – Removing partner does not break the
timeAxislink - 7958 – Property
typeis missing inDataFieldConfig - 7973 –
Timezonewrong behavior when usingapplyChangeset - 8024 – Event editor bottom toolbar missing top padding
- 8027 – Skip rendering empty labels
- 8071 – If
visibleDateis set multiple times before paint, Scheduler goes into infinite loop - 8080 – Missing
TimelineHistogramcomponent in Angular / React / Vue packages - 8081 – Missing
TreeGridcomponent in Angular / React / Vue packages - 8084 – Hide
scrollableconfig from Menu docs
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
- Timeline zooming as enabled by the
zoomOnMouseWheelconfig property now also responds to pinch-zoom touch gestures on touch devices - ANGULAR New "Property booking" demo (Angular) showing a demo booking application, using
ResourceTimeRangesand theSummaryfeature. The demo is located inframeworks/angular/bookingfolder (7769) - REACT Documentation in "Quick start", "Guide" and "React Tutorial" 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-scheduler,@bryntum/cra-template-javascript-schedulerpackages will not get any updates after6.0.0version
BUG FIXES
- 880 – Tabbing to partially visible event breaks event navigation
- 1458 – Tooltip jumps trying to follow by the
TimeRangeelement - 7698 – Remove overnesting from framework demos
- 7716 – Link is created to a task when trying to abort building the link
- 7779 – Dragging event in hidden resource causes exception
- 7889 – Adding a new event via
applyChangeSettriggers auto sync - 7903 – Dependencies arrows not working when set
fromSide/toSide='top' - 7929 – PDF Export event bars not correctly rendered when dependencies enabled
- 7946 – Console error when use not adjusted
timeAxiswith specific configs - 7952 – Can resize event out of original bounds
- 7967 – React Events with custom content disappearing during resize
- 7970 – Non-working days are not highlighted in an exported PDF
- 7972 – Event not shown when drag&drop between scheduler in fullscreen Mode
- 7992 – Crash after destroying scheduler and setting
timeZoneon the project when usingTimeRangesfeatures - 8006 – TypeScript
ResourceModelmissing timeRanges in Docs/TS definition - 8015 – Scheduler booking demo issues
- 8017 – Current timeline color is incorrect
- 8020 – Scheduler Stress Test Demo broken
- 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
- Tooltips such as the one shown by the
EventTooltipfeature can now stay visible when mouse exits the target element which triggered the tooltip to show via the newautoHideconfig (4882) TimeRangefeature now offers to configure itshoverTooltipshown when hovering a range header element- A CSS change (
max-widthon.b-sch-event-content) in the previous release that was meant to simplify making event content sticky in some scenarios turned out to mess styling up in others, and have now been reverted. It needs to be handled by the application where applicable instead
API CHANGES
- The
yearviewPresetnow renders a full year if not date range has been provided - DEPRECATED The
eventBodyTemplatefunction was deprecated in favor of returning the desired markup from aneventRendererfunction. It will be removed in 6.0 (7288)
BUG FIXES
- 7092 – Feature mixin on-owner events are not exposed on class
- 7716 – Link is created to a task when trying to abort building the link
- 7730 – Scrollbar presence not synced correctly for partners in FF
- 7839 –
TooltipTemplatenot working in time selection feature - 7851 – 0-duration TimeRange lines should float above event bars
- 7883 – Make column renderer more efficient
- 7891 – REACT
bigdatasetdemo broken rendering
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
Older versions
- Full release version history can be found here.