@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.
- package/Gantt.d.ts +42 -0
- package/GanttNoRecords.d.ts +19 -0
- package/cells/FilterCells/GanttBooleanFilter.d.ts +17 -0
- package/cells/FilterCells/GanttDateFilter.d.ts +17 -0
- package/cells/FilterCells/GanttNumericFilter.d.ts +17 -0
- package/cells/FilterCells/GanttTextFilter.d.ts +17 -0
- package/cells/FilterCells/utils.d.ts +45 -0
- package/cells/FilterCells/utils.mjs +11 -11
- package/components/BaseView.d.ts +27 -0
- package/components/GanttDependency.d.ts +17 -0
- package/components/GanttTask.d.ts +19 -0
- package/components/GanttTreelist.d.ts +146 -0
- package/components/GanttTreelist.mjs +8 -8
- package/components/toolbar/AddButton.d.ts +19 -0
- package/components/toolbar/AddButton.mjs +2 -2
- package/components/toolbar/Toolbar.d.ts +28 -0
- package/components/toolbar/view-selector/ViewSelector.d.ts +31 -0
- package/components/toolbar/view-selector/ViewSelectorItem.d.ts +19 -0
- package/components/toolbar/view-selector/ViewSelectorList.d.ts +10 -0
- package/constants/index.d.ts +60 -0
- package/constants/index.mjs +2 -2
- package/context/GanttContext.d.ts +128 -0
- package/context/GanttViewContext.d.ts +47 -0
- package/dist/cdn/js/kendo-react-gantt.js +1 -1
- package/editors/FormAssingmentsEditor.d.ts +13 -0
- package/editors/FormDateTimePicker.d.ts +13 -0
- package/editors/FormDropDownList.d.ts +13 -0
- package/editors/FormInput.d.ts +13 -0
- package/editors/FormNumericTextBox.d.ts +13 -0
- package/editors/GanttEditor.d.ts +46 -0
- package/editors/GanttEditor.mjs +5 -5
- package/editors/GanttEditorPredecessors.d.ts +53 -0
- package/editors/GanttEditorSuccessors.d.ts +53 -0
- package/editors/GanttForm.d.ts +73 -0
- package/editors/GanttForm.mjs +2 -2
- package/editors/GanttRemoveDialog.d.ts +51 -0
- package/editors/GanttRemoveDialog.mjs +2 -2
- package/hooks/useControlledState.d.ts +11 -0
- package/hooks/useDictionaryStore.d.ts +25 -0
- package/hooks/useGanttTask.d.ts +11 -0
- package/index.d.mts +28 -1607
- package/index.d.ts +28 -1607
- package/interfaces/AddDirection.d.ts +13 -0
- package/interfaces/DataAction.d.ts +32 -0
- package/interfaces/DataItem.d.ts +13 -0
- package/interfaces/DateRange.d.ts +15 -0
- package/interfaces/DependencyModelFields.d.ts +32 -0
- package/interfaces/DependencyType.d.ts +22 -0
- package/interfaces/DragEvent.d.ts +21 -0
- package/interfaces/GanttBaseProps.d.ts +81 -0
- package/interfaces/GanttCellProps.d.ts +48 -0
- package/interfaces/GanttColumnProps.d.ts +43 -0
- package/interfaces/GanttDependency.d.ts +33 -0
- package/interfaces/GanttDependencyModelFields.d.ts +32 -0
- package/interfaces/GanttFilterCellProps.d.ts +13 -0
- package/interfaces/GanttFilterOperator.d.ts +13 -0
- package/interfaces/GanttHeaderCellProps.d.ts +13 -0
- package/interfaces/GanttNoRecordsProps.d.ts +16 -0
- package/interfaces/GanttProps.d.ts +238 -0
- package/interfaces/GanttRowProps.d.ts +98 -0
- package/interfaces/GanttSelectableSettings.d.ts +25 -0
- package/interfaces/GanttSlotType.d.ts +11 -0
- package/interfaces/GanttSortSettings.d.ts +20 -0
- package/interfaces/GanttTaskModelFields.d.ts +67 -0
- package/interfaces/GanttView.d.ts +147 -0
- package/interfaces/GanttViewTimelineHeaderCellProps.d.ts +38 -0
- package/interfaces/Rectangle.d.ts +13 -0
- package/interfaces/Slot.d.ts +19 -0
- package/interfaces/TaskModelFields.d.ts +56 -0
- package/interfaces/events.d.ts +304 -0
- package/messages/index.d.ts +197 -0
- package/package-metadata.d.ts +12 -0
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +10 -16
- package/package.json +14 -14
- package/rows/GanttRow.d.ts +11 -0
- package/utils/data-operations.d.ts +50 -0
- package/utils/data-operations.mjs +1 -1
- package/utils/index.d.ts +185 -0
- package/utils/index.mjs +4 -4
- package/views/GanttDayView.d.ts +24 -0
- package/views/GanttDayView.mjs +5 -5
- package/views/GanttMonthView.d.ts +20 -0
- package/views/GanttWeekView.d.ts +20 -0
- package/views/GanttWeekView.mjs +4 -4
- 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
|
+
}
|