Scheduler Pro – Change Log

Version 5.6.8

2024-03-04

FEATURES / 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

  • 8647HIGH PRIO Scheduler Pro – error removing partner
  • 8684HIGH PRIO Missing row hover effect on event drag
  • 8686HIGH 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-22

FEATURES / 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 the AssignmentModel is now documented and public

BUG FIXES

  • 7824HIGH PRIO ResourceUtilization resource/task tree is not rendered correctly with async assignments
  • 8387 – Embedded 3rd party chart not linked correctly when zooming in/out
  • 8401HIGH PRIO Dependency line misplaces on scroll with lot of data
  • 8423HIGH PRIO LWC Engine performance is too low with LWS enabled
  • 8426HIGH PRIO Nested events are offseted when resizing parent events
  • 8430HIGH PRIO Scheduler Pro does not link up single assignments when passed records
  • 8454HIGH PRIO Binding to resources and events on Scheduler Pro requires refresh to render
  • 8477HIGH 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-31

FEATURES / 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 the minEditSize 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 a stores 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 from 6.0.0 version. Use BryntumSchedulerProProjectModel instead. Check the upgrade guide for the details

LOCALE UPDATES

  • Changed the locale key Edit task : Edit task to editEvent : Edit event in TaskEdit

BUG FIXES

  • 2411HIGH PRIO Dragging event over non-working resource time ranges erratic
  • 7640 – Segment don't display event name
  • 7707TYPESCRIPT Update timeAxisColumn to be a property
  • 7720scrollResourceEventIntoView not working for collapsed tasks
  • 7821 – Issue with rendering recurring events with multi assign
  • 7869HIGH 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
  • 8210HIGH PRIO Strange row expansion when drag creating in embedded-chart demo
  • 8233HIGH PRIO Dependencies to nested parent events, cause all child events to have an "offset"
  • 8244HIGH PRIO Events not showing when using resourceId to assign resource
  • 8267DOCS 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-09

BUG FIXES

  • 7403 – Make a guide on how to make a theme selector in frameworks
  • 7818TypeScript Incorrect RecurrenceModel typing in typings
  • 7850Salesforce Multi event select not selecting events in Salesforce
  • 7964REACT 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 to true
  • 8177TimeAxisSubGrid throws "queueMicrotask is not a function" exception
  • 8192beforeEventResizeFinalize 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-21

API CHANGES

  • resourceTimeRangeRenderer method from ResourceTimeRanges feature is now a config on the Scheduler, making it available in framework wrappers (8035)

BUG FIXES

  • 8029 – Dragging Task when fillTicks and snap enabled behaves differently on 5.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-13

FEATURES / ENHANCEMENTS

  • Added support for custom event layouts in vertical mode, by supplying a layoutFn to then eventLayout config (7659)
  • ANGULAR New "Resource utilization" demo (Angular) shows a Scheduler Pro and a ResourceUtilization visualizing resource allocation in sync. The demo is located in frameworks/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 after 6.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 7981EventDragCreate 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-24

API CHANGES

  • DEPRECATED The eventBodyTemplate function was deprecated in favor of returning the desired markup from an eventRenderer function. It will be removed in 6.0 (7288)

BUG FIXES

  • 7092 – Feature mixin on-owner events are not exposed on class
  • 7683TaskEditor not vertically scrollable when shown on a small screen
  • 7716 – Link is created to a task when trying to abort building the link
  • 7726TaskEdit stops working if hideAnimationEnd event is not fired
  • 7876 – Issue with DragCreating event that snaps to 0 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-17

FEATURES / 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

  • 5719YARN 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
  • 7754Frameworks 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 existing id
  • 7820globalThis should be defined in locales to support LWC
  • 7831Thin 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-26

FEATURES / 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 in sass/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 on PdfExport 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 the Core.util.helper.Rectangle module. Check upgrading guide for the details
  • BREAKING TypeScript ScrollOptions typedef has been renamed to BryntumScrollOptions to not interfere with TypeScript interface ScrollOptions. Check upgrading guide for the details (7385)
  • FRAMEWORKSDEPRECATED BryntumProjectModel wrapper component has been renamed to BryntumSchedulerProProjectModel. Please see the upgrade guide for details

BUG FIXES

  • 7594 – Dragging with non-continuous time axis does not take non-working time into account
  • 7613onEventResizeStart and onEventDragStart 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-23

FEATURES / ENHANCEMENTS

  • EventStore now calls console.error when you load / set invalid data with startDate > endDate
  • EventBuffer feature now supports a renderer function allowing you to change text, CSS class and icon for the preamble and postamble elements (6136)

API CHANGES

  • A 0-duration preamble or postamble now serializes as null

BUG FIXES

  • 5927 – Error when scrolling and then switching to collapsed tree structure
  • 6654 – Issues combining infiniteScroll with zoom
  • 7612highlightTimeSpans 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-05

BUG FIXES

  • 7312scrollEventIntoView not working correctly
  • 7500 – Top level child styling broken in nested-events-configuration demo
  • 7541scrollEventIntoView throwing error in gantt-schedulerpro demo

Version 5.5.3

2023-09-15

FEATURES / 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
  • 7390Resourceutilization 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 recurring ResourceTimeRange
  • 7481 – Task editor should not close when fully reloading project if id of edited task is still present

Version 5.5.2

2023-08-30

BUG FIXES

  • 1491TaskEdit resets end time when user changes startDate
  • 4866ResourceUtilizationModel origin property is config-only
  • 7283SchedulerTooltip mouseOffset stack overflow

Version 5.5.1

2023-08-16

API CHANGES

  • We added two public methods – suspendChangeTracking and resumeChangeTracking to suspend and resume hasChanges/noChanges events on a CrudManager

BUG FIXES

  • 644 – Event cannot be assigned to multiple resources from editor with autoUpdateRecord enabled
  • 7116 – Event removed when returning false from beforeEventEdit after v5.3.3
  • 7203onVisibleDateRangeChange is not subscriber on visibleDateRangeChange event but separated method
  • 7233 – LaterJS bug when enum days from Monday
  • 7259 – Missing typings in ResourceUtilizationFeaturesConfigType after upgrading to version 5.4.0
  • 7292 – Crash when assigning resource in grouped Scheduler
  • 7308 – Navigation issue in Bryntum examples

Version 5.5.0

2023-07-31

This 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

  • 7221VUE Vue vite app doesn't compile with Bryntum vue wrappers
  • 7229 – Assignments not saved correctly while create new event when use store's URLs to save data

Version 5.4.2

2023-07-26

BUG FIXES

  • 7091 – Exception thrown when moving mouse after event drag create
  • 7164 – Action column icons missing margin in Scheduler Pro

Version 5.4.1

2023-07-13

FEATURES / 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

  • 6077TypeScript Model constructors should allow second param
  • 7099 – Dependency creation validates not correct when move cursor fast

Version 5.4.0

2023-06-30

FEATURES / 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 and ResourceUtilization views which now better support TreeGroup and Group features and provide some additional APIs for customization. For more details please check new "Resource histogram" and "Resource utilization" guides and see the updated resourcehistogram and resourceutilization examples
  • Widget has a new config, maximizeOnMobile which takes effect only on floating 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 a slidetoggle 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 new maxNesting 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 includes SchedulerPro/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

  • 5553reapplyFilterOnAdd doesn't work when adding resources before loading

Version 5.3.8

2023-06-28

BUG FIXES

  • 6986 – Undo / Redo Inconsistent Crud changes

Version 5.3.7

2023-06-20

BUG FIXES

  • 6389 – Drag-n-Drop bug when constrainDragToTimeSlot set to true
  • 6842 – Issues with updating segments in latest nightly (2023-05-24-release)
  • 7004REACT StateTrackingManager not working correctly

Version 5.3.6

2023-05-26

FEATURES / ENHANCEMENTS

  • Event segments can now have eventColor HEX values, e.g. 000000 (6531)

BUG FIXES

  • 6740REACT Set same events data with segments shows different result
  • 6747 – Exception when filtering the segmented event
  • 6762WidgetHelper.showContextMenu does not display the context menu when using Number

Version 5.3.5

2023-05-11

API CHANGES

  • The internal feature mixin ProTaskEditStm has been moved to Scheduler codebase and renamed to TaskEditStm. It is available now as TaskEditStm 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
  • 6701IONIC 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-28

FEATURES / ENHANCEMENTS

  • New config option on the SchedulerPro's ProjectModel: skipNonWorkingTimeInDurationWhenSchedulingManually. Please refer to the documentation for details

BUG FIXES

  • 6582 – Event's endDate jumps when start editing manually scheduled event
  • 6644 – Edit Task option missing in EventMenu
  • 6652 – Minified UMD bundle does not export bryntum namespace

Version 5.3.3

2023-04-21

FEATURES / ENHANCEMENTS

  • TypeScript Type definition files were added for schedulerpro.node.cjs and schedulerpro.node.mjs bundles (6523)
  • ResourceNonWorkingTime now offers a enableMouseEvents config to enable showing tooltips for its rendered elements. See updated resource-non-working-time demo (6545)
  • ResourceNonWorkingTime now supports showing the name 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 in examples/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
  • 6527ANGULAR Resource Utilization – custom tick context is not updated when shift timeline
  • 6539eventRecord 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-04

FEATURES / 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's intervals too strict
  • 6394project.changes still available after project.revertChanges()
  • 6425NestedEvents not working in vertical mode
  • 6430taskEditCanceled 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-17

API CHANGES

  • ProjectModel convenience getter methods (events, resources etc.) now returns allRecords instead of records
  • 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
  • 6041getDateConstraints() 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
  • 6320effortDriven + fixed duration not working when setting it in the data level initially
  • 6326GroupSummary data not updating on event deletion
  • 6351 – Components do not render into containers not already in DOM

Version 5.3.0

2023-03-02

FEATURES / 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 and effortDriven fields. The fields add support for a new scheduling mode in which user provided effort gets distributed across the event duration. Please check the new effort demo to see how it works
  • AjaxHelper.fetch now supports using request body to pass parameters for non-GET requests. Please check addQueryParamsToBody 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 as Record<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 trigger percentBarDragStart, percentBarDrag and percentBarDrop events. The task record is also updated in realtime triggering continuous UI updates for a nicer UX (6146)

API CHANGES

  • DEPRECATED LocaleManager.registerLocale and LocaleManager.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 a endDate initially, those days will be treated as in local system time zone and will therefore be converted to the configured time zone. Previously (in 5.3.0-alpha-1 and 5.3.0-beta-1) those dates was treated as in the provided time zone
  • The default value for ResourceHistogram's effortFormat was changed from 0 to 0.#, 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
  • 6156eventRecord.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-17

FEATURES / ENHANCEMENTS

  • Added a trackProjectModelChanges config to the ProjectModel to optionally track own changes of the ProjectModel (5355)

API CHANGES

  • Recently browsers have added support for Unicode 15, which changes the output of Intl.DateTimeFormat when formatting time to include AM/PM. Those browsers now use "thin space" (\u202f) instead of regular space. This affects the DateHelper.format() function, but likely you do not need to take any action in your application. It also affects DateHelper.parse(), which has been updated to support the new unicode space (6193)

BUG FIXES

  • 6112 – Exception is thrown after rejecting a conflicting change
  • 6114scrollEventIntoView doesn't handle nested events
  • 6133 – Crash when dragging events between two schedulers
  • 6142 – DST Adjustment issue adding 1h on events
  • 6147 – Undo/redo adding a calendar crashes

Version 5.2.9

2023-01-30

FEATURES / 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 the Advanced 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 the eventBuffer start date
  • 5979 – Summary on vertical mode "disappears" on double click
  • 6017 – Scheduler Pro not assigning resourceId to new events
  • 6019TypeScript 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-19

BUG FIXES

  • 5386 – Improved panel collapse animation when collapsed panel header is perpendicular to expanded
  • 5788 – Automatic dependency setting not working after resetting events array
  • 5814StateProvider throws during component construction
  • 5904 – TypeError in Scheduler Pro on Drag/Drop event
  • 5917 – When load data with schedulerPro.project.loadCrudManagerData Scheduler Pro crashes
  • 5923applyProjectChanges does not account for mapped id 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-11

API CHANGES

  • The StartDateField/EndDateField fields now sets the default value of their max property to be 200 years after the project's end date, see the docs for the corresponding classes (5779)

BUG FIXES

  • 4862 – Scheduler Pro percent bar in vertical mode wrong UI
  • 5474 – Wrong endDate when dragging events over days at which DST/STD change
  • 5849 – Store exception event triggered when create a new event with backend used
  • 5882 – Rendering content from eventRenderer disappearing when scrolling

Version 5.2.6

2022-12-28

FEATURES / ENHANCEMENTS

  • REACT React wrapper now supports React components in widgets and tooltips (774)

BUG FIXES

  • 2176 – Adding non-working interval dynamically does not recalculate tasks
  • 4851 – Infinite requests if server response is malformed
  • 5394 – Non working days not painted after adding a calendar interval programmatically
  • 5786 – Store autoCommit gets disabled by CRUDManager

Version 5.2.5

2022-12-16

FEATURES / 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

  • 5408EventDragCreate doesn't take ignoreResourceCalendar into account
  • 5668 – Chained resourceStores from one CrudManager 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
  • 5776Radiobutton not circular in small popup
  • 5778 – Dragging resources to the last row causes crash in group

Version 5.2.4

2022-11-28

FEATURES / 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

  • 5242 – Create styling guide for Scheduler Pro
  • 5564 – Crash when drag creating with task editor open
  • 5595 – Fix panel collapse icon directions

Version 5.2.3

2022-11-17

BUG FIXES

  • 5551 – Store allRecords includes group footers twice

Version 5.2.2

2022-11-08

API 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-28

FEATURES / ENHANCEMENTS

  • Documentation for EventModel mistakenly listed support for effort, 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
  • 5406ResourceHistogram view fails when eventStore 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-13

FEATURES / ENHANCEMENTS

  • Scheduler Pro has gained built-in support for segmented events, by using the new EventSegments, EventSegmentDrag and EventSegmentResize features. The features cover splitting events to segments, rendering of such events and individual segments dragging Please check the new split-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 the Responsive mixin now support a once property to allow configs to only be set on first activation of the state
  • The Core.helper.DateHelper class has a new method formatRange 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 new event-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 to false (4449)
  • ResourceHistogram has got a new generateScalePoints event that allows customizing its scale points at runtime (5025)

API CHANGES

  • EventModel has new ignoreResourceCalendar boolean field. When field is set to true 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 and EventSegments.renameSegment

BUG FIXES

  • 4096 – CalendarIntervalMixin class uses hardcoded date field formats
  • 5241 – Cannot reach dependency terminals for segmented events
  • 5243 – Task editor too narrow in classic themes
  • 5290 – Error on triggering zoomToFit on ResourceHistogram

Version 5.1.5

2022-10-12

FEATURES / ENHANCEMENTS

  • New records are assigned a generated id if none is provided. The generated id is meant to be temporary (a phantom id), and should be replaced by the backend on commit. Previously the id was based on a global counter incremented with each assignment. That simplistic scheme assured no two records got the same id during a session, but if an application serialized the generated id (note, they should not) and then reloaded it, it would eventually collide with a new generated id. To prevent this, the generated ids are now based on a random UUID instead
  • Stores now by default show a warning on console when loading records that has generated ids, as a reminder that it should be replaced by the backend on commit

BUG FIXES

  • 4645 – Improve error message "Bryntum bundle included twice"
  • 4654REACT Bryntum widget wrappers don't accept all component properties in React 18
  • 5352 – Exception thrown when refreshing the data with event selected
  • 5372 – Not able to remove events in Vertical mode

Version 5.1.4

2022-09-29

BUG 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-09

BUG FIXES

  • 415 – Improve docs on formatting currency values on NumberField
  • 3680 – Support Salesforce Winter 22 release
  • 5133 – Custom layout function scope should have a reference to the scheduler

Version 5.1.2

2022-08-29

FEATURES / 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 to Partial<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 is true
  • 4968change event doesn't fire when canceling event editor
  • 5010 – Group expanders still visible after stopping grouping
  • 5017TypeScript Property type is missing in DataFieldConfig
  • 5018Vue 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-28

BUG FIXES

  • 3427 – Infinite sync loop if percentDone value is incorrect
  • 4963 – Undoing two scheduled nested events causes crash

Version 5.1.0

2022-07-21

FEATURES / 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 and nested-events-drag-from-grid demos, as well as in the updated nested-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 as dock: string is now dock : '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 and syncUrl 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 to Widget and therefore available to all Widget'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. Configure forceSync : 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 is schedulerpro.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 a container
  • 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
  • 4948EventTooltip buggy for nested events
  • 4955 – Removing parent when nested event is selected causes crash

Version 5.0.7

2022-07-13

BUG 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
  • 4916Fullscreen is not working on mobile Safari
  • 4919 – Engine throws exception on referencing a destroyed project

Version 5.0.6

2022-06-20

BUG FIXES

  • 4146TaskEditor 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-30

FEATURES / 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 breaks autoSync
  • 4519TimeAxis stopped refreshing data after loadInlineData call
  • 4547LWC Exception when dragging scheduler pro event on lightning tab
  • 4584TimeSpanHighlight: surrounding and non-surrounding simultaneously
  • 4607VUE 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
  • 4668StartDate not updated with syncDataOnLoad and project.load()

Version 5.0.4

2022-05-11

FEATURES / 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 new maxCalendarRange option that allows to supporting long running projects. For more details, see What's new (2962)

BUG FIXES

  • 4294 – Not possible to reach horizontal time axis scrollbar
  • 4490 – Dragging events between Scheduler Pro instances freezes
  • 4562REACT React wrappers have incorrect source mapping urls
  • 4574highlightTimeSpans works even though the timeSpanHighlight feature is disabled

Version 5.0.3

2022-04-26

FEATURES / ENHANCEMENTS

  • Added new examples/inline-data demo showing assigning inline data to SchedulerPro
  • WRAPPERS ProjectModel wrapper component reference can now be used as project 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 in examples/frameworks/angular/inline-data folder
  • REACT New demo showing use of inline data and ProjectModel wrapper. Demo located in examples/frameworks/react/javascript/inline-data folder
  • VUE-3 New demo showing use of inline data and ProjectModel wrapper. Demo located in examples/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 on ProjectModel has been changed to default to true. 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 to false). When set to true, the events fired by stores are relayed to the Bryntum Grid instance
  • REACT React wrappers now include TypeScript definitions (3378)

BUG FIXES

  • 4031 – First Redo action works incorrect
  • 4127LWC DomHelper.isInView() throws
  • 4222LWC Performance degradation in 5.0 release
  • 4432LWC Mouse events do not work
  • 4439 – Add public event to track task edit cancel action
  • 4461Vue wrapper triggers doubled dataChange events with different params

Version 5.0.2

2022-04-13

FEATURES / ENHANCEMENTS

  • The beforeTaskEdit, beforeTaskSave and beforeTaskDelete 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

  • 4049beforeEventEdit does not fire on Scheduler Pro, whereas beforeTaskEdit does
  • 4310 – Wrong console tip for Scheduler Pro
  • 4332 – Crash when double clicking histogram
  • 4370 – Assigning tasks to project when syncDataOnLoad:true results in empty SchedulerPro
  • 4389 – Scheduler with infiniteScroll throws when trying to render already loaded project
  • 4406 – Fixed items in disabled fieldset/radiogroup not being disabled
  • 4479DependencyEdit dialog not include fromSide/toSide update into changes param of datachange event

Older versions

  • Full release version history can be found here.