@openui5/sap.ui.unified 1.143.1 → 1.145.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 (157) hide show
  1. package/REUSE.toml +40 -16
  2. package/THIRDPARTY.txt +22 -1
  3. package/package.json +2 -2
  4. package/src/sap/ui/unified/.library +2 -2
  5. package/src/sap/ui/unified/Calendar.js +100 -24
  6. package/src/sap/ui/unified/CalendarAppointment.js +2 -2
  7. package/src/sap/ui/unified/CalendarDateInterval.js +69 -14
  8. package/src/sap/ui/unified/CalendarDateIntervalRenderer.js +14 -1
  9. package/src/sap/ui/unified/CalendarLegend.js +2 -2
  10. package/src/sap/ui/unified/CalendarLegendItem.js +2 -2
  11. package/src/sap/ui/unified/CalendarLegendRenderer.js +2 -2
  12. package/src/sap/ui/unified/CalendarMonthInterval.js +2 -2
  13. package/src/sap/ui/unified/CalendarMonthIntervalRenderer.js +1 -1
  14. package/src/sap/ui/unified/CalendarOneMonthInterval.js +2 -2
  15. package/src/sap/ui/unified/CalendarOneMonthIntervalRenderer.js +1 -1
  16. package/src/sap/ui/unified/CalendarRenderer.js +1 -1
  17. package/src/sap/ui/unified/CalendarRow.js +7 -2
  18. package/src/sap/ui/unified/CalendarRowRenderer.js +4 -3
  19. package/src/sap/ui/unified/CalendarTimeInterval.js +61 -7
  20. package/src/sap/ui/unified/CalendarTimeIntervalRenderer.js +2 -2
  21. package/src/sap/ui/unified/CalendarWeekInterval.js +2 -2
  22. package/src/sap/ui/unified/ColorPicker.js +64 -7
  23. package/src/sap/ui/unified/ColorPickerDisplayMode.js +1 -1
  24. package/src/sap/ui/unified/ColorPickerHelper.js +1 -1
  25. package/src/sap/ui/unified/ColorPickerPopover.js +2 -2
  26. package/src/sap/ui/unified/ColorPickerRenderer.js +1 -1
  27. package/src/sap/ui/unified/ContentSwitcher.js +2 -2
  28. package/src/sap/ui/unified/ContentSwitcherRenderer.js +1 -1
  29. package/src/sap/ui/unified/Currency.js +3 -3
  30. package/src/sap/ui/unified/CurrencyRenderer.js +3 -3
  31. package/src/sap/ui/unified/DateRange.js +2 -2
  32. package/src/sap/ui/unified/DateTypeRange.js +2 -2
  33. package/src/sap/ui/unified/FileUploader.js +789 -363
  34. package/src/sap/ui/unified/FileUploaderHelper.js +1 -1
  35. package/src/sap/ui/unified/FileUploaderHttpRequestMethod.js +1 -1
  36. package/src/sap/ui/unified/FileUploaderParameter.js +2 -2
  37. package/src/sap/ui/unified/FileUploaderRenderer.js +197 -54
  38. package/src/sap/ui/unified/FileUploaderXHRSettings.js +2 -2
  39. package/src/sap/ui/unified/Menu.js +3 -3
  40. package/src/sap/ui/unified/MenuItem.js +3 -3
  41. package/src/sap/ui/unified/MenuItemBase.js +2 -2
  42. package/src/sap/ui/unified/MenuItemGroup.js +2 -2
  43. package/src/sap/ui/unified/MenuRenderer.js +2 -2
  44. package/src/sap/ui/unified/MenuTextFieldItem.js +2 -2
  45. package/src/sap/ui/unified/NonWorkingPeriod.js +2 -2
  46. package/src/sap/ui/unified/RecurringNonWorkingPeriod.js +2 -2
  47. package/src/sap/ui/unified/Shell.js +2 -2
  48. package/src/sap/ui/unified/ShellHeadItem.js +2 -2
  49. package/src/sap/ui/unified/ShellHeadUserItem.js +2 -2
  50. package/src/sap/ui/unified/ShellHeader.js +1 -1
  51. package/src/sap/ui/unified/ShellLayout.js +2 -2
  52. package/src/sap/ui/unified/ShellLayoutRenderer.js +1 -1
  53. package/src/sap/ui/unified/ShellOverlay.js +2 -2
  54. package/src/sap/ui/unified/ShellOverlayRenderer.js +1 -1
  55. package/src/sap/ui/unified/ShellRenderer.js +1 -1
  56. package/src/sap/ui/unified/SplitContainer.js +2 -2
  57. package/src/sap/ui/unified/SplitContainerRenderer.js +1 -1
  58. package/src/sap/ui/unified/TimeRange.js +2 -2
  59. package/src/sap/ui/unified/calendar/CalendarDate.js +1 -1
  60. package/src/sap/ui/unified/calendar/CalendarUtils.js +18 -1
  61. package/src/sap/ui/unified/calendar/CustomMonthPicker.js +1 -1
  62. package/src/sap/ui/unified/calendar/CustomYearPicker.js +1 -1
  63. package/src/sap/ui/unified/calendar/DatesRow.js +2 -2
  64. package/src/sap/ui/unified/calendar/DatesRowRenderer.js +1 -39
  65. package/src/sap/ui/unified/calendar/Header.js +9 -3
  66. package/src/sap/ui/unified/calendar/HeaderRenderer.js +49 -18
  67. package/src/sap/ui/unified/calendar/IndexPicker.js +2 -2
  68. package/src/sap/ui/unified/calendar/IndexPickerRenderer.js +1 -1
  69. package/src/sap/ui/unified/calendar/Month.js +4 -11
  70. package/src/sap/ui/unified/calendar/MonthPicker.js +2 -2
  71. package/src/sap/ui/unified/calendar/MonthPickerRenderer.js +1 -1
  72. package/src/sap/ui/unified/calendar/MonthRenderer.js +50 -12
  73. package/src/sap/ui/unified/calendar/MonthsRow.js +13 -6
  74. package/src/sap/ui/unified/calendar/MonthsRowRenderer.js +5 -2
  75. package/src/sap/ui/unified/calendar/OneMonthDatesRow.js +2 -2
  76. package/src/sap/ui/unified/calendar/OneMonthDatesRowRenderer.js +1 -1
  77. package/src/sap/ui/unified/calendar/RecurrenceUtils.js +3 -11
  78. package/src/sap/ui/unified/calendar/TimesRow.js +4 -4
  79. package/src/sap/ui/unified/calendar/TimesRowRenderer.js +1 -1
  80. package/src/sap/ui/unified/calendar/WeeksRow.js +219 -0
  81. package/src/sap/ui/unified/calendar/WeeksRowRenderer.js +114 -0
  82. package/src/sap/ui/unified/calendar/YearPicker.js +2 -2
  83. package/src/sap/ui/unified/calendar/YearPickerRenderer.js +1 -1
  84. package/src/sap/ui/unified/calendar/YearRangePicker.js +3 -3
  85. package/src/sap/ui/unified/calendar/YearRangePickerRenderer.js +1 -1
  86. package/src/sap/ui/unified/designtime/Calendar.designtime.js +1 -1
  87. package/src/sap/ui/unified/designtime/CalendarDateInterval.designtime.js +1 -1
  88. package/src/sap/ui/unified/designtime/CalendarLegend.designtime.js +1 -1
  89. package/src/sap/ui/unified/designtime/Currency.designtime.js +1 -1
  90. package/src/sap/ui/unified/designtime/FileUploader.designtime.js +1 -1
  91. package/src/sap/ui/unified/designtime/library.designtime.js +1 -1
  92. package/src/sap/ui/unified/library.js +3 -3
  93. package/src/sap/ui/unified/library.support.js +1 -1
  94. package/src/sap/ui/unified/messagebundle.properties +72 -9
  95. package/src/sap/ui/unified/messagebundle_ar.properties +50 -8
  96. package/src/sap/ui/unified/messagebundle_bg.properties +50 -8
  97. package/src/sap/ui/unified/messagebundle_ca.properties +51 -7
  98. package/src/sap/ui/unified/messagebundle_cnr.properties +50 -8
  99. package/src/sap/ui/unified/messagebundle_cs.properties +51 -7
  100. package/src/sap/ui/unified/messagebundle_cy.properties +50 -8
  101. package/src/sap/ui/unified/messagebundle_da.properties +52 -8
  102. package/src/sap/ui/unified/messagebundle_de.properties +48 -6
  103. package/src/sap/ui/unified/messagebundle_el.properties +50 -8
  104. package/src/sap/ui/unified/messagebundle_en.properties +50 -8
  105. package/src/sap/ui/unified/messagebundle_en_GB.properties +50 -8
  106. package/src/sap/ui/unified/messagebundle_en_US_saprigi.properties +48 -6
  107. package/src/sap/ui/unified/messagebundle_es.properties +50 -8
  108. package/src/sap/ui/unified/messagebundle_es_MX.properties +58 -15
  109. package/src/sap/ui/unified/messagebundle_et.properties +48 -6
  110. package/src/sap/ui/unified/messagebundle_fi.properties +51 -7
  111. package/src/sap/ui/unified/messagebundle_fr.properties +50 -8
  112. package/src/sap/ui/unified/messagebundle_fr_CA.properties +50 -8
  113. package/src/sap/ui/unified/messagebundle_hi.properties +50 -8
  114. package/src/sap/ui/unified/messagebundle_hr.properties +51 -7
  115. package/src/sap/ui/unified/messagebundle_hu.properties +50 -8
  116. package/src/sap/ui/unified/messagebundle_id.properties +50 -8
  117. package/src/sap/ui/unified/messagebundle_it.properties +50 -8
  118. package/src/sap/ui/unified/messagebundle_iw.properties +51 -7
  119. package/src/sap/ui/unified/messagebundle_ja.properties +50 -8
  120. package/src/sap/ui/unified/messagebundle_kk.properties +50 -8
  121. package/src/sap/ui/unified/messagebundle_ko.properties +51 -9
  122. package/src/sap/ui/unified/messagebundle_lt.properties +54 -12
  123. package/src/sap/ui/unified/messagebundle_lv.properties +48 -6
  124. package/src/sap/ui/unified/messagebundle_mk.properties +50 -8
  125. package/src/sap/ui/unified/messagebundle_ms.properties +50 -8
  126. package/src/sap/ui/unified/messagebundle_nl.properties +51 -7
  127. package/src/sap/ui/unified/messagebundle_no.properties +50 -8
  128. package/src/sap/ui/unified/messagebundle_pl.properties +49 -7
  129. package/src/sap/ui/unified/messagebundle_pt.properties +50 -8
  130. package/src/sap/ui/unified/messagebundle_pt_PT.properties +50 -8
  131. package/src/sap/ui/unified/messagebundle_ro.properties +50 -8
  132. package/src/sap/ui/unified/messagebundle_ru.properties +51 -7
  133. package/src/sap/ui/unified/messagebundle_sh.properties +50 -8
  134. package/src/sap/ui/unified/messagebundle_sk.properties +51 -7
  135. package/src/sap/ui/unified/messagebundle_sl.properties +50 -8
  136. package/src/sap/ui/unified/messagebundle_sr.properties +50 -8
  137. package/src/sap/ui/unified/messagebundle_sv.properties +51 -7
  138. package/src/sap/ui/unified/messagebundle_th.properties +52 -10
  139. package/src/sap/ui/unified/messagebundle_tr.properties +51 -7
  140. package/src/sap/ui/unified/messagebundle_uk.properties +50 -8
  141. package/src/sap/ui/unified/messagebundle_vi.properties +53 -9
  142. package/src/sap/ui/unified/messagebundle_zh_CN.properties +50 -8
  143. package/src/sap/ui/unified/messagebundle_zh_TW.properties +50 -8
  144. package/src/sap/ui/unified/rules/FileUploader.support.js +1 -1
  145. package/src/sap/ui/unified/themes/base/Calendar.less +311 -157
  146. package/src/sap/ui/unified/themes/base/CalendarDateInterval.less +13 -1
  147. package/src/sap/ui/unified/themes/base/CalendarTimeInterval.less +17 -0
  148. package/src/sap/ui/unified/themes/base/ColorPicker.less +204 -113
  149. package/src/sap/ui/unified/themes/base/FileUploader.less +241 -36
  150. package/src/sap/ui/unified/themes/base/IndexPicker.less +13 -8
  151. package/src/sap/ui/unified/themes/base/ShellHeader.less +58 -69
  152. package/src/sap/ui/unified/themes/base/ShellLayout.less +5 -23
  153. package/src/sap/ui/unified/themes/base/ShellOverlay.less +19 -40
  154. package/src/sap/ui/unified/themes/base/SplitContainer.less +15 -20
  155. package/src/sap/ui/unified/themes/base/library.source.less +1 -1
  156. package/src/sap/ui/unified/themes/sap_hcb/base_Calendar.less +2 -1
  157. package/src/sap/ui/unified/themes/sap_hcb/library.source.less +1 -1
package/REUSE.toml CHANGED
@@ -7,7 +7,7 @@ SPDX-PackageComment = "The code in this project may include calls to APIs (“AP
7
7
  [[annotations]]
8
8
  path = "**"
9
9
  precedence = "aggregate"
10
- SPDX-FileCopyrightText = "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors"
10
+ SPDX-FileCopyrightText = "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors"
11
11
  SPDX-License-Identifier = "Apache-2.0"
12
12
 
13
13
  #
@@ -102,7 +102,7 @@ SPDX-FileComment = "these files belong to: jQuery UI"
102
102
  path = "src/sap.ui.commons/src/sap/ui/commons/Carousel.js"
103
103
  precedence = "aggregate"
104
104
  SPDX-FileCopyrightText = [
105
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
105
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
106
106
  "Spencer Tipping"
107
107
  ]
108
108
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -122,7 +122,7 @@ SPDX-FileComment = "these files belong to: jQuery 3"
122
122
  path = "src/sap.ui.core/src/sap/base/util/isPlainObject.js"
123
123
  precedence = "aggregate"
124
124
  SPDX-FileCopyrightText = [
125
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
125
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
126
126
  "OpenJS Foundation and other contributors"
127
127
  ]
128
128
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -132,7 +132,7 @@ SPDX-FileComment = "these files contain content from SAP and jQuery 3: isPlainOb
132
132
  path = "src/sap.ui.core/src/sap/base/util/_merge.js"
133
133
  precedence = "aggregate"
134
134
  SPDX-FileCopyrightText = [
135
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
135
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
136
136
  "OpenJS Foundation and other contributors"
137
137
  ]
138
138
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -142,7 +142,7 @@ SPDX-FileComment = "these files contain content from SAP and jQuery 3: _merge.js
142
142
  path = "src/sap.ui.core/src/jquery.sap.script.js"
143
143
  precedence = "aggregate"
144
144
  SPDX-FileCopyrightText = [
145
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
145
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
146
146
  "OpenJS Foundation and other contributors"
147
147
  ]
148
148
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -152,7 +152,7 @@ SPDX-FileComment = "these files contain content from SAP and jQuery 3: jquery.sa
152
152
  path = "src/sap.ui.core/src/sap/ui/Device.js"
153
153
  precedence = "aggregate"
154
154
  SPDX-FileCopyrightText = [
155
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
155
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
156
156
  "2011, John Resig"
157
157
  ]
158
158
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -162,7 +162,7 @@ SPDX-FileComment = "these files contain content from SAP and jQuery 1: Device.js
162
162
  path = "src/sap.ui.core/src/sap/ui/dom/jquery/Selectors.js"
163
163
  precedence = "aggregate"
164
164
  SPDX-FileCopyrightText = [
165
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
165
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
166
166
  "2014 jQuery Foundation and other contributors"
167
167
  ]
168
168
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -179,7 +179,7 @@ SPDX-FileComment = "these files belong to: jQuery UI 1.10"
179
179
  path = "src/sap.ui.core/src/jquery.sap.dom.js"
180
180
  precedence = "aggregate"
181
181
  SPDX-FileCopyrightText = [
182
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
182
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
183
183
  "2014 jQuery Foundation and other contributors"
184
184
  ]
185
185
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -189,7 +189,7 @@ SPDX-FileComment = "these files contain content from SAP and jQuery UI 1.10: jqu
189
189
  path = "src/sap.ui.core/src/sap/ui/dom/jquery/zIndex.js"
190
190
  precedence = "aggregate"
191
191
  SPDX-FileCopyrightText = [
192
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
192
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
193
193
  "2014 jQuery Foundation and other contributors"
194
194
  ]
195
195
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -243,7 +243,7 @@ SPDX-FileComment = "these files belong to: jQuery Mobile"
243
243
  path = "src/sap.ui.core/src/sap/ui/util/_FeatureDetection.js"
244
244
  precedence = "aggregate"
245
245
  SPDX-FileCopyrightText = [
246
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
246
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
247
247
  "2012 Wei-Ko Kao"
248
248
  ]
249
249
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -270,7 +270,7 @@ SPDX-FileComment = "these files belong to: JUnit Reporter for QUnit"
270
270
  path = "src/sap.ui.core/src/sap/ui/qunit/qunit-junit.js"
271
271
  precedence = "aggregate"
272
272
  SPDX-FileCopyrightText = [
273
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
273
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
274
274
  "jQuery Foundation and other contributors"
275
275
  ]
276
276
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -421,7 +421,7 @@ SPDX-FileComment = "these files belong to: blanket.js"
421
421
  path = "src/sap.ui.core/src/sap/base/util/JSTokenizer.js"
422
422
  precedence = "aggregate"
423
423
  SPDX-FileCopyrightText = [
424
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
424
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
425
425
  "Douglas Crockford"
426
426
  ]
427
427
  SPDX-License-Identifier = "Apache-2.0 and LicenseRef-JSONinJSPublicDomain"
@@ -431,7 +431,7 @@ SPDX-FileComment = "these files contain content from SAP and JSON in JS: JSToken
431
431
  path = "src/sap.ui.core/src/sap/ui/base/ExpressionParser.js"
432
432
  precedence = "aggregate"
433
433
  SPDX-FileCopyrightText = [
434
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
434
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
435
435
  "2010 Douglas Crockford"
436
436
  ]
437
437
  SPDX-License-Identifier = "Apache-2.0"
@@ -479,7 +479,7 @@ SPDX-FileComment = "these files contain content from p-cancelable and @babel/hel
479
479
  path = "src/sap.ui.core/src/sap/ui/core/date/Persian.js"
480
480
  precedence = "aggregate"
481
481
  SPDX-FileCopyrightText = [
482
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
482
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
483
483
  "Behrang Norouzinia"
484
484
  ]
485
485
  SPDX-License-Identifier = "Apache-2.0 and MIT"
@@ -496,7 +496,7 @@ SPDX-FileComment = "these files belong to: vkBeautify"
496
496
  path = "src/sap.ui.core/src/sap/ui/core/cache/LRUPersistentCache.js"
497
497
  precedence = "aggregate"
498
498
  SPDX-FileCopyrightText = [
499
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
499
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
500
500
  "Isaac Z. Schlueter and Contributors"
501
501
  ]
502
502
  SPDX-License-Identifier = "Apache-2.0 and ISC"
@@ -589,6 +589,30 @@ SPDX-License-Identifier = "MIT"
589
589
  SPDX-FileComment = "these files belong to: @cfworker/json-schema"
590
590
 
591
591
 
592
+ # Library: sap.ui.mdc:
593
+
594
+ [[annotations]]
595
+ path = "src/sap.ui.mdc/test/sap/ui/mdc/demokit/sample/Chart/ChartJS/control/ChartJS.js"
596
+ precedence = "aggregate"
597
+ SPDX-FileCopyrightText = "2025 Chart.js Contributors"
598
+ SPDX-License-Identifier = "MIT"
599
+ SPDX-FileComment = "these files belong to: Chart.js"
600
+
601
+ [[annotations]]
602
+ path = "src/sap.ui.mdc/test/sap/ui/mdc/demokit/sample/Chart/ChartJS/control/chartjs-plugin-zoom.js"
603
+ precedence = "aggregate"
604
+ SPDX-FileCopyrightText = "2016-2021 chartjs-plugin-zoom Contributors"
605
+ SPDX-License-Identifier = "MIT"
606
+ SPDX-FileComment = "these files belong to: chartjs-plugin-zoom"
607
+
608
+ [[annotations]]
609
+ path = "src/sap.ui.mdc/test/sap/ui/mdc/demokit/sample/Chart/ChartJS/control/hammerjs.js"
610
+ precedence = "aggregate"
611
+ SPDX-FileCopyrightText = "2011-2017 by Jorik Tangelder (Eight Media)"
612
+ SPDX-License-Identifier = "MIT"
613
+ SPDX-FileComment = "these files belong to: hammer.js"
614
+
615
+
592
616
  # Library: sap.ui.webc.common:
593
617
 
594
618
  [[annotations]]
@@ -646,7 +670,7 @@ SPDX-FileComment = "these files belong to: UI5 Web Components"
646
670
  path = "lib/jsdoc/ui5/plugin.js"
647
671
  precedence = "aggregate"
648
672
  SPDX-FileCopyrightText = [
649
- "2025 SAP SE or an SAP affiliate company and OpenUI5 contributors",
673
+ "2026 SAP SE or an SAP affiliate company and OpenUI5 contributors",
650
674
  "2011-present Michael Mathews micmath@gmail.com and the contributors to JSDoc"
651
675
  ]
652
676
  SPDX-License-Identifier = "Apache-2.0"
package/THIRDPARTY.txt CHANGED
@@ -202,7 +202,7 @@ License: Apache-2.0
202
202
  License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
203
203
  Contained in: src/sap.ui.core/src/sap/ui/thirdparty/caja-html-sanitizer.js
204
204
 
205
- Component: Unicode Common Locale Data Repository, version: 46.1.0
205
+ Component: Unicode Common Locale Data Repository, version: 48.0.0
206
206
  Copyright: 1991-2024 Unicode, Inc.
207
207
  License: LicenseRef-Unicode-3.0
208
208
  License Text: https://github.com/UI5/openui5/blob/master/LICENSES/LicenseRef-Unicode-3.0.txt
@@ -425,6 +425,27 @@ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/MIT.txt
425
425
  Contained in: src/sap.ui.integration/test/sap/ui/integration/demokit/cardExplorer/webapp/thirdparty/CfWorkerJsonSchemaValidator.js
426
426
 
427
427
 
428
+ Library: sap.ui.mdc:
429
+
430
+ Component: Chart.js, version: 4.5.0
431
+ Copyright: 2025 Chart.js Contributors
432
+ License: MIT
433
+ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/MIT.txt
434
+ Contained in: src/sap.ui.mdc/test/sap/ui/mdc/demokit/sample/Chart/ChartJS/control/ChartJS.js
435
+
436
+ Component: chartjs-plugin-zoom, version: 1.0.1
437
+ Copyright: 2016-2021 chartjs-plugin-zoom Contributors
438
+ License: MIT
439
+ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/MIT.txt
440
+ Contained in: src/sap.ui.mdc/test/sap/ui/mdc/demokit/sample/Chart/ChartJS/control/chartjs-plugin-zoom.js
441
+
442
+ Component: hammer.js, version: 2.0.7
443
+ Copyright: 2011-2017 by Jorik Tangelder (Eight Media)
444
+ License: MIT
445
+ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/MIT.txt
446
+ Contained in: src/sap.ui.mdc/test/sap/ui/mdc/demokit/sample/Chart/ChartJS/control/hammerjs.js
447
+
448
+
428
449
  Library: sap.ui.webc.common:
429
450
 
430
451
  Component: UI5 Web Components, version: 1.18.0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.unified",
3
- "version": "1.143.1",
3
+ "version": "1.145.0",
4
4
  "description": "OpenUI5 UI Library sap.ui.unified",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,6 +14,6 @@
14
14
  "url": "https://github.com/UI5/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.ui.core": "1.143.1"
17
+ "@openui5/sap.ui.core": "1.145.0"
18
18
  }
19
19
  }
@@ -4,9 +4,9 @@
4
4
  <name>sap.ui.unified</name>
5
5
  <vendor>SAP SE</vendor>
6
6
  <copyright>OpenUI5
7
- * (c) Copyright 2025 SAP SE or an SAP affiliate company.
7
+ * (c) Copyright 2026 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.143.1</version>
9
+ <version>1.145.0</version>
10
10
 
11
11
  <documentation>Unified controls intended for both, mobile and desktop scenarios</documentation>
12
12
 
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2026 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  //Provides control sap.ui.unified.Calendar.
@@ -80,7 +80,7 @@ sap.ui.define([
80
80
  * Basic Calendar.
81
81
  * This calendar is used for DatePickers
82
82
  * @extends sap.ui.core.Control
83
- * @version 1.143.1
83
+ * @version 1.145.0
84
84
  *
85
85
  * @constructor
86
86
  * @public
@@ -467,6 +467,7 @@ sap.ui.define([
467
467
  // Set keyboard shortcuts for Calendar-specific usage
468
468
  oHeader.setProperty("_keyShortcutButton1", this._oResourceBundle.getText("CALENDAR_HEADER_MONTH_BUTTON_SHORTCUT"));
469
469
  oHeader.setProperty("_keyShortcutButton2", this._oResourceBundle.getText("CALENDAR_HEADER_YEAR_BUTTON_SHORTCUT"));
470
+ oHeader.setProperty("_currentPicker", CURRENT_PICKERS.MONTH);
470
471
 
471
472
  this._afterHeaderRenderAdjustCSS = this._createOnAfterRenderingDelegate(oHeader);
472
473
 
@@ -1610,6 +1611,7 @@ sap.ui.define([
1610
1611
  oMonthPicker._setDate(oFocusedDate);
1611
1612
  oMonthPicker.invalidate();
1612
1613
  this.setProperty("_currentPicker", CURRENT_PICKERS.MONTH_PICKER);
1614
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.MONTH_PICKER);
1613
1615
  break;
1614
1616
 
1615
1617
  case 2: // year picker
@@ -1626,7 +1628,6 @@ sap.ui.define([
1626
1628
  break;
1627
1629
  // no default
1628
1630
  }
1629
-
1630
1631
  };
1631
1632
 
1632
1633
  /**
@@ -1655,7 +1656,7 @@ sap.ui.define([
1655
1656
  this._addMonthFocusDelegate();
1656
1657
  break;
1657
1658
 
1658
- case 1: // month picker
1659
+ case 1: // month picker
1659
1660
  oFocusedDate.setYear(oFocusedDate.getYear() + 1);
1660
1661
  this._updateHeadersYearPrimaryText(this._oYearFormat.format(oFocusedDate.toUTCJSDate(), true));
1661
1662
  this._updateHeadersYearAdditionalTextHelper();
@@ -1666,6 +1667,7 @@ sap.ui.define([
1666
1667
  oMonthPicker._setDate(oFocusedDate);
1667
1668
  oMonthPicker.invalidate();
1668
1669
  this.setProperty("_currentPicker", CURRENT_PICKERS.MONTH_PICKER);
1670
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.MONTH_PICKER);
1669
1671
  break;
1670
1672
 
1671
1673
  case 2: // year picker
@@ -1686,23 +1688,42 @@ sap.ui.define([
1686
1688
  };
1687
1689
 
1688
1690
  /**
1689
- * Calculates the year picker button text in secondary calendar type.
1691
+ * Returns secondary calendar year(s) text if there is secondaryCalendarType set.
1690
1692
  * @private
1691
1693
  */
1692
- Calendar.prototype._updateHeadersYearAdditionalTextHelper = function() {
1694
+ Calendar.prototype._getSecondaryYearText = function() {
1693
1695
  if (!this._getSecondaryCalendarType()){
1694
- return;
1696
+ return "";
1697
+ }
1698
+
1699
+ const oSecondaryYears = this._getDisplayedSecondaryYears();
1700
+ let sSecondaryYearText = "";
1701
+
1702
+ // Add null checks to prevent errors when secondary years are undefined
1703
+ if (!oSecondaryYears || !oSecondaryYears.start || !oSecondaryYears.end) {
1704
+ return "";
1695
1705
  }
1696
- var oSecondaryYears = this._getDisplayedSecondaryYears();
1706
+
1697
1707
  if (oSecondaryYears.start.getYear() === oSecondaryYears.end.getYear()) {
1698
- this._updateHeadersYearAdditionalText(this._oYearFormatSecondary.format(oSecondaryYears.start.toUTCJSDate(), true));
1708
+ sSecondaryYearText = this._oYearFormatSecondary.format(oSecondaryYears.start.toUTCJSDate(), true);
1699
1709
  } else {
1700
- var oLocaleData = this._getLocaleData();
1701
- var sPattern = oLocaleData.getIntervalPattern();
1702
- var sSecondaryMonthInfo = sPattern.replace(/\{0\}/, this._oYearFormatSecondary.format(oSecondaryYears.start.toUTCJSDate(), true))
1710
+ const sPattern = this._getLocaleData().getIntervalPattern();
1711
+ sSecondaryYearText = sPattern.replace(/\{0\}/, this._oYearFormatSecondary.format(oSecondaryYears.start.toUTCJSDate(), true))
1703
1712
  .replace(/\{1\}/, this._oYearFormatSecondary.format(oSecondaryYears.end.toUTCJSDate(), true));
1704
- this._updateHeadersYearAdditionalText(sSecondaryMonthInfo);
1705
1713
  }
1714
+ return sSecondaryYearText;
1715
+ };
1716
+
1717
+ /**
1718
+ * Calculates the year picker button text in secondary calendar type.
1719
+ * @private
1720
+ */
1721
+ Calendar.prototype._updateHeadersYearAdditionalTextHelper = function() {
1722
+ if (!this._getSecondaryCalendarType()){
1723
+ return;
1724
+ }
1725
+
1726
+ this._updateHeadersYearAdditionalText(this._getSecondaryYearText());
1706
1727
  };
1707
1728
 
1708
1729
  /**
@@ -1711,11 +1732,12 @@ sap.ui.define([
1711
1732
  * @private
1712
1733
  */
1713
1734
  Calendar.prototype._handleCurrentDate = function() {
1714
- var oNow = UI5Date.getInstance(),
1735
+ const oNow = UI5Date.getInstance(),
1715
1736
  oMaxDate = this.getMaxDate(),
1716
1737
  oMinDate = this.getMinDate();
1717
1738
 
1718
1739
  this.setProperty("_currentPicker", CURRENT_PICKERS.MONTH);
1740
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.MONTH);
1719
1741
 
1720
1742
  if (oMaxDate && oMaxDate.getTime() < oNow.getTime()) {
1721
1743
  this.focusDate(oMaxDate);
@@ -1726,6 +1748,21 @@ sap.ui.define([
1726
1748
  }
1727
1749
  };
1728
1750
 
1751
+ /**
1752
+ * Sets the _currentPicker property on the header aggregation, if available.
1753
+ *
1754
+ * @param {string} sPicker The picker type to set (e.g. from CURRENT_PICKERS).
1755
+ * @private
1756
+ */
1757
+ Calendar.prototype._setHeaderCurrentPicker = function(sPicker) {
1758
+ const oHeader = this.getAggregation("header");
1759
+ try {
1760
+ oHeader.setProperty("_currentPicker", sPicker);
1761
+ } catch (e) {
1762
+ Log.warning("Property '_currentPicker' could not be set on the header aggregation.");
1763
+ }
1764
+ };
1765
+
1729
1766
  Calendar.prototype._getYearString = function () {
1730
1767
  var oYearPicker = this._getYearPicker(),
1731
1768
  oYearPickerDomRef = oYearPicker.getDomRef(),
@@ -1842,6 +1879,7 @@ sap.ui.define([
1842
1879
 
1843
1880
  Calendar.prototype._closePickers = function () {
1844
1881
  this.setProperty("_currentPicker", CURRENT_PICKERS.MONTH);
1882
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.MONTH);
1845
1883
  // show again hidden month button
1846
1884
  this._togglePrevNext(this._getFocusedDate(), true);
1847
1885
 
@@ -1985,6 +2023,7 @@ sap.ui.define([
1985
2023
  this._updateMonthButtonVisibility();
1986
2024
 
1987
2025
  this.setProperty("_currentPicker", CURRENT_PICKERS.MONTH_PICKER);
2026
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.MONTH_PICKER);
1988
2027
 
1989
2028
  if (this._bActionTriggeredFromSecondHeader) {
1990
2029
  oSecondDate.setDate(1);
@@ -2022,10 +2061,11 @@ sap.ui.define([
2022
2061
  * @private
2023
2062
  */
2024
2063
  Calendar.prototype._showYearPicker = function () {
2025
- var oDate = this._getFocusedDate(),
2064
+ const oDate = this._getFocusedDate(),
2026
2065
  oYearPicker = this._getYearPicker();
2027
2066
 
2028
2067
  this.setProperty("_currentPicker", CURRENT_PICKERS.YEAR_PICKER);
2068
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.YEAR_PICKER);
2029
2069
 
2030
2070
  oYearPicker.setDate(oDate.toLocalJSDate());
2031
2071
 
@@ -2250,6 +2290,7 @@ sap.ui.define([
2250
2290
  this._showMonthPicker();
2251
2291
  } else {
2252
2292
  this.setProperty("_currentPicker", CURRENT_PICKERS.MONTH);
2293
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.MONTH);
2253
2294
  this._addMonthFocusDelegate();
2254
2295
  }
2255
2296
  };
@@ -2422,6 +2463,7 @@ sap.ui.define([
2422
2463
  oRangeMidDate = CalendarDate.fromLocalJSDate(oYearPicker.getFirstRenderedDate(), this._getPrimaryCalendarType());
2423
2464
 
2424
2465
  this.setProperty("_currentPicker", CURRENT_PICKERS.YEAR_RANGE_PICKER);
2466
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.YEAR_RANGE_PICKER);
2425
2467
 
2426
2468
  oYearRangePicker.getColumns() % 2 !== 0 ?
2427
2469
  oRangeMidDate.setYear(oRangeMidDate.getYear() + Math.floor(oYearRangePicker.getRangeSize() / 2)) :
@@ -2609,10 +2651,13 @@ sap.ui.define([
2609
2651
 
2610
2652
  Calendar.prototype._updateHeadersYearPrimaryText = function (sFirstHeaderYear, sSecondHeaderYear) {
2611
2653
  var oYearPicker = this._getYearPicker(),
2654
+ oMonthPicker = this._getMonthPicker(),
2612
2655
  oHeader = this.getAggregation("header"),
2613
2656
  oSecondMonthHeader = this.getAggregation("secondMonthHeader"),
2614
2657
  sFirstHeaderText = sFirstHeaderYear,
2615
2658
  sSecondHeaderText = sSecondHeaderYear || sFirstHeaderYear,
2659
+ sFirstYearLabelText = [sFirstHeaderText, this._getSecondaryYearText()].filter(Boolean).join(", "),
2660
+ sSecondYearLabelText = [sSecondHeaderText, this._getSecondaryYearText()].filter(Boolean).join(", "),
2616
2661
  sPrimaryCalendarType = this._getPrimaryCalendarType(),
2617
2662
  sFirstYear, sSecondYear;
2618
2663
 
@@ -2621,9 +2666,9 @@ sap.ui.define([
2621
2666
  var sYearRangeShortcut = this._oResourceBundle.getText("CALENDAR_HEADER_YEAR_RANGE_BUTTON_SHORTCUT");
2622
2667
 
2623
2668
  // Regular year button labels and tooltips
2624
- var sFirstYearLabel = this._oResourceBundle.getText("CALENDAR_HEADER_YEAR_BUTTON", [sFirstHeaderText]);
2669
+ var sFirstYearLabel = this._oResourceBundle.getText("CALENDAR_HEADER_YEAR_BUTTON", [sFirstYearLabelText]);
2625
2670
  var sFirstYearTooltip = `${sFirstYearLabel} (${sYearShortcut})`;
2626
- var sSecondYearLabel = this._oResourceBundle.getText("CALENDAR_HEADER_YEAR_BUTTON", [sSecondHeaderText]);
2671
+ var sSecondYearLabel = this._oResourceBundle.getText("CALENDAR_HEADER_YEAR_BUTTON", [sSecondYearLabelText]);
2627
2672
  var sSecondYearTooltip = `${sSecondYearLabel} (${sYearShortcut})`;
2628
2673
 
2629
2674
  // Year range labels and tooltips (will be updated if in year picker mode)
@@ -2658,14 +2703,30 @@ sap.ui.define([
2658
2703
  sFirstHeaderText = sFirstYear + " - " + sSecondYear;
2659
2704
  }
2660
2705
 
2661
- // Update year range labels for year picker mode
2706
+ // Update year range labels for year picker mode with secondary calendar support
2707
+ var sSecondaryYearRangeText = "";
2708
+ if (this._getSecondaryCalendarType()) {
2709
+ var oSecondaryFirstYear = new CalendarDate(oFirstDate, this._getSecondaryCalendarType());
2710
+ var oSecondarySecondYear = new CalendarDate(oSecondDate, this._getSecondaryCalendarType());
2711
+ // Add null checks for secondary year dates
2712
+ if (oSecondaryFirstYear && oSecondarySecondYear) {
2713
+ var sFirstSecondaryYear = this._oYearFormatSecondary.format(oSecondaryFirstYear.toUTCJSDate(), true);
2714
+ var sSecondSecondaryYear = this._oYearFormatSecondary.format(oSecondarySecondYear.toUTCJSDate(), true);
2715
+ sSecondaryYearRangeText = sFirstSecondaryYear + " - " + sSecondSecondaryYear;
2716
+ }
2717
+ }
2718
+
2719
+ var sYearRangeLabelText = [sFirstYear + " - " + sSecondYear, sSecondaryYearRangeText].filter(Boolean).join(", ");
2662
2720
  sYearRangeLabel = this._oResourceBundle.getText("CALENDAR_HEADER_YEAR_RANGE_BUTTON", [sFirstYear, sSecondYear]);
2663
2721
  sYearRangeTooltip = `${sYearRangeLabel} (${sYearRangeShortcut})`;
2664
2722
 
2665
2723
  // Set properties for button4 when in year picker mode (always set accessibility properties when button4 is used)
2666
2724
  oHeader.setProperty("_tooltipButton4", sYearRangeTooltip);
2667
2725
  oHeader.setProperty("_keyShortcutButton4", sYearRangeShortcut);
2668
- oHeader.setProperty("_descriptionButton4", sYearRangeLabel);
2726
+ oHeader.setProperty("_descriptionButton4", sYearRangeLabelText);
2727
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.YEAR_PICKER);
2728
+ } else if (this._iMode === 1 && oMonthPicker) {
2729
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.MONTH_PICKER);
2669
2730
  } else {
2670
2731
  // Set properties for button4 when not in year picker mode (always set accessibility properties when button4 is used)
2671
2732
  oHeader.setProperty("_tooltipButton4", sSecondYearTooltip);
@@ -2681,7 +2742,7 @@ sap.ui.define([
2681
2742
  var sSecondHeaderYearLabel, sSecondHeaderYearTooltip;
2682
2743
 
2683
2744
  if (this._iMode === 2 && oYearPicker) {
2684
- sSecondHeaderYearLabel = sYearRangeLabel;
2745
+ sSecondHeaderYearLabel = sYearRangeLabelText;
2685
2746
  sSecondHeaderYearTooltip = sYearRangeTooltip;
2686
2747
  } else {
2687
2748
  sSecondHeaderYearLabel = sSecondYearLabel;
@@ -2696,14 +2757,14 @@ sap.ui.define([
2696
2757
  oSecondMonthHeader.setProperty("_descriptionButton2", sSecondHeaderYearLabel);
2697
2758
 
2698
2759
  oHeader.setTextButton2(sFirstHeaderText);
2699
- oHeader.setAriaLabelButton2(this._iMode === 2 && oYearPicker ? sYearRangeLabel : sFirstYearLabel);
2760
+ oHeader.setAriaLabelButton2(this._iMode === 2 && oYearPicker ? sYearRangeLabelText : sFirstYearLabel);
2700
2761
  oHeader.setProperty("_tooltipButton2", this._iMode === 2 && oYearPicker ? sYearRangeTooltip : sFirstYearTooltip);
2701
- oHeader.setProperty("_descriptionButton2", this._iMode === 2 && oYearPicker ? sYearRangeLabel : sFirstYearLabel);
2762
+ oHeader.setProperty("_descriptionButton2", this._iMode === 2 && oYearPicker ? sYearRangeLabelText : sFirstYearLabel);
2702
2763
 
2703
2764
  // In single header with two months scenario, button2 should represent the second month's year
2704
2765
  if (this._isTwoMonthsInTwoColumns() && sSecondHeaderText !== sFirstHeaderText) {
2705
2766
  // Button2 shows second month year, so update its accessibility properties
2706
- var sButton2Label = this._iMode === 2 && oYearPicker ? sYearRangeLabel : sSecondYearLabel;
2767
+ var sButton2Label = this._iMode === 2 && oYearPicker ? sYearRangeLabelText : sSecondYearLabel;
2707
2768
  var sButton2Tooltip = this._iMode === 2 && oYearPicker ? sYearRangeTooltip : sSecondYearTooltip;
2708
2769
  var sButton2Shortcut = this._iMode === 2 && oYearPicker ? sYearRangeShortcut : sYearShortcut;
2709
2770
 
@@ -2720,9 +2781,24 @@ sap.ui.define([
2720
2781
  // In year picker mode, extract years from the range string for button4
2721
2782
  var aYears = sSecondHeaderText.split(" - ");
2722
2783
  if (aYears.length === 2) {
2784
+ // Create secondary year range text for button4
2785
+ var sButton4SecondaryYearText = "";
2786
+ if (this._getSecondaryCalendarType()) {
2787
+ var oButton4FirstDate = new CalendarDate(oFirstDate, this._getSecondaryCalendarType());
2788
+ var oButton4SecondDate = new CalendarDate(oSecondDate, this._getSecondaryCalendarType());
2789
+ // Add null checks for button4 secondary year dates
2790
+ if (oButton4FirstDate && oButton4SecondDate) {
2791
+ var sButton4FirstSecondaryYear = this._oYearFormatSecondary.format(oButton4FirstDate.toUTCJSDate(), true);
2792
+ var sButton4SecondSecondaryYear = this._oYearFormatSecondary.format(oButton4SecondDate.toUTCJSDate(), true);
2793
+ sButton4SecondaryYearText = sButton4FirstSecondaryYear + " - " + sButton4SecondSecondaryYear;
2794
+ }
2795
+ }
2796
+ var sButton4LabelText = [aYears[0] + " - " + aYears[1], sButton4SecondaryYearText].filter(Boolean).join(", ");
2723
2797
  sButton4Label = this._oResourceBundle.getText("CALENDAR_HEADER_YEAR_RANGE_BUTTON", aYears);
2724
2798
  sButton4Tooltip = `${sButton4Label} (${sYearRangeShortcut})`;
2725
2799
  sButton4Shortcut = sYearRangeShortcut;
2800
+ // Use the full label text with secondary years for accessibility
2801
+ sButton4Label = sButton4LabelText;
2726
2802
  } else {
2727
2803
  // Fallback if string format is unexpected
2728
2804
  sButton4Label = sSecondYearLabel;
@@ -2938,7 +3014,7 @@ sap.ui.define([
2938
3014
  this._bNamesLengthChecked = true;
2939
3015
 
2940
3016
  this.setProperty("_currentPicker", CURRENT_PICKERS.MONTH);
2941
-
3017
+ this._setHeaderCurrentPicker(CURRENT_PICKERS.MONTH);
2942
3018
  if (!this._bLongMonth) {
2943
3019
  // update short month name (long name used by default)
2944
3020
  aMonths = this.getAggregation("month");
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2026 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -43,7 +43,7 @@ sap.ui.define([
43
43
  *
44
44
  * Applications could inherit from this element to add own fields.
45
45
  * @extends sap.ui.unified.DateTypeRange
46
- * @version 1.143.1
46
+ * @version 1.145.0
47
47
  *
48
48
  * @constructor
49
49
  * @public