@bryntum/gantt-react 7.2.1 → 7.2.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 (120) hide show
  1. package/lib/BryntumAssignmentGrid.d.ts +6 -1
  2. package/lib/BryntumAssignmentGrid.js +1 -0
  3. package/lib/BryntumAssignmentGrid.js.map +1 -1
  4. package/lib/BryntumDemoHeader.d.ts +0 -1
  5. package/lib/BryntumDemoHeader.js +1 -2
  6. package/lib/BryntumDemoHeader.js.map +1 -1
  7. package/lib/BryntumGantt.d.ts +7 -1
  8. package/lib/BryntumGantt.js +2 -0
  9. package/lib/BryntumGantt.js.map +1 -1
  10. package/lib/BryntumGanttBase.d.ts +7 -1
  11. package/lib/BryntumGanttBase.js +2 -0
  12. package/lib/BryntumGanttBase.js.map +1 -1
  13. package/lib/BryntumGanttProjectModel.d.ts +6 -6
  14. package/lib/BryntumGrid.d.ts +6 -1
  15. package/lib/BryntumGrid.js +1 -0
  16. package/lib/BryntumGrid.js.map +1 -1
  17. package/lib/BryntumGridBase.d.ts +6 -1
  18. package/lib/BryntumGridBase.js +1 -0
  19. package/lib/BryntumGridBase.js.map +1 -1
  20. package/lib/BryntumResourceGrid.d.ts +18 -1
  21. package/lib/BryntumResourceGrid.js +57 -1
  22. package/lib/BryntumResourceGrid.js.map +1 -1
  23. package/lib/BryntumResourceHistogram.d.ts +6 -1
  24. package/lib/BryntumResourceHistogram.js +1 -0
  25. package/lib/BryntumResourceHistogram.js.map +1 -1
  26. package/lib/BryntumResourceUtilization.d.ts +6 -1
  27. package/lib/BryntumResourceUtilization.js +1 -0
  28. package/lib/BryntumResourceUtilization.js.map +1 -1
  29. package/lib/BryntumScheduler.d.ts +7 -1
  30. package/lib/BryntumScheduler.js +1 -0
  31. package/lib/BryntumScheduler.js.map +1 -1
  32. package/lib/BryntumSchedulerBase.d.ts +7 -1
  33. package/lib/BryntumSchedulerBase.js +1 -0
  34. package/lib/BryntumSchedulerBase.js.map +1 -1
  35. package/lib/BryntumSchedulerPro.d.ts +7 -1
  36. package/lib/BryntumSchedulerPro.js +1 -0
  37. package/lib/BryntumSchedulerPro.js.map +1 -1
  38. package/lib/BryntumSchedulerProBase.d.ts +7 -1
  39. package/lib/BryntumSchedulerProBase.js +1 -0
  40. package/lib/BryntumSchedulerProBase.js.map +1 -1
  41. package/lib/BryntumTimeline.d.ts +7 -1
  42. package/lib/BryntumTimeline.js +1 -0
  43. package/lib/BryntumTimeline.js.map +1 -1
  44. package/lib/BryntumTimelineHistogram.d.ts +6 -1
  45. package/lib/BryntumTimelineHistogram.js +1 -0
  46. package/lib/BryntumTimelineHistogram.js.map +1 -1
  47. package/lib/BryntumTreeGrid.d.ts +6 -1
  48. package/lib/BryntumTreeGrid.js +1 -0
  49. package/lib/BryntumTreeGrid.js.map +1 -1
  50. package/lib/BryntumVersionGrid.d.ts +6 -1
  51. package/lib/BryntumVersionGrid.js +1 -0
  52. package/lib/BryntumVersionGrid.js.map +1 -1
  53. package/package.json +1 -1
  54. package/src/BryntumAIFilterField.tsx +1 -1
  55. package/src/BryntumAssignmentField.tsx +3 -3
  56. package/src/BryntumAssignmentGrid.tsx +15 -6
  57. package/src/BryntumCalendarEditor.tsx +1 -1
  58. package/src/BryntumCalendarField.tsx +2 -2
  59. package/src/BryntumCalendarPicker.tsx +2 -2
  60. package/src/BryntumCheckbox.tsx +1 -1
  61. package/src/BryntumChecklistFilterCombo.tsx +2 -2
  62. package/src/BryntumChipView.tsx +1 -1
  63. package/src/BryntumColorField.tsx +1 -1
  64. package/src/BryntumCombo.tsx +2 -2
  65. package/src/BryntumConstraintTypePicker.tsx +2 -2
  66. package/src/BryntumCostAccrualField.tsx +2 -2
  67. package/src/BryntumDateField.tsx +1 -1
  68. package/src/BryntumDateRangeField.tsx +1 -1
  69. package/src/BryntumDateTimeField.tsx +1 -1
  70. package/src/BryntumDemoHeader.tsx +1 -4
  71. package/src/BryntumDependencyField.tsx +2 -2
  72. package/src/BryntumDependencyTypePicker.tsx +2 -2
  73. package/src/BryntumDisplayField.tsx +1 -1
  74. package/src/BryntumDurationField.tsx +1 -1
  75. package/src/BryntumEditor.tsx +3 -3
  76. package/src/BryntumEffortField.tsx +1 -1
  77. package/src/BryntumEndDateField.tsx +1 -1
  78. package/src/BryntumEventColorField.tsx +1 -1
  79. package/src/BryntumFileField.tsx +1 -1
  80. package/src/BryntumFilterField.tsx +1 -1
  81. package/src/BryntumGantt.tsx +25 -9
  82. package/src/BryntumGanttBase.tsx +25 -9
  83. package/src/BryntumGanttProjectModel.tsx +6 -6
  84. package/src/BryntumGrid.tsx +15 -6
  85. package/src/BryntumGridBase.tsx +15 -6
  86. package/src/BryntumGroupBar.tsx +1 -1
  87. package/src/BryntumHint.tsx +1 -1
  88. package/src/BryntumList.tsx +1 -1
  89. package/src/BryntumMenu.tsx +1 -1
  90. package/src/BryntumModelCombo.tsx +2 -2
  91. package/src/BryntumNumberField.tsx +1 -1
  92. package/src/BryntumPasswordField.tsx +1 -1
  93. package/src/BryntumProjectCombo.tsx +2 -2
  94. package/src/BryntumRadio.tsx +1 -1
  95. package/src/BryntumRateTableField.tsx +2 -2
  96. package/src/BryntumResourceCombo.tsx +2 -2
  97. package/src/BryntumResourceEditor.tsx +1 -1
  98. package/src/BryntumResourceFilter.tsx +1 -1
  99. package/src/BryntumResourceGrid.tsx +88 -7
  100. package/src/BryntumResourceHistogram.tsx +17 -8
  101. package/src/BryntumResourceTypeField.tsx +2 -2
  102. package/src/BryntumResourceUtilization.tsx +18 -9
  103. package/src/BryntumScheduler.tsx +22 -12
  104. package/src/BryntumSchedulerBase.tsx +22 -12
  105. package/src/BryntumSchedulerPro.tsx +22 -12
  106. package/src/BryntumSchedulerProBase.tsx +22 -12
  107. package/src/BryntumSchedulingDirectionPicker.tsx +2 -2
  108. package/src/BryntumSchedulingModePicker.tsx +2 -2
  109. package/src/BryntumSlideToggle.tsx +1 -1
  110. package/src/BryntumSlider.tsx +1 -1
  111. package/src/BryntumStartDateField.tsx +1 -1
  112. package/src/BryntumTextAreaField.tsx +1 -1
  113. package/src/BryntumTextAreaPickerField.tsx +1 -1
  114. package/src/BryntumTextField.tsx +1 -1
  115. package/src/BryntumTimeField.tsx +1 -1
  116. package/src/BryntumTimeline.tsx +22 -12
  117. package/src/BryntumTimelineHistogram.tsx +17 -8
  118. package/src/BryntumTreeCombo.tsx +2 -2
  119. package/src/BryntumTreeGrid.tsx +15 -6
  120. package/src/BryntumVersionGrid.tsx +15 -6
@@ -570,7 +570,7 @@ export type BryntumResourceGridProps = {
570
570
  rootElement? : ShadowRoot|HTMLElement
571
571
  /**
572
572
  * Row height in pixels. This allows the default height for rows to be controlled. Note that it may be
573
- * overriden by specifying a [rowHeight](https://bryntum.com/products/gantt/docs/api/Grid/data/GridRowModel#field-rowHeight) on a per record basis, or from
573
+ * overridden by specifying a [rowHeight](https://bryntum.com/products/gantt/docs/api/Grid/data/GridRowModel#field-rowHeight) on a per record basis, or from
574
574
  * a column [renderer](https://bryntum.com/products/gantt/docs/api/Grid/column/Column#config-renderer).
575
575
  * ...
576
576
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/SchedulerPro/view/ResourceGrid#config-rowHeight)
@@ -790,7 +790,7 @@ export type BryntumResourceGridProps = {
790
790
  */
791
791
  onBeforeCellEditStart? : ((event: { source: Grid, editorContext: CellEditorContext }) => Promise<boolean>|boolean|void)|string
792
792
  /**
793
- * Fires on the owning Grid before deleting a range of selected cell values by pressing `Backspace` or `Del`
793
+ * Fires on the owning Grid before deleting a range of selected cell values by pressing <kbd>Backspace</kbd> or <kbd>Delete</kbd>
794
794
  * buttons while [autoEdit](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellEdit#config-autoEdit) is set to `true`. Return `false` to prevent editing.
795
795
  * @param {object} event Event object
796
796
  * @param {Grid.view.Grid} event.source Owner grid
@@ -1554,7 +1554,7 @@ export type BryntumResourceGridProps = {
1554
1554
  * @param {Response} event.response Optional response, if received
1555
1555
  * @param {Error} event.error Optional error, if exception occurred
1556
1556
  */
1557
- onPdfExport? : ((event: { response?: any, error?: Error }) => void)|string
1557
+ onPdfExport? : ((event: { response?: Response, error?: Error }) => void)|string
1558
1558
  /**
1559
1559
  * Fired when a Widget's read only state is toggled
1560
1560
  * @param {object} event Event object
@@ -1765,6 +1765,14 @@ export type BryntumResourceGridProps = {
1765
1765
  * @param {Core.widget.Tool} event.tool The tool which is being clicked.
1766
1766
  */
1767
1767
  onToolClick? : ((event: { source: Tool, tool: Tool }) => void)|string
1768
+ /**
1769
+ * Fired on the owning Grid/Scheduler/Gantt after tree grouping levels change
1770
+ * @param {object} event Event object
1771
+ * @param {Grid.view.Grid} event.source The grid instance
1772
+ * @param {(string|Function)[]} event.groupers Array of field names or functions representing the current grouping levels
1773
+ * @param {(string|Function)[]} event.oldGroupers Array of field names or functions representing the previous grouping levels
1774
+ */
1775
+ onTreeGroup? : ((event: { source: Grid, groupers: (string|Function)[], oldGroupers: (string|Function)[] }) => void)|string
1768
1776
  /**
1769
1777
  * Fires when row locking is disabled.
1770
1778
  * @param {object} event Event object
@@ -1809,7 +1817,7 @@ export type BryntumResourceGridProps = {
1809
1817
  cellEditFeature? : object|boolean|string|GridCellEdit|GridCellEditConfig
1810
1818
  /**
1811
1819
  * Right click to display context menu for cells. To invoke the cell menu in a keyboard-accessible manner, use the
1812
- * `SPACE` key when the cell is focused.
1820
+ * <kbd>Space</kbd> key when the cell is focused.
1813
1821
  * ...
1814
1822
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellMenu)
1815
1823
  */
@@ -1909,8 +1917,8 @@ export type BryntumResourceGridProps = {
1909
1917
  filterBarFeature? : object|boolean|string|FilterBar|FilterBarConfig
1910
1918
  /**
1911
1919
  * Enables rendering and handling of row groups. The actual grouping is done in the store, but triggered by
1912
- * <kbd>shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
1913
- * one anywhere on grid). Use <kbd>shift</kbd> + <kbd>alt</kbd> + click, or the context menu, to remove a column
1920
+ * <kbd>Shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
1921
+ * one anywhere on grid). Use <kbd>Shift</kbd> + <kbd>Alt</kbd> + click, or the context menu, to remove a column
1914
1922
  * grouper.
1915
1923
  * ...
1916
1924
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/Group)
@@ -2076,6 +2084,73 @@ export class BryntumResourceGrid extends React.Component<BryntumResourceGridProp
2076
2084
 
2077
2085
  processWidgetContent = processWidgetContent;
2078
2086
 
2087
+ // Component is View class
2088
+ static isView = true;
2089
+
2090
+ // Hidden div to host unused portals DOM
2091
+ portalsCache? : HTMLElement;
2092
+
2093
+ // CSS class used for individual portal containers
2094
+ portalContainerClass = 'b-react-portal-container';
2095
+
2096
+ state = {
2097
+ // Holds React portals
2098
+ portals : new Map(),
2099
+
2100
+ // Needed to trigger refresh when portals change
2101
+ generation : 0
2102
+ };
2103
+
2104
+ static featureNames = [
2105
+ 'aiFeature',
2106
+ 'aiFilterFeature',
2107
+ 'cellCopyPasteFeature',
2108
+ 'cellEditFeature',
2109
+ 'cellMenuFeature',
2110
+ 'cellTooltipFeature',
2111
+ 'chartsFeature',
2112
+ 'columnAutoWidthFeature',
2113
+ 'columnDragToolbarFeature',
2114
+ 'columnPickerFeature',
2115
+ 'columnRenameFeature',
2116
+ 'columnReorderFeature',
2117
+ 'columnResizeFeature',
2118
+ 'excelExporterFeature',
2119
+ 'fileDropFeature',
2120
+ 'fillHandleFeature',
2121
+ 'filterFeature',
2122
+ 'filterBarFeature',
2123
+ 'groupFeature',
2124
+ 'groupSummaryFeature',
2125
+ 'headerMenuFeature',
2126
+ 'lockRowsFeature',
2127
+ 'mergeCellsFeature',
2128
+ 'pdfExportFeature',
2129
+ 'pinColumnsFeature',
2130
+ 'printFeature',
2131
+ 'quickFindFeature',
2132
+ 'regionResizeFeature',
2133
+ 'rowCopyPasteFeature',
2134
+ 'rowEditFeature',
2135
+ 'rowExpanderFeature',
2136
+ 'rowReorderFeature',
2137
+ 'rowResizeFeature',
2138
+ 'searchFeature',
2139
+ 'sortFeature',
2140
+ 'splitFeature',
2141
+ 'stickyCellsFeature',
2142
+ 'stripeFeature',
2143
+ 'summaryFeature',
2144
+ 'treeFeature',
2145
+ 'treeGroupFeature'
2146
+ ];
2147
+
2148
+ projectStores = false;
2149
+
2150
+ dataStores = {
2151
+ 'originalStore': 'originals'
2152
+ };
2153
+
2079
2154
  static configNames = [
2080
2155
  'adopt',
2081
2156
  'animateFilterRemovals',
@@ -2303,6 +2378,7 @@ export class BryntumResourceGrid extends React.Component<BryntumResourceGridProp
2303
2378
  'onToggleGroup',
2304
2379
  'onToggleNode',
2305
2380
  'onToolClick',
2381
+ 'onTreeGroup',
2306
2382
  'onUnlockRows',
2307
2383
  'onUnsplit',
2308
2384
  'preserveScroll',
@@ -2369,7 +2445,12 @@ export class BryntumResourceGrid extends React.Component<BryntumResourceGridProp
2369
2445
 
2370
2446
  const className = `b-react-resource-grid-container`;
2371
2447
  return (
2372
- <div className={className} ref={(element) => (this.element = element!)}></div>
2448
+ <React.Fragment>
2449
+ <div className={className} ref={(element) => (this.element = element!)}>
2450
+ {Array.from(this.state.portals).map((item) => item[1])}
2451
+ </div>
2452
+ <div ref={el => (this.portalsCache = el!)} className="b-react-portals-cache" style={{ display : 'none' }}></div>
2453
+ </React.Fragment>
2373
2454
  );
2374
2455
 
2375
2456
  }
@@ -986,7 +986,7 @@ export type BryntumResourceHistogramProps = {
986
986
  rootElement? : ShadowRoot|HTMLElement
987
987
  /**
988
988
  * Row height in pixels. This allows the default height for rows to be controlled. Note that it may be
989
- * overriden by specifying a [rowHeight](https://bryntum.com/products/gantt/docs/api/Grid/data/GridRowModel#field-rowHeight) on a per record basis, or from
989
+ * overridden by specifying a [rowHeight](https://bryntum.com/products/gantt/docs/api/Grid/data/GridRowModel#field-rowHeight) on a per record basis, or from
990
990
  * a column [renderer](https://bryntum.com/products/gantt/docs/api/Grid/column/Column#config-renderer).
991
991
  * ...
992
992
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/SchedulerPro/view/ResourceHistogram#config-rowHeight)
@@ -1347,7 +1347,7 @@ export type BryntumResourceHistogramProps = {
1347
1347
 
1348
1348
  // Events
1349
1349
  /**
1350
- * Fires before an assignment is removed. Can be triggered by user pressing [DELETE] or [BACKSPACE] or
1350
+ * Fires before an assignment is removed. Can be triggered by user pressing <kbd>Delete</kbd> or <kbd>Backspace</kbd> or
1351
1351
  * by the event editor. Can for example be used to display a custom dialog to confirm deletion, in which
1352
1352
  * case records should be "manually" removed after confirmation:
1353
1353
  * ...
@@ -1384,7 +1384,7 @@ export type BryntumResourceHistogramProps = {
1384
1384
  */
1385
1385
  onBeforeCellEditStart? : ((event: { source: Grid, editorContext: CellEditorContext }) => Promise<boolean>|boolean|void)|string
1386
1386
  /**
1387
- * Fires on the owning Grid before deleting a range of selected cell values by pressing `Backspace` or `Del`
1387
+ * Fires on the owning Grid before deleting a range of selected cell values by pressing <kbd>Backspace</kbd> or <kbd>Delete</kbd>
1388
1388
  * buttons while [autoEdit](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellEdit#config-autoEdit) is set to `true`. Return `false` to prevent editing.
1389
1389
  * @param {object} event Event object
1390
1390
  * @param {Grid.view.Grid} event.source Owner grid
@@ -1462,7 +1462,7 @@ export type BryntumResourceHistogramProps = {
1462
1462
  */
1463
1463
  onBeforeDestroy? : ((event: { source: Base }) => void)|string
1464
1464
  /**
1465
- * Fires before an event is removed. Can be triggered by user pressing [DELETE] or [BACKSPACE] or by the
1465
+ * Fires before an event is removed. Can be triggered by user pressing <kbd>Delete</kbd> or <kbd>Backspace</kbd> or by the
1466
1466
  * event editor. Return `false` to immediately veto the removal (or a `Promise` yielding `true` or `false`
1467
1467
  * for async vetoing).
1468
1468
  * ...
@@ -2259,7 +2259,7 @@ export type BryntumResourceHistogramProps = {
2259
2259
  * @param {Response} event.response Optional response, if received
2260
2260
  * @param {Error} event.error Optional error, if exception occurred
2261
2261
  */
2262
- onPdfExport? : ((event: { response?: any, error?: Error }) => void)|string
2262
+ onPdfExport? : ((event: { response?: Response, error?: Error }) => void)|string
2263
2263
  /**
2264
2264
  * Fired after the [viewPreset](https://bryntum.com/products/gantt/docs/api/Scheduler/view/mixin/TimelineViewPresets#config-viewPreset) has changed.
2265
2265
  * @param {object} event Event object
@@ -2794,6 +2794,14 @@ export type BryntumResourceHistogramProps = {
2794
2794
  * @param {Core.widget.Tool} event.tool The tool which is being clicked.
2795
2795
  */
2796
2796
  onToolClick? : ((event: { source: Tool, tool: Tool }) => void)|string
2797
+ /**
2798
+ * Fired on the owning Grid/Scheduler/Gantt after tree grouping levels change
2799
+ * @param {object} event Event object
2800
+ * @param {Grid.view.Grid} event.source The grid instance
2801
+ * @param {(string|Function)[]} event.groupers Array of field names or functions representing the current grouping levels
2802
+ * @param {(string|Function)[]} event.oldGroupers Array of field names or functions representing the previous grouping levels
2803
+ */
2804
+ onTreeGroup? : ((event: { source: Grid, groupers: (string|Function)[], oldGroupers: (string|Function)[] }) => void)|string
2797
2805
  /**
2798
2806
  * Fires when row locking is disabled.
2799
2807
  * @param {object} event Event object
@@ -2851,7 +2859,7 @@ export type BryntumResourceHistogramProps = {
2851
2859
  cellEditFeature? : object|boolean|string|SchedulerProCellEdit|SchedulerProCellEditConfig
2852
2860
  /**
2853
2861
  * Right click to display context menu for cells. To invoke the cell menu in a keyboard-accessible manner, use the
2854
- * `SPACE` key when the cell is focused.
2862
+ * <kbd>Space</kbd> key when the cell is focused.
2855
2863
  * ...
2856
2864
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellMenu)
2857
2865
  */
@@ -2959,8 +2967,8 @@ export type BryntumResourceHistogramProps = {
2959
2967
  filterBarFeature? : object|boolean|string|FilterBar|FilterBarConfig
2960
2968
  /**
2961
2969
  * Enables rendering and handling of row groups. The actual grouping is done in the store, but triggered by
2962
- * <kbd>shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
2963
- * one anywhere on grid). Use <kbd>shift</kbd> + <kbd>alt</kbd> + click, or the context menu, to remove a column
2970
+ * <kbd>Shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
2971
+ * one anywhere on grid). Use <kbd>Shift</kbd> + <kbd>Alt</kbd> + click, or the context menu, to remove a column
2964
2972
  * grouper.
2965
2973
  * ...
2966
2974
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/Group)
@@ -3614,6 +3622,7 @@ export class BryntumResourceHistogram extends React.Component<BryntumResourceHis
3614
3622
  'onToggleGroup',
3615
3623
  'onToggleNode',
3616
3624
  'onToolClick',
3625
+ 'onTreeGroup',
3617
3626
  'onUnlockRows',
3618
3627
  'onUnsplit',
3619
3628
  'onVisibleDateRangeChange',
@@ -181,7 +181,7 @@ export type BryntumResourceTypeFieldProps = {
181
181
  contentElementCls? : string|object
182
182
  /**
183
183
  * If configured as `true`, this means that when an unmatched string is typed into the
184
- * combo's input field, and `ENTER`, or the [multiValueSeparator](https://bryntum.com/products/gantt/docs/api/Core/widget/Combo#config-multiValueSeparator) is typed,
184
+ * combo's input field, and <kbd>Enter</kbd>, or the [multiValueSeparator](https://bryntum.com/products/gantt/docs/api/Core/widget/Combo#config-multiValueSeparator) is typed,
185
185
  * a new record will be created using the typed string as the [displayField](https://bryntum.com/products/gantt/docs/api/Core/widget/Combo#config-displayField).
186
186
  * ...
187
187
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/SchedulerPro/widget/ResourceTypeField#config-createOnUnmatched)
@@ -676,7 +676,7 @@ export type BryntumResourceTypeFieldProps = {
676
676
  required? : boolean
677
677
  /**
678
678
  * If this field is not [readOnly](https://bryntum.com/products/gantt/docs/api/Core/widget/Field#config-readOnly), then setting this option means that pressing
679
- * the `ESCAPE` key after editing the field will revert the field to the value it had when
679
+ * the <kbd>Escape</kbd> key after editing the field will revert the field to the value it had when
680
680
  * the user focused the field. If the field is *not* changed from when focused, the [clearable](https://bryntum.com/products/gantt/docs/api/Core/widget/Field#config-clearable)
681
681
  * behaviour will be activated.
682
682
  */
@@ -963,7 +963,7 @@ export type BryntumResourceUtilizationProps = {
963
963
  rootElement? : ShadowRoot|HTMLElement
964
964
  /**
965
965
  * Row height in pixels. This allows the default height for rows to be controlled. Note that it may be
966
- * overriden by specifying a [rowHeight](https://bryntum.com/products/gantt/docs/api/Grid/data/GridRowModel#field-rowHeight) on a per record basis, or from
966
+ * overridden by specifying a [rowHeight](https://bryntum.com/products/gantt/docs/api/Grid/data/GridRowModel#field-rowHeight) on a per record basis, or from
967
967
  * a column [renderer](https://bryntum.com/products/gantt/docs/api/Grid/column/Column#config-renderer).
968
968
  * ...
969
969
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/SchedulerPro/view/ResourceUtilization#config-rowHeight)
@@ -1320,7 +1320,7 @@ export type BryntumResourceUtilizationProps = {
1320
1320
 
1321
1321
  // Events
1322
1322
  /**
1323
- * Fires before an assignment is removed. Can be triggered by user pressing [DELETE] or [BACKSPACE] or
1323
+ * Fires before an assignment is removed. Can be triggered by user pressing <kbd>Delete</kbd> or <kbd>Backspace</kbd> or
1324
1324
  * by the event editor. Can for example be used to display a custom dialog to confirm deletion, in which
1325
1325
  * case records should be "manually" removed after confirmation:
1326
1326
  * ...
@@ -1357,7 +1357,7 @@ export type BryntumResourceUtilizationProps = {
1357
1357
  */
1358
1358
  onBeforeCellEditStart? : ((event: { source: Grid, editorContext: CellEditorContext }) => Promise<boolean>|boolean|void)|string
1359
1359
  /**
1360
- * Fires on the owning Grid before deleting a range of selected cell values by pressing `Backspace` or `Del`
1360
+ * Fires on the owning Grid before deleting a range of selected cell values by pressing <kbd>Backspace</kbd> or <kbd>Delete</kbd>
1361
1361
  * buttons while [autoEdit](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellEdit#config-autoEdit) is set to `true`. Return `false` to prevent editing.
1362
1362
  * @param {object} event Event object
1363
1363
  * @param {Grid.view.Grid} event.source Owner grid
@@ -1444,7 +1444,7 @@ export type BryntumResourceUtilizationProps = {
1444
1444
  */
1445
1445
  onBeforeDestroy? : ((event: { source: Base }) => void)|string
1446
1446
  /**
1447
- * Fires before an event is removed. Can be triggered by user pressing [DELETE] or [BACKSPACE] or by the
1447
+ * Fires before an event is removed. Can be triggered by user pressing <kbd>Delete</kbd> or <kbd>Backspace</kbd> or by the
1448
1448
  * event editor. Return `false` to immediately veto the removal (or a `Promise` yielding `true` or `false`
1449
1449
  * for async vetoing).
1450
1450
  * ...
@@ -2258,7 +2258,7 @@ export type BryntumResourceUtilizationProps = {
2258
2258
  * @param {Response} event.response Optional response, if received
2259
2259
  * @param {Error} event.error Optional error, if exception occurred
2260
2260
  */
2261
- onPdfExport? : ((event: { response?: any, error?: Error }) => void)|string
2261
+ onPdfExport? : ((event: { response?: Response, error?: Error }) => void)|string
2262
2262
  /**
2263
2263
  * Fired after the [viewPreset](https://bryntum.com/products/gantt/docs/api/Scheduler/view/mixin/TimelineViewPresets#config-viewPreset) has changed.
2264
2264
  * @param {object} event Event object
@@ -2793,6 +2793,14 @@ export type BryntumResourceUtilizationProps = {
2793
2793
  * @param {Core.widget.Tool} event.tool The tool which is being clicked.
2794
2794
  */
2795
2795
  onToolClick? : ((event: { source: Tool, tool: Tool }) => void)|string
2796
+ /**
2797
+ * Fired on the owning Grid/Scheduler/Gantt after tree grouping levels change
2798
+ * @param {object} event Event object
2799
+ * @param {Grid.view.Grid} event.source The grid instance
2800
+ * @param {(string|Function)[]} event.groupers Array of field names or functions representing the current grouping levels
2801
+ * @param {(string|Function)[]} event.oldGroupers Array of field names or functions representing the previous grouping levels
2802
+ */
2803
+ onTreeGroup? : ((event: { source: Grid, groupers: (string|Function)[], oldGroupers: (string|Function)[] }) => void)|string
2796
2804
  /**
2797
2805
  * Fires when row locking is disabled.
2798
2806
  * @param {object} event Event object
@@ -2842,7 +2850,7 @@ export type BryntumResourceUtilizationProps = {
2842
2850
  */
2843
2851
  allocationCellEditFeature? : object|boolean|string|AllocationCellEdit|AllocationCellEditConfig
2844
2852
  /**
2845
- * This is a feature of [ResourceUtilization](https://bryntum.com/products/gantt/docs/api/SchedulerPro/view/ResourceUtilization) view that allows to copy-paste
2853
+ * This is a feature of [ResourceUtilization](https://bryntum.com/products/gantt/docs/api/SchedulerPro/view/ResourceUtilization) view that allows copy-pasting
2846
2854
  * assignment time-phased effort values.
2847
2855
  * ...
2848
2856
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/SchedulerPro/feature/AllocationCopyPaste)
@@ -2863,7 +2871,7 @@ export type BryntumResourceUtilizationProps = {
2863
2871
  cellEditFeature? : object|boolean|string|SchedulerProCellEdit|SchedulerProCellEditConfig
2864
2872
  /**
2865
2873
  * Right click to display context menu for cells. To invoke the cell menu in a keyboard-accessible manner, use the
2866
- * `SPACE` key when the cell is focused.
2874
+ * <kbd>Space</kbd> key when the cell is focused.
2867
2875
  * ...
2868
2876
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellMenu)
2869
2877
  */
@@ -2971,8 +2979,8 @@ export type BryntumResourceUtilizationProps = {
2971
2979
  filterBarFeature? : object|boolean|string|FilterBar|FilterBarConfig
2972
2980
  /**
2973
2981
  * Enables rendering and handling of row groups. The actual grouping is done in the store, but triggered by
2974
- * <kbd>shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
2975
- * one anywhere on grid). Use <kbd>shift</kbd> + <kbd>alt</kbd> + click, or the context menu, to remove a column
2982
+ * <kbd>Shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
2983
+ * one anywhere on grid). Use <kbd>Shift</kbd> + <kbd>Alt</kbd> + click, or the context menu, to remove a column
2976
2984
  * grouper.
2977
2985
  * ...
2978
2986
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/Group)
@@ -3627,6 +3635,7 @@ export class BryntumResourceUtilization extends React.Component<BryntumResourceU
3627
3635
  'onToggleGroup',
3628
3636
  'onToggleNode',
3629
3637
  'onToolClick',
3638
+ 'onTreeGroup',
3630
3639
  'onUnlockRows',
3631
3640
  'onUnsplit',
3632
3641
  'onVisibleDateRangeChange',
@@ -419,7 +419,7 @@ export type BryntumSchedulerProps = {
419
419
  */
420
420
  emptyText? : string|EmptyTextDomConfig
421
421
  /**
422
- * Allow using [Delete] and [Backspace] to remove events/assignments
422
+ * Allow using <kbd>Delete</kbd> and <kbd>Backspace</kbd> to remove events/assignments
423
423
  */
424
424
  enableDeleteKey? : boolean
425
425
  /**
@@ -1650,7 +1650,7 @@ export type BryntumSchedulerProps = {
1650
1650
  */
1651
1651
  onAssignmentSelectionChange? : ((event: { source: Scheduler, action: 'select'|'deselect'|'update'|'clear', selected: SchedulerAssignmentModel[], deselected: SchedulerAssignmentModel[], selection: SchedulerAssignmentModel[] }) => void)|string
1652
1652
  /**
1653
- * Fires before an assignment is removed. Can be triggered by user pressing [DELETE] or [BACKSPACE] or
1653
+ * Fires before an assignment is removed. Can be triggered by user pressing <kbd>Delete</kbd> or <kbd>Backspace</kbd> or
1654
1654
  * by the event editor. Can for example be used to display a custom dialog to confirm deletion, in which
1655
1655
  * case records should be "manually" removed after confirmation:
1656
1656
  * ...
@@ -1708,7 +1708,7 @@ export type BryntumSchedulerProps = {
1708
1708
  */
1709
1709
  onBeforeCellEditStart? : ((event: { source: Grid, editorContext: CellEditorContext }) => Promise<boolean>|boolean|void)|string
1710
1710
  /**
1711
- * Fires on the owning Grid before deleting a range of selected cell values by pressing `Backspace` or `Del`
1711
+ * Fires on the owning Grid before deleting a range of selected cell values by pressing <kbd>Backspace</kbd> or <kbd>Delete</kbd>
1712
1712
  * buttons while [autoEdit](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellEdit#config-autoEdit) is set to `true`. Return `false` to prevent editing.
1713
1713
  * @param {object} event Event object
1714
1714
  * @param {Grid.view.Grid} event.source Owner grid
@@ -1900,7 +1900,7 @@ export type BryntumSchedulerProps = {
1900
1900
  */
1901
1901
  onBeforeEventAdd? : ((event: { source: Scheduler, eventRecord: SchedulerEventModel, resourceRecords: SchedulerResourceModel[], assignmentRecords: SchedulerAssignmentModel[] }) => Promise<boolean>|boolean|void)|string
1902
1902
  /**
1903
- * Fires before an event is removed. Can be triggered by user pressing [DELETE] or [BACKSPACE] or by the
1903
+ * Fires before an event is removed. Can be triggered by user pressing <kbd>Delete</kbd> or <kbd>Backspace</kbd> or by the
1904
1904
  * event editor. Return `false` to immediately veto the removal (or a `Promise` yielding `true` or `false`
1905
1905
  * for async vetoing).
1906
1906
  * ...
@@ -3264,19 +3264,20 @@ export type BryntumSchedulerProps = {
3264
3264
  * @param {Scheduler.model.SchedulerEventModel[]} event.originalEventRecords The event records that were copied
3265
3265
  * @param {Scheduler.model.SchedulerAssignmentModel[]} event.originalAssignmentRecords The assignment records that were copied
3266
3266
  * @param {Date} event.date The paste date
3267
- * @param {Scheduler.model.SchedulerResourceModel} event.resourceRecord The target resource record
3267
+ * @param {Scheduler.model.SchedulerResourceModel} event.resourceRecord The target resource record. When multiple resources are pasted to, this will be the top resource
3268
+ * @param {Scheduler.model.SchedulerResourceModel[]} event.resourceRecords All target resource records that the events would be pasted to
3268
3269
  * @param {boolean} event.isCut `true` if this is a cut action
3269
3270
  * @param {string} event.entityName 'event' to distinguish this event from other `pasteNotAllowed` events
3270
3271
  * @param {'overlappingEvents','resourceReadOnly'} event.reason A string id to use for displaying an error message to the user.
3271
3272
  */
3272
- onPasteNotAllowed? : ((event: { source: Scheduler, eventRecords: SchedulerEventModel[], assignmentRecords: SchedulerAssignmentModel[], originalEventRecords: SchedulerEventModel[], originalAssignmentRecords: SchedulerAssignmentModel[], date: Date, resourceRecord: SchedulerResourceModel, isCut: boolean, entityName: string, reason: 'overlappingEvents'|'resourceReadOnly' }) => void)|string
3273
+ onPasteNotAllowed? : ((event: { source: Scheduler, eventRecords: SchedulerEventModel[], assignmentRecords: SchedulerAssignmentModel[], originalEventRecords: SchedulerEventModel[], originalAssignmentRecords: SchedulerAssignmentModel[], date: Date, resourceRecord: SchedulerResourceModel, resourceRecords: SchedulerResourceModel[], isCut: boolean, entityName: string, reason: 'overlappingEvents'|'resourceReadOnly' }) => void)|string
3273
3274
  /**
3274
3275
  * Fires on the owning Grid when export has finished
3275
3276
  * @param {object} event Event object
3276
3277
  * @param {Response} event.response Optional response, if received
3277
3278
  * @param {Error} event.error Optional error, if exception occurred
3278
3279
  */
3279
- onPdfExport? : ((event: { response?: any, error?: Error }) => void)|string
3280
+ onPdfExport? : ((event: { response?: Response, error?: Error }) => void)|string
3280
3281
  /**
3281
3282
  * Fired after the [viewPreset](https://bryntum.com/products/gantt/docs/api/Scheduler/view/mixin/TimelineViewPresets#config-viewPreset) has changed.
3282
3283
  * @param {object} event Event object
@@ -4079,6 +4080,14 @@ export type BryntumSchedulerProps = {
4079
4080
  * @param {Core.widget.Tool} event.tool The tool which is being clicked.
4080
4081
  */
4081
4082
  onToolClick? : ((event: { source: Tool, tool: Tool }) => void)|string
4083
+ /**
4084
+ * Fired on the owning Grid/Scheduler/Gantt after tree grouping levels change
4085
+ * @param {object} event Event object
4086
+ * @param {Grid.view.Grid} event.source The grid instance
4087
+ * @param {(string|Function)[]} event.groupers Array of field names or functions representing the current grouping levels
4088
+ * @param {(string|Function)[]} event.oldGroupers Array of field names or functions representing the previous grouping levels
4089
+ */
4090
+ onTreeGroup? : ((event: { source: Grid, groupers: (string|Function)[], oldGroupers: (string|Function)[] }) => void)|string
4082
4091
  /**
4083
4092
  * Fires when row locking is disabled.
4084
4093
  * @param {object} event Event object
@@ -4138,7 +4147,7 @@ export type BryntumSchedulerProps = {
4138
4147
  cellEditFeature? : object|boolean|string|GridCellEdit|GridCellEditConfig
4139
4148
  /**
4140
4149
  * Right click to display context menu for cells. To invoke the cell menu in a keyboard-accessible manner, use the
4141
- * `SPACE` key when the cell is focused.
4150
+ * <kbd>Space</kbd> key when the cell is focused.
4142
4151
  * ...
4143
4152
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellMenu)
4144
4153
  */
@@ -4230,8 +4239,8 @@ export type BryntumSchedulerProps = {
4230
4239
  */
4231
4240
  dependencyMenuFeature? : object|boolean|string|DependencyMenu|DependencyMenuConfig
4232
4241
  /**
4233
- * Allow using <kbd>Ctrl</kbd>/<kbd>CMD</kbd> + <kbd>C</kbd>/<kbd>X</kbd> and <kbd>Ctrl</kbd>/<kbd>CMD</kbd> +
4234
- * <kbd>V</kbd> to copy/cut and paste events.
4242
+ * Allow using <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>C</kbd>, <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>X</kbd> and
4243
+ * <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>V</kbd> to copy/cut and paste events.
4235
4244
  * ...
4236
4245
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Scheduler/feature/EventCopyPaste)
4237
4246
  */
@@ -4333,8 +4342,8 @@ export type BryntumSchedulerProps = {
4333
4342
  filterBarFeature? : object|boolean|string|FilterBar|FilterBarConfig
4334
4343
  /**
4335
4344
  * Enables rendering and handling of row groups. The actual grouping is done in the store, but triggered by
4336
- * <kbd>shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
4337
- * one anywhere on grid). Use <kbd>shift</kbd> + <kbd>alt</kbd> + click, or the context menu, to remove a column
4345
+ * <kbd>Shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
4346
+ * one anywhere on grid). Use <kbd>Shift</kbd> + <kbd>Alt</kbd> + click, or the context menu, to remove a column
4338
4347
  * grouper.
4339
4348
  * ...
4340
4349
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/Group)
@@ -5185,6 +5194,7 @@ export class BryntumScheduler extends React.Component<BryntumSchedulerProps> {
5185
5194
  'onToggleGroup',
5186
5195
  'onToggleNode',
5187
5196
  'onToolClick',
5197
+ 'onTreeGroup',
5188
5198
  'onUnlockRows',
5189
5199
  'onUnsplit',
5190
5200
  'onVisibleDateRangeChange',
@@ -419,7 +419,7 @@ export type BryntumSchedulerBaseProps = {
419
419
  */
420
420
  emptyText? : string|EmptyTextDomConfig
421
421
  /**
422
- * Allow using [Delete] and [Backspace] to remove events/assignments
422
+ * Allow using <kbd>Delete</kbd> and <kbd>Backspace</kbd> to remove events/assignments
423
423
  */
424
424
  enableDeleteKey? : boolean
425
425
  /**
@@ -1649,7 +1649,7 @@ export type BryntumSchedulerBaseProps = {
1649
1649
  */
1650
1650
  onAssignmentSelectionChange? : ((event: { source: Scheduler, action: 'select'|'deselect'|'update'|'clear', selected: SchedulerAssignmentModel[], deselected: SchedulerAssignmentModel[], selection: SchedulerAssignmentModel[] }) => void)|string
1651
1651
  /**
1652
- * Fires before an assignment is removed. Can be triggered by user pressing [DELETE] or [BACKSPACE] or
1652
+ * Fires before an assignment is removed. Can be triggered by user pressing <kbd>Delete</kbd> or <kbd>Backspace</kbd> or
1653
1653
  * by the event editor. Can for example be used to display a custom dialog to confirm deletion, in which
1654
1654
  * case records should be "manually" removed after confirmation:
1655
1655
  * ...
@@ -1707,7 +1707,7 @@ export type BryntumSchedulerBaseProps = {
1707
1707
  */
1708
1708
  onBeforeCellEditStart? : ((event: { source: Grid, editorContext: CellEditorContext }) => Promise<boolean>|boolean|void)|string
1709
1709
  /**
1710
- * Fires on the owning Grid before deleting a range of selected cell values by pressing `Backspace` or `Del`
1710
+ * Fires on the owning Grid before deleting a range of selected cell values by pressing <kbd>Backspace</kbd> or <kbd>Delete</kbd>
1711
1711
  * buttons while [autoEdit](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellEdit#config-autoEdit) is set to `true`. Return `false` to prevent editing.
1712
1712
  * @param {object} event Event object
1713
1713
  * @param {Grid.view.Grid} event.source Owner grid
@@ -1899,7 +1899,7 @@ export type BryntumSchedulerBaseProps = {
1899
1899
  */
1900
1900
  onBeforeEventAdd? : ((event: { source: Scheduler, eventRecord: SchedulerEventModel, resourceRecords: SchedulerResourceModel[], assignmentRecords: SchedulerAssignmentModel[] }) => Promise<boolean>|boolean|void)|string
1901
1901
  /**
1902
- * Fires before an event is removed. Can be triggered by user pressing [DELETE] or [BACKSPACE] or by the
1902
+ * Fires before an event is removed. Can be triggered by user pressing <kbd>Delete</kbd> or <kbd>Backspace</kbd> or by the
1903
1903
  * event editor. Return `false` to immediately veto the removal (or a `Promise` yielding `true` or `false`
1904
1904
  * for async vetoing).
1905
1905
  * ...
@@ -3263,19 +3263,20 @@ export type BryntumSchedulerBaseProps = {
3263
3263
  * @param {Scheduler.model.SchedulerEventModel[]} event.originalEventRecords The event records that were copied
3264
3264
  * @param {Scheduler.model.SchedulerAssignmentModel[]} event.originalAssignmentRecords The assignment records that were copied
3265
3265
  * @param {Date} event.date The paste date
3266
- * @param {Scheduler.model.SchedulerResourceModel} event.resourceRecord The target resource record
3266
+ * @param {Scheduler.model.SchedulerResourceModel} event.resourceRecord The target resource record. When multiple resources are pasted to, this will be the top resource
3267
+ * @param {Scheduler.model.SchedulerResourceModel[]} event.resourceRecords All target resource records that the events would be pasted to
3267
3268
  * @param {boolean} event.isCut `true` if this is a cut action
3268
3269
  * @param {string} event.entityName 'event' to distinguish this event from other `pasteNotAllowed` events
3269
3270
  * @param {'overlappingEvents','resourceReadOnly'} event.reason A string id to use for displaying an error message to the user.
3270
3271
  */
3271
- onPasteNotAllowed? : ((event: { source: Scheduler, eventRecords: SchedulerEventModel[], assignmentRecords: SchedulerAssignmentModel[], originalEventRecords: SchedulerEventModel[], originalAssignmentRecords: SchedulerAssignmentModel[], date: Date, resourceRecord: SchedulerResourceModel, isCut: boolean, entityName: string, reason: 'overlappingEvents'|'resourceReadOnly' }) => void)|string
3272
+ onPasteNotAllowed? : ((event: { source: Scheduler, eventRecords: SchedulerEventModel[], assignmentRecords: SchedulerAssignmentModel[], originalEventRecords: SchedulerEventModel[], originalAssignmentRecords: SchedulerAssignmentModel[], date: Date, resourceRecord: SchedulerResourceModel, resourceRecords: SchedulerResourceModel[], isCut: boolean, entityName: string, reason: 'overlappingEvents'|'resourceReadOnly' }) => void)|string
3272
3273
  /**
3273
3274
  * Fires on the owning Grid when export has finished
3274
3275
  * @param {object} event Event object
3275
3276
  * @param {Response} event.response Optional response, if received
3276
3277
  * @param {Error} event.error Optional error, if exception occurred
3277
3278
  */
3278
- onPdfExport? : ((event: { response?: any, error?: Error }) => void)|string
3279
+ onPdfExport? : ((event: { response?: Response, error?: Error }) => void)|string
3279
3280
  /**
3280
3281
  * Fired after the [viewPreset](https://bryntum.com/products/gantt/docs/api/Scheduler/view/mixin/TimelineViewPresets#config-viewPreset) has changed.
3281
3282
  * @param {object} event Event object
@@ -4078,6 +4079,14 @@ export type BryntumSchedulerBaseProps = {
4078
4079
  * @param {Core.widget.Tool} event.tool The tool which is being clicked.
4079
4080
  */
4080
4081
  onToolClick? : ((event: { source: Tool, tool: Tool }) => void)|string
4082
+ /**
4083
+ * Fired on the owning Grid/Scheduler/Gantt after tree grouping levels change
4084
+ * @param {object} event Event object
4085
+ * @param {Grid.view.Grid} event.source The grid instance
4086
+ * @param {(string|Function)[]} event.groupers Array of field names or functions representing the current grouping levels
4087
+ * @param {(string|Function)[]} event.oldGroupers Array of field names or functions representing the previous grouping levels
4088
+ */
4089
+ onTreeGroup? : ((event: { source: Grid, groupers: (string|Function)[], oldGroupers: (string|Function)[] }) => void)|string
4081
4090
  /**
4082
4091
  * Fires when row locking is disabled.
4083
4092
  * @param {object} event Event object
@@ -4137,7 +4146,7 @@ export type BryntumSchedulerBaseProps = {
4137
4146
  cellEditFeature? : object|boolean|string|GridCellEdit|GridCellEditConfig
4138
4147
  /**
4139
4148
  * Right click to display context menu for cells. To invoke the cell menu in a keyboard-accessible manner, use the
4140
- * `SPACE` key when the cell is focused.
4149
+ * <kbd>Space</kbd> key when the cell is focused.
4141
4150
  * ...
4142
4151
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/CellMenu)
4143
4152
  */
@@ -4229,8 +4238,8 @@ export type BryntumSchedulerBaseProps = {
4229
4238
  */
4230
4239
  dependencyMenuFeature? : object|boolean|string|DependencyMenu|DependencyMenuConfig
4231
4240
  /**
4232
- * Allow using <kbd>Ctrl</kbd>/<kbd>CMD</kbd> + <kbd>C</kbd>/<kbd>X</kbd> and <kbd>Ctrl</kbd>/<kbd>CMD</kbd> +
4233
- * <kbd>V</kbd> to copy/cut and paste events.
4241
+ * Allow using <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>C</kbd>, <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>X</kbd> and
4242
+ * <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>V</kbd> to copy/cut and paste events.
4234
4243
  * ...
4235
4244
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Scheduler/feature/EventCopyPaste)
4236
4245
  */
@@ -4332,8 +4341,8 @@ export type BryntumSchedulerBaseProps = {
4332
4341
  filterBarFeature? : object|boolean|string|FilterBar|FilterBarConfig
4333
4342
  /**
4334
4343
  * Enables rendering and handling of row groups. The actual grouping is done in the store, but triggered by
4335
- * <kbd>shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
4336
- * one anywhere on grid). Use <kbd>shift</kbd> + <kbd>alt</kbd> + click, or the context menu, to remove a column
4344
+ * <kbd>Shift</kbd> + clicking headers, or by using the context menu, or by using two finger tap (one on header,
4345
+ * one anywhere on grid). Use <kbd>Shift</kbd> + <kbd>Alt</kbd> + click, or the context menu, to remove a column
4337
4346
  * grouper.
4338
4347
  * ...
4339
4348
  * [View online docs...](https://bryntum.com/products/gantt/docs/api/Grid/feature/Group)
@@ -5183,6 +5192,7 @@ export class BryntumSchedulerBase extends React.Component<BryntumSchedulerBasePr
5183
5192
  'onToggleGroup',
5184
5193
  'onToggleNode',
5185
5194
  'onToolClick',
5195
+ 'onTreeGroup',
5186
5196
  'onUnlockRows',
5187
5197
  'onUnsplit',
5188
5198
  'onVisibleDateRangeChange',