@openui5/sap.ui.table 1.99.1 → 1.102.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.
- package/.eslintrc.json +18 -0
- package/THIRDPARTY.txt +5 -5
- package/package.json +3 -3
- package/src/sap/ui/table/.library +1 -1
- package/src/sap/ui/table/AnalyticalColumn.js +5 -3
- package/src/sap/ui/table/AnalyticalColumnMenu.js +3 -3
- package/src/sap/ui/table/AnalyticalTable.js +2 -6
- package/src/sap/ui/table/Column.js +28 -11
- package/src/sap/ui/table/ColumnMenu.js +6 -8
- package/src/sap/ui/table/CreationRow.js +3 -2
- package/src/sap/ui/table/Row.js +3 -2
- package/src/sap/ui/table/RowAction.js +3 -2
- package/src/sap/ui/table/RowActionItem.js +1 -1
- package/src/sap/ui/table/RowActionRenderer.js +2 -2
- package/src/sap/ui/table/RowSettings.js +1 -1
- package/src/sap/ui/table/Table.js +31 -11
- package/src/sap/ui/table/TablePersoController.js +1 -1
- package/src/sap/ui/table/TableRenderer.js +4 -2
- package/src/sap/ui/table/TreeTable.js +3 -3
- package/src/sap/ui/table/extensions/Accessibility.js +19 -6
- package/src/sap/ui/table/extensions/AccessibilityRender.js +1 -1
- package/src/sap/ui/table/extensions/DragAndDrop.js +1 -1
- package/src/sap/ui/table/extensions/ExtensionBase.js +1 -1
- package/src/sap/ui/table/extensions/Keyboard.js +1 -1
- package/src/sap/ui/table/extensions/KeyboardDelegate.js +1 -1
- package/src/sap/ui/table/extensions/Pointer.js +1 -1
- package/src/sap/ui/table/extensions/Scrolling.js +3 -2
- package/src/sap/ui/table/extensions/ScrollingIOS.js +1 -1
- package/src/sap/ui/table/extensions/Synchronization.js +4 -4
- package/src/sap/ui/table/library.js +20 -23
- package/src/sap/ui/table/messagebundle_ar.properties +2 -0
- package/src/sap/ui/table/messagebundle_bg.properties +2 -0
- package/src/sap/ui/table/messagebundle_ca.properties +2 -0
- package/src/sap/ui/table/messagebundle_cs.properties +2 -0
- package/src/sap/ui/table/messagebundle_cy.properties +2 -0
- package/src/sap/ui/table/messagebundle_da.properties +2 -0
- package/src/sap/ui/table/messagebundle_de.properties +2 -0
- package/src/sap/ui/table/messagebundle_el.properties +2 -0
- package/src/sap/ui/table/messagebundle_en.properties +2 -0
- package/src/sap/ui/table/messagebundle_en_GB.properties +2 -0
- package/src/sap/ui/table/messagebundle_en_US_saprigi.properties +2 -0
- package/src/sap/ui/table/messagebundle_en_US_saptrc.properties +2 -0
- package/src/sap/ui/table/messagebundle_es.properties +2 -0
- package/src/sap/ui/table/messagebundle_es_MX.properties +2 -0
- package/src/sap/ui/table/messagebundle_et.properties +2 -0
- package/src/sap/ui/table/messagebundle_fi.properties +2 -0
- package/src/sap/ui/table/messagebundle_fr.properties +2 -0
- package/src/sap/ui/table/messagebundle_fr_CA.properties +2 -0
- package/src/sap/ui/table/messagebundle_hi.properties +2 -0
- package/src/sap/ui/table/messagebundle_hr.properties +2 -0
- package/src/sap/ui/table/messagebundle_hu.properties +2 -0
- package/src/sap/ui/table/messagebundle_id.properties +2 -0
- package/src/sap/ui/table/messagebundle_it.properties +2 -0
- package/src/sap/ui/table/messagebundle_iw.properties +2 -0
- package/src/sap/ui/table/messagebundle_ja.properties +2 -0
- package/src/sap/ui/table/messagebundle_kk.properties +2 -0
- package/src/sap/ui/table/messagebundle_ko.properties +2 -0
- package/src/sap/ui/table/messagebundle_lt.properties +2 -0
- package/src/sap/ui/table/messagebundle_lv.properties +2 -0
- package/src/sap/ui/table/messagebundle_ms.properties +2 -0
- package/src/sap/ui/table/messagebundle_nl.properties +2 -0
- package/src/sap/ui/table/messagebundle_no.properties +2 -0
- package/src/sap/ui/table/messagebundle_pl.properties +2 -0
- package/src/sap/ui/table/messagebundle_pt.properties +2 -0
- package/src/sap/ui/table/messagebundle_pt_PT.properties +2 -0
- package/src/sap/ui/table/messagebundle_ro.properties +2 -0
- package/src/sap/ui/table/messagebundle_ru.properties +2 -0
- package/src/sap/ui/table/messagebundle_sh.properties +2 -0
- package/src/sap/ui/table/messagebundle_sk.properties +2 -0
- package/src/sap/ui/table/messagebundle_sl.properties +2 -0
- package/src/sap/ui/table/messagebundle_sv.properties +2 -0
- package/src/sap/ui/table/messagebundle_th.properties +2 -0
- package/src/sap/ui/table/messagebundle_tr.properties +2 -0
- package/src/sap/ui/table/messagebundle_uk.properties +2 -0
- package/src/sap/ui/table/messagebundle_vi.properties +2 -0
- package/src/sap/ui/table/messagebundle_zh_CN.properties +2 -0
- package/src/sap/ui/table/messagebundle_zh_TW.properties +2 -0
- package/src/sap/ui/table/plugins/BindingSelection.js +1 -1
- package/src/sap/ui/table/plugins/MultiSelectionPlugin.js +0 -4
- package/src/sap/ui/table/plugins/PluginBase.js +1 -1
- package/src/sap/ui/table/plugins/SelectionModelSelection.js +1 -1
- package/src/sap/ui/table/plugins/SelectionPlugin.js +1 -1
- package/src/sap/ui/table/plugins/V4Aggregation.js +1 -1
- package/src/sap/ui/table/rowmodes/AutoRowMode.js +5 -3
- package/src/sap/ui/table/rowmodes/FixedRowMode.js +1 -1
- package/src/sap/ui/table/rowmodes/InteractiveRowMode.js +1 -1
- package/src/sap/ui/table/rowmodes/RowMode.js +1 -3
- package/src/sap/ui/table/rowmodes/VariableRowMode.js +1 -1
- package/src/sap/ui/table/rules/Rows.support.js +4 -3
- package/src/sap/ui/table/themes/base/Cell.less +1 -0
- package/src/sap/ui/table/themes/base/Grouping.less +10 -0
- package/src/sap/ui/table/themes/base/Table.less +7 -2
- package/src/sap/ui/table/utils/TableUtils.js +19 -5
- package/src/sap/ui/table/utils/_BindingUtils.js +1 -1
- package/src/sap/ui/table/utils/_ColumnUtils.js +2 -9
- package/src/sap/ui/table/utils/_GroupingUtils.js +2 -3
- package/src/sap/ui/table/utils/_HookUtils.js +2 -2
- package/src/sap/ui/table/utils/_MenuUtils.js +1 -1
package/.eslintrc.json
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"overrides": [
|
|
3
|
+
/*
|
|
4
|
+
* Productive code, sample and unit test code of sap.ui.table has been cleaned up.
|
|
5
|
+
* No more references to the global jQuery allowed
|
|
6
|
+
*/
|
|
7
|
+
{
|
|
8
|
+
"files": [
|
|
9
|
+
"src/**/*.js",
|
|
10
|
+
"test/sap/ui/table/demokit/**/*.js",
|
|
11
|
+
"test/sap/ui/table/qunit/**/*.js"
|
|
12
|
+
],
|
|
13
|
+
"globals": {
|
|
14
|
+
"jQuery": "off"
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
]
|
|
18
|
+
}
|
package/THIRDPARTY.txt
CHANGED
|
@@ -400,7 +400,7 @@ Contained in: src/sap.ui.mdc/test/sap/ui/mdc/sample/field/filterfieldwithoperato
|
|
|
400
400
|
|
|
401
401
|
Library: sap.ui.webc.common:
|
|
402
402
|
|
|
403
|
-
Component: UI5 Web Components, version: 1.
|
|
403
|
+
Component: UI5 Web Components, version: 1.1.2
|
|
404
404
|
Copyright: SAP
|
|
405
405
|
License: Apache-2.0
|
|
406
406
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
@@ -411,7 +411,7 @@ Contained in: src/sap.ui.webc.common/src/sap/ui/webc/common/thirdparty/base/*.*
|
|
|
411
411
|
src/sap.ui.webc.common/src/sap/ui/webc/common/thirdparty/icons-tnt/*.*
|
|
412
412
|
src/sap.ui.webc.common/src/sap/ui/webc/common/thirdparty/icons-business-suite/*.*
|
|
413
413
|
|
|
414
|
-
Component: lit-html, version:
|
|
414
|
+
Component: lit-html, version: 2.0.1
|
|
415
415
|
Copyright: Google LLC
|
|
416
416
|
License: BSD-3-Clause
|
|
417
417
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/BSD-3-Clause.txt
|
|
@@ -420,7 +420,7 @@ Contained in: src/sap.ui.webc.common/src/sap/ui/webc/common/thirdparty/lit-html/
|
|
|
420
420
|
|
|
421
421
|
Library: sap.ui.webc.fiori:
|
|
422
422
|
|
|
423
|
-
Component: UI5 Web Components, version: 1.
|
|
423
|
+
Component: UI5 Web Components, version: 1.1.2
|
|
424
424
|
Copyright: SAP
|
|
425
425
|
License: Apache-2.0
|
|
426
426
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
@@ -429,7 +429,7 @@ Contained in: src/sap.ui.webc.fiori/src/sap/ui/webc/fiori/thirdparty/*.*
|
|
|
429
429
|
|
|
430
430
|
Library: sap.ui.webc.main:
|
|
431
431
|
|
|
432
|
-
Component: UI5 Web Components, version: 1.
|
|
432
|
+
Component: UI5 Web Components, version: 1.1.2
|
|
433
433
|
Copyright: SAP
|
|
434
434
|
License: Apache-2.0
|
|
435
435
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
@@ -450,7 +450,7 @@ License: Apache-2.0
|
|
|
450
450
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
451
451
|
Contained in: lib/jsdoc/ui5/plugin.js
|
|
452
452
|
|
|
453
|
-
Component: SAP Theming Base Content, version: 11.1.
|
|
453
|
+
Component: SAP Theming Base Content, version: 11.1.39
|
|
454
454
|
Copyright: SAP SE or an SAP affiliate company and Theming Base Content contributors
|
|
455
455
|
License: Apache-2.0
|
|
456
456
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openui5/sap.ui.table",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.102.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.
|
|
18
|
-
"@openui5/sap.ui.unified": "1.
|
|
17
|
+
"@openui5/sap.ui.core": "1.102.0",
|
|
18
|
+
"@openui5/sap.ui.unified": "1.102.0"
|
|
19
19
|
}
|
|
20
20
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<copyright>OpenUI5
|
|
7
7
|
* (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
|
|
8
8
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
|
|
9
|
-
<version>1.
|
|
9
|
+
<version>1.102.0</version>
|
|
10
10
|
|
|
11
11
|
<documentation>Table-like controls, mainly for desktop scenarios.</documentation>
|
|
12
12
|
|
|
@@ -46,7 +46,7 @@ sap.ui.define([
|
|
|
46
46
|
* @extends sap.ui.table.Column
|
|
47
47
|
*
|
|
48
48
|
* @author SAP SE
|
|
49
|
-
* @version 1.
|
|
49
|
+
* @version 1.102.0
|
|
50
50
|
*
|
|
51
51
|
* @constructor
|
|
52
52
|
* @public
|
|
@@ -363,11 +363,13 @@ sap.ui.define([
|
|
|
363
363
|
* <li>The column's <code>leadingProperty</code> must be a sortable and filterable dimension.</li>
|
|
364
364
|
* </ul>
|
|
365
365
|
*
|
|
366
|
-
* @
|
|
366
|
+
* @private
|
|
367
|
+
* @ui5-restricted sap.ui.comp
|
|
367
368
|
* @return {boolean} <code>true</code> if the column is groupable
|
|
368
369
|
*/
|
|
369
|
-
AnalyticalColumn.prototype.
|
|
370
|
+
AnalyticalColumn.prototype.isGroupableByMenu = function() {
|
|
370
371
|
var oParent = this.getParent();
|
|
372
|
+
|
|
371
373
|
if (isInstanceOfAnalyticalTable(oParent)) {
|
|
372
374
|
var oBinding = oParent.getBinding();
|
|
373
375
|
if (oBinding) {
|
|
@@ -23,7 +23,7 @@ sap.ui.define(['./ColumnMenu', "sap/ui/unified/MenuRenderer", './library', "sap/
|
|
|
23
23
|
* @extends sap.ui.table.ColumnMenu
|
|
24
24
|
*
|
|
25
25
|
* @author SAP SE
|
|
26
|
-
* @version 1.
|
|
26
|
+
* @version 1.102.0
|
|
27
27
|
*
|
|
28
28
|
* @constructor
|
|
29
29
|
* @public
|
|
@@ -36,7 +36,7 @@ sap.ui.define(['./ColumnMenu', "sap/ui/unified/MenuRenderer", './library', "sap/
|
|
|
36
36
|
metadata : {
|
|
37
37
|
library : "sap.ui.table"
|
|
38
38
|
},
|
|
39
|
-
renderer:
|
|
39
|
+
renderer: MenuRenderer
|
|
40
40
|
});
|
|
41
41
|
|
|
42
42
|
/**
|
|
@@ -59,7 +59,7 @@ sap.ui.define(['./ColumnMenu', "sap/ui/unified/MenuRenderer", './library', "sap/
|
|
|
59
59
|
var oColumn = this._oColumn,
|
|
60
60
|
oTable = this._oTable;
|
|
61
61
|
|
|
62
|
-
if (oColumn.
|
|
62
|
+
if (oColumn.isGroupableByMenu()) {
|
|
63
63
|
this._oGroupIcon = this._createMenuItem(
|
|
64
64
|
"group",
|
|
65
65
|
"TBL_GROUP",
|
|
@@ -13,9 +13,7 @@ sap.ui.define([
|
|
|
13
13
|
"./TableRenderer",
|
|
14
14
|
'./library',
|
|
15
15
|
'sap/ui/model/analytics/ODataModelAdapter',
|
|
16
|
-
'sap/ui/model/SelectionModel',
|
|
17
16
|
'sap/ui/model/Sorter',
|
|
18
|
-
'sap/ui/unified/Menu',
|
|
19
17
|
'sap/ui/unified/MenuItem',
|
|
20
18
|
'./utils/TableUtils',
|
|
21
19
|
"./plugins/BindingSelection",
|
|
@@ -31,9 +29,7 @@ sap.ui.define([
|
|
|
31
29
|
TableRenderer,
|
|
32
30
|
library,
|
|
33
31
|
ODataModelAdapter,
|
|
34
|
-
SelectionModel,
|
|
35
32
|
Sorter,
|
|
36
|
-
Menu,
|
|
37
33
|
MenuItem,
|
|
38
34
|
TableUtils,
|
|
39
35
|
BindingSelectionPlugin,
|
|
@@ -60,7 +56,7 @@ sap.ui.define([
|
|
|
60
56
|
* @see http://scn.sap.com/docs/DOC-44986
|
|
61
57
|
*
|
|
62
58
|
* @extends sap.ui.table.Table
|
|
63
|
-
* @version 1.
|
|
59
|
+
* @version 1.102.0
|
|
64
60
|
*
|
|
65
61
|
* @constructor
|
|
66
62
|
* @public
|
|
@@ -168,7 +164,7 @@ sap.ui.define([
|
|
|
168
164
|
dirty : {type : "boolean", group : "Appearance", defaultValue : null, deprecated: true}
|
|
169
165
|
},
|
|
170
166
|
designtime: "sap/ui/table/designtime/AnalyticalTable.designtime"
|
|
171
|
-
}, renderer:
|
|
167
|
+
}, renderer: TableRenderer});
|
|
172
168
|
|
|
173
169
|
/**
|
|
174
170
|
* @inheritDoc
|
|
@@ -20,7 +20,6 @@ sap.ui.define([
|
|
|
20
20
|
"sap/ui/model/type/String",
|
|
21
21
|
"sap/base/util/ObjectPath",
|
|
22
22
|
"sap/base/util/JSTokenizer",
|
|
23
|
-
"sap/base/util/deepClone",
|
|
24
23
|
"sap/base/Log"
|
|
25
24
|
], function(
|
|
26
25
|
ColumnMenu,
|
|
@@ -37,7 +36,6 @@ sap.ui.define([
|
|
|
37
36
|
StringType,
|
|
38
37
|
ObjectPath,
|
|
39
38
|
JSTokenizer,
|
|
40
|
-
deepClone,
|
|
41
39
|
Log
|
|
42
40
|
) {
|
|
43
41
|
"use strict";
|
|
@@ -70,7 +68,7 @@ sap.ui.define([
|
|
|
70
68
|
* @class
|
|
71
69
|
* The column allows you to define column specific properties that will be applied when rendering the table.
|
|
72
70
|
* @extends sap.ui.core.Element
|
|
73
|
-
* @version 1.
|
|
71
|
+
* @version 1.102.0
|
|
74
72
|
*
|
|
75
73
|
* @constructor
|
|
76
74
|
* @public
|
|
@@ -594,10 +592,10 @@ sap.ui.define([
|
|
|
594
592
|
* happens for generated menus.
|
|
595
593
|
* @private
|
|
596
594
|
*/
|
|
597
|
-
Column.prototype.
|
|
595
|
+
Column.prototype._invalidateMenu = function() {
|
|
598
596
|
var oMenu = this.getAggregation("menu");
|
|
599
597
|
|
|
600
|
-
if (this._bMenuIsColumnMenu) {
|
|
598
|
+
if (oMenu && this._bMenuIsColumnMenu) {
|
|
601
599
|
oMenu._invalidate();
|
|
602
600
|
}
|
|
603
601
|
};
|
|
@@ -617,7 +615,7 @@ sap.ui.define([
|
|
|
617
615
|
|| (oTable ? oTable.getShowColumnVisibilityMenu() : false)
|
|
618
616
|
|| this.isSortableByMenu()
|
|
619
617
|
|| this.isFilterableByMenu()
|
|
620
|
-
|| this.
|
|
618
|
+
|| this.isGroupableByMenu();
|
|
621
619
|
|
|
622
620
|
if (bHasOwnItems) {
|
|
623
621
|
return true;
|
|
@@ -667,7 +665,7 @@ sap.ui.define([
|
|
|
667
665
|
*
|
|
668
666
|
* @returns {boolean}
|
|
669
667
|
*/
|
|
670
|
-
Column.prototype.
|
|
668
|
+
Column.prototype.isGroupableByMenu = function() {
|
|
671
669
|
var oTable = this.getParent();
|
|
672
670
|
return !!(oTable && oTable.getEnableGrouping && oTable.getEnableGrouping() && this.getSortProperty());
|
|
673
671
|
};
|
|
@@ -698,10 +696,20 @@ sap.ui.define([
|
|
|
698
696
|
*/
|
|
699
697
|
Column.prototype.setSortProperty = function(sValue) {
|
|
700
698
|
this.setProperty("sortProperty", sValue);
|
|
701
|
-
this.
|
|
699
|
+
this._invalidateMenu();
|
|
702
700
|
return this;
|
|
703
701
|
};
|
|
704
702
|
|
|
703
|
+
/*
|
|
704
|
+
* @see JSDoc generated by SAPUI5 control API generator
|
|
705
|
+
*/
|
|
706
|
+
Column.prototype.setShowSortMenuEntry = function(sValue) {
|
|
707
|
+
if (this.getShowSortMenuEntry() != sValue) {
|
|
708
|
+
this._invalidateMenu();
|
|
709
|
+
}
|
|
710
|
+
return this.setProperty("showSortMenuEntry", sValue);
|
|
711
|
+
};
|
|
712
|
+
|
|
705
713
|
/*
|
|
706
714
|
* @see JSDoc generated by SAPUI5 control API generator
|
|
707
715
|
*/
|
|
@@ -724,10 +732,20 @@ sap.ui.define([
|
|
|
724
732
|
* @see JSDoc generated by SAPUI5 control API generator
|
|
725
733
|
*/
|
|
726
734
|
Column.prototype.setFilterProperty = function(sValue) {
|
|
727
|
-
this.
|
|
735
|
+
this._invalidateMenu();
|
|
728
736
|
return this.setProperty("filterProperty", sValue);
|
|
729
737
|
};
|
|
730
738
|
|
|
739
|
+
/*
|
|
740
|
+
* @see JSDoc generated by SAPUI5 control API generator
|
|
741
|
+
*/
|
|
742
|
+
Column.prototype.setShowFilterMenuEntry = function(sValue) {
|
|
743
|
+
if (this.getShowFilterMenuEntry() != sValue) {
|
|
744
|
+
this._invalidateMenu();
|
|
745
|
+
}
|
|
746
|
+
return this.setProperty("showFilterMenuEntry", sValue);
|
|
747
|
+
};
|
|
748
|
+
|
|
731
749
|
/*
|
|
732
750
|
* @see JSDoc generated by SAPUI5 control API generator
|
|
733
751
|
*/
|
|
@@ -1301,8 +1319,7 @@ sap.ui.define([
|
|
|
1301
1319
|
* Returns the <code>sap.ui.core.IColumnHeaderMenu<\code>, which is the current target of the association <code>columnHeaderMenu</code>, or null.
|
|
1302
1320
|
*
|
|
1303
1321
|
* @returns {sap.ui.core.IColumnHeaderMenu}
|
|
1304
|
-
* @
|
|
1305
|
-
* @public
|
|
1322
|
+
* @private
|
|
1306
1323
|
*/
|
|
1307
1324
|
Column.prototype.getColumnHeaderMenu = function () {
|
|
1308
1325
|
return sap.ui.getCore().byId(this.getAssociation("columnHeaderMenu"));
|
|
@@ -11,12 +11,11 @@ sap.ui.define([
|
|
|
11
11
|
'sap/ui/unified/MenuItem',
|
|
12
12
|
'sap/ui/unified/MenuTextFieldItem',
|
|
13
13
|
"sap/ui/unified/MenuRenderer",
|
|
14
|
-
'sap/ui/Device',
|
|
15
14
|
'./utils/TableUtils',
|
|
16
15
|
"sap/base/assert",
|
|
17
16
|
"sap/ui/thirdparty/jquery"
|
|
18
17
|
],
|
|
19
|
-
function(library, Menu, MenuItem, MenuTextFieldItem, MenuRenderer,
|
|
18
|
+
function(library, Menu, MenuItem, MenuTextFieldItem, MenuRenderer, TableUtils, assert, jQuery) {
|
|
20
19
|
"use strict";
|
|
21
20
|
|
|
22
21
|
/**
|
|
@@ -40,7 +39,7 @@ sap.ui.define([
|
|
|
40
39
|
* @class
|
|
41
40
|
* The column menu provides all common actions that can be performed on a column.
|
|
42
41
|
* @extends sap.ui.unified.Menu
|
|
43
|
-
* @version 1.
|
|
42
|
+
* @version 1.102.0
|
|
44
43
|
*
|
|
45
44
|
* @constructor
|
|
46
45
|
* @public
|
|
@@ -51,7 +50,7 @@ sap.ui.define([
|
|
|
51
50
|
metadata : {
|
|
52
51
|
library : "sap.ui.table"
|
|
53
52
|
},
|
|
54
|
-
renderer:
|
|
53
|
+
renderer: MenuRenderer
|
|
55
54
|
});
|
|
56
55
|
|
|
57
56
|
|
|
@@ -146,6 +145,8 @@ sap.ui.define([
|
|
|
146
145
|
* @private
|
|
147
146
|
*/
|
|
148
147
|
ColumnMenu.prototype._invalidate = function() {
|
|
148
|
+
this._removeColumnVisibilityFromAggregation();
|
|
149
|
+
this.destroyItems();
|
|
149
150
|
this._bInvalidated = true;
|
|
150
151
|
};
|
|
151
152
|
|
|
@@ -157,8 +158,6 @@ sap.ui.define([
|
|
|
157
158
|
ColumnMenu.prototype.open = function() {
|
|
158
159
|
if (this._bInvalidated) {
|
|
159
160
|
this._bInvalidated = false;
|
|
160
|
-
this._removeColumnVisibilityFromAggregation();
|
|
161
|
-
this.destroyItems();
|
|
162
161
|
this._addMenuItems();
|
|
163
162
|
} else if (this._oColumn) {
|
|
164
163
|
this._addColumnVisibilityMenuItem();
|
|
@@ -258,7 +257,7 @@ sap.ui.define([
|
|
|
258
257
|
ColumnMenu.prototype._addGroupMenuItem = function() {
|
|
259
258
|
var oColumn = this._oColumn;
|
|
260
259
|
|
|
261
|
-
if (oColumn.
|
|
260
|
+
if (oColumn.isGroupableByMenu()) {
|
|
262
261
|
var oTable = this._oTable;
|
|
263
262
|
|
|
264
263
|
this.addItem(this._createMenuItem(
|
|
@@ -333,7 +332,6 @@ sap.ui.define([
|
|
|
333
332
|
|
|
334
333
|
/**
|
|
335
334
|
* Factory method for the column visibility menu item.
|
|
336
|
-
* @param {string} sId the id of the menu item.
|
|
337
335
|
* @param {sap.ui.table.Column} oColumn the associated column to the menu item.
|
|
338
336
|
* @returns {sap.ui.unified.MenuItem} the created menu item.
|
|
339
337
|
* @private
|
|
@@ -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.
|
|
35
|
+
* @version 1.102.0
|
|
36
36
|
*
|
|
37
37
|
* @constructor
|
|
38
38
|
* @private
|
|
@@ -76,7 +76,8 @@ sap.ui.define([
|
|
|
76
76
|
allowPreventDefault: true
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
-
}
|
|
79
|
+
},
|
|
80
|
+
renderer: Renderer
|
|
80
81
|
});
|
|
81
82
|
|
|
82
83
|
/*
|
package/src/sap/ui/table/Row.js
CHANGED
|
@@ -135,7 +135,7 @@ sap.ui.define([
|
|
|
135
135
|
* @class
|
|
136
136
|
* The row.
|
|
137
137
|
* @extends sap.ui.core.Element
|
|
138
|
-
* @version 1.
|
|
138
|
+
* @version 1.102.0
|
|
139
139
|
*
|
|
140
140
|
* @constructor
|
|
141
141
|
* @public
|
|
@@ -688,7 +688,8 @@ sap.ui.define([
|
|
|
688
688
|
* The <code>RowAction</code> is generated based on a template. Manipulations of the object or its items are not supported.
|
|
689
689
|
*
|
|
690
690
|
* @return {sap.ui.table.RowAction} The related <code>RowAction</code> of the row.
|
|
691
|
-
* @
|
|
691
|
+
* @private
|
|
692
|
+
* @ui5-restricted For testing purposes only
|
|
692
693
|
*/
|
|
693
694
|
Row.prototype.getRowAction = function() {
|
|
694
695
|
return this.getAggregation("_rowAction");
|
|
@@ -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.
|
|
38
|
+
* @version 1.102.0
|
|
39
39
|
*
|
|
40
40
|
* @constructor
|
|
41
41
|
* @public
|
|
@@ -70,7 +70,8 @@ sap.ui.define([
|
|
|
70
70
|
_menu: {type: "sap.ui.unified.Menu", multiple: false, visibility: "hidden"}
|
|
71
71
|
},
|
|
72
72
|
events: {}
|
|
73
|
-
}
|
|
73
|
+
},
|
|
74
|
+
renderer: RowActionRenderer
|
|
74
75
|
});
|
|
75
76
|
|
|
76
77
|
RowAction.prototype.init = function() {
|
|
@@ -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.
|
|
27
|
+
* @version 1.102.0
|
|
28
28
|
*
|
|
29
29
|
* @constructor
|
|
30
30
|
* @public
|
|
@@ -92,7 +92,7 @@ sap.ui.define([
|
|
|
92
92
|
* the data model and binding being used.
|
|
93
93
|
* </p>
|
|
94
94
|
* @extends sap.ui.core.Control
|
|
95
|
-
* @version 1.
|
|
95
|
+
* @version 1.102.0
|
|
96
96
|
*
|
|
97
97
|
* @constructor
|
|
98
98
|
* @public
|
|
@@ -202,11 +202,12 @@ sap.ui.define([
|
|
|
202
202
|
navigationMode : {type : "sap.ui.table.NavigationMode", group : "Behavior", defaultValue : NavigationMode.Scrollbar, deprecated: true},
|
|
203
203
|
|
|
204
204
|
/**
|
|
205
|
-
*
|
|
206
|
-
*
|
|
205
|
+
* Defines how many additional (not yet visible) data records from the back-end system are pre-fetched to enable smooth scrolling.
|
|
206
|
+
* The threshold is always added to the <code>visibleRowCount</code>. If the <code>visibleRowCount</code> is 10 and the
|
|
207
207
|
* <code>threshold</code> is 100, there will be 110 records fetched with the initial load.
|
|
208
|
-
* If the <code>threshold</code> is lower than the
|
|
209
|
-
*
|
|
208
|
+
* If the <code>threshold</code> is lower than the number of rows in the scrollable area (<code>visibleRowCount</code> minus number of
|
|
209
|
+
* fixed rows), this number is used as the <code>threshold</code>.
|
|
210
|
+
* If the value is 0, thresholding is disabled.
|
|
210
211
|
*/
|
|
211
212
|
threshold : {type : "int", group : "Appearance", defaultValue : 100},
|
|
212
213
|
|
|
@@ -449,6 +450,14 @@ sap.ui.define([
|
|
|
449
450
|
*/
|
|
450
451
|
noData : {type : "sap.ui.core.Control", altTypes : ["string"], multiple : false},
|
|
451
452
|
|
|
453
|
+
/**
|
|
454
|
+
* The control that is shown in case the Table has no visible columns.
|
|
455
|
+
*
|
|
456
|
+
* @private
|
|
457
|
+
* @ui5-restricted sap.ui.mdc, sap.ui.comp
|
|
458
|
+
*/
|
|
459
|
+
_noColumnsMessage: {type : "sap.ui.core.Control", multiple : false, visibility: "hidden"},
|
|
460
|
+
|
|
452
461
|
/**
|
|
453
462
|
* Template for row actions. A template is decoupled from the row or table. Each time
|
|
454
463
|
* the template's properties or aggregations are changed, the template has to be applied again via
|
|
@@ -540,7 +549,7 @@ sap.ui.define([
|
|
|
540
549
|
/**
|
|
541
550
|
* binding context of the row which has been clicked so that selection has been changed
|
|
542
551
|
*/
|
|
543
|
-
rowContext : {type : "
|
|
552
|
+
rowContext : {type : "sap.ui.model.Context"},
|
|
544
553
|
|
|
545
554
|
/**
|
|
546
555
|
* array of row indices which selection has been changed (either selected or deselected)
|
|
@@ -870,7 +879,7 @@ sap.ui.define([
|
|
|
870
879
|
}
|
|
871
880
|
},
|
|
872
881
|
designtime: "sap/ui/table/designtime/Table.designtime"
|
|
873
|
-
}});
|
|
882
|
+
}, renderer: TableRenderer});
|
|
874
883
|
|
|
875
884
|
/**
|
|
876
885
|
* Gets content of aggregation <code>dragDropConfig</code> which defines the drag-and-drop configuration.
|
|
@@ -1269,7 +1278,7 @@ sap.ui.define([
|
|
|
1269
1278
|
|
|
1270
1279
|
var oSapUiTableCtrlScroll = oDomRef.querySelector(".sapUiTableCtrlScroll:not(.sapUiTableCHT)");
|
|
1271
1280
|
if (oSapUiTableCtrlScroll) {
|
|
1272
|
-
oSizes.tableCtrlScrollWidth = oSapUiTableCtrlScroll.
|
|
1281
|
+
oSizes.tableCtrlScrollWidth = oSapUiTableCtrlScroll.getBoundingClientRect().width;
|
|
1273
1282
|
}
|
|
1274
1283
|
|
|
1275
1284
|
var oSapUiTableRowHdrScr = oDomRef.querySelector(".sapUiTableRowHdrScr");
|
|
@@ -1279,7 +1288,7 @@ sap.ui.define([
|
|
|
1279
1288
|
|
|
1280
1289
|
var oCtrlScrDomRef = oDomRef.querySelector(".sapUiTableCtrlScr:not(.sapUiTableCHA)");
|
|
1281
1290
|
if (oCtrlScrDomRef) {
|
|
1282
|
-
oSizes.tableCtrlScrWidth = oCtrlScrDomRef.
|
|
1291
|
+
oSizes.tableCtrlScrWidth = oCtrlScrDomRef.getBoundingClientRect().width;
|
|
1283
1292
|
}
|
|
1284
1293
|
|
|
1285
1294
|
var oCtrlFixed = oDomRef.querySelector(".sapUiTableCtrlScrFixed:not(.sapUiTableCHA) > .sapUiTableCtrlFixed");
|
|
@@ -1348,6 +1357,7 @@ sap.ui.define([
|
|
|
1348
1357
|
|
|
1349
1358
|
/**
|
|
1350
1359
|
* Synchronizes the row heights.
|
|
1360
|
+
* @param {float[]} aRowItemHeights
|
|
1351
1361
|
* @param {boolean} bHeader update of column headers if true, otherwise update data rows.
|
|
1352
1362
|
* @private
|
|
1353
1363
|
*/
|
|
@@ -3517,7 +3527,7 @@ sap.ui.define([
|
|
|
3517
3527
|
*
|
|
3518
3528
|
* @returns {int} The actual fixed column count computed based on the column spans of the header, the width of the
|
|
3519
3529
|
* table and the width of the columns.
|
|
3520
|
-
* @
|
|
3530
|
+
* @private
|
|
3521
3531
|
*/
|
|
3522
3532
|
Table.prototype.getComputedFixedColumnCount = function() {
|
|
3523
3533
|
if (this._bIgnoreFixedColumnCount) {
|
|
@@ -3646,7 +3656,7 @@ sap.ui.define([
|
|
|
3646
3656
|
Table.prototype._invalidateColumnMenus = function() {
|
|
3647
3657
|
var aCols = this.getColumns();
|
|
3648
3658
|
for (var i = 0, l = aCols.length; i < l; i++) {
|
|
3649
|
-
aCols[i].
|
|
3659
|
+
aCols[i]._invalidateMenu();
|
|
3650
3660
|
}
|
|
3651
3661
|
};
|
|
3652
3662
|
|
|
@@ -3768,6 +3778,16 @@ sap.ui.define([
|
|
|
3768
3778
|
this.setAggregation("noData", vNoData, true);
|
|
3769
3779
|
var sNewNoDataText = TableUtils.getNoDataText(this);
|
|
3770
3780
|
|
|
3781
|
+
if (TableUtils.isA(vNoData, "sap.m.IllustratedMessage")) {
|
|
3782
|
+
var oNoColumnsMessage = this.getAggregation("_noColumnsMessage");
|
|
3783
|
+
if (!oNoColumnsMessage) {
|
|
3784
|
+
sap.ui.require(["sap/m/table/Util"], function(MTableUtil) {
|
|
3785
|
+
oNoColumnsMessage = MTableUtil.getNoColumnsIllustratedMessage();
|
|
3786
|
+
this.setAggregation("_noColumnsMessage", oNoColumnsMessage);
|
|
3787
|
+
}.bind(this));
|
|
3788
|
+
}
|
|
3789
|
+
}
|
|
3790
|
+
|
|
3771
3791
|
// Avoid table re-rendering if only the text is changed. If the NoData text was, or will be a control, the table must be re-rendered.
|
|
3772
3792
|
if (sOldNoDataText != null && sNewNoDataText != null) {
|
|
3773
3793
|
// Old and new NoData texts are plain strings, therefore we are able to directly update the DOM in case of a text change.
|
|
@@ -300,8 +300,10 @@ sap.ui.define(['sap/ui/core/Control', 'sap/ui/Device', './library', "./Column",
|
|
|
300
300
|
oTable._getAccRenderExtension().writeAriaAttributesFor(rm, oTable, "NODATA");
|
|
301
301
|
rm.openEnd();
|
|
302
302
|
|
|
303
|
-
|
|
304
|
-
|
|
303
|
+
var oNoContentMessage = TableUtils.getNoContentMessage(oTable);
|
|
304
|
+
|
|
305
|
+
if (oNoContentMessage instanceof Control) {
|
|
306
|
+
rm.renderControl(oNoContentMessage);
|
|
305
307
|
} else {
|
|
306
308
|
rm.openStart("span", oTable.getId() + "-noDataMsg");
|
|
307
309
|
rm.class("sapUiTableCtrlEmptyMsg");
|
|
@@ -40,7 +40,7 @@ sap.ui.define([
|
|
|
40
40
|
* @class
|
|
41
41
|
* The TreeTable control provides a comprehensive set of features to display hierarchical data.
|
|
42
42
|
* @extends sap.ui.table.Table
|
|
43
|
-
* @version 1.
|
|
43
|
+
* @version 1.102.0
|
|
44
44
|
*
|
|
45
45
|
* @constructor
|
|
46
46
|
* @public
|
|
@@ -152,7 +152,7 @@ sap.ui.define([
|
|
|
152
152
|
}
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
|
-
}, renderer:
|
|
155
|
+
}, renderer: TableRenderer});
|
|
156
156
|
|
|
157
157
|
|
|
158
158
|
/**
|
|
@@ -458,7 +458,7 @@ sap.ui.define([
|
|
|
458
458
|
/**
|
|
459
459
|
* Expands all nodes starting from the root level to the given level 'iLevel'.
|
|
460
460
|
*
|
|
461
|
-
* Only supported with ODataModel v2, when running in OperationMode.Client
|
|
461
|
+
* Only supported with ODataModel v2, when running in OperationMode.Client.
|
|
462
462
|
* Fully supported for <code>sap.ui.model.ClientTreeBinding</code>, e.g. if you are using a <code>sap.ui.model.json.JSONModel</code>.
|
|
463
463
|
*
|
|
464
464
|
* Please also see <code>sap.ui.model.odata.OperationMode</code>.
|
|
@@ -11,9 +11,8 @@ sap.ui.define([
|
|
|
11
11
|
"../utils/TableUtils",
|
|
12
12
|
"../library",
|
|
13
13
|
"sap/ui/core/Control",
|
|
14
|
-
"sap/ui/Device",
|
|
15
14
|
"sap/ui/thirdparty/jquery"
|
|
16
|
-
], function(ExtensionBase, AccRenderExtension, TableUtils, library, Control,
|
|
15
|
+
], function(ExtensionBase, AccRenderExtension, TableUtils, library, Control, jQuery) {
|
|
17
16
|
"use strict";
|
|
18
17
|
|
|
19
18
|
// shortcuts
|
|
@@ -866,8 +865,22 @@ sap.ui.define([
|
|
|
866
865
|
|
|
867
866
|
case AccExtension.ELEMENTTYPES.NODATA: //The no data container
|
|
868
867
|
mAttributes["role"] = "gridcell";
|
|
869
|
-
var
|
|
870
|
-
|
|
868
|
+
var oNoContentMessage = TableUtils.getNoContentMessage(oTable);
|
|
869
|
+
var aLabels = [];
|
|
870
|
+
|
|
871
|
+
if (oNoContentMessage instanceof Control) {
|
|
872
|
+
if (oNoContentMessage.isA("sap.m.IllustratedMessage")) {
|
|
873
|
+
var oAccRef = oNoContentMessage.getAccessibilityReferences();
|
|
874
|
+
aLabels.push(oAccRef.title);
|
|
875
|
+
aLabels.push(oAccRef.description);
|
|
876
|
+
} else {
|
|
877
|
+
aLabels.push(oNoContentMessage.getId());
|
|
878
|
+
}
|
|
879
|
+
} else {
|
|
880
|
+
aLabels.push(sTableId + "-noDataMsg");
|
|
881
|
+
}
|
|
882
|
+
|
|
883
|
+
mAttributes["aria-labelledby"] = aLabels;
|
|
871
884
|
addAriaForOverlayOrNoData(oTable, mAttributes, true, false);
|
|
872
885
|
break;
|
|
873
886
|
|
|
@@ -907,7 +920,7 @@ sap.ui.define([
|
|
|
907
920
|
* @class Extension for sap.ui.table.Table which handles ACC related things.
|
|
908
921
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
909
922
|
* @author SAP SE
|
|
910
|
-
* @version 1.
|
|
923
|
+
* @version 1.102.0
|
|
911
924
|
* @constructor
|
|
912
925
|
* @private
|
|
913
926
|
* @alias sap.ui.table.extensions.Accessibility
|
|
@@ -1187,7 +1200,7 @@ sap.ui.define([
|
|
|
1187
1200
|
*
|
|
1188
1201
|
* @param {sap.ui.table.Row} oRow Instance of the row.
|
|
1189
1202
|
* @param {jQuery} $Ref The jQuery references to the DOM areas of the row.
|
|
1190
|
-
* @param {string}
|
|
1203
|
+
* @param {string} sTextMouse The text for the tooltip.
|
|
1191
1204
|
* @public
|
|
1192
1205
|
*/
|
|
1193
1206
|
AccExtension.prototype.updateRowTooltips = function(oRow, $Ref, sTextMouse) {
|