@progress/kendo-react-gantt 13.3.0 → 13.4.0-develop.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/Gantt.d.ts +42 -0
  2. package/GanttNoRecords.d.ts +19 -0
  3. package/cells/FilterCells/GanttBooleanFilter.d.ts +17 -0
  4. package/cells/FilterCells/GanttDateFilter.d.ts +17 -0
  5. package/cells/FilterCells/GanttNumericFilter.d.ts +17 -0
  6. package/cells/FilterCells/GanttTextFilter.d.ts +17 -0
  7. package/cells/FilterCells/utils.d.ts +45 -0
  8. package/cells/FilterCells/utils.mjs +11 -11
  9. package/components/BaseView.d.ts +27 -0
  10. package/components/GanttDependency.d.ts +17 -0
  11. package/components/GanttTask.d.ts +19 -0
  12. package/components/GanttTreelist.d.ts +146 -0
  13. package/components/GanttTreelist.mjs +8 -8
  14. package/components/toolbar/AddButton.d.ts +19 -0
  15. package/components/toolbar/AddButton.mjs +2 -2
  16. package/components/toolbar/Toolbar.d.ts +28 -0
  17. package/components/toolbar/view-selector/ViewSelector.d.ts +31 -0
  18. package/components/toolbar/view-selector/ViewSelectorItem.d.ts +19 -0
  19. package/components/toolbar/view-selector/ViewSelectorList.d.ts +10 -0
  20. package/constants/index.d.ts +60 -0
  21. package/constants/index.mjs +2 -2
  22. package/context/GanttContext.d.ts +128 -0
  23. package/context/GanttViewContext.d.ts +47 -0
  24. package/dist/cdn/js/kendo-react-gantt.js +1 -1
  25. package/editors/FormAssingmentsEditor.d.ts +13 -0
  26. package/editors/FormDateTimePicker.d.ts +13 -0
  27. package/editors/FormDropDownList.d.ts +13 -0
  28. package/editors/FormInput.d.ts +13 -0
  29. package/editors/FormNumericTextBox.d.ts +13 -0
  30. package/editors/GanttEditor.d.ts +46 -0
  31. package/editors/GanttEditor.mjs +5 -5
  32. package/editors/GanttEditorPredecessors.d.ts +53 -0
  33. package/editors/GanttEditorSuccessors.d.ts +53 -0
  34. package/editors/GanttForm.d.ts +73 -0
  35. package/editors/GanttForm.mjs +2 -2
  36. package/editors/GanttRemoveDialog.d.ts +51 -0
  37. package/editors/GanttRemoveDialog.mjs +2 -2
  38. package/hooks/useControlledState.d.ts +11 -0
  39. package/hooks/useDictionaryStore.d.ts +25 -0
  40. package/hooks/useGanttTask.d.ts +11 -0
  41. package/index.d.mts +28 -1607
  42. package/index.d.ts +28 -1607
  43. package/interfaces/AddDirection.d.ts +13 -0
  44. package/interfaces/DataAction.d.ts +32 -0
  45. package/interfaces/DataItem.d.ts +13 -0
  46. package/interfaces/DateRange.d.ts +15 -0
  47. package/interfaces/DependencyModelFields.d.ts +32 -0
  48. package/interfaces/DependencyType.d.ts +22 -0
  49. package/interfaces/DragEvent.d.ts +21 -0
  50. package/interfaces/GanttBaseProps.d.ts +81 -0
  51. package/interfaces/GanttCellProps.d.ts +48 -0
  52. package/interfaces/GanttColumnProps.d.ts +43 -0
  53. package/interfaces/GanttDependency.d.ts +33 -0
  54. package/interfaces/GanttDependencyModelFields.d.ts +32 -0
  55. package/interfaces/GanttFilterCellProps.d.ts +13 -0
  56. package/interfaces/GanttFilterOperator.d.ts +13 -0
  57. package/interfaces/GanttHeaderCellProps.d.ts +13 -0
  58. package/interfaces/GanttNoRecordsProps.d.ts +16 -0
  59. package/interfaces/GanttProps.d.ts +238 -0
  60. package/interfaces/GanttRowProps.d.ts +98 -0
  61. package/interfaces/GanttSelectableSettings.d.ts +25 -0
  62. package/interfaces/GanttSlotType.d.ts +11 -0
  63. package/interfaces/GanttSortSettings.d.ts +20 -0
  64. package/interfaces/GanttTaskModelFields.d.ts +67 -0
  65. package/interfaces/GanttView.d.ts +147 -0
  66. package/interfaces/GanttViewTimelineHeaderCellProps.d.ts +38 -0
  67. package/interfaces/Rectangle.d.ts +13 -0
  68. package/interfaces/Slot.d.ts +19 -0
  69. package/interfaces/TaskModelFields.d.ts +56 -0
  70. package/interfaces/events.d.ts +304 -0
  71. package/messages/index.d.ts +197 -0
  72. package/package-metadata.d.ts +12 -0
  73. package/package-metadata.js +1 -1
  74. package/package-metadata.mjs +10 -16
  75. package/package.json +14 -14
  76. package/rows/GanttRow.d.ts +11 -0
  77. package/utils/data-operations.d.ts +50 -0
  78. package/utils/data-operations.mjs +1 -1
  79. package/utils/index.d.ts +185 -0
  80. package/utils/index.mjs +4 -4
  81. package/views/GanttDayView.d.ts +24 -0
  82. package/views/GanttDayView.mjs +5 -5
  83. package/views/GanttMonthView.d.ts +20 -0
  84. package/views/GanttWeekView.d.ts +20 -0
  85. package/views/GanttWeekView.mjs +4 -4
  86. package/views/GanttYearView.d.ts +20 -0
@@ -0,0 +1,238 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import { GanttBaseProps } from './GanttBaseProps.js';
9
+ import { GanttTaskModelFields } from './GanttTaskModelFields.js';
10
+ import { GanttDependencyModelFields } from './GanttDependencyModelFields.js';
11
+ import { GanttView } from './GanttView.js';
12
+ import { GanttViewChangeEvent, GanttDataStateChangeEvent, GanttSortChangeEvent, GanttFilterChangeEvent, GanttExpandChangeEvent, GanttRowClickEvent, GanttColumnResizeEvent, GanttColumnReorderEvent, GanttColumnMenuFilterChangeEvent, GanttAddClickEvent, GanttTaskContextMenuEvent, GanttTaskClickEvent, GanttTaskDoubleClickEvent, GanttRowDoubleClickEvent, GanttRowContextMenuEvent, GanttTaskRemoveClickEvent, GanttDependencyCreateEvent, GanttKeyDownEvent, GanttSelectionChangeEvent, GanttHeaderSelectionChangeEvent } from './events.js';
13
+ import { DataItem } from './DataItem.js';
14
+ import { GanttDependency } from './GanttDependency.js';
15
+ /**
16
+ * Represents the props of the [KendoReact Gantt component](https://www.telerik.com/kendo-react-ui/components/gantt).
17
+ */
18
+ export interface GanttProps extends GanttBaseProps {
19
+ /**
20
+ * Adds custom CSS classes to the Gantt component.
21
+ *
22
+ * @example
23
+ * ```jsx
24
+ * <Gantt className="custom-class" />
25
+ * ```
26
+ */
27
+ className?: string;
28
+ /**
29
+ * Sets custom styles for the Gantt component.
30
+ *
31
+ * @example
32
+ * ```jsx
33
+ * <Gantt style={{ height: '500px' }} />
34
+ * ```
35
+ */
36
+ style?: React.CSSProperties;
37
+ /**
38
+ * Provides task data for the Gantt chart. Tasks appear as visual bars in the timeline.
39
+ *
40
+ * @example
41
+ * ```jsx
42
+ * const tasks = [{ id: 1, title: 'Task 1', start: new Date(), end: new Date() }];
43
+ * <Gantt taskData={tasks} />
44
+ * ```
45
+ *
46
+ * @slug task_data_gantt
47
+ */
48
+ taskData?: DataItem[];
49
+ /**
50
+ * Provides dependency data for the Gantt chart. Dependencies appear as visual connections between tasks.
51
+ *
52
+ * @example
53
+ * ```jsx
54
+ * const dependencies = [{ id: 1, from: 1, to: 2 }];
55
+ * <Gantt dependencyData={dependencies} />
56
+ * ```
57
+ *
58
+ * @slug dependency_data_gantt
59
+ */
60
+ dependencyData?: GanttDependency[];
61
+ /**
62
+ * Maps field names for reading task data from your data source.
63
+ *
64
+ * @example
65
+ * ```jsx
66
+ * const taskModelFields = { id: 'id', title: 'title', start: 'start', end: 'end' };
67
+ * <Gantt taskModelFields={taskModelFields} />
68
+ * ```
69
+ */
70
+ taskModelFields?: GanttTaskModelFields;
71
+ /**
72
+ * Maps field names for reading dependency data from your data source.
73
+ *
74
+ * @example
75
+ * ```jsx
76
+ * const dependencyModelFields = { id: 'id', from: 'from', to: 'to' };
77
+ * <Gantt dependencyModelFields={dependencyModelFields} />
78
+ * ```
79
+ */
80
+ dependencyModelFields?: GanttDependencyModelFields;
81
+ /**
82
+ * Provides view components as children. The Gantt renders the currently selected view.
83
+ *
84
+ * @example
85
+ * ```jsx
86
+ * <Gantt>
87
+ * <GanttWeekView title="Day" />
88
+ * <GanttDayView title="Week" />
89
+ * </Gantt>
90
+ * ```
91
+ */
92
+ children?: GanttView[] | GanttView;
93
+ /**
94
+ * Sets the view that shows first when the Gantt loads. You can choose from:
95
+ * * `day`
96
+ * * `week` (Default)
97
+ * * `month`
98
+ * * `year`
99
+ *
100
+ * @default "week"
101
+ *
102
+ * @example
103
+ * ```jsx
104
+ * <Gantt defaultView="month" />
105
+ * ```
106
+ */
107
+ defaultView?: string;
108
+ /**
109
+ * Controls which view is currently shown. The value must match the `title` property of a view.
110
+ *
111
+ * @example
112
+ * ```jsx
113
+ * <Gantt view="day" />
114
+ * ```
115
+ */
116
+ view?: string;
117
+ /**
118
+ * Sets the timezone for displaying dates and times in the Gantt chart.
119
+ * For example, `Europe/Sofia`.
120
+ *
121
+ * @example
122
+ * ```jsx
123
+ * <Gantt timezone="Europe/Sofia" />
124
+ * ```
125
+ */
126
+ timezone?: string;
127
+ /**
128
+ * Sets the height of all rows in pixels. All rows have the same height.
129
+ *
130
+ * @default 50
131
+ *
132
+ * @example
133
+ * ```jsx
134
+ * <Gantt rowHeight={40} />
135
+ * ```
136
+ */
137
+ rowHeight?: number;
138
+ /**
139
+ * Configures the toolbar options. You can enable the add task button.
140
+ *
141
+ * @example
142
+ * ```jsx
143
+ * <Gantt toolbar={{ addTaskButton: true }} />
144
+ * ```
145
+ */
146
+ toolbar?: {
147
+ addTaskButton: boolean;
148
+ };
149
+ /**
150
+ * Fires when the user selects a different view. Use this to control which view is shown.
151
+ *
152
+ * @example
153
+ * ```jsx
154
+ * const handleViewChange = (args) => console.log(args.view);
155
+ * <Gantt onViewChange={handleViewChange} />
156
+ * ```
157
+ */
158
+ onViewChange?: (args: GanttViewChangeEvent) => void;
159
+ /**
160
+ * Fires when the user changes the column menu filter.
161
+ */
162
+ onColumnMenuFilterChange?: (event: GanttColumnMenuFilterChangeEvent) => void;
163
+ /**
164
+ * Fires when the data state changes.
165
+ */
166
+ onDataStateChange?: (event: GanttDataStateChangeEvent) => void;
167
+ /**
168
+ * Fires when the sorting of the Gantt is changed ([see example](https://www.telerik.com/kendo-react-ui/components/gantt/sorting)).
169
+ * You need to handle the event yourself and sort the data.
170
+ */
171
+ onSortChange?: (event: GanttSortChangeEvent) => void;
172
+ /**
173
+ * Fires when the Gantt filter is modified through the UI
174
+ * ([more information and examples](https://www.telerik.com/kendo-react-ui/components/gantt/filtering)).
175
+ * You need to handle the event yourself and filter the data.
176
+ */
177
+ onFilterChange?: (event: GanttFilterChangeEvent) => void;
178
+ /**
179
+ * Fires when the user clicks the expand or collapse icon on a row.
180
+ */
181
+ onExpandChange?: (event: GanttExpandChangeEvent) => void;
182
+ /**
183
+ * Fires when the user clicks the add task button.
184
+ */
185
+ onAddClick?: (event: GanttAddClickEvent) => void;
186
+ /**
187
+ * Fires when the user resizes a column.
188
+ */
189
+ onColumnResize?: (event: GanttColumnResizeEvent) => void;
190
+ /**
191
+ * Fires when the user reorders columns.
192
+ */
193
+ onColumnReorder?: (event: GanttColumnReorderEvent) => void;
194
+ /**
195
+ * Fires when the user clicks a row.
196
+ */
197
+ onRowClick?: (event: GanttRowClickEvent) => void;
198
+ /**
199
+ * Fires when the user double-clicks a row.
200
+ */
201
+ onRowDoubleClick?: (event: GanttRowDoubleClickEvent) => void;
202
+ /**
203
+ * Fires when the user right-clicks on a row.
204
+ */
205
+ onRowContextMenu?: (event: GanttRowContextMenuEvent) => void;
206
+ /**
207
+ * Fires when the user clicks a task.
208
+ */
209
+ onTaskClick?: (event: GanttTaskClickEvent) => void;
210
+ /**
211
+ * Fires when the user double-clicks a task.
212
+ */
213
+ onTaskDoubleClick?: (event: GanttTaskDoubleClickEvent) => void;
214
+ /**
215
+ * Fires when the user right-clicks on a task.
216
+ */
217
+ onTaskContextMenu?: (event: GanttTaskContextMenuEvent) => void;
218
+ /**
219
+ * Fires when the user clicks the remove button on a task.
220
+ */
221
+ onTaskRemoveClick?: (event: GanttTaskRemoveClickEvent) => void;
222
+ /**
223
+ * Fires when the user creates a dependency by connecting two tasks.
224
+ */
225
+ onDependencyCreate?: (event: GanttDependencyCreateEvent) => void;
226
+ /**
227
+ * Fires when the user presses any keyboard key.
228
+ */
229
+ onKeyDown?: (event: GanttKeyDownEvent) => void;
230
+ /**
231
+ * Fires when the user selects or deselects rows or cells.
232
+ */
233
+ onSelectionChange?: (event: GanttSelectionChangeEvent) => void;
234
+ /**
235
+ * Fires when the user clicks the checkbox in a column header.
236
+ */
237
+ onHeaderSelectionChange?: (event: GanttHeaderSelectionChangeEvent) => void;
238
+ }
@@ -0,0 +1,98 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ /**
9
+ * The props that the Gantt passes to the GanttRow component when creating it.
10
+ */
11
+ export interface GanttRowProps {
12
+ /**
13
+ * The `data` object that represents the current row.
14
+ */
15
+ dataItem: any;
16
+ /**
17
+ * The event that is fired when the row is clicked.
18
+ */
19
+ onClick?: any;
20
+ /**
21
+ * The event that is fired when the row is double clicked.
22
+ */
23
+ onDoubleClick?: any;
24
+ /**
25
+ * The event that is fired when the row context menu is triggered.
26
+ */
27
+ onContextMenu?: any;
28
+ /**
29
+ * The name of the field which will provide a Boolean representation of the selected state of the item.
30
+ */
31
+ selectedField?: string;
32
+ /**
33
+ * Sets the height of the row.
34
+ */
35
+ rowHeight?: number;
36
+ /**
37
+ * A function for overriding the default rendering of the row.
38
+ */
39
+ render?: (row: React.ReactElement<HTMLTableRowElement>, props: GanttRowProps) => React.ReactNode;
40
+ /**
41
+ * An array of indexes of each parent and current item in the data tree.
42
+ */
43
+ level: number[];
44
+ /**
45
+ * Fires when a row is dragged.
46
+ */
47
+ onDrag?: (event: {
48
+ nativeEvent: any;
49
+ dragged: number[];
50
+ draggedOver: number[] | null;
51
+ draggedItem: any;
52
+ }) => void;
53
+ /**
54
+ * Fires when a row is dragged and dropped.
55
+ */
56
+ onDrop?: (event: {
57
+ nativeEvent: any;
58
+ dragged: number[];
59
+ draggedOver: number[] | null;
60
+ draggedItem: any;
61
+ }) => void;
62
+ /**
63
+ * The expanded state of the row. Useful for applying `aria-expanded` accessibility attribute.
64
+ */
65
+ expanded: boolean;
66
+ /**
67
+ * The index of the row. Useful for applying `aria-rowindex` accessibility attribute.
68
+ */
69
+ rowIndex: number;
70
+ /**
71
+ * @hidden
72
+ */
73
+ children: React.ReactNode;
74
+ /**
75
+ * @hidden
76
+ */
77
+ levels: number[][];
78
+ /**
79
+ * @hidden
80
+ */
81
+ isAltRow?: boolean;
82
+ /**
83
+ * The index to be applied to the `aria-rowindex` attribute.
84
+ */
85
+ ariaRowIndex?: number;
86
+ /**
87
+ * The count of items on current level, applied to the `aria-setsize` attribute.
88
+ */
89
+ ariaSetSize?: number;
90
+ /**
91
+ * The index of the item on current level, applied to the `aria-posinset` attribute.
92
+ */
93
+ ariaPosInSet?: number;
94
+ /**
95
+ * Indicates if the row is selected.
96
+ */
97
+ isSelected: boolean;
98
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import { TableSelectableMode, TableSelectableSettings } from '@progress/kendo-react-data-tools';
9
+ /**
10
+ * Represents the available selection modes.
11
+ */
12
+ export type GanttSelectableMode = TableSelectableMode;
13
+ /**
14
+ * Represents the Gantt selectable settings.
15
+ */
16
+ export interface GanttSelectableSettings extends TableSelectableSettings {
17
+ /**
18
+ * The available values are:
19
+ * * `single`
20
+ * * `multiple`
21
+ *
22
+ * @default "multiple"
23
+ */
24
+ mode?: GanttSelectableMode;
25
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ /**
9
+ * The types of Gantt slot.
10
+ */
11
+ export type GanttSlotType = 'time' | 'day' | 'week' | 'month' | 'year';
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import { ColumnSortSettings, SortSettings } from '@progress/kendo-react-data-tools';
9
+ /**
10
+ * The settings for sorting the Gantt columns.
11
+ */
12
+ export type GanttColumnSortSettings = ColumnSortSettings;
13
+ /**
14
+ * The settings for sorting the Gantt data.
15
+ */
16
+ export type GanttSortSettings = SortSettings;
17
+ /**
18
+ * @hidden
19
+ */
20
+ export declare const normalize: (...settings: (GanttSortSettings | GanttColumnSortSettings)[]) => any;
@@ -0,0 +1,67 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ /**
9
+ * Defines the model fields that will be used for creating `GanttTask` instances.
10
+ */
11
+ export interface GanttTaskModelFields {
12
+ /**
13
+ * The name of the `ID` model field.
14
+ * Defaults to `"id"`.
15
+ */
16
+ id?: string;
17
+ /**
18
+ * The name of the start date model field.
19
+ * Defaults to `"start"`.
20
+ */
21
+ start?: string;
22
+ /**
23
+ * The name of the end date model field.
24
+ * Defaults to `"end"`.
25
+ */
26
+ end?: string;
27
+ /**
28
+ * The name of the title model field.
29
+ * Defaults to `"title"`.
30
+ */
31
+ title?: string;
32
+ /**
33
+ * The name of the percent complete model field.
34
+ * Defaults to `"percentComplete"`.
35
+ */
36
+ percentComplete?: string;
37
+ /**
38
+ * The name of the percent complete model field.
39
+ * Defaults to `"parentId"`.
40
+ */
41
+ parentId?: string;
42
+ /**
43
+ * The name of the is rollup model field.
44
+ * Defaults to `"isRollup"`.
45
+ */
46
+ isRollup?: string;
47
+ /**
48
+ * The name of the is expanded model field. It will provide a Boolean representation of the expanded state of the item.
49
+ * Defaults to `"isExpanded"`.
50
+ */
51
+ isExpanded?: string;
52
+ /**
53
+ * The name of the children model field. It will provide an array representation of the item subitems.
54
+ * Defaults to `"children"`.
55
+ */
56
+ children?: string;
57
+ /**
58
+ * The name of the is in edit model field. It will provide a Boolean representation of the edit state of the current item.
59
+ * Defaults to `"isInEdit"`.
60
+ */
61
+ isInEdit?: string;
62
+ /**
63
+ * The name of the selected model field. It will provide a Boolean representation of the selected state of the current item.
64
+ * Defaults to `"isSelected"`.
65
+ */
66
+ isSelected?: string;
67
+ }
@@ -0,0 +1,147 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import { LocalizationService, IntlService } from '@progress/kendo-react-intl';
9
+ import { Day } from '@progress/kendo-date-math';
10
+ import { DateRange } from './DateRange.js';
11
+ import { GanttViewTimelineHeaderCellProps } from './GanttViewTimelineHeaderCellProps.js';
12
+ /**
13
+ * Represents the arguments which are passed to the [dateRange](https://www.telerik.com/kendo-react-ui/components/gantt/api/ganttviewprops#toc-daterange) function.
14
+ */
15
+ export interface GanttViewDateRangeArgs {
16
+ /**
17
+ * The earliest start date among all tasks.
18
+ */
19
+ tasksStart: Date;
20
+ /**
21
+ * The latest end date among all tasks.
22
+ */
23
+ tasksEnd: Date;
24
+ /**
25
+ * The internationalization service for date formatting and localization.
26
+ */
27
+ intl: IntlService;
28
+ /**
29
+ * The timezone identifier for date calculations.
30
+ */
31
+ timezone?: string;
32
+ /**
33
+ * The number of days to include in the date range calculation.
34
+ */
35
+ numberOfDays?: number;
36
+ }
37
+ export type GanttViewDateRangeFunction = (args: GanttViewDateRangeArgs) => DateRange;
38
+ /**
39
+ * Represents the Object which is passed to the [`ref`](https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom) callback of the GanttView component.
40
+ */
41
+ export interface GanttViewHandle {
42
+ /**
43
+ * Method to allow the scroll to be set to a specific row index.
44
+ */
45
+ scrollIntoView: (options: {
46
+ rowIndex?: number;
47
+ }) => void;
48
+ }
49
+ /**
50
+ * Represents the required props which every [GanttView](https://www.telerik.com/kendo-react-ui/components/gantt/api/ganttview) must accept.
51
+ */
52
+ export interface GanttViewProps {
53
+ /**
54
+ * The name property is used by the Gantt to match which view is selected. Every view has a default name.
55
+ *
56
+ * @example
57
+ * ```jsx
58
+ * <GanttView name="dayView" />
59
+ * ```
60
+ */
61
+ name?: string;
62
+ /**
63
+ * The title to be displayed in the view selection list in the Toolbar.
64
+ * If a function is passed, it will receive a [LocalizationService](https://www.telerik.com/kendo-react-ui/components/intl/api/localizationservice) as an argument.
65
+ *
66
+ * @example
67
+ * ```jsx
68
+ * <GanttView title="Day View" />
69
+ * <GanttView title={(localization) => localization.toLanguageString('custom.title', 'Custom Title')} />
70
+ * ```
71
+ */
72
+ title?: string | ((localization: LocalizationService) => string);
73
+ /**
74
+ * The width of a single time slot in pixels. Default is 100px.
75
+ *
76
+ * @default 100
77
+ *
78
+ * @example
79
+ * ```jsx
80
+ * <GanttView slotWidth={120} />
81
+ * ```
82
+ */
83
+ slotWidth?: number;
84
+ /**
85
+ * Overrides the `dateRange` calculated by the `Gantt` component.
86
+ *
87
+ * If a function is passed, an object of type [GanttViewDateRangeArgs](https://www.telerik.com/kendo-react-ui/components/gantt/api/ganttviewdaterangeargs) will be passed.
88
+ *
89
+ * @example
90
+ * ```jsx
91
+ * <GanttView dateRange={{ start: new Date(2023, 0, 1), end: new Date(2023, 0, 31) }} />
92
+ * <GanttView dateRange={(args) => ({ start: args.tasksStart, end: args.tasksEnd })} />
93
+ * ```
94
+ */
95
+ dateRange?: DateRange | ((args: GanttViewDateRangeArgs) => DateRange);
96
+ /**
97
+ * Sets the start of the work day.
98
+ *
99
+ * @example
100
+ * ```jsx
101
+ * <GanttView workDayStart="08:00" />
102
+ * ```
103
+ */
104
+ workDayStart?: string;
105
+ /**
106
+ * Sets the end of the work day.
107
+ *
108
+ * @example
109
+ * ```jsx
110
+ * <GanttView workDayEnd="17:00" />
111
+ * ```
112
+ */
113
+ workDayEnd?: string;
114
+ /**
115
+ * The start of the work week.
116
+ *
117
+ * @example
118
+ * ```jsx
119
+ * <GanttView workWeekStart={Day.Monday} />
120
+ * ```
121
+ */
122
+ workWeekStart?: Day;
123
+ /**
124
+ * The end of the work week.
125
+ *
126
+ * @example
127
+ * ```jsx
128
+ * <GanttView workWeekEnd={Day.Friday} />
129
+ * ```
130
+ */
131
+ workWeekEnd?: Day;
132
+ /**
133
+ * The component to be rendered in header cells of the timeline part of the Gantt.
134
+ *
135
+ * @example
136
+ * ```jsx
137
+ * <GanttView timelineHeaderCell={CustomHeaderCell} />
138
+ * ```
139
+ */
140
+ timelineHeaderCell?: React.ComponentType<GanttViewTimelineHeaderCellProps>;
141
+ /** @hidden */
142
+ firstSlotRangeRef?: React.MutableRefObject<DateRange | null>;
143
+ }
144
+ /**
145
+ * Represents a single Gantt view.
146
+ */
147
+ export type GanttView = React.ReactElement<GanttViewProps>;
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import { DateRange } from './DateRange.js';
9
+ import { GanttSlotType } from './GanttSlotType.js';
10
+ /**
11
+ * The props of the Gantt view timeline header cell component.
12
+ */
13
+ export interface GanttViewTimelineHeaderCellProps {
14
+ /**
15
+ * The date range of the cell.
16
+ */
17
+ range: DateRange;
18
+ /**
19
+ * Indicates if the cell is in work time.
20
+ */
21
+ isWork: boolean;
22
+ /**
23
+ * The default cell text value.
24
+ */
25
+ text: string;
26
+ /**
27
+ * The type of the cell slot.
28
+ */
29
+ type: GanttSlotType;
30
+ /**
31
+ * The header cell row index.
32
+ */
33
+ rowIndex: number;
34
+ /**
35
+ * The header cell index.
36
+ */
37
+ index: number;
38
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ /** @hidden */
9
+ export interface Rectangle {
10
+ top: number;
11
+ start: number;
12
+ end: number;
13
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2026 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ import { DateRange } from './DateRange.js';
9
+ import { GanttSlotType } from './GanttSlotType.js';
10
+ /**
11
+ * @hidden
12
+ */
13
+ export interface Slot {
14
+ range: DateRange;
15
+ isWork: boolean;
16
+ span: number;
17
+ text: string;
18
+ type: GanttSlotType;
19
+ }