@openui5/sap.uxap 1.141.1 → 1.142.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/README.md CHANGED
@@ -4,13 +4,13 @@
4
4
  Runtime resources of the [OpenUI5](https://github.com/UI5/openui5) UI Library **sap.uxap**.
5
5
 
6
6
  ## Usage
7
- Add this library as a dependency to your UI5 project by using [UI5 Tooling](https://sap.github.io/ui5-tooling/):
7
+ Add this library as a dependency to your UI5 project by using [UI5 CLI](https://ui5.github.io/cli/):
8
8
 
9
9
  ```
10
10
  ui5 add sap.uxap
11
11
  ```
12
12
 
13
- For more information, please refer to our documentation on [Consuming OpenUI5 Libraries](https://sap.github.io/ui5-tooling/pages/OpenUI5/).
13
+ For more information, please refer to our documentation on [Consuming OpenUI5 Libraries](https://ui5.github.io/cli/pages/OpenUI5/).
14
14
 
15
15
  ## License
16
16
  OpenUI5 is licensed under [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0), see [LICENSE.txt](LICENSE.txt).
package/REUSE.toml CHANGED
@@ -21,6 +21,44 @@ SPDX-License-Identifier = "Apache-2.0"
21
21
  #
22
22
 
23
23
 
24
+ # Library: sap.f:
25
+
26
+ [[annotations]]
27
+ path = "src/sap.f/src/sap/f/thirdparty/**"
28
+ precedence = "aggregate"
29
+ SPDX-FileCopyrightText = "SAP"
30
+ SPDX-License-Identifier = "Apache-2.0"
31
+ SPDX-FileComment = "these files belong to: UI5 Web Components"
32
+
33
+ [[annotations]]
34
+ path = "src/sap.f/src/sap/f/thirdparty/**"
35
+ precedence = "aggregate"
36
+ SPDX-FileCopyrightText = "SAP"
37
+ SPDX-License-Identifier = "Apache-2.0"
38
+ SPDX-FileComment = "these files belong to: UI5 Web Components Fiori"
39
+
40
+ [[annotations]]
41
+ path = "src/sap.f/src/sap/f/thirdparty/**"
42
+ precedence = "aggregate"
43
+ SPDX-FileCopyrightText = "SAP"
44
+ SPDX-License-Identifier = "Apache-2.0"
45
+ SPDX-FileComment = "these files belong to: UI5 Web Components Icons"
46
+
47
+ [[annotations]]
48
+ path = "src/sap.f/src/sap/f/thirdparty/**"
49
+ precedence = "aggregate"
50
+ SPDX-FileCopyrightText = "SAP"
51
+ SPDX-License-Identifier = "Apache-2.0"
52
+ SPDX-FileComment = "these files belong to: UI5 Web Components Icons Business Suite"
53
+
54
+ [[annotations]]
55
+ path = "src/sap.f/src/sap/f/thirdparty/**"
56
+ precedence = "aggregate"
57
+ SPDX-FileCopyrightText = "SAP"
58
+ SPDX-License-Identifier = "Apache-2.0"
59
+ SPDX-FileComment = "these files belong to: UI5 Web Components Icons TNT"
60
+
61
+
24
62
  # Library: sap.m:
25
63
 
26
64
  [[annotations]]
package/THIRDPARTY.txt CHANGED
@@ -4,6 +4,39 @@ each subcomponent.
4
4
  The full text of all referenced licenses is appended at the end of this file.
5
5
 
6
6
 
7
+ Library: sap.f:
8
+
9
+ Component: UI5 Web Components, version: 2.15.0
10
+ Copyright: SAP
11
+ License: Apache-2.0
12
+ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
13
+ Contained in: src/sap.f/src/sap/f/thirdparty/**
14
+
15
+ Component: UI5 Web Components Fiori, version: 2.15.0
16
+ Copyright: SAP
17
+ License: Apache-2.0
18
+ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
19
+ Contained in: src/sap.f/src/sap/f/thirdparty/**
20
+
21
+ Component: UI5 Web Components Icons, version: 2.15.0
22
+ Copyright: SAP
23
+ License: Apache-2.0
24
+ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
25
+ Contained in: src/sap.f/src/sap/f/thirdparty/**
26
+
27
+ Component: UI5 Web Components Icons Business Suite, version: 2.15.0
28
+ Copyright: SAP
29
+ License: Apache-2.0
30
+ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
31
+ Contained in: src/sap.f/src/sap/f/thirdparty/**
32
+
33
+ Component: UI5 Web Components Icons TNT, version: 2.15.0
34
+ Copyright: SAP
35
+ License: Apache-2.0
36
+ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
37
+ Contained in: src/sap.f/src/sap/f/thirdparty/**
38
+
39
+
7
40
  Library: sap.m:
8
41
 
9
42
  Component: purify.js, version: 3.2.4
@@ -354,7 +387,7 @@ Contained in: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/D
354
387
 
355
388
  Library: sap.ui.integration:
356
389
 
357
- Component: UI5 Web Components, version: 1.7.0
390
+ Component: UI5 Web Components, version: 2.15.0
358
391
  Copyright: SAP
359
392
  License: Apache-2.0
360
393
  License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.uxap",
3
- "version": "1.141.1",
3
+ "version": "1.142.0",
4
4
  "description": "OpenUI5 UI Library sap.uxap",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,9 +14,9 @@
14
14
  "url": "https://github.com/UI5/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.f": "1.141.1",
18
- "@openui5/sap.m": "1.141.1",
19
- "@openui5/sap.ui.core": "1.141.1",
20
- "@openui5/sap.ui.layout": "1.141.1"
17
+ "@openui5/sap.f": "1.142.0",
18
+ "@openui5/sap.m": "1.142.0",
19
+ "@openui5/sap.ui.core": "1.142.0",
20
+ "@openui5/sap.ui.layout": "1.142.0"
21
21
  }
22
22
  }
@@ -3,7 +3,7 @@
3
3
 
4
4
  <name>sap.uxap</name>
5
5
  <vendor>SAP SE</vendor>
6
- <version>1.141.1</version>
6
+ <version>1.142.0</version>
7
7
  <copyright>OpenUI5
8
8
  * (c) Copyright 2025 SAP SE or an SAP affiliate company.
9
9
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  *
22
22
  * @class
23
23
  * @author SAP SE
24
- * @version 1.141.1
24
+ * @version 1.142.0
25
25
  * @since 1.26
26
26
  * @alias sap.uxap.BlockBaseMetadata
27
27
  * @extends sap.ui.core.ElementMetadata
@@ -22,7 +22,7 @@ sap.ui.define(['sap/ui/core/Element', './library'],
22
22
  * @extends sap.ui.core.Element
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.141.1
25
+ * @version 1.142.0
26
26
  *
27
27
  * @constructor
28
28
  * @public
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * @implements sap.uxap.IHeaderContent
41
41
  *
42
42
  * @author SAP SE
43
- * @version 1.141.1
43
+ * @version 1.142.0
44
44
  *
45
45
  * @constructor
46
46
  * @public
@@ -42,7 +42,7 @@ sap.ui.define([
42
42
  * @implements sap.uxap.IHeaderTitle
43
43
  *
44
44
  * @author SAP SE
45
- * @version 1.141.1
45
+ * @version 1.142.0
46
46
  *
47
47
  * @constructor
48
48
  * @public
@@ -1253,6 +1253,9 @@ sap.ui.define([
1253
1253
  oHeaderContent._setLandmarkInfo(this.getLandmarkInfo());
1254
1254
  }
1255
1255
 
1256
+ if (exists(this._oABHelper) && this._oABHelper._setLandmarkInfo) {
1257
+ this._oABHelper._setLandmarkInfo(this.getLandmarkInfo());
1258
+ }
1256
1259
  };
1257
1260
 
1258
1261
  ObjectPageLayout.prototype._onAfterRenderingDomReady = function () {
@@ -3180,10 +3183,7 @@ sap.ui.define([
3180
3183
  // (1) add top padding for the area underneath the title element
3181
3184
  // so that the title does not overlap the content of the scroll container
3182
3185
  oWrapperElement.style.paddingTop = iTitleHeight + "px";
3183
- oWrapperElement.style.scrollPaddingTop = iTitleHeight + "px";
3184
- if (this._oScroller) {
3185
- this._oScroller.setScrollPaddingTop(iTitleHeight);
3186
- }
3186
+ this._adjustScrollPaddingTop();
3187
3187
 
3188
3188
  // (2) also make the area underneath the title invisible (using clip-path)
3189
3189
  // to allow usage of *transparent background* of the title element
@@ -3202,6 +3202,29 @@ sap.ui.define([
3202
3202
  this.getHeaderTitle() && this._shiftHeaderTitle();
3203
3203
  };
3204
3204
 
3205
+ ObjectPageLayout.prototype._adjustScrollPaddingTop = function () {
3206
+ if (!this._$opWrapper?.length) {
3207
+ return;
3208
+ }
3209
+
3210
+ var oTitleElement = this._$titleArea?.length && this._$titleArea.get(0),
3211
+ iTitleHeight = (oTitleElement && oTitleElement.getBoundingClientRect().height) || 0,
3212
+ iScrollPosition = this._oScrollContainerLastState.iScrollTop,
3213
+ iOffsetScrollPaddingTop = 0,
3214
+ oSelectedSection = Element.getElementById(this.getSelectedSection());
3215
+
3216
+ // when the selected section is scrolled below the header
3217
+ if (this._oSectionInfo[oSelectedSection?.getId()]?.positionTop < iScrollPosition) {
3218
+ // to avoid focused content being hidden under the sticky Section's header, when browser automatically scrolls it into view
3219
+ iOffsetScrollPaddingTop = oSelectedSection?.$().find(".sapUxAPObjectPageSectionHeader").outerHeight() || 0;
3220
+ }
3221
+
3222
+ this._$opWrapper.get(0).style.scrollPaddingTop = (iTitleHeight + iOffsetScrollPaddingTop) + "px";
3223
+ if (this._oScroller) {
3224
+ this._oScroller.setScrollPaddingTop(iTitleHeight + iOffsetScrollPaddingTop);
3225
+ }
3226
+ };
3227
+
3205
3228
  /**
3206
3229
  * called when the screen is resize by users. Updates the screen height
3207
3230
  * @param oEvent
@@ -3511,6 +3534,8 @@ sap.ui.define([
3511
3534
  this.$("scroll").css("z-index", "0");
3512
3535
  }
3513
3536
  }
3537
+
3538
+ this._adjustScrollPaddingTop();
3514
3539
  };
3515
3540
 
3516
3541
  /**
@@ -6,6 +6,8 @@
6
6
 
7
7
  sap.ui.define([
8
8
  "sap/ui/core/Element",
9
+ "sap/ui/core/Lib",
10
+ "sap/ui/core/library",
9
11
  "sap/ui/base/Object",
10
12
  "sap/ui/base/ManagedObject",
11
13
  "sap/ui/base/ManagedObjectObserver",
@@ -13,7 +15,7 @@ sap.ui.define([
13
15
  "sap/m/IconTabHeader",
14
16
  "sap/m/library",
15
17
  "sap/uxap/ObjectPageSection"
16
- ], function(Element, BaseObject, ManagedObject, ManagedObjectObserver, IconTabFilter, IconTabHeader, mobileLibrary, ObjectPageSection) {
18
+ ], function(Element, coreLib, coreLibrary, BaseObject, ManagedObject, ManagedObjectObserver, IconTabFilter, IconTabHeader, mobileLibrary, ObjectPageSection) {
17
19
  "use strict";
18
20
 
19
21
  // shortcut for sap.m.TabsOverflowMode
@@ -111,6 +113,31 @@ sap.ui.define([
111
113
  }
112
114
  };
113
115
 
116
+ ABHelper.prototype._setLandmarkInfo = function (oLandmarkInfo) {
117
+ this._oLandmarkInfo = oLandmarkInfo;
118
+
119
+ this._applyAriaAttributes();
120
+ };
121
+
122
+ ABHelper.prototype._applyAriaAttributes = function () {
123
+ var $oAnchorBar = this._getAnchorBar().$(),
124
+ oObjectPageLayout = this.getObjectPageLayout(),
125
+ oFormattedLandmarkInfo = oObjectPageLayout._formatLandmarkInfo(this._oLandmarkInfo, "Navigation"),
126
+ oRb = coreLib.getResourceBundleFor("sap.uxap");
127
+
128
+ if (oFormattedLandmarkInfo.role) {
129
+ $oAnchorBar.attr("role", oFormattedLandmarkInfo.role);
130
+ } else if (oFormattedLandmarkInfo.role === ""){
131
+ $oAnchorBar.removeAttr("role");
132
+ }
133
+
134
+ if (oFormattedLandmarkInfo.label) {
135
+ $oAnchorBar.attr("aria-label", oFormattedLandmarkInfo.label);
136
+ } else if (this._oLandmarkInfo?.getNavigationRole() !== coreLibrary.AccessibleLandmarkRole.None) {
137
+ $oAnchorBar.attr("aria-label", oRb.getText("NAVIGATION_ROLE_DESCRIPTION"));
138
+ }
139
+ };
140
+
114
141
  /**
115
142
  * build the anchorBar and all the anchorBar buttons
116
143
  * @private
@@ -41,10 +41,8 @@ sap.ui.define(["sap/ui/core/Lib"],
41
41
  bHeaderRoleSet = !!(oLandmarkInfo && oLandmarkInfo.getHeaderRole()),
42
42
  bHeaderLabelSet = !!(oLandmarkInfo && oLandmarkInfo.getHeaderLabel()),
43
43
  bRootRoleSet = !!(oLandmarkInfo && oLandmarkInfo.getRootRole()),
44
- bNavigationRoleSet = !!(oLandmarkInfo && oLandmarkInfo.getNavigationRole()),
45
44
  sRootRole = bRootRoleSet ? oLandmarkInfo.getRootRole() : undefined,
46
45
  sHeaderRole = bHeaderRoleSet ? oLandmarkInfo.getHeaderRole() : undefined,
47
- sNavigationRole = bNavigationRoleSet ? oLandmarkInfo.getNavigationRole() : undefined,
48
46
  bRootLabelSet = !!(oLandmarkInfo && oLandmarkInfo.getRootLabel()),
49
47
  bShowFooter = oControl.getShowFooter();
50
48
 
@@ -56,11 +54,9 @@ sap.ui.define(["sap/ui/core/Lib"],
56
54
  if (!bRootRoleSet) {
57
55
  oRm.attr("role", "main");
58
56
  }
59
- if (sRootRole !== "None") {
60
- oRm.attr("aria-roledescription", oRb.getText("ROOT_ROLE_DESCRIPTION"));
61
- }
57
+
62
58
  if (!bRootLabelSet && sRootRole !== "None") {
63
- oRm.attr("aria-label", sRootAriaLabelText);
59
+ oRm.attr("aria-label", sRootAriaLabelText + " " + oRb.getText("ROOT_ROLE_DESCRIPTION"));
64
60
  }
65
61
  oRm.class("sapUxAPObjectPageLayout");
66
62
  if (bShowFooter) {
@@ -88,12 +84,8 @@ sap.ui.define(["sap/ui/core/Lib"],
88
84
  oRm.attr("role", "banner");
89
85
  }
90
86
 
91
- if (sHeaderRole !== "None") {
92
- oRm.attr("aria-roledescription", oRb.getText("HEADER_ROLE_DESCRIPTION"));
93
- }
94
-
95
87
  if (!bHeaderLabelSet && sHeaderRole !== "None") {
96
- oRm.attr("aria-label", sHeaderAriaLabelText);
88
+ oRm.attr("aria-label", sHeaderAriaLabelText + " " + oRb.getText("HEADER_ROLE_DESCRIPTION"));
97
89
  }
98
90
  oRm.attr("data-sap-ui-customfastnavgroup", true)
99
91
  .class("sapUxAPObjectPageHeaderTitle")
@@ -112,10 +104,6 @@ sap.ui.define(["sap/ui/core/Lib"],
112
104
  oRm.openStart("div", oControl.getId() + "-stickyAnchorBar");
113
105
  oRm.attr("data-sap-ui-customfastnavgroup", true);
114
106
 
115
- if (sNavigationRole !== "None") {
116
- oRm.attr("aria-roledescription", oRb.getText("NAVIGATION_ROLE_DESCRIPTION"));
117
- }
118
-
119
107
  if (!oControl._bHeaderInTitleArea) {
120
108
  oRm.attr("aria-hidden", "true");
121
109
  }
@@ -128,7 +116,6 @@ sap.ui.define(["sap/ui/core/Lib"],
128
116
  oRm.class("sapUxAPObjectPageNavigation" + sBackgroundDesign);
129
117
  }
130
118
 
131
- oRm.accessibilityState(oControl, oControl._formatLandmarkInfo(oLandmarkInfo, "Navigation"));
132
119
  oRm.openEnd();
133
120
 
134
121
  // if the content is expanded render bars outside the scrolling div
@@ -159,10 +146,6 @@ sap.ui.define(["sap/ui/core/Lib"],
159
146
  oRm.openStart("section", oControl.getId() + "-anchorBar");
160
147
  oRm.attr("data-sap-ui-customfastnavgroup", true);
161
148
 
162
- if (sNavigationRole !== "None") {
163
- oRm.attr("aria-roledescription", oRb.getText("NAVIGATION_ROLE_DESCRIPTION"));
164
- }
165
-
166
149
  oRm.class("sapUxAPObjectPageNavigation")
167
150
  .class("ui-helper-clearfix")
168
151
  .class("sapContrastPlus");
@@ -171,7 +154,6 @@ sap.ui.define(["sap/ui/core/Lib"],
171
154
  oRm.class("sapUxAPObjectPageNavigation" + sBackgroundDesign);
172
155
  }
173
156
 
174
- oRm.accessibilityState(oControl, oControl._formatLandmarkInfo(oLandmarkInfo, "Navigation"));
175
157
  oRm.openEnd();
176
158
 
177
159
  this._renderAnchorBar(oRm, oControl, oAnchorBar, !oControl._bHeaderInTitleArea);
@@ -322,7 +304,7 @@ sap.ui.define(["sap/ui/core/Lib"],
322
304
  }
323
305
 
324
306
  if (sFooterRole !== "None") {
325
- oRm.attr("aria-roledescription", oRb.getText("FOOTER_ROLE_DESCRIPTION"));
307
+ oRm.attr("aria-label", oRb.getText("FOOTER_ROLE_DESCRIPTION"));
326
308
  }
327
309
 
328
310
  oRm.accessibilityState(oObjectPageLayout, oObjectPageLayout._formatLandmarkInfo(oLandmarkInfo, "Footer"));
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  * @extends sap.ui.core.Element
39
39
  *
40
40
  * @author SAP SE
41
- * @version 1.141.1
41
+ * @version 1.142.0
42
42
  *
43
43
  * @constructor
44
44
  * @public
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @constructor
26
26
  * @alias sap.uxap.changeHandler.AddIFrameObjectPageLayout
27
27
  * @author SAP SE
28
- * @version 1.141.1
28
+ * @version 1.142.0
29
29
  * @since 1.75
30
30
  * @experimental Since 1.75
31
31
  */
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @constructor
24
24
  * @alias sap.uxap.changeHandler.MoveObjectPageSection
25
25
  * @author SAP SE
26
- * @version 1.141.1
26
+ * @version 1.142.0
27
27
  * @experimental Since 1.54
28
28
  */
29
29
 
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * @constructor
22
22
  * @alias sap.uxap.changeHandler.RenameObjectPageSection
23
23
  * @author SAP SE
24
- * @version 1.141.1
24
+ * @version 1.142.0
25
25
  * @experimental Since 1.50
26
26
  */
27
27
 
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  * @constructor
20
20
  * @alias sap.uxap.changeHandler.UnstashObjectPageSection
21
21
  * @author SAP SE
22
- * @version 1.141.1
22
+ * @version 1.142.0
23
23
  * @experimental Since 1.115
24
24
  */
25
25
 
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @namespace
31
31
  * @alias sap.uxap
32
32
  * @author SAP SE
33
- * @version 1.141.1
33
+ * @version 1.142.0
34
34
  * @since 1.36
35
35
  * @public
36
36
  */
@@ -74,7 +74,7 @@ sap.ui.define([
74
74
  "sap.uxap.ObjectPageHeaderLayoutData",
75
75
  "sap.uxap.ObjectPageLazyLoader"
76
76
  ],
77
- version: "1.141.1",
77
+ version: "1.142.0",
78
78
  ...{
79
79
  interactionDocumentation: true
80
80
  },