@openui5/sap.ui.unified 1.149.1 → 1.151.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 +24 -0
- package/THIRDPARTY.txt +25 -6
- package/package.json +2 -2
- package/src/sap/ui/unified/.library +1 -1
- package/src/sap/ui/unified/Calendar.js +11 -1
- package/src/sap/ui/unified/CalendarAppointment.js +23 -4
- package/src/sap/ui/unified/CalendarDateInterval.js +1 -1
- package/src/sap/ui/unified/CalendarLegend.js +1 -1
- package/src/sap/ui/unified/CalendarLegendItem.js +1 -1
- package/src/sap/ui/unified/CalendarMonthInterval.js +5 -1
- package/src/sap/ui/unified/CalendarOneMonthInterval.js +1 -1
- package/src/sap/ui/unified/CalendarRow.js +1 -1
- package/src/sap/ui/unified/CalendarRowRenderer.js +39 -24
- package/src/sap/ui/unified/CalendarTimeInterval.js +1 -1
- package/src/sap/ui/unified/CalendarWeekInterval.js +1 -1
- package/src/sap/ui/unified/ColorPicker.js +46 -1
- package/src/sap/ui/unified/ColorPickerPopover.js +1 -1
- package/src/sap/ui/unified/ColorPickerRenderer.js +49 -15
- package/src/sap/ui/unified/ContentSwitcher.js +1 -1
- package/src/sap/ui/unified/Currency.js +1 -1
- package/src/sap/ui/unified/CurrencyRenderer.js +1 -1
- package/src/sap/ui/unified/DateRange.js +1 -1
- package/src/sap/ui/unified/DateTypeRange.js +1 -1
- package/src/sap/ui/unified/FileUploader.js +1 -1
- package/src/sap/ui/unified/FileUploaderParameter.js +1 -1
- package/src/sap/ui/unified/FileUploaderXHRSettings.js +1 -1
- package/src/sap/ui/unified/Menu.js +1 -1
- package/src/sap/ui/unified/MenuItem.js +2 -2
- package/src/sap/ui/unified/MenuItemBase.js +1 -1
- package/src/sap/ui/unified/MenuItemGroup.js +1 -1
- package/src/sap/ui/unified/MenuRenderer.js +4 -2
- package/src/sap/ui/unified/MenuTextFieldItem.js +8 -4
- package/src/sap/ui/unified/MonthlyRecurrenceRule.js +1 -1
- package/src/sap/ui/unified/NonWorkingPeriod.js +1 -1
- package/src/sap/ui/unified/RecurrenceRule.js +1 -1
- package/src/sap/ui/unified/RecurringCalendarAppointment.js +7 -2
- package/src/sap/ui/unified/RecurringNonWorkingPeriod.js +15 -1
- package/src/sap/ui/unified/Shell.js +1 -1
- package/src/sap/ui/unified/ShellHeadItem.js +2 -30
- package/src/sap/ui/unified/ShellHeadUserItem.js +3 -31
- package/src/sap/ui/unified/ShellHeader.js +29 -13
- package/src/sap/ui/unified/ShellLayout.js +1 -1
- package/src/sap/ui/unified/ShellOverlay.js +1 -1
- package/src/sap/ui/unified/SplitContainer.js +1 -1
- package/src/sap/ui/unified/TimeRange.js +1 -1
- package/src/sap/ui/unified/WeeklyRecurrenceRule.js +1 -1
- package/src/sap/ui/unified/YearlyRecurrenceRule.js +1 -1
- package/src/sap/ui/unified/calendar/DatesRow.js +1 -1
- package/src/sap/ui/unified/calendar/Header.js +1 -1
- package/src/sap/ui/unified/calendar/HeaderRenderer.js +1 -0
- package/src/sap/ui/unified/calendar/IndexPicker.js +1 -1
- package/src/sap/ui/unified/calendar/Month.js +60 -1
- package/src/sap/ui/unified/calendar/MonthPicker.js +1 -1
- package/src/sap/ui/unified/calendar/MonthRenderer.js +23 -10
- package/src/sap/ui/unified/calendar/MonthsRow.js +196 -40
- package/src/sap/ui/unified/calendar/OneMonthDatesRow.js +1 -1
- package/src/sap/ui/unified/calendar/TimesRow.js +1 -1
- package/src/sap/ui/unified/calendar/WeeksRow.js +1 -1
- package/src/sap/ui/unified/calendar/YearPicker.js +1 -1
- package/src/sap/ui/unified/calendar/YearRangePicker.js +1 -1
- package/src/sap/ui/unified/library.js +2 -2
- package/src/sap/ui/unified/messagebundle_en_US_sappsd.properties +73 -9
- package/src/sap/ui/unified/messagebundle_en_US_saptrc.properties +70 -8
- package/src/sap/ui/unified/themes/base/Calendar.less +39 -6
- package/src/sap/ui/unified/themes/base/ColorPicker.less +125 -3
- package/src/sap/ui/unified/themes/base/FileUploader.less +5 -0
- package/src/sap/ui/unified/themes/base/ShellHeader.less +2 -7
- package/src/sap/ui/unified/themes/sap_hcb/Calendar.less +2 -1
package/REUSE.toml
CHANGED
|
@@ -225,6 +225,16 @@ SPDX-FileCopyrightText = "jQuery Foundation and other contributors"
|
|
|
225
225
|
SPDX-License-Identifier = "MIT"
|
|
226
226
|
SPDX-FileComment = "these files belong to: QUnit 2.18"
|
|
227
227
|
|
|
228
|
+
[[annotations]]
|
|
229
|
+
path = [
|
|
230
|
+
"src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/qunit-2.26.0.css",
|
|
231
|
+
"src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/qunit-2.26.0.js"
|
|
232
|
+
]
|
|
233
|
+
precedence = "aggregate"
|
|
234
|
+
SPDX-FileCopyrightText = "OpenJS Foundation and other contributors"
|
|
235
|
+
SPDX-License-Identifier = "MIT"
|
|
236
|
+
SPDX-FileComment = "these files belong to: QUnit 2.26.0"
|
|
237
|
+
|
|
228
238
|
[[annotations]]
|
|
229
239
|
path = "src/sap.ui.core/src/sap/ui/thirdparty/jquery-compat.js"
|
|
230
240
|
precedence = "aggregate"
|
|
@@ -349,6 +359,20 @@ SPDX-FileCopyrightText = "2010-2022, Christian Johansen, christian@cjohansen.no"
|
|
|
349
359
|
SPDX-License-Identifier = "BSD-3-Clause"
|
|
350
360
|
SPDX-FileComment = "these files belong to: SinonJS 14"
|
|
351
361
|
|
|
362
|
+
[[annotations]]
|
|
363
|
+
path = "src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/sinon-22.0.0.js"
|
|
364
|
+
precedence = "aggregate"
|
|
365
|
+
SPDX-FileCopyrightText = "2010-2024, Christian Johansen, christian@cjohansen.no"
|
|
366
|
+
SPDX-License-Identifier = "BSD-3-Clause"
|
|
367
|
+
SPDX-FileComment = "these files belong to: SinonJS 22"
|
|
368
|
+
|
|
369
|
+
[[annotations]]
|
|
370
|
+
path = "src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/nise-6.1.5.js"
|
|
371
|
+
precedence = "aggregate"
|
|
372
|
+
SPDX-FileCopyrightText = "2010-2017, Christian Johansen, christian@cjohansen.no"
|
|
373
|
+
SPDX-License-Identifier = "BSD-3-Clause"
|
|
374
|
+
SPDX-FileComment = "these files belong to: nise"
|
|
375
|
+
|
|
352
376
|
[[annotations]]
|
|
353
377
|
path = "src/sap.ui.core/src/sap/ui/thirdparty/sinon-qunit.js"
|
|
354
378
|
precedence = "aggregate"
|
package/THIRDPARTY.txt
CHANGED
|
@@ -6,31 +6,31 @@ The full text of all referenced licenses is appended at the end of this file.
|
|
|
6
6
|
|
|
7
7
|
Library: sap.f:
|
|
8
8
|
|
|
9
|
-
Component: UI5 Web Components, version: 2.
|
|
9
|
+
Component: UI5 Web Components, version: 2.24.0
|
|
10
10
|
Copyright: SAP
|
|
11
11
|
License: Apache-2.0
|
|
12
12
|
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
13
13
|
Contained in: src/sap.f/src/sap/f/thirdparty/**
|
|
14
14
|
|
|
15
|
-
Component: UI5 Web Components Fiori, version: 2.
|
|
15
|
+
Component: UI5 Web Components Fiori, version: 2.24.0
|
|
16
16
|
Copyright: SAP
|
|
17
17
|
License: Apache-2.0
|
|
18
18
|
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
19
19
|
Contained in: src/sap.f/src/sap/f/thirdparty/**
|
|
20
20
|
|
|
21
|
-
Component: UI5 Web Components Icons, version: 2.
|
|
21
|
+
Component: UI5 Web Components Icons, version: 2.24.0
|
|
22
22
|
Copyright: SAP
|
|
23
23
|
License: Apache-2.0
|
|
24
24
|
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
25
25
|
Contained in: src/sap.f/src/sap/f/thirdparty/**
|
|
26
26
|
|
|
27
|
-
Component: UI5 Web Components Icons Business Suite, version: 2.
|
|
27
|
+
Component: UI5 Web Components Icons Business Suite, version: 2.24.0
|
|
28
28
|
Copyright: SAP
|
|
29
29
|
License: Apache-2.0
|
|
30
30
|
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
31
31
|
Contained in: src/sap.f/src/sap/f/thirdparty/**
|
|
32
32
|
|
|
33
|
-
Component: UI5 Web Components Icons TNT, version: 2.
|
|
33
|
+
Component: UI5 Web Components Icons TNT, version: 2.24.0
|
|
34
34
|
Copyright: SAP
|
|
35
35
|
License: Apache-2.0
|
|
36
36
|
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
@@ -134,6 +134,13 @@ License Text: https://github.com/UI5/openui5/blob/master/LICENSES/MIT.txt
|
|
|
134
134
|
Contained in: src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/qunit-2.18.css
|
|
135
135
|
src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/qunit-2.18.js
|
|
136
136
|
|
|
137
|
+
Component: QUnit 2.26.0, version: 2.26.0
|
|
138
|
+
Copyright: OpenJS Foundation and other contributors
|
|
139
|
+
License: MIT
|
|
140
|
+
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/MIT.txt
|
|
141
|
+
Contained in: src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/qunit-2.26.0.css
|
|
142
|
+
src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/qunit-2.26.0.js
|
|
143
|
+
|
|
137
144
|
Component: jQuery-Migrate, version: 3.3.1
|
|
138
145
|
Copyright: OpenJS Foundation and other contributors
|
|
139
146
|
License: MIT
|
|
@@ -227,6 +234,18 @@ License: BSD-3-Clause
|
|
|
227
234
|
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/BSD-3-Clause.txt
|
|
228
235
|
Contained in: src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/sinon-14.0.js
|
|
229
236
|
|
|
237
|
+
Component: SinonJS 22, version: 22.0.0
|
|
238
|
+
Copyright: 2010-2024, Christian Johansen, christian@cjohansen.no
|
|
239
|
+
License: BSD-3-Clause
|
|
240
|
+
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/BSD-3-Clause.txt
|
|
241
|
+
Contained in: src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/sinon-22.0.0.js
|
|
242
|
+
|
|
243
|
+
Component: nise, version: 6.1.5
|
|
244
|
+
Copyright: 2010-2017, Christian Johansen, christian@cjohansen.no
|
|
245
|
+
License: BSD-3-Clause
|
|
246
|
+
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/BSD-3-Clause.txt
|
|
247
|
+
Contained in: src/sap.ui.core/test/sap/ui/core/qunit/thirdparty/nise-6.1.5.js
|
|
248
|
+
|
|
230
249
|
Component: Sinon-qunit, version: 2.0.0
|
|
231
250
|
Copyright: 2010-2011, Christian Johansen
|
|
232
251
|
License: BSD-3-Clause
|
|
@@ -248,7 +267,7 @@ License: MIT
|
|
|
248
267
|
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/MIT.txt
|
|
249
268
|
Contained in: src/sap.ui.core/src/sap/ui/thirdparty/punycode.js
|
|
250
269
|
|
|
251
|
-
Component: handlebars, version: 4.7.
|
|
270
|
+
Component: handlebars, version: 4.7.9
|
|
252
271
|
Copyright: 2011-2019 by Yehuda Katz
|
|
253
272
|
License: MIT
|
|
254
273
|
License Text: https://github.com/UI5/openui5/blob/master/LICENSES/MIT.txt
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openui5/sap.ui.unified",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.151.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.
|
|
17
|
+
"@openui5/sap.ui.core": "1.151.0"
|
|
18
18
|
}
|
|
19
19
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<copyright>OpenUI5
|
|
7
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.
|
|
9
|
+
<version>1.151.0</version>
|
|
10
10
|
|
|
11
11
|
<documentation>Unified controls intended for both, mobile and desktop scenarios</documentation>
|
|
12
12
|
|
|
@@ -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.
|
|
83
|
+
* @version 1.151.0
|
|
84
84
|
*
|
|
85
85
|
* @constructor
|
|
86
86
|
* @public
|
|
@@ -201,6 +201,15 @@ sap.ui.define([
|
|
|
201
201
|
*/
|
|
202
202
|
showWeekNumbers : {type : "boolean", group : "Appearance", defaultValue : true},
|
|
203
203
|
|
|
204
|
+
/**
|
|
205
|
+
* Determines whether the header of the week numbers column is displayed.
|
|
206
|
+
* The column header text is translated according to the active language.
|
|
207
|
+
*
|
|
208
|
+
* <b>Note:</b> Takes effect only when <code>showWeekNumbers</code> is set to <code>true</code>.
|
|
209
|
+
* @since 1.151
|
|
210
|
+
*/
|
|
211
|
+
showWeekNumbersHeader : {type : "boolean", group : "Appearance", defaultValue : false},
|
|
212
|
+
|
|
204
213
|
/**
|
|
205
214
|
* Determines whether there is a shortcut navigation to Today. When used in Month, Year or
|
|
206
215
|
* Year-range picker view, the calendar navigates to Day picker view.
|
|
@@ -620,6 +629,7 @@ sap.ui.define([
|
|
|
620
629
|
}
|
|
621
630
|
aMonths[i].displayDate(oDisplayDate.toLocalJSDate());
|
|
622
631
|
aMonths[i].setShowWeekNumbers(this.getShowWeekNumbers());
|
|
632
|
+
aMonths[i].setShowWeekNumbersHeader(this.getShowWeekNumbersHeader());
|
|
623
633
|
}
|
|
624
634
|
|
|
625
635
|
if (this._getMonthPicker()) {
|
|
@@ -15,7 +15,8 @@ sap.ui.define([
|
|
|
15
15
|
'./calendar/CalendarUtils',
|
|
16
16
|
'./library',
|
|
17
17
|
"sap/base/Log",
|
|
18
|
-
"sap/ui/core/date/UI5Date"
|
|
18
|
+
"sap/ui/core/date/UI5Date",
|
|
19
|
+
"sap/ui/core/library"
|
|
19
20
|
],
|
|
20
21
|
function(
|
|
21
22
|
DateTypeRange,
|
|
@@ -27,10 +28,14 @@ sap.ui.define([
|
|
|
27
28
|
CalendarUtils,
|
|
28
29
|
library,
|
|
29
30
|
Log,
|
|
30
|
-
UI5Date
|
|
31
|
+
UI5Date,
|
|
32
|
+
coreLibrary
|
|
31
33
|
) {
|
|
32
34
|
"use strict";
|
|
33
35
|
|
|
36
|
+
// shortcut for sap.ui.core.aria.HasPopup
|
|
37
|
+
const AriaHasPopup = coreLibrary.aria.HasPopup;
|
|
38
|
+
|
|
34
39
|
/**
|
|
35
40
|
* Constructor for a new <code>CalendarAppointment</code>.
|
|
36
41
|
*
|
|
@@ -43,7 +48,7 @@ sap.ui.define([
|
|
|
43
48
|
*
|
|
44
49
|
* Applications could inherit from this element to add own fields.
|
|
45
50
|
* @extends sap.ui.unified.DateTypeRange
|
|
46
|
-
* @version 1.
|
|
51
|
+
* @version 1.151.0
|
|
47
52
|
*
|
|
48
53
|
* @constructor
|
|
49
54
|
* @public
|
|
@@ -98,7 +103,21 @@ sap.ui.define([
|
|
|
98
103
|
* This property will work only with full hex color with pound symbol, e.g.: #FF0000.
|
|
99
104
|
* @since 1.46.0
|
|
100
105
|
*/
|
|
101
|
-
color: {type : "sap.ui.core.CSSColor", group : "Appearance", defaultValue : null}
|
|
106
|
+
color: {type : "sap.ui.core.CSSColor", group : "Appearance", defaultValue : null},
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Specifies the value of the <code>aria-haspopup</code> attribute
|
|
110
|
+
*
|
|
111
|
+
* If the value is <code>None</code>, the attribute will not be rendered. Otherwise it will be rendered with the selected value.
|
|
112
|
+
*
|
|
113
|
+
* NOTE: Use this property only when an <code>sap.ui.unified.CalendarAppointment</code> instance is active and related to a popover/popup.
|
|
114
|
+
* The value needs to be equal to the main/root role of the popup - e.g. dialog,
|
|
115
|
+
* menu or list (examples: if you have dialog -> dialog, if you have menu -> menu; if you have list -> list; if you have dialog containing a list -> dialog).
|
|
116
|
+
* Do not use it, if you open a standard sap.m.Dialog, MessageBox or other type of modal dialogs.
|
|
117
|
+
*
|
|
118
|
+
* @since 1.150.0
|
|
119
|
+
*/
|
|
120
|
+
ariaHasPopup: { type: "sap.ui.core.aria.HasPopup", group: "Accessibility", defaultValue: AriaHasPopup.None }
|
|
102
121
|
},
|
|
103
122
|
aggregations: {
|
|
104
123
|
/**
|
|
@@ -64,7 +64,7 @@ sap.ui.define([
|
|
|
64
64
|
* @class
|
|
65
65
|
* <code>CalendarDateInterval</code> only visualizes the dates in a one-line interval and allows the selection of a single day.
|
|
66
66
|
* @extends sap.ui.unified.Calendar
|
|
67
|
-
* @version 1.
|
|
67
|
+
* @version 1.151.0
|
|
68
68
|
*
|
|
69
69
|
* @constructor
|
|
70
70
|
* @public
|
|
@@ -65,7 +65,7 @@ sap.ui.define([
|
|
|
65
65
|
* <b>Note:</b> UI5Date or JavaScript Date objects are used to set and return the months, mark them as selected or as a special type.
|
|
66
66
|
* 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.
|
|
67
67
|
* @extends sap.ui.core.Control
|
|
68
|
-
* @version 1.
|
|
68
|
+
* @version 1.151.0
|
|
69
69
|
*
|
|
70
70
|
* @constructor
|
|
71
71
|
* @public
|
|
@@ -1218,6 +1218,10 @@ sap.ui.define([
|
|
|
1218
1218
|
var oDate = CalendarDate.fromLocalJSDate(oEvent.getParameter("date"));
|
|
1219
1219
|
var bNotVisible = oEvent.getParameter("notVisible");
|
|
1220
1220
|
|
|
1221
|
+
if (this.getIntervalSelection()) {
|
|
1222
|
+
this.getAggregation("monthsRow").setProperty("_focusedDate", oDate.toLocalJSDate());
|
|
1223
|
+
}
|
|
1224
|
+
|
|
1221
1225
|
_focusDate.call(this, oDate, bNotVisible);
|
|
1222
1226
|
|
|
1223
1227
|
}
|
|
@@ -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.
|
|
60
|
+
* @version 1.151.0
|
|
61
61
|
*
|
|
62
62
|
* @constructor
|
|
63
63
|
* @private
|
|
@@ -17,7 +17,8 @@ sap.ui.define([
|
|
|
17
17
|
'sap/ui/unified/calendar/RecurrenceUtils',
|
|
18
18
|
'sap/base/Log',
|
|
19
19
|
// side effect: required by RenderManager#icon
|
|
20
|
-
'sap/ui/core/IconPool'
|
|
20
|
+
'sap/ui/core/IconPool',
|
|
21
|
+
'sap/ui/core/library'
|
|
21
22
|
],
|
|
22
23
|
function(
|
|
23
24
|
Element,
|
|
@@ -30,30 +31,35 @@ sap.ui.define([
|
|
|
30
31
|
InvisibleText,
|
|
31
32
|
UI5Date,
|
|
32
33
|
RecurrenceUtils,
|
|
33
|
-
Log
|
|
34
|
+
Log,
|
|
35
|
+
IconPool,
|
|
36
|
+
coreLibrary
|
|
34
37
|
) {
|
|
35
38
|
"use strict";
|
|
36
39
|
|
|
37
40
|
|
|
38
41
|
// shortcut for sap.ui.unified.CalendarDayType
|
|
39
|
-
|
|
42
|
+
const CalendarDayType = library.CalendarDayType;
|
|
40
43
|
|
|
41
44
|
// shortcut for sap.ui.unified.CalendarIntervalType
|
|
42
|
-
|
|
45
|
+
const CalendarIntervalType = library.CalendarIntervalType;
|
|
43
46
|
|
|
44
47
|
// shortcut for sap.ui.unified.CalendarAppointmentVisualization
|
|
45
|
-
|
|
48
|
+
const CalendarAppointmentVisualization = library.CalendarAppointmentVisualization;
|
|
46
49
|
|
|
47
50
|
// shortcut for sap.ui.unified.CalendarAppointmentHeight
|
|
48
|
-
|
|
51
|
+
const CalendarAppointmentHeight = library.CalendarAppointmentHeight;
|
|
49
52
|
/**
|
|
50
53
|
* CalendarRow renderer.
|
|
51
54
|
* @namespace
|
|
52
55
|
*/
|
|
53
|
-
|
|
56
|
+
const CalendarRowRenderer = {
|
|
54
57
|
apiVersion: 2
|
|
55
58
|
};
|
|
56
59
|
|
|
60
|
+
// shortcut for sap.ui.core.aria.HasPopup
|
|
61
|
+
const AriaHasPopup = coreLibrary.aria.HasPopup;
|
|
62
|
+
|
|
57
63
|
/**
|
|
58
64
|
* Renders the HTML for the given control, using the provided {@link sap.ui.core.RenderManager}.
|
|
59
65
|
*
|
|
@@ -105,6 +111,7 @@ sap.ui.define([
|
|
|
105
111
|
oRm.openStart("div", sId + "-Apps");
|
|
106
112
|
oRm.class("sapUiCalendarRowApps");
|
|
107
113
|
oRm.attr("role", "list");
|
|
114
|
+
oRm.attr("tabindex", "-1");
|
|
108
115
|
oRm.openEnd();
|
|
109
116
|
|
|
110
117
|
this.renderBeforeAppointments(oRm, oRow);
|
|
@@ -283,8 +290,7 @@ sap.ui.define([
|
|
|
283
290
|
if (!oPeriod.isRecurring()) {
|
|
284
291
|
return oPeriod.hasNonWorkingAtDate(oStartDateInterval);
|
|
285
292
|
}
|
|
286
|
-
|
|
287
|
-
return hasOccurrenceOnDate(oStartDateInterval);
|
|
293
|
+
return RecurrenceUtils.hasOccurrenceOnDateCached.call(oPeriod, oStartDateInterval);
|
|
288
294
|
});
|
|
289
295
|
|
|
290
296
|
const aFilteredItemsForCurrentHours = aFilteredNonWorkingRange.filter((oPeriod) => {
|
|
@@ -467,6 +473,11 @@ sap.ui.define([
|
|
|
467
473
|
|
|
468
474
|
oRm.accessibilityState(oIntervalHeader.appointment, mAccProps);
|
|
469
475
|
|
|
476
|
+
var sAriaHasPopup = oIntervalHeader.appointment.getAriaHasPopup();
|
|
477
|
+
if (sAriaHasPopup !== AriaHasPopup.None) {
|
|
478
|
+
oRm.attr("aria-haspopup", sAriaHasPopup.toLowerCase());
|
|
479
|
+
}
|
|
480
|
+
|
|
470
481
|
oRm.openEnd(); //div element
|
|
471
482
|
oRm.openStart("div");
|
|
472
483
|
|
|
@@ -536,21 +547,21 @@ sap.ui.define([
|
|
|
536
547
|
|
|
537
548
|
CalendarRowRenderer.renderAppointment = function(oRm, oRow, oAppointmentInfo, aTypes, bRelativePos){
|
|
538
549
|
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
550
|
+
const oAppointment = oAppointmentInfo.appointment;
|
|
551
|
+
const sTooltip = oAppointment.getTooltip_AsString();
|
|
552
|
+
const sType = oAppointment.getType();
|
|
553
|
+
const sColor = oAppointment.getColor();
|
|
554
|
+
const sTitle = oAppointment.getTitle();
|
|
555
|
+
const sText = oAppointment.getText();
|
|
556
|
+
const sDescription = oAppointment.getDescription();
|
|
557
|
+
const sIcon = oAppointment.getIcon();
|
|
558
|
+
const sId = oAppointment.getId();
|
|
559
|
+
const bReducedHeight = oRow._getAppointmentReducedHeight(oAppointmentInfo);
|
|
560
|
+
const bAppointmentSelected = oAppointment.getSelected();
|
|
561
|
+
const bHasCustomContent = !!oAppointment.getCustomContent().length;
|
|
562
|
+
const sAriaHasPopup = oAppointment.getAriaHasPopup();
|
|
563
|
+
|
|
564
|
+
let aLabelledByIds = [InvisibleText.getStaticId("sap.m", "ACC_CTR_TYPE_LISTITEM"), InvisibleText.getStaticId("sap.ui.unified", "APPOINTMENT")];
|
|
554
565
|
if (sTitle && !bHasCustomContent) {
|
|
555
566
|
aLabelledByIds.push(`${sId}-Title`);
|
|
556
567
|
}
|
|
@@ -634,6 +645,10 @@ sap.ui.define([
|
|
|
634
645
|
}
|
|
635
646
|
}
|
|
636
647
|
|
|
648
|
+
if (sAriaHasPopup !== AriaHasPopup.None) {
|
|
649
|
+
oRm.attr("aria-haspopup", sAriaHasPopup.toLowerCase());
|
|
650
|
+
}
|
|
651
|
+
|
|
637
652
|
oRm.accessibilityState(oAppointment, mAccProps);
|
|
638
653
|
oRm.openEnd(); //div element
|
|
639
654
|
|
|
@@ -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.
|
|
42
|
+
* @version 1.151.0
|
|
43
43
|
*
|
|
44
44
|
* @constructor
|
|
45
45
|
* @private
|
|
@@ -72,7 +72,7 @@ sap.ui.define([
|
|
|
72
72
|
* @extends sap.ui.core.Control
|
|
73
73
|
*
|
|
74
74
|
* @author SAP SE
|
|
75
|
-
* @version 1.
|
|
75
|
+
* @version 1.151.0
|
|
76
76
|
*
|
|
77
77
|
* @constructor
|
|
78
78
|
* @public
|
|
@@ -1212,10 +1212,12 @@ sap.ui.define([
|
|
|
1212
1212
|
};
|
|
1213
1213
|
|
|
1214
1214
|
ColorPicker.prototype.exit = function() {
|
|
1215
|
+
this._stopZoomWatch();
|
|
1215
1216
|
this._cleanup();
|
|
1216
1217
|
};
|
|
1217
1218
|
|
|
1218
1219
|
ColorPicker.prototype.onBeforeRendering = function() {
|
|
1220
|
+
this._stopZoomWatch();
|
|
1219
1221
|
this._cleanup();
|
|
1220
1222
|
// Create the layout controls
|
|
1221
1223
|
this._createLayout();
|
|
@@ -2438,6 +2440,9 @@ sap.ui.define([
|
|
|
2438
2440
|
// toggle fields - HEX field will be visible initially on mobile
|
|
2439
2441
|
this._toggleFields();
|
|
2440
2442
|
}
|
|
2443
|
+
|
|
2444
|
+
this._bLastHighZoom = this._isHighZoom();
|
|
2445
|
+
this._startZoomWatch();
|
|
2441
2446
|
};
|
|
2442
2447
|
|
|
2443
2448
|
/**
|
|
@@ -2652,6 +2657,46 @@ sap.ui.define([
|
|
|
2652
2657
|
}
|
|
2653
2658
|
};
|
|
2654
2659
|
|
|
2660
|
+
ColorPicker.prototype._getViewportWidth = function() {
|
|
2661
|
+
return (window.visualViewport && window.visualViewport.width) || window.innerWidth;
|
|
2662
|
+
};
|
|
2663
|
+
|
|
2664
|
+
ColorPicker.prototype._isHighZoom = function() {
|
|
2665
|
+
return this._getViewportWidth() <= 320;
|
|
2666
|
+
};
|
|
2667
|
+
|
|
2668
|
+
ColorPicker.prototype._startZoomWatch = function() {
|
|
2669
|
+
this._fnWindowResizeListener = function() {
|
|
2670
|
+
if (!this.getDomRef()) { return; }
|
|
2671
|
+
var bHighZoom = this._isHighZoom();
|
|
2672
|
+
if (bHighZoom !== this._bLastHighZoom) {
|
|
2673
|
+
this._bLastHighZoom = bHighZoom;
|
|
2674
|
+
this.invalidate();
|
|
2675
|
+
}
|
|
2676
|
+
}.bind(this);
|
|
2677
|
+
if (window.visualViewport) {
|
|
2678
|
+
window.visualViewport.addEventListener("resize", this._fnWindowResizeListener);
|
|
2679
|
+
}
|
|
2680
|
+
window.addEventListener("resize", this._fnWindowResizeListener);
|
|
2681
|
+
};
|
|
2682
|
+
|
|
2683
|
+
ColorPicker.prototype._stopZoomWatch = function() {
|
|
2684
|
+
if (this._fnWindowResizeListener) {
|
|
2685
|
+
window.removeEventListener("resize", this._fnWindowResizeListener);
|
|
2686
|
+
if (window.visualViewport) {
|
|
2687
|
+
window.visualViewport.removeEventListener("resize", this._fnWindowResizeListener);
|
|
2688
|
+
}
|
|
2689
|
+
this._fnWindowResizeListener = null;
|
|
2690
|
+
}
|
|
2691
|
+
};
|
|
2692
|
+
|
|
2693
|
+
ColorPicker.prototype._getEffectiveDisplayMode = function() {
|
|
2694
|
+
if (this._isHighZoom()) {
|
|
2695
|
+
return ColorPickerDisplayMode.Simplified;
|
|
2696
|
+
}
|
|
2697
|
+
return this.getDisplayMode();
|
|
2698
|
+
};
|
|
2699
|
+
|
|
2655
2700
|
return ColorPicker;
|
|
2656
2701
|
|
|
2657
2702
|
});
|
|
@@ -28,8 +28,9 @@ sap.ui.define(['./ColorPickerDisplayMode', "sap/ui/Device", "sap/ui/core/Lib"],
|
|
|
28
28
|
* @param {sap.ui.unified.ColorPicker} oControl an object representation of the control that should be rendered
|
|
29
29
|
*/
|
|
30
30
|
ColorPickerRenderer.render = function(oRm, oControl){
|
|
31
|
-
var sDisplayMode = oControl.
|
|
32
|
-
bResponsive = oControl.bResponsive
|
|
31
|
+
var sDisplayMode = oControl._getEffectiveDisplayMode(),
|
|
32
|
+
bResponsive = oControl.bResponsive,
|
|
33
|
+
bHighZoom = oControl._isHighZoom();
|
|
33
34
|
|
|
34
35
|
oRm.openStart("div", oControl);
|
|
35
36
|
|
|
@@ -49,6 +50,9 @@ sap.ui.define(['./ColorPickerDisplayMode', "sap/ui/Device", "sap/ui/core/Lib"],
|
|
|
49
50
|
if (Device.system.phone) {
|
|
50
51
|
oRm.class("sapUiCPPhone");
|
|
51
52
|
}
|
|
53
|
+
if (bHighZoom) {
|
|
54
|
+
oRm.class("sapUiCPHighZoom");
|
|
55
|
+
}
|
|
52
56
|
oRm.openEnd();
|
|
53
57
|
|
|
54
58
|
if (!bResponsive) {
|
|
@@ -85,8 +89,9 @@ sap.ui.define(['./ColorPickerDisplayMode', "sap/ui/Device", "sap/ui/core/Lib"],
|
|
|
85
89
|
};
|
|
86
90
|
|
|
87
91
|
ColorPickerRenderer.renderDefaultColorPicker = function(oRm, oControl) {
|
|
92
|
+
var bHighZoom = oControl._isHighZoom();
|
|
88
93
|
oRm.renderControl(oControl.getAggregation("_oCPBox"));
|
|
89
|
-
if (Device.system.phone) { //mobile
|
|
94
|
+
if (Device.system.phone && !bHighZoom) { //mobile
|
|
90
95
|
oRm.openStart("div");
|
|
91
96
|
oRm.class("sapUiCPPhoneContent");
|
|
92
97
|
oRm.openEnd();
|
|
@@ -97,6 +102,9 @@ sap.ui.define(['./ColorPickerDisplayMode', "sap/ui/Device", "sap/ui/core/Lib"],
|
|
|
97
102
|
oRm.close("div");
|
|
98
103
|
this.renderMobileSwatches(oRm, oControl);
|
|
99
104
|
oRm.close("div");
|
|
105
|
+
} else if (bHighZoom) { //mobile 200% zoom
|
|
106
|
+
this.renderSliders(oRm, oControl);
|
|
107
|
+
this.renderDesktopSwatchesAndHexFields(oRm, oControl);
|
|
100
108
|
} else { //desktop or tablet
|
|
101
109
|
this.renderSliders(oRm, oControl);
|
|
102
110
|
this.renderDesktopSwatchesAndHexFields(oRm, oControl);
|
|
@@ -105,7 +113,7 @@ sap.ui.define(['./ColorPickerDisplayMode', "sap/ui/Device", "sap/ui/core/Lib"],
|
|
|
105
113
|
oRm.openStart("div");
|
|
106
114
|
oRm.class("sapUiCPDefaultWrapper");
|
|
107
115
|
oRm.openEnd();
|
|
108
|
-
if (Device.system.phone) {
|
|
116
|
+
if (Device.system.phone && !bHighZoom) {
|
|
109
117
|
oRm.renderControl(oControl.getAggregation("_oHexField"));
|
|
110
118
|
oRm.openStart("div");
|
|
111
119
|
oRm.class("sapUiCPHexText");
|
|
@@ -210,8 +218,9 @@ sap.ui.define(['./ColorPickerDisplayMode', "sap/ui/Device", "sap/ui/core/Lib"],
|
|
|
210
218
|
};
|
|
211
219
|
|
|
212
220
|
ColorPickerRenderer.renderSimplifiedColorPicker = function(oRm, oControl) {
|
|
221
|
+
var bHighZoom = oControl._isHighZoom();
|
|
213
222
|
oRm.renderControl(oControl.getAggregation("_oCPBox"));
|
|
214
|
-
if (Device.system.phone) {
|
|
223
|
+
if (Device.system.phone && !bHighZoom) {
|
|
215
224
|
oRm.openStart("div");
|
|
216
225
|
oRm.class("sapUiCPPhoneContent");
|
|
217
226
|
oRm.openEnd();
|
|
@@ -232,6 +241,9 @@ sap.ui.define(['./ColorPickerDisplayMode', "sap/ui/Device", "sap/ui/core/Lib"],
|
|
|
232
241
|
oRm.close("div");
|
|
233
242
|
oRm.close("div");
|
|
234
243
|
oRm.close("div");
|
|
244
|
+
} else if (bHighZoom) { //mobile 200% zoom
|
|
245
|
+
oRm.renderControl(oControl.getAggregation("_oSlider"));
|
|
246
|
+
this.renderDesktopSwatchesAndHexFields(oRm, oControl);
|
|
235
247
|
} else {
|
|
236
248
|
oRm.renderControl(oControl.getAggregation("_oSlider"));
|
|
237
249
|
this.renderDesktopSwatchesAndHexFields(oRm, oControl);
|
|
@@ -245,6 +257,14 @@ sap.ui.define(['./ColorPickerDisplayMode', "sap/ui/Device", "sap/ui/core/Lib"],
|
|
|
245
257
|
* @param {sap.ui.unified.ColorPicker} oControl an object representation of the control that should be rendered
|
|
246
258
|
*/
|
|
247
259
|
ColorPickerRenderer.renderDesktopSwatchesAndHexFields = function(oRm, oControl) {
|
|
260
|
+
var bHighZoom = oControl._isHighZoom();
|
|
261
|
+
|
|
262
|
+
if (bHighZoom) {
|
|
263
|
+
oRm.openStart("div");
|
|
264
|
+
oRm.class("sapUiCPHexRow");
|
|
265
|
+
oRm.openEnd();
|
|
266
|
+
}
|
|
267
|
+
|
|
248
268
|
oRm.openStart("div");
|
|
249
269
|
oRm.class("sapUiCPComparisonWrapper");
|
|
250
270
|
oRm.openEnd();
|
|
@@ -259,17 +279,31 @@ sap.ui.define(['./ColorPickerDisplayMode', "sap/ui/Device", "sap/ui/core/Lib"],
|
|
|
259
279
|
oRm.openEnd();
|
|
260
280
|
oRm.close("div");
|
|
261
281
|
oRm.close("div");
|
|
262
|
-
oRm.openStart("div");
|
|
263
|
-
oRm.class("sapUiCPHexWrapper");
|
|
264
|
-
oRm.openEnd();
|
|
265
|
-
oRm.openStart("span");
|
|
266
|
-
oRm.class("sapUiCPHexText");
|
|
267
|
-
oRm.openEnd();
|
|
268
|
-
oRm.text("Hex");
|
|
269
|
-
oRm.close("span");
|
|
270
|
-
oRm.close("div");
|
|
271
|
-
oRm.renderControl(oControl.getAggregation("_oHexField"));
|
|
272
282
|
|
|
283
|
+
if (bHighZoom) {
|
|
284
|
+
oRm.openStart("div");
|
|
285
|
+
oRm.class("sapUiCPHexWrapper");
|
|
286
|
+
oRm.openEnd();
|
|
287
|
+
oRm.renderControl(oControl.getAggregation("_oHexField"));
|
|
288
|
+
oRm.openStart("span");
|
|
289
|
+
oRm.class("sapUiCPHexText");
|
|
290
|
+
oRm.openEnd();
|
|
291
|
+
oRm.text("Hex");
|
|
292
|
+
oRm.close("span");
|
|
293
|
+
oRm.close("div");
|
|
294
|
+
oRm.close("div"); // close sapUiCPHexRow
|
|
295
|
+
} else {
|
|
296
|
+
oRm.openStart("div");
|
|
297
|
+
oRm.class("sapUiCPHexWrapper");
|
|
298
|
+
oRm.openEnd();
|
|
299
|
+
oRm.openStart("span");
|
|
300
|
+
oRm.class("sapUiCPHexText");
|
|
301
|
+
oRm.openEnd();
|
|
302
|
+
oRm.text("Hex");
|
|
303
|
+
oRm.close("span");
|
|
304
|
+
oRm.close("div");
|
|
305
|
+
oRm.renderControl(oControl.getAggregation("_oHexField"));
|
|
306
|
+
}
|
|
273
307
|
};
|
|
274
308
|
|
|
275
309
|
/**
|