@openui5/sap.ui.unified 1.96.12 → 1.96.14

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 (46) hide show
  1. package/THIRDPARTY.txt +1 -1
  2. package/package.json +2 -2
  3. package/src/sap/ui/unified/.library +1 -1
  4. package/src/sap/ui/unified/Calendar.js +40 -7
  5. package/src/sap/ui/unified/CalendarAppointment.js +1 -1
  6. package/src/sap/ui/unified/CalendarDateInterval.js +1 -1
  7. package/src/sap/ui/unified/CalendarLegend.js +1 -1
  8. package/src/sap/ui/unified/CalendarLegendItem.js +1 -1
  9. package/src/sap/ui/unified/CalendarMonthInterval.js +1 -1
  10. package/src/sap/ui/unified/CalendarOneMonthInterval.js +1 -1
  11. package/src/sap/ui/unified/CalendarRow.js +1 -1
  12. package/src/sap/ui/unified/CalendarTimeInterval.js +1 -1
  13. package/src/sap/ui/unified/CalendarWeekInterval.js +1 -1
  14. package/src/sap/ui/unified/ColorPicker.js +1 -1
  15. package/src/sap/ui/unified/ColorPickerPopover.js +1 -1
  16. package/src/sap/ui/unified/ContentSwitcher.js +1 -1
  17. package/src/sap/ui/unified/Currency.js +1 -1
  18. package/src/sap/ui/unified/CurrencyRenderer.js +1 -1
  19. package/src/sap/ui/unified/DateRange.js +1 -1
  20. package/src/sap/ui/unified/DateTypeRange.js +1 -1
  21. package/src/sap/ui/unified/FileUploader.js +1 -1
  22. package/src/sap/ui/unified/FileUploaderParameter.js +1 -1
  23. package/src/sap/ui/unified/FileUploaderXHRSettings.js +1 -1
  24. package/src/sap/ui/unified/Menu.js +1 -1
  25. package/src/sap/ui/unified/MenuItem.js +1 -1
  26. package/src/sap/ui/unified/MenuItemBase.js +1 -1
  27. package/src/sap/ui/unified/MenuRenderer.js +1 -1
  28. package/src/sap/ui/unified/MenuTextFieldItem.js +1 -1
  29. package/src/sap/ui/unified/Shell.js +1 -1
  30. package/src/sap/ui/unified/ShellHeadItem.js +1 -1
  31. package/src/sap/ui/unified/ShellHeadUserItem.js +1 -1
  32. package/src/sap/ui/unified/ShellLayout.js +1 -1
  33. package/src/sap/ui/unified/ShellOverlay.js +1 -1
  34. package/src/sap/ui/unified/SplitContainer.js +1 -1
  35. package/src/sap/ui/unified/calendar/DatesRow.js +1 -1
  36. package/src/sap/ui/unified/calendar/Header.js +1 -1
  37. package/src/sap/ui/unified/calendar/IndexPicker.js +1 -1
  38. package/src/sap/ui/unified/calendar/Month.js +50 -14
  39. package/src/sap/ui/unified/calendar/MonthPicker.js +1 -1
  40. package/src/sap/ui/unified/calendar/MonthRenderer.js +11 -1
  41. package/src/sap/ui/unified/calendar/MonthsRow.js +1 -1
  42. package/src/sap/ui/unified/calendar/OneMonthDatesRow.js +1 -1
  43. package/src/sap/ui/unified/calendar/TimesRow.js +1 -1
  44. package/src/sap/ui/unified/calendar/YearPicker.js +1 -1
  45. package/src/sap/ui/unified/calendar/YearRangePicker.js +1 -1
  46. package/src/sap/ui/unified/library.js +2 -2
package/THIRDPARTY.txt CHANGED
@@ -456,7 +456,7 @@ License: Apache-2.0
456
456
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
457
457
  Contained in: lib/jsdoc/ui5/plugin.js
458
458
 
459
- Component: SAP Theming Base Content, version: 11.1.34
459
+ Component: SAP Theming Base Content, version: 11.1.42
460
460
  Copyright: SAP SE or an SAP affiliate company and Theming Base Content contributors
461
461
  License: Apache-2.0
462
462
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.unified",
3
- "version": "1.96.12",
3
+ "version": "1.96.14",
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/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.ui.core": "1.96.12"
17
+ "@openui5/sap.ui.core": "1.96.14"
18
18
  }
19
19
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.96.12</version>
9
+ <version>1.96.14</version>
10
10
 
11
11
  <documentation>Unified controls intended for both, mobile and desktop scenarios</documentation>
12
12
 
@@ -26,7 +26,9 @@ sap.ui.define([
26
26
  "./CalendarRenderer",
27
27
  "sap/ui/dom/containsOrEquals",
28
28
  "sap/base/util/deepEqual",
29
- "sap/base/Log"
29
+ "sap/base/Log",
30
+ "sap/ui/core/Configuration",
31
+ "sap/ui/core/date/CalendarWeekNumbering"
30
32
  ], function(
31
33
  Control,
32
34
  LocaleData,
@@ -49,7 +51,9 @@ sap.ui.define([
49
51
  CalendarRenderer,
50
52
  containsOrEquals,
51
53
  deepEqual,
52
- Log
54
+ Log,
55
+ Configuration,
56
+ CalendarWeekNumbering
53
57
  ) {
54
58
  "use strict";
55
59
 
@@ -70,7 +74,7 @@ sap.ui.define([
70
74
  * Basic Calendar.
71
75
  * This calendar is used for DatePickers
72
76
  * @extends sap.ui.core.Control
73
- * @version 1.96.12
77
+ * @version 1.96.14
74
78
  *
75
79
  * @constructor
76
80
  * @public
@@ -106,8 +110,9 @@ sap.ui.define([
106
110
  months : {type : "int", group : "Appearance", defaultValue : 1},
107
111
 
108
112
  /**
109
- * If set, the first day of the displayed week is this day. Valid values are 0 to 6.
110
- * If not a valid value is set, the default of the used locale is used.
113
+ * If the property is set, this day marks the start of the displayed week. Valid values are 0 to 6.
114
+ * If no valid property is set, the current locale's default is applied.
115
+ * Note: This property should not be used with the calendarWeekNumbering property.
111
116
  * @since 1.28.9
112
117
  */
113
118
  firstDayOfWeek : {type : "int", group : "Appearance", defaultValue : -1},
@@ -195,7 +200,17 @@ sap.ui.define([
195
200
  *
196
201
  * @since 1.84.0
197
202
  */
198
- _currentPicker : {type : "string", group : "Appearance", visibility: "hidden"}
203
+ _currentPicker : {type : "string", group : "Appearance", visibility: "hidden"},
204
+
205
+ /**
206
+ * If set, the calendar week numbering is used for display.
207
+ * If not set, the calendar week numbering of the global configuration is used.
208
+ * Note: This property should not be used with firstDayOfWeek property.
209
+ * Note: This API has been introduced with version 1.108 and downported to this release with
210
+ * patch level 15.
211
+ * @since 1.96.15
212
+ */
213
+ calendarWeekNumbering : { type : "sap.ui.core.date.CalendarWeekNumbering", group : "Appearance", defaultValue: null}
199
214
 
200
215
  },
201
216
  aggregations : {
@@ -473,7 +488,7 @@ sap.ui.define([
473
488
  };
474
489
 
475
490
  Calendar.prototype._createMonth = function(sId){
476
- var oMonth = new Month(sId, {width: "100%"});
491
+ var oMonth = new Month(sId, {width: "100%", calendarWeekNumbering: this.getCalendarWeekNumbering()});
477
492
  oMonth._bCalendar = true;
478
493
  oMonth.attachEvent("datehovered", this._handleDateHovered, this);
479
494
  oMonth.attachEvent("weekNumberSelect", this._handleWeekNumberSelect, this);
@@ -515,6 +530,10 @@ sap.ui.define([
515
530
  oMonthDate = aMonths[0].getDate(),
516
531
  oFocusedDate = this._getFocusedDate();
517
532
 
533
+ if (this.getFirstDayOfWeek() !== -1 && this.getCalendarWeekNumbering() !== "Default") {
534
+ Log.warning("Both properties firstDayOfWeek and calendarWeekNumbering should not be used at the same time!");
535
+ }
536
+
518
537
  if (aMonths.length > 1 && oMonthDate) {
519
538
  // for more than one month - re-render same months (if already rendered once)
520
539
  oCalDate = CalendarDate.fromLocalJSDate(oMonthDate, this.getPrimaryCalendarType());
@@ -787,6 +806,18 @@ sap.ui.define([
787
806
 
788
807
  };
789
808
 
809
+ Calendar.prototype.setCalendarWeekNumbering = function(sCalendarWeekNumbering) {
810
+ var aMonths = this.getAggregation("month");
811
+
812
+ this.setProperty("calendarWeekNumbering", sCalendarWeekNumbering);
813
+
814
+ for (var i = 0; i < aMonths.length; i++) {
815
+ aMonths[i].setProperty("calendarWeekNumbering", sCalendarWeekNumbering);
816
+ }
817
+
818
+ return this;
819
+ };
820
+
790
821
  Calendar.prototype.setMonths = function(iMonths){
791
822
 
792
823
  this._bDateRangeChanged = undefined; // to force rerendering
@@ -806,6 +837,8 @@ sap.ui.define([
806
837
  oMonth.attachEvent("_bindMousemove", _handleBindMousemove, this);
807
838
  oMonth.attachEvent("_unbindMousemove", _handleUnbindMousemove, this);
808
839
  oMonth._bNoThemeChange = true;
840
+ oMonth._bNotInTabChain = true;
841
+ oMonth.setCalendarWeekNumbering(this.getCalendarWeekNumbering());
809
842
  oMonth.setSecondaryCalendarType(this._getSecondaryCalendarType());
810
843
  this.addAggregation("month",oMonth);
811
844
  }
@@ -21,7 +21,7 @@ sap.ui.define(['./DateTypeRange', 'sap/ui/core/format/DateFormat', 'sap/ui/core/
21
21
  *
22
22
  * Applications could inherit from this element to add own fields.
23
23
  * @extends sap.ui.unified.DateTypeRange
24
- * @version 1.96.12
24
+ * @version 1.96.14
25
25
  *
26
26
  * @constructor
27
27
  * @public
@@ -57,7 +57,7 @@ sap.ui.define([
57
57
  * @class
58
58
  * <code>CalendarDateInterval</code> only visualizes the dates in a one-line interval and allows the selection of a single day.
59
59
  * @extends sap.ui.unified.Calendar
60
- * @version 1.96.12
60
+ * @version 1.96.14
61
61
  *
62
62
  * @constructor
63
63
  * @public
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  * @extends sap.ui.core.Control
35
35
  *
36
36
  * @author SAP SE
37
- * @version 1.96.12
37
+ * @version 1.96.14
38
38
  *
39
39
  * @constructor
40
40
  * @public
@@ -21,7 +21,7 @@ sap.ui.define(['sap/ui/core/Element', './library'],
21
21
  * @class
22
22
  * Item to be displayed in a CalendarLegend.
23
23
  * @extends sap.ui.core.Element
24
- * @version 1.96.12
24
+ * @version 1.96.14
25
25
  *
26
26
  * @constructor
27
27
  * @public
@@ -67,7 +67,7 @@ sap.ui.define([
67
67
  * <b>Note:</b> JavaScript Date objects are used to set and return the months, mark them as selected or as a special type.
68
68
  * But the date part of the Date object is not used. If a Date object is returned the date will be set to the 1st of the corresponding month.
69
69
  * @extends sap.ui.core.Control
70
- * @version 1.96.12
70
+ * @version 1.96.14
71
71
  *
72
72
  * @constructor
73
73
  * @public
@@ -57,7 +57,7 @@ sap.ui.define([
57
57
  * Navigation via year picker switches to the corresponding year and the same month as before the navigation.
58
58
  *
59
59
  * @extends sap.ui.unified.CalendarDateInterval
60
- * @version 1.96.12
60
+ * @version 1.96.14
61
61
  *
62
62
  * @constructor
63
63
  * @private
@@ -76,7 +76,7 @@ sap.ui.define([
76
76
  * @class
77
77
  * A calendar row with a header and appointments. The Appointments will be placed in the defined interval.
78
78
  * @extends sap.ui.core.Control
79
- * @version 1.96.12
79
+ * @version 1.96.14
80
80
  *
81
81
  * @constructor
82
82
  * @public
@@ -72,7 +72,7 @@ sap.ui.define([
72
72
  * @class
73
73
  * Calendar with granularity of time items displayed in one line.
74
74
  * @extends sap.ui.core.Control
75
- * @version 1.96.12
75
+ * @version 1.96.14
76
76
  *
77
77
  * @constructor
78
78
  * @public
@@ -39,7 +39,7 @@ sap.ui.define(['sap/ui/unified/calendar/CalendarUtils', 'sap/ui/unified/calendar
39
39
  * its start date to the first date of the same week as the date the user chose.
40
40
  *
41
41
  * @extends sap.ui.unified.CalendarDateInterval
42
- * @version 1.96.12
42
+ * @version 1.96.14
43
43
  *
44
44
  * @constructor
45
45
  * @private
@@ -65,7 +65,7 @@ sap.ui.define([
65
65
  * @extends sap.ui.core.Control
66
66
  *
67
67
  * @author SAP SE
68
- * @version 1.96.12
68
+ * @version 1.96.14
69
69
  *
70
70
  * @constructor
71
71
  * @public
@@ -47,7 +47,7 @@ sap.ui.define([
47
47
  * A thin wrapper over {@link sap.ui.unified.ColorPicker} allowing the latter to be used in a popover.
48
48
  *
49
49
  * @extends sap.ui.core.Control
50
- * @version 1.96.12
50
+ * @version 1.96.14
51
51
  *
52
52
  * @constructor
53
53
  * @public
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  * @extends sap.ui.core.Control
32
32
  *
33
33
  * @author SAP SE
34
- * @version 1.96.12
34
+ * @version 1.96.14
35
35
  *
36
36
  * @constructor
37
37
  * @public
@@ -58,7 +58,7 @@ sap.ui.define([
58
58
  * @extends sap.ui.core.Control
59
59
  *
60
60
  * @author SAP SE
61
- * @version 1.96.12
61
+ * @version 1.96.14
62
62
  *
63
63
  * @constructor
64
64
  * @public
@@ -14,7 +14,7 @@ sap.ui.define(["sap/m/library", "sap/ui/core/Core"],
14
14
  /**
15
15
  * Currency renderer.
16
16
  *
17
- * @version 1.96.12
17
+ * @version 1.96.14
18
18
  * @namespace
19
19
  */
20
20
  var CurrencyRenderer = {
@@ -20,7 +20,7 @@ sap.ui.define(['sap/ui/core/Element', './library', 'sap/ui/unified/calendar/Cale
20
20
  * @class
21
21
  * Date range for use in DatePicker
22
22
  * @extends sap.ui.core.Element
23
- * @version 1.96.12
23
+ * @version 1.96.14
24
24
  *
25
25
  * @constructor
26
26
  * @public
@@ -25,7 +25,7 @@ sap.ui.define(['./DateRange', './library'],
25
25
  * @class
26
26
  * Date range with calendar day type information. Used to visualize special days in the Calendar.
27
27
  * @extends sap.ui.unified.DateRange
28
- * @version 1.96.12
28
+ * @version 1.96.14
29
29
  *
30
30
  * @constructor
31
31
  * @public
@@ -63,7 +63,7 @@ sap.ui.define([
63
63
  * @implements sap.ui.core.IFormContent, sap.ui.unified.IProcessableBlobs
64
64
  *
65
65
  * @author SAP SE
66
- * @version 1.96.12
66
+ * @version 1.96.14
67
67
  *
68
68
  * @constructor
69
69
  * @public
@@ -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.96.12
25
+ * @version 1.96.14
26
26
  *
27
27
  * @constructor
28
28
  * @public
@@ -20,7 +20,7 @@ sap.ui.define(['sap/ui/core/Element', './library'],
20
20
  * @extends sap.ui.core.Element
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.96.12
23
+ * @version 1.96.14
24
24
  *
25
25
  * @constructor
26
26
  * @since 1.52
@@ -59,7 +59,7 @@ sap.ui.define([
59
59
  * @implements sap.ui.core.IContextMenu
60
60
  *
61
61
  * @author SAP SE
62
- * @version 1.96.12
62
+ * @version 1.96.14
63
63
  * @since 1.21.0
64
64
  *
65
65
  * @constructor
@@ -23,7 +23,7 @@ sap.ui.define(['sap/ui/core/IconPool', './MenuItemBase', './library', 'sap/ui/co
23
23
  * @extends sap.ui.unified.MenuItemBase
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.96.12
26
+ * @version 1.96.14
27
27
  * @since 1.21.0
28
28
  *
29
29
  * @constructor
@@ -23,7 +23,7 @@ sap.ui.define(['sap/ui/core/Element', './library'],
23
23
  * @extends sap.ui.core.Element
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.96.12
26
+ * @version 1.96.14
27
27
  * @since 1.21.0
28
28
  *
29
29
  * @constructor
@@ -15,7 +15,7 @@ sap.ui.define([],
15
15
  * Menu renderer.
16
16
  * @author SAP - TD Core UI&AM UI Infra
17
17
  *
18
- * @version 1.96.12
18
+ * @version 1.96.14
19
19
  * @namespace
20
20
  */
21
21
  var MenuRenderer = {
@@ -51,7 +51,7 @@ sap.ui.define([
51
51
  * @extends sap.ui.unified.MenuItemBase
52
52
  *
53
53
  * @author SAP SE
54
- * @version 1.96.12
54
+ * @version 1.96.14
55
55
  * @since 1.21.0
56
56
  *
57
57
  * @constructor
@@ -25,7 +25,7 @@ sap.ui.define(['./ShellHeader', './ShellLayout', './library', './ShellRenderer']
25
25
  * @extends sap.ui.unified.ShellLayout
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.96.12
28
+ * @version 1.96.14
29
29
  *
30
30
  * @constructor
31
31
  * @public
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.core.Element
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.96.12
31
+ * @version 1.96.14
32
32
  *
33
33
  * @constructor
34
34
  * @public
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @extends sap.ui.core.Element
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.96.12
30
+ * @version 1.96.14
31
31
  *
32
32
  * @constructor
33
33
  * @public
@@ -48,7 +48,7 @@ sap.ui.define([
48
48
  * @extends sap.ui.core.Control
49
49
  *
50
50
  * @author SAP SE
51
- * @version 1.96.12
51
+ * @version 1.96.14
52
52
  *
53
53
  * @constructor
54
54
  * @public
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * @extends sap.ui.core.Control
41
41
  *
42
42
  * @author SAP SE
43
- * @version 1.96.12
43
+ * @version 1.96.14
44
44
  *
45
45
  * @constructor
46
46
  * @public
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @extends sap.ui.core.Control
34
34
  *
35
35
  * @author SAP SE
36
- * @version 1.96.12
36
+ * @version 1.96.14
37
37
  *
38
38
  * @constructor
39
39
  * @public
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * If used inside the calendar the properties and aggregation are directly taken from the parent
33
33
  * (To not duplicate and sync DateRanges and so on...)
34
34
  * @extends sap.ui.unified.calendar.Month
35
- * @version 1.96.12
35
+ * @version 1.96.14
36
36
  *
37
37
  * @constructor
38
38
  * @public
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  *
28
28
  * <b>Note:</b> This is used inside the calendar. Not for standalone usage
29
29
  * @extends sap.ui.core.Control
30
- * @version 1.96.12
30
+ * @version 1.96.14
31
31
  *
32
32
  * @constructor
33
33
  * @public
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * This control serves for picking an item from a grid with items which are relative periods in Plannig Calendar.
33
33
  * This is used inside the sap.m.PlanningCalendar relative views. Not for stand alone usage.
34
34
  * @extends sap.ui.core.Control
35
- * @version 1.96.12
35
+ * @version 1.96.14
36
36
  *
37
37
  * @constructor
38
38
  * @private
@@ -21,7 +21,12 @@ sap.ui.define([
21
21
  "./MonthRenderer",
22
22
  "sap/ui/dom/containsOrEquals",
23
23
  "sap/ui/events/KeyCodes",
24
- "sap/ui/thirdparty/jquery"
24
+ "sap/ui/thirdparty/jquery",
25
+ 'sap/ui/core/InvisibleMessage',
26
+ "sap/ui/core/Configuration",
27
+ "sap/ui/core/date/CalendarWeekNumbering",
28
+ "sap/ui/core/date/CalendarUtils",
29
+ "sap/base/Log"
25
30
  ], function(
26
31
  Control,
27
32
  Device,
@@ -38,7 +43,12 @@ sap.ui.define([
38
43
  MonthRenderer,
39
44
  containsOrEquals,
40
45
  KeyCodes,
41
- jQuery
46
+ jQuery,
47
+ InvisibleMessage,
48
+ Configuration,
49
+ CalendarWeekNumbering,
50
+ CalendarDateUtils,
51
+ Log
42
52
  ) {
43
53
  "use strict";
44
54
 
@@ -65,7 +75,7 @@ sap.ui.define([
65
75
  * If used inside the calendar the properties and aggregation are directly taken from the parent
66
76
  * (To not duplicate and sync DateRanges and so on...)
67
77
  * @extends sap.ui.core.Control
68
- * @version 1.96.12
78
+ * @version 1.96.14
69
79
  *
70
80
  * @constructor
71
81
  * @public
@@ -99,8 +109,9 @@ sap.ui.define([
99
109
  showHeader : {type : "boolean", group : "Appearance", defaultValue : false},
100
110
 
101
111
  /**
102
- * If set, the first day of the displayed week is this day. Valid values are 0 to 6.
103
- * If not a valid value is set, the default of the used locale is used.
112
+ * If the property is set, this day marks the start of the displayed week. Valid values are 0 to 6.
113
+ * If no valid property is set, the current locale's default is applied.
114
+ * Note: This property should not be used with the calendarWeekNumbering property.
104
115
  * @since 1.28.9
105
116
  */
106
117
  firstDayOfWeek : {type : "int", group : "Appearance", defaultValue : -1},
@@ -149,7 +160,17 @@ sap.ui.define([
149
160
  *
150
161
  * @since 1.90
151
162
  */
152
- _focusedDate : {type : "object", group : "Data", visibility: "hidden", defaultValue: null}
163
+ _focusedDate : {type : "object", group : "Data", visibility: "hidden", defaultValue: null},
164
+
165
+ /**
166
+ * If set, the calendar week numbering is used for display.
167
+ * If not set, the calendar week numbering of the global configuration is used.
168
+ * Note: This property should not be used with firstDayOfWeek property.
169
+ * Note: This API has been introduced with version 1.108 and downported to this release with
170
+ * patch level 15.
171
+ * @since 1.96.15
172
+ */
173
+ calendarWeekNumbering : { type : "sap.ui.core.date.CalendarWeekNumbering", group : "Appearance", defaultValue: null}
153
174
 
154
175
  },
155
176
  aggregations : {
@@ -294,6 +315,12 @@ sap.ui.define([
294
315
  return this.getDomRef() && this._oItemNavigation.getItemDomRefs()[this._oItemNavigation.getFocusedIndex()];
295
316
  };
296
317
 
318
+ Month.prototype.onBeforeRendering = function() {
319
+ if (this.getFirstDayOfWeek() !== -1 && this.getCalendarWeekNumbering() !== "Default") {
320
+ Log.warning("Both properties firstDayOfWeek and calendarWeekNumbering should not be used at the same time!");
321
+ }
322
+ };
323
+
297
324
  Month.prototype.onAfterRendering = function(){
298
325
  this.bSpaceButtonPressed = false;
299
326
  _initItemNavigation.call(this);
@@ -739,8 +766,14 @@ sap.ui.define([
739
766
  }
740
767
 
741
768
  if (iFirstDayOfWeek < 0 || iFirstDayOfWeek > 6) {
742
- var oLocaleData = this._getLocaleData();
743
- iFirstDayOfWeek = oLocaleData.getFirstDayOfWeek();
769
+ var oWeekConfigurationValues = CalendarDateUtils.getWeekConfigurationValues(this.getCalendarWeekNumbering(), new Locale(this._getLocale()));
770
+
771
+ if (oWeekConfigurationValues) {
772
+ iFirstDayOfWeek = oWeekConfigurationValues.firstDayOfWeek;
773
+ } else {
774
+ var oLocaleData = this._getLocaleData();
775
+ iFirstDayOfWeek = oLocaleData.getFirstDayOfWeek();
776
+ }
744
777
  }
745
778
 
746
779
  return iFirstDayOfWeek;
@@ -1566,18 +1599,21 @@ sap.ui.define([
1566
1599
  * @private
1567
1600
  */
1568
1601
  Month.prototype._calculateWeekNumber = function (oDate) {
1569
- var oEndDate = this._getLastWeekDate(oDate);
1570
1602
  var oLocale = new Locale(this._getLocale());
1603
+ var oEndDate = this._getLastWeekDate(oDate);
1571
1604
  var oLocaleData = this._getLocaleData();
1572
- var oDateFormat = DateFormat.getInstance({pattern: "w", calendarType: this.getPrimaryCalendarType()}, oLocale);
1605
+ var oDateFormat;
1573
1606
  var iWeekNumber;
1574
1607
 
1608
+ oDateFormat = DateFormat.getInstance({pattern: "w", calendarType: this.getPrimaryCalendarType(), calendarWeekNumbering: this.getCalendarWeekNumbering()}, oLocale);
1609
+
1610
+ var bIsRegionUS = oLocaleData.firstDayStartsFirstWeek();
1611
+
1575
1612
  // Because the date we use to calculate the week number may be in one year and in the same time
1576
1613
  // includes days in a new month into a new year, we explicitly changed the week number
1577
- // US calendar weeks overlap Jan 1st is always week 1 while Dec 31st is always last week number
1578
- var bIsRegionUS = oLocaleData.firstDayStartsFirstWeek();
1579
- if (oDate.getMonth() === 11 && oEndDate.getMonth() === 0 && bIsRegionUS) {
1580
- iWeekNumber = 1;
1614
+ // US calendar weeks overlap, Jan 1st is always week 1, while Dec 31st is always last week.
1615
+ if (oEndDate.getMonth() === 0 && this._oDate.getMonth() === 0 && bIsRegionUS) {
1616
+ iWeekNumber = oDateFormat.format(oEndDate.toUTCJSDate(), true);
1581
1617
  } else {
1582
1618
  iWeekNumber = oDateFormat.format(oDate.toLocalJSDate());
1583
1619
  }
@@ -51,7 +51,7 @@ sap.ui.define([
51
51
  * renders a MonthPicker with ItemNavigation
52
52
  * This is used inside the calendar. Not for stand alone usage
53
53
  * @extends sap.ui.core.Control
54
- * @version 1.96.12
54
+ * @version 1.96.14
55
55
  *
56
56
  * @constructor
57
57
  * @public
@@ -219,7 +219,11 @@ sap.ui.define(['sap/ui/unified/calendar/CalendarUtils', 'sap/ui/unified/calendar
219
219
  if (sWidth) {
220
220
  oRm.style("width", sWidth);
221
221
  }
222
- oRm.accessibilityState(null, {role: "columnheader", label: aWeekDaysWide[(i + iStartDay) % 7]});
222
+ oRm.accessibilityState(null, {
223
+ role: "columnheader",
224
+ label: aWeekDaysWide[(i + iStartDay) % 7],
225
+ hidden: true
226
+ });
223
227
  oRm.openEnd(); // div element
224
228
  oRm.text(aWeekDays[(i + iStartDay) % 7]);
225
229
  oRm.close("div");
@@ -390,6 +394,12 @@ sap.ui.define(['sap/ui/unified/calendar/CalendarUtils', 'sap/ui/unified/calendar
390
394
  bEnabled = false;
391
395
  }
392
396
 
397
+ if (!bDayName) {
398
+ mAccProps["describedby"] = iNumber < 0
399
+ ? oHelper.sId + "-WH" + iWeekDay
400
+ : oHelper.sId + "-WH" + iNumber;
401
+ }
402
+
393
403
  oRm.openStart("div", oHelper.sId + "-" + sYyyymmdd);
394
404
  oRm.class("sapUiCalItem");
395
405
  oRm.class("sapUiCalWDay" + iWeekDay);
@@ -61,7 +61,7 @@ sap.ui.define([
61
61
  * The MontsRow works with JavaScript Date objects, but only the month and the year are used to display and interact.
62
62
  * As representation for a month, the 1st of the month will always be returned in the API.
63
63
  * @extends sap.ui.core.Control
64
- * @version 1.96.12
64
+ * @version 1.96.14
65
65
  *
66
66
  * @constructor
67
67
  * @public
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  * Other usages are not supported.
35
35
  *
36
36
  * @extends sap.ui.unified.calendar.DatesRow
37
- * @version 1.96.12
37
+ * @version 1.96.14
38
38
  *
39
39
  * @constructor
40
40
  * @private
@@ -62,7 +62,7 @@ sap.ui.define([
62
62
  *
63
63
  * The TimesRow works with JavaScript Date objects.
64
64
  * @extends sap.ui.core.Control
65
- * @version 1.96.12
65
+ * @version 1.96.14
66
66
  *
67
67
  * @constructor
68
68
  * @public
@@ -56,7 +56,7 @@ sap.ui.define([
56
56
  * As in all date-time controls, all pubic JS Date objects that are given (e.g. <code>setDate()</code>) or read
57
57
  * (e.g. <code>getFirstRenderedDate</code>) with values which are considered as date objects in browser(local) timezone.
58
58
  * @extends sap.ui.core.Control
59
- * @version 1.96.12
59
+ * @version 1.96.14
60
60
  *
61
61
  * @constructor
62
62
  * @public
@@ -49,7 +49,7 @@ sap.ui.define([
49
49
  * @extends sap.ui.unified.calendar.YearPicker
50
50
  *
51
51
  * @author SAP SE
52
- * @version 1.96.12
52
+ * @version 1.96.14
53
53
  *
54
54
  * @constructor
55
55
  * @private
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  // delegate further initialization of this library to the Core
26
26
  sap.ui.getCore().initLibrary({
27
27
  name : "sap.ui.unified",
28
- version: "1.96.12",
28
+ version: "1.96.14",
29
29
  dependencies : ["sap.ui.core"],
30
30
  designtime: "sap/ui/unified/designtime/library.designtime",
31
31
  types: [
@@ -98,7 +98,7 @@ sap.ui.define([
98
98
  * @namespace
99
99
  * @alias sap.ui.unified
100
100
  * @author SAP SE
101
- * @version 1.96.12
101
+ * @version 1.96.14
102
102
  * @since 1.28
103
103
  * @public
104
104
  */