@openui5/sap.ui.table 1.122.0 → 1.123.0

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 (46) hide show
  1. package/package.json +3 -3
  2. package/src/sap/ui/table/.library +1 -1
  3. package/src/sap/ui/table/AnalyticalColumn.js +1 -1
  4. package/src/sap/ui/table/AnalyticalColumnMenu.js +2 -2
  5. package/src/sap/ui/table/AnalyticalTable.js +9 -9
  6. package/src/sap/ui/table/Column.js +4 -10
  7. package/src/sap/ui/table/ColumnMenu.js +1 -3
  8. package/src/sap/ui/table/CreationRow.js +1 -1
  9. package/src/sap/ui/table/Row.js +1 -1
  10. package/src/sap/ui/table/RowAction.js +1 -1
  11. package/src/sap/ui/table/RowActionItem.js +1 -1
  12. package/src/sap/ui/table/RowSettings.js +1 -1
  13. package/src/sap/ui/table/Table.js +20 -20
  14. package/src/sap/ui/table/TablePersoController.js +1 -1
  15. package/src/sap/ui/table/TreeTable.js +7 -7
  16. package/src/sap/ui/table/extensions/Accessibility.js +1 -1
  17. package/src/sap/ui/table/extensions/AccessibilityRender.js +1 -1
  18. package/src/sap/ui/table/extensions/DragAndDrop.js +1 -1
  19. package/src/sap/ui/table/extensions/ExtensionBase.js +1 -1
  20. package/src/sap/ui/table/extensions/Keyboard.js +1 -1
  21. package/src/sap/ui/table/extensions/KeyboardDelegate.js +1 -1
  22. package/src/sap/ui/table/extensions/Pointer.js +1 -1
  23. package/src/sap/ui/table/extensions/Scrolling.js +1 -1
  24. package/src/sap/ui/table/extensions/ScrollingIOS.js +1 -1
  25. package/src/sap/ui/table/extensions/Synchronization.js +1 -1
  26. package/src/sap/ui/table/library.js +24 -24
  27. package/src/sap/ui/table/menus/ColumnHeaderMenuAdapter.js +1 -1
  28. package/src/sap/ui/table/menus/MobileColumnHeaderMenuAdapter.js +1 -1
  29. package/src/sap/ui/table/plugins/BindingSelection.js +1 -1
  30. package/src/sap/ui/table/plugins/MultiSelectionPlugin.js +6 -12
  31. package/src/sap/ui/table/plugins/ODataV4Selection.js +6 -12
  32. package/src/sap/ui/table/plugins/PluginBase.js +1 -1
  33. package/src/sap/ui/table/plugins/SelectionModelSelection.js +1 -1
  34. package/src/sap/ui/table/plugins/SelectionPlugin.js +4 -3
  35. package/src/sap/ui/table/plugins/V4Aggregation.js +1 -1
  36. package/src/sap/ui/table/rowmodes/Auto.js +1 -1
  37. package/src/sap/ui/table/rowmodes/Fixed.js +1 -1
  38. package/src/sap/ui/table/rowmodes/Interactive.js +6 -6
  39. package/src/sap/ui/table/rowmodes/RowMode.js +1 -1
  40. package/src/sap/ui/table/rowmodes/Variable.js +1 -1
  41. package/src/sap/ui/table/utils/TableUtils.js +1 -1
  42. package/src/sap/ui/table/utils/_BindingUtils.js +1 -1
  43. package/src/sap/ui/table/utils/_ColumnUtils.js +1 -1
  44. package/src/sap/ui/table/utils/_GroupingUtils.js +1 -1
  45. package/src/sap/ui/table/utils/_HookUtils.js +8 -62
  46. package/src/sap/ui/table/utils/_MenuUtils.js +3 -25
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.table",
3
- "version": "1.122.0",
3
+ "version": "1.123.0",
4
4
  "description": "OpenUI5 UI Library sap.ui.table",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,7 +14,7 @@
14
14
  "url": "https://github.com/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.ui.core": "1.122.0",
18
- "@openui5/sap.ui.unified": "1.122.0"
17
+ "@openui5/sap.ui.core": "1.123.0",
18
+ "@openui5/sap.ui.unified": "1.123.0"
19
19
  }
20
20
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2024 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.122.0</version>
9
+ <version>1.123.0</version>
10
10
 
11
11
  <documentation>Table-like controls, mainly for desktop scenarios.</documentation>
12
12
 
@@ -47,7 +47,7 @@ sap.ui.define([
47
47
  * @extends sap.ui.table.Column
48
48
  *
49
49
  * @author SAP SE
50
- * @version 1.122.0
50
+ * @version 1.123.0
51
51
  *
52
52
  * @constructor
53
53
  * @public
@@ -20,14 +20,14 @@ sap.ui.define(['./ColumnMenu', "sap/ui/unified/MenuRenderer", './utils/TableUtil
20
20
  * @extends sap.ui.table.ColumnMenu
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.122.0
23
+ * @version 1.123.0
24
24
  *
25
25
  * @constructor
26
26
  * @public
27
27
  * @experimental Since version 1.21.
28
28
  * @alias sap.ui.table.AnalyticalColumnMenu
29
29
  *
30
- * @deprecated As of version 1.117
30
+ * @deprecated As of version 1.117, replaced by the <code>headerMenu</code> association of <code>sap.ui.table.Column</code>.
31
31
  */
32
32
  var AnalyticalColumnMenu = ColumnMenu.extend("sap.ui.table.AnalyticalColumnMenu", /** @lends sap.ui.table.AnalyticalColumnMenu.prototype */ {
33
33
  metadata: {
@@ -55,7 +55,7 @@ sap.ui.define([
55
55
  * @see https://github.com/SAP/odata-vocabularies/blob/main/docs/v2-annotations.md
56
56
  *
57
57
  * @extends sap.ui.table.Table
58
- * @version 1.122.0
58
+ * @version 1.123.0
59
59
  *
60
60
  * @constructor
61
61
  * @public
@@ -132,7 +132,7 @@ sap.ui.define([
132
132
  /**
133
133
  * Functions which is used to sort the column visibility menu entries e.g.: function(ColumnA, ColumnB) { return 0 = equals, <0 lower, >0
134
134
  * greater }; Other values than functions will be ignored.
135
- * @deprecated As of Version 1.117
135
+ * @deprecated As of Version 1.117, see the <code>showColumnVisibilityMenu</code> property of <code>sap.ui.table.Table</code> for details.
136
136
  */
137
137
  columnVisibilityMenuSorter: {type: "any", group: "Appearance", defaultValue: null},
138
138
 
@@ -226,7 +226,7 @@ sap.ui.define([
226
226
 
227
227
  TableUtils.Grouping.setToDefaultGroupMode(this);
228
228
  TableUtils.Hook.register(this, TableUtils.Hook.Keys.Row.UpdateState, updateRowState, this);
229
- TableUtils.Hook.register(this, TableUtils.Hook.Keys.Table.OpenMenu, onOpenTableContextMenu, this);
229
+ TableUtils.Hook.register(this, TableUtils.Hook.Keys.Table.OpenContextMenu, onOpenTableContextMenu, this);
230
230
  TableUtils.Hook.register(this, TableUtils.Hook.Keys.Row.Expand, expandRow, this);
231
231
  TableUtils.Hook.register(this, TableUtils.Hook.Keys.Row.Collapse, collapseRow, this);
232
232
 
@@ -264,9 +264,9 @@ sap.ui.define([
264
264
  };
265
265
 
266
266
  /**
267
- * The property <code>enableGrouping</code> is not supported by the <code>AnalyticalTable</code> control.
267
+ * The <code>enableGrouping</code> property is not supported by the <code>AnalyticalTable</code> control.
268
268
  *
269
- * @deprecated Since version 1.28.
269
+ * @deprecated As of version 1.28, the <code>enableGrouping</code> property is not supported by the <code>AnalyticalTable</code> control.
270
270
  * @public
271
271
  * @returns {boolean}
272
272
  * @name sap.ui.table.AnalyticalTable#getEnableGrouping
@@ -274,9 +274,9 @@ sap.ui.define([
274
274
  */
275
275
 
276
276
  /**
277
- * The property <code>enableGrouping</code> is not supported by the <code>AnalyticalTable</code> control.
277
+ * The <code>enableGrouping</code> property is not supported by the <code>AnalyticalTable</code> control.
278
278
  *
279
- * @deprecated Since version 1.28.
279
+ * @deprecated As of version 1.28, the <code>enableGrouping</code> property is not supported by the <code>AnalyticalTable</code> control.
280
280
  * @param {boolean} bValue
281
281
  * @returns {this} Reference to <code>this</code> in order to allow method chaining
282
282
  * @public
@@ -289,7 +289,7 @@ sap.ui.define([
289
289
  /**
290
290
  * The <code>groupBy</code> association is not supported by the <code>AnalyticalTable</code> control.
291
291
  *
292
- * @deprecated Since version 1.28.
292
+ * @deprecated As of version 1.28, the <code>groupBy</code> association is not supported by the <code>AnalyticalTable</code> control.
293
293
  * @returns {sap.ui.core.ID}
294
294
  * @public
295
295
  * @name sap.ui.table.AnalyticalTable#getGroupBy
@@ -299,7 +299,7 @@ sap.ui.define([
299
299
  /**
300
300
  * The <code>groupBy</code> association is not supported by the <code>AnalyticalTable</code> control.
301
301
  *
302
- * @deprecated Since version 1.28.
302
+ * @deprecated As of version 1.28, the <code>groupBy</code> association is not supported by the <code>AnalyticalTable</code> control.
303
303
  * @param {sap.ui.core.ID|sap.ui.table.Column} oGroupBy
304
304
  * @returns {this} Reference to <code>this</code> in order to allow method chaining
305
305
  * @public
@@ -63,7 +63,7 @@ sap.ui.define([
63
63
  * @class
64
64
  * The column allows you to define column specific properties that will be applied when rendering the table.
65
65
  * @extends sap.ui.core.Element
66
- * @version 1.122.0
66
+ * @version 1.123.0
67
67
  *
68
68
  * @constructor
69
69
  * @public
@@ -218,7 +218,7 @@ sap.ui.define([
218
218
 
219
219
  /**
220
220
  * Indicates if the column is grouped.
221
- * @deprecated As of version 1.118.
221
+ * @deprecated As of version 1.118, see the <code>enableGrouping</code> property of <code>sap.ui.table.Table</code> for details.
222
222
  */
223
223
  grouped: {type: "boolean", group: "Appearance", defaultValue: false, deprecated: true},
224
224
 
@@ -344,7 +344,7 @@ sap.ui.define([
344
344
  * Fires before the column menu is opened.
345
345
  * @since 1.33.0
346
346
  *
347
- * @deprecated As of version 1.117.
347
+ * @deprecated As of version 1.117, see the <code>headerMenu</code> aggregation for details.
348
348
  */
349
349
  columnMenuOpen: {
350
350
  allowPreventDefault: true,
@@ -585,13 +585,7 @@ sap.ui.define([
585
585
  || this.isFilterableByMenu()
586
586
  || this.isGroupableByMenu();
587
587
 
588
- if (bHasOwnItems) {
589
- return true;
590
- }
591
-
592
- return TableUtils.Hook.call(oTable, TableUtils.Hook.Keys.Column.MenuItemNotification, this).some(function(bValue) {
593
- return bValue;
594
- });
588
+ return bHasOwnItems;
595
589
  };
596
590
 
597
591
  /**
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * @class
41
41
  * The column menu provides all common actions that can be performed on a column.
42
42
  * @extends sap.ui.unified.Menu
43
- * @version 1.122.0
43
+ * @version 1.123.0
44
44
  *
45
45
  * @constructor
46
46
  * @public
@@ -157,8 +157,6 @@ sap.ui.define([
157
157
  this._addMenuItems();
158
158
  }
159
159
 
160
- TableUtils.Hook.call(this._getTable(), TableUtils.Hook.Keys.Table.OpenMenu, TableUtils.getCellInfo(arguments[4]), this);
161
-
162
160
  if (this.getItems().length > 0) {
163
161
  this._lastFocusedDomRef = arguments[4];
164
162
  Menu.prototype.open.apply(this, arguments);
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * <code>sap.ui.commons</code> library.
33
33
  * @extends sap.ui.core.Control
34
34
  * @author SAP SE
35
- * @version 1.122.0
35
+ * @version 1.123.0
36
36
  *
37
37
  * @constructor
38
38
  * @private
@@ -135,7 +135,7 @@ sap.ui.define([
135
135
  * @class
136
136
  * The row.
137
137
  * @extends sap.ui.core.Element
138
- * @version 1.122.0
138
+ * @version 1.123.0
139
139
  *
140
140
  * @constructor
141
141
  * @public
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * If more action items are available as the available space allows to display an overflow mechanism is provided.
36
36
  * This control must only be used in the context of the <code>sap.ui.table.Table</code> control to define row actions.
37
37
  * @extends sap.ui.core.Control
38
- * @version 1.122.0
38
+ * @version 1.123.0
39
39
  *
40
40
  * @constructor
41
41
  * @public
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.ui.core.Element
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.122.0
27
+ * @version 1.123.0
28
28
  * @since 1.45
29
29
  *
30
30
  * @constructor
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * The <code>RowSettings</code> control allows you to configure a row.
25
25
  * You can only use this control in the context of the <code>sap.ui.table.Table</code> control to define row settings.
26
26
  * @extends sap.ui.core.Element
27
- * @version 1.122.0
27
+ * @version 1.123.0
28
28
  *
29
29
  * @constructor
30
30
  * @public
@@ -100,7 +100,7 @@ sap.ui.define([
100
100
  * the data model and binding being used.
101
101
  * </p>
102
102
  * @extends sap.ui.core.Control
103
- * @version 1.122.0
103
+ * @version 1.123.0
104
104
  *
105
105
  * @constructor
106
106
  * @public
@@ -204,14 +204,14 @@ sap.ui.define([
204
204
  /**
205
205
  * Flag whether the controls of the Table are editable or not (currently this only controls the background color in certain themes!)
206
206
  *
207
- * @deprecated As of version 1.115
207
+ * @deprecated As of version 1.115, the concept has been discarded.
208
208
  */
209
209
  editable: {type: "boolean", group: "Behavior", defaultValue: true, deprecated: true},
210
210
 
211
211
  /**
212
212
  * This property has been deprecated and must not be used anymore, since <code>Scrollbar</code> is the only supported option.
213
213
  *
214
- * @deprecated As of version 1.38
214
+ * @deprecated As of version 1.38, the concept has been discarded.
215
215
  */
216
216
  navigationMode: {type: "sap.ui.table.NavigationMode", group: "Behavior", defaultValue: "Scrollbar", deprecated: true},
217
217
 
@@ -236,18 +236,18 @@ sap.ui.define([
236
236
  *
237
237
  * The following restrictions apply:
238
238
  * <ul>
239
- * <li>Only client models are supported (e.g. {@link sap.ui.model.json.JSONModel}). Grouping does not work with OData models.</li>
240
- * <li>The table can only be grouped by <b>one</b> column at a time. Grouping by another column will remove the current grouping.</li>
241
- * <li>For the grouping to work correctly, {@link sap.ui.table.Column#getSortProperty sortProperty} must be set for the grouped
242
- * column.</li>
243
- * <li>If grouping has been done, sorting and filtering is not possible. Any existing sorting and filtering rules do no longer apply.
244
- * The UI is not updated accordingly (e.g. menu items, sort and filter icons).</li>
245
- * <li>The column, by which the table is grouped, is not visible. It will become visible again only if the table is grouped by another
246
- * column or grouping is disabled.</li>
239
+ * <li>Only client models are supported (e.g. {@link sap.ui.model.json.JSONModel}). Grouping does not work with OData models.</li>
240
+ * <li>The table can only be grouped by <b>one</b> column at a time. Grouping by another column will remove the current grouping.</li>
241
+ * <li>For the grouping to work correctly, {@link sap.ui.table.Column#getSortProperty sortProperty} must be set for the grouped
242
+ * column.</li>
243
+ * <li>If grouping has been done, sorting and filtering is not possible. Any existing sorting and filtering rules do no longer apply.
244
+ * The UI is not updated accordingly (e.g. menu items, sort and filter icons).</li>
245
+ * <li>The column, by which the table is grouped, is not visible. It will become visible again only if the table is grouped by another
246
+ * column or grouping is disabled.</li>
247
247
  * </ul>
248
248
  *
249
249
  * @see sap.ui.table.Table#setGroupBy
250
- * @deprecated As of version 1.110, this feature has a limited functionality and should not be used anymore.
250
+ * @deprecated As of version 1.110, the concept has been discarded.
251
251
  */
252
252
  enableGrouping: {type: "boolean", group: "Behavior", defaultValue: false, deprecated: true},
253
253
 
@@ -301,9 +301,9 @@ sap.ui.define([
301
301
  *
302
302
  * <b>Note</b>
303
303
  * <ul>
304
- * <li>Fixed columns need a defined width for the feature to work.</li>
305
- * <li>The aggregated width of all fixed columns must not exceed the table width. Otherwise the table ignores the value of the
306
- * property and adapts the behavior in an appropriate way to ensure that the user is still able to scroll horizontally.</li>
304
+ * <li>Fixed columns need a defined width for the feature to work.</li>
305
+ * <li>The aggregated width of all fixed columns must not exceed the table width. Otherwise the table ignores the value of the
306
+ * property and adapts the behavior in an appropriate way to ensure that the user is still able to scroll horizontally.</li>
307
307
  * </ul>
308
308
  */
309
309
  fixedColumnCount: {type: "int", group: "Appearance", defaultValue: 0},
@@ -544,7 +544,7 @@ sap.ui.define([
544
544
  *
545
545
  * @experimental Since 1.28. This feature has a limited functionality.
546
546
  * @see sap.ui.table.Table#setEnableGrouping
547
- * @deprecated As of version 1.110.
547
+ * @deprecated As of version 1.110, see the <code>enableGrouping</code> property for details.
548
548
  */
549
549
  groupBy: {type: "sap.ui.table.Column", multiple: false, deprecated: true},
550
550
 
@@ -599,7 +599,7 @@ sap.ui.define([
599
599
 
600
600
  /**
601
601
  * fired when a column of the table has been selected
602
- * @deprecated As of version 1.117
602
+ * @deprecated As of version 1.117, see the <code>headerMenu</code> aggregation of <code>sap.ui.table.Column</code> for details.
603
603
  */
604
604
  columnSelect: {
605
605
  allowPreventDefault: true,
@@ -706,7 +706,7 @@ sap.ui.define([
706
706
 
707
707
  /**
708
708
  * fired when the table is grouped (experimental!).
709
- * @deprecated As of version 1.118.
709
+ * @deprecated As of version 1.118, see the <code>enableGrouping</code> property for details.
710
710
  */
711
711
  group: {
712
712
  allowPreventDefault: true,
@@ -721,7 +721,7 @@ sap.ui.define([
721
721
 
722
722
  /**
723
723
  * fired when the visibility of a table column is changed.
724
- * @deprecated As of Version 1.117
724
+ * @deprecated As of Version 1.117, see the <code>showColumnVisibilityMenu</code> property of <code>sap.ui.table.Table</code> for details.
725
725
  */
726
726
  columnVisibility: {
727
727
  allowPreventDefault: true,
@@ -1137,7 +1137,7 @@ sap.ui.define([
1137
1137
  Table.prototype.onpaste = function(oEvent) {
1138
1138
 
1139
1139
  // Check whether the paste event is already handled by input enabled control and avoid pasting into this input-enabled control when focus is in there.
1140
- if (oEvent.isMarked() || /^(input|textarea)$/i.test(oEvent.target.tagName) || !this.getDomRef("sapUiTableCnt").contains(oEvent.target)) {
1140
+ if (oEvent.isMarked() || /^(input|textarea)$/i.test(document.activeElement.tagName) /*see DINC0096526*/ || !this.getDomRef("sapUiTableCnt").contains(oEvent.target)) {
1141
1141
  return;
1142
1142
  }
1143
1143
 
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  * @extends sap.ui.base.ManagedObject
35
35
  *
36
36
  * @author SAP SE
37
- * @version 1.122.0
37
+ * @version 1.123.0
38
38
  * @since 1.21.1
39
39
  *
40
40
  * @constructor
@@ -42,7 +42,7 @@ sap.ui.define([
42
42
  * @class
43
43
  * The TreeTable control provides a comprehensive set of features to display hierarchical data.
44
44
  * @extends sap.ui.table.Table
45
- * @version 1.122.0
45
+ * @version 1.123.0
46
46
  *
47
47
  * @constructor
48
48
  * @public
@@ -501,9 +501,9 @@ sap.ui.define([
501
501
  };
502
502
 
503
503
  /**
504
- * The property <code>enableGrouping</code> is not supported by the <code>TreeTable</code> control.
504
+ * The <code>enableGrouping</code> property is not supported by the <code>TreeTable</code> control.
505
505
  *
506
- * @deprecated Since version 1.28.
506
+ * @deprecated As of version 1.28, the <code>enableGrouping</code> property is not supported by the <code>TreeTable</code> control.
507
507
  * @returns {boolean}
508
508
  * @public
509
509
  * @name sap.ui.table.TreeTable#getEnableGrouping
@@ -511,9 +511,9 @@ sap.ui.define([
511
511
  */
512
512
 
513
513
  /**
514
- * The property <code>enableGrouping</code> is not supported by the <code>TreeTable</code> control.
514
+ * The <code>enableGrouping</code> property is not supported by the <code>TreeTable</code> control.
515
515
  *
516
- * @deprecated Since version 1.28.
516
+ * @deprecated As of version 1.28, the <code>enableGrouping</code> property is not supported by the <code>TreeTable</code> control.
517
517
  * To get a group-like visualization the <code>useGroupMode</code> property can be used.
518
518
  * @param {boolean} bValue
519
519
  * @returns {this} Reference to <code>this</code> in order to allow method chaining
@@ -528,7 +528,7 @@ sap.ui.define([
528
528
  /**
529
529
  * The <code>groupBy</code> association is not supported by the <code>TreeTable</code> control.
530
530
  *
531
- * @deprecated Since version 1.28.
531
+ * @deprecated As of version 1.28, the <code>groupBy</code> association is not supported by the <code>TreeTable</code> control.
532
532
  * @returns {sap.ui.core.ID}
533
533
  * @public
534
534
  * @name sap.ui.table.TreeTable#getGroupBy
@@ -538,7 +538,7 @@ sap.ui.define([
538
538
  /**
539
539
  * The <code>groupBy</code> association is not supported by the <code>TreeTable</code> control.
540
540
  *
541
- * @deprecated Since version 1.28.
541
+ * @deprecated As of version 1.28, the <code>groupBy</code> association is not supported by the <code>TreeTable</code> control.
542
542
  * @param {sap.ui.table.Column|sap.ui.core.ID} oColumn
543
543
  * @returns {this} Reference to <code>this</code> in order to allow method chaining
544
544
  * @public
@@ -965,7 +965,7 @@ sap.ui.define([
965
965
  * @class Extension for sap.ui.table.Table which handles ACC related things.
966
966
  * @extends sap.ui.table.extensions.ExtensionBase
967
967
  * @author SAP SE
968
- * @version 1.122.0
968
+ * @version 1.123.0
969
969
  * @constructor
970
970
  * @private
971
971
  * @alias sap.ui.table.extensions.Accessibility
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * @class Extension for sap.ui.table.TableRenderer which handles ACC related things.
45
45
  * @extends sap.ui.table.extensions.ExtensionBase
46
46
  * @author SAP SE
47
- * @version 1.122.0
47
+ * @version 1.123.0
48
48
  * @constructor
49
49
  * @private
50
50
  * @alias sap.ui.table.extensions.AccessibilityRender
@@ -274,7 +274,7 @@ sap.ui.define([
274
274
  *
275
275
  * @extends sap.ui.table.extensions.ExtensionBase
276
276
  * @author SAP SE
277
- * @version 1.122.0
277
+ * @version 1.123.0
278
278
  * @constructor
279
279
  * @private
280
280
  * @alias sap.ui.table.extensions.DragAndDrop
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  * @abstract
20
20
  * @extends sap.ui.base.Object
21
21
  * @author SAP SE
22
- * @version 1.122.0
22
+ * @version 1.123.0
23
23
  * @constructor
24
24
  * @private
25
25
  * @alias sap.ui.table.extensions.ExtensionBase
@@ -267,7 +267,7 @@ sap.ui.define([
267
267
  * @class Extension for sap.ui.table.Table which handles keyboard related things.
268
268
  * @extends sap.ui.table.extensions.ExtensionBase
269
269
  * @author SAP SE
270
- * @version 1.122.0
270
+ * @version 1.123.0
271
271
  * @constructor
272
272
  * @private
273
273
  * @alias sap.ui.table.extensions.Keyboard
@@ -65,7 +65,7 @@ sap.ui.define([
65
65
  *
66
66
  * @extends sap.ui.base.Object
67
67
  * @author SAP SE
68
- * @version 1.122.0
68
+ * @version 1.123.0
69
69
  * @constructor
70
70
  * @private
71
71
  * @alias sap.ui.table.extensions.KeyboardDelegate
@@ -766,7 +766,7 @@ sap.ui.define([
766
766
  * @class Extension for sap.ui.table.Table which handles mouse and touch related things.
767
767
  * @extends sap.ui.table.extensions.ExtensionBase
768
768
  * @author SAP SE
769
- * @version 1.122.0
769
+ * @version 1.123.0
770
770
  * @constructor
771
771
  * @private
772
772
  * @alias sap.ui.table.extensions.Pointer
@@ -2264,7 +2264,7 @@ sap.ui.define([
2264
2264
  * @class Extension for sap.ui.table.Table which handles scrolling.
2265
2265
  * @extends sap.ui.table.extensions.ExtensionBase
2266
2266
  * @author SAP SE
2267
- * @version 1.122.0
2267
+ * @version 1.123.0
2268
2268
  * @constructor
2269
2269
  * @private
2270
2270
  * @alias sap.ui.table.extensions.Scrolling
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @class Extension for sap.ui.table.Table which handles the scrollbar on iOS.
28
28
  * @extends sap.ui.table.extensions.ExtensionBase
29
29
  * @author SAP SE
30
- * @version 1.122.0
30
+ * @version 1.123.0
31
31
  * @constructor
32
32
  * @private
33
33
  * @alias sap.ui.table.extensions.ScrollingIOS
@@ -185,7 +185,7 @@ sap.ui.define([
185
185
  * @class Extension for sap.ui.table.Table that allows synchronization with a table.
186
186
  * @extends sap.ui.table.extensions.ExtensionBase
187
187
  * @author SAP SE
188
- * @version 1.122.0
188
+ * @version 1.123.0
189
189
  * @constructor
190
190
  * @private
191
191
  * @alias sap.ui.table.extensions.Synchronization
@@ -27,27 +27,27 @@ sap.ui.define([
27
27
  * @namespace
28
28
  * @alias sap.ui.table
29
29
  * @author SAP SE
30
- * @version 1.122.0
30
+ * @version 1.123.0
31
31
  * @since 0.8
32
32
  * @public
33
33
  */
34
34
  var thisLib = Library.init({
35
35
  name: "sap.ui.table",
36
36
  apiVersion: 2,
37
- version: "1.122.0",
37
+ version: "1.123.0",
38
38
  dependencies: ["sap.ui.core", "sap.ui.unified"],
39
39
  designtime: "sap/ui/table/designtime/library.designtime",
40
40
  types: [
41
- /** @deprecated As of version 1.38 */
41
+ /** @deprecated As of version 1.38, the concept has been discarded. */
42
42
  "sap.ui.table.NavigationMode",
43
43
  "sap.ui.table.RowActionType",
44
44
  "sap.ui.table.SelectionBehavior",
45
45
  "sap.ui.table.SelectionMode",
46
- /** @deprecated As of version 1.120 */
46
+ /** @deprecated As of version 1.120, replaced by <code>sap.ui.core.SortOrder</code> */
47
47
  "sap.ui.table.SortOrder",
48
- /** @deprecated As of version 1.119 */
48
+ /** @deprecated As of version 1.119, see the <code>rowMode</code> aggregation of <code>sap.ui.table.Table</code> for more details. */
49
49
  "sap.ui.table.VisibleRowCountMode",
50
- /** @deprecated As of version 1.120 */
50
+ /** @deprecated As of version 1.120, replaced by <code>sap.ui.model.TreeAutoExpandMode</code> */
51
51
  "sap.ui.table.TreeAutoExpandMode", /*Note: Only added here to ensure that a corresponding module is created automatically. Cannot be used as type for properties!*/
52
52
  "sap.ui.table.plugins.SelectionMode"
53
53
  ],
@@ -96,9 +96,9 @@ sap.ui.define([
96
96
  /**
97
97
  * Navigation mode of the table
98
98
  *
99
- * @version 1.122.0
99
+ * @version 1.123.0
100
100
  * @enum {string}
101
- * @deprecated As of version 1.38
101
+ * @deprecated As of version 1.38, the concept has been discarded.
102
102
  * @public
103
103
  */
104
104
  thisLib.NavigationMode = {
@@ -127,7 +127,7 @@ sap.ui.define([
127
127
  /**
128
128
  * Row Action types.
129
129
  *
130
- * @version 1.122.0
130
+ * @version 1.123.0
131
131
  * @enum {string}
132
132
  * @public
133
133
  */
@@ -158,7 +158,7 @@ sap.ui.define([
158
158
  /**
159
159
  * Selection behavior of the table
160
160
  *
161
- * @version 1.122.0
161
+ * @version 1.123.0
162
162
  * @enum {string}
163
163
  * @public
164
164
  */
@@ -189,7 +189,7 @@ sap.ui.define([
189
189
  /**
190
190
  * Selection mode of the table
191
191
  *
192
- * @version 1.122.0
192
+ * @version 1.123.0
193
193
  * @enum {string}
194
194
  * @public
195
195
  */
@@ -227,7 +227,7 @@ sap.ui.define([
227
227
  /**
228
228
  * Sort order of a column
229
229
  *
230
- * @version 1.122.0
230
+ * @version 1.123.0
231
231
  * @enum {string}
232
232
  * @public
233
233
  * @deprecated As of version 1.120, replaced with <code>sap.ui.core.SortOrder</code>
@@ -254,9 +254,9 @@ sap.ui.define([
254
254
  /**
255
255
  * VisibleRowCountMode of the table
256
256
  *
257
- * @version 1.122.0
257
+ * @version 1.123.0
258
258
  * @enum {string}
259
- * @deprecated As of version 1.119
259
+ * @deprecated As of version 1.119, see the <code>rowMode</code> aggregation of <code>sap.ui.table.Table</code> for more details.
260
260
  * @public
261
261
  */
262
262
  thisLib.VisibleRowCountMode = {
@@ -272,11 +272,11 @@ sap.ui.define([
272
272
  *
273
273
  * The following restrictions apply:
274
274
  * <ul>
275
- * <li>The functionality targets only the mouse interaction (drag and drop). There is no keyboard alternative available.
276
- * An accessible alternative must be provided by applications, for example, by giving the user the possibility to enter
277
- * the number of required rows in an input field.</li>
278
- * <li>The resize interaction is not optimized for touch devices from a design and interaction perspective.
279
- * We do not recommend to use this mode in such scenarios.</li>
275
+ * <li>The functionality targets only the mouse interaction (drag and drop). There is no keyboard alternative available.
276
+ * An accessible alternative must be provided by applications, for example, by giving the user the possibility to enter
277
+ * the number of required rows in an input field.</li>
278
+ * <li>The resize interaction is not optimized for touch devices from a design and interaction perspective.
279
+ * We do not recommend to use this mode in such scenarios.</li>
280
280
  * </ul>
281
281
  *
282
282
  * @public
@@ -299,7 +299,7 @@ sap.ui.define([
299
299
  *
300
300
  * Contains IDs of shared DOM references, which should be accessible to inheriting controls via getDomRef() function.
301
301
  *
302
- * @version 1.122.0
302
+ * @version 1.123.0
303
303
  * @enum {string}
304
304
  * @public
305
305
  */
@@ -366,7 +366,7 @@ sap.ui.define([
366
366
  * Enumeration of the <code>ResetAllMode</code> that can be used in a <code>TablePersoController</code>.
367
367
  * @enum {string}
368
368
  * @public
369
- * @deprecated As of version 1.115
369
+ * @deprecated As of version 1.115, replaced by {@link sap.m.p13n.Engine}
370
370
  */
371
371
  thisLib.ResetAllMode = {
372
372
 
@@ -400,10 +400,10 @@ sap.ui.define([
400
400
  *
401
401
  * This is an alias for {@link sap.ui.model.TreeAutoExpandMode} and kept for compatibility reasons.
402
402
  *
403
- * @version 1.122.0
403
+ * @version 1.123.0
404
404
  * @typedef {sap.ui.model.TreeAutoExpandMode}
405
405
  * @public
406
- * @deprecated As of version 1.120
406
+ * @deprecated As of version 1.120, replaced by <code>sap.ui.model.TreeAutoExpandMode</code>
407
407
  */
408
408
  thisLib.TreeAutoExpandMode = TreeAutoExpandMode;
409
409
 
@@ -414,7 +414,7 @@ sap.ui.define([
414
414
  /**
415
415
  * Mode of a selection plugin
416
416
  *
417
- * @version 1.122.0
417
+ * @version 1.123.0
418
418
  * @enum {string}
419
419
  * @private
420
420
  */
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  *
36
36
  * @extends sap.ui.base.Object
37
37
  * @author SAP SE
38
- * @version 1.122.0
38
+ * @version 1.123.0
39
39
  * @private
40
40
  * @alias sap.ui.table.menus.ColumnHeaderMenuAdapter
41
41
  */
@@ -59,7 +59,7 @@ sap.ui.define([
59
59
  *
60
60
  * @extends sap.ui.table.menus.ColumnHeaderMenuAdapter
61
61
  * @author SAP SE
62
- * @version 1.122.0
62
+ * @version 1.123.0
63
63
  * @private
64
64
  * @alias sap.ui.table.menus.MobileColumnHeaderMenuAdapter
65
65
  */
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  *
22
22
  * @class Implements the selection methods for TreeTable and AnalyticalTable
23
23
  * @extends sap.ui.table.plugins.SelectionPlugin
24
- * @version 1.122.0
24
+ * @version 1.123.0
25
25
  * @constructor
26
26
  * @private
27
27
  * @alias sap.ui.table.plugins.BindingSelection
@@ -86,6 +86,9 @@ sap.ui.define([
86
86
  */
87
87
  selectionMode: {type: "sap.ui.table.SelectionMode", group: "Behavior", defaultValue: SelectionMode.MultiToggle}
88
88
  },
89
+ aggregations: {
90
+ icon: {type: "sap.ui.core.Icon", multiple: false, visibility: "hidden"}
91
+ },
89
92
  events: {
90
93
  /**
91
94
  * This event is fired when the selection is changed.
@@ -119,20 +122,11 @@ sap.ui.define([
119
122
 
120
123
  var oIcon = new Icon({src: IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon), useIconTooltip: false});
121
124
  oIcon.addStyleClass("sapUiTableSelectClear");
125
+ this.setAggregation("icon", oIcon, true);
122
126
 
123
127
  this._bLimitReached = false;
124
128
  this._bLimitDisabled = this.getLimit() === 0;
125
129
  this.oInnerSelectionPlugin = null;
126
- this.oDeselectAllIcon = oIcon;
127
- };
128
-
129
- MultiSelectionPlugin.prototype.exit = function() {
130
- SelectionPlugin.prototype.exit.apply(this, arguments);
131
-
132
- if (this.oDeselectAllIcon) {
133
- this.oDeselectAllIcon.destroy();
134
- this.oDeselectAllIcon = null;
135
- }
136
130
  };
137
131
 
138
132
  /**
@@ -189,7 +183,7 @@ sap.ui.define([
189
183
  return {
190
184
  headerSelector: {
191
185
  type: this._bLimitDisabled ? "toggle" : "clear",
192
- icon: this.oDeselectAllIcon,
186
+ icon: this.getAggregation("icon"),
193
187
  visible: this.getSelectionMode() === SelectionMode.MultiToggle && this.getShowHeaderSelector(),
194
188
  enabled: this._bLimitDisabled || this.getSelectedCount() > 0,
195
189
  selected: this.getSelectableCount() > 0 && this.getSelectableCount() === this.getSelectedCount()
@@ -616,7 +610,7 @@ sap.ui.define([
616
610
  };
617
611
 
618
612
  MultiSelectionPlugin.prototype.onThemeChanged = function() {
619
- this.oDeselectAllIcon.setSrc(IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon));
613
+ this.getAggregation("icon").setSrc(IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon));
620
614
  };
621
615
 
622
616
  return MultiSelectionPlugin;
@@ -77,6 +77,9 @@ sap.ui.define([
77
77
  */
78
78
  hideHeaderSelector: {type: "boolean", group: "Appearance", defaultValue: false}
79
79
  },
80
+ aggregations: {
81
+ icon: {type: "sap.ui.core.Icon", multiple: false, visibility: "hidden"}
82
+ },
80
83
  events: {
81
84
  selectionChange: {}
82
85
  }
@@ -90,21 +93,12 @@ sap.ui.define([
90
93
 
91
94
  var oIcon = new Icon({src: IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon), useIconTooltip: false});
92
95
  oIcon.addStyleClass("sapUiTableSelectClear");
96
+ this.setAggregation("icon", oIcon, true);
93
97
 
94
98
  this._bLimitReached = false;
95
- this.oDeselectAllIcon = oIcon;
96
99
  this._oRangeSelectionStartContext = null;
97
100
  };
98
101
 
99
- ODataV4Selection.prototype.exit = function() {
100
- SelectionPlugin.prototype.exit.apply(this, arguments);
101
-
102
- if (this.oDeselectAllIcon) {
103
- this.oDeselectAllIcon.destroy();
104
- this.oDeselectAllIcon = null;
105
- }
106
- };
107
-
108
102
  ODataV4Selection.prototype.onActivate = function(oTable) {
109
103
  SelectionPlugin.prototype.onActivate.apply(this, arguments);
110
104
  oTable.setProperty("selectionMode", this.getSelectionMode());
@@ -176,7 +170,7 @@ sap.ui.define([
176
170
  return {
177
171
  headerSelector: {
178
172
  type: this._isLimitDisabled() ? "toggle" : "clear",
179
- icon: this.oDeselectAllIcon,
173
+ icon: this.getAggregation("icon"),
180
174
  visible: this.getSelectionMode() === SelectionMode.MultiToggle && !this.getHideHeaderSelector(),
181
175
  enabled: this._isLimitDisabled() || this.getSelectedCount() > 0,
182
176
  selected: areAllRowsSelected(this)
@@ -384,7 +378,7 @@ sap.ui.define([
384
378
  };
385
379
 
386
380
  ODataV4Selection.prototype.onThemeChanged = function() {
387
- this.oDeselectAllIcon.setSrc(IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon));
381
+ this.getAggregation("icon").setSrc(IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon));
388
382
  };
389
383
 
390
384
  return ODataV4Selection;
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.core.Element
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.122.0
31
+ * @version 1.123.0
32
32
  *
33
33
  * @private
34
34
  * @experimental Since 1.75
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  *
24
24
  * @class Implements the selection methods for a Table
25
25
  * @extends sap.ui.table.plugins.SelectionPlugin
26
- * @version 1.122.0
26
+ * @version 1.123.0
27
27
  * @constructor
28
28
  * @private
29
29
  * @alias sap.ui.table.plugins.SelectionModelSelection
@@ -18,15 +18,16 @@ sap.ui.define([
18
18
  *
19
19
  * The following restrictions apply:
20
20
  * <ul>
21
- * <li>Do not create subclasses of the <code>SelectionPlugin</code>. The API is subject to change.
22
- * <b>Note:</b> Subclasses provided by the UI5 framework that are not explicitly marked as experimental or restricted in any other way can be used on a regular basis.</li>
21
+ * <li>Do not create subclasses of the <code>SelectionPlugin</code>. The API is subject to change.
22
+ * <b>Note:</b> Subclasses provided by the UI5 framework that are not explicitly marked as experimental or restricted in any other way can
23
+ * be used on a regular basis.</li>
23
24
  * </ul>
24
25
  *
25
26
  * @abstract
26
27
  * @class Implements the selection methods for a table.
27
28
  * @extends sap.ui.core.Element
28
29
  * @author SAP SE
29
- * @version 1.122.0
30
+ * @version 1.123.0
30
31
  * @public
31
32
  * @since 1.64
32
33
  * @experimental As of version 1.64
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @class TODO (don't forget to document fixed row count restrictions because fixed rows are set by this plugin)
33
33
  * @extends sap.ui.table.plugins.PluginBase
34
34
  * @author SAP SE
35
- * @version 1.122.0
35
+ * @version 1.123.0
36
36
  * @private
37
37
  * @since 1.76
38
38
  * @ui5-restricted sap.ui.mdc
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  * @public
39
39
  *
40
40
  * @author SAP SE
41
- * @version 1.122.0
41
+ * @version 1.123.0
42
42
  */
43
43
  var AutoRowMode = RowMode.extend("sap.ui.table.rowmodes.Auto", /** @lends sap.ui.table.rowmodes.Auto.prototype */ {
44
44
  metadata: {
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @public
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.122.0
30
+ * @version 1.123.0
31
31
  */
32
32
  var FixedRowMode = RowMode.extend("sap.ui.table.rowmodes.Fixed", /** @lends sap.ui.table.rowmodes.Fixed.prototype */ {
33
33
  metadata: {
@@ -25,11 +25,11 @@ sap.ui.define([
25
25
  *
26
26
  * The following restrictions apply:
27
27
  * <ul>
28
- * <li>The functionality targets only the mouse interaction (drag and drop). There is no keyboard alternative available.
29
- * An accessible alternative must be provided by applications, for example, by giving the user the possibility to enter
30
- * the number of required rows in an input field.</li>
31
- * <li>The resize interaction is not optimized for touch devices from a design and interaction perspective.
32
- * We do not recommend to use this mode in such scenarios.</li>
28
+ * <li>The functionality targets only the mouse interaction (drag and drop). There is no keyboard alternative available.
29
+ * An accessible alternative must be provided by applications, for example, by giving the user the possibility to enter
30
+ * the number of required rows in an input field.</li>
31
+ * <li>The resize interaction is not optimized for touch devices from a design and interaction perspective.
32
+ * We do not recommend to use this mode in such scenarios.</li>
33
33
  * </ul>
34
34
  *
35
35
  * @extends sap.ui.table.rowmodes.RowMode
@@ -39,7 +39,7 @@ sap.ui.define([
39
39
  * @public
40
40
  *
41
41
  * @author SAP SE
42
- * @version 1.122.0
42
+ * @version 1.123.0
43
43
  */
44
44
  var InteractiveRowMode = RowMode.extend("sap.ui.table.rowmodes.Interactive", /** @lends sap.ui.table.rowmodes.Interactive.prototype */ {
45
45
  metadata: {
@@ -37,7 +37,7 @@ sap.ui.define([
37
37
  * @public
38
38
  *
39
39
  * @author SAP SE
40
- * @version 1.122.0
40
+ * @version 1.123.0
41
41
  */
42
42
  var RowMode = Element.extend("sap.ui.table.rowmodes.RowMode", /** @lends sap.ui.table.rowmodes.RowMode.prototype */ {
43
43
  metadata: {
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.ui.table.rowmodes.RowMode
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.122.0
26
+ * @version 1.123.0
27
27
  *
28
28
  * @constructor
29
29
  * @private
@@ -213,7 +213,7 @@ sap.ui.define([
213
213
  * Static collection of utility functions related to the sap.ui.table.Table, ...
214
214
  *
215
215
  * @author SAP SE
216
- * @version 1.122.0
216
+ * @version 1.123.0
217
217
  * @namespace
218
218
  * @alias sap.ui.table.utils.TableUtils
219
219
  * @private
@@ -14,7 +14,7 @@ sap.ui.define([], function() {
14
14
  * Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Binding...</code>
15
15
  *
16
16
  * @author SAP SE
17
- * @version 1.122.0
17
+ * @version 1.123.0
18
18
  * @namespace
19
19
  * @alias sap.ui.table.utils._BindingUtils
20
20
  * @private
@@ -18,7 +18,7 @@ sap.ui.define([
18
18
  * Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Column...</code>
19
19
  *
20
20
  * @author SAP SE
21
- * @version 1.122.0
21
+ * @version 1.123.0
22
22
  * @namespace
23
23
  * @alias sap.ui.table.utils._ColumnUtils
24
24
  * @private
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Grouping...</code>
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.122.0
27
+ * @version 1.123.0
28
28
  * @namespace
29
29
  * @alias sap.ui.table.utils._GroupingUtils
30
30
  * @private
@@ -22,7 +22,7 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
22
22
  * - There is no concept for public or protected hooks. Never expose a hook directly, only indirectly as can be seen in the examples.
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.122.0
25
+ * @version 1.123.0
26
26
  * @namespace
27
27
  * @alias sap.ui.table.utils._HookUtils
28
28
  *
@@ -106,13 +106,6 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
106
106
  * For example for internal types like sap.ui.table.Row.State. It is also possible to use sap.ui.base.DataType#createType to create
107
107
  * a type that can be used here. But this is not done to avoid polluting the type registry just for this util.
108
108
  *
109
- * - "returnValue" (optional) - Type of the return value.
110
- * Examples: "boolean", "Promise"
111
- *
112
- * If a type for the return value is defined, an array of valid return values is returned to the caller. Invalid values that do not match
113
- * the type are discarded.
114
- * Any type that can be used in "arguments" can also be used here, plus "Promise".
115
- *
116
109
  * Forbidden types: "function"
117
110
  */
118
111
 
@@ -158,7 +151,7 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
158
151
  {type: validateRowsUpdateReason}
159
152
  ]
160
153
  },
161
- OpenMenu: {
154
+ OpenContextMenu: {
162
155
  arguments: [
163
156
  {type: validateCellInfo},
164
157
  {type: "class:sap.ui.unified.Menu"}
@@ -221,14 +214,6 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
221
214
  }
222
215
  },
223
216
  Column: {
224
- // Called when the table needs to know whether menu items will be added on the Table.OpenMenu hook. Returning "true" indicates that
225
- // the consumer will add menu items on Table.OpenMenu.
226
- MenuItemNotification: {
227
- arguments: [
228
- {type: "class:sap.ui.table.Column"}
229
- ],
230
- returnValue: "boolean"
231
- },
232
217
  /**
233
218
  * @deprecated As of Version 1.117
234
219
  */
@@ -264,22 +249,18 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
264
249
  *
265
250
  * @param {sap.ui.table.Table} oScope The table whose hook is called.
266
251
  * @param {string} sKey The hook to call.
267
- * @returns {any[] | undefined} The return values, or <code>undefined</code> if the hook does not allow return values.
268
252
  */
269
253
  HookUtils.call = function(oScope, sKey) {
270
254
  var aHooks = Hooks.get(oScope);
271
255
 
272
256
  if (!isValidScope(oScope) || !isValidKey(sKey)) {
273
- return undefined;
257
+ return;
274
258
  }
275
259
 
276
260
  var mHookMetadata = getHookMetadataByKey(sKey);
277
261
 
278
262
  if (aHooks == null) {
279
- if (mHookMetadata.returnValue) {
280
- return [];
281
- }
282
- return undefined;
263
+ return;
283
264
  }
284
265
 
285
266
  var aArguments = sanitizeArguments(Array.prototype.slice.call(arguments, 2));
@@ -289,22 +270,17 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
289
270
  throw new Error("Hook with key " + sKey + " was not called. Invalid arguments passed\n" + oScope);
290
271
  }
291
272
 
292
- var aReturnValues = aHooks.map(function(oHook) {
273
+ aHooks.map((oHook) => {
293
274
  if (oHook.key === MASTER_HOOK_KEY) {
294
275
  var oCall = {};
295
276
  var oHandlerContext = oHook.handlerContext == null ? oHook.target : oHook.handlerContext;
296
277
 
297
278
  oCall[sKey] = aArguments;
298
- return HookUtils.TableUtils.dynamicCall(oHook.target, oCall, oHandlerContext);
299
-
279
+ HookUtils.TableUtils.dynamicCall(oHook.target, oCall, oHandlerContext);
300
280
  } else if (oHook.key === sKey) {
301
- return oHook.handler.apply(oHook.handlerContext, aArguments);
281
+ oHook.handler.apply(oHook.handlerContext, aArguments);
302
282
  }
303
283
  });
304
-
305
- aReturnValues = getValidReturnValues(mHookMetadata, aReturnValues);
306
-
307
- return aReturnValues;
308
284
  };
309
285
 
310
286
  /**
@@ -444,7 +420,7 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
444
420
 
445
421
  if ("arguments" in mCurrent[sProperty]) {
446
422
  aForbiddenTypes.forEach(function(sForbiddenType) {
447
- if (mCurrent[sProperty].arguments.indexOf(sForbiddenType) > -1 || mCurrent[sProperty].returnValue === sForbiddenType) {
423
+ if (mCurrent[sProperty].arguments.includes(sForbiddenType)) {
448
424
  throw new Error("Forbidden type found in metadata of hook " + sCurrentKey + ": " + sForbiddenType);
449
425
  }
450
426
  });
@@ -482,14 +458,6 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
482
458
  }
483
459
  }
484
460
 
485
- aArguments.map(function(vArgument) {
486
- if (vArgument === null) {
487
- return undefined;
488
- } else {
489
- return vArgument;
490
- }
491
- });
492
-
493
461
  return aArguments;
494
462
  }
495
463
 
@@ -506,28 +474,6 @@ sap.ui.define(["sap/ui/base/DataType", "sap/ui/model/ChangeReason"], function(Da
506
474
  });
507
475
  }
508
476
 
509
- function getValidReturnValues(mHookMetadata, aValues) {
510
- if (!mHookMetadata.returnValue) {
511
- return undefined;
512
- }
513
-
514
- var vType = mHookMetadata.returnValue;
515
-
516
- return aValues.filter(function(vValue) {
517
- if (vValue == null) {
518
- return false;
519
- } else if (typeof vType === "function") {
520
- return vType(vValue);
521
- } else if (vType === "Promise") {
522
- return vValue instanceof Promise;
523
- } else if (vType.startsWith("class:")) {
524
- return HookUtils.TableUtils.isA(vValue, vType.substring(6));
525
- } else {
526
- return DataType.getType(vType).isValid(vValue);
527
- }
528
- });
529
- }
530
-
531
477
  function validateChangeReason(sReason) {
532
478
  return typeof sReason === "string" && Object.values(ChangeReason).includes(sReason);
533
479
  }
@@ -42,7 +42,7 @@ sap.ui.define([
42
42
  * Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Menu...</code>
43
43
  *
44
44
  * @author SAP SE
45
- * @version 1.122.0
45
+ * @version 1.123.0
46
46
  * @namespace
47
47
  * @alias sap.ui.table.utils._MenuUtils
48
48
  * @private
@@ -172,7 +172,7 @@ sap.ui.define([
172
172
  var sCellFilterMenuItemId = oTable._oCellContextMenu.getId() + "-cellfilter";
173
173
  var oCellFilterMenuItem = Element.getElementById(sCellFilterMenuItemId);
174
174
 
175
- if (oTable.getEnableCellFilter() && oColumn && oColumn.isFilterableByMenu() && !oRow.isGroupHeader()) {
175
+ if (oTable.getEnableCellFilter() && oColumn?.isFilterableByMenu() && !oRow.isGroupHeader() && !oRow.isSummary()) {
176
176
  if (!oCellFilterMenuItem) {
177
177
  oCellFilterMenuItem = new MenuItem({
178
178
  id: sCellFilterMenuItemId,
@@ -193,7 +193,7 @@ sap.ui.define([
193
193
  oTable._oCellContextMenu.removeItem(oCellFilterMenuItem);
194
194
  }
195
195
 
196
- MenuUtils.TableUtils.Hook.call(oTable, MenuUtils.TableUtils.Hook.Keys.Table.OpenMenu, oCellInfo, oTable._oCellContextMenu);
196
+ MenuUtils.TableUtils.Hook.call(oTable, MenuUtils.TableUtils.Hook.Keys.Table.OpenContextMenu, oCellInfo, oTable._oCellContextMenu);
197
197
 
198
198
  if (oTable._oCellContextMenu.getItems().length === 0) {
199
199
  return;
@@ -208,31 +208,9 @@ sap.ui.define([
208
208
  *
209
209
  * @param {sap.ui.table.Table} oTable Instance of the table.
210
210
  * @private
211
- * @see _closeCustomContentCellContextMenu
212
- * @see _closeDefaultContentCellContextMenu
213
211
  */
214
212
  closeContentCellContextMenu: function(oTable) {
215
- MenuUtils._closeCustomContentCellContextMenu(oTable);
216
- MenuUtils._closeDefaultContentCellContextMenu(oTable);
217
- },
218
-
219
- /**
220
- * Closes the currently open custom content cell context menu.
221
- *
222
- * @param {sap.ui.table.Table} oTable Instance of the table.
223
- * @private
224
- */
225
- _closeCustomContentCellContextMenu: function(oTable) {
226
213
  oTable.getContextMenu()?.close?.(); // sap.ui.core.IContextMenu does not contain "close".
227
- },
228
-
229
- /**
230
- * Closes the currently open default content cell context menu.
231
- *
232
- * @param {sap.ui.table.Table} oTable Instance of the table.
233
- * @private
234
- */
235
- _closeDefaultContentCellContextMenu: function(oTable) {
236
214
  oTable._oCellContextMenu?.close();
237
215
  },
238
216