Scheduler Pro – Change Log
Version 5.6.9
2024-04-09FEATURES / ENHANCEMENTS
- Now it is possible to specify the maximum units capacity of the resource, using
maxUnits
field. Default value is 100%, but if resource represents a team of several peoplemaxUnits
can be increased accordingly. This field is taken into account in the resource histogram and resource utilization widgets (833) - The rules of calendar intervals prioritization in case of their intersection have been properly documented. Now the index of the interval in the dataset is also taken into account. Please refer to the updated Calendars guide and priority field documentation for the details (8754)
ProjectModel.toJSON()
now includes data from all registeredcrudStores
(8803)ProjectModel
has a newtoJSONResultFormat
config that controls the output format of theProjectModel.toJSON
method. Please check the config docs for more details (8814)
API CHANGES
- A change in Scheduler Pro
v5.3.0
fell out of the upgrade guide, repeating it here:CalendarModel
classintervals
field definition has been changed to behave as a store when performing CRUD operations. Please check "Upgrade guide" for the details
LOCALE UPDATES
- Added Brazilian Portuguese translation (
'PtBr'
) (8747)
DEMOS
- ANGULAR New "Travel time" demo (Angular) shows how to visualize travel time before/after an event. The demo is
located in
frameworks/angular/travel-time
folder (8691) - REACT-VITE New "Highlighting Event Calendars" demo (React + Vite) helps end users understand the scheduling logic by
visualizing event calendars. The demo is located in
frameworks/react-vite/highlight-event-calendars
folder (8295) - VUE-3-VITE New "Highlighting Event Calendars" demo (Vue 3 + Vite) helps end users understand the scheduling logic by
visualizing event calendars. The demo is located in
frameworks/vue-3-vite/highlight-event-calendars
folder (8296) - ANGULAR New "Highlighting Event Calendars" demo (Angular) helps end users understand the scheduling logic by
visualizing event calendars. The demo is located in
frameworks/angular/highlight-event-calendars
folder (8297) - REACT-VITE New "Highlighting Resource Calendars" demo (React + Vite) helps end users understand the scheduling logic
by visualizing resource calendars. The demo is located in
frameworks/react-vite/highlight-resource-calendars
folder (8472) - VUE-3-VITE New "Highlighting Resource Calendars" demo (Vue 3 + Vite) helps end users understand the scheduling logic
by visualizing resource calendars. The demo is located in
frameworks/vue-3-vite/highlight-resource-calendars
folder (8473) - ANGULAR New "Highlighting Resource Calendars" demo (Angular) helps end users understand the scheduling logic by
visualizing resource calendars. The demo is located in
frameworks/angular/highlight-resource-calendars
folder (8474)
BUG FIXES
- 7267 – Request for improved API for custom cell editors
- 8263 – HIGH PRIO CRUD manager loses changes when applying sync response
- 8572 – HIGH PRIO REACT Events disappear when scrolling and using JSX
eventRenderer
andresourceTimeRanges
- 8718 – HIGH PRIO SchedulerPro freezes when change timeZone with existed recurring timeRange
- 8719 – DOCS Document
getVersionContent
method of Versions feature - 8720 – HIGH PRIO Inconsistent behavior when updating
startDate
of events - 8853 – Memory not freed after destroying gantt instance in the "bigdataset" example
- 8865 – XSS vulnerability in
ResourceUtilization
with enabledTreeGroup
feature - 8879 – Missing scheduler reference in vertical mode layoutFn
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
- An exception with a meaningful message will now be thrown if parsing of the calendar interval's recurrent date string has failed (8705)
BUG FIXES
- 8647 – HIGH PRIO Scheduler Pro – error removing partner
- 8684 – HIGH PRIO Missing row hover effect on event drag
- 8686 – HIGH PRIO Exception thrown when loading data with segmented events into the event store with
useRawData : true
setting
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 Pro 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
- Scheduler Pro now offers to not automatically merge two task segments when placed next to each other, via the new
ProjectModel
autoMergeAdjacentSegments
config (8018) - The
effort
field on theAssignmentModel
is now documented and public
BUG FIXES
- 7824 – HIGH PRIO
ResourceUtilization
resource/task tree is not rendered correctly with async assignments - 8387 – Embedded 3rd party chart not linked correctly when zooming in/out
- 8401 – HIGH PRIO Dependency line misplaces on scroll with lot of data
- 8423 – HIGH PRIO LWC Engine performance is too low with LWS enabled
- 8426 – HIGH PRIO Nested events are offseted when resizing parent events
- 8430 – HIGH PRIO Scheduler Pro does not link up single assignments when passed records
- 8454 – HIGH PRIO Binding to resources and events on Scheduler Pro requires refresh to render
- 8477 – HIGH PRIO Escape does not clear
FilterBar
filter in name column - 8489 – Crash in drag-unplanned tasks demo
- 8543 – Exception thrown when editing the segmented event
- 8545 – Promise rejection error in maps demo when searching address
- 8548 – Timespan remains highlighted after
shiftPrevious
- 8550 – Incorrect CSS class name in Stockholm theme
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
- 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
- When editing very long tasks where the task 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
taskEdit
feature using theminEditSize
config property (8315)
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 astores
array 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 - DEPRECATED ANGULAR REACT VUE
BryntumProjectModel
framework wrapper will be removed starting from6.0.0
version. UseBryntumSchedulerProProjectModel
instead. Check the upgrade guide for the details
LOCALE UPDATES
- Changed the locale key
Edit task : Edit task
toeditEvent : Edit event
inTaskEdit
BUG FIXES
- 2411 – HIGH PRIO Dragging event over non-working resource time ranges erratic
- 7640 – Segment don't display event name
- 7707 – TYPESCRIPT Update
timeAxisColumn
to be a property - 7720 –
scrollResourceEventIntoView
not working for collapsed tasks - 7821 – Issue with rendering recurring events with multi assign
- 7869 – HIGH PRIO Cell edit feature behaves incorrectly when double-clicking to edit next cell
- 8150 – Edit task should be Edit Event in
EventMenu
- 8200 – Webpack build failed with
.min.css
file - 8202 – Event preamble has incorrect size after aborting event resize
- 8210 – HIGH PRIO Strange row expansion when drag creating in
embedded-chart
demo - 8233 – HIGH PRIO Dependencies to nested parent events, cause all child events to have an "offset"
- 8244 – HIGH PRIO Events not showing when using
resourceId
to assign resource - 8267 – DOCS
EventBuffer
renderer config not appear in the docs - 8279 – Cancelling dependency creation hangs transactional feature
- 8310 – Timeline histogram with current timeline config triggering error
- 8344 – Event preamble/postamble element sizing/positioning doesn't change for RTL mode
- 8374 – Unexpected animation after resizing event
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
- 7403 – Make a guide on how to make a theme selector in frameworks
- 7818 – TypeScript Incorrect
RecurrenceModel
typing in typings - 7850 – Salesforce Multi event select not selecting events in Salesforce
- 7964 – REACT JSX doesn't work in Popups
- 8009 – Issue with hidden non-working time in combination with
infiniteScroll
- 8133 – Scheduler crashes on drag when
highlightSuccessors
/highlightPredecessors
is enabled - 8155 – Crash when dragging event to time axis header
- 8176 – Project data loading fails if filters hide all resources, and
reapplyFilterOnAdd
+transformFlatData
are set totrue
- 8177 –
TimeAxisSubGrid
throws"queueMicrotask is not a function"
exception - 8192 –
beforeEventResizeFinalize
not reverting event UI to the previous 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.4
2023-12-21API CHANGES
resourceTimeRangeRenderer
method fromResourceTimeRanges
feature is now a config on the Scheduler, making it available in framework wrappers (8035)
BUG FIXES
- 8029 – Dragging Task when
fillTicks
andsnap
enabled behaves differently on5.6.0
- 8046 – Feature is not finalized correctly when editor window is closed
- 8080 – Missing
TimelineHistogram
component in Angular / React / Vue packages - 8081 – Missing
TreeGrid
component in Angular / React / Vue packages
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
- Added support for custom event layouts in vertical mode, by supplying a
layoutFn
to theneventLayout
config (7659) - ANGULAR New "Resource utilization" demo (Angular) shows a Scheduler Pro and a
ResourceUtilization
visualizing resource allocation in sync. The demo is located inframeworks/angular/resource-utilization
folder (7771) - 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-app
and@bryntum/cra-template-typescript-schedulerpro
,@bryntum/cra-template-javascript-schedulerpro
packages will not get any updates after6.0.0
version
BUG FIXES
- 7716 – Link is created to a task when trying to abort building the link
- 7801 – Project gets out of sync when passing duration/end date changes to each other
- Fixes 7981 –
EventDragCreate
not working as intended with filtered ticks - 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-24API CHANGES
- DEPRECATED The
eventBodyTemplate
function was deprecated in favor of returning the desired markup from aneventRenderer
function. It will be removed in 6.0 (7288)
BUG FIXES
- 7092 – Feature mixin on-owner events are not exposed on class
- 7683 –
TaskEditor
not vertically scrollable when shown on a small screen - 7716 – Link is created to a task when trying to abort building the link
- 7726 –
TaskEdit
stops working ifhideAnimationEnd
event is not fired - 7876 – Issue with
DragCreating
event that snaps to0
duration
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 Pro Event effort demo (React + Vite) shows events that distribute their effort across their duration
Scheduler Pro and a Resource Utilization visualize effort allocation in sync. The demo is located in
frameworks/react-vite/effort
folder (7442)
BUG FIXES
- 5719 – YARN Can not install
@bryntum
product packages using yarn v2/v3 - 7582 – PDF exports not showing nested events
- 7622 – Disabled fields in
taskEditor
becomes editable on changing time - 7750 – Vite error
@charset must precede all other statements
- 7754 – Frameworks Thin packages not working with
pnpm
- 7755 – Misplaced drag proxy when dragging from grid
- 7797 – Record is duplicated when client receives response with removed phantom
id
and existingid
- 7820 –
globalThis
should be defined in locales to support LWC - 7831 – Thin bundles some classes are not exported from
@bryntum/engine-thin
package
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
- When dragging events in Scheduler Pro, the dates shown in the tooltip now take non-working time into account. This means that the tooltip now more accurately indicate the dates that will be assigned on drop
- 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
thin
packages, 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 @bryntum/schedulerpro-thin
bundle includes scss theme files insass/themes
folder (7445)- Nested events are now by default scheduled relative to their parent event. Previously they were positioned relative
to their parent event initially, but when the parent was moved intersecting non-working time the relative position was
lost. This is implemented as a new
delayFromParent
field (optional to specify), which behind the scenes is used as a constraint, taking non-working time into account (6821) - Scheduler now suspends UI refreshes during direct application calls to
project.loadCrudManagerData()
, only refreshing once after the data has been applied (7246) - TypeScript Functions and events declarations in typings were improved to contain all available parameters and return type (6961, 4456)
- Added a
Print
feature based onPdfExport
feature which allows using browser print dialog and not rely on backend (6218) - Scheduler Pro now supports dependencies between nested events, on display in the new
nested-events-dependencies
example (7211) - REACTSharePoint Added a new React based SharePoint web part demo. It shows how to integrate Scheduler Pro in
SharePoint, using a task list as the data source. Located in
examples/frameworks/react/typescript/sharepoint-fabric
API CHANGES
- BREAKING
Core.util.helper.Point
class has been moved to solve circular module dependencies. It is now a named export of theCore.util.helper.Rectangle
module. Check upgrading guide for the details - BREAKING TypeScript
ScrollOptions
typedef has been renamed toBryntumScrollOptions
to not interfere with TypeScript interfaceScrollOptions
. Check upgrading guide for the details (7385) - FRAMEWORKSDEPRECATED
BryntumProjectModel
wrapper component has been renamed toBryntumSchedulerProProjectModel
. Please see the upgrade guide for details
BUG FIXES
- 7594 – Dragging with non-continuous time axis does not take non-working time into account
- 7613 –
onEventResizeStart
andonEventDragStart
does not persist custom properties set on events - 7696 – Issue with dragging event that extends beyond filtered time axis
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-23FEATURES / ENHANCEMENTS
EventStore
now callsconsole.error
when you load / set invalid data withstartDate
>endDate
EventBuffer
feature now supports arenderer
function allowing you to change text, CSS class and icon for the preamble and postamble elements (6136)
API CHANGES
- A 0-duration
preamble
orpostamble
now serializes asnull
BUG FIXES
- 5927 – Error when scrolling and then switching to collapsed tree structure
- 6654 – Issues combining
infiniteScroll
with zoom - 7612 –
highlightTimeSpans
feature DomSync update fail during scroll - 7623 – Dependencies stay visible after filtering
taskStore
- 7639 – Segments are not serialized when calling model
toJSON
- 7670 – Drag drop broken in highlight demo
- 7671 – Map pins not showing in
maps
demo
Version 5.5.4
2023-10-05BUG FIXES
Version 5.5.3
2023-09-15FEATURES / ENHANCEMENTS
- It is now possible to use the
CalendarModel
instance standalone, independently of the project instance (7335) - VUE-3-VITE New Drag unplanned tasks demo (Vue 3 + Vite) shows how to drag unplanned tasks from a
list onto the Scheduler Pro component. The demo is located in
frameworks/vue-3-vite/drag-unplanned-tasks
folder
BUG FIXES
- 7348 – Map markers not always shown on load
- 7390 –
Resourceutilization
group collapse works incorrect after new assignment - 7393 – Drag proxy not centered below cursor in react
drag-batches
demo - 7428 – Changing
timeZone
doesn't move recurringResourceTimeRange
- 7481 – Task editor should not close when fully reloading project if id of edited task is still present
Version 5.5.2
2023-08-30BUG FIXES
Version 5.5.1
2023-08-16API CHANGES
- We added two public methods –
suspendChangeTracking
andresumeChangeTracking
to suspend and resumehasChanges
/noChanges
events on aCrudManager
BUG FIXES
- 644 – Event cannot be assigned to multiple resources from editor with
autoUpdateRecord
enabled - 7116 – Event removed when returning false from
beforeEventEdit
afterv5.3.3
- 7203 –
onVisibleDateRangeChange
is not subscriber onvisibleDateRangeChange
event but separated method - 7233 – LaterJS bug when enum days from Monday
- 7259 – Missing typings in
ResourceUtilizationFeaturesConfigType
after upgrading to version5.4.0
- 7292 – Crash when assigning resource in grouped Scheduler
- 7308 – Navigation issue in Bryntum examples
Version 5.5.0
2023-07-31This release is a replacement for the 5.4.3 patch release. It was changed to a minor version because of some larger changes behind the scenes to pave the way for future support for live updates in Scheduler Pro and Gantt.
FEATURES / ENHANCEMENTS
- We have refactored a few features and changed their prototype chain. If you are importing those features directly, or
are extending them, you need to use correct base class and import path:
Grid/feature/RowReorder
->Scheduler/feature/RowReorder
,Grid/feature/CellEdit
->SchedulerPro/feature/CellEdit
,Scheduler/feature/Dependencies
->SchedulerPro/feature/Dependencies
- REACT New Drag unplanned tasks demo (React + Vite) shows how to drag unplanned tasks from a list
onto the Scheduler Pro component. The demo is located in
frameworks/react-vite/drag-unplanned-tasks
folder - ANGULAR New Drag unplanned tasks demo (Angular) showing how to drag unplanned tasks from a list
onto the Scheduler Pro component. The demo is located in
frameworks/angular/drag-unplanned-tasks
folder
BUG FIXES
Version 5.4.2
2023-07-26BUG FIXES
Version 5.4.1
2023-07-13FEATURES / ENHANCEMENTS
- We have created a public repository to showcase Salesforce demos. All previous demos are merged into one Lightning Application which is easy to install to a new scratch org. You can find more information in updated guides and in this repository: https://github.com/bryntum/bryntum-salesforce-showcase#bryntum-salesforce-showcase
- We have created a public Salesforce org where this app is preinstalled. You can find link to it and login credentials on the updated examples page
BUG FIXES
Version 5.4.0
2023-06-30FEATURES / ENHANCEMENTS
- This release introduces a new
TimelineHistogram
class which implements a grid with histogram charts displayed for rows in the timeaxis section. Please check the new Timeline histogram demo and the "Timeline histogram" guide for more details - The release also includes refactored
ResourceHistogram
andResourceUtilization
views which now better supportTreeGroup
andGroup
features and provide some additional APIs for customization. For more details please check new "Resource histogram" and "Resource utilization" guides and see the updatedresourcehistogram
andresourceutilization
examples Widget
has a new config,maximizeOnMobile
which takes effect only onfloating
widgets on a mobile device. It causes the widget to be maximized instead of positioned in order to accommodate the mobile virtual keyboard. This will make event editing much easier to use on mobile devices (6522)- On mobile devices,
type : 'checkbox'
is rendered as aslidetoggle
widget. The API and value is the same, it is just a more appropriate UI for the platform - The
NestedEvents
feature now supports deeper nesting of events, by specifying the newmaxNesting
config (it defaults to one level). Although it technically supports any depth, we do not recommend going deeper than 2 levels for the UI to be comprehensible (6030) - For a slightly better docs experience for most users, the docs browser now by default hides some more obscure APIs
normally only used when implementing own widgets and features. Advanced users in need of these APIs can still opt in
to see them using the
Show
menu in the docs browser
API CHANGES
- The
ScaleColumn
class has been moved from Pro to regular Scheduler classes. This should not affect your application unless it imports the class from its individual file (not the case for the vast majority of customers). The distribution still includesSchedulerPro/column/ScaleColumn.js
file which is now an empty wrapper importing the class from its new location. The wrapper is there till the next major release so please update your code and import the file from its new location if needed (6176)
BUG FIXES
- 5553 –
reapplyFilterOnAdd
doesn't work when adding resources before loading
Version 5.3.7
2023-06-20BUG FIXES
Version 5.3.6
2023-05-26FEATURES / ENHANCEMENTS
BUG FIXES
Version 5.3.5
2023-05-11API CHANGES
- The internal feature mixin
ProTaskEditStm
has been moved to Scheduler codebase and renamed toTaskEditStm
. It is available now asTaskEditStm
entry in Scheduler bundle
BUG FIXES
- 6610 – Scheduler Pro crashes when trying to undo after copy/paste multievent selection (
CTRL + Click
) - 6684 – Cannot read properties of
null
(reading'activeTransaction'
) - 6691 – Events render to early when
timeZone
is set on a Scheduler Pro - 6699 – Should record only 1 STM transaction for drag-create and following task edit user actions
- 6701 – IONIC
Scrollbar
width could not be determined under Ionic framework - 6713 – Time spans highlights re-appear after calling
unhighlightTimeSpans()
- 6749 – Event editor body cropped and not scrollable
Version 5.3.4
2023-04-28FEATURES / ENHANCEMENTS
- New config option on the
SchedulerPro
'sProjectModel
:skipNonWorkingTimeInDurationWhenSchedulingManually
. Please refer to the documentation for details
BUG FIXES
Version 5.3.3
2023-04-21FEATURES / ENHANCEMENTS
- TypeScript Type definition files were added for
schedulerpro.node.cjs
andschedulerpro.node.mjs
bundles (6523) ResourceNonWorkingTime
now offers aenableMouseEvents
config to enable showing tooltips for its rendered elements. See updatedresource-non-working-time
demo (6545)ResourceNonWorkingTime
now supports showing thename
interval field in the rendered element (6493)- ANGULAR Bryntum Scheduler Pro now ships with two npm Angular wrapper packages to support different versions of
Angular framework. Existing
@bryntum/schedulerpro-angular
package is now designed to work with Angular 12 and newer versions, which use the IVY rendering engine. New@bryntum/schedulerpro-angular-view
package is designed to work with Angular 11 and older versions, which use the View Engine rendering. Check Upgrading and Angular integration guides in documentation for more information (6270) - ANGULAR
angular-11
demo has been added to show use of@bryntum/schedulerpro-angular-view
package with Angular 11. Demo is located inexamples/frameworks/angular/angular-11
folder
BUG FIXES
- 1372 – Pro Constraints demo doesn't update constraint icon
- 2695 – Resource Histogram is not updated when primary partner is zoomed or gets shifted
- 5059 – Histogram not updating when doing
shiftPrevious()
- 6439 – Timeline jumps to wrong dates when change direction to RTL at runtime with
infiniteScroll
enabled - 6521 – Task Editor disappears when entering invalid time
- 6527 – ANGULAR Resource Utilization – custom tick context is not updated when shift timeline
- 6539 –
eventRecord
member missing in EventTooltip feature - 6542 – Wrong text color when hovering event
- 6562 – Broken drag-select + drag & drop of parent events
- 6576 – Timelines appear when filter non-working time with custom
viewPreset
Version 5.3.2
2023-04-04FEATURES / ENHANCEMENTS
- REACT Added new React 18 demo "Highlighting time spans". Demo is located in
examples/frameworks/react/highlight-time-spans
folder (6277) - The custom event layout function
eventLayout.layoutFn
is now passed the resource record being laid out as the second parameter. (6504)
BUG FIXES
- 3765 – Returning false from beforeUpdate does not revert event D&D
- 3789 – UndoRedo widget doesn't catch the project if configured standalone in Angular
- 6037 – Inconsistent event menu actions when multiple events are selected
- 6064 – Incorrect rendering of a timeaxis when
forceFit
enabled - 6105 – Inconsistent event menu copy/cut/paste actions when multiple events are selected
- 6297 – Not possible to drag event that dropped from grid when
nestedEvents
enabled - 6369 – Issues with timezones on scheduler
- 6376 – Resource calendar not shown when using nested events
- 6390 – Type for
CalendarModel
'sintervals
too strict - 6394 –
project.changes
still available afterproject.revertChanges()
- 6425 –
NestedEvents
not working in vertical mode - 6430 –
taskEditCanceled
event is not triggering - 6444 – Error on load function after dragging
- 6484 – Invisible cells repainted with wrong data
- 6510 – Event segment
eventColor
not applied
Version 5.3.1
2023-03-17API CHANGES
ProjectModel
convenience getter methods (events
,resources
etc.) now returnsallRecords
instead ofrecords
- Date parsing was made more forgiving in regard to character used to separate date parts. For example these strings are
now all acceptable as
HH:mm
:10:20
,10 20
,10-20
,10/20
(6344)
BUG FIXES
- 5084 – React orders demo not working properly
- 6025 – Uncaught error in
populateEventMenu
when dropping an event on the first resource - 6041 –
getDateConstraints()
bounds works not correct with not rounded time in start/end dates - 6129 – Dependencies not refreshed after dropping event on non-working time
- 6274 – SENCHA + Scheduler Pro + Chrome : Strange behaviour after zoom
- 6279 – Add a new tree node with empty children throws an exception
- 6320 –
effortDriven
+ fixed duration not working when setting it in the data level initially - 6326 –
GroupSummary
data not updating on event deletion - 6351 – Components do not render into containers not already in DOM
Version 5.3.0
2023-03-02FEATURES / ENHANCEMENTS
- CSS changes in Scheduler has cut the size of Scheduler Pro's standalone CSS-bundles roughly in half. See Schedulers upgrade guide for more information
- Added basic support for recurring events, see "What's new" for more information. And be sure to try it out in the new
recurrence
demo (792) - Support for Time zone conversion has been added to all Bryntum scheduling products. Simply set a IANA time zone
identifier as value for the
timeZone
config and that's it. But, since time zones is not supported natively in JavaScript we strongly recommend to read our Time zone guide (1533) - Added
Versions
feature, enabling capturing snapshots of projects together with a detailed changelog - Localization demos updated to show up-to-date localization approach
- Event model has got new
schedulingMode
,effort
andeffortDriven
fields. The fields add support for a new scheduling mode in which user provided effort gets distributed across the event duration. Please check the neweffort
demo to see how it works AjaxHelper.fetch
now supports using request body to pass parameters for non-GET requests. Please checkaddQueryParamsToBody
argument in the method documentation (2855)- Lots (but not all) of the not so informative
object
types in our TypeScript typings have been replaced with more specific types. Objects that in our JavaScript are used as maps are now declared asRecord<keyType, valueType>
, and for functions that accept object arguments many are replaced with anonymous type declarations, such as{ foo: string, bar: number }
(Partially fixed 5176) - Added new "Nested events configuration options" Angular demo. Demo is located in
examples/frameworks/angular/nested-events-configuration
folder (5188) - While resizing the
PercentBar
, the owning component now triggerpercentBarDragStart
,percentBarDrag
andpercentBarDrop
events. The task record is also updated in realtime triggering continuous UI updates for a nicer UX (6146)
API CHANGES
- DEPRECATED
LocaleManager.registerLocale
andLocaleManager.extendLocale
are deprecated.LocaleHelper.publishLocale
should be used instead. - When configuring a SchedulerPro with a time zone at initialization, and there's also a
startDate
and/or aendDate
initially, those days will be treated as in local system time zone and will therefore be converted to the configured time zone. Previously (in5.3.0-alpha-1
and5.3.0-beta-1
) those dates was treated as in the provided time zone - The default value for
ResourceHistogram
'seffortFormat
was changed from0
to0.#
, to round values to one decimal place. Previously it was not rounding at all
LOCALE UPDATES
- Locales format and process for applying locales have been simplified
- New locales for 31 languages have been added. Currently available languages are listed in the localization guide (Guides/Customization/Localization)
BUG FIXES
- 5889 – Events are not rendered according to the timezone when scheduler has a timezone
- 5981 – Scrolling close to edges hides
highlightEventCalendars
- 6018 – Wrong position of highlighted region when
taskRecord
is set - 6020 – Highlighted task timespan height not adjusting with the height of the rows
- 6156 –
eventRecord.set
only works first time for preamble/postamble - 6260 – Milestone is rendered incorrectly
- 6271 – Timeline enables eventEdit feature if any features config provided
Version 5.2.10
2023-02-17FEATURES / ENHANCEMENTS
- Added a
trackProjectModelChanges
config to theProjectModel
to optionally track own changes of theProjectModel
(5355)
API CHANGES
- Recently browsers have added support for Unicode 15, which changes the output of
Intl.DateTimeFormat
when formatting time to includeAM
/PM
. Those browsers now use "thin space" (\u202f
) instead of regular space. This affects theDateHelper.format()
function, but likely you do not need to take any action in your application. It also affectsDateHelper.parse()
, which has been updated to support the new unicode space (6193)
BUG FIXES
Version 5.2.9
2023-01-30FEATURES / ENHANCEMENTS
- The
TaskEditor's
Advanced
tab's combos has been made wider which required some additional styling and some fields have been rearranged as well. If your app is customizing theAdvanced
tab, you should check that your customization still gives same result with the new default layout (5966)
BUG FIXES
- 5925 – Adding
workingTime
cause the event tooltip to start from theeventBuffer
start date - 5979 – Summary on vertical mode "disappears" on double click
- 6017 – Scheduler Pro not assigning resourceId to new events
- 6019 – TypeScript Feature classes and configs have
on
event handlers exposed on owner class - 6038 – Event drag copy throws with mapped fields
- 6069 – Params lost if defined in class config
Version 5.2.8
2023-01-19BUG FIXES
- 5386 – Improved panel collapse animation when collapsed panel header is perpendicular to expanded
- 5788 – Automatic dependency setting not working after resetting events array
- 5814 –
StateProvider
throws during component construction - 5904 – TypeError in Scheduler Pro on Drag/Drop event
- 5917 – When load data with
schedulerPro.project.loadCrudManagerData
Scheduler Pro crashes - 5923 –
applyProjectChanges
does not account for mappedid
field - 5931 – Deprecated API use. Handle size is from CSS
- 5935 – Scheduler drag to create on a linked record does not work
- 5950 – Crash when resizing event being created
- 5953 – Event record disappears after changing to zero duration
Version 5.2.7
2023-01-11API CHANGES
- The
StartDateField/EndDateField
fields now sets the default value of theirmax
property to be 200 years after the project's end date, see the docs for the corresponding classes (5779)
BUG FIXES
Version 5.2.6
2022-12-28FEATURES / ENHANCEMENTS
- REACT React wrapper now supports React components in widgets and tooltips (774)
BUG FIXES
Version 5.2.5
2022-12-16FEATURES / ENHANCEMENTS
RowCopyPaste
feature supports copying rows in tree. Copied records will have same hierarchy- Paste after cut and copy behavior is unified, records are moved below the paste target
BUG FIXES
- 5408 –
EventDragCreate
doesn't takeignoreResourceCalendar
into account - 5668 – Chained
resourceStores
from oneCrudManager
works incorrect - 5693 – Nested events drag from Grid example crashes when dragging after code edit
- 5731 – Time axis cells are recycled when making schedule area small
- 5776 –
Radiobutton
not circular in small popup - 5778 – Dragging resources to the last row causes crash in group
Version 5.2.4
2022-11-28FEATURES / ENHANCEMENTS
- We recently launched a new homepage over at bryntum.com, and have now slightly updated the styling for demos and docs to better match it (new logo, new header color, new font). Please note that this is not a change to our themes, only the look of the demos, and it won't affect your application
BUG FIXES
Version 5.2.2
2022-11-08API CHANGES
- DEPRECATED The behaviour of the
store.data
getter will be changed in 6.0. Currently, it returns the **initial** raw dataset, in 6.0 it will be changed to have the more expected behaviour of returning the data objects for the **current** state instead. See Grid's upgrade guide for more information (5499)
Version 5.2.1
2022-10-28FEATURES / ENHANCEMENTS
- Documentation for
EventModel
mistakenly listed support foreffort
, related fields and functions. The concept currently only exists in Gantt, docs has been cleaned up. (5411)
BUG FIXES
- 2605 – Setting new resources to the store fails when all resources are filtered out
- 4392 – Error when using store instance in
ProjectModel
definition - 5149 – Angular demos now use component-local styles using
ViewEncapsulation.None
- 5322 – Getting Error "Unknown identifier ClassDefEx-1.$.startDate" when dynamically loading Data
- 5406 –
ResourceHistogram
view fails wheneventStore
config is passed - 5420 – Exception thrown when using event tree store in
SchedulerPro
- 5435 – Error after call
loadInlineData
with resource tree structure
Version 5.2.0
2022-10-13FEATURES / ENHANCEMENTS
- Scheduler Pro has gained built-in support for segmented events, by using the new
EventSegments
,EventSegmentDrag
andEventSegmentResize
features. The features cover splitting events to segments, rendering of such events and individual segments dragging Please check the newsplit-events
demo to see how it works (2975) - A new widget, ViewPresetCombo, is available to Scheduler, SchedulerPro and Gantt. Put it in the toolbar, and it will provide easy-to-setup view switching. It uses the built-in ViewPresets functionality which is easily customized (4539)
- Menu has a
separator
config to make it easier to visually separate menu items - The responsive state objects used in the
responsive
config of theResponsive
mixin now support aonce
property to allow configs to only be set on first activation of the state - The
Core.helper.DateHelper
class has a new methodformatRange
method which can format date ranges, as well as new formatting options for week numbers - A new
EventNonWorkingTime
feature was added to Scheduler. When enabled in Scheduler Pro, the combined calendar for an event (a merge of project / resource + event calendars) is visualized by shading the parts of an event that intersects non-working time. Can be tried in the newevent-non-working-time
demo - PdfExport feature is refactored to render content directly. This significantly improves performance and robustness by
eliminating component scrolling. This behavior is enabled by default. You can revert to the old behavior by setting
enableDirectRendering
config on the export feature tofalse
(4449) ResourceHistogram
has got a newgenerateScalePoints
event that allows customizing its scale points at runtime (5025)
API CHANGES
EventModel
has newignoreResourceCalendar
boolean field. When field is set totrue
the event will not take its assigned resource calendars into account and will perform according to its own calendar only (3349)
LOCALE UPDATES
- Added localization for the new event split functionality, keys
EventSegments.splitEvent
andEventSegments.renameSegment
BUG FIXES
Version 5.1.5
2022-10-12FEATURES / ENHANCEMENTS
- New records are assigned a generated
id
if none is provided. The generatedid
is meant to be temporary (a phantomid
), and should be replaced by the backend on commit. Previously theid
was based on a global counter incremented with each assignment. That simplistic scheme assured no two records got the sameid
during a session, but if an application serialized the generatedid
(note, they should not) and then reloaded it, it would eventually collide with a new generatedid
. To prevent this, the generatedid
s are now based on a random UUID instead - Stores now by default show a warning on console when loading records that has generated
id
s, as a reminder that it should be replaced by the backend on commit
BUG FIXES
Version 5.1.4
2022-09-29BUG FIXES
- 4374 – Console error if return false on preventable
beforeAdd
event on dependency store - 5050 – Events are not rendered correctly after exporting to PDF
- 5170 – When first region has width and last region is collapsed, Scheduler Pro doesn't resize with container
- 5196 – Task editor in Scheduler Pro gets empty when opened too fast after closing
- 5199 – When
resourceTimeRanges
feature enabled description is displayed twice
Version 5.1.3
2022-09-09BUG FIXES
Version 5.1.2
2022-08-29FEATURES / ENHANCEMENTS
- Configs that accept configuration options for a widget (or other class) are now (mostly) documented to accept a typed
config object rather than a plain object. For example instead of
{Object} tooltip - A tooltip configuration object
, it is now{TooltipConfig} tooltip - A tooltip configuration object
. This improves our TypeScript typings (transforms toPartial<TooltipConfig>
in typings) when using such configs, but also improves our docs by linking to the configs of the type - Added a config to allow State Tracking Manager to ignore remote changes coming in a sync response. This allows user
to only undo/redo local changes (
ignoreRemoteChangesInSTM
config on the ProjectModel) (5083)
BUG FIXES
- 4943 – Changing the time by dragging an event triggering an error
- 4965 – Dependency creation still working when
readOnly
istrue
- 4968 –
change
event doesn't fire when canceling event editor - 5010 – Group expanders still visible after stopping grouping
- 5017 – TypeScript Property type is missing in
DataFieldConfig
- 5018 – Vue Prop Validation fails for
String
options - 5028 – UI does not refresh when certain fields are changed
- 5056 – Project mutes events in stores not managed by the engine
Version 5.1.1
2022-07-28BUG FIXES
Version 5.1.0
2022-07-21FEATURES / ENHANCEMENTS
- Scheduler Pro has gained built-in support for nested events, by using a tree EventStore and the new NestedEvents
feature. On display in the new
nested-events-configuration
andnested-events-drag-from-grid
demos, as well as in the updatednested-events
demo (1519, 3564) - Our TypeScript typings for string types that have a predefined set of alternatives was improved to only accept
those alternatives. For example previously the
dock
config which was previously declared asdock: string
is nowdock : 'top'|'right'|'bottom'|'left'
- Create React App templates now available
- Configuring the crud manager functionality of the project was made a little easier by introducing shortcuts for
setting load and sync urls using the new
loadUrl
andsyncUrl
configs - Updated the built-in version of FontAwesome Free to
6.1.1
KeyMap
is a mixin that allows for standardized and customizable keyboard shortcuts functionality.KeyMap
is by default mixed in toWidget
and therefore available to allWidget
's child classes. There is a new guide **Guides/Customization/Keyboard shortcuts** describing how to customize currently integrated keyboard shortcuts (4300, 4313, 4328)- Project optionally allows
sync()
calls without local changes, to retrieve changes from the backend. ConfigureforceSync : true
to enable this new behaviour (4575)
API CHANGES
- BREAKING ANGULAR Angular wrappers now use the more modern module bundle by default, instead of the legacy umd bundle. Hence application imports must be changed to match. This will slightly improve application size and performance (2786)
- BREAKING
schedulerpro.lite.umd.js
bundle is no longer available - BREAKING WebComponents has been removed from
schedulerpro.module.js
ES modules bundle. New bundle with WebComponents isschedulerpro.wc.module.js
BUG FIXES
- 4378 – Dependencies not redrawn when rows reordered
- 4608 – Nested events ugly with scrollbars on
- 4689 – Drag creating a new event in
nested-events-drag-from-grid
should create acontainer
- 4696 – Parents sorted below children in docs
- 4697 – Too dark code background in docs
- 4945 – Dropping nested event causes crash when not constraining drag to timeline
- 4948 –
EventTooltip
buggy for nested events - 4955 – Removing parent when nested event is selected causes crash
Version 5.0.7
2022-07-13BUG FIXES
- 4681 – STM issues when using with backend
- 4737 – Paste events are not generating the assignments in the request
- 4756 – PDF export hangs trying to restore component
- 4892 – Unexpected change events after drag or resize if preamble/postamble used
- 4916 –
Fullscreen
is not working on mobile Safari - 4919 – Engine throws exception on referencing a destroyed project
Version 5.0.6
2022-06-20BUG FIXES
- 4146 –
TaskEditor
clears time when editing events with datetime picker - 4626 – Exception when pressing enter in event editor in timeline demo
- 4731 – Reverting assignment change does not update the view
- 4749 – Assignment record for new event does not appear in project changes in task editor is disabled
- 4778 – Body mask now tracks grid resize to maintain cover of the body
- 4808 – Typings are wrong for async functions
- 4813 – Scheduling Cycle combo shows previous content on resolving next conflict
Version 5.0.5
2022-05-30FEATURES / ENHANCEMENTS
- Added public
afterTaskEdit
event which is triggered at the end of the task editing after task editor is closed
BUG FIXES
- 4503 – Returning false from
beforeTaskEdit
event breaksautoSync
- 4519 –
TimeAxis
stopped refreshing data afterloadInlineData
call - 4547 – LWC Exception when dragging scheduler pro event on lightning tab
- 4584 –
TimeSpanHighlight
: surrounding and non-surrounding simultaneously - 4607 – VUE Incorrect prop types in Vue wrapper
- 4624 – XSS security bugs
- 4653 – Event and dependency are not rendered after reverting changes made in the task editor
- 4657 – Can not navigate out of the datetime field using
Shift + Tab
- 4668 –
StartDate
not updated withsyncDataOnLoad
andproject.load()
Version 5.0.4
2022-05-11FEATURES / ENHANCEMENTS
- The
EventCopyPaste
feature is since its inception documented as being enabled by default, but that only applied to the basic Scheduler, code was changed to make it enabled by default also in Scheduler Pro
API CHANGES
ProjectModel
has got newmaxCalendarRange
option that allows to supporting long running projects. For more details, see What's new (2962)
BUG FIXES
Version 5.0.3
2022-04-26FEATURES / ENHANCEMENTS
- Added new
examples/inline-data
demo showing assigning inline data toSchedulerPro
- WRAPPERS
ProjectModel
wrapper component reference can now be used asproject
parameter for Bryntum Scheduler Pro wrapper component in Angular and Vue applications (4238) - WRAPPERS Scheduler Pro has a new
ProjectModel
framework wrapper available for React, Vue and Angular. It simplifies sharing data between multiple Bryntum components (4382) - ANGULAR New demo showing use of inline data and
ProjectModel
wrapper. Demo located inexamples/frameworks/angular/inline-data
folder - REACT New demo showing use of inline data and
ProjectModel
wrapper. Demo located inexamples/frameworks/react/javascript/inline-data
folder - VUE-3 New demo showing use of inline data and
ProjectModel
wrapper. Demo located inexamples/frameworks/vue-3/javascript/inline-data
folder - REACT New basic React demo with TypeScript. Demo located in
examples/frameworks/react/typescript/basic
folder
API CHANGES
- The
validateResponse
flag onProjectModel
has been changed to default totrue
. When enabled, it validates responses from the backend and outputs a message on console if the format isn't valid. This is helpful during the development phase, but can be turned off in production - New Vue 2/3 wrapper config option
relayStoreEvents
(defaults tofalse
). When set totrue
, the events fired by stores are relayed to the Bryntum Grid instance - REACT React wrappers now include TypeScript definitions (3378)
BUG FIXES
Version 5.0.2
2022-04-13FEATURES / ENHANCEMENTS
- The
beforeTaskEdit
,beforeTaskSave
andbeforeTaskDelete
events triggered by the TaskEdit feature now handle async flows. Use async / await in your listener or return a Promise and it will be awaited before execution continues. Useful for example to ask for a confirmation on save etc (4421) - TaskEditor now offers a
blurAction
config to not reject changes when clicking outside the editor (4445)
BUG FIXES
- 4049 –
beforeEventEdit
does not fire on Scheduler Pro, whereasbeforeTaskEdit
does - 4310 – Wrong console tip for Scheduler Pro
- 4332 – Crash when double clicking histogram
- 4370 – Assigning tasks to project when
syncDataOnLoad:true
results in emptySchedulerPro
- 4389 – Scheduler with
infiniteScroll
throws when trying to render already loaded project - 4406 – Fixed items in disabled
fieldset
/radiogroup
not being disabled - 4479 –
DependencyEdit
dialog not includefromSide
/toSide
update into changes param ofdatachange
event
Older versions
- Full release version history can be found here.