@openui5/sap.ui.table 1.134.0 → 1.136.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/REUSE.toml +649 -0
- package/THIRDPARTY.txt +23 -23
- package/package.json +3 -3
- package/src/sap/ui/table/.library +2 -2
- package/src/sap/ui/table/AnalyticalColumn.js +2 -2
- package/src/sap/ui/table/AnalyticalColumnMenu.js +2 -2
- package/src/sap/ui/table/AnalyticalTable.js +4 -4
- package/src/sap/ui/table/Column.js +11 -3
- package/src/sap/ui/table/ColumnMenu.js +2 -2
- package/src/sap/ui/table/CreationRow.js +2 -2
- package/src/sap/ui/table/CreationRowRenderer.js +1 -1
- package/src/sap/ui/table/Row.js +24 -33
- package/src/sap/ui/table/RowAction.js +2 -2
- package/src/sap/ui/table/RowActionItem.js +2 -2
- package/src/sap/ui/table/RowActionRenderer.js +1 -1
- package/src/sap/ui/table/RowSettings.js +2 -2
- package/src/sap/ui/table/Table.js +71 -113
- package/src/sap/ui/table/TablePersoController.js +2 -2
- package/src/sap/ui/table/TableRenderer.js +15 -16
- package/src/sap/ui/table/TreeTable.js +2 -2
- package/src/sap/ui/table/designtime/AnalyticalTable.designtime.js +1 -1
- package/src/sap/ui/table/designtime/Table.designtime.js +1 -1
- package/src/sap/ui/table/designtime/library.designtime.js +1 -1
- package/src/sap/ui/table/extensions/Accessibility.js +8 -7
- package/src/sap/ui/table/extensions/AccessibilityRender.js +3 -4
- package/src/sap/ui/table/extensions/DragAndDrop.js +2 -2
- package/src/sap/ui/table/extensions/ExtensionBase.js +2 -2
- package/src/sap/ui/table/extensions/Keyboard.js +2 -2
- package/src/sap/ui/table/extensions/KeyboardDelegate.js +157 -402
- package/src/sap/ui/table/extensions/Pointer.js +4 -6
- package/src/sap/ui/table/extensions/Scrolling.js +47 -22
- package/src/sap/ui/table/extensions/ScrollingIOS.js +2 -2
- package/src/sap/ui/table/extensions/Synchronization.js +2 -2
- package/src/sap/ui/table/i18n/interaction.xml +254 -0
- package/src/sap/ui/table/library.js +15 -36
- package/src/sap/ui/table/library.support.js +1 -1
- package/src/sap/ui/table/menus/AnalyticalTableContextMenu.js +2 -2
- package/src/sap/ui/table/menus/ColumnHeaderMenuAdapter.js +2 -2
- package/src/sap/ui/table/menus/ContextMenu.js +2 -2
- package/src/sap/ui/table/menus/LegacyColumnMenuAdapter.js +1 -1
- package/src/sap/ui/table/menus/MobileColumnHeaderMenuAdapter.js +2 -2
- package/src/sap/ui/table/messagebundle_bg.properties +1 -1
- package/src/sap/ui/table/plugins/BindingSelection.js +34 -34
- package/src/sap/ui/table/plugins/MultiSelectionPlugin.js +38 -32
- package/src/sap/ui/table/plugins/ODataV4Selection.js +217 -101
- package/src/sap/ui/table/plugins/PluginBase.js +53 -140
- package/src/sap/ui/table/plugins/SelectionMode.js +35 -0
- package/src/sap/ui/table/plugins/SelectionModelSelection.js +29 -36
- package/src/sap/ui/table/plugins/SelectionPlugin.js +36 -36
- package/src/sap/ui/table/plugins/V4Aggregation.js +31 -38
- package/src/sap/ui/table/rowmodes/Auto.js +2 -2
- package/src/sap/ui/table/rowmodes/Fixed.js +2 -2
- package/src/sap/ui/table/rowmodes/Interactive.js +2 -2
- package/src/sap/ui/table/rowmodes/RowMode.js +2 -4
- package/src/sap/ui/table/rowmodes/Type.js +1 -1
- package/src/sap/ui/table/rowmodes/Variable.js +2 -2
- package/src/sap/ui/table/rules/Accessibility.support.js +1 -1
- package/src/sap/ui/table/rules/Binding.support.js +1 -1
- package/src/sap/ui/table/rules/ColumnTemplate.support.js +1 -1
- package/src/sap/ui/table/rules/Plugins.support.js +1 -1
- package/src/sap/ui/table/rules/Rows.support.js +1 -1
- package/src/sap/ui/table/rules/TableHelper.support.js +1 -1
- package/src/sap/ui/table/themes/base/Cell.less +66 -48
- package/src/sap/ui/table/themes/base/CreationRow.less +10 -8
- package/src/sap/ui/table/themes/base/DragDrop.less +34 -31
- package/src/sap/ui/table/themes/base/Grouping.less +23 -14
- package/src/sap/ui/table/themes/base/Row.less +6 -6
- package/src/sap/ui/table/themes/base/RowAction.less +2 -2
- package/src/sap/ui/table/themes/base/RowHighlight.less +15 -15
- package/src/sap/ui/table/themes/base/RowSelection.less +13 -8
- package/src/sap/ui/table/themes/base/Scrolling.less +76 -25
- package/src/sap/ui/table/themes/base/Table.less +63 -46
- package/src/sap/ui/table/themes/base/library.source.less +4 -4
- package/src/sap/ui/table/themes/sap_hcb/library.source.less +1 -1
- package/src/sap/ui/table/utils/TableUtils.js +6 -7
- package/src/sap/ui/table/utils/_BindingUtils.js +2 -2
- package/src/sap/ui/table/utils/_ColumnUtils.js +2 -2
- package/src/sap/ui/table/utils/_GroupingUtils.js +2 -2
- package/src/sap/ui/table/utils/_HookUtils.js +2 -2
- package/src/sap/ui/table/utils/_MenuUtils.js +2 -2
- package/ui5.yaml +1 -1
- package/.reuse/dep5 +0 -471
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright
|
|
3
|
+
* (c) Copyright 2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
@@ -13,22 +13,31 @@ sap.ui.define([
|
|
|
13
13
|
"use strict";
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* @class
|
|
17
|
+
* Integrates the aggregation information of the {@link sap.ui.model.odata.v4.ODataListBinding} and the table. The table is enabled to visualize
|
|
18
|
+
* group levels and sums according to that information. See {@link sap.ui.model.odata.v4.ODataListBinding#setAggregation} for details.
|
|
19
|
+
*
|
|
20
|
+
* This plugin only works in combination with a <code>sap.ui.model.odata.v4.ODataModel</code>. Do not add it to a table that is bound to another
|
|
21
|
+
* model.
|
|
22
|
+
* @extends sap.ui.core.Element
|
|
17
23
|
*
|
|
18
|
-
* @class TODO
|
|
19
|
-
* @extends sap.ui.table.plugins.PluginBase
|
|
20
24
|
* @author SAP SE
|
|
21
|
-
* @version 1.
|
|
25
|
+
* @version 1.136.0
|
|
26
|
+
*
|
|
22
27
|
* @private
|
|
23
|
-
* @since 1.76
|
|
24
|
-
* @ui5-restricted sap.ui.mdc
|
|
25
28
|
* @alias sap.ui.table.plugins.V4Aggregation
|
|
29
|
+
*
|
|
26
30
|
* @borrows sap.ui.table.plugins.PluginBase.findOn as findOn
|
|
27
31
|
*/
|
|
28
32
|
const V4Aggregation = PluginBase.extend("sap.ui.table.plugins.V4Aggregation", /** @lends sap.ui.table.plugins.V4Aggregation.prototype */ {
|
|
29
33
|
metadata: {
|
|
30
34
|
library: "sap.ui.table",
|
|
31
35
|
properties: {
|
|
36
|
+
/**
|
|
37
|
+
* Indicates whether this plugin is enabled.
|
|
38
|
+
*/
|
|
39
|
+
enabled: {type: "boolean", defaultValue: true}, // TODO: Inherited from private PluginBase. Remove once PluginBase is public.
|
|
40
|
+
|
|
32
41
|
/**
|
|
33
42
|
* If the formatter returns undefined, the default group header title is set.
|
|
34
43
|
*
|
|
@@ -50,26 +59,14 @@ sap.ui.define([
|
|
|
50
59
|
return PluginBase.prototype.isApplicable.apply(this, arguments) && oControl.getMetadata().getName() === "sap.ui.table.Table";
|
|
51
60
|
};
|
|
52
61
|
|
|
53
|
-
/**
|
|
54
|
-
* @override
|
|
55
|
-
* @inheritDoc
|
|
56
|
-
*/
|
|
57
|
-
V4Aggregation.prototype.activate = function() {
|
|
58
|
-
const oBinding = this.getTableBinding();
|
|
59
|
-
|
|
60
|
-
if (oBinding && !oBinding.isA("sap.ui.model.odata.v4.ODataListBinding")) {
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
PluginBase.prototype.activate.apply(this, arguments);
|
|
65
|
-
};
|
|
66
|
-
|
|
67
62
|
/**
|
|
68
63
|
* @override
|
|
69
64
|
* @inheritDoc
|
|
70
65
|
*/
|
|
71
66
|
V4Aggregation.prototype.onActivate = function(oTable) {
|
|
67
|
+
validateBinding(oTable.getBinding());
|
|
72
68
|
TableUtils.Grouping.setToDefaultGroupMode(oTable);
|
|
69
|
+
TableUtils.Hook.register(oTable, TableUtils.Hook.Keys.Table.RowsBound, validateBinding);
|
|
73
70
|
TableUtils.Hook.register(oTable, TableUtils.Hook.Keys.Row.UpdateState, updateRowState, this);
|
|
74
71
|
TableUtils.Hook.register(oTable, TableUtils.Hook.Keys.Row.Expand, expandRow, this);
|
|
75
72
|
TableUtils.Hook.register(oTable, TableUtils.Hook.Keys.Row.Collapse, collapseRow, this);
|
|
@@ -84,28 +81,14 @@ sap.ui.define([
|
|
|
84
81
|
oColumn._setCellContentVisibilitySettings();
|
|
85
82
|
}
|
|
86
83
|
TableUtils.Grouping.setToDefaultFlatMode(oTable);
|
|
84
|
+
TableUtils.Hook.deregister(oTable, TableUtils.Hook.Keys.Table.RowsBound, validateBinding);
|
|
87
85
|
TableUtils.Hook.deregister(oTable, TableUtils.Hook.Keys.Row.UpdateState, this.updateRowState, this);
|
|
88
86
|
TableUtils.Hook.deregister(this, TableUtils.Hook.Keys.Row.Expand, expandRow, this);
|
|
89
87
|
TableUtils.Hook.deregister(this, TableUtils.Hook.Keys.Row.Collapse, collapseRow, this);
|
|
90
88
|
};
|
|
91
89
|
|
|
92
|
-
/**
|
|
93
|
-
* @override
|
|
94
|
-
* @inheritDoc
|
|
95
|
-
*/
|
|
96
|
-
V4Aggregation.prototype.onTableRowsBound = function(oBinding) {
|
|
97
|
-
// TODO: Check whether the plugin is correctly (de)activated in all possible cases and write tests.
|
|
98
|
-
// For example:
|
|
99
|
-
// - if the plugin is not active because there is no ODataV4 model yet, it won't be activated if that model is added later
|
|
100
|
-
// - on unbind
|
|
101
|
-
// Consider calling binding-related hooks also on inactive plugins for this purpose (check usage in selection plugins).
|
|
102
|
-
if (!oBinding.getModel().isA("sap.ui.model.odata.v4.ODataModel")) {
|
|
103
|
-
this.deactivate();
|
|
104
|
-
}
|
|
105
|
-
};
|
|
106
|
-
|
|
107
90
|
V4Aggregation.prototype.declareColumnsHavingTotals = function(aColumnsWithTotals) {
|
|
108
|
-
const aColumns = this.
|
|
91
|
+
const aColumns = this.getControl()?.getColumns() ?? [];
|
|
109
92
|
|
|
110
93
|
for (const oColumn of aColumns) {
|
|
111
94
|
const bHasTotals = aColumnsWithTotals.includes(oColumn);
|
|
@@ -117,6 +100,16 @@ sap.ui.define([
|
|
|
117
100
|
}
|
|
118
101
|
};
|
|
119
102
|
|
|
103
|
+
function validateBinding(oBinding) {
|
|
104
|
+
if (!oBinding) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
if (!oBinding.getModel().isA("sap.ui.model.odata.v4.ODataModel")) {
|
|
109
|
+
throw new Error("Model must be sap.ui.model.odata.v4.ODataModel");
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
120
113
|
function updateRowState(oState) {
|
|
121
114
|
const iLevel = oState.context.getProperty("@$ui5.node.level");
|
|
122
115
|
const bContainsTotals = oState.context.getProperty("@$ui5.node.isTotal");
|
|
@@ -137,7 +130,7 @@ sap.ui.define([
|
|
|
137
130
|
}
|
|
138
131
|
|
|
139
132
|
if (bIsGroupHeader) {
|
|
140
|
-
const sGroupHeaderPath =
|
|
133
|
+
const sGroupHeaderPath = oState.context.getBinding().getAggregation().groupLevels[iLevel - 1];
|
|
141
134
|
const fnCustomGroupHeaderFormatter = this.getGroupHeaderFormatter();
|
|
142
135
|
|
|
143
136
|
if (fnCustomGroupHeaderFormatter) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright
|
|
3
|
+
* (c) Copyright 2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
@@ -38,7 +38,7 @@ sap.ui.define([
|
|
|
38
38
|
* @public
|
|
39
39
|
*
|
|
40
40
|
* @author SAP SE
|
|
41
|
-
* @version 1.
|
|
41
|
+
* @version 1.136.0
|
|
42
42
|
*/
|
|
43
43
|
const AutoRowMode = RowMode.extend("sap.ui.table.rowmodes.Auto", /** @lends sap.ui.table.rowmodes.Auto.prototype */ {
|
|
44
44
|
metadata: {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright
|
|
3
|
+
* (c) Copyright 2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
@@ -27,7 +27,7 @@ sap.ui.define([
|
|
|
27
27
|
* @public
|
|
28
28
|
*
|
|
29
29
|
* @author SAP SE
|
|
30
|
-
* @version 1.
|
|
30
|
+
* @version 1.136.0
|
|
31
31
|
*/
|
|
32
32
|
const FixedRowMode = RowMode.extend("sap.ui.table.rowmodes.Fixed", /** @lends sap.ui.table.rowmodes.Fixed.prototype */ {
|
|
33
33
|
metadata: {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright
|
|
3
|
+
* (c) Copyright 2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
@@ -40,7 +40,7 @@ sap.ui.define([
|
|
|
40
40
|
* @public
|
|
41
41
|
*
|
|
42
42
|
* @author SAP SE
|
|
43
|
-
* @version 1.
|
|
43
|
+
* @version 1.136.0
|
|
44
44
|
*/
|
|
45
45
|
const InteractiveRowMode = RowMode.extend("sap.ui.table.rowmodes.Interactive", /** @lends sap.ui.table.rowmodes.Interactive.prototype */ {
|
|
46
46
|
metadata: {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright
|
|
3
|
+
* (c) Copyright 2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
@@ -37,7 +37,7 @@ sap.ui.define([
|
|
|
37
37
|
* @public
|
|
38
38
|
*
|
|
39
39
|
* @author SAP SE
|
|
40
|
-
* @version 1.
|
|
40
|
+
* @version 1.136.0
|
|
41
41
|
*/
|
|
42
42
|
const RowMode = Element.extend("sap.ui.table.rowmodes.RowMode", /** @lends sap.ui.table.rowmodes.RowMode.prototype */ {
|
|
43
43
|
metadata: {
|
|
@@ -501,8 +501,6 @@ sap.ui.define([
|
|
|
501
501
|
* @private
|
|
502
502
|
*/
|
|
503
503
|
RowMode.prototype.getRowCountConstraints = function() {
|
|
504
|
-
// TODO: Add a type definition for a protected type "rowCountConstraints" in the library file to document the return value
|
|
505
|
-
// RowMode#getRowCountConstraints + PluginBase#setRowCountConstraints
|
|
506
504
|
const oTable = this.getTable();
|
|
507
505
|
return oTable ? oTable.getProperty("rowCountConstraints") || {} : {};
|
|
508
506
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright
|
|
3
|
+
* (c) Copyright 2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define(["sap/ui/base/DataType"], function(DataType) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright
|
|
3
|
+
* (c) Copyright 2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
@@ -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.
|
|
26
|
+
* @version 1.136.0
|
|
27
27
|
*
|
|
28
28
|
* @constructor
|
|
29
29
|
* @private
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
/* Base theme */
|
|
4
4
|
/* ========================== */
|
|
5
5
|
|
|
6
|
-
@_sap_ui_table_Cell_FocusOutlineOffset:
|
|
7
|
-
@_sap_ui_table_Cell_FocusOutlineOffsetInZoomedChrome: calc(-@sapUiContentFocusWidth ~"- 0.0625rem")
|
|
6
|
+
@_sap_ui_table_Cell_FocusOutlineOffset: ~"calc(var(--sapContent_FocusWidth) * -1)";
|
|
7
|
+
@_sap_ui_table_Cell_FocusOutlineOffsetInZoomedChrome: ~"calc((var(--sapContent_FocusWidth) * -1) - 0.0625rem)"; /* calc(-@sapUiContentFocusWidth ~"- 0.0625rem") */
|
|
8
8
|
@_sap_ui_table_Cell_Padding: 0 0.5rem;
|
|
9
9
|
@_sap_ui_table_Cell_TouchMenuIconSize: 1.375rem;
|
|
10
10
|
@_sap_ui_table_Cell_ColumnIconSize: 0.75rem;
|
|
11
|
-
@_sap_ui_table_Cell_BorderColorSelected:
|
|
11
|
+
@_sap_ui_table_Cell_BorderColorSelected: var(--sapList_BorderColor);
|
|
12
12
|
@_sap_ui_table_Cell_BorderColorFixedSelected: @sapUiListTableFixedBorder;
|
|
13
13
|
@_sap_ui_table_Cell_ShadowColorFixed: transparent;
|
|
14
14
|
@_sap_ui_table_Cell_BorderBottomFocus: @sapUiListTableFixedBorder;
|
|
@@ -21,11 +21,11 @@
|
|
|
21
21
|
outline: none;
|
|
22
22
|
|
|
23
23
|
&::before {
|
|
24
|
-
content:
|
|
24
|
+
content: '';
|
|
25
25
|
position: absolute;
|
|
26
26
|
inset: 0;
|
|
27
27
|
pointer-events: none;
|
|
28
|
-
outline:
|
|
28
|
+
outline: var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);
|
|
29
29
|
outline-offset: @_sap_ui_table_Cell_FocusOutlineOffset;
|
|
30
30
|
|
|
31
31
|
.sapUiTableZoomout & {
|
|
@@ -38,8 +38,9 @@
|
|
|
38
38
|
* Hover
|
|
39
39
|
*/
|
|
40
40
|
.sapUiTableHeaderCell:not(.sapUiTableRowActionHeaderCell) {
|
|
41
|
+
|
|
41
42
|
&:hover {
|
|
42
|
-
background-color:
|
|
43
|
+
background-color: var(--sapList_Hover_Background);
|
|
43
44
|
}
|
|
44
45
|
}
|
|
45
46
|
|
|
@@ -50,25 +51,25 @@
|
|
|
50
51
|
position: relative;
|
|
51
52
|
box-sizing: border-box;
|
|
52
53
|
border-right: @_sap_ui_table_BaseBorderWidth solid @sapUiListVerticalBorderColor;
|
|
53
|
-
border-bottom: @_sap_ui_table_BaseBorderWidth solid
|
|
54
|
+
border-bottom: @_sap_ui_table_BaseBorderWidth solid var(--sapList_BorderColor);
|
|
54
55
|
|
|
55
56
|
.sapUiTableRowIndented > &.sapUiTableRowSelectionCell {
|
|
56
57
|
border-left: @_sap_ui_table_BaseBorderWidth solid @sapUiListVerticalBorderColor;
|
|
57
58
|
}
|
|
58
59
|
|
|
59
|
-
|
|
60
|
+
/* Adds a border on top that might be required due to indentation of the row above. */
|
|
60
61
|
.sapUiTableGroupMode &.sapUiTableRowSelectionCell {
|
|
61
|
-
box-shadow: 0 -@_sap_ui_table_BaseBorderWidth
|
|
62
|
+
box-shadow: 0 -@_sap_ui_table_BaseBorderWidth var(--sapList_BorderColor);
|
|
62
63
|
}
|
|
63
64
|
|
|
64
|
-
|
|
65
|
+
/* Last data column border */
|
|
65
66
|
&.sapUiTableCellLast {
|
|
66
|
-
|
|
67
|
-
|
|
67
|
+
/* The table and row action column have a border, so the last data column doesn't need one. */
|
|
68
|
+
/* See: sapUiTableCellDummy, sapUiTableCtrlScr */
|
|
68
69
|
border-right-color: transparent;
|
|
69
70
|
}
|
|
70
71
|
|
|
71
|
-
|
|
72
|
+
/* Row action column border */
|
|
72
73
|
&.sapUiTableRowActionHeaderCell,
|
|
73
74
|
&.sapUiTableRowActionCell {
|
|
74
75
|
border-left: @_sap_ui_table_BaseBorderWidth solid @sapUiListVerticalBorderColor;
|
|
@@ -78,27 +79,28 @@
|
|
|
78
79
|
border-right-color: transparent;
|
|
79
80
|
}
|
|
80
81
|
}
|
|
82
|
+
|
|
81
83
|
&.sapUiTableRowActionCell {
|
|
84
|
+
|
|
82
85
|
.sapUiTableRowNavIndicator & {
|
|
83
86
|
border-right: none;
|
|
84
87
|
border-left: none;
|
|
85
|
-
background-color: transparent;
|
|
86
88
|
}
|
|
87
89
|
}
|
|
88
90
|
|
|
89
|
-
|
|
91
|
+
/* Fixed data column border */
|
|
90
92
|
&.sapUiTableCellLastFixed {
|
|
91
93
|
border-right-color: @sapUiListTableFixedBorder;
|
|
92
94
|
}
|
|
93
95
|
|
|
94
|
-
|
|
96
|
+
/* Header rows borders */
|
|
95
97
|
&.sapUiTableHeaderCell {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
+
/* Column header rows don't have bottom borders. The header area as a whole has a bottom border. */
|
|
99
|
+
/* See: sapUiTableColHdrCnt */
|
|
98
100
|
border-bottom: none;
|
|
99
101
|
}
|
|
100
102
|
|
|
101
|
-
|
|
103
|
+
/* Fixed rows borders */
|
|
102
104
|
.sapUiTableRowLastFixedTop > &,
|
|
103
105
|
.sapUiTableRowLastScrollable > & {
|
|
104
106
|
border-bottom-color: @sapUiListTableFixedBorder;
|
|
@@ -117,9 +119,10 @@
|
|
|
117
119
|
box-shadow: 0 @_sap_ui_table_BaseBorderWidth @_sap_ui_table_Cell_ShadowColorFixed inset;
|
|
118
120
|
}
|
|
119
121
|
|
|
120
|
-
|
|
122
|
+
/* Last row border */
|
|
121
123
|
.sapUiTableLastRow > & {
|
|
122
|
-
|
|
124
|
+
|
|
125
|
+
/* The table has a border, so the last row doesn't need one. */
|
|
123
126
|
border-bottom-color: transparent;
|
|
124
127
|
}
|
|
125
128
|
|
|
@@ -141,7 +144,7 @@
|
|
|
141
144
|
}
|
|
142
145
|
}
|
|
143
146
|
|
|
144
|
-
.sapUiTableRowSelectionHeaderCell {
|
|
147
|
+
.sapUiTableRowSelectionHeaderCell { /* Contains highlight and SelectAll selector. */
|
|
145
148
|
display: none;
|
|
146
149
|
vertical-align: bottom;
|
|
147
150
|
position: absolute;
|
|
@@ -155,12 +158,13 @@
|
|
|
155
158
|
min-height: @_sap_ui_table_ColumnHeaderHeightCozy;
|
|
156
159
|
}
|
|
157
160
|
|
|
161
|
+
/* Either selectors or highlights visible. */
|
|
158
162
|
.sapUiTableRowSelectors &,
|
|
159
163
|
.sapUiTableRowHighlights & {
|
|
160
164
|
display: inline-block;
|
|
161
165
|
}
|
|
162
166
|
|
|
163
|
-
|
|
167
|
+
/* Only selectors visible. */
|
|
164
168
|
.sapUiTableRowSelectors:not(.sapUiTableRowHighlights) & {
|
|
165
169
|
width: @_sap_ui_table_RowSelectorWidth;
|
|
166
170
|
|
|
@@ -173,12 +177,13 @@
|
|
|
173
177
|
}
|
|
174
178
|
}
|
|
175
179
|
|
|
176
|
-
|
|
180
|
+
/* Only highlights visible. */
|
|
177
181
|
.sapUiTableRowHighlights:not(.sapUiTableRowSelectors) & {
|
|
178
182
|
width: @_sap_ui_table_RowHighlightWidth;
|
|
183
|
+
pointer-events: none;
|
|
179
184
|
}
|
|
180
185
|
|
|
181
|
-
|
|
186
|
+
/* Both selectors and highlights visible. */
|
|
182
187
|
.sapUiTableRowHighlights.sapUiTableRowSelectors & {
|
|
183
188
|
width: calc(@_sap_ui_table_RowSelectorWidth ~"+" @_sap_ui_table_RowHighlightWidth);
|
|
184
189
|
|
|
@@ -196,8 +201,12 @@
|
|
|
196
201
|
pointer-events: none;
|
|
197
202
|
}
|
|
198
203
|
|
|
199
|
-
&:not(.sapUiTableSelAllDisabled)
|
|
204
|
+
&:not(.sapUiTableSelAllDisabled) {
|
|
200
205
|
cursor: pointer;
|
|
206
|
+
|
|
207
|
+
> * {
|
|
208
|
+
cursor: pointer;
|
|
209
|
+
}
|
|
201
210
|
}
|
|
202
211
|
}
|
|
203
212
|
|
|
@@ -206,24 +215,29 @@
|
|
|
206
215
|
|
|
207
216
|
&.sapUiTableHeaderCellActive {
|
|
208
217
|
cursor: pointer;
|
|
209
|
-
|
|
218
|
+
|
|
219
|
+
.sapMLabel,
|
|
220
|
+
.sapMText,
|
|
221
|
+
.sapUiIcon {
|
|
210
222
|
cursor: pointer;
|
|
211
223
|
}
|
|
212
224
|
}
|
|
213
225
|
|
|
214
226
|
&.sapUiTableHeaderCellActive:active {
|
|
215
|
-
|
|
227
|
+
|
|
228
|
+
/* The active state background color and text color should not be applied if column reordering is in progress. */
|
|
216
229
|
.sapUiTable:not(.sapUiTableDragDrop) & {
|
|
217
|
-
background-color:
|
|
218
|
-
color:
|
|
230
|
+
background-color: var(--sapList_Active_Background);
|
|
231
|
+
color: var(--sapList_Active_TextColor);
|
|
219
232
|
}
|
|
220
233
|
|
|
221
234
|
& > .sapUiTableCellInner {
|
|
235
|
+
|
|
222
236
|
span,
|
|
223
237
|
label,
|
|
224
238
|
&.sapUiTableColSorted::after,
|
|
225
239
|
&.sapUiTableColFiltered::after {
|
|
226
|
-
color:
|
|
240
|
+
color: var(--sapList_Active_TextColor);
|
|
227
241
|
}
|
|
228
242
|
}
|
|
229
243
|
}
|
|
@@ -245,6 +259,7 @@
|
|
|
245
259
|
display: flex;
|
|
246
260
|
flex: 1 1 auto;
|
|
247
261
|
overflow: hidden;
|
|
262
|
+
align-items: center;
|
|
248
263
|
|
|
249
264
|
> * {
|
|
250
265
|
overflow: hidden;
|
|
@@ -252,34 +267,35 @@
|
|
|
252
267
|
}
|
|
253
268
|
|
|
254
269
|
&::after {
|
|
270
|
+
|
|
255
271
|
.sapUiTableColSorted&,
|
|
256
272
|
.sapUiTableColFiltered& {
|
|
257
|
-
content:
|
|
258
|
-
font-family:
|
|
273
|
+
content: '';
|
|
274
|
+
font-family: var(--sapContent_IconFontFamily);
|
|
259
275
|
font-size: @_sap_ui_table_Cell_ColumnIconSize;
|
|
260
|
-
color:
|
|
276
|
+
color: var(--sapContent_NonInteractiveIconColor);
|
|
261
277
|
margin-left: 0.5rem;
|
|
262
278
|
flex: none;
|
|
263
279
|
}
|
|
264
280
|
|
|
265
281
|
.sapUiTableColSorted& {
|
|
266
|
-
content:
|
|
282
|
+
content: '\e1fd';
|
|
267
283
|
}
|
|
268
284
|
|
|
269
285
|
.sapUiTableColSortedD& {
|
|
270
|
-
content:
|
|
286
|
+
content: '\e1fc';
|
|
271
287
|
}
|
|
272
288
|
|
|
273
289
|
.sapUiTableColFiltered& {
|
|
274
|
-
content:
|
|
290
|
+
content: '\e076';
|
|
275
291
|
}
|
|
276
292
|
|
|
277
293
|
.sapUiTableColFiltered.sapUiTableColSorted& {
|
|
278
|
-
content:
|
|
294
|
+
content: '\e076\00a0\e1fd';
|
|
279
295
|
}
|
|
280
296
|
|
|
281
297
|
.sapUiTableColFiltered.sapUiTableColSortedD& {
|
|
282
|
-
content:
|
|
298
|
+
content: '\e076\00a0\e1fc';
|
|
283
299
|
}
|
|
284
300
|
}
|
|
285
301
|
}
|
|
@@ -294,13 +310,13 @@
|
|
|
294
310
|
|
|
295
311
|
.sapUiTableColResizer,
|
|
296
312
|
.sapUiTableColDropDown {
|
|
297
|
-
font-family:
|
|
313
|
+
font-family: var(--sapContent_IconFontFamily);
|
|
298
314
|
font-size: @_sap_ui_table_Cell_TouchMenuIconSize;
|
|
299
|
-
color:
|
|
315
|
+
color: var(--sapContent_IconColor);
|
|
300
316
|
cursor: default;
|
|
301
317
|
|
|
302
318
|
&:active {
|
|
303
|
-
color:
|
|
319
|
+
color: var(--sapContent_ContrastTextColor);
|
|
304
320
|
}
|
|
305
321
|
}
|
|
306
322
|
}
|
|
@@ -361,11 +377,10 @@
|
|
|
361
377
|
|
|
362
378
|
.sapUiTableRowSelectionCell {
|
|
363
379
|
cursor: pointer;
|
|
364
|
-
}
|
|
365
380
|
|
|
366
|
-
.
|
|
367
|
-
|
|
368
|
-
|
|
381
|
+
.sapUiTable:not(.sapUiTableRowSelectors) & {
|
|
382
|
+
pointer-events: none;
|
|
383
|
+
}
|
|
369
384
|
}
|
|
370
385
|
|
|
371
386
|
.sapUiTableRowActionCell {
|
|
@@ -397,18 +412,21 @@
|
|
|
397
412
|
|
|
398
413
|
.sapUiTableRowNavIndicator & {
|
|
399
414
|
min-width: @_sap_ui_table_NavIndicatorWidth;
|
|
415
|
+
pointer-events: none;
|
|
400
416
|
}
|
|
401
417
|
}
|
|
402
418
|
|
|
403
419
|
.sapUiTableCellDummy {
|
|
404
420
|
border-left: @_sap_ui_table_BaseBorderWidth solid @_sap_ui_table_Cell_DummyBorderColor;
|
|
405
421
|
pointer-events: none;
|
|
422
|
+
|
|
406
423
|
.sapUiTableContentRow & {
|
|
407
|
-
background-color:
|
|
424
|
+
background-color: var(--sapBackgroundColor) !important;
|
|
408
425
|
}
|
|
409
426
|
}
|
|
410
427
|
|
|
411
428
|
.sapUiTableCellFlex {
|
|
429
|
+
|
|
412
430
|
> .sapUiTableCellInner {
|
|
413
431
|
display: flex;
|
|
414
432
|
align-items: center;
|
|
@@ -435,7 +453,7 @@
|
|
|
435
453
|
* Another alternative would be rendering a dummy 0.5rem width column. While this can solve the
|
|
436
454
|
* API and DOM column width difference, changing the table layout might be expensive.
|
|
437
455
|
*/
|
|
438
|
-
.sapUiTable:not(.sapUiTableRowSelectors
|
|
456
|
+
.sapUiTable:not(.sapUiTableRowSelectors, .sapUiTableRowHighlights) .sapUiTableFirstVisibleColumnTH {
|
|
439
457
|
padding-left: .25rem;
|
|
440
458
|
padding-right: .25rem;
|
|
441
459
|
}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
|
|
6
6
|
.sapUiTableCreationRow {
|
|
7
7
|
display: flex;
|
|
8
|
-
background-color:
|
|
9
|
-
border-bottom: @_sap_ui_table_BaseBorderWidth solid
|
|
8
|
+
background-color: var(--sapList_HeaderBackground);
|
|
9
|
+
border-bottom: @_sap_ui_table_BaseBorderWidth solid var(--sapList_HeaderBorderColor);
|
|
10
10
|
|
|
11
11
|
> .sapUiTableCreationRowBeginSection {
|
|
12
12
|
flex: none;
|
|
@@ -47,29 +47,31 @@
|
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
.sapUiTableCell {
|
|
50
|
-
&:extend(.sapUiTableDataCell all); // We want the styles, but not the class. It is a "type class" that influences the tables behavior.
|
|
51
50
|
|
|
52
|
-
|
|
51
|
+
&:extend(.sapUiTableDataCell all); /* We want the styles, but not the class. It is a "type class" that influences the tables behavior. */
|
|
52
|
+
|
|
53
|
+
/* The cells in the creation row should not have any borders except the ones that indicate fixed areas (e.g. fixed columns). */
|
|
53
54
|
border-color: transparent;
|
|
54
55
|
|
|
55
|
-
|
|
56
|
+
/* Fixed data column border */
|
|
56
57
|
&.sapUiTableCellLastFixed {
|
|
57
58
|
border-right-color: @sapUiListTableFixedBorder;
|
|
58
59
|
}
|
|
59
60
|
|
|
60
|
-
|
|
61
|
+
/* Row action column border */
|
|
61
62
|
.sapUiTableHScr &.sapUiTableRowActionHeaderCell {
|
|
62
63
|
border-left-color: @sapUiListTableFixedBorder;
|
|
63
64
|
}
|
|
64
65
|
|
|
65
|
-
|
|
66
|
-
|
|
66
|
+
/* The height is fixed to the default row height (or the application defined height, see TableRenderer) until variable row heights are */
|
|
67
|
+
/* generally supported. */
|
|
67
68
|
> .sapUiTableCellInner {
|
|
68
69
|
max-height: @_sap_ui_table_BaseSize;
|
|
69
70
|
|
|
70
71
|
.sapUiSizeCozy & {
|
|
71
72
|
max-height: @_sap_ui_table_BaseSizeCozy;
|
|
72
73
|
}
|
|
74
|
+
|
|
73
75
|
.sapUiSizeCondensed & {
|
|
74
76
|
max-height: @_sap_ui_table_BaseSizeCondensed;
|
|
75
77
|
}
|