Upgrade guide for Scheduler Pro v7.0.0
New themes, styling & FontAwesome changes
This release has extensive changes in the styling of all Bryntum products, and any custom themes and app styling will need to be updated. See Grid's upgrade guide for more information.
Tracking project settings changes by default
When syncing project changes (or querying project.changes), changed project settings are now included by default. To revert to the old behavior, set trackProjectSettings to false when configuring the project:
Old code
const scheduler = new SchedulerPro({
project : {
syncUrl : 'someUrl',
}
});
New code
const scheduler = new SchedulerPro({
project : {
syncUrl : 'someUrl',
trackProjectSettings : false // to revert to old behavior
}
});
Resizable task editor
The task editor is now resizable by default. To disable this behavior, set its resizable config to false:
Old code
const scheduler = new SchedulerPro({
// Task editor enabled by default, but not resizable
});
New code
const scheduler = new SchedulerPro({
features : {
taskEdit : {
editorConfig : {
resizable : false
}
}
}
});
Default value for resourceImageExtension changed
Used to default to '.jpg', but has been changed to '.png' to by default allow avatars with transparent backgrounds. If you relay on resource name + extension to form the image URL, you might need to update your app.
Old code
new SchedulerPro({
resourceImagePath : 'users/'
});
New code
new SchedulerPro({
resourceImagePath : 'users/',
resourceImageExtension : '.jpg'
});
DatePicker's cellRenderer context
DatePicker's cellRenderer is now passed the cell element as the cell property of its render context. The inner element into which new content can be added is passed as innerCell. Previously the inner element was passed in the cell property. This will only affect your apps if you have implemented a cellRenderer in any DatePicker
Old code
cellRenderer({ cell, date }) {
cell.innerHTML += `<b>${getValueForDate(date)}</b>`;
}
New code
cellRenderer({ innerCell, date }) {
innerCell.innerHTML += `<b>${getValueForDate(date)}</b>`;
}