@@ -3,7 +3,7 @@ import type { Appointment, Properties } from '@js/ui/scheduler';
33import type { Component } from '@ts/core/widget/component' ;
44
55import type { ResourceLoader } from './utils/loader/resource_loader' ;
6- import type { GroupValues , RawGroupValues } from './utils/resource_manager/types' ;
6+ import type { GroupLeaf , GroupValues , RawGroupValues } from './utils/resource_manager/types' ;
77import type { AppointmentItemViewModel } from './view_model/types' ;
88
99export type Direction = 'vertical' | 'horizontal' ;
@@ -82,9 +82,9 @@ export type CalculateCellIndex = (
8282export type CalculateStartViewDate = (
8383 currentDate : Date ,
8484 startDayHour : number ,
85- startDate : Date ,
85+ startDate : Date | undefined ,
8686 intervalCount : number ,
87- firstDayOfWeekOption ?: number ,
87+ firstDayOfWeekOption ?: number | undefined ,
8888 skippedDays ?: number [ ] ,
8989) => Date ;
9090
@@ -95,7 +95,7 @@ export interface ViewCellData {
9595 otherMonth ?: boolean ;
9696 today ?: boolean ;
9797 allDay ?: boolean ;
98- groups ?: Record < string , unknown > ;
98+ groups ?: GroupLeaf [ 'grouped' ] ;
9999 groupIndex ?: number ;
100100 index : number ;
101101 isFirstGroupCell : boolean ;
@@ -107,6 +107,8 @@ export interface ViewCellData {
107107 highlighted ?: boolean ;
108108}
109109
110+ export type TimePanelCellData = Omit < ViewCellData , 'endDate' > ;
111+
110112export interface CountGenerationConfig {
111113 intervalCount : number ;
112114 currentDate : Date ;
@@ -163,7 +165,7 @@ export interface ViewDataProviderOptions {
163165 startDate ?: Date ;
164166 firstDayOfWeek : number ;
165167 today : Date ;
166-
168+ skippedDays : number [ ] ;
167169 isGenerateTimePanelData ?: boolean ;
168170 isGenerateWeekDaysHeaderData ?: boolean ;
169171}
@@ -173,6 +175,13 @@ export interface CellInfo {
173175 position : CellPositionData ;
174176}
175177
178+ export interface GroupInfo {
179+ allDay : boolean ;
180+ startDate : Date ;
181+ endDate : Date ;
182+ groupIndex : number ;
183+ }
184+
176185export interface ViewDataMap {
177186 dateTableMap : CellInfo [ ] [ ] ;
178187 allDayPanelMap : CellInfo [ ] ;
@@ -218,7 +227,7 @@ export interface GroupPanelData {
218227}
219228
220229export interface ViewDataBase {
221- groupIndex : number ;
230+ groupIndex : number | undefined ;
222231 isGroupedAllDayPanel ?: boolean ;
223232 key : string ;
224233}
@@ -234,12 +243,18 @@ export interface GroupedViewDataBase {
234243 bottomVirtualRowCount : number ;
235244}
236245
246+ export interface TimePanelDataBase {
247+ topVirtualRowHeight ?: number ;
248+ bottomVirtualRowHeight ?: number ;
249+ isGroupedAllDayPanel : boolean ;
250+ }
251+
237252export interface TimePanelCellsData extends ViewDataBase {
238- dateTable : ViewCellData [ ] ;
239- allDayPanel ?: ViewCellData ;
253+ dateTable : TimePanelCellData [ ] ;
254+ allDayPanel ?: TimePanelCellData ;
240255}
241256
242- export interface TimePanelData extends GroupedViewDataBase {
257+ export interface TimePanelData extends TimePanelDataBase {
243258 groupedData : TimePanelCellsData [ ] ;
244259}
245260
0 commit comments