@ui5/webcomponents-base 1.1.1 → 1.2.1
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/CHANGELOG.md +53 -0
- package/dist/Boot.js +3 -5
- package/dist/CustomElementsRegistry.js +1 -1
- package/dist/Device.js +4 -1
- package/dist/Keys.js +15 -0
- package/dist/Runtimes.js +0 -2
- package/dist/features/F6Navigation.js +3 -3
- package/dist/generated/VersionInfo.js +3 -3
- package/dist/resources/bundle.esm.js +8 -8
- package/dist/resources/bundle.esm.js.map +1 -1
- package/dist/util/InvisibleMessage.js +11 -9
- package/dist/util/TabbableElements.js +4 -0
- package/hash.txt +1 -1
- package/package.json +3 -3
- package/src/Boot.js +3 -5
- package/src/CustomElementsRegistry.js +1 -1
- package/src/Device.js +4 -1
- package/src/Keys.js +15 -0
- package/src/Runtimes.js +0 -2
- package/src/features/F6Navigation.js +3 -3
- package/src/util/InvisibleMessage.js +11 -9
- package/src/util/TabbableElements.js +4 -0
- package/dist/util/metaUrl.js +0 -3
- package/src/util/metaUrl.js +0 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,59 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [1.2.1](https://github.com/SAP/ui5-webcomponents/compare/v1.2.0...v1.2.1) (2022-03-02)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @ui5/webcomponents-base
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [1.2.0](https://github.com/SAP/ui5-webcomponents/compare/v1.1.2...v1.2.0) (2022-02-28)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* **ui5-input:** improve lazy loading behaviour ([#4763](https://github.com/SAP/ui5-webcomponents/issues/4763)) ([35342be](https://github.com/SAP/ui5-webcomponents/commit/35342be))
|
|
20
|
+
* **ui5-list:** initial focus target ([#4809](https://github.com/SAP/ui5-webcomponents/issues/4809)) ([cf6dd1a](https://github.com/SAP/ui5-webcomponents/commit/cf6dd1a))
|
|
21
|
+
* attached boot tasks always run ([#4777](https://github.com/SAP/ui5-webcomponents/issues/4777)) ([ad4608c](https://github.com/SAP/ui5-webcomponents/commit/ad4608c))
|
|
22
|
+
* **framework:** Tabbable elements error ([#4704](https://github.com/SAP/ui5-webcomponents/issues/4704)) ([650473f](https://github.com/SAP/ui5-webcomponents/commit/650473f))
|
|
23
|
+
* **ui5-badge:** update color-scheme parameters ([#4678](https://github.com/SAP/ui5-webcomponents/issues/4678)) ([c7d75ef](https://github.com/SAP/ui5-webcomponents/commit/c7d75ef)), closes [#3940](https://github.com/SAP/ui5-webcomponents/issues/3940)
|
|
24
|
+
* **ui5-label:** allow focusing elements linked with for attribute inside a shadow root ([#4754](https://github.com/SAP/ui5-webcomponents/issues/4754)) ([bd7a8a1](https://github.com/SAP/ui5-webcomponents/commit/bd7a8a1)), closes [#4751](https://github.com/SAP/ui5-webcomponents/issues/4751)
|
|
25
|
+
* **ui5-li-tree:** correct usage of i18nBudnle ([#4668](https://github.com/SAP/ui5-webcomponents/issues/4668)) ([67848d7](https://github.com/SAP/ui5-webcomponents/commit/67848d7))
|
|
26
|
+
* **ui5-select:** incorrect popover styles when value state is used ([#4651](https://github.com/SAP/ui5-webcomponents/issues/4651)) ([2d8ce46](https://github.com/SAP/ui5-webcomponents/commit/2d8ce46))
|
|
27
|
+
* **ui5-tabcontainer:** await for renderFinished in resize handler ([#4675](https://github.com/SAP/ui5-webcomponents/issues/4675)) ([cd8dc26](https://github.com/SAP/ui5-webcomponents/commit/cd8dc26)), closes [#4628](https://github.com/SAP/ui5-webcomponents/issues/4628)
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
### Features
|
|
31
|
+
|
|
32
|
+
* add and update icons from 4.13 and 5.01 icon fonts ([#4790](https://github.com/SAP/ui5-webcomponents/issues/4790)) ([a9e88f0](https://github.com/SAP/ui5-webcomponents/commit/a9e88f0))
|
|
33
|
+
* **ui5-input:** implement showClearIcon property ([#4641](https://github.com/SAP/ui5-webcomponents/issues/4641)) ([b1c1620](https://github.com/SAP/ui5-webcomponents/commit/b1c1620))
|
|
34
|
+
* **ui5-table:** extend keyboard handling ([#4550](https://github.com/SAP/ui5-webcomponents/issues/4550)) ([8daa764](https://github.com/SAP/ui5-webcomponents/commit/8daa764)), closes [#3090](https://github.com/SAP/ui5-webcomponents/issues/3090)
|
|
35
|
+
* **ui5-table:** improve keyboard handling ([#4631](https://github.com/SAP/ui5-webcomponents/issues/4631)) ([f1f2b1b](https://github.com/SAP/ui5-webcomponents/commit/f1f2b1b))
|
|
36
|
+
* **ui5-tree:** make `item-click` event preventable ([#4708](https://github.com/SAP/ui5-webcomponents/issues/4708)) ([29967f0](https://github.com/SAP/ui5-webcomponents/commit/29967f0)), closes [#4502](https://github.com/SAP/ui5-webcomponents/issues/4502)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## [1.1.2](https://github.com/SAP/ui5-webcomponents/compare/v1.1.1...v1.1.2) (2022-01-26)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
### Bug Fixes
|
|
46
|
+
|
|
47
|
+
* fix ipad recognition ([#4632](https://github.com/SAP/ui5-webcomponents/issues/4632)) ([c0cc73d](https://github.com/SAP/ui5-webcomponents/commit/c0cc73d))
|
|
48
|
+
* remove import.meta.url ([#4630](https://github.com/SAP/ui5-webcomponents/issues/4630)) ([604ce63](https://github.com/SAP/ui5-webcomponents/commit/604ce63))
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
### Features
|
|
52
|
+
|
|
53
|
+
* **ui5-multi-input:** Keyboard handling ([#4495](https://github.com/SAP/ui5-webcomponents/issues/4495)) ([b978f4a](https://github.com/SAP/ui5-webcomponents/commit/b978f4a))
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
6
59
|
## [1.1.1](https://github.com/SAP/ui5-webcomponents/compare/v1.1.0...v1.1.1) (2022-01-24)
|
|
7
60
|
|
|
8
61
|
**Note:** Version bump only for package @ui5/webcomponents-base
|
package/dist/Boot.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import EventProvider from "./EventProvider.js";
|
|
2
1
|
import whenDOMReady from "./util/whenDOMReady.js";
|
|
3
2
|
import insertFontFace from "./FontFace.js";
|
|
4
3
|
import insertSystemCSSVars from "./SystemCSSVars.js";
|
|
@@ -8,15 +7,15 @@ import { registerCurrentRuntime } from "./Runtimes.js";
|
|
|
8
7
|
import { getFeature } from "./FeaturesRegistry.js";
|
|
9
8
|
|
|
10
9
|
let bootPromise;
|
|
11
|
-
const eventProvider = new EventProvider();
|
|
12
10
|
|
|
13
11
|
/**
|
|
14
12
|
* Attach a callback that will be executed on boot
|
|
15
13
|
* @public
|
|
16
14
|
* @param listener
|
|
17
15
|
*/
|
|
18
|
-
const attachBoot = listener => {
|
|
19
|
-
|
|
16
|
+
const attachBoot = async listener => {
|
|
17
|
+
await boot();
|
|
18
|
+
listener();
|
|
20
19
|
};
|
|
21
20
|
|
|
22
21
|
const boot = async () => {
|
|
@@ -46,7 +45,6 @@ const boot = async () => {
|
|
|
46
45
|
OpenUI5Support && OpenUI5Support.attachListeners();
|
|
47
46
|
insertFontFace();
|
|
48
47
|
insertSystemCSSVars();
|
|
49
|
-
await eventProvider.fireEventAsync("boot");
|
|
50
48
|
|
|
51
49
|
resolve();
|
|
52
50
|
});
|
|
@@ -48,7 +48,7 @@ const displayFailedRegistrations = () => {
|
|
|
48
48
|
let message = `Multiple UI5 Web Components instances detected.`;
|
|
49
49
|
|
|
50
50
|
if (allRuntimes.length > 1) {
|
|
51
|
-
message = `${message}\nLoading order (versions before 1.1.0 not listed): ${allRuntimes.map(runtime => `\n${runtime.description}
|
|
51
|
+
message = `${message}\nLoading order (versions before 1.1.0 not listed): ${allRuntimes.map(runtime => `\n${runtime.description}`).join("")}`;
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
Object.keys(Failures).forEach(otherRuntimeIndex => {
|
package/dist/Device.js
CHANGED
|
@@ -8,7 +8,10 @@ const windows = navigator.platform.indexOf("Win") !== -1;
|
|
|
8
8
|
const iOS = navigator.platform.match(/iPhone|iPad|iPod/) || (navigator.userAgent.match(/Mac/) && "ontouchend" in document);
|
|
9
9
|
const android = !windows && /Android/.test(ua);
|
|
10
10
|
const androidPhone = android && /(?=android)(?=.*mobile)/i.test(ua);
|
|
11
|
-
const ipad = /ipad/i.test(ua);
|
|
11
|
+
const ipad = /ipad/i.test(ua) || (/Macintosh/i.test(ua) && "ontouchend" in document);
|
|
12
|
+
// With iOS 13 the string 'iPad' was removed from the user agent string through a browser setting, which is applied on all sites by default:
|
|
13
|
+
// "Request Desktop Website -> All websites" (for more infos see: https://forums.developer.apple.com/thread/119186).
|
|
14
|
+
// Therefore the OS is detected as MACINTOSH instead of iOS and the device is a tablet if the Device.support.touch is true.
|
|
12
15
|
|
|
13
16
|
let windowsVersion;
|
|
14
17
|
let webkitVersion;
|
package/dist/Keys.js
CHANGED
|
@@ -139,6 +139,10 @@ const isLeftShift = event => (event.key ? (event.key === "ArrowLeft" || event.ke
|
|
|
139
139
|
|
|
140
140
|
const isRightShift = event => (event.key ? (event.key === "ArrowRight" || event.key === "Right") : event.keyCode === KeyCodes.ARROW_RIGHT) && checkModifierKeys(event, false, false, true);
|
|
141
141
|
|
|
142
|
+
const isLeftShiftCtrl = event => (event.key ? (event.key === "ArrowLeft" || event.key === "Left") : event.keyCode === KeyCodes.ARROW_LEFT) && checkModifierKeys(event, true, false, true);
|
|
143
|
+
|
|
144
|
+
const isRightShiftCtrl = event => (event.key ? (event.key === "ArrowRight" || event.key === "Right") : event.keyCode === KeyCodes.ARROW_RIGHT) && checkModifierKeys(event, true, false, true);
|
|
145
|
+
|
|
142
146
|
const isUpShiftCtrl = event => (event.key ? (event.key === "ArrowUp" || event.key === "Up") : event.keyCode === KeyCodes.ARROW_UP) && checkModifierKeys(event, true, false, true);
|
|
143
147
|
|
|
144
148
|
const isDownShiftCtrl = event => (event.key ? (event.key === "ArrowDown" || event.key === "Down") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, true, false, true);
|
|
@@ -149,8 +153,12 @@ const isEnd = event => (event.key ? event.key === "End" : event.keyCode === KeyC
|
|
|
149
153
|
|
|
150
154
|
const isHomeCtrl = event => (event.key ? event.key === "Home" : event.keyCode === KeyCodes.HOME) && checkModifierKeys(event, true, false, false);
|
|
151
155
|
|
|
156
|
+
const isHomeShift = event => (event.key ? event.key === "Home" : event.keyCode === KeyCodes.HOME) && checkModifierKeys(event, false, false, true);
|
|
157
|
+
|
|
152
158
|
const isEndCtrl = event => (event.key ? event.key === "End" : event.keyCode === KeyCodes.END) && checkModifierKeys(event, true, false, false);
|
|
153
159
|
|
|
160
|
+
const isEndShift = event => (event.key ? event.key === "End" : event.keyCode === KeyCodes.END) && checkModifierKeys(event, false, false, true);
|
|
161
|
+
|
|
154
162
|
const isEscape = event => (event.key ? event.key === "Escape" || event.key === "Esc" : event.keyCode === KeyCodes.ESCAPE) && !hasModifierKeys(event);
|
|
155
163
|
|
|
156
164
|
const isTabNext = event => (event.key ? event.key === "Tab" : event.keyCode === KeyCodes.TAB) && !hasModifierKeys(event);
|
|
@@ -209,6 +217,8 @@ const isShowByArrows = event => {
|
|
|
209
217
|
|
|
210
218
|
const isShift = event => event.key === "Shift" || event.keyCode === KeyCodes.SHIFT;
|
|
211
219
|
|
|
220
|
+
const isCtrlA = event => ((event.key === "A" || event.key === "a") || event.which === KeyCodes.A) && checkModifierKeys(event, true, false, false);
|
|
221
|
+
|
|
212
222
|
const hasModifierKeys = event => event.shiftKey || event.altKey || getCtrlKey(event);
|
|
213
223
|
|
|
214
224
|
const getCtrlKey = event => !!(event.metaKey || event.ctrlKey); // double negation doesn't have effect on boolean but ensures null and undefined are equivalent to false.
|
|
@@ -234,6 +244,8 @@ export {
|
|
|
234
244
|
isDownAlt,
|
|
235
245
|
isLeftShift,
|
|
236
246
|
isRightShift,
|
|
247
|
+
isLeftShiftCtrl,
|
|
248
|
+
isRightShiftCtrl,
|
|
237
249
|
isUpShiftCtrl,
|
|
238
250
|
isDownShiftCtrl,
|
|
239
251
|
isHome,
|
|
@@ -242,6 +254,8 @@ export {
|
|
|
242
254
|
isMinus,
|
|
243
255
|
isHomeCtrl,
|
|
244
256
|
isEndCtrl,
|
|
257
|
+
isHomeShift,
|
|
258
|
+
isEndShift,
|
|
245
259
|
isEscape,
|
|
246
260
|
isTabNext,
|
|
247
261
|
isTabPrevious,
|
|
@@ -262,4 +276,5 @@ export {
|
|
|
262
276
|
isPageUpShiftCtrl,
|
|
263
277
|
isPageDownShiftCtrl,
|
|
264
278
|
isShift,
|
|
279
|
+
isCtrlA,
|
|
265
280
|
};
|
package/dist/Runtimes.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import VersionInfo from "./generated/VersionInfo.js";
|
|
2
2
|
import getSharedResource from "./getSharedResource.js";
|
|
3
|
-
import metaUrl from "./util/metaUrl.js"; // eslint-disable-line
|
|
4
3
|
|
|
5
4
|
let currentRuntimeIndex;
|
|
6
5
|
let currentRuntimeAlias = "";
|
|
@@ -22,7 +21,6 @@ const registerCurrentRuntime = () => {
|
|
|
22
21
|
currentRuntimeIndex = Runtimes.length;
|
|
23
22
|
Runtimes.push({
|
|
24
23
|
...VersionInfo,
|
|
25
|
-
url: metaUrl,
|
|
26
24
|
alias: currentRuntimeAlias,
|
|
27
25
|
description: `Runtime ${currentRuntimeIndex} - ver ${VersionInfo.version}${currentRuntimeAlias ? ` (${currentRuntimeAlias})` : ""}`,
|
|
28
26
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { registerFeature } from "
|
|
2
|
-
import { isF6Next, isF6Previous } from "
|
|
3
|
-
import { getFirstFocusableElement } from "
|
|
1
|
+
import { registerFeature } from "../FeaturesRegistry.js";
|
|
2
|
+
import { isF6Next, isF6Previous } from "../Keys.js";
|
|
3
|
+
import { getFirstFocusableElement } from "../util/FocusableElements.js";
|
|
4
4
|
|
|
5
5
|
class F6Navigation {
|
|
6
6
|
init() {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
const t={default:"en",all:["ar","ar_EG","ar_SA","bg","ca","cs","da","de","de_AT","de_CH","el","el_CY","en","en_AU","en_GB","en_HK","en_IE","en_IN","en_NZ","en_PG","en_SG","en_ZA","es","es_AR","es_BO","es_CL","es_CO","es_MX","es_PE","es_UY","es_VE","et","fa","fi","fr","fr_BE","fr_CA","fr_CH","fr_LU","he","hi","hr","hu","id","it","it_CH","ja","kk","ko","lt","lv","ms","nb","nl","nl_BE","pl","pt","pt_PT","ro","ru","ru_UA","sk","sl","sr","sv","th","tr","uk","vi","zh_CN","zh_HK","zh_SG","zh_TW"]},e={default:"sap_fiori_3",all:["sap_fiori_3","sap_fiori_3_dark","sap_belize","sap_belize_hcb","sap_belize_hcw","sap_fiori_3_hcb","sap_fiori_3_hcw","sap_horizon","sap_horizon_exp"]}.default,s={default:"en",all:["ar","bg","ca","cs","cy","da","de","el","en","en_GB","en_US_sappsd","en_US_saprigi","en_US_saptrc","es","es_MX","et","fi","fr","fr_CA","hi","hr","hu","in","it","iw","ja","kk","ko","lt","lv","ms","nl","no","pl","pt_PT","pt","ro","ru","sh","sk","sl","sv","th","tr","uk","vi","zh_CN","zh_TW"]}.default,n=t.default,i=t.all;var a=()=>{const t=navigator.languages;return t&&t[0]||navigator.language||navigator.userLanguage||navigator.browserLanguage||s},r={},o=r.hasOwnProperty,l=r.toString,c=o.toString,d=c.call(Object),h=function(t){var e,s;return!(!t||"[object Object]"!==l.call(t))&&(!(e=Object.getPrototypeOf(t))||"function"==typeof(s=o.call(e,"constructor")&&e.constructor)&&c.call(s)===d)},u=Object.create(null),p=function(){var t,e,s,n,i,a,r=arguments[2]||{},o=3,l=arguments.length,c=arguments[0]||!1,d=arguments[1]?void 0:u;for("object"!=typeof r&&"function"!=typeof r&&(r={});o<l;o++)if(null!=(i=arguments[o]))for(n in i)t=r[n],s=i[n],"__proto__"!==n&&r!==s&&(c&&s&&(h(s)||(e=Array.isArray(s)))?(e?(e=!1,a=t&&Array.isArray(t)?t:[]):a=t&&h(t)?t:{},r[n]=p(c,arguments[1],a,s)):s!==d&&(r[n]=s));return r},g=function(){var t=[!0,!1];return t.push.apply(t,arguments),p.apply(null,t)};const f=new Map,m=t=>f.get(t);let y=!1,_={animationMode:"full",theme:e,rtl:null,language:null,calendarType:null,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1};const v=new Map;v.set("true",!0),v.set("false",!1);const w=(t,e,s)=>{const n=e.toLowerCase(),i=t.split(`${s}-`)[1];v.has(e)&&(e=v.get(n)),e=((t,e)=>"theme"===t&&e.includes("@")?e.split("@")[0]:e)(i,e),_[i]=e},A=()=>{y||((()=>{const t=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let e;if(t){try{e=JSON.parse(t.innerHTML)}catch(t){console.warn("Incorrect data-sap-ui-config format. Please use JSON")}e&&(_=g(_,e))}})(),(()=>{const t=new URLSearchParams(window.location.search);t.forEach(((t,e)=>{const s=e.split("sap-").length;0!==s&&s!==e.split("sap-ui-").length&&w(e,t,"sap")})),t.forEach(((t,e)=>{e.startsWith("sap-ui")&&w(e,t,"sap-ui")}))})(),(()=>{const t=m("OpenUI5Support");if(!t||!t.isLoaded())return;const e=t.getConfigurationSettingsObject();_=g(_,e)})(),y=!0)};class b{constructor(){this._eventRegistry=new Map}attachEvent(t,e){const s=this._eventRegistry,n=s.get(t);Array.isArray(n)?n.includes(e)||n.push(e):s.set(t,[e])}detachEvent(t,e){const s=this._eventRegistry,n=s.get(t);if(!n)return;const i=n.indexOf(e);-1!==i&&n.splice(i,1),0===n.length&&s.delete(t)}fireEvent(t,e){const s=this._eventRegistry.get(t);return s?s.map((t=>t.call(this,e))):[]}fireEventAsync(t,e){return Promise.all(this.fireEvent(t,e))}isHandlerAttached(t,e){const s=this._eventRegistry.get(t);return!!s&&s.includes(e)}hasListeners(t){return!!this._eventRegistry.get(t)}}const $=new b,S=t=>{$.attachEvent("languageChange",t)};const C=t=>{const e=[];return t.forEach((t=>{e.push(t)})),e},E=(t,e=document.body)=>{let s=document.querySelector(t);return s||(s=document.createElement(t),e.insertBefore(s,e.firstChild))},M=(t,e)=>{const s=t.split(".");let n=E("ui5-shared-resources",document.head);for(let t=0;t<s.length;t++){const i=s[t],a=t===s.length-1;Object.prototype.hasOwnProperty.call(n,i)||(n[i]=a?e:{}),n=n[i]}return n},O={version:"1.1.1",major:1,minor:1,patch:1,suffix:"",isNext:!1,buildTime:1643036556},x=import.meta.url;let T;const P=new Map,I=M("Runtimes",[]),L=()=>T,N=M("Tags",new Map),k=new Set;let D,R={};const j=t=>{k.add(t),N.set(t,L())},U=()=>{const t=I,e=L(),s=t[e];let n="Multiple UI5 Web Components instances detected.";t.length>1&&(n=`${n}\nLoading order (versions before 1.1.0 not listed): ${t.map((t=>`\n${t.description} ${t.url}`)).join("")}`),Object.keys(R).forEach((i=>{let a,r,o;"unknown"===i?(a=1,r={description:"Older unknown runtime"}):(a=((t,e)=>{const s=`${t},${e}`;if(P.has(s))return P.get(s);const n=I[t],i=I[e];if(!n||!i)throw new Error("Invalid runtime index supplied");if(n.isNext||i.isNext)return n.buildTime-i.buildTime;const a=n.major-i.major;if(a)return a;const r=n.minor-i.minor;if(r)return r;const o=n.patch-i.patch;if(o)return o;const l=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}).compare(n.suffix,i.suffix);return P.set(s,l),l})(e,i),r=t[i]),o=a>0?"an older":a<0?"a newer":"the same",n=`${n}\n\n"${s.description}" failed to define ${R[i].size} tag(s) as they were defined by a runtime of ${o} version "${r.description}": ${C(R[i]).sort().join(", ")}.`,n=a>0?`${n}\nWARNING! If your code uses features of the above web components, unavailable in ${r.description}, it might not work as expected!`:`${n}\nSince the above web components were defined by the same or newer version runtime, they should be compatible with your code.`})),n=`${n}\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.`,console.warn(n)},H=new Set,B=new Set,V=new b,z=new class{constructor(){this.list=[],this.lookup=new Set}add(t){this.lookup.has(t)||(this.list.push(t),this.lookup.add(t))}remove(t){this.lookup.has(t)&&(this.list=this.list.filter((e=>e!==t)),this.lookup.delete(t))}shift(){const t=this.list.shift();if(t)return this.lookup.delete(t),t}isEmpty(){return 0===this.list.length}isAdded(t){return this.lookup.has(t)}process(t){let e;const s=new Map;for(e=this.shift();e;){const n=s.get(e)||0;if(n>10)throw new Error("Web component processed too many times this task, max allowed is: 10");t(e),s.set(e,n+1),e=this.shift()}}};let Z,F,W,q;const G=async t=>{z.add(t),await K()},J=t=>{V.fireEvent("beforeComponentRender",t),B.add(t),t._render()},K=async()=>{q||(q=new Promise((t=>{window.requestAnimationFrame((()=>{z.process(J),q=null,t(),W||(W=setTimeout((()=>{W=void 0,z.isEmpty()&&Q()}),200))}))}))),await q},Y=()=>{const t=C(k).map((t=>customElements.whenDefined(t)));return Promise.all(t)},X=async()=>{await Y(),await(Z||(Z=new Promise((t=>{F=t,window.requestAnimationFrame((()=>{z.isEmpty()&&(Z=void 0,t())}))})),Z))},Q=()=>{z.isEmpty()&&F&&(F(),F=void 0,Z=void 0)},tt=async t=>{B.forEach((e=>{const s=e.constructor.getMetadata().getTag(),n=(i=e.constructor,H.has(i));var i;const a=e.constructor.getMetadata().isLanguageAware(),r=e.constructor.getMetadata().isThemeAware();(!t||t.tag===s||t.rtlAware&&n||t.languageAware&&a||t.themeAware&&r)&&G(e)})),await X()};let et,st;const nt=()=>(void 0===et&&(A(),et=_.language),et),it=()=>{var t;return void 0===st&&(A(),t=_.fetchDefaultLanguage,st=t),st},at=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;class rt{constructor(t){const e=at.exec(t.replace(/_/g,"-"));if(null===e)throw new Error(`The given language ${t} does not adhere to BCP-47.`);this.sLocaleId=t,this.sLanguage=e[1]||null,this.sScript=e[2]||null,this.sRegion=e[3]||null,this.sVariant=e[4]&&e[4].slice(1)||null,this.sExtension=e[5]&&e[5].slice(1)||null,this.sPrivateUse=e[6]||null,this.sLanguage&&(this.sLanguage=this.sLanguage.toLowerCase()),this.sScript&&(this.sScript=this.sScript.toLowerCase().replace(/^[a-z]/,(t=>t.toUpperCase()))),this.sRegion&&(this.sRegion=this.sRegion.toUpperCase())}getLanguage(){return this.sLanguage}getScript(){return this.sScript}getRegion(){return this.sRegion}getVariant(){return this.sVariant}getVariantSubtags(){return this.sVariant?this.sVariant.split("-"):[]}getExtension(){return this.sExtension}getExtensionSubtags(){return this.sExtension?this.sExtension.slice(2).split("-"):[]}getPrivateUse(){return this.sPrivateUse}getPrivateUseSubtags(){return this.sPrivateUse?this.sPrivateUse.slice(2).split("-"):[]}hasPrivateUseSubtag(t){return this.getPrivateUseSubtags().indexOf(t)>=0}toString(){const t=[this.sLanguage];return this.sScript&&t.push(this.sScript),this.sRegion&&t.push(this.sRegion),this.sVariant&&t.push(this.sVariant),this.sExtension&&t.push(this.sExtension),this.sPrivateUse&&t.push(this.sPrivateUse),t.join("-")}}const ot=new Map,lt=t=>(ot.has(t)||ot.set(t,new rt(t)),ot.get(t)),ct=t=>{try{if(t&&"string"==typeof t)return lt(t)}catch(t){}},dt=t=>t?ct(t):nt()?lt(nt()):ct(a()),ht=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i,ut=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,pt={he:"iw",yi:"ji",id:"in",sr:"sh"},gt=t=>{if(!t)return n;if("zh_HK"===t)return"zh_TW";const e=t.lastIndexOf("_");return e>=0?t.slice(0,e):t!==n?n:""},ft=new Set,mt=new Set,yt=new Map,_t=new Map,vt=new Map,wt=(t,e)=>{yt.set(t,e)},At=(t,e)=>{const s=`${t}/${e}`;return vt.has(s)},bt=async t=>{const e=dt().getLanguage(),i=dt().getRegion();let a=(t=>{let e;if(!t)return n;if("string"==typeof t&&(e=ht.exec(t.replace(/_/g,"-")))){let t=e[1].toLowerCase(),s=e[3]?e[3].toUpperCase():void 0;const n=e[2]?e[2].toLowerCase():void 0,i=e[4]?e[4].slice(1):void 0,a=e[6];return t=pt[t]||t,a&&(e=ut.exec(a))||i&&(e=ut.exec(i))?`en_US_${e[1].toLowerCase()}`:("zh"!==t||s||("hans"===n?s="CN":"hant"===n&&(s="TW")),t+(s?"_"+s+(i?"_"+i.replace("-","_"):""):""))}})(e+(i?`-${i}`:""));for(;a!==s&&!At(t,a);)a=gt(a);const r=it();if(a!==s||r)if(At(t,a))try{const e=await((t,e)=>{const s=`${t}/${e}`,n=vt.get(s);return _t.get(s)||_t.set(s,n(e)),_t.get(s)})(t,a);wt(t,e)}catch(t){mt.has(t.message)||(mt.add(t.message),console.error(t.message))}else(t=>{ft.has(t)||(console.warn(`[${t}]: Message bundle assets are not configured. Falling back to English texts.`,` Add \`import "${t}/dist/Assets.js"\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section "Assets" in the documentation for more information.`),ft.add(t))})(t);else wt(t,null)};S((()=>{const t=[...yt.keys()];return Promise.all(t.map(bt))}));const $t=new Map,St=new Map,Ct=new Map,Et=new Set;let Mt=!1;const Ot={iw:"he",ji:"yi",in:"id",sh:"sr"},xt=t=>{Mt||(console.warn(`[LocaleData] Supported locale "${t}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),Mt=!0)},Tt=(t,e)=>{$t.set(t,e)},Pt=async(t,e,s)=>{const a=((t,e,s)=>{"no"===(t=t&&Ot[t]||t)&&(t="nb"),"zh"!==t||e||("Hans"===s?e="CN":"Hant"===s&&(e="TW"));let a=`${t}_${e}`;return i.includes(a)?St.has(a)?a:(xt(a),n):(a=t,i.includes(a)?St.has(a)?a:(xt(a),n):n)})(t,e,s),r=m("OpenUI5Support");if(r){const t=r.getLocaleDataObject();if(t)return void Tt(a,t)}try{const t=await(t=>{const e=St.get(t);return Ct.get(t)||Ct.set(t,e(t)),Ct.get(t)})(a);Tt(a,t)}catch(t){Et.has(t.message)||(Et.add(t.message),console.error(t.message))}};var It,Lt;It="en",Lt=async t=>(await fetch("https://ui5.sap.com/1.60.2/resources/sap/ui/core/cldr/en.json")).json(),St.set(It,Lt),S((()=>{const t=dt();return Pt(t.getLanguage(),t.getRegion(),t.getScript())}));const Nt=new Map,kt=new Map,Dt=new Set,Rt=new Set,jt=(t,e,s)=>{kt.set(`${t}/${e}`,s),Dt.add(t),Rt.add(e)},Ut=async(t,s)=>{const n=Nt.get(`${t}_${s}`);if(void 0!==n)return n;if(!Rt.has(s)){const s=[...Rt.values()].join(", ");return console.warn(`You have requested a non-registered theme - falling back to ${e}. Registered themes are: ${s}`),Nt.get(`${t}_${e}`)}const i=kt.get(`${t}/${s}`);if(!i)return void console.error(`Theme [${s}] not registered for package [${t}]`);let a;try{a=await i(s)}catch(e){return void console.error(t,e.message)}const r=a._||a;return Nt.set(`${t}_${s}`,r),r},Ht=()=>Dt,Bt={"SAP-icons-TNT":"tnt",BusinessSuiteInAppSymbols:"business-suite",horizon:"SAP-icons-v5"},Vt=(t,e)=>e?`${t}|${e}`:t,zt=(t,e,s="")=>{const n="string"==typeof t?t:t.content;if(document.adoptedStyleSheets){const t=new CSSStyleSheet;t.replaceSync(n),t._ui5StyleId=Vt(e,s),document.adoptedStyleSheets=[...document.adoptedStyleSheets,t]}else{const t={};t[e]=s,((t,e={})=>{const s=document.createElement("style");s.type="text/css",Object.entries(e).forEach((t=>s.setAttribute(...t))),s.textContent=t,document.head.appendChild(s)})(n,t)}},Zt=(t,e="")=>document.adoptedStyleSheets?!!document.adoptedStyleSheets.find((s=>s._ui5StyleId===Vt(t,e))):!!document.querySelector(`head>style[${t}="${e}"]`),Ft=(t,e,s="")=>{Zt(e,s)?((t,e,s="")=>{const n="string"==typeof t?t:t.content;document.adoptedStyleSheets?document.adoptedStyleSheets.find((t=>t._ui5StyleId===Vt(e,s))).replaceSync(n||""):document.querySelector(`head>style[${e}="${s}"]`).textContent=n||""})(t,e,s):zt(t,e,s)},Wt=new Set,qt=()=>{const t=(()=>{let t=document.querySelector(".sapThemeMetaData-Base-baseLib")||document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");if(t)return getComputedStyle(t).backgroundImage;t=document.createElement("span"),t.style.display="none",t.classList.add("sapThemeMetaData-Base-baseLib"),document.body.appendChild(t);let e=getComputedStyle(t).backgroundImage;return"none"===e&&(t.classList.add("sapThemeMetaData-UI5-sap-ui-core"),e=getComputedStyle(t).backgroundImage),document.body.removeChild(t),e})();if(!t||"none"===t)return;const e=(t=>{const e=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(t);if(e&&e.length>=2){let t=e[1];if(t=t.replace(/\\"/g,'"'),"{"!==t.charAt(0)&&"}"!==t.charAt(t.length-1))try{t=decodeURIComponent(t)}catch(t){return void(Wt.has("decode")||(console.warn("Malformed theme metadata string, unable to decodeURIComponent"),Wt.add("decode")))}try{return JSON.parse(t)}catch(t){Wt.has("parse")||(console.warn("Malformed theme metadata string, unable to parse JSON"),Wt.add("parse"))}}})(t);return(t=>{let e,s;try{e=t.Path.match(/\.([^.]+)\.css_variables$/)[1],s=t.Extends[0]}catch(e){return void(Wt.has("object")||(console.warn("Malformed theme metadata Object",t),Wt.add("object")))}return{themeName:e,baseThemeName:s}})(e)},Gt=new b,Jt="@ui5/webcomponents-theming",Kt=async t=>{if(!Ht().has(Jt))return;const e=await Ut(Jt,t);e&&Ft(e,"data-ui5-theme-properties",Jt)},Yt=()=>{((t,e="")=>{if(document.adoptedStyleSheets)document.adoptedStyleSheets=document.adoptedStyleSheets.filter((s=>s._ui5StyleId!==Vt(t,e)));else{const s=document.querySelector(`head > style[${t}="${e}"]`);s&&s.parentElement.removeChild(s)}})("data-ui5-theme-properties",Jt)},Xt=async t=>{const e=(()=>{const t=qt();if(t)return t;const e=m("OpenUI5Support");if(e&&e.cssVariablesLoaded())return{themeName:e.getConfigurationSettingsObject().theme}})();e&&t===e.themeName?Yt():await Kt(t);const s=(t=>Rt.has(t))(t)?t:e&&e.baseThemeName;await(async t=>{Ht().forEach((async e=>{if(e===Jt)return;const s=await Ut(e,t);s&&Ft(s,"data-ui5-theme-properties",e)}))})(s),(t=>{Gt.fireEvent("themeLoaded",t)})(t)};let Qt;const te=()=>(void 0===Qt&&(A(),Qt=_.theme),Qt),ee=async t=>{Qt!==t&&(Qt=t,await Xt(Qt),await tt({themeAware:!0}))},se=new Map,ne=M("SVGIcons.registry",new Map),ie=M("SVGIcons.promises",new Map),ae=(t,{pathData:e,ltr:s,accData:n,collection:i,packageName:a}={})=>{i||(i=oe());const r=`${i}/${t}`;ne.set(r,{pathData:e,ltr:s,accData:n,packageName:a})},re=async t=>{const{collection:e,registryKey:s}=(t=>{let e;return t.startsWith("sap-icon://")&&(t=t.replace("sap-icon://","")),[t,e]=t.split("/").reverse(),e=e||oe(),e=le(e),{name:t=t.replace("icon-",""),collection:e,registryKey:`${e}/${t}`}})(t);let n="ICON_NOT_FOUND";try{n=await(async t=>{if(!ie.has(t)){if(!se.has(t))throw new Error(`No loader registered for the ${t} icons collection. Probably you forgot to import the "AllIcons.js" module for the respective package.`);const e=se.get(t);ie.set(t,e(t))}return ie.get(t)})(e)}catch(t){console.error(t.message)}return"ICON_NOT_FOUND"===n?n:(ne.has(s)||(t=>{Object.keys(t.data).forEach((e=>{const s=t.data[e];ae(e,{pathData:s.path,ltr:s.ltr,accData:s.acc,collection:t.collection,packageName:t.packageName})}))})(n),ne.get(s))},oe=()=>(t=>{const e=te();return e===t||e===`${t}_exp`})("sap_horizon")?"SAP-icons-v5":"SAP-icons",le=t=>Bt[t]?Bt[t]:t,ce=M("PopupUtilsData",{});ce.currentZIndex=ce.currentZIndex||100;const de=()=>ce.currentZIndex,he=()=>{const t=window.sap;return t&&t.ui&&"function"==typeof t.ui.getCore&&t.ui.getCore()};var ue,pe;ue="OpenUI5Support",pe={isLoaded:()=>!!he(),init:()=>{const t=he();return t?new Promise((e=>{t.attachInit((()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],((t,s)=>{s.setInitialZIndex(de()),e()}))}))})):Promise.resolve()},getConfigurationSettingsObject:()=>{const t=he();if(!t)return;const e=t.getConfiguration(),s=window.sap.ui.require("sap/ui/core/LocaleData");return{animationMode:e.getAnimationMode(),language:e.getLanguage(),theme:e.getTheme(),rtl:e.getRTL(),calendarType:e.getCalendarType(),formatSettings:{firstDayOfWeek:s?s.getInstance(e.getLocale()).getFirstDayOfWeek():void 0}}},getLocaleDataObject:()=>{const t=he();if(!t)return;const e=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(e.getLocale())._get()},attachListeners:()=>{he()&&(()=>{const t=he(),e=t.getConfiguration();t.attachThemeChanged((async()=>{await ee(e.getTheme())}))})()},cssVariablesLoaded:()=>{if(!he())return;const t=[...document.head.children].find((t=>"sap-ui-theme-sap.ui.core"===t.id));return t?!!t.href.match(/\/css(-|_)variables\.css/):void 0},getNextZIndex:()=>{if(!he())return;return window.sap.ui.require("sap/ui/core/Popup").getNextZIndex()},setInitialZIndex:()=>{if(!he())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex(de())}},f.set(ue,pe);var ge={packageName:"@ui5/webcomponents-base",fileName:"FontFace.css",content:'@font-face{font-family:"72";font-style:normal;font-weight:400;src:local("72"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72full";font-style:normal;font-weight:400;src:local(\'72-full\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72";font-style:normal;font-weight:700;src:local(\'72-Bold\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72full";font-style:normal;font-weight:700;src:local(\'72-Bold-full\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72Black";font-style:bold;font-weight:900;src:local(\'72Black\'),url(https://openui5nightly.hana.ondemand.com/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2"),url(https://openui5nightly.hana.ondemand.com/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff?ui5-webcomponents) format("woff")}'},fe={packageName:"@ui5/webcomponents-base",fileName:"OverrideFontFace.css",content:"@font-face{font-family:'72override';unicode-range:U+0102-0103,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EB7,U+1EB8-1EC7,U+1EC8-1ECB,U+1ECC-1EE3,U+1EE4-1EF1,U+1EF4-1EF7;src:local('Arial'),local('Helvetica'),local('sans-serif')}"};const me=()=>{Zt("data-ui5-font-face")||zt(ge,"data-ui5-font-face")},ye=()=>{Zt("data-ui5-font-face-override")||zt(fe,"data-ui5-font-face-override")};var _e={packageName:"@ui5/webcomponents-base",fileName:"SystemCSSVars.css",content:":root{--_ui5_content_density:cozy}.sapUiSizeCompact,.ui5-content-density-compact,[data-ui5-compact-size]{--_ui5_content_density:compact}[dir=rtl]{--_ui5_dir:rtl}[dir=ltr]{--_ui5_dir:ltr}"};let ve;const we=new b,Ae=async()=>ve||(ve=new Promise((async t=>{void 0===T&&(T=I.length,I.push({...O,url:x,alias:"",description:`Runtime ${T} - ver ${O.version}`}));const e=m("OpenUI5Support"),s=m("F6Navigation");e?await e.init():s&&s.init(),await new Promise((t=>{document.body?t():document.addEventListener("DOMContentLoaded",(()=>{t()}))})),await Xt(te()),e&&e.attachListeners(),(()=>{const t=m("OpenUI5Support");t&&t.isLoaded()||me(),ye()})(),Zt("data-ui5-system-css-vars")||zt(_e,"data-ui5-system-css-vars"),await we.fireEventAsync("boot"),t()})),ve);class be{static isValid(t){}static attributeToProperty(t){return t}static propertyToAttribute(t){return`${t}`}static valuesAreEqual(t,e){return t===e}static generateTypeAccessors(t){Object.keys(t).forEach((e=>{Object.defineProperty(this,e,{get:()=>t[e]})}))}}const $e=(t,e,s=!1)=>{if("function"!=typeof t||"function"!=typeof e)return!1;if(s&&t===e)return!0;let n=t;do{n=Object.getPrototypeOf(n)}while(null!==n&&n!==e);return n===e},Se=new Map,Ce=new Map,Ee=t=>{if(!Se.has(t)){const e=Oe(t.split("-"));Se.set(t,e)}return Se.get(t)},Me=t=>{if(!Ce.has(t)){const e=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();Ce.set(t,e)}return Ce.get(t)},Oe=t=>t.map(((t,e)=>0===e?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase())).join(""),xe=t=>t&&t instanceof HTMLElement&&"slot"===t.localName,Te=t=>xe(t)?t.assignedNodes({flatten:!0}).filter((t=>t instanceof HTMLElement)):[t];let Pe={include:[/^ui5-/],exclude:[]};const Ie=new Map,Le=t=>{if(!Ie.has(t)){const e=Pe.include.some((e=>t.match(e)))&&!Pe.exclude.some((e=>t.match(e)));Ie.set(t,e)}return Ie.get(t)},Ne=t=>{Le(t)};class ke{constructor(t){this.metadata=t}getInitialState(){if(Object.prototype.hasOwnProperty.call(this,"_initialState"))return this._initialState;const t={},e=this.slotsAreManaged(),s=this.getProperties();for(const e in s){const n=s[e].type,i=s[e].defaultValue;n===Boolean?(t[e]=!1,void 0!==i&&console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default")):s[e].multiple?t[e]=[]:t[e]=n===Object?"defaultValue"in s[e]?s[e].defaultValue:{}:n===String?"defaultValue"in s[e]?s[e].defaultValue:"":i}if(e){const e=this.getSlots();for(const[s,n]of Object.entries(e)){t[n.propertyName||s]=[]}}return this._initialState=t,t}static validatePropertyValue(t,e){return e.multiple?t.map((t=>De(t,e))):De(t,e)}static validateSlotValue(t,e){return Re(t,e)}getPureTag(){return this.metadata.tag}getTag(){const t=this.metadata.tag,e=Ne(t);return e?`${t}-${e}`:t}getAltTag(){const t=this.metadata.altTag;if(!t)return;const e=Ne(t);return e?`${t}-${e}`:t}hasAttribute(t){const e=this.getProperties()[t];return e.type!==Object&&!e.noAttribute&&!e.multiple}getPropertiesList(){return Object.keys(this.getProperties())}getAttributesList(){return this.getPropertiesList().filter(this.hasAttribute,this).map(Me)}getSlots(){return this.metadata.slots||{}}canSlotText(){const t=this.getSlots().default;return t&&t.type===Node}hasSlots(){return!!Object.entries(this.getSlots()).length}hasIndividualSlots(){return this.slotsAreManaged()&&Object.entries(this.getSlots()).some((([t,e])=>e.individualSlots))}slotsAreManaged(){return!!this.metadata.managedSlots}supportsF6FastNavigation(){return!!this.metadata.fastNavigation}getProperties(){return this.metadata.properties||{}}getEvents(){return this.metadata.events||{}}isLanguageAware(){return!!this.metadata.languageAware}isThemeAware(){return!!this.metadata.themeAware}shouldInvalidateOnChildChange(t,e,s){const n=this.getSlots()[t].invalidateOnChildChange;if(void 0===n)return!1;if("boolean"==typeof n)return n;if("object"==typeof n){if("property"===e){if(void 0===n.properties)return!1;if("boolean"==typeof n.properties)return n.properties;if(Array.isArray(n.properties))return n.properties.includes(s);throw new Error("Wrong format for invalidateOnChildChange.properties: boolean or array is expected")}if("slot"===e){if(void 0===n.slots)return!1;if("boolean"==typeof n.slots)return n.slots;if(Array.isArray(n.slots))return n.slots.includes(s);throw new Error("Wrong format for invalidateOnChildChange.slots: boolean or array is expected")}}throw new Error("Wrong format for invalidateOnChildChange: boolean or object is expected")}}const De=(t,e)=>{const s=e.type;return s===Boolean?"boolean"==typeof t&&t:s===String?"string"==typeof t||null==t?t:t.toString():s===Object?"object"==typeof t?t:e.defaultValue:$e(s,be)?s.isValid(t)?t:e.defaultValue:void 0},Re=(t,e)=>(t&&Te(t).forEach((t=>{if(!(t instanceof e.type))throw new Error(`${t} is not of type ${e.type}`)})),t);customElements.get("ui5-static-area")||customElements.define("ui5-static-area",class extends HTMLElement{});const je=M("CustomStyle.eventProvider",new b),Ue=t=>{je.attachEvent("CustomCSSChange",t)},He=M("CustomStyle.customCSSFor",{});Ue((t=>{tt({tag:t})}));const Be=t=>Array.isArray(t)?Ve(t.filter((t=>!!t))).map((t=>"string"==typeof t?t:t.content)).join(" "):"string"==typeof t?t:t.content,Ve=t=>t.reduce(((t,e)=>t.concat(Array.isArray(e)?Ve(e):e)),[]),ze=new Map;Ue((t=>{ze.delete(`${t}_normal`)}));const Ze=(t,e=!1)=>{const s=t.getMetadata().getTag(),n=`${s}_${e?"static":"normal"}`;if(!ze.has(n)){let i;if(e)i=Be(t.staticAreaStyles);else{const e=(t=>He[t]?He[t].join(""):"")(s)||"";i=`${Be(t.styles)} ${e}`}ze.set(n,i)}return ze.get(n)},Fe=new Map;Ue((t=>{Fe.delete(`${t}_normal`)}));const We=(t,e=!1)=>{let s;const n=e?"staticAreaTemplate":"template",i=e?t.staticAreaItem.shadowRoot:t.shadowRoot,a=((t,e)=>{const s=e.constructor.getUniqueDependencies().map((t=>t.getMetadata().getPureTag())).filter(Le);return t(e,s,void 0)})(t.constructor[n],t);document.adoptedStyleSheets?i.adoptedStyleSheets=((t,e=!1)=>{const s=`${t.getMetadata().getTag()}_${e?"static":"normal"}`;if(!Fe.has(s)){const n=Ze(t,e),i=new CSSStyleSheet;i.replaceSync(n),Fe.set(s,[i])}return Fe.get(s)})(t.constructor,e):window.ShadyDOM||(s=Ze(t.constructor,e)),t.constructor.render(a,i,s,{host:t})};const qe={iw:"he",ji:"yi",in:"id",sh:"sr"},Ge=(t=>{const e=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(t);return e&&e[2]?e[2].split(/,/):null})("$cldr-rtl-locales:ar,fa,he$")||[],Je=()=>{const t=(A(),_.rtl);return null!==t?!!t:(t=>(t=t&&qe[t]||t,Ge.indexOf(t)>=0))(nt()||a())},Ke=t=>{const e=window.document,s=["ltr","rtl"],n=getComputedStyle(t).getPropertyValue("--_ui5_dir");return s.includes(n)?n:s.includes(t.dir)?t.dir:s.includes(e.documentElement.dir)?e.documentElement.dir:s.includes(e.body.dir)?e.body.dir:Je()?"rtl":void 0};class Ye extends HTMLElement{constructor(){super(),this._rendered=!1,this.attachShadow({mode:"open"})}setOwnerElement(t){this.ownerElement=t,this.classList.add(this.ownerElement._id),this.ownerElement.hasAttribute("data-ui5-static-stable")&&this.setAttribute("data-ui5-stable",this.ownerElement.getAttribute("data-ui5-static-stable"))}update(){this._rendered&&(this._updateContentDensity(),this._updateDirection(),We(this.ownerElement,!0))}_updateContentDensity(){var t;"compact"===(t=this.ownerElement,getComputedStyle(t).getPropertyValue("--_ui5_content_density"))?(this.classList.add("sapUiSizeCompact"),this.classList.add("ui5-content-density-compact")):(this.classList.remove("sapUiSizeCompact"),this.classList.remove("ui5-content-density-compact"))}_updateDirection(){const t=Ke(this.ownerElement);t?this.setAttribute("dir",t):this.removeAttribute("dir")}async getDomRef(){return this._updateContentDensity(),this._rendered||(this._rendered=!0,We(this.ownerElement,!0)),await X(),this.shadowRoot}static getTag(){const t="ui5-static-area-item",e=Ne(t);return e?`${t}-${e}`:t}static createInstance(){return customElements.get(Ye.getTag())||customElements.define(Ye.getTag(),Ye),document.createElement(this.getTag())}}const Xe=new WeakMap;const Qe=(t,e,s)=>{const n=((t,e,s)=>{const n=new MutationObserver(e);return n.observe(t,s),n})(t,e,s);Xe.set(t,n)},ts=["value-changed"];let es;const ss=()=>(void 0===es&&(A(),es=_.noConflict),es),ns=t=>{const e=ss();return!(t=>ts.includes(t))(t)&&(!0===e||!(t=>{const e=ss();return!(e.events&&e.events.includes&&e.events.includes(t))})(t))},is=["disabled","title","hidden","role","draggable"],as=t=>{if(is.includes(t)||t.startsWith("aria"))return!0;return![HTMLElement,Element,Node].some((e=>e.prototype.hasOwnProperty(t)))},rs=(t,e)=>{if(t.length!==e.length)return!1;for(let s=0;s<t.length;s++)if(t[s]!==e[s])return!1;return!0},os=(t,e)=>class extends t{constructor(){super(),e&&e()}};let ls=0;const cs=new Map,ds=new Map;function hs(t){this._suppressInvalidation||(this.onInvalidation(t),this._changedState.push(t),G(this),this._eventProvider.fireEvent("invalidate",{...t,target:this}))}class us extends HTMLElement{constructor(){let t;super(),this._changedState=[],this._suppressInvalidation=!0,this._inDOM=!1,this._fullyConnected=!1,this._childChangeListeners=new Map,this._slotChangeListeners=new Map,this._eventProvider=new b,this._domRefReadyPromise=new Promise((e=>{t=e})),this._domRefReadyPromise._deferredResolve=t,this._initializeState(),this._upgradeAllProperties(),this.constructor._needsShadowDOM()&&this.attachShadow({mode:"open"})}get _id(){return this.__id||(this.__id="ui5wc_"+ ++ls),this.__id}async connectedCallback(){this.setAttribute(this.constructor.getMetadata().getPureTag(),""),this.constructor.getMetadata().supportsF6FastNavigation()&&this.setAttribute("data-sap-ui-fastnavgroup","true");const t=this.constructor.getMetadata().slotsAreManaged();this._inDOM=!0,t&&(this._startObservingDOMChildren(),await this._processChildren()),this._inDOM&&(J(this),this._domRefReadyPromise._deferredResolve(),this._fullyConnected=!0,"function"==typeof this.onEnterDOM&&this.onEnterDOM())}disconnectedCallback(){const t=this.constructor.getMetadata().slotsAreManaged();var e;this._inDOM=!1,t&&this._stopObservingDOMChildren(),this._fullyConnected&&("function"==typeof this.onExitDOM&&this.onExitDOM(),this._fullyConnected=!1),this.staticAreaItem&&this.staticAreaItem.parentElement&&this.staticAreaItem.parentElement.removeChild(this.staticAreaItem),e=this,z.remove(e),B.delete(e)}_startObservingDOMChildren(){if(!this.constructor.getMetadata().hasSlots())return;const t=this.constructor.getMetadata().canSlotText(),e={childList:!0,subtree:t,characterData:t};Qe(this,this._processChildren.bind(this),e)}_stopObservingDOMChildren(){(t=>{const e=Xe.get(t);e&&((t=>{t.disconnect()})(e),Xe.delete(t))})(this)}async _processChildren(){this.constructor.getMetadata().hasSlots()&&await this._updateSlots()}async _updateSlots(){const t=this.constructor.getMetadata().getSlots(),e=this.constructor.getMetadata().canSlotText(),s=Array.from(e?this.childNodes:this.children),n=new Map,i=new Map;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;i.set(t,e),n.set(t,[...this._state[t]]),this._clearSlot(e,s)}const a=new Map,r=new Map,o=s.map((async(e,s)=>{const n=(t=>{if(!(t instanceof HTMLElement))return"default";const e=t.getAttribute("slot");if(e){const t=e.match(/^(.+?)-\d+$/);return t?t[1]:e}return"default"})(e),i=t[n];if(void 0===i){const s=Object.keys(t).join(", ");return void console.warn(`Unknown slotName: ${n}, ignoring`,e,`Valid values are: ${s}`)}if(i.individualSlots){const t=(a.get(n)||0)+1;a.set(n,t),e._individualSlot=`${n}-${t}`}if(e instanceof HTMLElement){const t=e.localName;if(t.includes("-")){if(!window.customElements.get(t)){const e=window.customElements.whenDefined(t);let s=cs.get(t);s||(s=new Promise((t=>setTimeout(t,1e3))),cs.set(t,s)),await Promise.race([e,s])}window.customElements.upgrade(e)}}if((e=this.constructor.getMetadata().constructor.validateSlotValue(e,i)).isUI5Element&&i.invalidateOnChildChange){(e.attachInvalidate||e._attachChange).bind(e)(this._getChildChangeListener(n))}xe(e)&&this._attachSlotChange(e,n);const o=i.propertyName||n;r.has(o)?r.get(o).push({child:e,idx:s}):r.set(o,[{child:e,idx:s}])}));await Promise.all(o),r.forEach(((t,e)=>{this._state[e]=t.sort(((t,e)=>t.idx-e.idx)).map((t=>t.child))}));let l=!1;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;rs(n.get(t),this._state[t])||(hs.call(this,{type:"slot",name:i.get(t),reason:"children"}),l=!0)}l||hs.call(this,{type:"slot",name:"default",reason:"textcontent"})}_clearSlot(t,e){const s=e.propertyName||t;this._state[s].forEach((e=>{if(e&&e.isUI5Element){(e.detachInvalidate||e._detachChange).bind(e)(this._getChildChangeListener(t))}xe(e)&&this._detachSlotChange(e,t)})),this._state[s]=[]}attachInvalidate(t){this._eventProvider.attachEvent("invalidate",t)}detachInvalidate(t){this._eventProvider.detachEvent("invalidate",t)}_onChildChange(t,e){this.constructor.getMetadata().shouldInvalidateOnChildChange(t,e.type,e.name)&&hs.call(this,{type:"slot",name:t,reason:"childchange",child:e.target})}attributeChangedCallback(t,e,s){const n=this.constructor.getMetadata().getProperties(),i=t.replace(/^ui5-/,""),a=Ee(i);if(n.hasOwnProperty(a)){const t=n[a].type;t===Boolean?s=null!==s:$e(t,be)&&(s=t.attributeToProperty(s)),this[a]=s}}_updateAttribute(t,e){if(!this.constructor.getMetadata().hasAttribute(t))return;const s=this.constructor.getMetadata().getProperties()[t].type,n=Me(t),i=this.getAttribute(n);s===Boolean?!0===e&&null===i?this.setAttribute(n,""):!1===e&&null!==i&&this.removeAttribute(n):$e(s,be)?this.setAttribute(n,s.propertyToAttribute(e)):"object"!=typeof e&&i!==e&&this.setAttribute(n,e)}_upgradeProperty(t){if(this.hasOwnProperty(t)){const e=this[t];delete this[t],this[t]=e}}_upgradeAllProperties(){this.constructor.getMetadata().getPropertiesList().forEach(this._upgradeProperty,this)}_initializeState(){this._state={...this.constructor.getMetadata().getInitialState()}}_getChildChangeListener(t){return this._childChangeListeners.has(t)||this._childChangeListeners.set(t,this._onChildChange.bind(this,t)),this._childChangeListeners.get(t)}_getSlotChangeListener(t){return this._slotChangeListeners.has(t)||this._slotChangeListeners.set(t,this._onSlotChange.bind(this,t)),this._slotChangeListeners.get(t)}_attachSlotChange(t,e){t.addEventListener("slotchange",this._getSlotChangeListener(e))}_detachSlotChange(t,e){t.removeEventListener("slotchange",this._getSlotChangeListener(e))}_onSlotChange(t){hs.call(this,{type:"slot",name:t,reason:"slotchange"})}onInvalidation(t){}_render(){const t=this.constructor.getMetadata().hasIndividualSlots();this._suppressInvalidation=!0,"function"==typeof this.onBeforeRendering&&this.onBeforeRendering(),this._onComponentStateFinalized&&this._onComponentStateFinalized(),this._suppressInvalidation=!1,this._changedState=[],this.constructor._needsShadowDOM()&&We(this),this.staticAreaItem&&this.staticAreaItem.update(),t&&this._assignIndividualSlotsToChildren(),"function"==typeof this.onAfterRendering&&this.onAfterRendering()}_assignIndividualSlotsToChildren(){Array.from(this.children).forEach((t=>{t._individualSlot&&t.setAttribute("slot",t._individualSlot)}))}_waitForDomRef(){return this._domRefReadyPromise}getDomRef(){if("function"==typeof this._getRealDomRef)return this._getRealDomRef();if(!this.shadowRoot||0===this.shadowRoot.children.length)return;const t=[...this.shadowRoot.children].filter((t=>!["link","style"].includes(t.localName)));return 1!==t.length&&console.warn(`The shadow DOM for ${this.constructor.getMetadata().getTag()} does not have a top level element, the getDomRef() method might not work as expected`),t[0]}getFocusDomRef(){const t=this.getDomRef();if(t){return t.querySelector("[data-sap-focus-ref]")||t}}async getFocusDomRefAsync(){return await this._waitForDomRef(),this.getFocusDomRef()}async focus(){await this._waitForDomRef();const t=this.getFocusDomRef();t&&"function"==typeof t.focus&&t.focus()}fireEvent(t,e,s=!1,n=!0){const i=this._fireEvent(t,e,s,n),a=Ee(t);return a!==t?i&&this._fireEvent(a,e,s):i}_fireEvent(t,e,s=!1,n=!0){const i=new CustomEvent(`ui5-${t}`,{detail:e,composed:!1,bubbles:n,cancelable:s}),a=this.dispatchEvent(i);if(ns(t))return a;const r=new CustomEvent(t,{detail:e,composed:!1,bubbles:n,cancelable:s});return this.dispatchEvent(r)&&a}getSlottedNodes(t){return this[t].reduce(((t,e)=>t.concat(Te(e))),[])}get effectiveDir(){var t;return t=this.constructor,H.add(t),Ke(this)}get isUI5Element(){return!0}static get observedAttributes(){return this.getMetadata().getAttributesList()}static _needsShadowDOM(){return!!this.template}static _needsStaticArea(){return!!this.staticAreaTemplate}getStaticAreaItemDomRef(){if(!this.constructor._needsStaticArea())throw new Error("This component does not use the static area");return this.staticAreaItem||(this.staticAreaItem=Ye.createInstance(),this.staticAreaItem.setOwnerElement(this)),this.staticAreaItem.parentElement||E("ui5-static-area").appendChild(this.staticAreaItem),this.staticAreaItem.getDomRef()}static _generateAccessors(){const t=this.prototype,e=this.getMetadata().slotsAreManaged(),s=this.getMetadata().getProperties();for(const[e,n]of Object.entries(s)){if(as(e)||console.warn(`"${e}" is not a valid property name. Use a name that does not collide with DOM APIs`),n.type===Boolean&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All booleans are false by default.`);if(n.type===Array)throw new Error(`Wrong type for property "${e}". Properties cannot be of type Array - use "multiple: true" and set "type" to the single value type, such as "String", "Object", etc...`);if(n.type===Object&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All properties of type "Object" are empty objects by default.`);if(n.multiple&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All multiple properties are empty arrays by default.`);Object.defineProperty(t,e,{get(){if(void 0!==this._state[e])return this._state[e];const t=n.defaultValue;return n.type!==Boolean&&(n.type===String?t:n.multiple?[]:t)},set(t){let s;t=this.constructor.getMetadata().constructor.validatePropertyValue(t,n);const i=this._state[e];s=n.multiple&&n.compareValues?!rs(i,t):$e(n.type,be)?!n.type.valuesAreEqual(i,t):i!==t,s&&(this._state[e]=t,hs.call(this,{type:"property",name:e,newValue:t,oldValue:i}),this._updateAttribute(e,t))}})}if(e){const e=this.getMetadata().getSlots();for(const[s,n]of Object.entries(e)){as(s)||console.warn(`"${s}" is not a valid property name. Use a name that does not collide with DOM APIs`);const e=n.propertyName||s;Object.defineProperty(t,e,{get(){return void 0!==this._state[e]?this._state[e]:[]},set(){throw new Error("Cannot set slot content directly, use the DOM APIs (appendChild, removeChild, etc...)")}})}}}static get metadata(){return{}}static get styles(){return""}static get staticAreaStyles(){return""}static get dependencies(){return[]}static getUniqueDependencies(){if(!ds.has(this)){const t=this.dependencies.filter(((t,e,s)=>s.indexOf(t)===e));ds.set(this,t)}return ds.get(this)}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map((t=>t.define())))}static async onDefine(){return Promise.resolve()}static async define(){await Ae(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),e=this.getMetadata().getAltTag(),s=(t=>k.has(t))(t),n=customElements.get(t);return n&&!s?(t=>{let e=N.get(t);void 0===e&&(e="unknown"),R[e]=R[e]||new Set,R[e].add(t),D||(D=setTimeout((()=>{U(),R={},D=void 0}),1e3))})(t):n||(this._generateAccessors(),j(t),window.customElements.define(t,this),e&&!customElements.get(e)&&(j(e),window.customElements.define(e,os(this,(()=>{console.log(`The ${e} tag is deprecated and will be removed in the next release, please use ${t} instead.`)}))))),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const t=[this.metadata];let e=this;for(;e!==us;)e=Object.getPrototypeOf(e),t.unshift(e.metadata);const s=g({},...t);return this._metadata=new ke(s),this._metadata}}
|
|
1
|
+
const t={default:"en",all:["ar","ar_EG","ar_SA","bg","ca","cs","da","de","de_AT","de_CH","el","el_CY","en","en_AU","en_GB","en_HK","en_IE","en_IN","en_NZ","en_PG","en_SG","en_ZA","es","es_AR","es_BO","es_CL","es_CO","es_MX","es_PE","es_UY","es_VE","et","fa","fi","fr","fr_BE","fr_CA","fr_CH","fr_LU","he","hi","hr","hu","id","it","it_CH","ja","kk","ko","lt","lv","ms","nb","nl","nl_BE","pl","pt","pt_PT","ro","ru","ru_UA","sk","sl","sr","sv","th","tr","uk","vi","zh_CN","zh_HK","zh_SG","zh_TW"]},e={default:"sap_fiori_3",all:["sap_fiori_3","sap_fiori_3_dark","sap_belize","sap_belize_hcb","sap_belize_hcw","sap_fiori_3_hcb","sap_fiori_3_hcw","sap_horizon","sap_horizon_exp"]}.default,s={default:"en",all:["ar","bg","ca","cs","cy","da","de","el","en","en_GB","en_US_sappsd","en_US_saprigi","en_US_saptrc","es","es_MX","et","fi","fr","fr_CA","hi","hr","hu","in","it","iw","ja","kk","ko","lt","lv","ms","nl","no","pl","pt_PT","pt","ro","ru","sh","sk","sl","sv","th","tr","uk","vi","zh_CN","zh_TW"]}.default,n=t.default,i=t.all;var a=()=>{const t=navigator.languages;return t&&t[0]||navigator.language||navigator.userLanguage||navigator.browserLanguage||s},r={},o=r.hasOwnProperty,l=r.toString,c=o.toString,d=c.call(Object),h=function(t){var e,s;return!(!t||"[object Object]"!==l.call(t))&&(!(e=Object.getPrototypeOf(t))||"function"==typeof(s=o.call(e,"constructor")&&e.constructor)&&c.call(s)===d)},u=Object.create(null),p=function(){var t,e,s,n,i,a,r=arguments[2]||{},o=3,l=arguments.length,c=arguments[0]||!1,d=arguments[1]?void 0:u;for("object"!=typeof r&&"function"!=typeof r&&(r={});o<l;o++)if(null!=(i=arguments[o]))for(n in i)t=r[n],s=i[n],"__proto__"!==n&&r!==s&&(c&&s&&(h(s)||(e=Array.isArray(s)))?(e?(e=!1,a=t&&Array.isArray(t)?t:[]):a=t&&h(t)?t:{},r[n]=p(c,arguments[1],a,s)):s!==d&&(r[n]=s));return r},g=function(){var t=[!0,!1];return t.push.apply(t,arguments),p.apply(null,t)};const f=new Map,m=t=>f.get(t);let y=!1,_={animationMode:"full",theme:e,rtl:null,language:null,calendarType:null,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1};const v=new Map;v.set("true",!0),v.set("false",!1);const w=(t,e,s)=>{const n=e.toLowerCase(),i=t.split(`${s}-`)[1];v.has(e)&&(e=v.get(n)),e=((t,e)=>"theme"===t&&e.includes("@")?e.split("@")[0]:e)(i,e),_[i]=e},A=()=>{y||((()=>{const t=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let e;if(t){try{e=JSON.parse(t.innerHTML)}catch(t){console.warn("Incorrect data-sap-ui-config format. Please use JSON")}e&&(_=g(_,e))}})(),(()=>{const t=new URLSearchParams(window.location.search);t.forEach(((t,e)=>{const s=e.split("sap-").length;0!==s&&s!==e.split("sap-ui-").length&&w(e,t,"sap")})),t.forEach(((t,e)=>{e.startsWith("sap-ui")&&w(e,t,"sap-ui")}))})(),(()=>{const t=m("OpenUI5Support");if(!t||!t.isLoaded())return;const e=t.getConfigurationSettingsObject();_=g(_,e)})(),y=!0)};class b{constructor(){this._eventRegistry=new Map}attachEvent(t,e){const s=this._eventRegistry,n=s.get(t);Array.isArray(n)?n.includes(e)||n.push(e):s.set(t,[e])}detachEvent(t,e){const s=this._eventRegistry,n=s.get(t);if(!n)return;const i=n.indexOf(e);-1!==i&&n.splice(i,1),0===n.length&&s.delete(t)}fireEvent(t,e){const s=this._eventRegistry.get(t);return s?s.map((t=>t.call(this,e))):[]}fireEventAsync(t,e){return Promise.all(this.fireEvent(t,e))}isHandlerAttached(t,e){const s=this._eventRegistry.get(t);return!!s&&s.includes(e)}hasListeners(t){return!!this._eventRegistry.get(t)}}const $=new b,S=t=>{$.attachEvent("languageChange",t)};const C=t=>{const e=[];return t.forEach((t=>{e.push(t)})),e},E=(t,e=document.body)=>{let s=document.querySelector(t);return s||(s=document.createElement(t),e.insertBefore(s,e.firstChild))},M=(t,e)=>{const s=t.split(".");let n=E("ui5-shared-resources",document.head);for(let t=0;t<s.length;t++){const i=s[t],a=t===s.length-1;Object.prototype.hasOwnProperty.call(n,i)||(n[i]=a?e:{}),n=n[i]}return n},O={version:"1.2.1",major:1,minor:2,patch:1,suffix:"",isNext:!1,buildTime:1646215123};let x;const T=new Map,P=M("Runtimes",[]),I=()=>x,L=M("Tags",new Map),N=new Set;let k,D={};const R=t=>{N.add(t),L.set(t,I())},j=()=>{const t=P,e=I(),s=t[e];let n="Multiple UI5 Web Components instances detected.";t.length>1&&(n=`${n}\nLoading order (versions before 1.1.0 not listed): ${t.map((t=>`\n${t.description}`)).join("")}`),Object.keys(D).forEach((i=>{let a,r,o;"unknown"===i?(a=1,r={description:"Older unknown runtime"}):(a=((t,e)=>{const s=`${t},${e}`;if(T.has(s))return T.get(s);const n=P[t],i=P[e];if(!n||!i)throw new Error("Invalid runtime index supplied");if(n.isNext||i.isNext)return n.buildTime-i.buildTime;const a=n.major-i.major;if(a)return a;const r=n.minor-i.minor;if(r)return r;const o=n.patch-i.patch;if(o)return o;const l=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}).compare(n.suffix,i.suffix);return T.set(s,l),l})(e,i),r=t[i]),o=a>0?"an older":a<0?"a newer":"the same",n=`${n}\n\n"${s.description}" failed to define ${D[i].size} tag(s) as they were defined by a runtime of ${o} version "${r.description}": ${C(D[i]).sort().join(", ")}.`,n=a>0?`${n}\nWARNING! If your code uses features of the above web components, unavailable in ${r.description}, it might not work as expected!`:`${n}\nSince the above web components were defined by the same or newer version runtime, they should be compatible with your code.`})),n=`${n}\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.`,console.warn(n)},U=new Set,H=new Set,B=new b,V=new class{constructor(){this.list=[],this.lookup=new Set}add(t){this.lookup.has(t)||(this.list.push(t),this.lookup.add(t))}remove(t){this.lookup.has(t)&&(this.list=this.list.filter((e=>e!==t)),this.lookup.delete(t))}shift(){const t=this.list.shift();if(t)return this.lookup.delete(t),t}isEmpty(){return 0===this.list.length}isAdded(t){return this.lookup.has(t)}process(t){let e;const s=new Map;for(e=this.shift();e;){const n=s.get(e)||0;if(n>10)throw new Error("Web component processed too many times this task, max allowed is: 10");t(e),s.set(e,n+1),e=this.shift()}}};let z,Z,F,W;const q=async t=>{V.add(t),await J()},G=t=>{B.fireEvent("beforeComponentRender",t),H.add(t),t._render()},J=async()=>{W||(W=new Promise((t=>{window.requestAnimationFrame((()=>{V.process(G),W=null,t(),F||(F=setTimeout((()=>{F=void 0,V.isEmpty()&&X()}),200))}))}))),await W},K=()=>{const t=C(N).map((t=>customElements.whenDefined(t)));return Promise.all(t)},Y=async()=>{await K(),await(z||(z=new Promise((t=>{Z=t,window.requestAnimationFrame((()=>{V.isEmpty()&&(z=void 0,t())}))})),z))},X=()=>{V.isEmpty()&&Z&&(Z(),Z=void 0,z=void 0)},Q=async t=>{H.forEach((e=>{const s=e.constructor.getMetadata().getTag(),n=(i=e.constructor,U.has(i));var i;const a=e.constructor.getMetadata().isLanguageAware(),r=e.constructor.getMetadata().isThemeAware();(!t||t.tag===s||t.rtlAware&&n||t.languageAware&&a||t.themeAware&&r)&&q(e)})),await Y()};let tt,et;const st=()=>(void 0===tt&&(A(),tt=_.language),tt),nt=()=>{var t;return void 0===et&&(A(),t=_.fetchDefaultLanguage,et=t),et},it=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;class at{constructor(t){const e=it.exec(t.replace(/_/g,"-"));if(null===e)throw new Error(`The given language ${t} does not adhere to BCP-47.`);this.sLocaleId=t,this.sLanguage=e[1]||null,this.sScript=e[2]||null,this.sRegion=e[3]||null,this.sVariant=e[4]&&e[4].slice(1)||null,this.sExtension=e[5]&&e[5].slice(1)||null,this.sPrivateUse=e[6]||null,this.sLanguage&&(this.sLanguage=this.sLanguage.toLowerCase()),this.sScript&&(this.sScript=this.sScript.toLowerCase().replace(/^[a-z]/,(t=>t.toUpperCase()))),this.sRegion&&(this.sRegion=this.sRegion.toUpperCase())}getLanguage(){return this.sLanguage}getScript(){return this.sScript}getRegion(){return this.sRegion}getVariant(){return this.sVariant}getVariantSubtags(){return this.sVariant?this.sVariant.split("-"):[]}getExtension(){return this.sExtension}getExtensionSubtags(){return this.sExtension?this.sExtension.slice(2).split("-"):[]}getPrivateUse(){return this.sPrivateUse}getPrivateUseSubtags(){return this.sPrivateUse?this.sPrivateUse.slice(2).split("-"):[]}hasPrivateUseSubtag(t){return this.getPrivateUseSubtags().indexOf(t)>=0}toString(){const t=[this.sLanguage];return this.sScript&&t.push(this.sScript),this.sRegion&&t.push(this.sRegion),this.sVariant&&t.push(this.sVariant),this.sExtension&&t.push(this.sExtension),this.sPrivateUse&&t.push(this.sPrivateUse),t.join("-")}}const rt=new Map,ot=t=>(rt.has(t)||rt.set(t,new at(t)),rt.get(t)),lt=t=>{try{if(t&&"string"==typeof t)return ot(t)}catch(t){}},ct=t=>t?lt(t):st()?ot(st()):lt(a()),dt=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i,ht=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,ut={he:"iw",yi:"ji",id:"in",sr:"sh"},pt=t=>{if(!t)return n;if("zh_HK"===t)return"zh_TW";const e=t.lastIndexOf("_");return e>=0?t.slice(0,e):t!==n?n:""},gt=new Set,ft=new Set,mt=new Map,yt=new Map,_t=new Map,vt=(t,e)=>{mt.set(t,e)},wt=(t,e)=>{const s=`${t}/${e}`;return _t.has(s)},At=async t=>{const e=ct().getLanguage(),i=ct().getRegion();let a=(t=>{let e;if(!t)return n;if("string"==typeof t&&(e=dt.exec(t.replace(/_/g,"-")))){let t=e[1].toLowerCase(),s=e[3]?e[3].toUpperCase():void 0;const n=e[2]?e[2].toLowerCase():void 0,i=e[4]?e[4].slice(1):void 0,a=e[6];return t=ut[t]||t,a&&(e=ht.exec(a))||i&&(e=ht.exec(i))?`en_US_${e[1].toLowerCase()}`:("zh"!==t||s||("hans"===n?s="CN":"hant"===n&&(s="TW")),t+(s?"_"+s+(i?"_"+i.replace("-","_"):""):""))}})(e+(i?`-${i}`:""));for(;a!==s&&!wt(t,a);)a=pt(a);const r=nt();if(a!==s||r)if(wt(t,a))try{const e=await((t,e)=>{const s=`${t}/${e}`,n=_t.get(s);return yt.get(s)||yt.set(s,n(e)),yt.get(s)})(t,a);vt(t,e)}catch(t){ft.has(t.message)||(ft.add(t.message),console.error(t.message))}else(t=>{gt.has(t)||(console.warn(`[${t}]: Message bundle assets are not configured. Falling back to English texts.`,` Add \`import "${t}/dist/Assets.js"\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section "Assets" in the documentation for more information.`),gt.add(t))})(t);else vt(t,null)};S((()=>{const t=[...mt.keys()];return Promise.all(t.map(At))}));const bt=new Map,$t=new Map,St=new Map,Ct=new Set;let Et=!1;const Mt={iw:"he",ji:"yi",in:"id",sh:"sr"},Ot=t=>{Et||(console.warn(`[LocaleData] Supported locale "${t}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),Et=!0)},xt=(t,e)=>{bt.set(t,e)},Tt=async(t,e,s)=>{const a=((t,e,s)=>{"no"===(t=t&&Mt[t]||t)&&(t="nb"),"zh"!==t||e||("Hans"===s?e="CN":"Hant"===s&&(e="TW"));let a=`${t}_${e}`;return i.includes(a)?$t.has(a)?a:(Ot(a),n):(a=t,i.includes(a)?$t.has(a)?a:(Ot(a),n):n)})(t,e,s),r=m("OpenUI5Support");if(r){const t=r.getLocaleDataObject();if(t)return void xt(a,t)}try{const t=await(t=>{const e=$t.get(t);return St.get(t)||St.set(t,e(t)),St.get(t)})(a);xt(a,t)}catch(t){Ct.has(t.message)||(Ct.add(t.message),console.error(t.message))}};var Pt,It;Pt="en",It=async t=>(await fetch("https://ui5.sap.com/1.60.2/resources/sap/ui/core/cldr/en.json")).json(),$t.set(Pt,It),S((()=>{const t=ct();return Tt(t.getLanguage(),t.getRegion(),t.getScript())}));const Lt=new Map,Nt=new Map,kt=new Set,Dt=new Set,Rt=(t,e,s)=>{Nt.set(`${t}/${e}`,s),kt.add(t),Dt.add(e)},jt=async(t,s)=>{const n=Lt.get(`${t}_${s}`);if(void 0!==n)return n;if(!Dt.has(s)){const s=[...Dt.values()].join(", ");return console.warn(`You have requested a non-registered theme - falling back to ${e}. Registered themes are: ${s}`),Lt.get(`${t}_${e}`)}const i=Nt.get(`${t}/${s}`);if(!i)return void console.error(`Theme [${s}] not registered for package [${t}]`);let a;try{a=await i(s)}catch(e){return void console.error(t,e.message)}const r=a._||a;return Lt.set(`${t}_${s}`,r),r},Ut=()=>kt,Ht={"SAP-icons-TNT":"tnt",BusinessSuiteInAppSymbols:"business-suite",horizon:"SAP-icons-v5"},Bt=(t,e)=>e?`${t}|${e}`:t,Vt=(t,e,s="")=>{const n="string"==typeof t?t:t.content;if(document.adoptedStyleSheets){const t=new CSSStyleSheet;t.replaceSync(n),t._ui5StyleId=Bt(e,s),document.adoptedStyleSheets=[...document.adoptedStyleSheets,t]}else{const t={};t[e]=s,((t,e={})=>{const s=document.createElement("style");s.type="text/css",Object.entries(e).forEach((t=>s.setAttribute(...t))),s.textContent=t,document.head.appendChild(s)})(n,t)}},zt=(t,e="")=>document.adoptedStyleSheets?!!document.adoptedStyleSheets.find((s=>s._ui5StyleId===Bt(t,e))):!!document.querySelector(`head>style[${t}="${e}"]`),Zt=(t,e,s="")=>{zt(e,s)?((t,e,s="")=>{const n="string"==typeof t?t:t.content;document.adoptedStyleSheets?document.adoptedStyleSheets.find((t=>t._ui5StyleId===Bt(e,s))).replaceSync(n||""):document.querySelector(`head>style[${e}="${s}"]`).textContent=n||""})(t,e,s):Vt(t,e,s)},Ft=new Set,Wt=()=>{const t=(()=>{let t=document.querySelector(".sapThemeMetaData-Base-baseLib")||document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");if(t)return getComputedStyle(t).backgroundImage;t=document.createElement("span"),t.style.display="none",t.classList.add("sapThemeMetaData-Base-baseLib"),document.body.appendChild(t);let e=getComputedStyle(t).backgroundImage;return"none"===e&&(t.classList.add("sapThemeMetaData-UI5-sap-ui-core"),e=getComputedStyle(t).backgroundImage),document.body.removeChild(t),e})();if(!t||"none"===t)return;const e=(t=>{const e=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(t);if(e&&e.length>=2){let t=e[1];if(t=t.replace(/\\"/g,'"'),"{"!==t.charAt(0)&&"}"!==t.charAt(t.length-1))try{t=decodeURIComponent(t)}catch(t){return void(Ft.has("decode")||(console.warn("Malformed theme metadata string, unable to decodeURIComponent"),Ft.add("decode")))}try{return JSON.parse(t)}catch(t){Ft.has("parse")||(console.warn("Malformed theme metadata string, unable to parse JSON"),Ft.add("parse"))}}})(t);return(t=>{let e,s;try{e=t.Path.match(/\.([^.]+)\.css_variables$/)[1],s=t.Extends[0]}catch(e){return void(Ft.has("object")||(console.warn("Malformed theme metadata Object",t),Ft.add("object")))}return{themeName:e,baseThemeName:s}})(e)},qt=new b,Gt="@ui5/webcomponents-theming",Jt=async t=>{if(!Ut().has(Gt))return;const e=await jt(Gt,t);e&&Zt(e,"data-ui5-theme-properties",Gt)},Kt=()=>{((t,e="")=>{if(document.adoptedStyleSheets)document.adoptedStyleSheets=document.adoptedStyleSheets.filter((s=>s._ui5StyleId!==Bt(t,e)));else{const s=document.querySelector(`head > style[${t}="${e}"]`);s&&s.parentElement.removeChild(s)}})("data-ui5-theme-properties",Gt)},Yt=async t=>{const e=(()=>{const t=Wt();if(t)return t;const e=m("OpenUI5Support");if(e&&e.cssVariablesLoaded())return{themeName:e.getConfigurationSettingsObject().theme}})();e&&t===e.themeName?Kt():await Jt(t);const s=(t=>Dt.has(t))(t)?t:e&&e.baseThemeName;await(async t=>{Ut().forEach((async e=>{if(e===Gt)return;const s=await jt(e,t);s&&Zt(s,"data-ui5-theme-properties",e)}))})(s),(t=>{qt.fireEvent("themeLoaded",t)})(t)};let Xt;const Qt=()=>(void 0===Xt&&(A(),Xt=_.theme),Xt),te=async t=>{Xt!==t&&(Xt=t,await Yt(Xt),await Q({themeAware:!0}))},ee=new Map,se=M("SVGIcons.registry",new Map),ne=M("SVGIcons.promises",new Map),ie=(t,{pathData:e,ltr:s,accData:n,collection:i,packageName:a}={})=>{i||(i=re());const r=`${i}/${t}`;se.set(r,{pathData:e,ltr:s,accData:n,packageName:a})},ae=async t=>{const{collection:e,registryKey:s}=(t=>{let e;return t.startsWith("sap-icon://")&&(t=t.replace("sap-icon://","")),[t,e]=t.split("/").reverse(),e=e||re(),e=oe(e),{name:t=t.replace("icon-",""),collection:e,registryKey:`${e}/${t}`}})(t);let n="ICON_NOT_FOUND";try{n=await(async t=>{if(!ne.has(t)){if(!ee.has(t))throw new Error(`No loader registered for the ${t} icons collection. Probably you forgot to import the "AllIcons.js" module for the respective package.`);const e=ee.get(t);ne.set(t,e(t))}return ne.get(t)})(e)}catch(t){console.error(t.message)}return"ICON_NOT_FOUND"===n?n:(se.has(s)||(t=>{Object.keys(t.data).forEach((e=>{const s=t.data[e];ie(e,{pathData:s.path,ltr:s.ltr,accData:s.acc,collection:t.collection,packageName:t.packageName})}))})(n),se.get(s))},re=()=>(t=>{const e=Qt();return e===t||e===`${t}_exp`})("sap_horizon")?"SAP-icons-v5":"SAP-icons",oe=t=>Ht[t]?Ht[t]:t,le=M("PopupUtilsData",{});le.currentZIndex=le.currentZIndex||100;const ce=()=>le.currentZIndex,de=()=>{const t=window.sap;return t&&t.ui&&"function"==typeof t.ui.getCore&&t.ui.getCore()};var he,ue;he="OpenUI5Support",ue={isLoaded:()=>!!de(),init:()=>{const t=de();return t?new Promise((e=>{t.attachInit((()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],((t,s)=>{s.setInitialZIndex(ce()),e()}))}))})):Promise.resolve()},getConfigurationSettingsObject:()=>{const t=de();if(!t)return;const e=t.getConfiguration(),s=window.sap.ui.require("sap/ui/core/LocaleData");return{animationMode:e.getAnimationMode(),language:e.getLanguage(),theme:e.getTheme(),rtl:e.getRTL(),calendarType:e.getCalendarType(),formatSettings:{firstDayOfWeek:s?s.getInstance(e.getLocale()).getFirstDayOfWeek():void 0}}},getLocaleDataObject:()=>{const t=de();if(!t)return;const e=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(e.getLocale())._get()},attachListeners:()=>{de()&&(()=>{const t=de(),e=t.getConfiguration();t.attachThemeChanged((async()=>{await te(e.getTheme())}))})()},cssVariablesLoaded:()=>{if(!de())return;const t=[...document.head.children].find((t=>"sap-ui-theme-sap.ui.core"===t.id));return t?!!t.href.match(/\/css(-|_)variables\.css/):void 0},getNextZIndex:()=>{if(!de())return;return window.sap.ui.require("sap/ui/core/Popup").getNextZIndex()},setInitialZIndex:()=>{if(!de())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex(ce())}},f.set(he,ue);var pe={packageName:"@ui5/webcomponents-base",fileName:"FontFace.css",content:'@font-face{font-family:"72";font-style:normal;font-weight:400;src:local("72"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72full";font-style:normal;font-weight:400;src:local(\'72-full\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72";font-style:normal;font-weight:700;src:local(\'72-Bold\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72full";font-style:normal;font-weight:700;src:local(\'72-Bold-full\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72Black";font-style:bold;font-weight:900;src:local(\'72Black\'),url(https://openui5nightly.hana.ondemand.com/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2"),url(https://openui5nightly.hana.ondemand.com/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff?ui5-webcomponents) format("woff")}'},ge={packageName:"@ui5/webcomponents-base",fileName:"OverrideFontFace.css",content:"@font-face{font-family:'72override';unicode-range:U+0102-0103,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EB7,U+1EB8-1EC7,U+1EC8-1ECB,U+1ECC-1EE3,U+1EE4-1EF1,U+1EF4-1EF7;src:local('Arial'),local('Helvetica'),local('sans-serif')}"};const fe=()=>{zt("data-ui5-font-face")||Vt(pe,"data-ui5-font-face")},me=()=>{zt("data-ui5-font-face-override")||Vt(ge,"data-ui5-font-face-override")};var ye={packageName:"@ui5/webcomponents-base",fileName:"SystemCSSVars.css",content:":root{--_ui5_content_density:cozy}.sapUiSizeCompact,.ui5-content-density-compact,[data-ui5-compact-size]{--_ui5_content_density:compact}[dir=rtl]{--_ui5_dir:rtl}[dir=ltr]{--_ui5_dir:ltr}"};let _e;const ve=async()=>_e||(_e=new Promise((async t=>{void 0===x&&(x=P.length,P.push({...O,alias:"",description:`Runtime ${x} - ver ${O.version}`}));const e=m("OpenUI5Support"),s=m("F6Navigation");e?await e.init():s&&s.init(),await new Promise((t=>{document.body?t():document.addEventListener("DOMContentLoaded",(()=>{t()}))})),await Yt(Qt()),e&&e.attachListeners(),(()=>{const t=m("OpenUI5Support");t&&t.isLoaded()||fe(),me()})(),zt("data-ui5-system-css-vars")||Vt(ye,"data-ui5-system-css-vars"),t()})),_e);class we{static isValid(t){}static attributeToProperty(t){return t}static propertyToAttribute(t){return`${t}`}static valuesAreEqual(t,e){return t===e}static generateTypeAccessors(t){Object.keys(t).forEach((e=>{Object.defineProperty(this,e,{get:()=>t[e]})}))}}const Ae=(t,e,s=!1)=>{if("function"!=typeof t||"function"!=typeof e)return!1;if(s&&t===e)return!0;let n=t;do{n=Object.getPrototypeOf(n)}while(null!==n&&n!==e);return n===e},be=new Map,$e=new Map,Se=t=>{if(!be.has(t)){const e=Ee(t.split("-"));be.set(t,e)}return be.get(t)},Ce=t=>{if(!$e.has(t)){const e=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();$e.set(t,e)}return $e.get(t)},Ee=t=>t.map(((t,e)=>0===e?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase())).join(""),Me=t=>t&&t instanceof HTMLElement&&"slot"===t.localName,Oe=t=>Me(t)?t.assignedNodes({flatten:!0}).filter((t=>t instanceof HTMLElement)):[t];let xe={include:[/^ui5-/],exclude:[]};const Te=new Map,Pe=t=>{if(!Te.has(t)){const e=xe.include.some((e=>t.match(e)))&&!xe.exclude.some((e=>t.match(e)));Te.set(t,e)}return Te.get(t)},Ie=t=>{Pe(t)};class Le{constructor(t){this.metadata=t}getInitialState(){if(Object.prototype.hasOwnProperty.call(this,"_initialState"))return this._initialState;const t={},e=this.slotsAreManaged(),s=this.getProperties();for(const e in s){const n=s[e].type,i=s[e].defaultValue;n===Boolean?(t[e]=!1,void 0!==i&&console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default")):s[e].multiple?t[e]=[]:t[e]=n===Object?"defaultValue"in s[e]?s[e].defaultValue:{}:n===String?"defaultValue"in s[e]?s[e].defaultValue:"":i}if(e){const e=this.getSlots();for(const[s,n]of Object.entries(e)){t[n.propertyName||s]=[]}}return this._initialState=t,t}static validatePropertyValue(t,e){return e.multiple?t.map((t=>Ne(t,e))):Ne(t,e)}static validateSlotValue(t,e){return ke(t,e)}getPureTag(){return this.metadata.tag}getTag(){const t=this.metadata.tag,e=Ie(t);return e?`${t}-${e}`:t}getAltTag(){const t=this.metadata.altTag;if(!t)return;const e=Ie(t);return e?`${t}-${e}`:t}hasAttribute(t){const e=this.getProperties()[t];return e.type!==Object&&!e.noAttribute&&!e.multiple}getPropertiesList(){return Object.keys(this.getProperties())}getAttributesList(){return this.getPropertiesList().filter(this.hasAttribute,this).map(Ce)}getSlots(){return this.metadata.slots||{}}canSlotText(){const t=this.getSlots().default;return t&&t.type===Node}hasSlots(){return!!Object.entries(this.getSlots()).length}hasIndividualSlots(){return this.slotsAreManaged()&&Object.entries(this.getSlots()).some((([t,e])=>e.individualSlots))}slotsAreManaged(){return!!this.metadata.managedSlots}supportsF6FastNavigation(){return!!this.metadata.fastNavigation}getProperties(){return this.metadata.properties||{}}getEvents(){return this.metadata.events||{}}isLanguageAware(){return!!this.metadata.languageAware}isThemeAware(){return!!this.metadata.themeAware}shouldInvalidateOnChildChange(t,e,s){const n=this.getSlots()[t].invalidateOnChildChange;if(void 0===n)return!1;if("boolean"==typeof n)return n;if("object"==typeof n){if("property"===e){if(void 0===n.properties)return!1;if("boolean"==typeof n.properties)return n.properties;if(Array.isArray(n.properties))return n.properties.includes(s);throw new Error("Wrong format for invalidateOnChildChange.properties: boolean or array is expected")}if("slot"===e){if(void 0===n.slots)return!1;if("boolean"==typeof n.slots)return n.slots;if(Array.isArray(n.slots))return n.slots.includes(s);throw new Error("Wrong format for invalidateOnChildChange.slots: boolean or array is expected")}}throw new Error("Wrong format for invalidateOnChildChange: boolean or object is expected")}}const Ne=(t,e)=>{const s=e.type;return s===Boolean?"boolean"==typeof t&&t:s===String?"string"==typeof t||null==t?t:t.toString():s===Object?"object"==typeof t?t:e.defaultValue:Ae(s,we)?s.isValid(t)?t:e.defaultValue:void 0},ke=(t,e)=>(t&&Oe(t).forEach((t=>{if(!(t instanceof e.type))throw new Error(`${t} is not of type ${e.type}`)})),t);customElements.get("ui5-static-area")||customElements.define("ui5-static-area",class extends HTMLElement{});const De=M("CustomStyle.eventProvider",new b),Re=t=>{De.attachEvent("CustomCSSChange",t)},je=M("CustomStyle.customCSSFor",{});Re((t=>{Q({tag:t})}));const Ue=t=>Array.isArray(t)?He(t.filter((t=>!!t))).map((t=>"string"==typeof t?t:t.content)).join(" "):"string"==typeof t?t:t.content,He=t=>t.reduce(((t,e)=>t.concat(Array.isArray(e)?He(e):e)),[]),Be=new Map;Re((t=>{Be.delete(`${t}_normal`)}));const Ve=(t,e=!1)=>{const s=t.getMetadata().getTag(),n=`${s}_${e?"static":"normal"}`;if(!Be.has(n)){let i;if(e)i=Ue(t.staticAreaStyles);else{const e=(t=>je[t]?je[t].join(""):"")(s)||"";i=`${Ue(t.styles)} ${e}`}Be.set(n,i)}return Be.get(n)},ze=new Map;Re((t=>{ze.delete(`${t}_normal`)}));const Ze=(t,e=!1)=>{let s;const n=e?"staticAreaTemplate":"template",i=e?t.staticAreaItem.shadowRoot:t.shadowRoot,a=((t,e)=>{const s=e.constructor.getUniqueDependencies().map((t=>t.getMetadata().getPureTag())).filter(Pe);return t(e,s,void 0)})(t.constructor[n],t);document.adoptedStyleSheets?i.adoptedStyleSheets=((t,e=!1)=>{const s=`${t.getMetadata().getTag()}_${e?"static":"normal"}`;if(!ze.has(s)){const n=Ve(t,e),i=new CSSStyleSheet;i.replaceSync(n),ze.set(s,[i])}return ze.get(s)})(t.constructor,e):window.ShadyDOM||(s=Ve(t.constructor,e)),t.constructor.render(a,i,s,{host:t})};const Fe={iw:"he",ji:"yi",in:"id",sh:"sr"},We=(t=>{const e=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(t);return e&&e[2]?e[2].split(/,/):null})("$cldr-rtl-locales:ar,fa,he$")||[],qe=()=>{const t=(A(),_.rtl);return null!==t?!!t:(t=>(t=t&&Fe[t]||t,We.indexOf(t)>=0))(st()||a())},Ge=t=>{const e=window.document,s=["ltr","rtl"],n=getComputedStyle(t).getPropertyValue("--_ui5_dir");return s.includes(n)?n:s.includes(t.dir)?t.dir:s.includes(e.documentElement.dir)?e.documentElement.dir:s.includes(e.body.dir)?e.body.dir:qe()?"rtl":void 0};class Je extends HTMLElement{constructor(){super(),this._rendered=!1,this.attachShadow({mode:"open"})}setOwnerElement(t){this.ownerElement=t,this.classList.add(this.ownerElement._id),this.ownerElement.hasAttribute("data-ui5-static-stable")&&this.setAttribute("data-ui5-stable",this.ownerElement.getAttribute("data-ui5-static-stable"))}update(){this._rendered&&(this._updateContentDensity(),this._updateDirection(),Ze(this.ownerElement,!0))}_updateContentDensity(){var t;"compact"===(t=this.ownerElement,getComputedStyle(t).getPropertyValue("--_ui5_content_density"))?(this.classList.add("sapUiSizeCompact"),this.classList.add("ui5-content-density-compact")):(this.classList.remove("sapUiSizeCompact"),this.classList.remove("ui5-content-density-compact"))}_updateDirection(){const t=Ge(this.ownerElement);t?this.setAttribute("dir",t):this.removeAttribute("dir")}async getDomRef(){return this._updateContentDensity(),this._rendered||(this._rendered=!0,Ze(this.ownerElement,!0)),await Y(),this.shadowRoot}static getTag(){const t="ui5-static-area-item",e=Ie(t);return e?`${t}-${e}`:t}static createInstance(){return customElements.get(Je.getTag())||customElements.define(Je.getTag(),Je),document.createElement(this.getTag())}}const Ke=new WeakMap;const Ye=(t,e,s)=>{const n=((t,e,s)=>{const n=new MutationObserver(e);return n.observe(t,s),n})(t,e,s);Ke.set(t,n)},Xe=["value-changed"];let Qe;const ts=()=>(void 0===Qe&&(A(),Qe=_.noConflict),Qe),es=t=>{const e=ts();return!(t=>Xe.includes(t))(t)&&(!0===e||!(t=>{const e=ts();return!(e.events&&e.events.includes&&e.events.includes(t))})(t))},ss=["disabled","title","hidden","role","draggable"],ns=t=>{if(ss.includes(t)||t.startsWith("aria"))return!0;return![HTMLElement,Element,Node].some((e=>e.prototype.hasOwnProperty(t)))},is=(t,e)=>{if(t.length!==e.length)return!1;for(let s=0;s<t.length;s++)if(t[s]!==e[s])return!1;return!0},as=(t,e)=>class extends t{constructor(){super(),e&&e()}};let rs=0;const os=new Map,ls=new Map;function cs(t){this._suppressInvalidation||(this.onInvalidation(t),this._changedState.push(t),q(this),this._eventProvider.fireEvent("invalidate",{...t,target:this}))}class ds extends HTMLElement{constructor(){let t;super(),this._changedState=[],this._suppressInvalidation=!0,this._inDOM=!1,this._fullyConnected=!1,this._childChangeListeners=new Map,this._slotChangeListeners=new Map,this._eventProvider=new b,this._domRefReadyPromise=new Promise((e=>{t=e})),this._domRefReadyPromise._deferredResolve=t,this._initializeState(),this._upgradeAllProperties(),this.constructor._needsShadowDOM()&&this.attachShadow({mode:"open"})}get _id(){return this.__id||(this.__id="ui5wc_"+ ++rs),this.__id}async connectedCallback(){this.setAttribute(this.constructor.getMetadata().getPureTag(),""),this.constructor.getMetadata().supportsF6FastNavigation()&&this.setAttribute("data-sap-ui-fastnavgroup","true");const t=this.constructor.getMetadata().slotsAreManaged();this._inDOM=!0,t&&(this._startObservingDOMChildren(),await this._processChildren()),this._inDOM&&(G(this),this._domRefReadyPromise._deferredResolve(),this._fullyConnected=!0,"function"==typeof this.onEnterDOM&&this.onEnterDOM())}disconnectedCallback(){const t=this.constructor.getMetadata().slotsAreManaged();var e;this._inDOM=!1,t&&this._stopObservingDOMChildren(),this._fullyConnected&&("function"==typeof this.onExitDOM&&this.onExitDOM(),this._fullyConnected=!1),this.staticAreaItem&&this.staticAreaItem.parentElement&&this.staticAreaItem.parentElement.removeChild(this.staticAreaItem),e=this,V.remove(e),H.delete(e)}_startObservingDOMChildren(){if(!this.constructor.getMetadata().hasSlots())return;const t=this.constructor.getMetadata().canSlotText(),e={childList:!0,subtree:t,characterData:t};Ye(this,this._processChildren.bind(this),e)}_stopObservingDOMChildren(){(t=>{const e=Ke.get(t);e&&((t=>{t.disconnect()})(e),Ke.delete(t))})(this)}async _processChildren(){this.constructor.getMetadata().hasSlots()&&await this._updateSlots()}async _updateSlots(){const t=this.constructor.getMetadata().getSlots(),e=this.constructor.getMetadata().canSlotText(),s=Array.from(e?this.childNodes:this.children),n=new Map,i=new Map;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;i.set(t,e),n.set(t,[...this._state[t]]),this._clearSlot(e,s)}const a=new Map,r=new Map,o=s.map((async(e,s)=>{const n=(t=>{if(!(t instanceof HTMLElement))return"default";const e=t.getAttribute("slot");if(e){const t=e.match(/^(.+?)-\d+$/);return t?t[1]:e}return"default"})(e),i=t[n];if(void 0===i){const s=Object.keys(t).join(", ");return void console.warn(`Unknown slotName: ${n}, ignoring`,e,`Valid values are: ${s}`)}if(i.individualSlots){const t=(a.get(n)||0)+1;a.set(n,t),e._individualSlot=`${n}-${t}`}if(e instanceof HTMLElement){const t=e.localName;if(t.includes("-")){if(!window.customElements.get(t)){const e=window.customElements.whenDefined(t);let s=os.get(t);s||(s=new Promise((t=>setTimeout(t,1e3))),os.set(t,s)),await Promise.race([e,s])}window.customElements.upgrade(e)}}if((e=this.constructor.getMetadata().constructor.validateSlotValue(e,i)).isUI5Element&&i.invalidateOnChildChange){(e.attachInvalidate||e._attachChange).bind(e)(this._getChildChangeListener(n))}Me(e)&&this._attachSlotChange(e,n);const o=i.propertyName||n;r.has(o)?r.get(o).push({child:e,idx:s}):r.set(o,[{child:e,idx:s}])}));await Promise.all(o),r.forEach(((t,e)=>{this._state[e]=t.sort(((t,e)=>t.idx-e.idx)).map((t=>t.child))}));let l=!1;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;is(n.get(t),this._state[t])||(cs.call(this,{type:"slot",name:i.get(t),reason:"children"}),l=!0)}l||cs.call(this,{type:"slot",name:"default",reason:"textcontent"})}_clearSlot(t,e){const s=e.propertyName||t;this._state[s].forEach((e=>{if(e&&e.isUI5Element){(e.detachInvalidate||e._detachChange).bind(e)(this._getChildChangeListener(t))}Me(e)&&this._detachSlotChange(e,t)})),this._state[s]=[]}attachInvalidate(t){this._eventProvider.attachEvent("invalidate",t)}detachInvalidate(t){this._eventProvider.detachEvent("invalidate",t)}_onChildChange(t,e){this.constructor.getMetadata().shouldInvalidateOnChildChange(t,e.type,e.name)&&cs.call(this,{type:"slot",name:t,reason:"childchange",child:e.target})}attributeChangedCallback(t,e,s){const n=this.constructor.getMetadata().getProperties(),i=t.replace(/^ui5-/,""),a=Se(i);if(n.hasOwnProperty(a)){const t=n[a].type;t===Boolean?s=null!==s:Ae(t,we)&&(s=t.attributeToProperty(s)),this[a]=s}}_updateAttribute(t,e){if(!this.constructor.getMetadata().hasAttribute(t))return;const s=this.constructor.getMetadata().getProperties()[t].type,n=Ce(t),i=this.getAttribute(n);s===Boolean?!0===e&&null===i?this.setAttribute(n,""):!1===e&&null!==i&&this.removeAttribute(n):Ae(s,we)?this.setAttribute(n,s.propertyToAttribute(e)):"object"!=typeof e&&i!==e&&this.setAttribute(n,e)}_upgradeProperty(t){if(this.hasOwnProperty(t)){const e=this[t];delete this[t],this[t]=e}}_upgradeAllProperties(){this.constructor.getMetadata().getPropertiesList().forEach(this._upgradeProperty,this)}_initializeState(){this._state={...this.constructor.getMetadata().getInitialState()}}_getChildChangeListener(t){return this._childChangeListeners.has(t)||this._childChangeListeners.set(t,this._onChildChange.bind(this,t)),this._childChangeListeners.get(t)}_getSlotChangeListener(t){return this._slotChangeListeners.has(t)||this._slotChangeListeners.set(t,this._onSlotChange.bind(this,t)),this._slotChangeListeners.get(t)}_attachSlotChange(t,e){t.addEventListener("slotchange",this._getSlotChangeListener(e))}_detachSlotChange(t,e){t.removeEventListener("slotchange",this._getSlotChangeListener(e))}_onSlotChange(t){cs.call(this,{type:"slot",name:t,reason:"slotchange"})}onInvalidation(t){}_render(){const t=this.constructor.getMetadata().hasIndividualSlots();this._suppressInvalidation=!0,"function"==typeof this.onBeforeRendering&&this.onBeforeRendering(),this._onComponentStateFinalized&&this._onComponentStateFinalized(),this._suppressInvalidation=!1,this._changedState=[],this.constructor._needsShadowDOM()&&Ze(this),this.staticAreaItem&&this.staticAreaItem.update(),t&&this._assignIndividualSlotsToChildren(),"function"==typeof this.onAfterRendering&&this.onAfterRendering()}_assignIndividualSlotsToChildren(){Array.from(this.children).forEach((t=>{t._individualSlot&&t.setAttribute("slot",t._individualSlot)}))}_waitForDomRef(){return this._domRefReadyPromise}getDomRef(){if("function"==typeof this._getRealDomRef)return this._getRealDomRef();if(!this.shadowRoot||0===this.shadowRoot.children.length)return;const t=[...this.shadowRoot.children].filter((t=>!["link","style"].includes(t.localName)));return 1!==t.length&&console.warn(`The shadow DOM for ${this.constructor.getMetadata().getTag()} does not have a top level element, the getDomRef() method might not work as expected`),t[0]}getFocusDomRef(){const t=this.getDomRef();if(t){return t.querySelector("[data-sap-focus-ref]")||t}}async getFocusDomRefAsync(){return await this._waitForDomRef(),this.getFocusDomRef()}async focus(){await this._waitForDomRef();const t=this.getFocusDomRef();t&&"function"==typeof t.focus&&t.focus()}fireEvent(t,e,s=!1,n=!0){const i=this._fireEvent(t,e,s,n),a=Se(t);return a!==t?i&&this._fireEvent(a,e,s):i}_fireEvent(t,e,s=!1,n=!0){const i=new CustomEvent(`ui5-${t}`,{detail:e,composed:!1,bubbles:n,cancelable:s}),a=this.dispatchEvent(i);if(es(t))return a;const r=new CustomEvent(t,{detail:e,composed:!1,bubbles:n,cancelable:s});return this.dispatchEvent(r)&&a}getSlottedNodes(t){return this[t].reduce(((t,e)=>t.concat(Oe(e))),[])}get effectiveDir(){var t;return t=this.constructor,U.add(t),Ge(this)}get isUI5Element(){return!0}static get observedAttributes(){return this.getMetadata().getAttributesList()}static _needsShadowDOM(){return!!this.template}static _needsStaticArea(){return!!this.staticAreaTemplate}getStaticAreaItemDomRef(){if(!this.constructor._needsStaticArea())throw new Error("This component does not use the static area");return this.staticAreaItem||(this.staticAreaItem=Je.createInstance(),this.staticAreaItem.setOwnerElement(this)),this.staticAreaItem.parentElement||E("ui5-static-area").appendChild(this.staticAreaItem),this.staticAreaItem.getDomRef()}static _generateAccessors(){const t=this.prototype,e=this.getMetadata().slotsAreManaged(),s=this.getMetadata().getProperties();for(const[e,n]of Object.entries(s)){if(ns(e)||console.warn(`"${e}" is not a valid property name. Use a name that does not collide with DOM APIs`),n.type===Boolean&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All booleans are false by default.`);if(n.type===Array)throw new Error(`Wrong type for property "${e}". Properties cannot be of type Array - use "multiple: true" and set "type" to the single value type, such as "String", "Object", etc...`);if(n.type===Object&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All properties of type "Object" are empty objects by default.`);if(n.multiple&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All multiple properties are empty arrays by default.`);Object.defineProperty(t,e,{get(){if(void 0!==this._state[e])return this._state[e];const t=n.defaultValue;return n.type!==Boolean&&(n.type===String?t:n.multiple?[]:t)},set(t){let s;t=this.constructor.getMetadata().constructor.validatePropertyValue(t,n);const i=this._state[e];s=n.multiple&&n.compareValues?!is(i,t):Ae(n.type,we)?!n.type.valuesAreEqual(i,t):i!==t,s&&(this._state[e]=t,cs.call(this,{type:"property",name:e,newValue:t,oldValue:i}),this._updateAttribute(e,t))}})}if(e){const e=this.getMetadata().getSlots();for(const[s,n]of Object.entries(e)){ns(s)||console.warn(`"${s}" is not a valid property name. Use a name that does not collide with DOM APIs`);const e=n.propertyName||s;Object.defineProperty(t,e,{get(){return void 0!==this._state[e]?this._state[e]:[]},set(){throw new Error("Cannot set slot content directly, use the DOM APIs (appendChild, removeChild, etc...)")}})}}}static get metadata(){return{}}static get styles(){return""}static get staticAreaStyles(){return""}static get dependencies(){return[]}static getUniqueDependencies(){if(!ls.has(this)){const t=this.dependencies.filter(((t,e,s)=>s.indexOf(t)===e));ls.set(this,t)}return ls.get(this)}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map((t=>t.define())))}static async onDefine(){return Promise.resolve()}static async define(){await ve(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),e=this.getMetadata().getAltTag(),s=(t=>N.has(t))(t),n=customElements.get(t);return n&&!s?(t=>{let e=L.get(t);void 0===e&&(e="unknown"),D[e]=D[e]||new Set,D[e].add(t),k||(k=setTimeout((()=>{j(),D={},k=void 0}),1e3))})(t):n||(this._generateAccessors(),R(t),window.customElements.define(t,this),e&&!customElements.get(e)&&(R(e),window.customElements.define(e,as(this,(()=>{console.log(`The ${e} tag is deprecated and will be removed in the next release, please use ${t} instead.`)}))))),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const t=[this.metadata];let e=this;for(;e!==ds;)e=Object.getPrototypeOf(e),t.unshift(e.metadata);const s=g({},...t);return this._metadata=new Le(s),this._metadata}}
|
|
2
2
|
/**
|
|
3
3
|
* @license
|
|
4
4
|
* Copyright 2017 Google LLC
|
|
5
5
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
6
|
-
*/var
|
|
6
|
+
*/var hs;const us=globalThis.trustedTypes,ps=us?us.createPolicy("lit-html",{createHTML:t=>t}):void 0,gs=`lit$${(Math.random()+"").slice(9)}$`,fs="?"+gs,ms=`<${fs}>`,ys=document,_s=(t="")=>ys.createComment(t),vs=t=>null===t||"object"!=typeof t&&"function"!=typeof t,ws=Array.isArray,As=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,bs=/-->/g,$s=/>/g,Ss=/>|[ \n\r](?:([^\s"'>=/]+)([ \n\r]*=[ \n\r]*(?:[^ \n\r"'`<>=]|("|')|))|$)/g,Cs=/'/g,Es=/"/g,Ms=/^(?:script|style|textarea)$/i,Os=(t=>(e,...s)=>({_$litType$:t,strings:e,values:s}))(1),xs=Symbol.for("lit-noChange"),Ts=Symbol.for("lit-nothing"),Ps=new WeakMap,Is=ys.createTreeWalker(ys,129,null,!1),Ls=(t,e)=>{const s=t.length-1,n=[];let i,a=2===e?"<svg>":"",r=As;for(let e=0;e<s;e++){const s=t[e];let o,l,c=-1,d=0;for(;d<s.length&&(r.lastIndex=d,l=r.exec(s),null!==l);)d=r.lastIndex,r===As?"!--"===l[1]?r=bs:void 0!==l[1]?r=$s:void 0!==l[2]?(Ms.test(l[2])&&(i=RegExp("</"+l[2],"g")),r=Ss):void 0!==l[3]&&(r=Ss):r===Ss?">"===l[0]?(r=null!=i?i:As,c=-1):void 0===l[1]?c=-2:(c=r.lastIndex-l[2].length,o=l[1],r=void 0===l[3]?Ss:'"'===l[3]?Es:Cs):r===Es||r===Cs?r=Ss:r===bs||r===$s?r=As:(r=Ss,i=void 0);const h=r===Ss&&t[e+1].startsWith("/>")?" ":"";a+=r===As?s+ms:c>=0?(n.push(o),s.slice(0,c)+"$lit$"+s.slice(c)+gs+h):s+gs+(-2===c?(n.push(void 0),e):h)}const o=a+(t[s]||"<?>")+(2===e?"</svg>":"");return[void 0!==ps?ps.createHTML(o):o,n]};class Ns{constructor({strings:t,_$litType$:e},s){let n;this.parts=[];let i=0,a=0;const r=t.length-1,o=this.parts,[l,c]=Ls(t,e);if(this.el=Ns.createElement(l,s),Is.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(n=Is.nextNode())&&o.length<r;){if(1===n.nodeType){if(n.hasAttributes()){const t=[];for(const e of n.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(gs)){const s=c[a++];if(t.push(e),void 0!==s){const t=n.getAttribute(s.toLowerCase()+"$lit$").split(gs),e=/([.?@])?(.*)/.exec(s);o.push({type:1,index:i,name:e[2],strings:t,ctor:"."===e[1]?Us:"?"===e[1]?Hs:"@"===e[1]?Bs:js})}else o.push({type:6,index:i})}for(const e of t)n.removeAttribute(e)}if(Ms.test(n.tagName)){const t=n.textContent.split(gs),e=t.length-1;if(e>0){n.textContent=us?us.emptyScript:"";for(let s=0;s<e;s++)n.append(t[s],_s()),Is.nextNode(),o.push({type:2,index:++i});n.append(t[e],_s())}}}else if(8===n.nodeType)if(n.data===fs)o.push({type:2,index:i});else{let t=-1;for(;-1!==(t=n.data.indexOf(gs,t+1));)o.push({type:7,index:i}),t+=gs.length-1}i++}}static createElement(t,e){const s=ys.createElement("template");return s.innerHTML=t,s}}function ks(t,e,s=t,n){var i,a,r,o;if(e===xs)return e;let l=void 0!==n?null===(i=s._$Cl)||void 0===i?void 0:i[n]:s._$Cu;const c=vs(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==c&&(null===(a=null==l?void 0:l._$AO)||void 0===a||a.call(l,!1),void 0===c?l=void 0:(l=new c(t),l._$AT(t,s,n)),void 0!==n?(null!==(r=(o=s)._$Cl)&&void 0!==r?r:o._$Cl=[])[n]=l:s._$Cu=l),void 0!==l&&(e=ks(t,l._$AS(t,e.values),l,n)),e}class Ds{constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:s},parts:n}=this._$AD,i=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:ys).importNode(s,!0);Is.currentNode=i;let a=Is.nextNode(),r=0,o=0,l=n[0];for(;void 0!==l;){if(r===l.index){let e;2===l.type?e=new Rs(a,a.nextSibling,this,t):1===l.type?e=new l.ctor(a,l.name,l.strings,this,t):6===l.type&&(e=new Vs(a,this,t)),this.v.push(e),l=n[++o]}r!==(null==l?void 0:l.index)&&(a=Is.nextNode(),r++)}return i}m(t){let e=0;for(const s of this.v)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}}class Rs{constructor(t,e,s,n){var i;this.type=2,this._$AH=Ts,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=n,this._$Cg=null===(i=null==n?void 0:n.isConnected)||void 0===i||i}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=ks(this,t,e),vs(t)?t===Ts||null==t||""===t?(this._$AH!==Ts&&this._$AR(),this._$AH=Ts):t!==this._$AH&&t!==xs&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.S(t):(t=>{var e;return ws(t)||"function"==typeof(null===(e=t)||void 0===e?void 0:e[Symbol.iterator])})(t)?this.M(t):this.$(t)}A(t,e=this._$AB){return this._$AA.parentNode.insertBefore(t,e)}S(t){this._$AH!==t&&(this._$AR(),this._$AH=this.A(t))}$(t){this._$AH!==Ts&&vs(this._$AH)?this._$AA.nextSibling.data=t:this.S(ys.createTextNode(t)),this._$AH=t}T(t){var e;const{values:s,_$litType$:n}=t,i="number"==typeof n?this._$AC(t):(void 0===n.el&&(n.el=Ns.createElement(n.h,this.options)),n);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===i)this._$AH.m(s);else{const t=new Ds(i,this),e=t.p(this.options);t.m(s),this.S(e),this._$AH=t}}_$AC(t){let e=Ps.get(t.strings);return void 0===e&&Ps.set(t.strings,e=new Ns(t)),e}M(t){ws(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let s,n=0;for(const i of t)n===e.length?e.push(s=new Rs(this.A(_s()),this.A(_s()),this,this.options)):s=e[n],s._$AI(i),n++;n<e.length&&(this._$AR(s&&s._$AB.nextSibling,n),e.length=n)}_$AR(t=this._$AA.nextSibling,e){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cg=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class js{constructor(t,e,s,n,i){this.type=1,this._$AH=Ts,this._$AN=void 0,this.element=t,this.name=e,this._$AM=n,this.options=i,s.length>2||""!==s[0]||""!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=Ts}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,s,n){const i=this.strings;let a=!1;if(void 0===i)t=ks(this,t,e,0),a=!vs(t)||t!==this._$AH&&t!==xs,a&&(this._$AH=t);else{const n=t;let r,o;for(t=i[0],r=0;r<i.length-1;r++)o=ks(this,n[s+r],e,r),o===xs&&(o=this._$AH[r]),a||(a=!vs(o)||o!==this._$AH[r]),o===Ts?t=Ts:t!==Ts&&(t+=(null!=o?o:"")+i[r+1]),this._$AH[r]=o}a&&!n&&this.k(t)}k(t){t===Ts?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class Us extends js{constructor(){super(...arguments),this.type=3}k(t){this.element[this.name]=t===Ts?void 0:t}}class Hs extends js{constructor(){super(...arguments),this.type=4}k(t){t&&t!==Ts?this.element.setAttribute(this.name,""):this.element.removeAttribute(this.name)}}class Bs extends js{constructor(t,e,s,n,i){super(t,e,s,n,i),this.type=5}_$AI(t,e=this){var s;if((t=null!==(s=ks(this,t,e,0))&&void 0!==s?s:Ts)===xs)return;const n=this._$AH,i=t===Ts&&n!==Ts||t.capture!==n.capture||t.once!==n.once||t.passive!==n.passive,a=t!==Ts&&(n===Ts||i);i&&this.element.removeEventListener(this.name,this,n),a&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,s;"function"==typeof this._$AH?this._$AH.call(null!==(s=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class Vs{constructor(t,e,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){ks(this,t)}}const zs=window.litHtmlPolyfillSupport;null==zs||zs(Ns,Rs),(null!==(hs=globalThis.litHtmlVersions)&&void 0!==hs?hs:globalThis.litHtmlVersions=[]).push("2.0.1");
|
|
7
7
|
/**
|
|
8
8
|
* @license
|
|
9
9
|
* Copyright 2020 Google LLC
|
|
10
10
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
11
11
|
*/
|
|
12
|
-
const
|
|
12
|
+
const Zs=new Map,Fs=(t=>(e,...s)=>{var n;const i=s.length;let a,r;const o=[],l=[];let c,d=0,h=!1;for(;d<i;){for(c=e[d];d<i&&void 0!==(r=s[d],a=null===(n=r)||void 0===n?void 0:n._$litStatic$);)c+=a+e[++d],h=!0;l.push(r),o.push(c),d++}if(d===i&&o.push(e[i]),h){const t=o.join("$$lit$$");void 0===(e=Zs.get(t))&&Zs.set(t,e=o),s=l}return t(e,...s)})(Os),Ws=2;
|
|
13
13
|
/**
|
|
14
14
|
* @license
|
|
15
15
|
* Copyright 2017 Google LLC
|
|
@@ -20,18 +20,18 @@ const Ws=new Map,qs=(t=>(e,...s)=>{var n;const i=s.length;let a,r;const o=[],l=[
|
|
|
20
20
|
* Copyright 2017 Google LLC
|
|
21
21
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
22
22
|
*/
|
|
23
|
-
class
|
|
23
|
+
class qs extends class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}{constructor(t){if(super(t),this.it=Ts,t.type!==Ws)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===Ts||null==t)return this.vt=void 0,this.it=t;if(t===xs)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this.vt;this.it=t;const e=[t];return e.raw=e,this.vt={_$litType$:this.constructor.resultType,strings:e,values:[]}}}qs.directiveName="unsafeHTML",qs.resultType=1;const Gs=(t,e,s,{host:n}={})=>{"string"==typeof s?t=Fs`<style>${s}</style>${t}`:Array.isArray(s)&&s.length&&(t=Fs`${s.map((t=>Fs`<link type="text/css" rel="stylesheet" href="${t}">`))}${t}`),((t,e,s)=>{var n,i;const a=null!==(n=null==s?void 0:s.renderBefore)&&void 0!==n?n:e;let r=a._$litPart$;if(void 0===r){const t=null!==(i=null==s?void 0:s.renderBefore)&&void 0!==i?i:null;a._$litPart$=r=new Rs(e.insertBefore(_s(),t),t,void 0,null!=s?s:{})}r._$AI(t)})(t,e,{host:n})},Js={tag:"ui5-test-generic",properties:{strProp:{type:String},boolProp:{type:Boolean},objectProp:{type:Object},noAttributeProp:{type:String,noAttribute:!0},multiProp:{type:String,multiple:!0},defaultValueProp:{type:String,defaultValue:"Hello"}},managedSlots:!0,slots:{default:{type:Node},other:{type:HTMLElement},individual:{type:HTMLElement,individualSlots:!0},named:{type:HTMLElement,propertyName:"items"}}};class Ks extends ds{static get metadata(){return Js}static get render(){return Gs}static get template(){return t=>Fs`<div><p>
|
|
24
24
|
<slot></slot>
|
|
25
25
|
<slot name="other"></slot>
|
|
26
26
|
<slot name="individual-1"></slot>
|
|
27
27
|
<slot name="individual-2"></slot>
|
|
28
|
-
</p></div>`}static get styles(){return":host {\n display: inline-block;\n border: 1px solid black;\n color: var(--var1);\n }"}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}
|
|
28
|
+
</p></div>`}static get styles(){return":host {\n display: inline-block;\n border: 1px solid black;\n color: var(--var1);\n }"}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}Ks.define();const Ys={tag:"ui5-test-no-shadow"};(class extends ds{static get metadata(){return Ys}}).define();const Xs={tag:"ui5-test-parent",managedSlots:!0,slots:{default:{type:Node,invalidateOnChildChange:{properties:["prop1"]}},items:{type:HTMLElement,invalidateOnChildChange:{properties:!0}}}};(class extends ds{static get metadata(){return Xs}static get render(){return Gs}static get template(){return t=>Fs`<div>
|
|
29
29
|
<slot></slot>
|
|
30
|
-
</div>`}}).define();const
|
|
30
|
+
</div>`}}).define();const Qs={tag:"ui5-test-child",properties:{prop1:{type:String},prop2:{type:String},prop3:{type:String}}};(class extends ds{static get metadata(){return Qs}static get render(){return Gs}static get template(){return t=>Fs`<div></div>`}}).define();const tn={tag:"ui5-with-static-area",properties:{staticContent:{type:Boolean}},slots:{}};(class extends ds{static get metadata(){return tn}static get render(){return Gs}static get template(){return t=>Fs`
|
|
31
31
|
<div dir=${t.effectiveDir}>
|
|
32
32
|
WithStaticArea works!
|
|
33
|
-
</div>`}static get staticAreaTemplate(){return t=>
|
|
33
|
+
</div>`}static get staticAreaTemplate(){return t=>Fs`
|
|
34
34
|
<div class="ui5-with-static-area-content">
|
|
35
35
|
Static area content.
|
|
36
|
-
</div>`}static get styles(){return"\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tborder: 1px solid black;\n\t\t\t\tcolor: red;\n\t\t\t}"}async addStaticArea(){if(!this.staticContent)return;const t=await this.getStaticAreaItemDomRef();return this.responsivePopover=t.querySelector(".ui5-with-static-area-content"),this.responsivePopover}onBeforeRendering(){this.addStaticArea()}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}).define();const
|
|
36
|
+
</div>`}static get styles(){return"\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tborder: 1px solid black;\n\t\t\t\tcolor: red;\n\t\t\t}"}async addStaticArea(){if(!this.staticContent)return;const t=await this.getStaticAreaItemDomRef();return this.responsivePopover=t.querySelector(".ui5-with-static-area-content"),this.responsivePopover}onBeforeRendering(){this.addStaticArea()}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}).define();const en={tag:"ui5-test-generic-ext",properties:{extProp:{type:String},strProp:{defaultValue:"Ext"}},slots:{extSlot:{type:HTMLElement}}};(class extends Ks{static get metadata(){return en}}).define();Rt("@ui5/webcomponents-base-test","sap_fiori_3",(()=>":root{ --var1: red; }")),Rt("@ui5/webcomponents-base-test","sap_fiori_3_dark",(()=>":root{ --var1: green; }")),Rt("@ui5/webcomponents-base-test","sap_belize",(()=>":root{ --var1: blue; }")),Rt("@ui5/webcomponents-base-test","sap_belize_hcb",(()=>":root{ --var1: orange; }")),Rt("@ui5/webcomponents-base-test","sap_belize_hcw",(()=>":root{ --var1: orange; }")),Rt("@ui5/webcomponents-base-test","sap_fiori_3_hcb",(()=>":root{ --var1: yellow; }")),Rt("@ui5/webcomponents-base-test","sap_fiori_3_hcw",(()=>":root{ --var1: yellow; }"));const sn=navigator.userAgent,nn=/(msie|trident)/i.test(sn),an=!nn&&/(Chrome|CriOS)/.test(sn);!nn&&!an&&/(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(sn),!nn&&/webkit/.test(sn);const rn=-1!==navigator.platform.indexOf("Win");navigator.platform.match(/iPhone|iPad|iPod/)||navigator.userAgent.match(/Mac/)&&document;!rn&&/Android/.test(sn)&&/(?=android)(?=.*mobile)/i.test(sn),/ipad/i.test(sn)||/Macintosh/i.test(sn)&&document;const on=/('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g,ln=new Map;class cn{constructor(t){this.packageName=t}getText(t,...e){if("string"==typeof t&&(t={key:t,defaultText:t}),!t||!t.key)return"";const s=(n=this.packageName,mt.get(n));var n;s&&!s[t.key]&&console.warn(`Key ${t.key} not found in the i18n bundle, the default text will be used`);const i=s&&s[t.key]?s[t.key]:t.defaultText||t.key;return a=(a=e)||[],i.replace(on,((t,e,s,n,i)=>{if(e)return"'";if(s)return s.replace(/''/g,"'");if(n)return String(a[parseInt(n)]);throw new Error(`[i18n]: pattern syntax error at pos ${i}`)}));var a}}let dn;const hn={Gregorian:"Gregorian",Islamic:"Islamic",Japanese:"Japanese",Buddhist:"Buddhist",Persian:"Persian"};class un extends we{static isValid(t){return!!hn[t]}}let pn;un.generateTypeAccessors(hn);let gn;const fn=new b;window.isIE=()=>nn,window.registerThemePropertiesLoader=Rt,window["sap-ui-webcomponents-bundle"]={configuration:{getAnimationMode:()=>(void 0===dn&&(A(),dn=_.animationMode),dn),getLanguage:st,getTheme:Qt,setTheme:te,getNoConflict:ts,setNoConflict:t=>{Qe=t},getCalendarType:()=>(void 0===pn&&(A(),pn=_.calendarType),un.isValid(pn)?pn:un.Gregorian),getRTL:qe,getFirstDayOfWeek:()=>(void 0===gn&&(A(),gn=_.formatSettings),gn.firstDayOfWeek)},getIconNames:async()=>(await ae("edit"),await ae("tnt/arrow"),await ae("business-suite/3d"),Array.from(se.keys())),registerI18nLoader:(t,e,s)=>{const n=`${t}/${e}`;_t.set(n,s)},getI18nBundle:async t=>(await At(t),(t=>{if(ln.has(t))return ln.get(t);const e=new cn(t);return ln.set(t,e),e})(t)),renderFinished:Y,applyDirection:async()=>{const t=fn.fireEvent("directionChange");await Promise.all(t),await Q({rtlAware:!0})},EventProvider:b};
|
|
37
37
|
//# sourceMappingURL=bundle.esm.js.map
|