@openui5/sap.ui.webc.common 1.98.0 → 1.99.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/package.json +2 -2
- package/src/sap/ui/webc/common/.library +1 -1
- package/src/sap/ui/webc/common/WebComponent.js +24 -3
- package/src/sap/ui/webc/common/WebComponentMetadata.js +2 -2
- package/src/sap/ui/webc/common/WebComponentRenderer.js +12 -5
- package/src/sap/ui/webc/common/library.js +3 -3
- package/src/sap/ui/webc/common/thirdparty/base/Boot.js +22 -15
- package/src/sap/ui/webc/common/thirdparty/base/CustomElementsRegistry.js +48 -5
- package/src/sap/ui/webc/common/thirdparty/base/Device.js +6 -1
- package/src/sap/ui/webc/common/thirdparty/base/Keys.js +22 -0
- package/src/sap/ui/webc/common/thirdparty/base/Runtimes.js +65 -0
- package/src/sap/ui/webc/common/thirdparty/base/StaticAreaItem.js +3 -0
- package/src/sap/ui/webc/common/thirdparty/base/UI5Element.js +7 -2
- package/src/sap/ui/webc/common/thirdparty/base/UI5ElementMetadata.js +3 -0
- package/src/sap/ui/webc/common/thirdparty/base/features/F6Navigation.js +80 -0
- package/src/sap/ui/webc/common/thirdparty/base/generated/VersionInfo.js +15 -0
- package/src/sap/ui/webc/common/thirdparty/base/theming/applyTheme.js +8 -4
- package/src/sap/ui/webc/common/thirdparty/base/theming/getThemeDesignerTheme.js +18 -5
- package/src/sap/ui/webc/common/thirdparty/base/util/FocusableElements.js +8 -6
- package/src/sap/ui/webc/common/thirdparty/base/util/TabbableElements.js +3 -0
- package/src/sap/ui/webc/common/thirdparty/base/util/isNodeHidden.js +1 -1
- package/src/sap/ui/webc/common/thirdparty/icons/{SAP-icons-e7d3b275.js → SAP-icons-027beaa9.js} +3 -0
- package/src/sap/ui/webc/common/thirdparty/icons/{SAP-icons-253bf13b.js → SAP-icons-340ee996.js} +3 -0
- package/src/sap/ui/webc/common/thirdparty/icons/json-imports/Icons.js +2 -2
- package/src/sap/ui/webc/common/thirdparty/icons/qr-code.js +8 -0
- package/src/sap/ui/webc/common/thirdparty/icons/v4/qr-code.js +13 -0
- package/src/sap/ui/webc/common/thirdparty/icons/v5/qr-code.js +13 -0
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@openui5/sap.ui.webc.common",
|
3
|
-
"version": "1.
|
3
|
+
"version": "1.99.0",
|
4
4
|
"description": "OpenUI5 UI Library sap.ui.webc.common",
|
5
5
|
"author": "SAP SE (https://www.sap.com)",
|
6
6
|
"license": "Apache-2.0",
|
@@ -16,6 +16,6 @@
|
|
16
16
|
"url": "https://github.com/SAP/openui5.git"
|
17
17
|
},
|
18
18
|
"dependencies": {
|
19
|
-
"@openui5/sap.ui.core": "1.
|
19
|
+
"@openui5/sap.ui.core": "1.99.0"
|
20
20
|
}
|
21
21
|
}
|
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
<name>sap.ui.webc.common</name>
|
5
5
|
<vendor>SAP SE</vendor>
|
6
|
-
<version>1.
|
6
|
+
<version>1.99.0</version>
|
7
7
|
<copyright>OpenUI5
|
8
8
|
* (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
|
9
9
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
|
@@ -13,7 +13,8 @@ sap.ui.define([
|
|
13
13
|
"sap/ui/core/Core",
|
14
14
|
"sap/base/strings/hyphenate",
|
15
15
|
"sap/base/strings/camelize",
|
16
|
-
"sap/ui/core/library"
|
16
|
+
"sap/ui/core/library",
|
17
|
+
"sap/ui/core/LabelEnablement"
|
17
18
|
],
|
18
19
|
function(
|
19
20
|
Control,
|
@@ -23,7 +24,8 @@ sap.ui.define([
|
|
23
24
|
Core,
|
24
25
|
hyphenate,
|
25
26
|
camelize,
|
26
|
-
coreLibrary
|
27
|
+
coreLibrary,
|
28
|
+
LabelEnablement
|
27
29
|
) {
|
28
30
|
"use strict";
|
29
31
|
|
@@ -104,7 +106,7 @@ sap.ui.define([
|
|
104
106
|
*
|
105
107
|
* @extends sap.ui.core.Control
|
106
108
|
* @author SAP SE
|
107
|
-
* @version 1.
|
109
|
+
* @version 1.99.0
|
108
110
|
* @public
|
109
111
|
* @since 1.92.0
|
110
112
|
* @alias sap.ui.webc.common.WebComponent
|
@@ -394,5 +396,24 @@ sap.ui.define([
|
|
394
396
|
return sTextDirection.toLowerCase();
|
395
397
|
};
|
396
398
|
|
399
|
+
/**
|
400
|
+
* Generates a string containing the ID's from the association ariaLabelledBy.
|
401
|
+
* @param {string[]} aAriaLabelledBy an array of IDs associated with this control
|
402
|
+
* @returns {string} sAriaLabelledBy
|
403
|
+
*/
|
404
|
+
WebComponent.prototype._getAriaLabelledByForRendering = function (aAriaLabelledBy) {
|
405
|
+
var aFilteredIds = LabelEnablement.getReferencingLabels(this);
|
406
|
+
|
407
|
+
if (Array.isArray(aAriaLabelledBy)) {
|
408
|
+
aAriaLabelledBy.forEach(function (sId) {
|
409
|
+
if (aFilteredIds.indexOf(sId) < 0) {
|
410
|
+
aFilteredIds.unshift(sId);
|
411
|
+
}
|
412
|
+
});
|
413
|
+
}
|
414
|
+
|
415
|
+
return aFilteredIds.join(" ");
|
416
|
+
};
|
417
|
+
|
397
418
|
return WebComponent;
|
398
419
|
});
|
@@ -22,7 +22,7 @@ sap.ui.define([
|
|
22
22
|
*
|
23
23
|
* @class
|
24
24
|
* @author SAP SE
|
25
|
-
* @version 1.
|
25
|
+
* @version 1.99.0
|
26
26
|
* @since 1.92.0
|
27
27
|
* @experimental Since 1.92.0 The API might change. It is not intended for productive usage yet!
|
28
28
|
* @alias sap.ui.webc.common.WebComponentMetadata
|
@@ -74,12 +74,12 @@ sap.ui.define([
|
|
74
74
|
var OriginalAssociation = ElementMetadata.prototype.metaFactoryAssociation;
|
75
75
|
var WebComponentAssociation = function(oClass, name, info) {
|
76
76
|
OriginalAssociation.apply(this, arguments);
|
77
|
-
|
78
77
|
if (!info.mapping || typeof info.mapping !== "object") {
|
79
78
|
this._sMapping = ""; // For associations, "mapping" must be an object, because "to" is required
|
80
79
|
} else {
|
81
80
|
this._sMapping = "property"; // Associations map only to properties, no matter what is set, it's always "property" mapping
|
82
81
|
this._sMapTo = info.mapping.to; // The property, to which the association is related
|
82
|
+
this._fnMappingFormatter = info.mapping.formatter;
|
83
83
|
}
|
84
84
|
};
|
85
85
|
WebComponentAssociation.prototype = Object.create(OriginalAssociation.prototype);
|
@@ -26,7 +26,7 @@ sap.ui.define([
|
|
26
26
|
/**
|
27
27
|
* Renders the HTML for the given control, using the provided {@link sap.ui.core.RenderManager}.
|
28
28
|
* @param {sap.ui.core.RenderManager} oRm the RenderManager that can be used for writing to the Render-Output-Buffer
|
29
|
-
* @param {sap.ui.
|
29
|
+
* @param {sap.ui.webc.common.WebComponent} oWebComponent an object representation of the control that should be rendered
|
30
30
|
*/
|
31
31
|
WebComponentRenderer.render = function(oRm, oWebComponent){
|
32
32
|
var sTag = oWebComponent.getMetadata().getTag();
|
@@ -193,10 +193,17 @@ sap.ui.define([
|
|
193
193
|
for (var sAssocName in oAssociations) {
|
194
194
|
var oAssocData = oAssociations[sAssocName];
|
195
195
|
var vAssocValue = oAssocData.get(oWebComponent);
|
196
|
-
var sPropName = oAssocData._sMapTo; // The name of the property to be set with the association's ID value
|
197
|
-
|
198
|
-
|
199
|
-
|
196
|
+
var sPropName = hyphenate(oAssocData._sMapTo); // The name of the property to be set with the association's ID value
|
197
|
+
if (oAssocData._fnMappingFormatter) {
|
198
|
+
vAssocValue = oWebComponent[oAssocData._fnMappingFormatter].call(oWebComponent, vAssocValue);
|
199
|
+
}
|
200
|
+
|
201
|
+
if (!oAssocData.multiple && vAssocValue && typeof vAssocValue === "object") {
|
202
|
+
vAssocValue = vAssocValue.getId(); // The value will be the control ID, held by the association
|
203
|
+
}
|
204
|
+
|
205
|
+
if (vAssocValue) { // Only set the property, if the association is set
|
206
|
+
oRm.attr(sPropName, vAssocValue);
|
200
207
|
}
|
201
208
|
}
|
202
209
|
};
|
@@ -23,7 +23,7 @@ sap.ui.define([
|
|
23
23
|
// delegate further initialization of this library to the Core
|
24
24
|
sap.ui.getCore().initLibrary({
|
25
25
|
name : "sap.ui.webc.common",
|
26
|
-
version: "1.
|
26
|
+
version: "1.99.0",
|
27
27
|
dependencies : ["sap.ui.core"],
|
28
28
|
noLibraryCSS: true,
|
29
29
|
designtime: "sap/ui/webc/common/designtime/library.designtime",
|
@@ -46,7 +46,7 @@ sap.ui.define([
|
|
46
46
|
* @namespace
|
47
47
|
* @alias sap.ui.webc
|
48
48
|
* @author SAP SE
|
49
|
-
* @version 1.
|
49
|
+
* @version 1.99.0
|
50
50
|
* @public
|
51
51
|
* @since 1.92.0
|
52
52
|
* @experimental Since 1.92.0
|
@@ -58,7 +58,7 @@ sap.ui.define([
|
|
58
58
|
* @namespace
|
59
59
|
* @alias sap.ui.webc.common
|
60
60
|
* @author SAP SE
|
61
|
-
* @version 1.
|
61
|
+
* @version 1.99.0
|
62
62
|
* @public
|
63
63
|
* @since 1.92.0
|
64
64
|
* @experimental Since 1.92.0
|
@@ -1,25 +1,32 @@
|
|
1
|
-
sap.ui.define(['exports', './EventProvider', './util/whenDOMReady', './FontFace', './SystemCSSVars', './config/Theme', './theming/applyTheme', './FeaturesRegistry'], function (exports, EventProvider, whenDOMReady, FontFace, SystemCSSVars, Theme, applyTheme, FeaturesRegistry) { 'use strict';
|
1
|
+
sap.ui.define(['exports', './EventProvider', './util/whenDOMReady', './FontFace', './SystemCSSVars', './config/Theme', './theming/applyTheme', './Runtimes', './FeaturesRegistry'], function (exports, EventProvider, whenDOMReady, FontFace, SystemCSSVars, Theme, applyTheme, Runtimes, FeaturesRegistry) { 'use strict';
|
2
2
|
|
3
|
-
let
|
3
|
+
let bootPromise;
|
4
4
|
const eventProvider = new EventProvider();
|
5
5
|
const attachBoot = listener => {
|
6
6
|
eventProvider.attachEvent("boot", listener);
|
7
7
|
};
|
8
8
|
const boot = async () => {
|
9
|
-
if (
|
10
|
-
return;
|
9
|
+
if (bootPromise) {
|
10
|
+
return bootPromise;
|
11
11
|
}
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
12
|
+
bootPromise = new Promise(async resolve => {
|
13
|
+
Runtimes.registerCurrentRuntime();
|
14
|
+
const OpenUI5Support = FeaturesRegistry.getFeature("OpenUI5Support");
|
15
|
+
const F6Navigation = FeaturesRegistry.getFeature("F6Navigation");
|
16
|
+
if (OpenUI5Support) {
|
17
|
+
await OpenUI5Support.init();
|
18
|
+
} else if (F6Navigation) {
|
19
|
+
F6Navigation.init();
|
20
|
+
}
|
21
|
+
await whenDOMReady();
|
22
|
+
await applyTheme(Theme.getTheme());
|
23
|
+
OpenUI5Support && OpenUI5Support.attachListeners();
|
24
|
+
FontFace();
|
25
|
+
SystemCSSVars();
|
26
|
+
await eventProvider.fireEventAsync("boot");
|
27
|
+
resolve();
|
28
|
+
});
|
29
|
+
return bootPromise;
|
23
30
|
};
|
24
31
|
|
25
32
|
exports.attachBoot = attachBoot;
|
@@ -1,10 +1,13 @@
|
|
1
|
-
sap.ui.define(['exports', './util/setToArray'], function (exports, setToArray) { 'use strict';
|
1
|
+
sap.ui.define(['exports', './util/setToArray', './getSharedResource', './Runtimes'], function (exports, setToArray, getSharedResource, Runtimes) { 'use strict';
|
2
2
|
|
3
|
+
const Tags = getSharedResource("Tags", new Map());
|
3
4
|
const Definitions = new Set();
|
4
|
-
|
5
|
+
let Failures = {};
|
5
6
|
let failureTimeout;
|
7
|
+
const UNKNOWN_RUNTIME = "unknown";
|
6
8
|
const registerTag = tag => {
|
7
9
|
Definitions.add(tag);
|
10
|
+
Tags.set(tag, Runtimes.getCurrentRuntimeIndex());
|
8
11
|
};
|
9
12
|
const isTagRegistered = tag => {
|
10
13
|
return Definitions.has(tag);
|
@@ -13,17 +16,57 @@ sap.ui.define(['exports', './util/setToArray'], function (exports, setToArray) {
|
|
13
16
|
return setToArray(Definitions);
|
14
17
|
};
|
15
18
|
const recordTagRegistrationFailure = tag => {
|
16
|
-
|
19
|
+
let tagRegRuntimeIndex = Tags.get(tag);
|
20
|
+
if (tagRegRuntimeIndex === undefined) {
|
21
|
+
tagRegRuntimeIndex = UNKNOWN_RUNTIME;
|
22
|
+
}
|
23
|
+
Failures[tagRegRuntimeIndex] = Failures[tagRegRuntimeIndex] || new Set();
|
24
|
+
Failures[tagRegRuntimeIndex].add(tag);
|
17
25
|
if (!failureTimeout) {
|
18
26
|
failureTimeout = setTimeout(() => {
|
19
27
|
displayFailedRegistrations();
|
28
|
+
Failures = {};
|
20
29
|
failureTimeout = undefined;
|
21
30
|
}, 1000);
|
22
31
|
}
|
23
32
|
};
|
24
33
|
const displayFailedRegistrations = () => {
|
25
|
-
|
26
|
-
|
34
|
+
const allRuntimes = Runtimes.getAllRuntimes();
|
35
|
+
const currentRuntimeIndex = Runtimes.getCurrentRuntimeIndex();
|
36
|
+
const currentRuntime = allRuntimes[currentRuntimeIndex];
|
37
|
+
let message = `Multiple UI5 Web Components instances detected.`;
|
38
|
+
if (allRuntimes.length > 1) {
|
39
|
+
message = `${message}\nLoading order (versions before 1.1.0 not listed): ${allRuntimes.map(runtime => `\n${runtime.description}`).join("")}`;
|
40
|
+
}
|
41
|
+
Object.keys(Failures).forEach(otherRuntimeIndex => {
|
42
|
+
let comparison;
|
43
|
+
let otherRuntime;
|
44
|
+
if (otherRuntimeIndex === UNKNOWN_RUNTIME) {
|
45
|
+
comparison = 1;
|
46
|
+
otherRuntime = {
|
47
|
+
description: `Older unknown runtime`,
|
48
|
+
};
|
49
|
+
} else {
|
50
|
+
comparison = Runtimes.compareRuntimes(currentRuntimeIndex, otherRuntimeIndex);
|
51
|
+
otherRuntime = allRuntimes[otherRuntimeIndex];
|
52
|
+
}
|
53
|
+
let compareWord;
|
54
|
+
if (comparison > 0) {
|
55
|
+
compareWord = "an older";
|
56
|
+
} else if (comparison < 0) {
|
57
|
+
compareWord = "a newer";
|
58
|
+
} else {
|
59
|
+
compareWord = "the same";
|
60
|
+
}
|
61
|
+
message = `${message}\n\n"${currentRuntime.description}" failed to define ${Failures[otherRuntimeIndex].size} tag(s) as they were defined by a runtime of ${compareWord} version "${otherRuntime.description}": ${setToArray(Failures[otherRuntimeIndex]).sort().join(", ")}.`;
|
62
|
+
if (comparison > 0) {
|
63
|
+
message = `${message}\nWARNING! If your code uses features of the above web components, unavailable in ${otherRuntime.description}, it might not work as expected!`;
|
64
|
+
} else {
|
65
|
+
message = `${message}\nSince the above web components were defined by the same or newer version runtime, they should be compatible with your code.`;
|
66
|
+
}
|
67
|
+
});
|
68
|
+
message = `${message}\n\nTo prevent other runtimes from defining tags that you use, consider using scoping or have third-party libraries use scoping: https://github.com/SAP/ui5-webcomponents/blob/master/docs/2-advanced/03-scoping.md.`;
|
69
|
+
console.warn(message);
|
27
70
|
};
|
28
71
|
|
29
72
|
exports.getAllRegisteredTags = getAllRegisteredTags;
|
@@ -7,9 +7,10 @@ sap.ui.define(['exports'], function (exports) { 'use strict';
|
|
7
7
|
const safari = !ie && !chrome && /(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(ua);
|
8
8
|
const webkit = !ie && /webkit/.test(ua);
|
9
9
|
const windows = navigator.platform.indexOf("Win") !== -1;
|
10
|
+
const iOS = navigator.platform.match(/iPhone|iPad|iPod/) || (navigator.userAgent.match(/Mac/) && "ontouchend" in document);
|
10
11
|
const android = !windows && /Android/.test(ua);
|
11
12
|
const androidPhone = android && /(?=android)(?=.*mobile)/i.test(ua);
|
12
|
-
const ipad = /ipad/i.test(ua);
|
13
|
+
const ipad = /ipad/i.test(ua) || (/Macintosh/i.test(ua) && "ontouchend" in document);
|
13
14
|
let windowsVersion;
|
14
15
|
let webkitVersion;
|
15
16
|
let tablet;
|
@@ -77,11 +78,15 @@ sap.ui.define(['exports'], function (exports) { 'use strict';
|
|
77
78
|
const isCombi = () => {
|
78
79
|
return isTablet() && isDesktop();
|
79
80
|
};
|
81
|
+
const isIOS = () => {
|
82
|
+
return iOS;
|
83
|
+
};
|
80
84
|
|
81
85
|
exports.isChrome = isChrome;
|
82
86
|
exports.isCombi = isCombi;
|
83
87
|
exports.isDesktop = isDesktop;
|
84
88
|
exports.isIE = isIE;
|
89
|
+
exports.isIOS = isIOS;
|
85
90
|
exports.isPhone = isPhone;
|
86
91
|
exports.isSafari = isSafari;
|
87
92
|
exports.isTablet = isTablet;
|
@@ -118,14 +118,20 @@ sap.ui.define(['exports'], function (exports) { 'use strict';
|
|
118
118
|
const isDownCtrl = event => (event.key ? (event.key === "ArrowDown" || event.key === "Down") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, true, false, false);
|
119
119
|
const isUpShift = event => (event.key ? (event.key === "ArrowUp" || event.key === "Up") : event.keyCode === KeyCodes.ARROW_UP) && checkModifierKeys(event, false, false, true);
|
120
120
|
const isDownShift = event => (event.key ? (event.key === "ArrowDown" || event.key === "Down") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, false, false, true);
|
121
|
+
const isUpAlt = event => (event.key ? (event.key === "ArrowUp" || event.key === "Up") : event.keyCode === KeyCodes.ARROW_UP) && checkModifierKeys(event, false, true, false);
|
122
|
+
const isDownAlt = event => (event.key ? (event.key === "ArrowDown" || event.key === "Down") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, false, true, false);
|
121
123
|
const isLeftShift = event => (event.key ? (event.key === "ArrowLeft" || event.key === "Left") : event.keyCode === KeyCodes.ARROW_LEFT) && checkModifierKeys(event, false, false, true);
|
122
124
|
const isRightShift = event => (event.key ? (event.key === "ArrowRight" || event.key === "Right") : event.keyCode === KeyCodes.ARROW_RIGHT) && checkModifierKeys(event, false, false, true);
|
125
|
+
const isLeftShiftCtrl = event => (event.key ? (event.key === "ArrowLeft" || event.key === "Left") : event.keyCode === KeyCodes.ARROW_LEFT) && checkModifierKeys(event, true, false, true);
|
126
|
+
const isRightShiftCtrl = event => (event.key ? (event.key === "ArrowRight" || event.key === "Right") : event.keyCode === KeyCodes.ARROW_RIGHT) && checkModifierKeys(event, true, false, true);
|
123
127
|
const isUpShiftCtrl = event => (event.key ? (event.key === "ArrowUp" || event.key === "Up") : event.keyCode === KeyCodes.ARROW_UP) && checkModifierKeys(event, true, false, true);
|
124
128
|
const isDownShiftCtrl = event => (event.key ? (event.key === "ArrowDown" || event.key === "Down") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, true, false, true);
|
125
129
|
const isHome = event => (event.key ? event.key === "Home" : event.keyCode === KeyCodes.HOME) && !hasModifierKeys(event);
|
126
130
|
const isEnd = event => (event.key ? event.key === "End" : event.keyCode === KeyCodes.END) && !hasModifierKeys(event);
|
127
131
|
const isHomeCtrl = event => (event.key ? event.key === "Home" : event.keyCode === KeyCodes.HOME) && checkModifierKeys(event, true, false, false);
|
132
|
+
const isHomeShift = event => (event.key ? event.key === "Home" : event.keyCode === KeyCodes.HOME) && checkModifierKeys(event, false, false, true);
|
128
133
|
const isEndCtrl = event => (event.key ? event.key === "End" : event.keyCode === KeyCodes.END) && checkModifierKeys(event, true, false, false);
|
134
|
+
const isEndShift = event => (event.key ? event.key === "End" : event.keyCode === KeyCodes.END) && checkModifierKeys(event, false, false, true);
|
129
135
|
const isEscape = event => (event.key ? event.key === "Escape" || event.key === "Esc" : event.keyCode === KeyCodes.ESCAPE) && !hasModifierKeys(event);
|
130
136
|
const isTabNext = event => (event.key ? event.key === "Tab" : event.keyCode === KeyCodes.TAB) && !hasModifierKeys(event);
|
131
137
|
const isTabPrevious = event => (event.key ? event.key === "Tab" : event.keyCode === KeyCodes.TAB) && checkModifierKeys(event, false, false, true);
|
@@ -151,33 +157,46 @@ sap.ui.define(['exports'], function (exports) { 'use strict';
|
|
151
157
|
return event.key === "F4" && !hasModifierKeys(event);
|
152
158
|
};
|
153
159
|
const isF4Shift = event => (event.key ? event.key === "F4" : event.keyCode === KeyCodes.F4) && checkModifierKeys(event, false, false, true);
|
160
|
+
const isF6Next = event => ((event.key ? event.key === "F6" : event.keyCode === KeyCodes.F6) && checkModifierKeys(event, false, false, false))
|
161
|
+
|| ((event.key ? (event.key === "ArrowDown" || event.key === "Down") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, true, true, false));
|
162
|
+
const isF6Previous = event => ((event.key ? event.key === "F6" : event.keyCode === KeyCodes.F6) && checkModifierKeys(event, false, false, true))
|
163
|
+
|| ((event.key ? (event.key === "ArrowUp" || event.key === "Up") : event.keyCode === KeyCodes.ARROW_Up) && checkModifierKeys(event, true, true, false));
|
154
164
|
const isF7 = event => (event.key ? event.key === "F7" : event.keyCode === KeyCodes.F7) && !hasModifierKeys(event);
|
155
165
|
const isShowByArrows = event => {
|
156
166
|
return ((event.key === "ArrowDown" || event.key === "Down") || (event.key === "ArrowUp" || event.key === "Up")) && checkModifierKeys(event, false, true, false);
|
157
167
|
};
|
168
|
+
const isShift = event => event.key === "Shift" || event.keyCode === KeyCodes.SHIFT;
|
169
|
+
const isCtrlA = event => ((event.key === "A" || event.key === "a") || event.which === KeyCodes.A) && checkModifierKeys(event, true, false, false);
|
158
170
|
const hasModifierKeys = event => event.shiftKey || event.altKey || getCtrlKey(event);
|
159
171
|
const getCtrlKey = event => !!(event.metaKey || event.ctrlKey);
|
160
172
|
const checkModifierKeys = (event, bCtrlKey, bAltKey, bShiftKey) => event.shiftKey === bShiftKey && event.altKey === bAltKey && getCtrlKey(event) === bCtrlKey;
|
161
173
|
|
162
174
|
exports.isBackSpace = isBackSpace;
|
175
|
+
exports.isCtrlA = isCtrlA;
|
163
176
|
exports.isDelete = isDelete;
|
164
177
|
exports.isDown = isDown;
|
178
|
+
exports.isDownAlt = isDownAlt;
|
165
179
|
exports.isDownCtrl = isDownCtrl;
|
166
180
|
exports.isDownShift = isDownShift;
|
167
181
|
exports.isDownShiftCtrl = isDownShiftCtrl;
|
168
182
|
exports.isEnd = isEnd;
|
169
183
|
exports.isEndCtrl = isEndCtrl;
|
184
|
+
exports.isEndShift = isEndShift;
|
170
185
|
exports.isEnter = isEnter;
|
171
186
|
exports.isEnterShift = isEnterShift;
|
172
187
|
exports.isEscape = isEscape;
|
173
188
|
exports.isF4 = isF4;
|
174
189
|
exports.isF4Shift = isF4Shift;
|
190
|
+
exports.isF6Next = isF6Next;
|
191
|
+
exports.isF6Previous = isF6Previous;
|
175
192
|
exports.isF7 = isF7;
|
176
193
|
exports.isHome = isHome;
|
177
194
|
exports.isHomeCtrl = isHomeCtrl;
|
195
|
+
exports.isHomeShift = isHomeShift;
|
178
196
|
exports.isLeft = isLeft;
|
179
197
|
exports.isLeftCtrl = isLeftCtrl;
|
180
198
|
exports.isLeftShift = isLeftShift;
|
199
|
+
exports.isLeftShiftCtrl = isLeftShiftCtrl;
|
181
200
|
exports.isMinus = isMinus;
|
182
201
|
exports.isPageDown = isPageDown;
|
183
202
|
exports.isPageDownAlt = isPageDownAlt;
|
@@ -191,12 +210,15 @@ sap.ui.define(['exports'], function (exports) { 'use strict';
|
|
191
210
|
exports.isRight = isRight;
|
192
211
|
exports.isRightCtrl = isRightCtrl;
|
193
212
|
exports.isRightShift = isRightShift;
|
213
|
+
exports.isRightShiftCtrl = isRightShiftCtrl;
|
214
|
+
exports.isShift = isShift;
|
194
215
|
exports.isShow = isShow;
|
195
216
|
exports.isSpace = isSpace;
|
196
217
|
exports.isSpaceShift = isSpaceShift;
|
197
218
|
exports.isTabNext = isTabNext;
|
198
219
|
exports.isTabPrevious = isTabPrevious;
|
199
220
|
exports.isUp = isUp;
|
221
|
+
exports.isUpAlt = isUpAlt;
|
200
222
|
exports.isUpCtrl = isUpCtrl;
|
201
223
|
exports.isUpShift = isUpShift;
|
202
224
|
exports.isUpShiftCtrl = isUpShiftCtrl;
|
@@ -0,0 +1,65 @@
|
|
1
|
+
sap.ui.define(['exports', './generated/VersionInfo', './getSharedResource'], function (exports, VersionInfo, getSharedResource) { 'use strict';
|
2
|
+
|
3
|
+
let currentRuntimeIndex;
|
4
|
+
let currentRuntimeAlias = "";
|
5
|
+
const compareCache = new Map();
|
6
|
+
const Runtimes = getSharedResource("Runtimes", []);
|
7
|
+
const registerCurrentRuntime = () => {
|
8
|
+
if (currentRuntimeIndex === undefined) {
|
9
|
+
currentRuntimeIndex = Runtimes.length;
|
10
|
+
Runtimes.push({
|
11
|
+
...VersionInfo,
|
12
|
+
alias: currentRuntimeAlias,
|
13
|
+
description: `Runtime ${currentRuntimeIndex} - ver ${VersionInfo.version}${currentRuntimeAlias ? ` (${currentRuntimeAlias})` : ""}`,
|
14
|
+
});
|
15
|
+
}
|
16
|
+
};
|
17
|
+
const getCurrentRuntimeIndex = () => {
|
18
|
+
return currentRuntimeIndex;
|
19
|
+
};
|
20
|
+
const compareRuntimes = (index1, index2) => {
|
21
|
+
const cacheIndex = `${index1},${index2}`;
|
22
|
+
if (compareCache.has(cacheIndex)) {
|
23
|
+
return compareCache.get(cacheIndex);
|
24
|
+
}
|
25
|
+
const runtime1 = Runtimes[index1];
|
26
|
+
const runtime2 = Runtimes[index2];
|
27
|
+
if (!runtime1 || !runtime2) {
|
28
|
+
throw new Error("Invalid runtime index supplied");
|
29
|
+
}
|
30
|
+
if (runtime1.isNext || runtime2.isNext) {
|
31
|
+
return runtime1.buildTime - runtime2.buildTime;
|
32
|
+
}
|
33
|
+
const majorDiff = runtime1.major - runtime2.major;
|
34
|
+
if (majorDiff) {
|
35
|
+
return majorDiff;
|
36
|
+
}
|
37
|
+
const minorDiff = runtime1.minor - runtime2.minor;
|
38
|
+
if (minorDiff) {
|
39
|
+
return minorDiff;
|
40
|
+
}
|
41
|
+
const patchDiff = runtime1.patch - runtime2.patch;
|
42
|
+
if (patchDiff) {
|
43
|
+
return patchDiff;
|
44
|
+
}
|
45
|
+
const collator = new Intl.Collator(undefined, { numeric: true, sensitivity: "base" });
|
46
|
+
const result = collator.compare(runtime1.suffix, runtime2.suffix);
|
47
|
+
compareCache.set(cacheIndex, result);
|
48
|
+
return result;
|
49
|
+
};
|
50
|
+
const setRuntimeAlias = alias => {
|
51
|
+
currentRuntimeAlias = alias;
|
52
|
+
};
|
53
|
+
const getAllRuntimes = () => {
|
54
|
+
return Runtimes;
|
55
|
+
};
|
56
|
+
|
57
|
+
exports.compareRuntimes = compareRuntimes;
|
58
|
+
exports.getAllRuntimes = getAllRuntimes;
|
59
|
+
exports.getCurrentRuntimeIndex = getCurrentRuntimeIndex;
|
60
|
+
exports.registerCurrentRuntime = registerCurrentRuntime;
|
61
|
+
exports.setRuntimeAlias = setRuntimeAlias;
|
62
|
+
|
63
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
64
|
+
|
65
|
+
});
|
@@ -9,6 +9,9 @@ sap.ui.define(['./StaticArea', './updateShadowRoot', './Render', './util/getEffe
|
|
9
9
|
setOwnerElement(ownerElement) {
|
10
10
|
this.ownerElement = ownerElement;
|
11
11
|
this.classList.add(this.ownerElement._id);
|
12
|
+
if (this.ownerElement.hasAttribute("data-ui5-static-stable")) {
|
13
|
+
this.setAttribute("data-ui5-stable", this.ownerElement.getAttribute("data-ui5-static-stable"));
|
14
|
+
}
|
12
15
|
}
|
13
16
|
update() {
|
14
17
|
if (this._rendered) {
|
@@ -41,6 +41,9 @@ sap.ui.define(['./thirdparty/merge', './Boot', './UI5ElementMetadata', './EventP
|
|
41
41
|
}
|
42
42
|
async connectedCallback() {
|
43
43
|
this.setAttribute(this.constructor.getMetadata().getPureTag(), "");
|
44
|
+
if (this.constructor.getMetadata().supportsF6FastNavigation()) {
|
45
|
+
this.setAttribute("data-sap-ui-fastnavgroup", "true");
|
46
|
+
}
|
44
47
|
const slotsAreManaged = this.constructor.getMetadata().slotsAreManaged();
|
45
48
|
this._inDOM = true;
|
46
49
|
if (slotsAreManaged) {
|
@@ -142,7 +145,8 @@ sap.ui.define(['./thirdparty/merge', './Boot', './UI5ElementMetadata', './EventP
|
|
142
145
|
}
|
143
146
|
child = this.constructor.getMetadata().constructor.validateSlotValue(child, slotData);
|
144
147
|
if (child.isUI5Element && slotData.invalidateOnChildChange) {
|
145
|
-
child.attachInvalidate
|
148
|
+
const method = (child.attachInvalidate || child._attachChange).bind(child);
|
149
|
+
method(this._getChildChangeListener(slotName));
|
146
150
|
}
|
147
151
|
if (SlotsHelper.isSlot(child)) {
|
148
152
|
this._attachSlotChange(child, slotName);
|
@@ -183,7 +187,8 @@ sap.ui.define(['./thirdparty/merge', './Boot', './UI5ElementMetadata', './EventP
|
|
183
187
|
const children = this._state[propertyName];
|
184
188
|
children.forEach(child => {
|
185
189
|
if (child && child.isUI5Element) {
|
186
|
-
child.detachInvalidate
|
190
|
+
const method = (child.detachInvalidate || child._detachChange).bind(child);
|
191
|
+
method(this._getChildChangeListener(slotName));
|
187
192
|
}
|
188
193
|
if (SlotsHelper.isSlot(child)) {
|
189
194
|
this._detachSlotChange(child, slotName);
|
@@ -97,6 +97,9 @@ sap.ui.define(['./types/DataType', './util/isDescendantOf', './util/StringHelper
|
|
97
97
|
slotsAreManaged() {
|
98
98
|
return !!this.metadata.managedSlots;
|
99
99
|
}
|
100
|
+
supportsF6FastNavigation() {
|
101
|
+
return !!this.metadata.fastNavigation;
|
102
|
+
}
|
100
103
|
getProperties() {
|
101
104
|
return this.metadata.properties || {};
|
102
105
|
}
|
@@ -0,0 +1,80 @@
|
|
1
|
+
sap.ui.define(['../FeaturesRegistry', '../Keys', '../util/FocusableElements'], function (FeaturesRegistry, Keys, FocusableElements) { 'use strict';
|
2
|
+
|
3
|
+
class F6Navigation {
|
4
|
+
init() {
|
5
|
+
this.keydownHandler = this._keydownHandler.bind(this);
|
6
|
+
this.attachEventListeners();
|
7
|
+
this.selectedGroup = null;
|
8
|
+
this.groups = [];
|
9
|
+
}
|
10
|
+
attachEventListeners() {
|
11
|
+
document.addEventListener("keydown", this.keydownHandler);
|
12
|
+
}
|
13
|
+
async _keydownHandler(event) {
|
14
|
+
if (Keys.isF6Next(event)) {
|
15
|
+
this.updateGroups();
|
16
|
+
if (this.groups.length < 1) {
|
17
|
+
return;
|
18
|
+
}
|
19
|
+
const nextIndex = this.groups.indexOf(this.selectedGroup);
|
20
|
+
let nextElement = null;
|
21
|
+
if (nextIndex > -1) {
|
22
|
+
if (nextIndex + 1 >= this.groups.length) {
|
23
|
+
nextElement = this.groups[0];
|
24
|
+
} else {
|
25
|
+
nextElement = this.groups[nextIndex + 1];
|
26
|
+
}
|
27
|
+
} else {
|
28
|
+
nextElement = this.groups[0];
|
29
|
+
}
|
30
|
+
const elementToFocus = await FocusableElements.getFirstFocusableElement(nextElement.isUI5Element ? nextElement.getDomRef() : nextElement, true);
|
31
|
+
elementToFocus.focus();
|
32
|
+
}
|
33
|
+
if (Keys.isF6Previous(event)) {
|
34
|
+
this.updateGroups();
|
35
|
+
if (this.groups.length < 1) {
|
36
|
+
return;
|
37
|
+
}
|
38
|
+
const nextIndex = this.groups.indexOf(this.selectedGroup);
|
39
|
+
let nextElement = null;
|
40
|
+
if (nextIndex > -1) {
|
41
|
+
if (nextIndex - 1 < 0) {
|
42
|
+
nextElement = this.groups[this.groups.length - 1];
|
43
|
+
} else {
|
44
|
+
const firstFocusable = await FocusableElements.getFirstFocusableElement(this.groups[nextIndex - 1], true);
|
45
|
+
const shouldSkipParent = firstFocusable === await FocusableElements.getFirstFocusableElement(this.groups[nextIndex], true);
|
46
|
+
nextElement = this.groups[shouldSkipParent ? nextIndex - 2 : nextIndex - 1];
|
47
|
+
}
|
48
|
+
} else {
|
49
|
+
nextElement = this.groups[this.groups.length - 1];
|
50
|
+
}
|
51
|
+
const elementToFocus = await FocusableElements.getFirstFocusableElement(nextElement.isUI5Element ? nextElement.getDomRef() : nextElement, true);
|
52
|
+
elementToFocus.focus();
|
53
|
+
}
|
54
|
+
}
|
55
|
+
removeEventListeners() {
|
56
|
+
document.removeEventListener("keydown", this.keydownHandler);
|
57
|
+
}
|
58
|
+
updateGroups() {
|
59
|
+
this.setSelectedGroup(document.activeElement);
|
60
|
+
this.setGroups();
|
61
|
+
}
|
62
|
+
setGroups() {
|
63
|
+
this.groups = Array.from(document.querySelectorAll("[data-sap-ui-fastnavgroup='true']")).filter(group => group.clientWidth && window.getComputedStyle(group).visibility !== "hidden");
|
64
|
+
}
|
65
|
+
setSelectedGroup(element) {
|
66
|
+
while (element && element.getAttribute("data-sap-ui-fastnavgroup") !== "true" && element !== document.querySelector("html")) {
|
67
|
+
element = element.parentElement ? element.parentNode : element.parentNode.host;
|
68
|
+
}
|
69
|
+
this.selectedGroup = element;
|
70
|
+
}
|
71
|
+
destroy() {
|
72
|
+
this.removeEventListeners();
|
73
|
+
}
|
74
|
+
}
|
75
|
+
const F6HelperInstance = new F6Navigation();
|
76
|
+
FeaturesRegistry.registerFeature("F6Navigation", F6HelperInstance);
|
77
|
+
|
78
|
+
return F6Navigation;
|
79
|
+
|
80
|
+
});
|
@@ -9,8 +9,10 @@ sap.ui.define(['../asset-registries/Themes', '../ManagedStyles', './getThemeDesi
|
|
9
9
|
if (!isThemeBaseRegistered()) {
|
10
10
|
return;
|
11
11
|
}
|
12
|
-
const
|
13
|
-
|
12
|
+
const cssData = await Themes.getThemeProperties(BASE_THEME_PACKAGE, theme);
|
13
|
+
if (cssData) {
|
14
|
+
ManagedStyles.createOrUpdateStyle(cssData, "data-ui5-theme-properties", BASE_THEME_PACKAGE);
|
15
|
+
}
|
14
16
|
};
|
15
17
|
const deleteThemeBase = () => {
|
16
18
|
ManagedStyles.removeStyle("data-ui5-theme-properties", BASE_THEME_PACKAGE);
|
@@ -21,8 +23,10 @@ sap.ui.define(['../asset-registries/Themes', '../ManagedStyles', './getThemeDesi
|
|
21
23
|
if (packageName === BASE_THEME_PACKAGE) {
|
22
24
|
return;
|
23
25
|
}
|
24
|
-
const
|
25
|
-
|
26
|
+
const cssData = await Themes.getThemeProperties(packageName, theme);
|
27
|
+
if (cssData) {
|
28
|
+
ManagedStyles.createOrUpdateStyle(cssData, "data-ui5-theme-properties", packageName);
|
29
|
+
}
|
26
30
|
});
|
27
31
|
};
|
28
32
|
const detectExternalTheme = () => {
|
@@ -1,5 +1,6 @@
|
|
1
1
|
sap.ui.define(function () { 'use strict';
|
2
2
|
|
3
|
+
const warnings = new Set();
|
3
4
|
const getThemeMetadata = () => {
|
4
5
|
let el = document.querySelector(".sapThemeMetaData-Base-baseLib") || document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");
|
5
6
|
if (el) {
|
@@ -8,9 +9,12 @@ sap.ui.define(function () { 'use strict';
|
|
8
9
|
el = document.createElement("span");
|
9
10
|
el.style.display = "none";
|
10
11
|
el.classList.add("sapThemeMetaData-Base-baseLib");
|
11
|
-
el.classList.add("sapThemeMetaData-UI5-sap-ui-core");
|
12
12
|
document.body.appendChild(el);
|
13
|
-
|
13
|
+
let metadata = getComputedStyle(el).backgroundImage;
|
14
|
+
if (metadata === "none") {
|
15
|
+
el.classList.add("sapThemeMetaData-UI5-sap-ui-core");
|
16
|
+
metadata = getComputedStyle(el).backgroundImage;
|
17
|
+
}
|
14
18
|
document.body.removeChild(el);
|
15
19
|
return metadata;
|
16
20
|
};
|
@@ -23,14 +27,20 @@ sap.ui.define(function () { 'use strict';
|
|
23
27
|
try {
|
24
28
|
paramsString = decodeURIComponent(paramsString);
|
25
29
|
} catch (ex) {
|
26
|
-
|
30
|
+
if (!warnings.has("decode")) {
|
31
|
+
console.warn("Malformed theme metadata string, unable to decodeURIComponent");
|
32
|
+
warnings.add("decode");
|
33
|
+
}
|
27
34
|
return;
|
28
35
|
}
|
29
36
|
}
|
30
37
|
try {
|
31
38
|
return JSON.parse(paramsString);
|
32
39
|
} catch (ex) {
|
33
|
-
|
40
|
+
if (!warnings.has("parse")) {
|
41
|
+
console.warn("Malformed theme metadata string, unable to parse JSON");
|
42
|
+
warnings.add("parse");
|
43
|
+
}
|
34
44
|
}
|
35
45
|
}
|
36
46
|
};
|
@@ -41,7 +51,10 @@ sap.ui.define(function () { 'use strict';
|
|
41
51
|
themeName = metadata.Path.match(/\.([^.]+)\.css_variables$/)[1];
|
42
52
|
baseThemeName = metadata.Extends[0];
|
43
53
|
} catch (ex) {
|
44
|
-
|
54
|
+
if (!warnings.has("object")) {
|
55
|
+
console.warn("Malformed theme metadata Object", metadata);
|
56
|
+
warnings.add("object");
|
57
|
+
}
|
45
58
|
return;
|
46
59
|
}
|
47
60
|
return {
|
@@ -3,30 +3,32 @@ sap.ui.define(['exports', './isNodeHidden', './isNodeClickable'], function (expo
|
|
3
3
|
const isFocusTrap = el => {
|
4
4
|
return el.hasAttribute("data-ui5-focus-trap");
|
5
5
|
};
|
6
|
-
const getFirstFocusableElement = async container => {
|
6
|
+
const getFirstFocusableElement = async (container, startFromContainer) => {
|
7
7
|
if (!container || isNodeHidden(container)) {
|
8
8
|
return null;
|
9
9
|
}
|
10
|
-
return findFocusableElement(container, true);
|
10
|
+
return findFocusableElement(container, true, startFromContainer);
|
11
11
|
};
|
12
|
-
const getLastFocusableElement = async container => {
|
12
|
+
const getLastFocusableElement = async (container, startFromContainer) => {
|
13
13
|
if (!container || isNodeHidden(container)) {
|
14
14
|
return null;
|
15
15
|
}
|
16
|
-
return findFocusableElement(container, false);
|
16
|
+
return findFocusableElement(container, false, startFromContainer);
|
17
17
|
};
|
18
18
|
const isElemFocusable = el => {
|
19
19
|
return el.hasAttribute("data-ui5-focus-redirect") || !isNodeHidden(el);
|
20
20
|
};
|
21
|
-
const findFocusableElement = async (container, forward) => {
|
21
|
+
const findFocusableElement = async (container, forward, startFromContainer) => {
|
22
22
|
let child;
|
23
23
|
if (container.shadowRoot) {
|
24
24
|
child = forward ? container.shadowRoot.firstChild : container.shadowRoot.lastChild;
|
25
25
|
} else if (container.assignedNodes && container.assignedNodes()) {
|
26
26
|
const assignedElements = container.assignedNodes();
|
27
27
|
child = forward ? assignedElements[0] : assignedElements[assignedElements.length - 1];
|
28
|
+
} else if (startFromContainer) {
|
29
|
+
child = container;
|
28
30
|
} else {
|
29
|
-
child = forward ? container.
|
31
|
+
child = forward ? container.firstElementChild : container.lastElementChild;
|
30
32
|
}
|
31
33
|
let focusableDescendant;
|
32
34
|
while (child) {
|
@@ -20,6 +20,9 @@ sap.ui.define(['exports', './isNodeTabbable'], function (exports, isNodeTabbable
|
|
20
20
|
const children = currentNode.shadowRoot.children;
|
21
21
|
currentNode = Array.from(children).find(node => node.tagName !== "STYLE");
|
22
22
|
}
|
23
|
+
if (!currentNode) {
|
24
|
+
return;
|
25
|
+
}
|
23
26
|
if (isNodeTabbable(currentNode)) {
|
24
27
|
tabbablesNodes.push(currentNode);
|
25
28
|
}
|
@@ -4,7 +4,7 @@ sap.ui.define(function () { 'use strict';
|
|
4
4
|
if (node.nodeName === "SLOT") {
|
5
5
|
return false;
|
6
6
|
}
|
7
|
-
return (node.offsetWidth <= 0 && node.offsetHeight <= 0) || node.style.visibility === "hidden";
|
7
|
+
return (node.offsetWidth <= 0 && node.offsetHeight <= 0) || (node.style && node.style.visibility === "hidden");
|
8
8
|
};
|
9
9
|
|
10
10
|
return isNodeHidden;
|
package/src/sap/ui/webc/common/thirdparty/icons/{SAP-icons-e7d3b275.js → SAP-icons-027beaa9.js}
RENAMED
@@ -1650,6 +1650,9 @@ sap.ui.define(['exports'], function (exports) { 'use strict';
|
|
1650
1650
|
path: "M256 410c20 0 38-18 38-39 0-20-18-38-38-38-21 0-39 18-39 38 0 21 18 39 39 39zm83-166c12-15 19-29 19-52 0-53-51-89-102-89s-103 36-103 89c0 16 13 26 29 26 15 0 25-10 25-26 0-18 18-38 51-38 34 0 52 20 52 38 0 11-3 18-8 23-7 9-37 22-46 28-8 6-32 19-32 39 0 15 16 31 35 26 27-6 20-24 34-32 15-7 34-20 46-32zM256 0c141 0 256 115 256 256S397 512 256 512 0 397 0 256 115 0 256 0zm0 461c112 0 205-92 205-205 0-112-93-205-205-205-113 0-205 93-205 205 0 113 92 205 205 205z",
|
1651
1651
|
ltr: true
|
1652
1652
|
},
|
1653
|
+
"qr-code": {
|
1654
|
+
path: "M205 0c14 0 25 12 25 26v179c0 14-11 26-25 26H26c-14 0-26-12-26-26V26C0 12 12 0 26 0h179zm-26 179V51H51v128h128zm26 103c14 0 25 11 25 25v180c0 14-11 25-25 25H26c-14 0-26-11-26-25V307c0-14 12-25 26-25h179zm-26 179V333H51v128h128zm-77-307c-14 0-25-12-25-26v-25c0-15 11-26 25-26h26c14 0 26 11 26 26v25c0 14-12 26-26 26h-26zm0 281c-14 0-25-11-25-25v-26c0-14 11-25 25-25h26c14 0 26 11 26 25v26c0 14-12 25-26 25h-26zm384-128c15 0 26 12 26 26s-11 26-26 26h-51c-14 0-25-12-25-26v-31h-57c-14 0-26-12-26-26s12-25 26-25h82c14 0 26 11 26 25v31h25zm0-307c15 0 26 12 26 26v179c0 14-11 26-26 26H307c-14 0-25-12-25-26V26c0-14 11-26 25-26h179zm-25 179V51H333v128h128zm25 256c15 0 26 12 26 26v26c0 14-11 25-26 25h-25c-14 0-26-11-26-25v-26c0-14 12-26 26-26h25zm-102 26c14 0 26 11 26 26 0 14-12 25-26 25H282c-14 0-26-11-26-25v-52c0-14 12-25 26-25s25 11 25 25v26h77zm-26-51h-25c-14 0-26-12-26-26v-25c0-15 12-26 26-26h25c15 0 26 11 26 26v25c0 14-11 26-26 26zm26-256c-14 0-26-12-26-26v-25c0-15 12-26 26-26h26c14 0 25 11 25 26v25c0 14-11 26-25 26h-26z"
|
1655
|
+
},
|
1653
1656
|
"radar-chart": {
|
1654
1657
|
path: "M473.5 131c7 5 13 12 13 23v203c0 10-6 18-13 23l-204 127c-7 5-17 5-27 0l-204-127c-8-5-13-13-13-23V154c0-8 5-18 13-23l204-127c7-5 17-5 27 0zm-41 213V169l-178-112-178 112v175l178 112zm-249-206l51-50c8-8 15-11 23-11 7 0 13 5 18 13l53 89h53c10 0 21 8 23 18 3 10 0 23-7 28l-31 23 36 58c7 13 2 28-8 36l-102 63c-7 5-15 5-23 3-7-3-12-8-15-15l-15-49-46 33c-7 5-15 5-23 3-7-3-12-8-15-15l-51-153c-2-8-2-15 3-23 5-7 12-10 20-10h56l-5-15c-3-10 0-21 5-26zm8 178l30-23-20-63h-38zm109-81l-3-5h-43l10 30zm46 76l-21-33-43 33 10 33zm-79-132l-18-33-15 15 5 18h28z"
|
1655
1658
|
},
|
package/src/sap/ui/webc/common/thirdparty/icons/{SAP-icons-253bf13b.js → SAP-icons-340ee996.js}
RENAMED
@@ -1653,6 +1653,9 @@ sap.ui.define(['exports'], function (exports) { 'use strict';
|
|
1653
1653
|
path: "M256 0q53 0 100 20t81.5 54.5T492 156t20 100-20 99.5-54.5 81.5-81.5 55-100 20-99.5-20T75 437t-55-81.5T0 256t20-100 55-81.5T156.5 20 256 0zm0 480q46 0 87-17.5t71.5-48 48-71.5 17.5-87-17.5-87-48-71.5-71.5-48T256 32t-87 17.5-71.5 48-48 71.5T32 256t17.5 87 48 71.5 71.5 48 87 17.5zm-3-376q43 0 68.5 21.5T347 181q0 22-13 36.5T309 246q-8 9-15 15t-11.5 13.5-6.5 18 0 27.5h-49q0-16 .5-27.5t4.5-21 12-18.5 22-21l21-17q7-5 14-16t7-21q0-15-14.5-29T256 135t-38 14.5-19 37.5h-49q0-14 7.5-29t21-27 32.5-19.5 42-7.5zm3 248q14 0 23 9t9 23q0 13-9 22.5t-23 9.5q-13 0-22.5-9.5T224 384q0-14 9.5-23t22.5-9z",
|
1654
1654
|
ltr: true
|
1655
1655
|
},
|
1656
|
+
"qr-code": {
|
1657
|
+
path: "M481 0q14 0 23 9t9 23v98h-32V32h-97V0h97zM33 130H1V32q0-14 9-23t23-9h97v32H33v98zm290 91q-14 0-24.5-10.5T288 186V99q0-14 10.5-24.5T323 64h89q14 0 24.5 10.5T447 99v87q0 14-10.5 24.5T412 221h-89zm-53 21q0 12-8 20t-19 8H129v-28h114V64h27v178zM65 101q0-14 11-24.5T101 66h89q14 0 24.5 10.5T225 101v87q0 14-10.5 24.5T190 223h-89q-14 0-25-10.5T65 188v-87zm255 85q0 3 3 3h89q4 0 4-3V99q0-3-4-3h-89q-3 0-3 3v87zm-127-85q0-3-3-3h-89q-3 0-3 3v87q0 3 3 3h89q3 0 3-3v-87zm-32 59h-32v-32h32v32zm224 0h-32v-32h32v32zm-24 127v-22h-72v-28h72q12 0 19.5 8.5T388 265v22h-27zM68 240h38v32H68v-32zm122 47q15 0 25.5 10t10.5 25v86q0 15-10.5 25.5T190 444h-89q-14 0-24.5-10.5T66 408v-86q0-15 10.5-25t24.5-10h89zm67 1h64v32h-64v-32zm160 0h32v32h-32v-32zm-224 34q0-4-3-4h-89q-3 0-3 4v86q0 4 3 4h89q3 0 3-4v-86zm192 40h-44v22h-28v-22q0-12 8-19.5t20-7.5h44v27zm60 55q0 11-8 19.5t-19 8.5h-65v-28h65v-65h27v65zm-316-65h32v32h-32v-32zm115 43q0-12 8-20t19-8h18v28h-18v53h-27v-53zM33 480h96v32H33q-14 0-23-9t-9-23v-98h32v98zm448-98h32v98q0 14-9 23t-23 9h-97v-32h97v-98z"
|
1658
|
+
},
|
1656
1659
|
"radar-chart": {
|
1657
1660
|
path: "M257.5 0l217 138v236l-217 138-219-138V138zm-197 150v212l197 123 195-123V150l-195-123zm11 23q0-11 8-18.5t19-7.5q17 0 24 13h265q6-13 23-13 20 0 28 23 0 13-7 22t-21 9q-11 0-18-7l-258 143q0 11-8 19t-19 8q-12 0-20-7.5t-8-18.5q0-8 4.5-14.5T94.5 313l-6-114q-17-8-17-26zm39 25l7 114q2 0 3.5 1t3.5 2l243-132h-243q-5 11-14 15zm118 93l31 103q6 0 10 4l86-65q0-8 1-14.5t6-10.5l-35-70 20-11 38 73q11 0 17 8t6 19-6.5 19-20.5 8q-6 0-12-3l-87 64q0 13-4.5 23.5T256.5 449q-12 0-20-8.5t-8-19.5q0-13 10-20l-30-100zm-13-137l21-56q-8-8-8-19t7.5-19 20.5-8q11 0 19 8t8 19q0 7-5 15l31 60h-26q-5-10-11.5-24.5T257.5 107l-19 47h-23zm-18 45l3-10h25l-7 19q5 8 5 17 0 14-8 20l3 12-20 11-5-15q-11-1-17.5-9t-6.5-18q0-11 7-19t21-8zm130-10l3 8-20 10-9-18h26z"
|
1658
1661
|
},
|
@@ -3,9 +3,9 @@ sap.ui.define(['require', 'sap/ui/webc/common/thirdparty/base/asset-registries/I
|
|
3
3
|
const loadIconsBundle = async (collection) => {
|
4
4
|
let iconData = null;
|
5
5
|
if (collection === "SAP-icons-v5") {
|
6
|
-
iconData = (await new Promise(function (resolve, reject) { require(['../SAP-icons-
|
6
|
+
iconData = (await new Promise(function (resolve, reject) { require(['../SAP-icons-027beaa9'], resolve, reject) })).default;
|
7
7
|
} else {
|
8
|
-
iconData = (await new Promise(function (resolve, reject) { require(['../SAP-icons-
|
8
|
+
iconData = (await new Promise(function (resolve, reject) { require(['../SAP-icons-340ee996'], resolve, reject) })).default;
|
9
9
|
}
|
10
10
|
if (typeof iconData === "string" && iconData.endsWith(".json")) {
|
11
11
|
throw new Error("[icons] Invalid bundling detected - dynamic JSON imports bundled as URLs. Switch to inlining JSON files from the build or use `import \"@ui5/webcomponents-icons/dist/Assets-static.js\". Check the \"Assets\" documentation for more information.");
|
@@ -0,0 +1,8 @@
|
|
1
|
+
sap.ui.define(['sap/ui/webc/common/thirdparty/base/config/Theme', './v5/qr-code', './v4/qr-code'], function (Theme, qrCode$2, qrCode$1) { 'use strict';
|
2
|
+
|
3
|
+
const pathData = Theme.isTheme("sap_horizon") ? qrCode$1 : qrCode$2;
|
4
|
+
var qrCode = { pathData };
|
5
|
+
|
6
|
+
return qrCode;
|
7
|
+
|
8
|
+
});
|
@@ -0,0 +1,13 @@
|
|
1
|
+
sap.ui.define(['sap/ui/webc/common/thirdparty/base/asset-registries/Icons'], function (Icons) { 'use strict';
|
2
|
+
|
3
|
+
const name = "qr-code";
|
4
|
+
const pathData = "M481 0q14 0 23 9t9 23v98h-32V32h-97V0h97zM33 130H1V32q0-14 9-23t23-9h97v32H33v98zm290 91q-14 0-24.5-10.5T288 186V99q0-14 10.5-24.5T323 64h89q14 0 24.5 10.5T447 99v87q0 14-10.5 24.5T412 221h-89zm-53 21q0 12-8 20t-19 8H129v-28h114V64h27v178zM65 101q0-14 11-24.5T101 66h89q14 0 24.5 10.5T225 101v87q0 14-10.5 24.5T190 223h-89q-14 0-25-10.5T65 188v-87zm255 85q0 3 3 3h89q4 0 4-3V99q0-3-4-3h-89q-3 0-3 3v87zm-127-85q0-3-3-3h-89q-3 0-3 3v87q0 3 3 3h89q3 0 3-3v-87zm-32 59h-32v-32h32v32zm224 0h-32v-32h32v32zm-24 127v-22h-72v-28h72q12 0 19.5 8.5T388 265v22h-27zM68 240h38v32H68v-32zm122 47q15 0 25.5 10t10.5 25v86q0 15-10.5 25.5T190 444h-89q-14 0-24.5-10.5T66 408v-86q0-15 10.5-25t24.5-10h89zm67 1h64v32h-64v-32zm160 0h32v32h-32v-32zm-224 34q0-4-3-4h-89q-3 0-3 4v86q0 4 3 4h89q3 0 3-4v-86zm192 40h-44v22h-28v-22q0-12 8-19.5t20-7.5h44v27zm60 55q0 11-8 19.5t-19 8.5h-65v-28h65v-65h27v65zm-316-65h32v32h-32v-32zm115 43q0-12 8-20t19-8h18v28h-18v53h-27v-53zM33 480h96v32H33q-14 0-23-9t-9-23v-98h32v98zm448-98h32v98q0 14-9 23t-23 9h-97v-32h97v-98z";
|
5
|
+
const ltr = false;
|
6
|
+
const collection = "SAP-icons";
|
7
|
+
const packageName = "@ui5/webcomponents-icons";
|
8
|
+
Icons.registerIcon(name, { pathData, ltr, collection, packageName });
|
9
|
+
var pathDataV5 = { pathData };
|
10
|
+
|
11
|
+
return pathDataV5;
|
12
|
+
|
13
|
+
});
|
@@ -0,0 +1,13 @@
|
|
1
|
+
sap.ui.define(['sap/ui/webc/common/thirdparty/base/asset-registries/Icons'], function (Icons) { 'use strict';
|
2
|
+
|
3
|
+
const name = "qr-code";
|
4
|
+
const pathData = "M205 0c14 0 25 12 25 26v179c0 14-11 26-25 26H26c-14 0-26-12-26-26V26C0 12 12 0 26 0h179zm-26 179V51H51v128h128zm26 103c14 0 25 11 25 25v180c0 14-11 25-25 25H26c-14 0-26-11-26-25V307c0-14 12-25 26-25h179zm-26 179V333H51v128h128zm-77-307c-14 0-25-12-25-26v-25c0-15 11-26 25-26h26c14 0 26 11 26 26v25c0 14-12 26-26 26h-26zm0 281c-14 0-25-11-25-25v-26c0-14 11-25 25-25h26c14 0 26 11 26 25v26c0 14-12 25-26 25h-26zm384-128c15 0 26 12 26 26s-11 26-26 26h-51c-14 0-25-12-25-26v-31h-57c-14 0-26-12-26-26s12-25 26-25h82c14 0 26 11 26 25v31h25zm0-307c15 0 26 12 26 26v179c0 14-11 26-26 26H307c-14 0-25-12-25-26V26c0-14 11-26 25-26h179zm-25 179V51H333v128h128zm25 256c15 0 26 12 26 26v26c0 14-11 25-26 25h-25c-14 0-26-11-26-25v-26c0-14 12-26 26-26h25zm-102 26c14 0 26 11 26 26 0 14-12 25-26 25H282c-14 0-26-11-26-25v-52c0-14 12-25 26-25s25 11 25 25v26h77zm-26-51h-25c-14 0-26-12-26-26v-25c0-15 12-26 26-26h25c15 0 26 11 26 26v25c0 14-11 26-26 26zm26-256c-14 0-26-12-26-26v-25c0-15 12-26 26-26h26c14 0 25 11 25 26v25c0 14-11 26-25 26h-26z";
|
5
|
+
const ltr = false;
|
6
|
+
const collection = "SAP-icons-v5";
|
7
|
+
const packageName = "@ui5/webcomponents-icons";
|
8
|
+
Icons.registerIcon(name, { pathData, ltr, collection, packageName });
|
9
|
+
var pathDataV4 = { pathData };
|
10
|
+
|
11
|
+
return pathDataV4;
|
12
|
+
|
13
|
+
});
|