@openui5/sap.ui.unified 1.150.0 → 1.152.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/THIRDPARTY.txt +6 -6
- package/package.json +2 -2
- package/src/sap/ui/unified/.library +1 -1
- package/src/sap/ui/unified/Calendar.js +190 -1
- package/src/sap/ui/unified/CalendarAppointment.js +1 -1
- 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 +1 -1
- package/src/sap/ui/unified/CalendarOneMonthInterval.js +1 -1
- package/src/sap/ui/unified/CalendarRenderer.js +8 -2
- package/src/sap/ui/unified/CalendarRow.js +1 -1
- 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 +27 -6
- 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 +7 -3
- 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 +1 -1
- package/src/sap/ui/unified/RecurringNonWorkingPeriod.js +1 -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 +83 -3
- package/src/sap/ui/unified/calendar/MonthPicker.js +1 -1
- package/src/sap/ui/unified/calendar/MonthRenderer.js +46 -14
- package/src/sap/ui/unified/calendar/MonthsRow.js +1 -1
- 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/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
|
@@ -78,7 +78,7 @@ sap.ui.define([
|
|
|
78
78
|
* If used inside the calendar the properties and aggregation are directly taken from the parent
|
|
79
79
|
* (To not duplicate and sync DateRanges and so on...)
|
|
80
80
|
* @extends sap.ui.core.Control
|
|
81
|
-
* @version 1.
|
|
81
|
+
* @version 1.152.0
|
|
82
82
|
*
|
|
83
83
|
* @constructor
|
|
84
84
|
* @public
|
|
@@ -155,6 +155,15 @@ sap.ui.define([
|
|
|
155
155
|
*/
|
|
156
156
|
showWeekNumbers : {type : "boolean", group : "Appearance", defaultValue : true},
|
|
157
157
|
|
|
158
|
+
/**
|
|
159
|
+
* Determines whether the header of the week numbers column is displayed.
|
|
160
|
+
* The column header text is translated according to the active language.
|
|
161
|
+
*
|
|
162
|
+
* <b>Note:</b> Takes effect only when <code>showWeekNumbers</code> is set to <code>true</code>.
|
|
163
|
+
* @since 1.151
|
|
164
|
+
*/
|
|
165
|
+
showWeekNumbersHeader : {type : "boolean", group : "Appearance", defaultValue : false},
|
|
166
|
+
|
|
158
167
|
/**
|
|
159
168
|
* The value of this property is set trough the sap.ui.unified.Calendar control,
|
|
160
169
|
* in order for the current sap.ui.unified.calendar.Month control to know which
|
|
@@ -326,6 +335,30 @@ sap.ui.define([
|
|
|
326
335
|
return "";
|
|
327
336
|
};
|
|
328
337
|
|
|
338
|
+
/**
|
|
339
|
+
* Returns the text to display in the week numbers column header.
|
|
340
|
+
* Returns an empty string when the header should not be shown.
|
|
341
|
+
* @returns {string} The week numbers column header text, or empty string
|
|
342
|
+
* @private
|
|
343
|
+
*/
|
|
344
|
+
Month.prototype._getWeekNumbersHeaderText = function() {
|
|
345
|
+
if (!this.getShowWeekNumbersHeader()) {
|
|
346
|
+
return "";
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
// Locales where the calendar week abbreviation (sap-calendarWeek narrow) is too long
|
|
350
|
+
// to fit in the week number column header cell — verified manually.
|
|
351
|
+
// These fall back to the "week" narrow display name from CLDR (week-narrow.displayName).
|
|
352
|
+
const _oLongCWLocales = new Set(["ar", "ar-EG", "ar-SA", "he", "vi", "zh-CN", "zh-HK", "zh-TW"]),
|
|
353
|
+
oLocaleData = this._getLocaleData();
|
|
354
|
+
|
|
355
|
+
if (_oLongCWLocales.has(this._getLocale())) {
|
|
356
|
+
return oLocaleData.getDisplayName("week", "narrow");
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
return oLocaleData.getCalendarWeek("narrow").replace("{0}", "").trim();
|
|
360
|
+
};
|
|
361
|
+
|
|
329
362
|
Month.prototype.exit = function(){
|
|
330
363
|
|
|
331
364
|
if (this._oItemNavigation) {
|
|
@@ -364,6 +397,14 @@ sap.ui.define([
|
|
|
364
397
|
|
|
365
398
|
// check if day names are too big -> use smaller ones
|
|
366
399
|
_checkNamesLength.call(this);
|
|
400
|
+
|
|
401
|
+
if (this._bFocusFromTouch) {
|
|
402
|
+
const iFocusedIndex = this._oItemNavigation.getFocusedIndex();
|
|
403
|
+
const oDomRef = this._oItemNavigation.getItemDomRefs()[iFocusedIndex];
|
|
404
|
+
if (oDomRef) {
|
|
405
|
+
oDomRef.classList.add("sapUiCalItemFocusFromTouch");
|
|
406
|
+
}
|
|
407
|
+
}
|
|
367
408
|
};
|
|
368
409
|
|
|
369
410
|
Month.prototype.onmouseover = function(oEvent) {
|
|
@@ -971,10 +1012,10 @@ sap.ui.define([
|
|
|
971
1012
|
// collects non working day with the first occurrence of one of the types01..types20
|
|
972
1013
|
if ((oTimeStamp === oStartTimeStamp && !oEndDate) || (oTimeStamp >= oStartTimeStamp && oTimeStamp <= oEndTimeStamp)) {
|
|
973
1014
|
if (!bNonWorkingType && !oType) {
|
|
974
|
-
oType =
|
|
1015
|
+
oType = Month.prototype._createDateTypeObject.call(this, oRange, true);
|
|
975
1016
|
aTypes.push(oType);
|
|
976
1017
|
} else if (bNonWorkingType && !oTypeNW) {
|
|
977
|
-
oTypeNW =
|
|
1018
|
+
oTypeNW = Month.prototype._createDateTypeObject.call(this, oRange, false);
|
|
978
1019
|
aTypes.push(oTypeNW);
|
|
979
1020
|
}
|
|
980
1021
|
if (oType && oTypeNW) {
|
|
@@ -987,6 +1028,28 @@ sap.ui.define([
|
|
|
987
1028
|
|
|
988
1029
|
};
|
|
989
1030
|
|
|
1031
|
+
/*
|
|
1032
|
+
* Creates a date type object from a given date range.
|
|
1033
|
+
* @param {sap.ui.unified.DateRange} oRange the date range
|
|
1034
|
+
* @param {boolean} bSetColor whether to include the color property
|
|
1035
|
+
* @returns {object} the date type object
|
|
1036
|
+
* @private
|
|
1037
|
+
*/
|
|
1038
|
+
Month.prototype._createDateTypeObject = function(oRange, bSetColor) {
|
|
1039
|
+
const oTypeObject = {
|
|
1040
|
+
type: oRange.getType(),
|
|
1041
|
+
secondaryType: oRange.getSecondaryType(),
|
|
1042
|
+
tooltip: oRange.getTooltip_AsString(),
|
|
1043
|
+
customData: oRange.getCustomData(),
|
|
1044
|
+
ariaHasPopup: oRange.getAriaHasPopup(),
|
|
1045
|
+
bAriaHasPopupExplicit: !oRange.isPropertyInitial("ariaHasPopup")
|
|
1046
|
+
};
|
|
1047
|
+
if (bSetColor) {
|
|
1048
|
+
oTypeObject.color = oRange.getColor();
|
|
1049
|
+
}
|
|
1050
|
+
return oTypeObject;
|
|
1051
|
+
};
|
|
1052
|
+
|
|
990
1053
|
/*
|
|
991
1054
|
* Checks if a given date is enabled
|
|
992
1055
|
* aside from the disabledDates aggregation the min. and max. dates are also checked
|
|
@@ -1084,6 +1147,10 @@ sap.ui.define([
|
|
|
1084
1147
|
clientY: oEvent.clientY
|
|
1085
1148
|
};
|
|
1086
1149
|
|
|
1150
|
+
if (oEvent.target.closest(".sapUiCalItem")) {
|
|
1151
|
+
this._bFocusFromTouch = true;
|
|
1152
|
+
}
|
|
1153
|
+
|
|
1087
1154
|
// handle only mouse down on a week number
|
|
1088
1155
|
if (oEvent.button
|
|
1089
1156
|
|| Device.support.touch
|
|
@@ -1102,6 +1169,12 @@ sap.ui.define([
|
|
|
1102
1169
|
this._handleWeekSelection(oFirstDayOfWeekCalendarDate, bFocusStartDate);
|
|
1103
1170
|
};
|
|
1104
1171
|
|
|
1172
|
+
Month.prototype.ontouchstart = function(oEvent) {
|
|
1173
|
+
if (oEvent.target.closest(".sapUiCalItem")) {
|
|
1174
|
+
this._bFocusFromTouch = true;
|
|
1175
|
+
}
|
|
1176
|
+
};
|
|
1177
|
+
|
|
1105
1178
|
Month.prototype.onmouseup = function(oEvent){
|
|
1106
1179
|
// BCP: 1980116734
|
|
1107
1180
|
// on a combi device right mouse button resulted in a selection (both a week or a single day)
|
|
@@ -1188,6 +1261,7 @@ sap.ui.define([
|
|
|
1188
1261
|
if (oEvent.which === KeyCodes.SPACE){
|
|
1189
1262
|
this.bSpaceButtonPressed = true;
|
|
1190
1263
|
}
|
|
1264
|
+
this._bFocusFromTouch = false;
|
|
1191
1265
|
};
|
|
1192
1266
|
Month.prototype.onkeyup = function(oEvent){
|
|
1193
1267
|
if (oEvent.which === KeyCodes.SPACE){
|
|
@@ -2164,6 +2238,12 @@ sap.ui.define([
|
|
|
2164
2238
|
this._selectedWithMouse = true;
|
|
2165
2239
|
}
|
|
2166
2240
|
|
|
2241
|
+
if (this._bFocusFromTouch) {
|
|
2242
|
+
oDomRef.classList.add("sapUiCalItemFocusFromTouch");
|
|
2243
|
+
} else {
|
|
2244
|
+
oDomRef.classList.remove("sapUiCalItemFocusFromTouch");
|
|
2245
|
+
}
|
|
2246
|
+
|
|
2167
2247
|
if (bFireFocus) {
|
|
2168
2248
|
this.fireFocus({date: oFocusedDate.toLocalJSDate(), otherMonth: bOtherMonth});
|
|
2169
2249
|
}
|
|
@@ -17,7 +17,8 @@ sap.ui.define([
|
|
|
17
17
|
'sap/ui/core/InvisibleText',
|
|
18
18
|
'sap/ui/core/date/UI5Date',
|
|
19
19
|
"sap/ui/core/date/CalendarUtils",
|
|
20
|
-
"sap/ui/core/Locale"
|
|
20
|
+
"sap/ui/core/Locale",
|
|
21
|
+
"sap/ui/core/library"
|
|
21
22
|
],
|
|
22
23
|
function(
|
|
23
24
|
CalendarType,
|
|
@@ -32,13 +33,17 @@ sap.ui.define([
|
|
|
32
33
|
InvisibleText,
|
|
33
34
|
UI5Date,
|
|
34
35
|
CalendarDateUtils,
|
|
35
|
-
Locale
|
|
36
|
+
Locale,
|
|
37
|
+
coreLibrary
|
|
36
38
|
) {
|
|
37
39
|
"use strict";
|
|
38
40
|
|
|
39
41
|
|
|
40
42
|
// shortcut for sap.ui.unified.CalendarDayType
|
|
41
|
-
|
|
43
|
+
const CalendarDayType = library.CalendarDayType;
|
|
44
|
+
|
|
45
|
+
// shortcut for sap.ui.core.aria.HasPopup
|
|
46
|
+
const AriaHasPopup = coreLibrary.aria.HasPopup;
|
|
42
47
|
|
|
43
48
|
|
|
44
49
|
|
|
@@ -197,10 +202,10 @@ sap.ui.define([
|
|
|
197
202
|
|
|
198
203
|
MonthRenderer.renderDayNames = function(oRm, oMonth, oLocaleData, iStartDay, iDays, bDayNumberAsId, sWidth){
|
|
199
204
|
|
|
200
|
-
var iFirstDayOfWeek = oMonth._getFirstDayOfWeek()
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
205
|
+
var iFirstDayOfWeek = oMonth._getFirstDayOfWeek(),
|
|
206
|
+
sId = oMonth.getId(),
|
|
207
|
+
sCalendarType = oMonth.getPrimaryCalendarType(),
|
|
208
|
+
sDayId = "";
|
|
204
209
|
|
|
205
210
|
var aWeekDays = [];
|
|
206
211
|
if (oMonth._bLongWeekDays || !oMonth._bNamesLengthChecked) {
|
|
@@ -211,7 +216,7 @@ sap.ui.define([
|
|
|
211
216
|
var aWeekDaysWide = oLocaleData.getDaysStandAlone("wide", sCalendarType);
|
|
212
217
|
|
|
213
218
|
if (oMonth.getShowWeekNumbers() && sCalendarType !== CalendarType.Islamic) { // on Islamic primary calendar week numbers are not shown, do not add dummy cell
|
|
214
|
-
this.renderDummyCell(oRm, "sapUiCalWH", true, "columnheader");
|
|
219
|
+
this.renderDummyCell(oRm, "sapUiCalWH", true, oMonth._getWeekNumbersHeaderText(), "columnheader");
|
|
215
220
|
}
|
|
216
221
|
|
|
217
222
|
for ( var i = 0; i < iDays; i++) {
|
|
@@ -308,7 +313,7 @@ sap.ui.define([
|
|
|
308
313
|
|
|
309
314
|
if (iLength === 28) {
|
|
310
315
|
// there are only 4 full weeks (28 days), add one hidden 'day' div in order to open space for 5-th week
|
|
311
|
-
this.renderDummyCell(oRm, "sapUiCalItem", false, "");
|
|
316
|
+
this.renderDummyCell(oRm, "sapUiCalItem", false, "", "");
|
|
312
317
|
}
|
|
313
318
|
};
|
|
314
319
|
|
|
@@ -316,22 +321,35 @@ sap.ui.define([
|
|
|
316
321
|
* Generates empty 'day' div that adds space for one more week in the calendar, in case of 4 full weeks only (28 days)
|
|
317
322
|
* @param {sap.ui.core.RenderManager} oRm The RenderManager that can be used for writing to the render output buffer
|
|
318
323
|
* @param {string} sClassName css class that will be added to the dummy element styles
|
|
319
|
-
* @param {boolean}
|
|
324
|
+
* @param {boolean} bShowColumn if set to true the dummy element will be visible
|
|
325
|
+
* @param {string} sCellText text to render inside the dummy element; if empty, no text span is rendered
|
|
320
326
|
* @param {string} sRole aria role attribute
|
|
321
327
|
* @private
|
|
322
328
|
*/
|
|
323
|
-
MonthRenderer.renderDummyCell = function(oRm, sClassName,
|
|
329
|
+
MonthRenderer.renderDummyCell = function(oRm, sClassName, bShowColumn, sCellText, sRole) {
|
|
330
|
+
var sFullText = Library.getResourceBundleFor("sap.ui.unified").getText("CALENDAR_WEEK");
|
|
324
331
|
oRm.openStart("div");
|
|
325
332
|
oRm.class(sClassName);
|
|
326
333
|
oRm.class("sapUiCalDummy");
|
|
327
|
-
oRm.style("visibility",
|
|
334
|
+
oRm.style("visibility", bShowColumn ? "visible" : "hidden");
|
|
328
335
|
oRm.attr("role", sRole);
|
|
336
|
+
if (sCellText) {
|
|
337
|
+
oRm.attr("title", sFullText);
|
|
338
|
+
}
|
|
329
339
|
oRm.openEnd();
|
|
330
340
|
|
|
341
|
+
if (sCellText) {
|
|
342
|
+
oRm.openStart("span");
|
|
343
|
+
oRm.attr("aria-hidden", "true");
|
|
344
|
+
oRm.openEnd();
|
|
345
|
+
oRm.text(sCellText);
|
|
346
|
+
oRm.close("span");
|
|
347
|
+
}
|
|
348
|
+
|
|
331
349
|
oRm.openStart("span");
|
|
332
350
|
oRm.class("sapUiPseudoInvisibleText");
|
|
333
351
|
oRm.openEnd();
|
|
334
|
-
oRm.text(
|
|
352
|
+
oRm.text(sFullText);
|
|
335
353
|
oRm.close("span");
|
|
336
354
|
|
|
337
355
|
oRm.close('div');
|
|
@@ -443,6 +461,15 @@ sap.ui.define([
|
|
|
443
461
|
var bEnabled = oMonth._checkDateEnabled(oDay);
|
|
444
462
|
var bShouldBeMarkedAsSpecialDate = oMonth._isSpecialDateMarkerEnabled(oDay);
|
|
445
463
|
|
|
464
|
+
// Determine effective aria-haspopup from per-date value on matched DateTypeRange entries.
|
|
465
|
+
let sHasPopup = AriaHasPopup.None;
|
|
466
|
+
for (let i = 0; i < aDayTypes.length; i++) {
|
|
467
|
+
if (aDayTypes[i].bAriaHasPopupExplicit) {
|
|
468
|
+
sHasPopup = aDayTypes[i].ariaHasPopup;
|
|
469
|
+
break;
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
|
|
446
473
|
const sFirstSpecialDateType = aDayTypes.length > 0 && aDayTypes[0].type;
|
|
447
474
|
const sSecondaryDateType = aDayTypes.length > 0 && aDayTypes[0].secondaryType;
|
|
448
475
|
const bIsWeekend = oHelper.aNonWorkingDays && oHelper.aNonWorkingDays instanceof Array
|
|
@@ -581,6 +608,10 @@ sap.ui.define([
|
|
|
581
608
|
CalendarLegendRenderer.addCalendarTypeAccInfo(mAccProps, sAriaType, oLegend);
|
|
582
609
|
}
|
|
583
610
|
|
|
611
|
+
if (sHasPopup !== AriaHasPopup.None) {
|
|
612
|
+
mAccProps["haspopup"] = sHasPopup.toLowerCase();
|
|
613
|
+
}
|
|
614
|
+
|
|
584
615
|
if (aDayTypes[0] && aDayTypes[0].customData?.length && bShouldBeMarkedAsSpecialDate) {
|
|
585
616
|
//render customData
|
|
586
617
|
aDayTypes[0].customData.forEach((customData) => {
|
|
@@ -593,7 +624,8 @@ sap.ui.define([
|
|
|
593
624
|
oRm.accessibilityState(null, mAccProps);
|
|
594
625
|
oRm.openEnd(); // div element
|
|
595
626
|
|
|
596
|
-
if (aDayTypes[0] && bShouldBeMarkedAsSpecialDate
|
|
627
|
+
if (aDayTypes[0] && bShouldBeMarkedAsSpecialDate
|
|
628
|
+
&& (aDayTypes[0].type !== CalendarDayType.None || aDayTypes[0].color)) { //if there's a special date inside current month, render it
|
|
597
629
|
oRm.openStart("div");
|
|
598
630
|
oRm.class("sapUiCalSpecialDate");
|
|
599
631
|
const sColor = aDayTypes[0].color?.toLowerCase();
|
|
@@ -70,7 +70,7 @@ sap.ui.define([
|
|
|
70
70
|
* The MontsRow works with UI5Date or JavaScript Date objects, but only the month and the year are used to display and interact.
|
|
71
71
|
* As representation for a month, the 1st of the month will always be returned in the API.
|
|
72
72
|
* @extends sap.ui.core.Control
|
|
73
|
-
* @version 1.
|
|
73
|
+
* @version 1.152.0
|
|
74
74
|
*
|
|
75
75
|
* @constructor
|
|
76
76
|
* @public
|
|
@@ -41,7 +41,7 @@ sap.ui.define([
|
|
|
41
41
|
* The WeeksRow works with UI5Date or JavaScript Date objects for its API, but internally uses CalendarDate objects for calculations.
|
|
42
42
|
*
|
|
43
43
|
* @extends sap.ui.core.Control
|
|
44
|
-
* @version 1.
|
|
44
|
+
* @version 1.152.0
|
|
45
45
|
*
|
|
46
46
|
* @constructor
|
|
47
47
|
* @private
|
|
@@ -61,7 +61,7 @@ sap.ui.define([
|
|
|
61
61
|
* As in all date-time controls, all pubic JS Date objects that are given (e.g. <code>setDate()</code>) or read
|
|
62
62
|
* (e.g. <code>getFirstRenderedDate</code>) with values which are considered as date objects in browser(local) timezone.
|
|
63
63
|
* @extends sap.ui.core.Control
|
|
64
|
-
* @version 1.
|
|
64
|
+
* @version 1.152.0
|
|
65
65
|
*
|
|
66
66
|
* @constructor
|
|
67
67
|
* @public
|
|
@@ -32,14 +32,14 @@ sap.ui.define([
|
|
|
32
32
|
* @namespace
|
|
33
33
|
* @alias sap.ui.unified
|
|
34
34
|
* @author SAP SE
|
|
35
|
-
* @version 1.
|
|
35
|
+
* @version 1.152.0
|
|
36
36
|
* @since 1.28
|
|
37
37
|
* @public
|
|
38
38
|
*/
|
|
39
39
|
var thisLib = Library.init({
|
|
40
40
|
name : "sap.ui.unified",
|
|
41
41
|
apiVersion: 2,
|
|
42
|
-
version: "1.
|
|
42
|
+
version: "1.152.0",
|
|
43
43
|
dependencies : ["sap.ui.core"],
|
|
44
44
|
designtime: "sap/ui/unified/designtime/library.designtime",
|
|
45
45
|
types: [
|
|
@@ -151,14 +151,18 @@
|
|
|
151
151
|
}
|
|
152
152
|
|
|
153
153
|
/* no default (browser) outline, if device needs focus visualization its defined later */
|
|
154
|
-
.sapUiCalHead button:focus,
|
|
155
|
-
.sapUiCalCancel:focus
|
|
154
|
+
html.sap-desktop .sapUiCalHead button:focus,
|
|
155
|
+
html.sap-desktop .sapUiCalCancel:focus,
|
|
156
|
+
.sapUiCalHead button:focus-visible,
|
|
157
|
+
.sapUiCalCancel:focus-visible {
|
|
156
158
|
outline: none;
|
|
157
159
|
}
|
|
158
160
|
|
|
159
161
|
/* hover and focus makes only sense on desktops. On mobile devices it's not needed */
|
|
160
162
|
html.sap-desktop .sapUiCalHead button:focus,
|
|
161
|
-
html.sap-desktop .sapUiCalCancel:focus
|
|
163
|
+
html.sap-desktop .sapUiCalCancel:focus,
|
|
164
|
+
.sapUiCalHead button:focus-visible,
|
|
165
|
+
.sapUiCalCancel:focus-visible {
|
|
162
166
|
background-color: var(--sapButton_Hover_Background);
|
|
163
167
|
color: var(--sapButton_Hover_TextColor);
|
|
164
168
|
}
|
|
@@ -498,7 +502,7 @@ html.sap-desktop .sapUiCalHead button.sapUiCalDsbl:focus,
|
|
|
498
502
|
.sapUiCalItem {
|
|
499
503
|
line-height: 1.875rem;
|
|
500
504
|
|
|
501
|
-
&:focus {
|
|
505
|
+
&:focus-visible {
|
|
502
506
|
line-height: 1.75rem;
|
|
503
507
|
}
|
|
504
508
|
|
|
@@ -510,6 +514,13 @@ html.sap-desktop .sapUiCalHead button.sapUiCalDsbl:focus,
|
|
|
510
514
|
}
|
|
511
515
|
}
|
|
512
516
|
|
|
517
|
+
html.sap-desktop .sapUiCalMonthPicker.sapUiCalMonthSecType .sapUiCalItem:focus,
|
|
518
|
+
html.sap-desktop .sapUiCalYearPicker.sapUiCalMonthSecType .sapUiCalItem:focus,
|
|
519
|
+
.sapUiCalMonthPicker.sapUiCalMonthSecType .sapUiCalItem:focus-visible,
|
|
520
|
+
.sapUiCalYearPicker.sapUiCalMonthSecType .sapUiCalItem:focus-visible {
|
|
521
|
+
line-height: 1.75rem;
|
|
522
|
+
}
|
|
523
|
+
|
|
513
524
|
.sapUiSizeCozy {
|
|
514
525
|
|
|
515
526
|
.sapUiCal:not(.sapUiCalDateInt) {
|
|
@@ -547,7 +558,7 @@ html.sap-desktop .sapUiCalHead button.sapUiCalDsbl:focus,
|
|
|
547
558
|
.sapUiCalItem {
|
|
548
559
|
line-height: 1rem;
|
|
549
560
|
|
|
550
|
-
&:focus {
|
|
561
|
+
&:focus-visible {
|
|
551
562
|
line-height: 0.875rem;
|
|
552
563
|
|
|
553
564
|
.sapUiCalItemSecText {
|
|
@@ -557,6 +568,17 @@ html.sap-desktop .sapUiCalHead button.sapUiCalDsbl:focus,
|
|
|
557
568
|
}
|
|
558
569
|
}
|
|
559
570
|
|
|
571
|
+
html.sap-desktop .sapUiSizeCompact .sapUiCalMonthPicker.sapUiCalMonthSecType .sapUiCalItem:focus,
|
|
572
|
+
html.sap-desktop .sapUiSizeCompact .sapUiCalYearPicker.sapUiCalMonthSecType .sapUiCalItem:focus,
|
|
573
|
+
.sapUiSizeCompact .sapUiCalMonthPicker.sapUiCalMonthSecType .sapUiCalItem:focus-visible,
|
|
574
|
+
.sapUiSizeCompact .sapUiCalYearPicker.sapUiCalMonthSecType .sapUiCalItem:focus-visible {
|
|
575
|
+
line-height: 0.875rem;
|
|
576
|
+
|
|
577
|
+
.sapUiCalItemSecText {
|
|
578
|
+
line-height: 0.875rem;
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
|
|
560
582
|
/* Day, Month and YearPicker on popup */
|
|
561
583
|
.sapUiCalMonthView[data-sap-ui-popup],
|
|
562
584
|
.sapUiCalMonthPicker[data-sap-ui-popup],
|
|
@@ -766,7 +788,14 @@ html.sapUiMedia-Std-Phone .sapUiCalHeadB0 {
|
|
|
766
788
|
box-sizing: border-box;
|
|
767
789
|
}
|
|
768
790
|
|
|
769
|
-
.
|
|
791
|
+
.sapUiCalItem:focus-visible {
|
|
792
|
+
outline-width: none;
|
|
793
|
+
outline-style: none;
|
|
794
|
+
outline-color: none;
|
|
795
|
+
}
|
|
796
|
+
|
|
797
|
+
html.sap-desktop .sapUiCalMonthSecType .sapUiCalItem:focus > .sapUiCalItemSecText,
|
|
798
|
+
.sapUiCalMonthSecType .sapUiCalItem:focus-visible > .sapUiCalItemSecText {
|
|
770
799
|
line-height: 0.75rem;
|
|
771
800
|
}
|
|
772
801
|
|
|
@@ -1012,6 +1041,10 @@ html.sapUiMedia-Std-Phone .sapUiCalHeadB0 {
|
|
|
1012
1041
|
height: 2rem;
|
|
1013
1042
|
}
|
|
1014
1043
|
|
|
1044
|
+
.sapUiSizeCompact .sapUiCalWH {
|
|
1045
|
+
overflow: visible;
|
|
1046
|
+
}
|
|
1047
|
+
|
|
1015
1048
|
.sapUiSizeCompact .sapUiCal:not(.sapUiCalInt) {
|
|
1016
1049
|
|
|
1017
1050
|
.sapUiCalContent {
|
|
@@ -170,7 +170,6 @@
|
|
|
170
170
|
border-color: var(--sapField_BorderColor);
|
|
171
171
|
position: relative;
|
|
172
172
|
cursor: crosshair;
|
|
173
|
-
display: inline-block;
|
|
174
173
|
width: 105px;
|
|
175
174
|
height: 105px;
|
|
176
175
|
background-color: none;
|
|
@@ -371,7 +370,7 @@
|
|
|
371
370
|
padding: 10px 0;
|
|
372
371
|
|
|
373
372
|
.sapMSliderInner {
|
|
374
|
-
height: 1.
|
|
373
|
+
height: 1.5rem;
|
|
375
374
|
border: 1px solid var(--sapContent_ForegroundBorderColor);
|
|
376
375
|
border-radius: 0;
|
|
377
376
|
box-sizing: border-box;
|
|
@@ -386,7 +385,7 @@
|
|
|
386
385
|
/* slider handle */
|
|
387
386
|
.sapMSliderHandle {
|
|
388
387
|
width: 0.9375rem;
|
|
389
|
-
height: 1.
|
|
388
|
+
height: 1.75rem;
|
|
390
389
|
box-shadow: inset 0 0 0 0.125rem var(--sapContent_ContrastShadowColor);
|
|
391
390
|
top: -0.45rem;
|
|
392
391
|
/* to center the handle at the both ends */
|
|
@@ -681,6 +680,129 @@
|
|
|
681
680
|
border-bottom: none;
|
|
682
681
|
}
|
|
683
682
|
}
|
|
683
|
+
|
|
684
|
+
&.sapUiCPHighZoom {
|
|
685
|
+
.sapUiColorPicker-ColorPickerBox {
|
|
686
|
+
float: none;
|
|
687
|
+
width: 100%;
|
|
688
|
+
max-width: 100%;
|
|
689
|
+
height: auto;
|
|
690
|
+
display: block;
|
|
691
|
+
box-sizing: border-box;
|
|
692
|
+
|
|
693
|
+
&::after {
|
|
694
|
+
padding-bottom: 100%;
|
|
695
|
+
}
|
|
696
|
+
}
|
|
697
|
+
|
|
698
|
+
.sapUiCPSlidersPhone {
|
|
699
|
+
width: 100%;
|
|
700
|
+
box-sizing: border-box;
|
|
701
|
+
}
|
|
702
|
+
|
|
703
|
+
.sapUiColorPicker-ColorPickerSlider,
|
|
704
|
+
.sapUiColorPicker-ColorPickerAlphaSlider {
|
|
705
|
+
width: 100%;
|
|
706
|
+
}
|
|
707
|
+
|
|
708
|
+
.sapMDialogScrollCont.sapMDialogStretchContent {
|
|
709
|
+
overflow: hidden;
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
}
|
|
713
|
+
|
|
714
|
+
.sapUiColorPicker-Simplified.sapUnifiedColorPicker.sapUiCPHighZoom {
|
|
715
|
+
box-sizing: border-box;
|
|
716
|
+
width: 100%;
|
|
717
|
+
max-width: 100%;
|
|
718
|
+
min-width: 0;
|
|
719
|
+
overflow: hidden;
|
|
720
|
+
padding: 1rem;
|
|
721
|
+
|
|
722
|
+
.sapUiColorPicker-ColorPickerBox {
|
|
723
|
+
float: none;
|
|
724
|
+
width: 100%;
|
|
725
|
+
max-width: 100%;
|
|
726
|
+
margin: 0 auto 0.5rem auto;
|
|
727
|
+
height: auto;
|
|
728
|
+
display: block;
|
|
729
|
+
box-sizing: border-box;
|
|
730
|
+
|
|
731
|
+
&::after {
|
|
732
|
+
padding-bottom: 100%;
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
|
|
736
|
+
.sapUiColorPicker-ColorPickerSlider {
|
|
737
|
+
width: 100%;
|
|
738
|
+
max-width: 100%;
|
|
739
|
+
box-sizing: border-box;
|
|
740
|
+
margin: 0.5rem auto 0 auto;
|
|
741
|
+
height: 2.25rem;
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
.sapUiCPHexRow {
|
|
745
|
+
display: flex;
|
|
746
|
+
flex-direction: row;
|
|
747
|
+
align-items: flex-start;
|
|
748
|
+
gap: 0.5rem;
|
|
749
|
+
width: 100%;
|
|
750
|
+
}
|
|
751
|
+
|
|
752
|
+
.sapUiCPComparisonWrapper {
|
|
753
|
+
flex: 0 0 3.375rem;
|
|
754
|
+
width: 3.375rem;
|
|
755
|
+
box-sizing: border-box;
|
|
756
|
+
height: 2.25rem;
|
|
757
|
+
border: 1px solid var(--sapContent_ForegroundBorderColor);
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
.sapUiColorPicker-ColorPickerHexField {
|
|
761
|
+
box-sizing: border-box;
|
|
762
|
+
margin-top: 0;
|
|
763
|
+
}
|
|
764
|
+
|
|
765
|
+
.sapUiColorPicker-ColorPickerHexField.sapMInputBase {
|
|
766
|
+
width: 100%;
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
.sapUiCPHexWrapper {
|
|
770
|
+
display: flex;
|
|
771
|
+
flex-direction: column;
|
|
772
|
+
flex: 1 1 0;
|
|
773
|
+
min-width: 0;
|
|
774
|
+
height: auto;
|
|
775
|
+
box-sizing: border-box;
|
|
776
|
+
line-height: 1.25rem;
|
|
777
|
+
margin-bottom: 0;
|
|
778
|
+
}
|
|
779
|
+
|
|
780
|
+
.sapUiCPHexText {
|
|
781
|
+
display: block;
|
|
782
|
+
text-align: center;
|
|
783
|
+
width: 100%;
|
|
784
|
+
}
|
|
785
|
+
|
|
786
|
+
.sapUiColorPicker-ColorPickerOldColor.sapUiColorPicker-ColorPickerOldColor,
|
|
787
|
+
.sapUiColorPicker-ColorPickerNewColor.sapUiColorPicker-ColorPickerNewColor {
|
|
788
|
+
width: 50%;
|
|
789
|
+
height: 2.25rem;
|
|
790
|
+
border: 0;
|
|
791
|
+
border-bottom: 1px solid var(--sapContent_ForegroundBorderColor);
|
|
792
|
+
}
|
|
793
|
+
}
|
|
794
|
+
|
|
795
|
+
.sapMDialog.sapMResponsivePopover .sapUiColorPicker-Simplified.sapUnifiedColorPicker.sapUiCPHighZoom {
|
|
796
|
+
padding-top: 0;
|
|
797
|
+
padding-bottom: 0;
|
|
798
|
+
}
|
|
799
|
+
|
|
800
|
+
.sapMPopover.sapMResponsivePopover .sapUiColorPicker-Simplified.sapUnifiedColorPicker.sapUiCPHighZoom {
|
|
801
|
+
padding-top: 1rem;
|
|
802
|
+
}
|
|
803
|
+
|
|
804
|
+
.sapMResponsivePopover:has(.sapUiColorPicker-Simplified.sapUnifiedColorPicker.sapUiCPHighZoom) .sapMPopoverScroll {
|
|
805
|
+
overflow: hidden;
|
|
684
806
|
}
|
|
685
807
|
|
|
686
808
|
/* unified Large */
|
|
@@ -435,4 +435,9 @@ html[data-sap-ui-browser^='cr'] .sapUiFupInputMask > input {
|
|
|
435
435
|
.sapUiFup.sapUiFupButtonOnly.sapMInputBase:not(.sapMFocus) .sapMInputBaseContentWrapper:has(.sapMBtnEmphasized):not(.sapMInputBaseReadonlyWrapper):not(.sapMInputBaseContentWrapperState):not(.sapMInputBaseDisabledWrapper):hover {
|
|
436
436
|
background-color: var(--sapButton_Emphasized_Hover_Background);
|
|
437
437
|
border-color: var(--sapButton_Emphasized_Hover_BorderColor);
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
/* Override default width of the FileUploader when it is used inside a Bar/Toolbar/OverflowToolbar */
|
|
441
|
+
.sapMIBar .sapUiFup:not(.sapUiFupButtonOnly) {
|
|
442
|
+
width: 12rem;
|
|
438
443
|
}
|
|
@@ -140,7 +140,7 @@
|
|
|
140
140
|
font-size: @_sap_ui_unified_ShellHeader_HeaderBarHeight / 2;
|
|
141
141
|
margin: @_sap_ui_unified_ShellHeader_ButtonOuterSpace - @_sap_ui_unified_ShellHeader_ButtonOutlineWidth;
|
|
142
142
|
margin-top: @_sap_ui_unified_ShellHeader_ButtonOuterSpace;
|
|
143
|
-
color: var(--
|
|
143
|
+
color: var(--sapButton_IconColor);
|
|
144
144
|
border-radius: @_sap_ui_unified_ShellHeader_ButtonBorderRadius;
|
|
145
145
|
border: @_sap_ui_unified_ShellHeader_ButtonOutlineWidth solid transparent;
|
|
146
146
|
box-sizing: border-box;
|
|
@@ -180,11 +180,6 @@
|
|
|
180
180
|
border-right: @_sap_ui_unified_ShellHeader_ButtonSeparatorWidth solid var(--sapToolbar_SeparatorColor);
|
|
181
181
|
}
|
|
182
182
|
|
|
183
|
-
.sapUiUfdShellHeadItm > span,
|
|
184
|
-
.sapUiUfdShellHeadUsrItm {
|
|
185
|
-
color: var(--sapButton_IconColor);
|
|
186
|
-
}
|
|
187
|
-
|
|
188
183
|
html.sapUiMedia-Std-Desktop .sapUiUfdShellHeadItm:hover > span,
|
|
189
184
|
html.sapUiMedia-Std-Desktop .sapUiUfdShellHeadUsrItm:hover > * {
|
|
190
185
|
background-color: var(--sapButton_Hover_Background);
|
|
@@ -300,7 +295,7 @@ html.sapUiMedia-Std-Desktop .sapUiUfdShellHeadItm.sapUiUfdShellHeadItmSel:hover
|
|
|
300
295
|
display: inline-block;
|
|
301
296
|
vertical-align: top;
|
|
302
297
|
height: 100%;
|
|
303
|
-
color: var(--
|
|
298
|
+
color: var(--sapButton_IconColor);
|
|
304
299
|
}
|
|
305
300
|
|
|
306
301
|
.sapUiUfdShellHeadUsrItm > * {
|