Hi Ivan,
Greetings from Syncfusion support.
Q1: Tollbar customization
You can customize the toolbar items by using the actionBegin event of the Scheduler and with some css code like the below.
actionBegin: (args: ActionEventArgs & ToolbarActionArgs) => {
if (args.requestType === 'toolbarItemRendering') {
let item = args.items[1];
args.items[1] = args.items[3];
args.items[3] = item;
for (let i = 0; i < args.items.length; i++) {
args.items[i].align = "Right";
}
}
}
/* Aligning date picker popup */
.e-header-popup.e-popup.e-control.e-popup-open {
left: auto !important;
right: 0px;
}
Q2: Timescale customization
You can disable the time scale in the Scheduler by using the timescale property of the Scheduler like the below code.
timeScale: {
enable: false
},
Q3: Resource customization
You can add resource to the Scheduler by using the resources and group property of the Scheduler like the below code.
group: {
resources: ['MeetingRoom']
},
resources: [{
field: 'RoomId', title: 'Room Type',
name: 'MeetingRoom', allowMultiple: true,
dataSource: [
{ text: 'Room A', id: 1, color: '#98AFC7' },
{ text: 'Room B', id: 2, color: '#99c68e' },
{ text: 'Room C', id: 3, color: '#C2B280' },
{ text: 'Room D', id: 4, color: '#3090C7' },
],
textField: 'text', idField: 'id', colorField: 'color'
}],
Q4: First day of week customization
You can set first day of week to Scheduler by using firstDayOfWeek property of the Scheduler like the below.
firstDayOfWeek: 1,
Q5: Date header customization
You can customize the date header of the Scheduler by using dateHeaderTemplate and with some css code like below.
let instance: Internationalization = new Internationalization();
(window as TemplateFunction).getDateHeader = (value: Date) => {
return instance.formatDate(value, { skeleton: 'Md' });
};
(window as TemplateFunction).getDayHeader = (value: Date) => {
return instance.formatDate(value, { skeleton: 'E' });
};
interface TemplateFunction extends Window {
getDateHeader?: Function;
getDayHeader?: Function;
}
dateHeaderTemplate: '<div class="date-text">${getDateHeader(data.date)}</div><div class="day-text">${getDayHeader(data.date)}</div>',
/* Aligning date header template contents */
.date-text, .day-text {
text-align: center;
}
Kindly try the above sample and get in touch with us If you would need any further assistance.
Regards,
Ravikumar Venkatesan