@openui5/sap.ui.table 1.123.1 → 1.124.1
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 +9 -1
- package/package.json +3 -3
- package/src/sap/ui/table/.library +1 -1
- package/src/sap/ui/table/AnalyticalColumn.js +40 -40
- package/src/sap/ui/table/AnalyticalColumnMenu.js +11 -11
- package/src/sap/ui/table/AnalyticalTable.js +107 -107
- package/src/sap/ui/table/Column.js +83 -83
- package/src/sap/ui/table/ColumnMenu.js +54 -54
- package/src/sap/ui/table/CreationRow.js +29 -29
- package/src/sap/ui/table/CreationRowRenderer.js +21 -21
- package/src/sap/ui/table/Row.js +55 -56
- package/src/sap/ui/table/RowAction.js +27 -27
- package/src/sap/ui/table/RowActionItem.js +7 -7
- package/src/sap/ui/table/RowActionRenderer.js +3 -3
- package/src/sap/ui/table/RowSettings.js +28 -37
- package/src/sap/ui/table/Table.js +263 -266
- package/src/sap/ui/table/TablePersoController.js +46 -46
- package/src/sap/ui/table/TableRenderer.js +112 -113
- package/src/sap/ui/table/TreeTable.js +16 -16
- package/src/sap/ui/table/designtime/Table.designtime.js +2 -2
- package/src/sap/ui/table/extensions/Accessibility.js +185 -181
- package/src/sap/ui/table/extensions/AccessibilityRender.js +15 -15
- package/src/sap/ui/table/extensions/DragAndDrop.js +47 -47
- package/src/sap/ui/table/extensions/ExtensionBase.js +9 -9
- package/src/sap/ui/table/extensions/Keyboard.js +40 -40
- package/src/sap/ui/table/extensions/KeyboardDelegate.js +257 -264
- package/src/sap/ui/table/extensions/Pointer.js +108 -109
- package/src/sap/ui/table/extensions/Scrolling.js +289 -285
- package/src/sap/ui/table/extensions/ScrollingIOS.js +50 -50
- package/src/sap/ui/table/extensions/Synchronization.js +32 -32
- package/src/sap/ui/table/library.js +12 -12
- package/src/sap/ui/table/menus/ColumnHeaderMenuAdapter.js +9 -9
- package/src/sap/ui/table/menus/LegacyColumnMenuAdapter.js +35 -37
- package/src/sap/ui/table/menus/MobileColumnHeaderMenuAdapter.js +23 -23
- package/src/sap/ui/table/messagebundle_sh.properties +9 -9
- package/src/sap/ui/table/plugins/BindingSelection.js +26 -25
- package/src/sap/ui/table/plugins/MultiSelectionPlugin.js +77 -32
- package/src/sap/ui/table/plugins/ODataV4Selection.js +81 -35
- package/src/sap/ui/table/plugins/PluginBase.js +12 -12
- package/src/sap/ui/table/plugins/SelectionModelSelection.js +13 -12
- package/src/sap/ui/table/plugins/SelectionPlugin.js +3 -3
- package/src/sap/ui/table/plugins/V4Aggregation.js +38 -38
- package/src/sap/ui/table/rowmodes/Auto.js +59 -61
- package/src/sap/ui/table/rowmodes/Fixed.js +18 -18
- package/src/sap/ui/table/rowmodes/Interactive.js +42 -44
- package/src/sap/ui/table/rowmodes/RowMode.js +64 -63
- package/src/sap/ui/table/rowmodes/Type.js +1 -1
- package/src/sap/ui/table/rowmodes/Variable.js +4 -4
- package/src/sap/ui/table/rules/Accessibility.support.js +15 -16
- package/src/sap/ui/table/rules/Binding.support.js +11 -11
- package/src/sap/ui/table/rules/ColumnTemplate.support.js +10 -10
- package/src/sap/ui/table/rules/Plugins.support.js +7 -7
- package/src/sap/ui/table/rules/Rows.support.js +29 -29
- package/src/sap/ui/table/rules/TableHelper.support.js +10 -10
- package/src/sap/ui/table/themes/base/library.source.less +2 -0
- package/src/sap/ui/table/utils/TableUtils.js +130 -128
- package/src/sap/ui/table/utils/_BindingUtils.js +7 -7
- package/src/sap/ui/table/utils/_ColumnUtils.js +98 -97
- package/src/sap/ui/table/utils/_GroupingUtils.js +56 -56
- package/src/sap/ui/table/utils/_HookUtils.js +26 -26
- package/src/sap/ui/table/utils/_MenuUtils.js +19 -19
|
@@ -20,11 +20,11 @@ sap.ui.define([
|
|
|
20
20
|
) {
|
|
21
21
|
"use strict";
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
const Categories = SupportLibrary.Categories;
|
|
24
|
+
const Severity = SupportLibrary.Severity;
|
|
25
25
|
|
|
26
26
|
function checkDensity($Source, sTargetClass, sMessage, oIssueManager) {
|
|
27
|
-
|
|
27
|
+
let bFound = false;
|
|
28
28
|
$Source.each(function() {
|
|
29
29
|
if (jQuery(this).closest(sTargetClass).length) {
|
|
30
30
|
bFound = true;
|
|
@@ -39,7 +39,7 @@ sap.ui.define([
|
|
|
39
39
|
/*
|
|
40
40
|
* Checks whether content densities are used correctly.
|
|
41
41
|
*/
|
|
42
|
-
|
|
42
|
+
const oContentDensity = SupportHelper.normalizeRule({
|
|
43
43
|
id: "ContentDensity",
|
|
44
44
|
minversion: "1.38",
|
|
45
45
|
categories: [Categories.Usage],
|
|
@@ -51,10 +51,10 @@ sap.ui.define([
|
|
|
51
51
|
SupportHelper.createDocuRef("Documentation: Content Densities", "topic/e54f729da8e3405fae5e4fe8ae7784c1")
|
|
52
52
|
],
|
|
53
53
|
check: function(oIssueManager, oCoreFacade, oScope) {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
54
|
+
const $Document = jQuery("html");
|
|
55
|
+
const $Cozy = $Document.find(".sapUiSizeCozy");
|
|
56
|
+
const $Compact = $Document.find(".sapUiSizeCompact");
|
|
57
|
+
const $Condensed = $Document.find(".sapUiSizeCondensed");
|
|
58
58
|
|
|
59
59
|
checkDensity($Compact, ".sapUiSizeCozy", "'Compact' content density is used within 'Cozy' area.", oIssueManager);
|
|
60
60
|
checkDensity($Cozy, ".sapUiSizeCompact", "'Cozy' content density is used within 'Compact' area.", oIssueManager);
|
|
@@ -62,7 +62,7 @@ sap.ui.define([
|
|
|
62
62
|
checkDensity($Cozy, ".sapUiSizeCondensed", "'Cozy' content density is used within 'Condensed' area.", oIssueManager);
|
|
63
63
|
|
|
64
64
|
if ($Condensed.length > 0) {
|
|
65
|
-
|
|
65
|
+
const bFound = checkDensity($Condensed, ".sapUiSizeCompact", oIssueManager);
|
|
66
66
|
if (!bFound) {
|
|
67
67
|
SupportHelper.reportIssue(oIssueManager, "'Condensed' content density must be used in combination with 'Compact'.",
|
|
68
68
|
Severity.High);
|
|
@@ -81,7 +81,7 @@ sap.ui.define([
|
|
|
81
81
|
/*
|
|
82
82
|
* Checks whether the currently rendered rows have the expected height.
|
|
83
83
|
*/
|
|
84
|
-
|
|
84
|
+
const oRowHeights = SupportHelper.normalizeRule({
|
|
85
85
|
id: "RowHeights",
|
|
86
86
|
minversion: "1.38",
|
|
87
87
|
categories: [Categories.Usage],
|
|
@@ -96,26 +96,26 @@ sap.ui.define([
|
|
|
96
96
|
SupportHelper.createFioriGuidelineResolutionEntry()
|
|
97
97
|
],
|
|
98
98
|
check: function(oIssueManager, oCoreFacade, oScope) {
|
|
99
|
-
|
|
100
|
-
|
|
99
|
+
const aTables = SupportHelper.find(oScope, true, "sap.ui.table.Table");
|
|
100
|
+
const bIsZoomedInChrome = Device.browser.chrome && window.devicePixelRatio !== 1;
|
|
101
101
|
|
|
102
|
-
for (
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
102
|
+
for (let i = 0; i < aTables.length; i++) {
|
|
103
|
+
const aVisibleRows = aTables[i].getRows();
|
|
104
|
+
const iExpectedRowHeight = aTables[i]._getBaseRowHeight();
|
|
105
|
+
let bUnexpectedRowHeightDetected = false;
|
|
106
106
|
|
|
107
|
-
for (
|
|
108
|
-
|
|
109
|
-
|
|
107
|
+
for (let j = 0; j < aVisibleRows.length; j++) {
|
|
108
|
+
const oRowElement = aVisibleRows[j].getDomRef();
|
|
109
|
+
const oRowElementFixedPart = aVisibleRows[j].getDomRef("fixed");
|
|
110
110
|
|
|
111
111
|
if (oRowElement) {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
112
|
+
const nActualRowHeight = oRowElement.getBoundingClientRect().height;
|
|
113
|
+
const nActualRowHeightFixedPart = oRowElementFixedPart ? oRowElementFixedPart.getBoundingClientRect().height : null;
|
|
114
|
+
let nHeightToReport = nActualRowHeight;
|
|
115
115
|
|
|
116
116
|
if (bIsZoomedInChrome) {
|
|
117
|
-
|
|
118
|
-
|
|
117
|
+
const nHeightDeviation = Math.abs(iExpectedRowHeight - nActualRowHeight);
|
|
118
|
+
const nHeightDeviationFixedPart = Math.abs(nActualRowHeightFixedPart - nActualRowHeight);
|
|
119
119
|
|
|
120
120
|
// If zoomed in Chrome, the actual height may deviate from the expected height by less than 1 pixel. Any higher
|
|
121
121
|
// deviation shall be considered as defective.
|
|
@@ -149,7 +149,7 @@ sap.ui.define([
|
|
|
149
149
|
* Checks the configuration of the sap.f.DynamicPage. If the DynamicPage contains a table with row mode <code>Auto</code>, the
|
|
150
150
|
* <code>fitContent</code> property of the DynamicPage should be set to true, otherwise false.
|
|
151
151
|
*/
|
|
152
|
-
|
|
152
|
+
const oDynamicPageConfiguration = SupportHelper.normalizeRule({
|
|
153
153
|
id: "DynamicPageConfiguration",
|
|
154
154
|
minversion: "1.38",
|
|
155
155
|
categories: [Categories.Usage],
|
|
@@ -161,7 +161,7 @@ sap.ui.define([
|
|
|
161
161
|
SupportHelper.createDocuRef("API Reference: sap.f.DynamicPage#getFitContent", "#/api/sap.f.DynamicPage/methods/getFitContent")
|
|
162
162
|
],
|
|
163
163
|
check: function(oIssueManager, oCoreFacade, oScope) {
|
|
164
|
-
|
|
164
|
+
const aTables = SupportHelper.find(oScope, true, "sap.ui.table.Table");
|
|
165
165
|
|
|
166
166
|
function checkAllParentDynamicPages(oControl, fnCheck) {
|
|
167
167
|
if (oControl) {
|
|
@@ -173,8 +173,8 @@ sap.ui.define([
|
|
|
173
173
|
}
|
|
174
174
|
|
|
175
175
|
function checkConfiguration(oTable, oDynamicPage) {
|
|
176
|
-
|
|
177
|
-
|
|
176
|
+
const vRowMode = oTable.getRowMode();
|
|
177
|
+
let bIsTableInAutoMode = false;
|
|
178
178
|
|
|
179
179
|
/**
|
|
180
180
|
* @deprecated As of version 1.119
|
|
@@ -198,7 +198,7 @@ sap.ui.define([
|
|
|
198
198
|
}
|
|
199
199
|
}
|
|
200
200
|
|
|
201
|
-
for (
|
|
201
|
+
for (let i = 0; i < aTables.length; i++) {
|
|
202
202
|
checkAllParentDynamicPages(aTables[i], checkConfiguration.bind(null, aTables[i]));
|
|
203
203
|
}
|
|
204
204
|
}
|
|
@@ -11,10 +11,10 @@ sap.ui.define([
|
|
|
11
11
|
], function(SupportLib, Log) {
|
|
12
12
|
"use strict";
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
const Severity = SupportLib.Severity;
|
|
15
|
+
const Audiences = SupportLib.Audiences; // Control, Internal, Application
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
const TableSupportHelper = {
|
|
18
18
|
DOCU_REF: "https://ui5.sap.com/",
|
|
19
19
|
|
|
20
20
|
/**
|
|
@@ -96,10 +96,10 @@ sap.ui.define([
|
|
|
96
96
|
* @returns {sap.ui.core.Element[]} All existing control instances
|
|
97
97
|
*/
|
|
98
98
|
find: function(oScope, bVisibleOnly, sType) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
for (
|
|
102
|
-
|
|
99
|
+
const mElements = oScope.getElements();
|
|
100
|
+
const aResult = [];
|
|
101
|
+
for (const n in mElements) {
|
|
102
|
+
const oElement = mElements[n];
|
|
103
103
|
if (oElement.isA(sType)) {
|
|
104
104
|
if (bVisibleOnly && oElement.getDomRef() || !bVisibleOnly) {
|
|
105
105
|
aResult.push(oElement);
|
|
@@ -129,9 +129,9 @@ sap.ui.define([
|
|
|
129
129
|
* otherwise the next entry is passed for checking.
|
|
130
130
|
*/
|
|
131
131
|
checkLogEntries: function(fnFilter, fnCheck) {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
for (
|
|
132
|
+
const aLog = Log.getLogEntries(); //oScope.getLoggedObjects(); /*getLoggedObjects returns only log entries with supportinfo*/
|
|
133
|
+
let oLogEntry;
|
|
134
|
+
for (let i = 0; i < aLog.length; i++) {
|
|
135
135
|
oLogEntry = aLog[i];
|
|
136
136
|
if (fnFilter(oLogEntry)) {
|
|
137
137
|
if (fnCheck(oLogEntry)) {
|
|
@@ -44,6 +44,8 @@
|
|
|
44
44
|
@_sap_ui_table_NavigationIcon: navigation-right-arrow;
|
|
45
45
|
@_sap_ui_table_DeleteIcon: sys-cancel;
|
|
46
46
|
@_sap_ui_table_ClearSelectionIcon: clear-all;
|
|
47
|
+
@_sap_ui_table_AllSelectedIcon: complete;
|
|
48
|
+
@_sap_ui_table_CheckboxIcon: border;
|
|
47
49
|
|
|
48
50
|
@import "Table.less";
|
|
49
51
|
@import "Row.less";
|