New release: 5.31 with empty resource template, performance improvements, resource search & filtering and managing shifts with tasks

Launching empty resource list template, better control over event ordering, performance update for the timeline view along with resource search & filtering and managing shifts and tasks within the same view.
Event ordering
Custom event ordering was already available for the Agenda and Calendar views by writing a custom sort function. This release enables the same thing for the Timeline and Scheduler views as well.
Besides that, we’ve made it even simpler, through the order property of the event data, which is used to order the events without the need of a custom sort function.
Check out how you can make this work for the calendar view, agenda, scheduler and timeline.

Performance update: timeline virtual scroll improvements
The release includes a major refactor of the virtual scroll in the Timeline view. This improves the performance during scroll by loading the markup in smaller batches (rows, columns), instead of full pages.
The horizontal virtual scroll now supports batches smaller than a day, so scrolling is now smooth with large resolution views, such as 5 minutes steps, or event 1 minute steps.
The refactor also solved a number of long existing bugs, related to dynamic view changes.
Templating for new elements
Templating, custom render functions and slots are important tools for customizing the views and UX you are going for. With the addition of an empty resource template, you can use it to show any custom message in case there are no resources added to the calendar and provide means to reset filters, reload data or add resources.
With the new implementation the resource column will disappear only if the resources option is not specified at all. When an empty array is passed, an empty resource column will be displayed, which can be customized using the renderResourceEmpty function in React, jQuery and JavaScript, the resourceEmptyTemplate option in Angular and the resourceEmpty slot in Vue.

Resource filtering & search
Searching events is very useful in a lot of use-cases, however in situations where work is performed across a lot of resources or decisions have to be made quickly based on allocated tasks… filtering and searching for resources is key.
Either remote or local search and/or filtering was possible before by adding the controls and UI for it to any of the templates (eg. event calendar header, resource header) or handling it externally, but with the addition of the resource empty template you can show custom messaging, call to action for resource creation, data reload/sync button or even filter reset functionality.
Check out the fully functional demo we have put together with resource search and filtering capability.

Visualize task & shifts within the same timeline view
With the recent additions of variable event heights and the new, simple event ordering capabilities, it is possible to create views that can deal with different types of events that are related to each other, at the same time.
We can now nicely render shifts along with underlying tasks that are to be completed within those shifts all with dynamic validation that takes care of preventing overlaps, tasks sticking out of shift hours and everything that you might need to avoid scheduling problems.
Make sure to check out the new use-case demo that we published.

What’s next
We are working on a new label rendering mode for the calendar view, improvements to the agenda and other resource management related features.
For a full list of changes check out the release notes and download the latest version.